.blocks-page { padding-top: var(--header-h); }
.blocks-page .site-header { background: var(--white); color: var(--ink); border-bottom: 1px solid rgba(21,51,47,.12); }
.blocks-page .site-header .brand-logo--light { display: none; }
.blocks-page .site-header .brand-logo--dark { display: block; }
.blocks-page h2 { font-size: var(--fs-h2-content); }
.blocks-page h3 { font-size: 22px; line-height: 1.3; }
.blocks-page .section-kicker:empty, .page-block__actions:empty, .page-table-group > h3:empty, .page-contact p:empty { display: none; }
.page-hero { position: relative; min-height: 470px; display: flex; align-items: center; color: var(--white); background: var(--forest-deep); }
.page-hero::after { content: ""; position: absolute; inset: 0; background: rgba(5,30,28,.34); }
.page-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.page-hero__inner { position: relative; z-index: 1; padding-block: 64px; }
.page-hero .section-kicker { color: var(--white); font-family: var(--font-display); font-size: 26px; font-weight: 400; text-transform: none; letter-spacing: 0; margin-bottom: 18px; }
.page-hero .section-kicker::before { display: none; }
.page-hero h1, .page-hero h2 { margin: 0 0 20px; color: inherit; }
.page-hero .page-block__text { max-width: 610px; font-size: 18px; line-height: 1.65; }
.page-block__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 24px; }
.page-block__actions .icon { width: 18px; height: 18px; }
.blocks-page .page-block__actions .btn::after { display: none; }
.blocks-page .btn--document { background: var(--white); color: var(--ink); border: 1px solid rgba(21,51,47,.22); border-radius: 5px; }
.blocks-page .btn--document:hover { border-color: var(--terracotta); }
.page-hero .btn--outline { color: var(--white); border-color: rgba(255,253,249,.7); }
.page-section-nav { background: var(--cream); border-bottom: 1px solid rgba(21,51,47,.12); }
.page-section-nav > div { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 24px; padding-block: 17px; }
.page-section-nav a { font-size: 13px; font-weight: 600; padding-block: 4px; }
.page-block { padding-block: 42px; scroll-margin-top: 90px; background: var(--white); }
.page-block--cream { background: var(--cream); }
.page-block--forest { background: var(--forest-deep); color: var(--white); }
.page-block--ochre { background: var(--ochre); }
.page-block--forest h2, .page-block--forest h3 { color: inherit; }
.page-block h2 { margin: 0 0 16px; }
.page-block h3 { margin: 0 0 12px; }
.page-block__text { max-width: 920px; line-height: 1.65; }
.page-block__text p { margin: 0 0 14px; }
.page-block__text p:last-child { margin-bottom: 0; }
.page-block__text a, .page-step a { text-decoration: underline; text-underline-offset: 3px; }
.page-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; background: var(--white); }
.page-columns.container { width: 100%; max-width: none; padding-inline: max(16px, calc((100% - var(--container)) / 2)); }
@media (min-width: 45rem) {
  .page-columns.container { padding-inline: max(24px, calc((100% - var(--container)) / 2)); }
}
.page-columns .page-block { min-width: 0; }
.page-columns .container { width: auto; padding: 0; margin: 0; }
.page-columns > .page-block + .page-block { border-left: 1px solid rgba(21,51,47,.13); padding-left: 44px; }
.page-columns .page-block--steps .page-block__inner { display: flex; flex-direction: column; }
.page-columns .page-block--steps .page-block__intro { display: contents; }
.page-columns .page-block--steps .page-block__text { order: 2; margin-top: 20px; font-size: 14px; }
.page-steps { list-style: none; padding: 0; margin: 12px 0 0; }
.page-step { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 16px; margin-bottom: 20px; }
.page-step:last-child { margin-bottom: 0; }
.page-step__number { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--cream); font-weight: 600; }
.page-step h3 { font-family: var(--font-ui); font-size: 15px; font-weight: 800; margin-bottom: 5px; }
.page-step p, .page-step a { margin: 0; font-size: 14px; line-height: 1.55; }
.page-block--document .page-block__inner, .page-block--cta .page-block__inner { display: grid; grid-template-columns: 1.4fr 1fr; align-items: center; gap: 60px; }
.page-block--document .page-block__actions, .page-block--cta .page-block__actions { margin: 0; justify-content: center; }
.page-items { margin-top: 24px; }
.page-items--contacts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
.page-contact { min-width: 0; }
.page-contact + .page-contact { padding-left: 22px; border-left: 1px solid rgba(255,253,249,.3); }
.page-contact h3 { font-family: var(--font-ui); font-size: 14px; font-weight: 800; }
.page-contact a { display: block; margin-top: 10px; font-size: 14px; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 4px; }
.page-items--tables { display: grid; grid-template-columns: 1.2fr 1fr; gap: 28px 48px; align-items: start; }
.page-tables--split .page-table-group:first-child { grid-row: span 2; }
.page-tables--first-wide { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 48px; }
.page-tables--first-wide .page-table-group:first-child { grid-column: 1 / -1; }
.page-tables--first-wide .page-table-group:first-child th { width: 26%; }
.page-tables--stacked { grid-template-columns: minmax(0,1fr); }
.page-table-group { min-width: 0; }
.page-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 14px; }
.page-table th, .page-table td { border-bottom: 1px solid rgba(21,51,47,.12); padding: 10px 8px; text-align: left; vertical-align: top; overflow-wrap: anywhere; line-height: 1.5; }
.page-table th { width: 38%; font-weight: 400; color: var(--ink-soft); }
.page-details { border: 1px solid rgba(21,51,47,.14); border-radius: 5px; margin: 8px 0; background: var(--cream); }
.page-details summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 18px; font-weight: 600; font-size: 14px; }
.page-details summary::-webkit-details-marker { display: none; }
.page-details summary .icon { width: 18px; height: 18px; flex: 0 0 18px; }
.page-details[open] summary .icon { transform: rotate(180deg); }
.page-details__body { padding: 0 18px 15px; line-height: 1.6; font-size: 14px; }
.page-details__body p { margin: 0; }
.page-details .page-table th { width: 58%; }
.page-details .page-table-group > h3 { display: none; }
.page-block--hotels .page-block__actions .btn, .page-block--tables .page-block__actions .btn, .page-block--notice .btn { background: transparent; color: var(--ink); border: 1px solid var(--ink-soft); }
.page-block--notice h2 { font-size: 30px; }
.page-block--notice .page-block__text h3 { font-size: 23px; }
.page-block--notice { padding-block: 30px; }
.page-block--notice .page-block__inner { display: grid; grid-template-columns: 260px minmax(0,1fr) 175px; gap: 28px; align-items: center; }
.page-block--notice .page-block__intro { display: contents; }
.page-block--notice .page-block__actions { margin: 0; }
.page-block--notice .btn { font-size: 13px; padding: 12px 16px; }
.page-block summary:focus-visible { outline: 3px solid var(--terracotta); outline-offset: 3px; }
@media (max-width: 1023px) {
  .page-items--contacts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .page-contact:nth-child(3) { padding-left: 0; border-left: 0; }
  .page-columns { gap: 24px; }
  .page-block--notice .page-block__inner { grid-template-columns: 1fr; gap: 16px; }
  .page-columns > .page-block + .page-block { padding-left: 24px; }
}
@media (max-width: 767px) {
  .page-items--tables { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .page-tables--split .page-table-group:first-child { grid-row: auto; }
  .page-tables--first-wide .page-table-group:first-child th { width: 38%; }
}
@media (max-width: 639px) {
  .blocks-page h3 { font-size: 20px; }
  .page-hero { min-height: 440px; }
  .page-hero__inner { padding-block: 42px; }
  .page-hero .section-kicker, .page-hero .page-block__text { font-size: 16px; }
  .page-hero .page-block__actions { align-items: stretch; flex-direction: column; max-width: 310px; }
  .page-section-nav > div { justify-content: flex-start; gap: 4px 18px; }
  .page-block { padding-block: 32px; }
  .page-columns { display: block; }
  .page-columns > .page-block + .page-block { border-left: 0; padding-left: 0; border-top: 1px solid rgba(21,51,47,.13); }
  .page-block--document .page-block__inner, .page-block--cta .page-block__inner, .page-items--tables { grid-template-columns: 1fr; gap: 24px; }
  .page-block--document .page-block__actions, .page-block--cta .page-block__actions { justify-content: flex-start; }
  .page-items--tables .page-table-group:first-child { grid-row: auto; }
  .page-items--contacts { grid-template-columns: 1fr; }
  .page-contact + .page-contact { padding-left: 0; padding-top: 18px; border-left: 0; border-top: 1px solid rgba(255,253,249,.25); }
  .page-contact h3, .page-step h3 { font-size: 15px; }
  .page-table { font-size: 13px; }
  .page-table th, .page-table td { padding: 9px 5px; }
  .page-details summary { padding: 13px 12px; }
  .page-details__body { padding: 0 12px 14px; }
}
