/* Презентации на публичных страницах: форма создания (посадочная и вкладка главной),
   вкладка «Презентации» в форме главной и витрина презентаций на главной. */

/* ===== Форма создания ===== */
#presentation-submit { color: #fff; }
#presentation-submit span { color: #fff; }
#presentation-submit:focus-visible { outline: 2px solid #0f172a; outline-offset: 3px; }
#presentation-submit[aria-disabled="true"] { cursor: default; opacity: .6; pointer-events: none; }

.presentation-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* Блок «Сколько слайдов»: между полем текста и кнопкой, по центру, как кнопка */
.presentation-volume {
  align-self: center; display: flex; flex-wrap: wrap; align-items: center;
  justify-content: center; gap: 8px 14px; max-width: 100%;
}
.presentation-volume__label { font-size: 16px; font-weight: 600; color: #0f172a; }
.presentation-volume__stepper {
  display: inline-flex; align-items: stretch; height: 44px; overflow: hidden;
  border: 1.5px solid #e7e7e9; border-radius: 12px; background: #fff;
}
.presentation-volume__btn {
  width: 44px; border: 0; background: transparent; cursor: pointer;
  font-size: 22px; line-height: 1; color: #0f172a;
}
.presentation-volume__btn:hover:not(:disabled) { background: #f4f4f5; }
.presentation-volume__btn:disabled { color: #c4c4cc; cursor: default; }
.presentation-volume__input {
  width: 56px; border: 0; border-left: 1.5px solid #e7e7e9; border-right: 1.5px solid #e7e7e9;
  background: transparent; text-align: center; font-size: 17px; font-weight: 600; color: #0f172a;
  -moz-appearance: textfield; appearance: textfield;
}
.presentation-volume__input::-webkit-outer-spin-button,
.presentation-volume__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.presentation-volume__btn:focus-visible,
.presentation-volume__input:focus-visible { outline: 2px solid #0f172a; outline-offset: -2px; }
.presentation-volume__hint { flex-basis: 100%; margin: 0; text-align: center; font-size: 13px; color: #75757f; }

.presentation-form__error { color: #c0392b; margin-top: 8px; font-size: 14px; }

@media only screen and (width <= 760px) {
  #presentation-submit span { white-space: nowrap; }
}
@media only screen and (width <= 400px) {
  #presentation-submit span { font-size: 15px; }
  .presentation-volume__label { font-size: 15px; }
}

/* ===== Вкладка «Презентации» в форме главной ===== */
.block-form1__tab--3 a { flex-basis: 30%; gap: 6px; min-width: 0; }
.block-form1__tab .tab-short { display: none; }
.block-form1__tab-new {
  font-size: 10px; font-weight: 700; letter-spacing: .04em; line-height: 1;
  padding: 3px 6px; border-radius: 6px; background: #0f172a; color: #fff;
}
@media only screen and (width <= 760px) {
  .block-form1__tab--3 a { flex: 1 1 auto; padding: 0 8px; white-space: nowrap; }
  .block-form1__tab .tab-long { display: none; }
  .block-form1__tab .tab-short { display: inline; }
  .block-form1__tab-new { font-size: 0; padding: 0; width: 7px; height: 7px; border-radius: 50%; background: #8b5cf6; }
}
@media only screen and (width <= 400px) {
  .block-form1__tab--3 a { font-size: 13px; padding: 0 6px; gap: 4px; }
}
@media only screen and (width <= 340px) {
  .block-form1__tab--3 a { font-size: 12px; padding: 0 4px; }
  .block-form1__tab-new { display: none; }
}

/* ===== Витрина презентаций на главной (разметка блока чертежей, свой фон) ===== */
.drawings-final-section.presentations-showcase {
  background-image: none;
  background:
    radial-gradient(90% 70% at 0% 0%, #f2e0fc 0%, rgba(242, 224, 252, 0) 70%),
    radial-gradient(80% 70% at 100% 100%, #d3faf8 0%, rgba(211, 250, 248, 0) 70%),
    radial-gradient(60% 50% at 100% 0%, #d4fbe6 0%, rgba(212, 251, 230, 0) 70%),
    #fbfaff;
}
.presentations-showcase__badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 700; letter-spacing: .06em; line-height: 1;
  padding: 7px 12px; border-radius: 999px; background: #0f172a; color: #fff;
}
.presentations-showcase__badge::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #b36ae8; }

.presentations-showcase .drawings-final-section__benefit { background: #fff; border-color: #fff; }
.presentations-showcase .drawings-final-section__benefit::before {
  content: ""; display: inline-block; width: 10px; height: 10px; border-radius: 50%;
  margin-right: 10px; vertical-align: 1px;
}
.presentations-showcase .drawings-final-section__benefit--1::before { background: #3dd68c; }
.presentations-showcase .drawings-final-section__benefit--2::before { background: #2cc7c0; }
.presentations-showcase .drawings-final-section__benefit--3::before { background: #b36ae8; }
.presentations-showcase .drawings-final-section__benefit--4::before { background: #4f8cf0; }

.presentations-showcase .drawing-examples-grid { background: transparent; }
.presentations-showcase .drawing-example-card-link,
.presentations-showcase .drawing-example-card { height: 100%; }
.presentations-showcase .drawing-example-card { border-color: #e4dcf3; }
.presentations-showcase .drawing-example-card-link:hover .drawing-example-card { background: #f2e0fc; }
.presentations-showcase .drawing-example-card__image { margin-top: auto; padding: 0; overflow: hidden; }
.presentations-showcase .drawing-example-card__image img {
  width: 100%; height: auto; max-height: none; aspect-ratio: 16 / 9; object-fit: cover;
}

.presentations-showcase__btns { display: flex; flex-direction: column; align-items: center; gap: 14px; }
/* У .how-it-work1__button на телефоне sticky — в витрине кнопка не прилипает */
.presentations-showcase .drawings-final-section__btn { position: relative !important; top: auto !important; }
.presentations-showcase__more {
  color: #0f172a; font-size: 16px; font-weight: 500;
  text-decoration: underline; text-underline-offset: 4px;
}
.presentations-showcase__dots { display: none; }

@media only screen and (width <= 760px) {
  .presentations-showcase .drawings-final-section__title { font-size: 24px; line-height: 1.25; }
  .presentations-showcase .drawings-final-section__sub { font-size: 15px; }
  .presentations-showcase .drawings-final-section__benefits {
    display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 4px 0 18px;
  }
  .presentations-showcase .drawings-final-section__benefit {
    font-size: 13px; line-height: 1.3; padding: 10px; display: flex; align-items: center;
    justify-content: flex-start; text-align: left;
  }
  .presentations-showcase .drawings-final-section__benefit::before { width: 8px; height: 8px; margin-right: 6px; flex: none; }
  .presentations-showcase .drawing-examples-wrapper { margin: 0 -14px; }
  .presentations-showcase .drawing-examples-grid {
    width: auto; max-width: none; overflow-x: auto; scroll-snap-type: x mandatory;
    padding: 0 14px 4px; scroll-padding: 0 14px; scrollbar-width: none;
  }
  .presentations-showcase .drawing-examples-grid::-webkit-scrollbar { display: none; }
  .presentations-showcase .drawing-examples-grid .drawing-example-card-link {
    flex: 0 0 86%; width: 86%; scroll-snap-align: start;
  }
  .presentations-showcase .drawing-example-card { padding: 10px; }
  .presentations-showcase .drawing-example-card__type { font-size: 14px; margin-bottom: 6px; }
  .presentations-showcase .drawing-example-card__image img { height: auto; max-height: none; }
  .presentations-showcase__dots { display: flex; justify-content: center; gap: 6px; margin-top: 12px; }
  .presentations-showcase__dots span {
    width: 6px; height: 6px; border-radius: 50%; background: #cfc6e2; transition: width .2s, background .2s;
  }
  .presentations-showcase__dots span.is-active { width: 18px; border-radius: 3px; background: #0f172a; }
  .presentations-showcase__btns { padding: 0 14px; gap: 16px; margin-top: 18px; }
  .presentations-showcase .drawings-final-section__btn { margin: 0; }
  .presentations-showcase .drawings-final-section__btn span { white-space: nowrap; font-size: 16px; }
  .presentations-showcase__more { font-size: 15px; margin-top: 2px; }
}

@media (prefers-reduced-motion: reduce) {
  .presentations-showcase__dots span { transition: none; }
}
