/* Legacy styles compiled once from styles.less; no browser JavaScript required. */
/* One type scale for the content area: page title, section, ribbon, text, sidebar, small. */
:root {
  --fs-title: 26px;
  --fs-section: 20px;
  --fs-ribbon: 18px;
  --fs-body: 17px;
  --fs-side: 16px;
  --fs-small: 14px;
  /* Text colours checked against #eee and #fff at 4.5:1 or more (WCAG 2.2 AA). */
  --c-link: #1d5b9e;
  --c-navy: #0a3981;
  --c-active: #06695f;
  --c-muted: #555;
}
.top-menu > ul > li {
  background: url(../img/header/sprites.png) no-repeat;
}
/*HEADER*/
.h-posit {
  color: #fff;
}
.h-width {
  width: 1144px;
  height: 568px;
  margin: 0 auto;
}
/*top-pic*/
.logo {
  float: left;
  width: 300px;
  height: 123px;
  margin: 20px 0 0 108px;
}
.logo img {
  display: block;
}
.h-home {
  float: left;
  width: 150px;
  overflow: hidden;
  height: 105px;
  margin: 10px 0 0 84px;
  background: url(../img/header/logo2.png) no-repeat 0 0;
}
.h-mery {
  float: right;
  width: 300px;
  height: 123px;
  margin: 20px 133px 0 0;
}
.h-mery img {
  display: block;
}
/*end top-pic*/
/*top-menu*/
.top-menu {
  position: relative;
  z-index: 50;
  width: 1100px;
  height: 41px;
  margin: -400px 0 0 17px;
  background: url(../img/header/menu.png) no-repeat 100% 0;
}
/* Darkens the light-blue band in its own shape: white menu text was 2.9:1. */
.top-menu::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(0, 40, 90, 0.62);
  -webkit-mask: url(../img/header/menu.png) no-repeat 100% 0;
  mask: url(../img/header/menu.png) no-repeat 100% 0;
}
.top-menu ul {
  margin: 0 0 0 17px;
}
.top-menu ul li {
  position: relative;
  float: left;
  height: 41px;
  line-height: 41px;
  padding: 0 13px 0 15px;
  background-position: 0 3px;
}
.top-menu ul li.first {
  background: -9999px -9999px;
}
.top-menu ul li a {
  font: bold 1.2em "Golos Text", Arial, sans-serif;
  text-decoration: none;
  text-transform: uppercase;
  color: #fff;
}
.top-menu ul li a:hover,
.top-menu ul li a.active,
.top-menu ul li a.hover {
  color: #2fffec;
}
/* Approved variant 2: existing cascade with light-blue lists. */
.top-menu .sub-menu,
.top-menu .ss-munu {
  box-sizing:border-box; position:absolute; display:none;
  width:210px; padding:0; background:#eef8fe; border:1px solid #77a7c9;
  box-shadow:0 4px 9px #002d5266;
}
.top-menu .sub-menu { top:41px; left:0; }
.top-menu .ss-munu { top:-1px; left:100%; width:280px; min-width:280px; }
.top-menu .sub-menu ul,
.top-menu .ss-munu ul { margin:0; padding:0; list-style:none; }
.top-menu .sub-menu ul li,
.top-menu .ss-munu ul li {
  box-sizing:border-box; float:none; clear:none; width:auto;
  height:auto; line-height:1.4; padding:0; background:none!important;
}
.top-menu .sub-menu ul li+li { border-top:1px solid #bfd8e9; }
.top-menu .sub-menu ul li a,
.top-menu .ss-munu ul li a {
  box-sizing:border-box; display:flex; align-items:center;
  min-height:44px; height:auto; padding:10px 14px; background:none;
  font:400 14px/1.4 'Golos Text',Arial,sans-serif;
  white-space:normal; text-transform:none; color:#144d77;
}
.top-menu .sub-menu li:hover>a,
.top-menu .sub-menu a:focus-visible { background:#175e96; color:#fff; text-decoration:underline; text-underline-offset:3px; }
.top-menu .sub-menu li:has(>.ss-munu)>a:after {
  content:'›'; margin-left:auto; padding-left:12px; font-size:20px; line-height:1;
}
/*end top-menu*/
/*END HEADER*/
/*CONTENT*/
.content {
  position: relative;
  width: 1144px;
  margin: 0px auto 0 auto;
}
.con-top {
  overflow: hidden;
  width: 1144px;
  height: 14px;
  background: url(../img/content/bg-topt.png) no-repeat 50% 0;
}
.con-cent {
  width: 1144px;
  padding: 0 0 0px 0;
  background: url(../img/content/bg-cent_.png) repeat-y 50% 0;
}
.con-bot {
  overflow: hidden;
  width: 1144px;
  height: 14px;
  background: url(../img/content/bg-bot.png) no-repeat 50% 0;
}
/* Preserve column coordinates; keep every column in the clearfix height. */
.left-sb {
  float: left;
  width: 248px;
  margin-left: -884px;
}
.cent-sb {
  float: left;
  width: 620px;
  margin: 0 0 0 264px;
}
.right-sb {
  float: right;
  width: 248px;
}
/*CENT-SB*/
.text {
  font-size: var(--fs-body);
  line-height: 1.6;
  margin-top: 20px;
}
.text h1 {
  font: bold var(--fs-title)/1.25 "Golos Text", Arial, sans-serif;
  margin: 0px 0;
  padding: 0 0 10px 15px;
  color: #0a3981;
  background: url(../img/content/cent/title-pic.png) no-repeat 0 9px;
}
.text p.neh {
  font: bold var(--fs-title)/1.25 "Golos Text", Arial, sans-serif;
  margin: 0px 0;
  font-weight: 700;
  padding: 3px 0 10px 15px;
  color: #0a3981;
  background: url(../img/content/cent/title-pic.png) no-repeat 0 12px;
}
.text h2 {
  font: bold var(--fs-section)/1.3 "Golos Text", Arial, sans-serif;
  margin: 0;
  padding: 0 0 10px 0;
  color: #0a3981;
}
.c-box-shadow {
  height: 50px;
  background: url(../img/content/cent/shadow.png) no-repeat 50% 50%;
}
.cb-info {
  float: left;
  width: 188px;
}
.cb-info-otst {
  margin: 0 0 0 13px;
}
.cb-image {
  width: 188px;
  height: 164px;
  text-align: center;
  background: url(../img/content/cent/pic-border.png) no-repeat 0 0;
}
.cb-image img {
  margin: 11px 0 0 0;
}
.cb-link {
  padding: 0 0 0 23px;
}
.cb-link a {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  display: block;
  float: left;
  padding: 0 0 0 10px;
  text-align: center;
  text-transform: uppercase;
  color: var(--c-link);
  background: url(../img/content/cent/pic-per.png) no-repeat 0 50%;
}
.cb-link-pad-01 {
  padding: 0 0 0 40px;
}
.cb-link-pad-02 {
  padding: 0 0 0 60px;
}
.cp-separ {
  width: 11px;
  height: 181px;
  float: left;
  background: url(../img/content/cent/separ.png) no-repeat 50% 50%;
}
/*ROOM*/
.ct-big-img img {
  border: 1px solid #8f8f8f;
}
/*END ROOM*/
/*Otziv-02*/
.do-name {
  padding: 0 0 10px 0;
  color: var(--c-link);
}
/*Room-02*/
.crumb ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.crumb ul li {
  font: normal var(--fs-section) "Golos Text", Arial, sans-serif;
  float: left;
  color: #0a3981;
}
.crumb ul li.last-crumb {
  padding: 3px 0 0 0;
}
.crumb ul li a {
  font: bold var(--fs-section)/1.3 "Golos Text", Arial, sans-serif;
  display: block;
  margin: 0px 0;
  padding: 0 0 10px 15px;
  text-decoration: none;
  color: #0a3981;
  background: url(../img/content/cent/title-pic.png) no-repeat 0 3px;
}
/*inside*/
.inside {
  padding: 0 0 0 20px;
}
.in-title {
  font: bold var(--fs-ribbon) "Golos Text", Arial, sans-serif;
  color: var(--c-link);
}
.in-box {
  float: left;
  width: 145px;
}
.in-box ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.in-box ul li {
  font: var(--fs-side)/1.45 "Golos Text", Arial, sans-serif;
  padding: 2px 0;
  color: #525252;
}
.in-box ul li img {
  margin: 0 5px 0 0;
}
/*end inside*/
.tab-forinfo {
  text-align: center;
}
.tab-forinfo td {
  padding: 25px 15px 20px 15px;
}
.room-pic {
  text-align: center;
}
.room-pic img {
  border: 1px solid #8f8f8f;
}
.g-padding {
  padding: 0 0 20px 0;
}
/*prise*/
.prise {
  padding: 0 0 35px 0;
}
.pr-title {
  font: bold var(--fs-side) "Golos Text", Arial, sans-serif;
  padding: 0 0 10px 0;
  text-align: center;
  color: var(--c-link);
}
.prbox-01 td {
  font: bold var(--fs-small) "Golos Text", Arial, sans-serif;
  width: 196px;
  height: 32px;
  text-align: center;
  color: #fff;
  background: url(../img/room/pr-01.jpg) no-repeat 50% 0;
}
.prbox-02 td {
  font: bold var(--fs-small) "Golos Text", Arial, sans-serif;
  width: 98px;
  height: 32px;
  text-align: center;
  color: #fff;
  background: url(../img/room/pr-02.jpg) no-repeat 50% 0;
}
.prbox-03 td {
  width: 98px;
  height: 49px;
  text-align: center;
  color: var(--c-navy);
  background: url(../img/room/pr-03.jpg) no-repeat 50% 0;
}
/*end prise*/
/*room-form*/
.room-form {
  width: 558px;
  height: 512px;
  margin: 0 auto;
  background: url(../img/room/form/form.jpg) no-repeat 0 0;
}
.room-form form {
  margin: 0 0 0 20px;
}
.rf-title {
  font: var(--fs-side) "Golos Text", Arial, sans-serif;
  margin: 0 0 0 -5px;
  padding: 15px 0 0 0px;
  text-transform: uppercase;
  color: var(--c-link);
}
.room-form td {
  padding: 5px 10px 0 10px;
}
.room-form label {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  display: block;
  padding: 0 0 3px 0;
  color: #636060;
}
.room-form label b {
  color: #d50000;
  font-weight: normal;
}
.inp-01 {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  color: var(--c-link);
  width: 243px;
  height: 24px;
  border: none;
  background: url(../img/room/form/01.jpg) no-repeat 0 0;
}
.d-pic-border-02 {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  color: var(--c-link);
  width: 217px;
  height: 24px;
  border: none;
  background: url(../img/room/form/03-date.jpg) no-repeat 0 0;
}
.rf-textarea {
  width: 492px;
  height: 73px;
  background: url(../img/room/form/textarea.jpg) no-repeat;
}
.rf-textarea textarea {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  color: var(--c-link);
  width: 482px;
  height: 64px;
  margin: 2px 0 0 2px;
  background: none;
  border: none;
}
.ukaz {
  font: bold var(--fs-small) "Golos Text", Arial, sans-serif;
  padding: 5px 0 10px 0;
  color: #636060;
}
/*end room-form*/
/*End Room-02*/
/*Otziv*/
.pagenation {
  padding: 15px 0;
}
.pagenation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.pagenation ul li {
  float: left;
  padding: 0 5px;
}
.pagenation ul li a {
  display: block;
  height: 22px;
  padding: 0 3px 0 0;
  color: var(--c-link);
}
.pagenation ul li a.no-bac {
  background: none;
}
.pagenation ul li a.no-bac:hover,
.pagenation ul li a.no-bac.active {
  color: var(--c-link);
}
.pagenation ul li a:hover,
.pagenation ul li a.active {
  text-decoration: none;
  color: #fff;
  background: url(../img/otziv/pag-pic.png) no-repeat 100% -19px;
}
.pagenation ul li a:hover.no-bac,
.pagenation ul li a.active.no-bac {
  background: none;
}
.pagenation ul li a:hover b,
.pagenation ul li a.active b {
  background: url(../img/otziv/pag-pic.png) no-repeat 0 0;
}
.pagenation ul li a b {
  font-weight: normal;
  display: block;
  height: 22px;
  padding: 0 0 0 3px;
}
/*ov-block*/
.ov-block {
  width: 610px;
  padding: 0 0 25px 0;
}
.ov-top {
  height: 38px;
  background: url(../img/otziv/otz-top.png) no-repeat 0 0;
}
.ov-top ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ov-top ul li {
  float: left;
}
/* Solid tab instead of otz-name.png: white on that light blue was 4.1:1. */
.ov-name-01 {
  margin: 6px 0 0 5px;
  border-radius: 3px;
  background: var(--c-link);
}
.ov-name-01 .ov-name-02 {
  font: bold var(--fs-side)/22px "Golos Text", Arial, sans-serif;
  padding: 2px 14px;
  color: #fff;
}
.ov-date {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  padding: 10px 0 0 5px;
  color: var(--c-link);
}
.ov-bot {
  padding: 10px 10px;
  background: url(../img/otziv/otz-bot.png) no-repeat 0 100%;
}
.ov-pic {
  float: left;
  width: 170px;
  height: 152px;
  margin: 0 10px 0 0;
  text-align: center;
  background: url(../img/otziv/pic-border.png) no-repeat 0 0;
}
.ov-pic img {
  margin: 13px 0 0 0;
}
.ov-title {
  font: bold var(--fs-ribbon) "Golos Text", Arial, sans-serif;
  padding: 0 0 5px 0;
  color: var(--c-link);
}
.ov-link {
  font-size: var(--fs-small);
  text-align: right;
  padding: 3px 0 0 0;
}
.ov-link a {
  color: var(--c-link);
}
/*end ov-block*/
/**/
.ov-forma-title {
  font: var(--fs-ribbon) "Golos Text", Arial, sans-serif;
  padding: 10px 0 10px 0;
  text-transform: uppercase;
  color: var(--c-link);
}
.ov-forma {
  width: 534px;
  /*height:355px;*/

  background: url(../img/otziv/f-bg.png) no-repeat 0 0;
}
.ov-forma form {
  padding: 20px 0 0 20px;
}
.ov-forma td {
  padding: 5px 0;
}
.ov-forma label {
  font: var(--fs-side) "Golos Text", Arial, sans-serif;
  color: var(--c-link);
}
.ov-forma input {
  font: var(--fs-side)/24px "Golos Text", Arial, sans-serif;
  width: 294px;
  height: 24px;
  border: 0;
  background: url(../img/otziv/inp-01.png) no-repeat 0 0;
}
.ov-forma input.btn-otpr {
  width: 114px;
  height: 31px;
}
.ov-forma .textarea {
  width: 402px;
  height: 125px;
  background: url(../img/otziv/tarea.png) no-repeat 0 0;
}
.ov-forma .textarea textarea {
  width: 390px;
  height: 115px;
  margin: 2px 0 0 3px;
  border: none;
  background: none;
}
/*End otziv*/
/*END CENT-SB*/
/*LEFT-SB*/
.ls-title {
  width: 246px;
  height: 44px;
  margin: 15px 0 0 0;
  background: url(../img/content/left/title.png) no-repeat 0 3px;
}
.ls-title b {
  /* The bell leaves 190 px: at 18 px the title would wrap, so this ribbon stays at 16 px.
     title.png has 31 painted rows and 10 transparent rows; the blue band starts at y=3. */
  box-sizing:border-box; display:block; height:44px;
  padding:2px 6px 11px 50px; white-space:nowrap; font:bold var(--fs-side)/31px "Golos Text",Arial,sans-serif;
  text-align:center; text-transform:none; color:#fff;
  background:url(../img/content/left/bell.png) no-repeat 10px 0;
}
.ls-title-02 {
  font: bold var(--fs-ribbon)/30px "Golos Text", Arial, sans-serif;
  width: 246px;
  height: 41px;
  margin: 15px 0 0 0;
  text-align: center;
  color: #fff;
  background: url(../img/content/left/title.png) no-repeat 0 0;
}
.ls-title-03 {
  font: bold var(--fs-ribbon)/34px "Golos Text", Arial, sans-serif;
  text-align: center;
  color: #fff;
}
/*BRON*/
.bronirov {
  width: 212px;
  margin: 0 0 0 25px;
}
.bronirov label {
  font: bold 1.2em "Golos Text", Arial, sans-serif;
  display: block;
  padding: 3px 0 2px 0;
  color: #000;
}
.d-pic-border {
  font: bold var(--fs-small) "Golos Text", Arial, sans-serif;
  color: #b6dbfb;
  width: 160px;
  height: 25px;
  border: none;
  background: url(../img/content/bron/bron-data.png) no-repeat 0 0;
}
.sc-pad-02 {
  padding: 5px 0;
}
.sc-pad {
  padding: 0 4px 0 0;
}
.sc-pad-03 {
  padding: 0 9px 0 0;
}
.counter-pole {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  width: 30px;
  height: 25px;
  text-align: center;
  line-height: 25px;
  border: none;
  color: #fff;
  background: url(../img/content/bron/bron-schet.png) no-repeat;
}
.room-form .counter-pole {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  width: 28px;
  height: 25px;
  text-align: center;
  line-height: 23px;
  border: none;
  color: #fff;
  background: url(../img/room/form/schet-bg.jpg) no-repeat 0 0;
}
.link-inp {
  margin: 1px 0 0 0;
  padding: 0;
  list-style: none;
}
.link-inp li {
  padding: 0px 0 0px 3px;
}
.link-inp li a {
  display: block;
  width: 14px;
  height: 12px;
  background: url(../img/content/bron/schet-pic.png) no-repeat 0 0;
}
.link-inp li a.last {
  background: url(../img/content/bron/schet-pic.png) no-repeat 0 -12px;
}
.room-form .link-inp {
  margin: 1px 0 0 0;
  padding: 0;
  list-style: none;
}
.room-form .link-inp li {
  padding: 0px 0 0px 3px;
}
.room-form .link-inp li a {
  display: block;
  width: 14px;
  height: 12px;
  background: url(../img/room/form/schet-pic.jpg) no-repeat 0 0;
}
.room-form .link-inp li a.last {
  background: url(../img/room/form/schet-pic.jpg) no-repeat 0 -12px;
}
.room-form .sc-pad {
  padding: 0 4px 0 0 !important;
}
.room-form .sc-pad-03 {
  padding: 0 9px 0 0 !important;
}
.second {
  margin: -2px 0 0 0 !important;
}
/*END BRON*/
.left-menu {
  padding: 4px 16px 0 28px;
}
.left-menu ul {
}
.left-menu ul li {
  padding: 0;
  background: url(../img/content/left/m-border.png) repeat-x 0 100%;
}
.left-menu ul li a {
  font: bold var(--fs-side)/1.3 "Golos Text", Arial, sans-serif;
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 0 0 12px;
  text-decoration: none;
  color: #0e66c2;
  background: url(../img/content/left/disk-01.png) no-repeat 0 50%;
}
.left-menu ul li a:hover,
.left-menu ul li a.active,
.left-menu ul li a.hover {
  color: var(--c-active);
  background: url(../img/content/left/disk-01h.png) no-repeat 0 50%;
}
.left-menu ul li a:hover b,
.left-menu ul li a.active b,
.left-menu ul li a.hover b {
  display: block;
  background: url(../img/content/left/str-01.png) no-repeat 100% 50%;
}
.left-menu ul li a b {
  display: block;
  flex: 1;
}
.left-menu .sub-menu-02 {
  display: none;
}
.left-menu .sub-menu-02 ul {
  margin: 0 0 8px 12px;
}
.left-menu .sub-menu-02 ul li {
  padding: 0;
  background: none;
}
.left-menu .sub-menu-02 ul li a {
  font: normal var(--fs-small)/1.35 "Golos Text", Arial, sans-serif;
  min-height: 36px;
  background: url(../img/content/left/disk-02.png) no-repeat 0 50%;
}
/*end left-menu*/
/*news*/
.news {
  font-size: var(--fs-small);
  line-height: 1.5;
  width: 210px;
  margin: 0 0 0 28px;
}
/*end news*/
/*END LEFT-SB*/
/*RIGHT_SB*/
.rc-title {
  /* Original image: blue rows 0..30, transparent/shadow rows 31..40. */
  box-sizing:border-box; width:246px; min-height:44px; height:auto;
  margin:15px 0 0; padding:0 10px; display:block; text-align:center;
  background:url(../img/content/right/title-bg.png) no-repeat 0 0;
}
.rc-title-text-01 {
  font: bold var(--fs-ribbon)/30px "Golos Text", Arial, sans-serif;
  color: #fff;
}
.rc-title-text-02 {
  font:bold var(--fs-ribbon)/28px "Golos Text",Arial,sans-serif; color:#fff;
}
.rc-title-text-02 b { font:inherit; color:inherit; }
.rc-title-text-04 {
  font: bold var(--fs-small)/31px "Golos Text", Arial, sans-serif;
  color: #fff;
}
/*end rc-title*/
/*comment*/
.comment {
  width: 185px;
  margin: 0 0 0 20px;
}
.o-name {
  font: bold var(--fs-side)/1.45 "Golos Text", Arial, sans-serif;
  color: #12609b;
}
.o-city {
  font: var(--fs-small)/1.45 "Golos Text", Arial, sans-serif;
  color: #12609b;
}
.o-city a {
  font: bold var(--fs-side)/1.4 "Golos Text", Arial, sans-serif;
  color: var(--c-link);
}
.o-text {
  font: var(--fs-small)/1.5 "Golos Text", Arial, sans-serif;
  padding: 3px 0;
  color: #000;
}
.n-pic-01 {
  float: left;
  margin: 5px 5px 0 0;
  border: 1px solid #b6b6b6;
}
.n-pic-01 img {
  border: 2px solid #eaeaeb;
}
.o-link a {
  font: var(--fs-small)/1.45 "Golos Text", Arial, sans-serif;
  display: block;
  float: right;
  padding: 0 10px 0 0;
  color: var(--c-link);
  background: url(../img/content/right/link-pic.png) no-repeat 100% 50%;
}
.news .o-link a {
  font: var(--fs-small)/1.45 "Golos Text", Arial, sans-serif;
  display: block;
  float: right;
  margin: 0 10px 0 0;
  padding: 0 10px 0 0;
  color: var(--c-link);
  background: url(../img/content/right/link-pic.png) no-repeat 100% 50%;
}
.o-separ {
  height: 21px;
  background: url(../img/content/right/g-separ.png) no-repeat 50% 6px;
}
/*end comment*/
/*sky*/
.s-week {
}
.s-week ul {
  margin: 3px 0 0 0;
  padding: 0;
  list-style: none;
}
.s-week ul li {
  font: 1.1em/20px "Golos Text", Arial, sans-serif;
  float: left;
  padding: 0 5px 0 8px;
  color: var(--c-muted);
}
.s-week ul li.first {
  color: var(--c-link);
  padding: 0;
}
.s-week ul li.last {
  padding: 0;
  width: 26px;
  height: 20px;
}
/*end sky*/
/*valuta*/
.blue td {
  background: #aae4ff;
}
/*end valuta*/
/*coord*/
.coord {
  font: var(--fs-small) "Golos Text", Arial, sans-serif;
  color: #2f363c;
  height: 63px;
  margin: -15px 0 0 0;
  padding: 20px 0 0 72px;
  background: url(../img/content/right/ifon.png) no-repeat 14px 0;
}
.coord b {
  color: var(--c-link);
}
/*end coord*/
/*END RIGHT_SB*/
/*END CONTENT*/
/*FOOTER*/
/* Structured footer: contacts, documents, navigation. Fixed legacy width. */
footer.site-footer { height:auto; min-width:1144px; margin-top:0; color:#fff; }
.hFooter { display:none; }
.site-footer .footer-inner { box-sizing:border-box; width:1117px; margin:0 auto; padding:32px 30px 18px; background:linear-gradient(#2b608c,#204c73); border-radius:4px; font-size:14px; line-height:1.55; }
.footer-columns { display:grid; grid-template-columns:1.25fr 1fr .8fr; gap:32px; }
.site-footer h2 { margin:0 0 12px; color:#fff; font-size:16px; line-height:1.4; }
.site-footer p { margin:0 0 14px; }
.site-footer ul { padding:0; margin:0; list-style:none; }
.site-footer li { margin:0 0 12px; }
.site-footer a, .site-footer a:visited { color:#fff; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.site-footer a:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.footer-contacts * { font-size:inherit!important; line-height:inherit!important; }
.footer-contacts p { margin:0 0 14px!important; }
.footer-contacts .footer-label { display:block; margin:14px 0 4px; }
.footer-contacts > p:first-child .footer-label { margin-top:0; }
.footer-registry { margin-top:25px; padding-top:20px; border-top:1px solid #7395b2; }
.footer-bottom { display:flex; justify-content:space-between; gap:24px; border-top:1px solid #7395b2; margin-top:25px; padding-top:20px; font-size:14px; color:#d8e9f6; }
.site-footer .copy { padding:0; margin:0; color:inherit; font-size:inherit; text-transform:none; }
/*END FOOTER*/
/* Keep the existing layout; expose the same menus to mouse and keyboard users.
   !important overrides the legacy jQuery fadeOut inline display:none on focus. */
.top-menu li:hover > .sub-menu,
.top-menu li:focus-within > .sub-menu,
.top-menu .sub-menu li:hover > .ss-munu,
.top-menu .sub-menu li:focus-within > .ss-munu,
.left-menu li:hover > .sub-menu-02,
.left-menu li:focus-within > .sub-menu-02 {
  display: block !important;
}
.top-menu a:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}
.left-menu a:focus-visible {
  outline: 2px solid #0a3981;
  outline-offset: 2px;
}
/* Nivo hides every image until JavaScript starts; retain a static banner without JS. */
html:not(.js) #slider > img:first-child,
html:not(.js) #slider > a:first-child > img:first-child {
  display: block;
}
/* Override legacy font shorthands and inline CMS font families. */
body,
body *,
.top-menu ul li a {
  font-family: 'Golos Text', Arial, sans-serif !important;
}

/* Wide pages. The side columns and their dividers are painted in the 1117 px frame images (centred,
   so they start 13.5 px in); a strip in the centre colour hides them. Strips stop short of the rounded
   edges: x<12 on the left, x≥1100 (top and bottom images) or x≥1110 (middle image) on the right. */
.price-page .right-sb,
.booking-page .right-sb,
.booking-page .left-sb { display:none; }
/* Prices: no right column, the tables take its place. */
.price-page .cent-sb { width:846px; }
.price-page .left-sb { margin-left:-1110px; }
.price-page .con-cent { background:linear-gradient(#eeeeef, #eeeeef) 892.5px 0 / 231px 100% no-repeat, url(../img/content/bg-cent_.png) repeat-y 50% 0; }
.price-page .con-top { background:linear-gradient(#ededee, #ededee) 892.5px 4px / 221px 10px no-repeat, url(../img/content/bg-topt.png) no-repeat 50% 0; }
.price-page .con-bot { background:linear-gradient(#ededee, #ededee) 892.5px 0 / 221px 10px no-repeat, url(../img/content/bg-bot.png) no-repeat 50% 0; }
/* Booking: the TravelLine form gets the whole frame. */
.booking-page .cent-sb { width:1076px; margin-left:34px; }
.booking-page .con-cent { background:linear-gradient(#eeeeef, #eeeeef) 25.5px 0 / 1098px 100% no-repeat, url(../img/content/bg-cent_.png) repeat-y 50% 0; }
.booking-page .con-top { background:linear-gradient(#ededee, #ededee) 25.5px 4px / 1088px 10px no-repeat, url(../img/content/bg-topt.png) no-repeat 50% 0; }
.booking-page .con-bot { background:linear-gradient(#ededee, #ededee) 25.5px 0 / 1088px 10px no-repeat, url(../img/content/bg-bot.png) no-repeat 50% 0; }
/* Published price data remains unchanged; override Word table presentation only. */
.price-page .text table { width:100%!important; max-width:100%; table-layout:fixed; border-collapse:collapse; margin:18px 0 26px; background:#fff; color:#17354e; font-size:14px!important; line-height:1.4!important; }
.price-page .text table td, .price-page .text table th { box-sizing:border-box; border:1px solid #b7cbd9!important; padding:8px 4px!important; vertical-align:middle; height:auto!important; }
.price-page .text table td *, .price-page .text table th * { font-size:inherit!important; line-height:inherit!important; }
.price-page .text table p, .price-page .text table div { margin:0!important; padding:0!important; }
.price-page .text table:first-of-type tr:first-child td { background:#e6f0f7; font-weight:600; text-align:center; font-size:var(--fs-small)!important; }
.price-page .text table:first-of-type tr:first-child td:first-child { width:28%!important; font-size:14px!important; }
.price-page .text table:first-of-type tr:first-child td:not(:first-child) { width:18%!important; }
.price-page .text table:first-of-type tr:nth-child(2) td { width:9%!important; background:#e6f0f7; font-size:var(--fs-small)!important; text-align:center; }
.price-page .text table:first-of-type tr:nth-child(n+3) td { width:auto!important; text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.price-page .text table:first-of-type tr:nth-child(n+3) td:first-child { text-align:left; white-space:normal; }
.price-page .text table tr:nth-child(even) { background:#f3f7fa; }
.price-page .text table:not(:first-of-type) { font-size:16px!important; }
.price-page .text table:not(:first-of-type) td:first-child { width:80%!important; }
.price-page .text table:not(:first-of-type) td:last-child:not([colspan]) { width:20%!important; text-align:right; font-variant-numeric:tabular-nums; }
.price-page .text table td[colspan="2"] { background:#e6f0f7; font-weight:600; }

/* Visible feedback without changing the approved page layout. */
.text a:hover, .text a:focus-visible { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; }
.site-footer a:hover, .site-footer a:focus-visible { color:#fff; text-decoration-thickness:2px; background:rgba(255,255,255,.12); }
.top-menu a:hover, .top-menu a:focus-visible { text-decoration:underline!important; text-underline-offset:4px; }

/* Social link is independent of the slider styles. */
.site-footer .footer-vk { display:inline-flex; align-items:center; min-height:44px; padding:4px 8px 4px 0; }
.footer-vk img { display:block; width:32px; height:32px; margin-right:10px; flex:none; }

/* CMS text arrives with Word and editor sizes (medium, 12pt, 15.6px); outside tables it all becomes body text. */
/* Template blocks inside .text (room card, reviews, forms) keep the sizes set above. */
.text :is(p, li, span, font, div, b, strong, em, i, u, a, small, big):not(table *):not(.neh, .crumb, .crumb *, .in-title, .in-box, .in-box *, .pr-title, .ov-name-01, .ov-name-01 *, .ov-date, .ov-title, .ov-link, .ov-link *, .ov-forma-title, .ov-forma, .ov-forma *, .room-form, .room-form *, .pagenation, .pagenation *) { font-size:var(--fs-body)!important; line-height:1.6!important; }
/* Doubled class: must outrank the rule above for spans inside headings. */
.text.text :is(h1, h2, h3, h4, h5, h6) :is(span, font, b, strong, em, i, u, a, small, big):not(table *) { font-size:inherit!important; line-height:inherit!important; }
/* The CMS uses h3–h6 for bold notices inside the text, not for sections. */
.text :is(h3, h4, h5, h6) { font-size:var(--fs-body)!important; line-height:1.5!important; }
/* Pure red from the CMS editor is 3.5:1 on the grey page; a darker red keeps the warning. */
.text :is([style*="color: rgb(255, 0, 0)"], [style*="color:#ff0000"], [style*="color: #ff0000"], font[color="#ff0000"], font[color="red"]) { color:#c00000!important; }
.ls-seo { margin:20px 20px 0; font-size:var(--fs-small); line-height:1.4; text-align:center; }
.news .o-link a, .comment .o-link a { color:#12609b; }
/* Keep the full gallery photo visible and the thumbnail strip near it. */
.text #main_pic { display:block; width:auto; height:auto; max-width:584px; max-height:380px; margin:0 auto; }
