/**
 * Octane-matched pill buttons + form fields (desktop + mobile).
 * Thin elongated capsules — not tall fat ovals. Same sizes in every language.
 */
:root {
  --titane-pill-radius: 21px;
  --titane-pill-radius-sm: 15px;
}

/* —— Hero / slide CTAs (outline white pills) —— */
.button.button_theme_slide,
a.button.button_theme_slide,
button.button.button_theme_slide {
  min-height: 0 !important;
  height: auto !important;
  padding: 10px 0 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  border-radius: var(--titane-pill-radius) !important;
  box-sizing: border-box !important;
  letter-spacing: 0.02em;
}

@media (max-width: 767px) {
  .button.button_theme_slide,
  a.button.button_theme_slide,
  button.button.button_theme_slide,
  .slider-index .slide > .button.button_theme_slide,
  .home-brand-slider .slide > .button.button_theme_slide,
  .cars-company .slide .button.button_theme_slide,
  .callback-link .button.button_theme_slide,
  .callback-link .callback-link__desktop.button_theme_slide,
  body.car-index .button_theme_slide,
  body.brand-landing-page .button.button_theme_slide {
    min-width: 0 !important;
    width: min(310px, calc(100% - 48px)) !important;
    max-width: 310px !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 5px 15px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    border-radius: var(--titane-pill-radius) !important;
    border-width: 2px !important;
  }
}

@media (max-width: 480px) {
  .button.button_theme_slide,
  a.button.button_theme_slide,
  button.button.button_theme_slide,
  .slider-index .slide > .button.button_theme_slide,
  .home-brand-slider .slide > .button.button_theme_slide,
  .cars-company .slide .button.button_theme_slide,
  body.car-index .button_theme_slide,
  body.brand-landing-page .button.button_theme_slide {
    font-size: 12px !important;
    padding: 5px 15px !important;
  }
}

/* —— Catalog / favorites cards: rent pill (with hearts) —— */
.car-single .callback-link__desktop,
.catalog-grid .car-single .callback-link__desktop,
.hit-car .car-single .callback-link__desktop {
  font-size: 21px !important;
  font-weight: 400 !important;
  padding: 3px 0 !important;
  line-height: 1.25 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 20.5px !important;
  border-width: 2px !important;
}

/* —— Related cars (“You may also like”) — SAME pill as catalog —— */
.car-card-btn,
.related-section .car-card-btn,
.box-recommend-auto .car-card-btn,
.related-track .car-card-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  font-family: "Montserrat", sans-serif !important;
  line-height: 1.25 !important;
  letter-spacing: 0.02em !important;
  text-transform: lowercase !important;
  padding: 3px 0 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 20.5px !important;
  border: 2px solid #fd6c1e !important;
  background: #fd6c1e !important;
  color: #fff !important;
}

.car-card:hover .car-card-btn,
.car-card:focus-visible .car-card-btn,
.related-section .car-card:hover .car-card-btn {
  background: #fff !important;
  color: #595959 !important;
  border-color: #fd6c1e !important;
}

@media (max-width: 760px) {
  .car-single .callback-link__desktop,
  .catalog-grid .car-single .callback-link__desktop,
  .hit-car .car-single .callback-link__desktop,
  .car-card-btn,
  .related-section .car-card-btn,
  .box-recommend-auto .car-card-btn,
  .related-track .car-card-btn {
    font-size: 12px !important;
    padding: 5px 0 !important;
    border-radius: var(--titane-pill-radius-sm) !important;
    line-height: 1.2 !important;
  }
}

/* —— Car page rent / calc —— */
.car-info__arend-btn,
.car-info__calc-btn {
  height: 50px !important;
  line-height: 50px !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  border-radius: 20px !important;
  padding: 0 !important;
}

@media (max-width: 767px) {
  .car-info__arend-btn,
  .car-info__calc-btn {
    height: 40px !important;
    line-height: 40px !important;
    font-size: 14px !important;
  }
}

/* —— Short application forms (name / phone / submit) —— */
.short-form__wrapper input:not(.form__input--verification):not(.form__submit),
.short-form__wrapper .select-wrapper,
.short-form__wrapper .form__submit,
.car-index .car-price .short-form__wrapper .form__input,
.car-index .car-price .short-form__wrapper .select-wrapper,
.car-index .car-price .short-form__wrapper .form__submit {
  height: 50px !important;
  min-height: 0 !important;
  border-radius: var(--titane-pill-radius) !important;
}

.short-form__wrapper .form__submit,
.car-index .car-price .short-form__wrapper .form__submit {
  font-weight: 400 !important;
  line-height: 1.2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

@media (max-width: 560px) {
  .short-form__wrapper input:not(.form__input--verification):not(.form__submit),
  .short-form__wrapper .select-wrapper,
  .short-form__wrapper select,
  .car-index .car-price .short-form__wrapper .form__input,
  .car-index .car-price .short-form__wrapper .select-wrapper,
  .car-index .car-price .short-form__wrapper select {
    height: 25px !important;
    min-height: 25px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 23px !important;
    color: #595959 !important;
    border-radius: var(--titane-pill-radius) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .short-form__wrapper .form__submit,
  .car-index .car-price .short-form__wrapper .form__submit {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 28px !important;
    border-radius: var(--titane-pill-radius) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .short-form__wrapper input::placeholder,
  .car-index .car-price .short-form__wrapper .form__input::placeholder {
    font-size: 12px !important;
    color: #595959 !important;
    opacity: 1 !important;
  }

  /* Luxury car rental footer form — Octane mobile sizes */
  .rent-footer-form {
    background-size: cover !important;
    background-position: center center !important;
  }

  .rent-footer-form__form .form__input,
  .rent-footer-form__form input:not(.checkbox__input):not(.form__submit):not(.form__input--verification),
  .rent-footer-form__form .phone-field {
    height: 25px !important;
    min-height: 25px !important;
    max-width: 100% !important;
    padding: 0 15px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 23px !important;
    color: #595959 !important;
    border-radius: 21px !important;
  }

  .rent-footer-form__form .form__submit,
  .rent-footer-form__form input.form__submit {
    height: 30px !important;
    min-height: 30px !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 15px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 28px !important;
    border-radius: 21px !important;
  }

  .rent-footer-form__form textarea,
  .rent-footer-form__form .form__textarea {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #595959 !important;
  }

  .rent-footer-form__form input::placeholder,
  .rent-footer-form__form textarea::placeholder {
    font-size: 12px !important;
    color: #595959 !important;
    opacity: 1 !important;
  }

  .catalog-filter__price,
  .catalog-filter__select,
  .catalog-filter__search {
    height: 30px !important;
    min-height: 30px !important;
  }
}

/* —— Checkout / account / questionnaire —— */
.checkout-ru__input,
.checkout-ru__btn,
.account-questionnaire .checkout-ru__input,
.account-questionnaire .checkout-ru__btn {
  border-radius: var(--titane-pill-radius) !important;
}

.checkout-ru__btn,
.account-questionnaire .checkout-ru__btn {
  height: auto !important;
  min-height: 0 !important;
  padding: 10px 55px !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  line-height: 1.2 !important;
  border-radius: var(--titane-pill-radius) !important;
}

.checkout-ru__input {
  height: 42px !important;
  padding: 0 18px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

@media (max-width: 480px) {
  .checkout-ru__input {
    height: 30px !important;
    font-size: 12px !important;
    padding: 0 14px !important;
  }

  .checkout-ru__btn,
  .account-questionnaire .checkout-ru__btn {
    width: 100%;
    padding: 8px 24px !important;
    font-size: 14px !important;
  }
}

/* —— Booking modals —— */
#divier__new_callback-modal .form-control,
#divier__new_privilege-modal .form-control,
#divier__new_certificate-modal .form-control,
#divier__new_callback-modal select,
#divier__new_privilege-modal select,
#divier__new_certificate-modal select {
  min-height: 0 !important;
  height: 34px !important;
  padding: 4px 14px !important;
  font-size: 14px !important;
  border-radius: var(--titane-pill-radius) !important;
}

#divier__new_callback-modal .phone-field__code,
#divier__new_privilege-modal .phone-field__code,
#divier__new_certificate-modal .phone-field__code,
#divier__new_callback-modal .phone-field__number,
#divier__new_privilege-modal .phone-field__number,
#divier__new_certificate-modal .phone-field__number {
  min-height: 34px !important;
  height: 34px !important;
  font-size: 14px !important;
}

#divier__new_callback-modal button.calculate-btn,
#divier__new_privilege-modal button.calculate-btn,
#divier__new_certificate-modal button.calculate-btn,
#divier__new_callback-modal .btn.calculate-btn,
#divier__new_privilege-modal .btn.calculate-btn,
#divier__new_certificate-modal .btn.calculate-btn,
#titane-order-choice .calculate-btn,
.titane-order-actions .calculate-btn {
  height: auto !important;
  min-height: 0 !important;
  padding: 10px 55px !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  border-radius: var(--titane-pill-radius) !important;
  line-height: 1.2 !important;
}

@media (max-width: 576px) {
  #divier__new_callback-modal .form-control,
  #divier__new_privilege-modal .form-control,
  #divier__new_certificate-modal .form-control,
  #divier__new_callback-modal select,
  #divier__new_privilege-modal select,
  #divier__new_certificate-modal select,
  #divier__new_callback-modal .phone-field__code,
  #divier__new_privilege-modal .phone-field__code,
  #divier__new_certificate-modal .phone-field__code,
  #divier__new_callback-modal .phone-field__number,
  #divier__new_privilege-modal .phone-field__number,
  #divier__new_certificate-modal .phone-field__number {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 12px !important;
  }

  #divier__new_callback-modal button.calculate-btn,
  #divier__new_privilege-modal button.calculate-btn,
  #divier__new_certificate-modal button.calculate-btn,
  #divier__new_callback-modal .btn.calculate-btn,
  #divier__new_privilege-modal .btn.calculate-btn,
  #divier__new_certificate-modal .btn.calculate-btn {
    padding: 8px 28px !important;
    font-size: 12px !important;
  }
}

/* —— Sitewide mobile: thin elongated pills (Octane) —— */
@media (max-width: 767px) {
  .feedback .button,
  .feedback a.button,
  .description-main .button,
  .condition .button,
  .vip-benefits .button,
  .club-cards-block .button,
  a.button_theme_orange,
  button.button_theme_orange,
  .button.button_theme_orange,
  .callback-link .button:not(.button_theme_slide),
  .europe-city-picker__btn,
  .europe-city-picker__toggle,
  .catalog-filter__toggle,
  .catalog-filter__btn,
  .catalog-filter__price,
  .catalog-filter__select,
  .catalog-filter__search,
  .tariff-filter__top,
  .tariff-sort,
  .tariff-sort__top,
  .tariff-driver__item--top,
  .car-info__arend-btn,
  .car-info__calc-btn,
  .car-info__city-btn,
  .checkout-ru__btn,
  .checkout-ru__input,
  .short-form__wrapper .form__submit,
  .short-form__wrapper input:not(.form__input--verification):not(.form__submit),
  .short-form__wrapper .select-wrapper,
  .short-form__wrapper select,
  .car-index .car-price .short-form__wrapper .form__input,
  .car-index .car-price .short-form__wrapper .select-wrapper,
  .car-index .car-price .short-form__wrapper select,
  .car-index .car-price .short-form__wrapper .form__submit,
  .rent-footer-form__form .form__input,
  .rent-footer-form__form .form__submit,
  .button.button_theme_slide,
  a.button.button_theme_slide {
    border-width: 1px !important;
    border-radius: 21px !important;
    box-sizing: border-box !important;
  }

  .catalog-filter__price,
  .catalog-filter__select,
  .catalog-filter__search,
  .catalog-filter__toggle,
  .europe-region-pill,
  .home-region-cta a,
  a.europe-region-link,
  .europe-city-picker__toggle,
  .tariff-filter__top,
  .tariff-sort__top,
  .car-info__city-btn {
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 26px !important;
    font-size: 12px !important;
  }

  /* Car page: book / calculate — thin, full width near edges */
  .car-info__arend-btn,
  .car-info__calc-btn,
  body.car-index .car-info__arend-btn,
  body.car-index .car-info__calc-btn {
    width: 100% !important;
    max-width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    line-height: 34px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
  }

  body.car-index .car-product .titane-wrap,
  body.car-index .car-info {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.car-index .car-product,
  body.car-index .car-row,
  body.car-index .cars-company > .car-row,
  body.car-index .cars-company > .breadcrumb,
  body.car-index .cars-company > .title-main_medium.title-carPage_h1,
  body.car-index .cars-company > .car-description__wrap {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* Specs intro copy: even left/right, same inset as the table — all car pages */
  body.car-index:not(.brand-landing-page) .car-description__wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 16px 8px 12px !important;
    box-sizing: border-box !important;
    text-align: justify !important;
  }

  body.car-index:not(.brand-landing-page) .car-description__wrap p {
    margin: 0 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-wrap: unset !important;
    overflow-wrap: break-word !important;
  }

  .car-info__city-btn {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* Override fat 50px quick-book fields from car-price-city.css */
  .car-index .car-price .short-form__wrapper .form__input,
  .car-index .car-price .short-form__wrapper .select-wrapper,
  .car-index .car-price .short-form__wrapper select {
    height: 28px !important;
    min-height: 28px !important;
    font-size: 12px !important;
    line-height: 26px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .car-index .car-price .short-form__wrapper .form__submit {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 12px !important;
    line-height: 28px !important;
  }
}

/* Floating call circle — LEFT bottom; scroll-top arrow stays RIGHT */
aside.fixed-contact {
  position: fixed !important;
  left: 16px !important;
  right: auto !important;
  bottom: 22px !important;
  top: auto !important;
  transform: none !important;
  z-index: 2147483000 !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  pointer-events: auto !important;
}

aside.fixed-contact .fixed-contact__btn {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 26px 26px !important;
  text-decoration: none !important;
}

aside.fixed-contact .fixed-contact__btn--phone {
  background-color: #fd6c1e !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M6.6 10.8c1.5 3 3.6 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E") !important;
}

/* Brand / car pages: never hide the call circle */
body.brand-landing-page aside.fixed-contact,
body.car-index aside.fixed-contact,
body.certificates-page aside.fixed-contact,
html body aside.fixed-contact {
  position: fixed !important;
  left: 16px !important;
  right: auto !important;
  bottom: 22px !important;
  z-index: 2147483000 !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

a.menu-button-right {
  display: none !important;
}
