/* ===== Фон страницы и основной контейнер ===== */
body.site {
    background-image: url(/images/fon03.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;      /* было без двоеточия — правило не работало */
    background-size: cover;
    background-attachment: fixed;
    width: 95%;
    margin: 0 auto;                    /* центрируем по горизонтали (раньше прижималось влево) */
    border-top: none;
}

.body .container {
    background-color: rgba(255, 255, 255, .88);
    border-radius: 10px;
    padding: 18px 22px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
}

/* ===== Верхнее меню ===== */
.navigation {
    clear: both;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;                  /* min-height вместо height — текст не обрежется */
    padding: 5px 8px;
    font: bold 16px Arial, Helvetica, sans-serif;
    text-transform: uppercase;
    text-align: center;
    background-color: #7dc4fa;
    border-bottom: 4px solid #fff;
    border-radius: 7px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
}

.navigation .nav-pills {
    background: #7dc4fa;
}

/* плавная подсветка пунктов меню при наведении/активности
   (селекторы покрывают и Bootstrap 2/3, и 4/5) */
.navigation .nav-pills > li > a,
.navigation .nav-pills .nav-link {
    color: #fff;
    border-radius: 5px;
    transition: background-color .2s, color .2s;
}
.navigation .nav-pills > li > a:hover,
.navigation .nav-pills .nav-link:hover {
    background-color: #5aa9e6;
    color: #fff;
}
.navigation .nav-pills > .active > a,
.navigation .nav-pills .nav-link.active {
    background-color: #2f88d4;
    color: #fff;
}

/* ===== Карточки номеров ===== */
.bs-rooms {
    --bs-accent: #2f88d4;        /* основной цвет. Для синего под меню: #2f88d4 */
    --bs-accent-soft: #e6f1fb;   /* светлый фон бейджей/блоков. Для синего: #e6f1fb */
    max-width: 1040px;
    margin: 0 auto;
    font-family: inherit;
    color: #2b2b2b;
    line-height: 1.6;
}
.bs-rooms .bs-title { font-size: 28px; font-weight: 700; color: var(--bs-accent); margin: 0 0 18px; padding-bottom: 10px; border-bottom: 3px solid var(--bs-accent-soft); }
.bs-rooms .bs-intro { background: var(--bs-accent-soft); border-left: 4px solid var(--bs-accent); padding: 14px 18px; margin: 0 0 24px; }
.bs-rooms .bs-floor { font-size: 20px; font-weight: 700; color: #37474f; margin: 28px 0 14px; padding-left: 12px; border-left: 5px solid var(--bs-accent); }
.bs-rooms .bs-card { background: #fff; border: 1px solid #e7e7e7; border-radius: 12px; box-shadow: 0 1px 3px rgba(0,0,0,.06); padding: 16px 20px; margin: 0 0 14px; transition: box-shadow .2s; }
.bs-rooms .bs-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,.10); }
.bs-rooms .bs-head { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 8px; }
.bs-rooms .bs-name { font-size: 18px; font-weight: 700; color: var(--bs-accent); }
.bs-rooms .bs-badge { background: var(--bs-accent-soft); color: var(--bs-accent); font-size: 13px; font-weight: 600; border-radius: 20px; padding: 3px 12px; white-space: nowrap; }
.bs-rooms .bs-icons { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-left: auto; }
.bs-rooms .bs-icons img { height: 26px; width: auto; vertical-align: middle; }
.bs-rooms .bs-desc { margin: 0; color: #444; }
.bs-rooms .bs-gallery { display: flex; flex-wrap: wrap; gap: 12px; margin: 14px 0; }
.bs-rooms .bs-gallery img { border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,.12); max-width: 100%; height: auto; }
@media (max-width: 600px) {
    .bs-rooms .bs-icons { margin-left: 0; }
    .bs-rooms .bs-title { font-size: 23px; }
}

.bs-price{--bs-accent:#0f6e56;--bs-accent-soft:#e1f5ee;--bs-we:#b9770e;max-width:1120px;margin:0 auto;font-family:inherit;color:#2b2b2b;}
.bs-price,.bs-price *{box-sizing:border-box;}
.bs-price .bs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px;}
.bs-pcard{display:flex;flex-direction:column;background:#fff;border:1px solid #e8e8e8;border-radius:14px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.07);transition:transform .15s,box-shadow .2s;}
.bs-pcard:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.12);}
.bs-pcard .bs-ph{display:block;height:200px;overflow:hidden;}
.bs-pcard .bs-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.bs-pcard:hover .bs-ph img{transform:scale(1.05);}
.bs-pcard .bs-body{display:flex;flex-direction:column;flex:1;padding:16px 18px;}
.bs-pcard .bs-pt{margin:0 0 10px;font-size:19px;font-weight:700;line-height:1.25;}
.bs-pcard .bs-pt a{color:var(--bs-accent);text-decoration:none;}
.bs-pcard .bs-pt a:hover{text-decoration:underline;}
.bs-pcard .bs-rl p{margin:0 0 6px;font-size:13.5px;line-height:1.45;color:#4a4a4a;}
.bs-pcard .bs-am{white-space:nowrap;}
.bs-pcard .bs-am img{height:22px;width:auto;vertical-align:middle;margin-left:1px;}
.bs-pcard .bs-note{font-size:12.5px;color:#8a6d3b;background:#fcf6e6;border-radius:8px;padding:6px 10px;margin:6px 0 0;}
.bs-ptab{margin-top:auto;padding-top:14px;}
.bs-phead{display:flex;justify-content:flex-end;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#9a9a9a;padding-bottom:4px;}
.bs-phead .v{width:64px;text-align:right;}
.bs-prow{display:flex;align-items:center;font-size:14px;padding:6px 0;border-top:1px solid #f0f0f0;}
.bs-prow .l{flex:1;font-weight:600;color:#37474f;padding-right:8px;}
.bs-prow .v{width:64px;text-align:right;font-variant-numeric:tabular-nums;}
.bs-prow .we{color:var(--bs-we);font-weight:700;}
.bs-psingle{display:flex;gap:12px;margin-top:auto;padding-top:14px;}
.bs-psingle>div{flex:1;background:var(--bs-accent-soft);border-radius:10px;padding:10px 12px;text-align:center;}
.bs-psingle .cap{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#5f6b62;margin-bottom:2px;}
.bs-psingle .num{font-size:22px;font-weight:700;color:var(--bs-accent);}
.bs-psingle .num.we{color:var(--bs-we);}
.bs-pets{grid-column:1/-1;display:flex;align-items:center;gap:16px;background:var(--bs-accent-soft);border-radius:14px;padding:14px 18px;}
.bs-pets img{width:66px;height:66px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.bs-pets .t{flex:1;font-size:15px;color:#37474f;}
.bs-pets .p{font-size:20px;font-weight:700;color:var(--bs-accent);white-space:nowrap;}
@media(max-width:480px){.bs-pcard .bs-ph{height:175px;}}
.kaldy-home{--k-accent:#0f6e56;--k-soft:#eef6f1;--k-line:#e3e9e5;max-width:1180px;margin:0 auto;color:#2b2b2b;line-height:1.65;font-family:inherit;}
.kaldy-home,.kaldy-home *{box-sizing:border-box;}
.kaldy-home a{color:var(--k-accent);}
.kaldy-home h2{font-size:24px;font-weight:700;color:var(--k-accent);margin:0 0 14px;padding-bottom:8px;border-bottom:2px solid var(--k-soft);}
.kaldy-home .k-sec{margin-bottom:30px;}
.kaldy-home .k-sec p{margin:0 0 10px;text-align:justify;}
.kaldy-home .k-sec p:last-child{margin-bottom:0;}
.kaldy-home .k-banner{border-radius:14px;overflow:hidden;margin-bottom:26px;box-shadow:0 4px 18px rgba(0,0,0,.10);}
.kaldy-home .k-banner img{width:100%;height:auto;display:block;}
.kaldy-home .k-hero{text-align:center;background:var(--k-soft);border:1px solid var(--k-line);border-radius:14px;padding:34px 26px;margin-bottom:30px;}
.kaldy-home .k-hero h1{margin:0 0 12px;font-size:32px;font-weight:700;color:var(--k-accent);}
.kaldy-home .k-hero .k-sub{margin:0 0 14px;font-size:19px;color:#3a4a42;}
.kaldy-home .k-hero p{margin:0 auto;max-width:780px;color:#444;}
.kaldy-home .k-grid{display:grid;gap:16px;margin-bottom:32px;}
.kaldy-home .k-facts{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));}
.kaldy-home .k-features{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}
.kaldy-home .k-card{background:#fff;border:1px solid var(--k-line);border-radius:12px;padding:18px;transition:transform .15s,box-shadow .2s;}
.kaldy-home .k-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08);}
.kaldy-home .k-facts .k-card{text-align:center;}
.kaldy-home .k-ico{width:46px;height:46px;background-color:var(--k-soft);border-radius:50%;margin-bottom:10px;background-repeat:no-repeat;background-position:center;background-size:24px 24px;}
.kaldy-home .k-facts .k-ico{margin-left:auto;margin-right:auto;}
.kaldy-home .k-ico svg{width:24px;height:24px;}
.kaldy-home .k-card h3{margin:0 0 4px;font-size:16px;font-weight:700;color:#2b2b2b;}
.kaldy-home .k-card p{margin:0;color:#555;font-size:15px;}
.kaldy-home .k-links{background:var(--k-soft);border:1px solid var(--k-line);border-left:5px solid var(--k-accent);border-radius:12px;padding:20px 24px;margin-bottom:30px;}
.kaldy-home .k-links h2{border-bottom:none;padding-bottom:0;margin-bottom:10px;}
.kaldy-home .k-links p{margin:0 0 8px;}
.kaldy-home .k-links p:last-child{margin-bottom:0;}
.kaldy-home .k-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;}
.kaldy-home .k-doc{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--k-line);border-radius:12px;padding:14px 16px;text-decoration:none;color:#2b2b2b;transition:border-color .2s,box-shadow .2s,transform .15s;}
.kaldy-home .k-doc:hover{border-color:var(--k-accent);box-shadow:0 6px 18px rgba(0,0,0,.08);transform:translateY(-2px);}
.kaldy-home .k-dico{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--k-soft);border-radius:10px;color:var(--k-accent);}
.kaldy-home .k-dico svg{width:24px;height:24px;}
.kaldy-home .k-dt{display:block;font-weight:700;font-size:15px;line-height:1.25;}
.kaldy-home .k-dm{display:block;font-size:12.5px;color:#8a8a8a;margin-top:2px;}
.kaldy-home .k-note{background:#fafafa;border:1px solid var(--k-line);border-radius:12px;padding:20px;margin-bottom:30px;}
.kaldy-home .k-note h2{margin-top:0;}
.kaldy-home .k-legal{font-size:14px;color:#555;margin-bottom:30px;}
.kaldy-home .k-legal p{margin:0 0 4px;}
.kaldy-home .k-modules{margin-top:30px;}
@media(max-width:600px){.kaldy-home .k-hero h1{font-size:26px;}.kaldy-home .k-hero .k-sub{font-size:17px;}.kaldy-home h2{font-size:21px;}}
.kaldy-home .k-facts .k-card:nth-child(1) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");}
.kaldy-home .k-facts .k-card:nth-child(2) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpolyline points='12 7 12 12 15 14'/%3E%3C/svg%3E");}
.kaldy-home .k-facts .k-card:nth-child(3) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");}
.kaldy-home .k-facts .k-card:nth-child(4) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='6' width='20' height='12' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.5'/%3E%3Cpath d='M6 12h.01M18 12h.01'/%3E%3C/svg%3E");}
.kaldy-home .k-features .k-card:nth-child(1) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.6l-1-1a5.5 5.5 0 1 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8z'/%3E%3C/svg%3E");}
.kaldy-home .k-features .k-card:nth-child(2) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='22 12 18 12 15 21 9 3 6 12 2 12'/%3E%3C/svg%3E");}
.kaldy-home .k-features .k-card:nth-child(3) .k-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f6e56' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9.5 12 3l9 6.5'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E");}
.kaldy-home .k-hero h1::after{content:"";display:block;width:64px;height:3px;background:var(--k-accent);border-radius:2px;margin:16px auto 4px;opacity:.55;}
.kaldy-home .k-hero p{color:#4a5a52;}
.kaldy-home .k-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px;}
.kaldy-home .k-btn{display:inline-block;padding:11px 26px;border-radius:30px;font-weight:700;font-size:15px;text-decoration:none;transition:background-color .2s,transform .15s,box-shadow .2s;}
.kaldy-home .k-btn:hover{transform:translateY(-2px);}
.kaldy-home .k-btn-1{background:var(--k-accent);color:#fff;box-shadow:0 4px 12px rgba(15,110,86,.25);}
.kaldy-home .k-btn-1:hover{background:#0c5a47;}
.kaldy-home .k-btn-2{background:#fff;color:var(--k-accent);border:2px solid var(--k-accent);}
.kaldy-home .k-btn-2:hover{background:var(--k-soft);}