/* Стили отдельных страниц квартир (/kvartiry/<id>/) — генерируются tools/gen-pages.js */
@font-face { font-family: "Inter"; font-weight: 400 800; font-display: swap; src: url("/fonts/inter-cyrillic.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Inter"; font-weight: 400 800; font-display: swap; src: url("/fonts/inter-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

* { box-sizing: border-box; }
body { margin: 0; font-family: "Inter", system-ui, sans-serif; color: #1f2937; line-height: 1.65; background-color: #89cff0; }
/* Фон с облаками — как на главной: фиксированный слой на весь экран */
body::before {
    content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none;
    background-image: url('/img/common/background.png'), linear-gradient(180deg, #89cff0 0%, #e0f7fa 100%);
    background-image: image-set(url('/img/common/background.png.webp') type('image/webp'), url('/img/common/background.png') type('image/png')), linear-gradient(180deg, #89cff0 0%, #e0f7fa 100%);
    background-size: cover; background-position: center; background-repeat: no-repeat;
}
a { color: #2563eb; }
img { max-width: 100%; display: block; }
.wrap { max-width: 960px; margin: 0 auto; padding: 20px 16px 48px; }
/* Кнопка как «Назад» на главной: синяя, белая стрелка по центру строки текста */
.back { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; padding: 10px 20px;
        background: #3b82f6; color: #fff; border-radius: 999px; text-decoration: none; font-size: 16px; line-height: 20px;
        transition: background-color .15s; }
.back:hover { background: #2563eb; }
.back svg { width: 20px; height: 20px; flex-shrink: 0; display: block; }
.card { background: #fff; border-radius: 20px; padding: 24px 18px; box-shadow: 0 10px 30px rgba(0,0,0,.08); }
h1 { font-size: 1.8rem; line-height: 1.2; margin: 0 0 4px; }
.lead { color: #4b5563; margin: 0 0 18px; }
h2 { font-size: 1.3rem; margin: 32px 0 12px; }
.text { font-size: 1.05rem; }
.hero img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 14px; }
.cta { display: block; text-align: center; margin: 22px 0 4px; padding: 14px 20px; border-radius: 999px;
       background: #22c55e; color: #fff; font-weight: 700; text-decoration: none; font-size: 1.05rem; }
.cta:hover { background: #16a34a; }
.prices { border-collapse: collapse; width: 100%; max-width: 420px; }
.prices th, .prices td { text-align: left; padding: 8px 12px; border-bottom: 1px solid #e5e7eb; }
.prices th { color: #6b7280; font-weight: 600; font-size: .9rem; }
.prices td:last-child { font-weight: 700; }
.note { color: #6b7280; font-size: .95rem; }
.gallery { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; transition: opacity .2s; }
.gallery a:hover img { opacity: .85; }
.rules { padding-left: 1.2em; }
.rules li { margin: 6px 0; }
.others { padding-left: 1.2em; }
/* Подвал — как на главной: тёмная полупрозрачная полоса со скруглёнными верхними углами, прижата к низу */
body { display: flex; flex-direction: column; min-height: 100vh; }
.wrap { flex: 1 0 auto; width: 100%; }
.site-footer { background: rgba(31, 41, 55, .8); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); color: #fff;
               padding: 16px; border-radius: 16px 16px 0 0; text-align: center; line-height: 1.5; }
.site-footer p { margin: 0; color: #fff; }
.site-footer .sub { font-size: .875rem; color: #d1d5db; margin-top: 4px; }
.site-footer .links { font-size: .8rem; color: #d1d5db; margin-top: 6px; }
.site-footer a { color: #e5e7eb; text-decoration: none; }
.site-footer a:hover { color: #fff; text-decoration: underline; }
@media (min-width: 640px) {
    .card { padding: 36px 44px; }
    h1 { font-size: 2.3rem; }
    .gallery { grid-template-columns: repeat(3, 1fr); }
    .cta { display: inline-block; }
}

/* Без синей подсветки при нажатии и рамки фокуса после клика (рамка остаётся для Tab) */
* { -webkit-tap-highlight-color: transparent; }
:focus:not(:focus-visible) { outline: none; }
