/* =========================================================================
   Секции, таблицы, формы, документы. Светлая тема — «свет включён».
   ========================================================================= */

/* ---------- Светлые страницы ---------- */
.day{
  --night:   #E9EDF2;
  --night-2: #E1E7EF;
  --night-3: #C7D1DE;
  --night-4: #A4B2C4;
  --pane-off:#D3DBE6;
  --snow:    #0B1626;
  --snow-2:  #3B506C;
  --snow-3:  #4E6079;
  --lamp:    #8A5712;
  --lamp-hi: #6D4408;
  --lamp-dim:#B08840;
  background:var(--night);
  color:var(--snow);
}
.day .btn--lamp{color:#FFF4E4}
.day .head{background:rgba(233,237,242,.9)}
.day .link{border-bottom-color:rgba(138,87,18,.4)}
.day .tower__sign{text-shadow:none}

/* ---------- Секции ---------- */
.sec{padding-block:var(--step)}
.sec--tight{padding-block:clamp(3rem,2rem + 4vw,5rem)}
.sec + .sec{padding-top:0}
.sec__head{max-width:var(--read);margin-bottom:clamp(1.8rem,1.2rem + 2vw,3rem)}
.sec__head h2{margin-bottom:.9rem}
.sec__head .lead{margin:0}

.page-head{padding-block:clamp(2.6rem,2rem + 3.5vw,5rem) clamp(1.6rem,1.2rem + 2vw,2.6rem);
           border-bottom:1px solid var(--night-3)}
.page-head h1{margin-bottom:1rem}
.crumbs{font-family:var(--font-tech);font-weight:500;font-size:12px;letter-spacing:.06em;
        text-transform:uppercase;color:var(--snow-3);margin-bottom:1.2rem}
.crumbs a{color:inherit;text-decoration:none}
.crumbs a:hover{color:var(--lamp)}

.prose{max-width:var(--read)}
.prose h2{margin:2.6rem 0 1rem}
.prose h3{margin:2rem 0 .7rem}
.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.3em;color:var(--snow-2)}
.prose li{margin-bottom:.45em}
.prose p{color:var(--snow-2)}
.prose strong{color:var(--snow);font-weight:600}
.prose > p:first-child{color:var(--snow);font-size:1.05rem}

/* ---------- Что видно из окна ---------- */
.views{display:grid;gap:1px;background:var(--night-3);border:1px solid var(--night-3);border-radius:4px;
       overflow:hidden}
@media (min-width:760px){.views{grid-template-columns:repeat(3,1fr)}}
.views__cell{background:var(--night);padding:1.5rem 1.4rem}
.views__cell h3{margin-bottom:.6rem;font-family:var(--font-text);font-weight:600;font-size:17px;
                letter-spacing:0}
.views__cell p{color:var(--snow-2);font-size:15px;margin:0}
.views__side{font-family:var(--font-tech);font-weight:500;font-size:11px;letter-spacing:.09em;
             text-transform:uppercase;color:var(--lamp);margin-bottom:.9rem}

/* ---------- Таблица цен ---------- */
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.tbl{width:100%;border-collapse:collapse;font-size:15.5px;min-width:520px}
table.tbl caption{text-align:left;color:var(--snow-3);font-size:14px;padding-bottom:.8rem}
table.tbl th{font-family:var(--font-tech);font-weight:500;font-size:11.5px;letter-spacing:.07em;
             text-transform:uppercase;color:var(--snow-3);text-align:left;
             padding:0 1rem .7rem 0;border-bottom:1px solid var(--night-4);white-space:nowrap}
table.tbl td{padding:.95rem 1rem .95rem 0;border-bottom:1px solid var(--night-3);
             color:var(--snow-2);vertical-align:top}
table.tbl tr:last-child td{border-bottom:none}
table.tbl td:first-child{color:var(--snow);font-weight:500}
table.tbl .num{font-family:var(--font-display);font-weight:600;font-size:1.02rem;color:var(--snow);
               white-space:nowrap;text-align:right}
table.tbl th.num{text-align:right}

/* ---------- Списки-перечни ---------- */
.marks{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.marks li{position:relative;padding-left:1.5rem;color:var(--snow-2)}
.marks li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;
                  border:1px solid var(--lamp);border-radius:1px}
.marks--lit li::before{background:var(--lamp)}

.cols2{display:grid;gap:1.6rem}
@media (min-width:760px){.cols2{grid-template-columns:1fr 1fr;gap:2.4rem}}

.panel{border:1px solid var(--night-3);border-radius:4px;background:var(--night-2);
       padding:clamp(1.2rem,1rem + 1vw,1.9rem)}
.panel h3{margin-bottom:.9rem}
.panel p:last-child,.panel ul:last-child{margin-bottom:0}

/* ---------- Отзывы ---------- */
.revs{display:grid;gap:1px;background:var(--night-3);border-block:1px solid var(--night-3)}
@media (min-width:820px){.revs{grid-template-columns:1fr 1fr}}
.rev{background:var(--night);padding:1.6rem 1.5rem}
.rev__text{margin:0 0 1rem;color:var(--snow)}
.rev__meta{display:flex;flex-wrap:wrap;gap:.4rem .9rem;align-items:baseline;
           font-size:14px;color:var(--snow-3)}
.rev__who{color:var(--snow-2);font-weight:600}
.rev__room{font-family:var(--font-tech);font-weight:500;font-size:11px;letter-spacing:.06em;
           text-transform:uppercase;color:var(--lamp)}
.rev__stars{letter-spacing:.14em;color:var(--lamp);font-size:13px}

/* ---------- Форма ---------- */
.form{display:grid;gap:1.1rem;max-width:520px}
.field{display:grid;gap:.4rem}
.field label{font-size:14.5px;color:var(--snow-2);font-weight:500}
.field input,.field select,.field textarea{
  font-family:var(--font-text);font-size:16px;color:var(--snow);
  background:var(--night-2);border:1px solid var(--night-4);border-radius:3px;
  padding:.78em .9em;min-height:48px;width:100%;
  transition:border-color var(--t-fast) ease;
}
.field input::placeholder{color:var(--snow-3)}
.field input:hover,.field select:hover{border-color:var(--snow-3)}
.consent{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;
         font-size:14.5px;color:var(--snow-2);line-height:1.5}
.consent input{width:22px;height:22px;margin:.1rem 0 0;accent-color:var(--lamp);flex:0 0 auto}
.consent a{color:var(--lamp)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form__note{font-size:13.5px;color:var(--snow-3);margin:0;max-width:46ch}
.form__ok{display:none;border:1px solid var(--lamp);border-radius:3px;padding:1rem 1.1rem;
          color:var(--snow);background:rgba(255,196,107,.08);font-size:15px}
.form__ok[data-shown="true"]{display:block}

/* ---------- Оговорки ---------- */
.note{font-size:14px;color:var(--snow-3);max-width:var(--read);line-height:1.6}
.note--boxed{border:1px solid var(--night-3);border-radius:3px;padding:1rem 1.1rem}

/* ---------- Контакты ---------- */
.contacts{display:grid;gap:1.4rem}
@media (min-width:760px){.contacts{grid-template-columns:1fr 1fr;gap:2.4rem}}
.contacts dl{margin:0;display:grid;gap:1.1rem}
.contacts dt{font-family:var(--font-tech);font-weight:500;font-size:11.5px;letter-spacing:.07em;
             text-transform:uppercase;color:var(--snow-3);margin-bottom:.25rem}
.contacts dd{margin:0;color:var(--snow)}
.contacts dd a{text-decoration:none;color:var(--snow)}
.contacts dd a:hover{color:var(--lamp)}

/* ---------- Cookie ---------- */
.cookie{
  position:fixed;left:.6rem;right:.6rem;bottom:.6rem;z-index:90;max-width:620px;margin-inline:auto;
  background:var(--night-2);border:1px solid var(--night-4);border-radius:4px;
  padding:.85rem .95rem;box-shadow:0 14px 40px -12px rgba(0,0,0,.6);
  display:none;
}
.cookie[data-shown="true"]{display:block}
.cookie p{font-size:14px;line-height:1.45;color:var(--snow-2);margin-bottom:.75rem}
.cookie__acts{display:flex;gap:.6rem}
/* Обе кнопки одной ширины: неравнозначный выбор — самостоятельное нарушение */
.cookie__acts .btn{min-height:44px;padding:.5em .8em;font-size:15px;flex:1 1 0;min-width:0}

/* ---------- Полоса перехода к заявке ---------- */
.cta{border-top:1px solid var(--night-3);border-bottom:1px solid var(--night-3);
     padding-block:clamp(2.4rem,2rem + 2.5vw,3.6rem);background:var(--night-2)}
.cta__in{display:grid;gap:1.4rem;align-items:center}
@media (min-width:820px){.cta__in{grid-template-columns:1fr auto}}
.cta h2{margin-bottom:.6rem}
.cta p{color:var(--snow-2);margin:0;max-width:52ch}

/* ---------- Правки после прогона check_mobile: тап-таргеты и кегль ---------- */
.foot ul{gap:0}
.foot ul a{display:inline-flex;align-items:center;min-height:44px;padding-block:.35rem}
.foot__bottom p{font-size:14px}
.contacts dd a{display:inline-flex;align-items:center;min-height:44px}
.filters button{min-height:44px}
.form__note{font-size:14px}
/* Ссылка, стоящая отдельным абзацем, — это кнопка по смыслу: даём ей высоту пальца */
p > a.link:only-child,.wrap > a.link{display:inline-flex;align-items:center;min-height:44px}

/* Длинный заголовок, раздутый до дисплейного кегля, — типовой признак «ИИ-макета».
   Крупный кегль оставляем только короткому заголовку героя. */
h1{font-size:clamp(1.9rem,1.15rem + 2.4vw,3rem)}
h2{font-size:clamp(1.4rem,1.05rem + 1.4vw,2.1rem)}
.hero__title{font-size:clamp(2.2rem,1.2rem + 3.8vw,3.9rem)}

/* Текстовая колонка документов должна вставать по левому краю страницы,
   а не центрироваться отдельно от заголовка. */
.wrap.prose{max-width:var(--wide)}
.wrap.prose > *{max-width:var(--read)}
.wrap.prose > .tbl-scroll{max-width:100%}

/* На широком экране уводим уведомление в левый угол: фасад стоит справа,
   и первое, что хочет сделать посетитель, — нажать на окно. */
@media (min-width:940px){
  .cookie{left:1.2rem;right:auto;margin-inline:0;max-width:430px}
}
