/* Страница «Тюль»: оформление по скриншотам согласованного ТЗ. */
.tulle-page .tulle-hero { align-items: center; }
.tulle-page .tulle-hero__image { position: relative; width: 100%; max-width: none; height: 400px; max-height: 400px; }
.tulle-page .tulle-hero__image .field,
.tulle-page .tulle-hero__image .field__items,
.tulle-page .tulle-hero__image .field__item,
.tulle-page .tulle-hero__image [data-fancybox],
.tulle-page .tulle-hero__image a { height: 100%; }
.tulle-page .tulle-hero__image img { width: 100%; height: 100%; object-fit: cover; }
.tulle-page .tulle-gallery--ready .field__item { display: none; }
.tulle-page .tulle-gallery--ready .field__item.is-active { display: block; }
.tulle-page .category-card__offer h1 { margin-bottom: 0; }
.tulle-page .category-card__descriptor p:last-child { margin-bottom: 0; }
.tulle-price__value { margin: 0 0 8px; font-size: 28px; font-weight: 700; }
.tulle-price__note { margin: 0; color: #59636b; line-height: 1.5; }
.tulle-gallery-dots { position: absolute; right: 0; bottom: 20px; left: 0; display: flex; justify-content: center; gap: 0; }
.tulle-gallery-dot { display: grid; place-items: center; width: 32px; height: 36px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.tulle-gallery-dot::before { content: ''; width: 14px; height: 14px; border-radius: 50%; background: #f79521; box-shadow: 0 1px 5px #5c3b23; }
.tulle-gallery-dot[aria-pressed="true"]::before { box-shadow: 0 0 0 2px #fff, 0 1px 6px #5c3b23; }
.tulle-gallery-dot:focus-visible { outline: 2px solid #11202c; outline-offset: 2px; border-radius: 4px; }
.tulle-details h2 { font-size: 28px; }
.tulle-page .seo-text { border-top: 0; padding: 0; }
.tulle-page .seo-text__title { margin-bottom: 32px; font-size: clamp(28px, 2.7vw, 40px); }
.tulle-page .seo-text__inner { max-width: none; }
.tulle-page .seo-text__inner h3 { margin: 32px 0 24px; color: #11202c; font-size: clamp(24px, 2.3vw, 32px); }
.tulle-related__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.tulle-related__card { position: relative; display: flex; align-items: flex-end; min-height: 360px; overflow: hidden; border-radius: 0 0 50px 0; background: #f79521; color: #fff; }
.tulle-related__card::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(247, 149, 33, .04) 0%, rgba(247, 149, 33, .5) 40%, rgba(247, 149, 33, .98) 100%); }
.tulle-related .tulle-related__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.tulle-related__content { position: relative; z-index: 2; width: 100%; padding: 32px; color: #fff; text-shadow: 0 1px 2px rgba(100, 55, 10, .35); }
.tulle-related__content h3 { margin: 0 0 16px; color: #fff; font-size: 24px; }
.tulle-related__content p { margin: 0 0 24px; color: #fff; line-height: 1.6; }
.tulle-related__link { display: inline-flex; align-items: center; gap: 16px; color: #fff; font-weight: 700; }
.tulle-related__card:focus-visible { outline: 3px solid #11202c; outline-offset: 5px; }
@media (min-width: 1100px) {
  .menu__item--textile:focus-within > ul, .menu__item--textile.active > ul { visibility: visible; opacity: 1; }
}
@media (max-width: 950px) {
  .tulle-page .tulle-hero__image { order: 0; height: 400px; }
}
@media (max-width: 600px) {
  .tulle-page .tulle-hero__image { height: 340px; }
  .tulle-related__grid { grid-template-columns: minmax(0, 1fr); }
  .tulle-related__card { min-height: 340px; }
  .tulle-related__content { padding: 24px; }
  .tulle-details h2 { font-size: 24px; }
}
