.s29Calendar {
  width: 100%;
  max-width: 636px;
  font-size: 14px;
}
.s29Calendar nav {
  margin-bottom: 30px;
}
.s29Calendar nav a,
.s29Calendar nav span {
  display: inline-block;
  margin-right: 20px;
  line-height: 30px;
}
.s29Calendar h3 {
  margin: 23px 0;
  font-size: 20px;
}
.s29Calendar section,
.s29Calendar .s29_placeholder {
  float: left;
  width: 182px;
  min-height: 0;
  margin-right: 30px;
}
.s29Calendar section {
  margin-bottom: 30px;
}
.s29Calendar section > div {
  float: left;
  width: 26px;
  margin-bottom: 6px;
  color: #b0b0b0;
  text-align: right;
}
.s29Calendar > div {
  margin-bottom: 1px;
}
.s29Calendar h4 {
  margin: 0 0 10px 0 !important;
  font-size: 16px;
  font-weight: normal;
  letter-spacing: normal;
}
.s29Calendar.s29_big {
  font-size: 16px;
}
.s29Calendar.s29_big section,
.s29Calendar.s29_big .s29_placeholder {
  width: 224px;
}
.s29Calendar.s29_big section {
  margin-bottom: 34px;
}
.s29Calendar.s29_big section > div {
  width: 32px;
  margin-bottom: 14px;
}
.s29Calendar.s29_big h3 {
  font-size: 24px;
  margin: 26px 0 28px;
}
.s29Calendar.s29_big h4 {
  margin-bottom: 16px !important;
  font-size: 18px;
}
.s29MiniCalendar {
  width: 210px !important;
  font-size: 14px !important;
}
.s29MiniCalendar.s29_filled {
  padding: 30px 30px 30px 0 !important;
  background: #f7eecf !important;
}
.s29MiniCalendar button {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
.s29MiniCalendar header {
  float: right !important;
  font-size: 13px !important;
  font-weight: bold !important;
  text-align: right !important;
}
.s29MiniCalendar header div,
.s29MiniCalendar header button {
  float: left !important;
}
.s29MiniCalendar header > div > div:first-child {
  margin-right: 6px !important;
}
.s29MiniCalendar header .s29_year {
  margin-left: 9px !important;
}
.s29MiniCalendar header button {
  display: block !important;
  width: 15px !important;
  height: 18px !important;
  box-sizing: border-box !important;
  -moz-box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  border: solid 1px #765b39 !important;
}
.s29MiniCalendar header button:disabled {
  border-color: #808080 !important;
}
.s29MiniCalendar header button.s29_prev {
  background-image: url(img/ym_prev.png) !important;
  border-right: none !important;
  border-radius: 3px 0 0 3px !important;
}
.s29MiniCalendar header button.s29_prev:disabled {
  background-image: url(img/ym_prev_inactive.png) !important;
}
.s29MiniCalendar header button.s29_next {
  background-image: url(img/ym_next.png) !important;
  border-left: none !important;
  border-radius: 0 3px 3px 0 !important;
}
.s29MiniCalendar header button.s29_next:disabled {
  background-image: url(img/ym_next_inactive.png) !important;
}
.s29MiniCalendar header .s29_seprt {
  display: block !important;
  width: 1px !important;
  height: 18px !important;
  background-color: #765b39 !important;
}
.s29MiniCalendar header div.s29_seprt.s29_inactive {
  background-color: #808080 !important;
}
.s29MiniCalendar .s29_body {
  position: relative !important;
  float: right !important;
  width: 182px !important;
  margin: 10px -3px 10px 0 !important;
}
.s29MiniCalendar .s29_grid div {
  float: left !important;
  box-sizing: border-box !important;
  -moz-box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  width: calc(100% / 7) !important;
  height: 21px !important;
  padding: 2px 4px 2px 2px !important;
  color: #b0b0b0 !important;
  text-align: right !important;
  line-height: 14px !important;
}
.s29MiniCalendar .s29_body div.s29_current {
  padding: 0 2px 0 0 !important;
  border: solid 2px #ff5959 !important;
}
.s29MiniCalendar footer {
  float: right !important;
  margin-top: 5px !important;
}
.s29MiniCalendar footer a,
.s29MiniCalendar footer div {
  float: left !important;
}
.s29MiniCalendar footer a {
  display: block !important;
}
.s29MiniCalendar footer .s29_prev,
.s29MiniCalendar footer .s29_next {
  width: 87px !important;
  height: 15px !important;
  box-sizing: border-box !important;
  -moz-box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  border: solid 1px #765b39 !important;
}
.s29MiniCalendar footer .s29_prev {
  background-image: url(img/day_prev.png) !important;
  border-right: none !important;
  border-radius: 3px 0 0 3px !important;
}
.s29MiniCalendar footer .s29_next {
  background-image: url(img/day_next.png) !important;
  border-left: none !important;
  border-radius: 0 3px 3px 0 !important;
}
.s29MiniCalendar footer div.s29_prev {
  background-image: url(img/day_prev_inactive.png) !important;
}
.s29MiniCalendar footer div.s29_next {
  background-image: url(img/day_next_inactive.png) !important;
}
.s29MiniCalendar footer .s29_seprt {
  width: 1px !important;
  height: 15px !important;
  background-color: #765b39 !important;
}
.s29MiniCalendar footer .s29_seprt.inactive {
  background-color: #808080 !important;
}
.s29MiniCalendar .s29_clear {
  clear: both !important;
}
.s29MiniCalendar .s29_loader {
  display: none !important;
}
.s29MiniCalendar .s29_loader.s29_visible {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  background-image: url(/images/spinner_bigger.gif) !important;
  background-size: 32px 32px !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.s29MiniCalendar.s29_big {
  width: 252px !important;
  font-size: 16px !important;
}
.s29MiniCalendar.s29_big header {
  font-size: 15px !important;
}
.s29MiniCalendar.s29_big header button {
  width: 21px !important;
  height: 24px !important;
}
.s29MiniCalendar.s29_big header button.s29_next {
  background-image: url(img/ym_next_smallarrow.png) !important;
}
.s29MiniCalendar.s29_big header button.s29_next:disabled {
  background-image: url(img/ym_next_smallarrow_inactive.png) !important;
}
.s29MiniCalendar.s29_big header button.s29_prev {
  background-image: url(img/ym_prev_smallarrow.png) !important;
}
.s29MiniCalendar.s29_big header button.s29_prev:disabled {
  background-image: url(img/ym_prev_smallarrow_inactive.png) !important;
}
.s29MiniCalendar.s29_big header .s29_seprt {
  height: 24px !important;
}
.s29MiniCalendar.s29_big header > div > div:first-child {
  margin-right: 7px !important;
  line-height: 21px !important;
}
.s29MiniCalendar.s29_big header .s29_year {
  margin-left: 11px !important;
}
.s29MiniCalendar.s29_big .s29_body {
  width: 219px !important;
  margin: 14px -4px 12px 0 !important;
}
.s29MiniCalendar.s29_big .s29_grid div {
  height: 26px !important;
  padding: 4px 7px 0 0 !important;
  line-height: 16px !important;
}
.s29MiniCalendar.s29_big .s29_body div.s29_current {
  padding: 2px 5px 0 0 !important;
}
.s29MiniCalendar.s29_big footer .s29_prev,
.s29MiniCalendar.s29_big footer .s29_next {
  width: 104px !important;
  height: 18px !important;
}
.s29MiniCalendar.s29_big footer .s29_seprt {
  height: 18px !important;
}
.s29MiniCalendar.s29_responsive {
  width: auto !important;
  min-width: 190px !important;
  max-width: 300px !important;
}
.s29MiniCalendar.s29_responsive.s29_big {
  min-width: 240px !important;
  max-width: 336px !important;
}
.s29MiniCalendar.s29_responsive header {
  float: none !important;
}
.s29MiniCalendar.s29_responsive header .s29_month {
  float: left !important;
}
.s29MiniCalendar.s29_responsive header .s29_month > div:first-child {
  width: 80px !important;
}
.s29MiniCalendar.s29_responsive header .s29_year {
  float: right !important;
}
.s29MiniCalendar.s29_responsive .s29_body {
  width: auto !important;
}
.s29MiniCalendar.s29_responsive footer {
  width: 100% !important;
}
.s29MiniCalendar.s29_responsive footer .s29_prev,
.s29MiniCalendar.s29_responsive footer .s29_next {
  width: calc((100% - 1px) / 2) !important;
}
