
:root {
  --tt-cream: #F8F3EB;
  --tt-paper: #FFFDF9;
  --tt-dark: #24352C;
  --tt-green: #58745D;
  --tt-gold: #C89A55;
  --tt-orange: #D87842;
  --tt-text: #2E302C;
  --tt-muted: #6E746B;
  --tt-line: rgba(46, 48, 44, 0.14);
  --tt-radius: 22px;
  --tt-shadow: 0 18px 50px rgba(48, 42, 31, 0.12);
}

/* Общий фон только для страниц Tilda */
.t-body {
  background: var(--tt-cream);
  color: var(--tt-text);
}

/* Классы для HTML-блоков сайта */
.tt-section {
  padding: 88px 20px;
  background: var(--tt-cream);
}

.tt-container {
  width: min(1180px, 100%);
  margin: 0 auto;
}

.tt-eyebrow {
  margin: 0 0 12px;
  color: var(--tt-orange);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.3;
}

.tt-title {
  max-width: 760px;
  margin: 0;
  color: var(--tt-dark);
  font-size: clamp(32px, 5vw, 60px);
  font-weight: 600;
  line-height: 1.05;
}

.tt-lead {
  max-width: 670px;
  margin: 20px 0 0;
  color: var(--tt-muted);
  font-size: 18px;
  line-height: 1.65;
}

.tt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  box-sizing: border-box;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none !important;
  transition: transform .2s ease, background-color .2s ease, color .2s ease;
  cursor: pointer;
}

.tt-btn:hover {
  transform: translateY(-2px);
}

.tt-btn--primary {
  background: var(--tt-dark);
  color: #fff !important;
}

.tt-btn--primary:hover {
  background: var(--tt-orange);
  color: #fff !important;
}

.tt-btn--outline {
  border-color: var(--tt-dark);
  background: transparent;
  color: var(--tt-dark) !important;
}

.tt-booking {
  padding: 88px 20px;
  background:
    radial-gradient(circle at 10% 10%, rgba(230, 190, 116, .24), transparent 28%),
    var(--tt-cream);
}

.tt-booking__inner {
  width: min(760px, 100%);
  margin: 0 auto;
  padding: clamp(28px, 5vw, 56px);
  border: 1px solid var(--tt-line);
  border-radius: var(--tt-radius);
  background: var(--tt-paper);
  box-shadow: var(--tt-shadow);
  text-align: center;
}

.tt-booking h1 {
  margin: 0;
  color: var(--tt-dark);
  font-size: clamp(30px, 4.5vw, 52px);
  line-height: 1.08;
}

.tt-booking p {
  max-width: 600px;
  margin: 18px auto 28px;
  color: var(--tt-muted);
  font-size: 17px;
  line-height: 1.65;
}

.tt-booking__note {
  margin-bottom: 0 !important;
  font-size: 14px !important;
}

.tt-booking__note a {
  color: var(--tt-dark);
  font-weight: 700;
}

/* Сужаем отступы и увеличиваем кликабельность на телефонах */
@media screen and (max-width: 640px) {
  .tt-section {
    padding: 56px 16px;
  }

  .tt-booking {
    padding: 42px 16px;
  }

  .tt-booking__inner {
    padding: 30px 20px;
  }

  .tt-btn {
    width: 100%;
  }
}
</style>