.img-gallery img{
  max-width:100%;
  float:none;
}






#jssor_1{
	max-width:100%;
}
.osd_pagemenu{
	display:flex;
	justify-content:space-between;
	padding:40px 0;
}
.osd_pagemenu li{
	display:inline-block;
}
.osd_pagemenu a{
	display:inline-block;
	font-weight:500;
	text-transform:uppercase;
	font-size:14px;
	color:#221f1f;
	text-align:center;
	padding:20px 24px 40px 24px;
	position:relative;
	-moz-transition: all .5s;
	-webkit-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
}
.osd_pagemenu a:hover{
	color:#221f1f;
	text-decoration:none;
}
.osd_pagemenu a:after{
	content:'';
	height:40px;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	-moz-transition: all .5s;
	-webkit-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
	background:url('../img/marker4.png') 50% 50% no-repeat;
}
.osd_pagemenu a:hover:after{
	bottom:5px;
}
.buyButton.osd_buy_button,.buyButton.osd_buy_button:hover,.buyButton.osd_buy_button:active,.buyButton.osd_buy_button:visited{
	font-size:20px;
	display: inline-block;
	margin-top:0;
}
.buyButton.osd_buy_button,.buyButton.osd_buy_button:active,.buyButton.osd_buy_button:visite{
	color:#fff;
}

.osd_text{
	font-size:18px;
	line-height:36px;
}
.osd_ib_item{
	padding:24px 0;
}
.osd_ib_item_list {
    background: url('../img/marker3.png') 0 4px no-repeat;
    padding: 4px 24px 4px 52px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 24px;
    margin: 24px 0;
}
.osd_ib_item_desc{
	margin-top:12px;
}
.osd_ib_item_img img{
	max-width:100%;
}


#osd_1,#osd_2,#osd_2_2,#osd_3,#osd_4,#osd_5,#osd_6{
	padding: 75px 0;
}
#osd_2{
	background-color:#eae9e9;
}
.osd_head{
	max-width:100%;
}

/**/
#osd_3{
	background-color: #f5833b;
    padding: 75px 0;
}
#osd_3 .fp_h3 {
    background: url('../img/marker_w.png') 0 5px no-repeat;
}
#osd_3 p{
	text-align:center;
	font-size:18px;
	line-height:36px;
	margin:24px 0;
}


#osd_4 .osd_fl_lists{
	color:#221f1f;
	font-size:14px;
	text-align:center;
	font-weight: 500;
	padding:18px auto
}


/**/
#osd_5{
	background-color:#eae9e9;
}


/**/

.osd_flex_element{
	display:flex;
	justify-content:space-between;
}
.osd_flex_element .tpl-button-main{
	border: 4px solid #fff;
	background-color:#f5833b;
	padding: 18px;
	font-size: 15px;
	color:#fff;
	text-transform: uppercase;
	margin: 12px 0;
	text-align:center;
	width:30%;
}
@media (max-width: 991px) {
	.osd_flex_element .tpl-button-main{
		font-size: 13px;
	}
}

@media (max-width: 767px) {

	.osd_pagemenu{
		display:block;
		justify-content:space-between;
		padding:40px 0;
	}
	.osd_pagemenu li{
		display:block;
		text-align:center;
	}
	.osd_pagemenu a{
		display:inline-block;
		font-weight:500;
		text-transform:uppercase;
		font-size:14px;
		color:#221f1f;
		text-align:center;
		padding:12px 24px 12px 24px;
		position:relative;
		-moz-transition: all .5s;
		-webkit-transition: all .5s;
		-o-transition: all .5s;
		transition: all .5s;
	}
	.osd_pagemenu a:hover{
		color:#221f1f;
		text-decoration:none;
	}
	.osd_pagemenu a:after{
		content:'';
		height:0px;
		display:none;
		background:none;
	}
	.osd_pagemenu a:hover:after{
		bottom:5px;
	}
}

/**/




/*table grid*/

    .table-grid {
      width: 100%;
      max-width: 100%;
      display: flex;
      flex-direction: column;
      background-color: #eae9e9;
      gap: 1px;
      border-radius: 6px;
    }

    .header-row-grid {
      display: grid;
      grid-template-columns: 1fr 1fr 2fr 1fr;
      background-color: #eae9e9;
      font-weight: 600;
    }

    .header-item {
      padding: 14px 18px;
      display: flex;
      align-items: center;
      color: #464646;
      word-break: break-word;
      background-color: #eae9e9;
    }

    .row-grid {
      display: flex;
      flex-direction: column;
      background-color: white;
      transition: border 0.2s, background-color 0.2s;
      border: 1px solid transparent;
    }

    .row-main {
      display: grid;
      grid-template-columns: 1fr 1fr 2fr 1fr;
      background-color: white;
    }

    .cell {
      padding: 14px 18px;
      display: flex;
      align-items: center;
      color: #464646;
      word-break: break-word;
      background-color: white;
    }

    .package-name {
      cursor: pointer;
      transition: background-color 0.2s, color 0.2s;
    }

    .pkg-text {
      display: inline-block;
      border-bottom: 2.5px dashed #f79c62;
      font-size: 1.2rem;
      font-weight: 600;
      line-height: 1.4;
      transition: border-color 0.2s, color 0.2s;
    }

    .pkg-text:hover {
      border-bottom-color: #464646;
    }

    .cell:last-child {
      color: #f79c62;
      font-weight: 500;
    }

    .row-detail {
      display: none;
      padding: 16px 18px 20px 18px;
      background-color: #fcfcfc;
      border-top: 1px solid #eae9e9;
      color: #464646;
      line-height: 1.5;
      font-size: 0.95rem;
      border-radius: 0 0 6px 6px;
      transition: background-color 0.2s;
    }

    .row-detail strong {
      color: #464646;
      font-weight: 600;
    }

    .time-slot {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 4px;
      margin-top: 6px;
    }

    .time-slot span {
      background: #eae9e9;
      padding: 2px 12px;
      border-radius: 12px;
      font-size: 0.9rem;
      display: inline-block;
      white-space: nowrap;
    }

    /* Активное состояние */
    .row-grid.expanded {
      border: 1px solid #f5833b;
      background-color: white;
    }

    .row-grid.expanded .package-name {
      background-color: #f5833b;
      color: white;
      border-radius: 6px 0 0 0;
    }

    .row-grid.expanded .pkg-text {
      border-bottom: none;
      color: white;
    }

    .row-grid.expanded .row-detail {
      display: block;
      background-color: #fffcf9;
      border-radius: 0 0 6px 6px;
    }

    .row-grid.expanded .row-main {
      background-color: #fafafa;
      border-radius: 6px 6px 0 0;
    }

    /* Адаптив для мобильных */
    @media (max-width: 640px) {
      .table-grid {
        gap: 12px;
        background: transparent;
        border-radius: 0;
      }

      .header-row-grid {
        display: none;
      }

      .row-grid {
        background: white;
        border: 1px solid #eae9e9;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 0 1px 3px rgba(0,0,0,0.04);
      }

      .row-grid.expanded {
        border-color: #f5833b;
      }

      .row-main {
        display: block;
        background: white;
        border-radius: 0;
      }

      .cell {
        display: flex;
        justify-content: space-between;
        padding: 12px 16px;
        border-bottom: 1px solid #eae9e9;
        background: white;
        color: #464646;
      }
      .cell:last-child {
        border-bottom: none;
        color: #f79c62;
      }
      .cell::before {
        content: attr(data-label);
        font-weight: 600;
        color: #464646;
        margin-right: 16px;
        flex-shrink: 0;
      }
      .cell:last-child::before {
        color: #464646;
      }

      .package-name {
        border-bottom: none;
        cursor: pointer;
        font-weight: 500;
        justify-content: space-between;
        border-radius: 0 !important;
      }

      .pkg-text {
        font-size: 1.1rem;
        border-bottom-width: 2px;
      }

      .package-name::after {
        content: " ▼";
        font-size: 0.7rem;
        color: #f79c62;
        margin-left: 8px;
        transition: transform 0.2s;
      }
      .row-grid.expanded .package-name::after {
        transform: rotate(180deg);
        color: white;
      }

      .row-grid.expanded .package-name {
        background-color: #f5833b;
        color: white;
        border-radius: 6px 6px 0 0 !important;
      }

      .row-detail {
        padding: 12px 16px 16px;
        border-top: 1px solid #eae9e9;
        font-size: 0.9rem;
        background-color: #fffcf9;
        border-radius: 0 0 6px 6px;
        border: none;
      }

      .row-grid.expanded .row-detail {
        border-top: 1px solid #f5833b;
        background-color: #fffcf9;
      }

      .time-slot span {
        white-space: normal;
        background: #eae9e9;
        padding: 2px 12px;
        border-radius: 12px;
        font-size: 0.8rem;
        display: inline-block;
      }
    }

    @media (max-width: 400px) {
      .cell {
        padding: 10px 12px;
        font-size: 14px;
      }
      .row-detail {
        padding: 10px 12px 14px;
        font-size: 0.85rem;
      }
      .pkg-text {
        font-size: 1rem;
      }
    }
/**/