
@font-face {
  font-family: Quicksand;
  src: url("/fonts/Quicksand-Regular.woff");
  font-weight: 400;
  font-display: swap;
  }
  @font-face {
  font-family: Quicksand;
  src: url("/fonts/Quicksand-Bold.woff");
  font-weight: 700;
  font-display: swap;
  }
  
  * {
  font-family: "Quicksand", sans-serif
  }
  
  body{
      background: linear-gradient(180deg, #FFEDED 0%, #FEF4E9 100%);
  }
  
  #booking__page{
     display: flex;
     justify-content: center;
     align-items: center ;
     padding-top: 61px;
  }
  .booking__page{
      max-width: 680px;
      background: rgba(255, 255, 255, 0.8);
      border-radius: 10px;
      padding: 58px 30px 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
  }
  
  .bp--style {
        width: 100%;
        height: auto;
        max-width: 470px;
        position: relative;
    }
  .bp__logo{
      text-align: center;
  }
  .bpi__input{
      display: flex;
      flex-direction: column;
      width: 100%;
      position: relative;
  }
  
  .bpi__title{
      font-weight: 700;
      font-size: 18px;
      color: #898989;
      display: flex;
      align-items: center;
      gap: 10px;
  
  }
  .number__order{
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      width: 39px;
      height: 39px;
      background: #898989;
      border-radius: 10px;
      color: #fff;
  }
  .input--style{
    display: block;
    border: 1px solid #CF2144;
    box-shadow: 4px 4px 10px rgb(0 0 0 / 10%), inset 0 4px 4px rgb(0 0 0 / 10%);
    border-radius: 8px;
    font-size: 1rem;
    color: #333;
    height: 50px;
    padding: 0 11px;
    line-height: 30px;
    margin-bottom: 10px;
    color: #CF2144;
  }
  .bpi__input label{
    position: relative;
    top: 13px;
    left: 7px;
    background: #fff;
    padding: 0 4px;
    color: #DD3E5E;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.25em;
    width: fit-content;
    white-space: nowrap;
  }
  .bpi__input--time {
        flex-direction: row;
        gap: 36px;
  }
  .bpi__input--time label{
        left: 40px;
        top: 8px;
  }
  .bp__header{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .btn__store__nir{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border: 1px solid #898989;
    border-radius: 45px;
    height: 40px;
    padding: 0 32px;
    cursor: pointer;
  }
  
  .btn__store__nir--active{
    border: 1px solid #CF2144;
  
  }
  .btn__store__nir--active svg path {
      fill: #CF2144;
  }
  
  .btns__text--active{
    color: #CF2144;
  }
  
  .btns__text{
    font-weight: 600;
    font-size: 16px;
    color: #898989;
  }
  #t__choice {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
        gap: 8px;
    }
  .btnt-item{
    list-style: none;
    width: 86px;
    height: 52px;
    line-height: 52px;
    border: 1px solid #DD3E5E;
    border-radius: 10px;
    cursor: pointer;
    text-align: center;
    font-weight: 700;
    font-size: 18px;
  }
  .btnt-item:hover {
    background: #DD3E5E;
    color: #fff;
    border: 1px solid #DD3E5E;
  }
  .bpi__input select {
    color: #898989;
    background-image: url('/icon-select-right.svg');
    background-position: calc(100% - 10px) calc(1em + 0px),calc(100% - 10px) calc(1em + 2px),100% 0;
    background-repeat: no-repeat;
    -webkit-appearance: none;
    -moz-appearance: none;
  }
  .itime--style,
  .itime--style::placeholder{
    color: #CF2144;
    width: 108px;
    font-weight: 700;
    font-size: 18px;
    text-align: center;
  }
  
  select:focus-visible ,input:focus-visible {
    outline: 1px solid #CF2144;
  }
  .itime--style::-webkit-outer-spin-button,
  .itime--style::-webkit-inner-spin-button {
    opacity: 1; 
  } 
  
  .list__time__choice {
  display: flex;
  justify-content: flex-end;
  }
  
  .bp__note p{
  color: #333;
  font-size: 16px;
  line-height:120%;
  padding: 0;
  margin: 0;
  }
  .bgn__note {
  font-weight: 700;
  padding-bottom: 5px !important;
  }
  .bgn__call {
  font-weight: 700;
  text-decoration-line: unset;
  color:#333;
  }
  
  .splitter {
  position: absolute;
  height: 100%;
  width: 2px;
  left: -41px;
  top: 52px;
  background: #898989;
  }
  
  
  .steps{
  width: 24px;
  height: 24px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  left: -55px;
  border: 2px solid #898989;
  top: 25px;
  }
  .steps--active{
  border: 2px solid #EB4062;
  }
  .steps__s--active{
  content: '';
  background:#EB4062;
  width: 15px;
  height: 15px;
  border-radius:50%;
  position: absolute;
  top: 5px;
  left: 5px;
  }
  .bpi__title--active{
  color: #EB4062;
  }
  .number__order--active{
  background: #EB4062;
  }
  
  
  .lists__local {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  column-gap: 16px;
  row-gap: 10px;
  justify-content: center;
  }
  .local__item {
  width: 100%;
  height: 100%;
  max-width: 217px;
  max-height: 120px;
  border: 1px solid #898989;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-content: center;
  padding: 10px 0;
  cursor: pointer;
  }
  .local__item p {
  font-size: 16px;
  line-height: 20px;
  text-align: center;
  color: #333333;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  }
  .locali__title {
  font-weight: 700;
  -webkit-line-clamp: 2 !important;
  }
  .locali__map {
  font-weight: 400;
  }
  .local__item:hover{
  background: linear-gradient(180deg, #FFEDED 0%, #FEF4E9 100%);
  border: 1px solid #EB4062;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.15);
  }
  .local__item:hover p{
  color: #DD3E5E;
  }
  
  .local__item--active{
  background: #EB4062 !important;
  }
  
  .local__item__p--active{
  color: #fff !important;
  }
  .local__item--active:hover{
  background: #EB4062;
  }
  
  .local__item__p--active:hover{
  color: #fff !important;
  }
  
  .btn__local{
  padding: 32px 0;
  text-align: center;
  }
  .btn__local--style {
  background: #FFFFFF;
  border: 1px solid #EB4062;
  border-radius: 45px;
  width: 160px;
  height: 48px;
  line-height: 48px;
  font-size: 16px;
  cursor: pointer;
  color: #CF2144;
  text-align: center;
  }
  .btn__local--style:hover {
  background: #CF2144;
  color: #fff;
  text-align: center;
  }
  /* section thanks  */
  #thankbooking{
    display: none; 
    position: fixed; 
    z-index: 1; 
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow:auto;
    background: linear-gradient(180deg, #FFEDED 0%, #FEF4E9 100%);
  }
  
  .thank__booking{
    width: 100%;
    height: auto;
    max-width: 700px;
    background: rgba(255, 255, 255);
    border-radius: 10px;
    padding: 58px 30px 21px;
    display: flex;
    flex-direction: column;
    position: relative;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin-top: 110px;
  }
  .tb__contents{
    padding-top: 45px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
  .tb__contents img{
    width: 100%;
    height: 100%;
    max-width: 412px;
    max-height: 418.49px;
    object-fit: contain;
    transform: translateX(-35px);
  }
  .tb__title{
    font-weight: 700;
    font-size: 30px;
    color: #EB4062;
  }
  .tb__info p{
    font-weight: 400;
    font-size: 16px;
    color: #EB4062;
  
  }
  .info__name, .info__phone , .info__local, .info__time{
    font-weight: 700;
  }
  .btn__services{
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .btn__services--style{
    background: linear-gradient(180deg, #DD3E5E 0%, #B61D4C 100%);
    border: 1px solid #EB4062;
    border-radius: 45px;
    width: 316px;
    height: 48px;
    line-height: 48px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    color: #fff;
    text-align: center;  
  }
  .btn__services--style:hover{
    background: none;
    background-color: fff;
    color: #B61D4C;
  
  }
  .tb_note{
    color: #333;
    padding: 0;
  }
  .tb_note li{
    color: #333;
    margin-left: 25px;
    padding: 3px 0;
  }
  .tbnot__call{
  
    color: #EB4062;
    font-weight: 700;
    text-decoration-line: unset;
  }
  .tbn_note{
    margin-left: 0 !important; 
    font-weight: 700;
    list-style: none;
  }
  /* section thanks */
  
  .d__mobile--hidden{
    display: none;
  }
  
  
  @media (max-width:550px) {  
    .d__desk--hidden{
      display: none;
    }
    .d__mobile--hidden{
      display: flex;
      margin: 15px 0;
    }
  
    #booking__page, #thankbooking {
      padding-top: 0px;
    }
  .booking__page {
    background: linear-gradient(180deg, #FFEDED 0%, #FEF4E9 100%);
    padding: 20px 10px;
  }
  .steps{
    left: 5px;
  }
  .splitter{
    left: 18px;
    top: 34px;
  }
  .bpi__input{
    width: auto;
  }
  .bpi__input{
    padding-left: 30px;
  }
  .bp__header {
    padding-left: 35px;
  }
  #t__choice {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 11px;
    margin-inline-start: -10px;
  }
  .list__time__choice {
    justify-content: flex-start;
  }
  .btnt-item {
    width: 70px;
    height: 40px;
    line-height: 40px;
    background-color: #fff;
  }
  .bpi__input--time {
    gap: 8px;
  }
  .itime--style, .itime--style::placeholder {
    height: 50px;
    width: 75px;
  }
  .itime--style::-webkit-outer-spin-button,
  .itime--style::-webkit-inner-spin-button {
    opacity: 0; 
  }
  .bpi__input--time label {
    left: 25px;
  }
  .local__item {
    max-width: 100%;
    background: #fff;
  }
  .local__item p{
    text-align: left;
    padding: 0 8px;
  }
  .bp__note p {
    padding: 0;
    text-align: center;
  }
  .input__if--style {
    width: auto;
  }
  .number__order {
    width: auto;
    background: none;
    color: unset;
  }
  .number__order::before{
     content: '0';
  }
  .number__order::after{
    content: '.';
  }
  .tb__contents img {
    max-width: 235px;
    max-height: 311px;
  }
  .tb__title {
    font-size: 24px;
  }
  .tb_note {
    padding-left: 20px;
  }
  #thankbooking {
    background:#fff;
  }
  .thank__booking {
    width: auto;
    margin-top: 90px;
    padding: 0 15px;
  }
  .tb__contents {
    padding-top: 15px;
  }
  
  .tb__info {
    text-align: center;
    padding: 0 14px;
    flex-direction: column;
  }
  .tb__info p {
    margin-top: 0;
    line-height: 120%;
  }
  
  .bpi__title{
    gap: 5px;
    margin: 0;
    padding: 0;
    margin-block-start: 0;
    margin-block-end: 0;
  }
  .steps {
    top:7px;
  }
  .bp__logo {
    padding: 10px 0;
  }
  .bpi__local {
    padding-left: 15px;
  }
  }
