/*
Theme Name: Bristol
*/

input, select, textarea {
  font-family: 'Manrope', sans-serif;
}

.btn--small {
  height: 40px;
  font-size: 13px;
}

.footer__contacts {
  column-gap: 0;
}

.services-grid__item { color: #212121; }

.contact__form .wpcf7-form {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

.contact__form .wpcf7-form .wpcf7-submit {
  width: 180px;
  display: inline-flex;
  font-size: 16px;
  font-weight: 400;
}

.contact__field input.wpcf7-not-valid,
.contact__field textarea.wpcf7-not-valid { border-color: red; }

.contact__field input, .contact__field textarea { width: 100%; }
.wpcf7-not-valid-tip { font-size: 14px; margin-top: 4px; }

.contact__form .wpcf7-spinner { display: none; }
.wpcf7-response-output { padding: 10px 15px !important; margin: 0 !important; }

.common-problems__list li, .common-problems__list p { position: relative; padding-left: 20px; }
.common-problems__list li::before, .common-problems__list p::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 15px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d0d0d0;
}

.common-problems__list p::before { top: 9px; }

.brands-section__item:hover img {
  filter: none;
}
.brands-section__item img[src*="sub-zero"],
.brands-section__item img[src*="subzero"],
.brands-section__item img[src*="wolf"] {
  filter: none !important;
  opacity: 1 !important;
}

.modal__actions { position: relative; }
.modal__actions .wpcf7-spinner {
  position: absolute;
  top: 50%;
  right: -30px;
  transform: translateY(-50%);
  margin: 0;
}

.locations-section__cta { scroll-margin-top: 120px; }

.modal-schedule .wpcf7-response-output { margin-top: 20px !important; font-size: 14px; }
.footer__column a { color: #737373; text-decoration: none; transition: all .3s; }
.footer__column a:hover { color: #fff; }
.footer__columns { border-top: 1px solid #393939; padding-top: 40px; }

a.reviews__pagination { color: #242424; text-decoration: none; }

img[src*="bosch.png"],
img[src*="kitchenaid_logo.svg"] {
  filter: brightness(0);
}

.features-section__features { margin-top: 70px; }
.about-features { padding-top: 0; }

@media (max-width: 768px) {
  .common-problems__title { font-size: 36px !important; }
  .common-problems__description { font-size: 18px !important; }
  .common-problems__list { font-size: 16px !important; }
  .common-problems__spacer { display: none !important; }
  .common-problems__hero { min-height: auto !important; padding-top: 75%; }
  .common-problems__last-spacer { height: 30px !important; margin-top: 30px; border-top: 1px solid #eee; }
  img[src*="bosch.png"],
  img[src*="kitchenaid_logo.svg"] {
    filter: brightness(0) !important;
  }
  img[src*="miele.png"] { filter: grayscale(100%) !important; }
  .common-problems__list li::before { top: 11px; }
  .common-problems__list p::before { top: 7px; }
  .features-section__features { margin-top: 50px; }
}

@media (max-width: 570px) {
  .footer__top { gap: 10px; }
  .promotions-section, .faq-main, .reviews, .contact, .brands-section { padding-bottom: 50px; }
  .about-features { padding-top: 0; }
  .brands-section__grid { grid-template-columns: repeat(1, 1fr); gap: 40px; }
  .brands-section__grid img { max-width: 230px; filter: none; }
  .trust-hero__note {
    font-size: 14px;
    width: 230px;
    text-align: center;
  }
  .features-section__features { margin-top: 40px; }
}
@media (max-width: 480px) {
  .common-problems__title { font-size: 24px !important; }
  .common-problems__description { font-size: 16px !important; }
  .common-problems__list { font-size: 14px !important; }
  .common-problems__hero { min-height: auto !important; padding-top: 50%; }
}
.hero__content {
    max-width: none;
}

.hero__title {
    max-width: none;
}

.hero__info {
    margin-top: 45px; 
}

.hero__subtitle {
    transform: translateY(-7px);
}

.hero__subtitle {
    color: #fff !important;
    opacity: 1 !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.25);
}

@media (max-width: 768px) {
    .hero__title {
        font-size: 46px !important;
        line-height: 1.05 !important;
    }
}

@media (max-width: 768px) {
    .hero__description {
        font-size: 22px !important;
        line-height: 1.35 !important;
        max-width: 90% !important;
    }
}

@media (max-width: 768px) {
  .hero__description {
    margin-top: 32px;
    line-height: 1.4;
  }
}

@media (max-width: 768px) {
  .hero__subtitle {
    position: relative;
    top: -10px;
  }
}
@media (max-width: 768px) {
  .hero__subtitle {
    font-size: 14px;
    letter-spacing: 0.5px;
  }
}
/* Tablet portrait (iPad vertical) — web layout adapted */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {

  .hero {
    min-height: 75vh !important;
    background-position: 50% center !important;
    background-size: cover !important;
  }

  .hero__content {
    max-width: 600px !important;
    padding: 0px 30px !important;
  }

  /* SAME-DAY block a bit higher */
  .hero__subtitle {
    position: relative !important;
    top: -15px !important;
    margin-bottom: 18px !important;
  }

  .hero__title {
    font-size: 56px !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    margin-bottom: 26px !important;
  }

  .hero__title-main,
  .hero__title-sub {
    display: block !important;
  }

  .hero__description {
    font-size: 20px !important;
    line-height: 1.45 !important;
    margin-top: 0 !important;
    margin-bottom: 28px !important;
    max-width: 90% !important;
  }

  /* three separate rows */
  .hero__info {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
  }

  .hero__info span {
    display: block !important;
    font-size: 13px !important;
    white-space: normal !important;
  }

  /* button lower */
  .hero__actions {
    margin-top: 0 !important;
  }

  .hero__actions .btn,
  .btn--primary {
    margin-top: 0 !important;
  }
}
/* Tablet portrait — управляем переносами H1 */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {

  .hero__title {
    max-width: 520px !important; /* ограничиваем ширину */
  }
}
/* Tablet portrait — правильная ширина подзаголовка */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {

  .hero__description {
    max-width: 560px !important;  /* 🔥 ключевой параметр */
    width: 100% !important;
    line-height: 1.45 !important;
  }

}
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {

  .hero__info {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  .hero__info span,
  .hero__info p,
  .hero__info li,
  .hero__info div,
  .hero__info a,
  .hero__info strong,
  .hero__info small {
    font-size: 16px !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hero__info {
    display: flex !important;
    flex-direction: column !important;
    gap: 1px !important; /* уменьшает расстояние между 3 строками */
  }
	
}
	
/* Tablet portrait only — заменить первый service label */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {

  .services-section__grid .services-section__item:first-child .services-section__label {
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .services-section__grid .services-section__item:first-child .services-section__label::after {
    content: "Refrigerator Repair";
    display: inline-block;
    font-size: 21px !important;
    line-height: 1.5 !important;
    color: #212121 !important;
  }
