﻿        /* === Красивые карточки тарифов (Актуальные тарифы) === */
        .tariffs-grid {
          display: grid;
          grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* чуть шире */
          gap: 1rem;
          margin-top: 1rem;
          margin-bottom: 1rem;
        }
        
        .tariff-card {
          position: relative;
          background: #fff;
          border: 1px solid #e3e8ef;
          border-radius: 12px;
          padding: 1rem;
          box-shadow: 0 1px 3px rgba(20, 60, 100, 0.04);
          transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
          display: flex;
          flex-direction: column;
        }
        .tariff-card:hover {
          transform: translateY(-2px);
          box-shadow: 0 8px 20px rgba(44, 182, 125, 0.10);
          border-color: rgba(44, 182, 125, 0.30);
        }

        .tariff-card__header {
          display: flex;
          align-items: flex-start;
          gap: 12px;
          margin-bottom: 0.6rem;
        }

        .tariff-card__icon {
          flex-shrink: 0;
          width: 40px;
          height: 40px;
          border-radius: 10px;
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 1.05rem;
          background: #e8f7f0;
          color: var(--accent-info);
        }
        /* Категорийные цвета иконки */
        .tariff-card[data-cat="water"]   .tariff-card__icon { background: #e6f1fb; color: #2a7ed1; }
        .tariff-card[data-cat="hot"]     .tariff-card__icon { background: #fdecea; color: #d65160; }
        .tariff-card[data-cat="heat"]    .tariff-card__icon { background: #fef0e6; color: #d97a3a; }
        .tariff-card[data-cat="power"]   .tariff-card__icon { background: #fff7d6; color: #c79c1d; }
        .tariff-card[data-cat="waste"]   .tariff-card__icon { background: #e8f6ee; color: #1f9d5d; }
        .tariff-card[data-cat="house"]   .tariff-card__icon { background: #efeafd; color: #6d52d6; }

        .tariff-card__title {
          font-size: 0.95rem;
          font-weight: 600;
          color: #1f3540;
          line-height: 1.3;
          padding-top: 2px;
        }

        .tariff-card__pricewrap {
          display: flex;
          align-items: baseline;
          gap: .35rem;
          margin: .25rem 0 .5rem 0;
        }

        .tariff-card__price {
          font-size: 1.7rem;
          line-height: 1;
          font-weight: 700;
          color: #1f3540;
          letter-spacing: -0.01em;
        }

        .tariff-card__unit {
          color: var(--text-muted);
          font-weight: 500;
          font-size: 0.9rem;
        }
        
        .tariff-card__body {
          margin-top: .25rem;
          margin-bottom: .75rem;
        }
        
        .tariff-card__list {
          margin: 0;
          padding-left: 1.1rem;
          color: var(--text-muted);
          font-size: 0.9rem;
        }
        .tariff-card__list li {
          margin: .2rem 0;
        }

        .tariff-card__desc {
          color: var(--text-muted);
          font-size: 0.9rem;
          margin: 0;
        }
        
        .tariff-card__footer {
          margin-top: auto;
          display: flex;
          justify-content: flex-end;
        }
        
        .tariff-card__btn {
          display: inline-flex;
          align-items: center;
          gap: .4rem;
          background: var(--brand-grad);
          color: #fff;
          border: none;
          border-radius: 8px;
          padding: .55rem .9rem;
          font-weight: 700;
          cursor: pointer;
          transition: filter .2s ease, transform .2s ease;
        }
        .tariff-card__btn:hover { background: var(--brand-grad-hover); transform: translateY(-1px); }
        .tariff-card__btn i { font-size: .95rem; }
        
        /* Мобильные правки — сетка уже подстроена выше */
        @media (max-width: 768px) {
          .tariff-card { padding: .9rem .9rem .8rem; min-height: auto; }
          .tariff-card__price { font-size: 1.5rem; }
        }

        #cookieBanner {
            display: none;
            position: fixed;
            left: 50%;
            transform: translateX(-50%);
            bottom: 20px;
            z-index: 10000;
            width: 480px;
            max-width: calc(100% - 40px);
            background: var(--surface);
            color: var(--text);
            border: 1px solid var(--border);
            border-radius: 14px;
            box-shadow: 0 12px 32px rgba(20, 60, 100, 0.18);
            padding: 18px 20px 18px 24px;
            font-family: 'Montserrat', sans-serif;
            font-weight: 500;
            font-size: 0.92em;
            line-height: 1.5;
            overflow: hidden;
        }
        #cookieBanner::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 4px;
            background: var(--accent-info);
            border-radius: 14px 0 0 14px;
        }
        #cookieBanner.show { display: block; }
        #cookieBanner .cookie-banner__text {
            margin-bottom: 14px;
            color: var(--text);
        }
        #cookieBanner .cookie-banner__text a {
            color: var(--accent-info);
            text-decoration: none;
            font-weight: 600;
            transition: color 0.18s ease;
        }
        #cookieBanner .cookie-banner__text a:hover {
            color: var(--accent-info-hover);
        }
        #cookieBanner .cookie-banner__buttons {
            display: flex;
            gap: 8px;
            justify-content: flex-end;
        }
        #cookieBanner button {
            border: none;
            border-radius: 8px;
            padding: 9px 18px;
            cursor: pointer;
            font-family: 'Montserrat', sans-serif;
            font-weight: 600;
            font-size: 0.92em;
            transition: background-color 0.18s ease, color 0.18s ease, transform 0.12s ease, box-shadow 0.18s ease;
        }
        #cookieBanner .cookie-accept {
            background: var(--brand-grad);
            color: #fff;
            box-shadow: 0 2px 6px rgba(44, 182, 125, 0.25);
        }
        #cookieBanner .cookie-accept:hover {
            background: var(--brand-grad-hover);
            transform: translateY(-1px);
            box-shadow: 0 4px 10px rgba(44, 182, 125, 0.30);
        }
        #cookieBanner .cookie-more {
            background: transparent;
            color: var(--accent-info);
            border: 1px solid var(--accent-info);
        }
        #cookieBanner .cookie-more:hover {
            background: var(--brand-grad);
            color: #fff;
            border-color: transparent;
        }
        @media (max-width: 768px) {
            #cookieBanner {
                left: 10px;
                right: 10px;
                bottom: 10px;
                transform: none;
                width: auto;
                max-width: none;
                padding: 14px 15px;
            }
            #cookieBanner .cookie-banner__buttons button { flex: 1; }
        }

        #privacyPolicyModal .header-with-close h2,
        #confidentialityPolicyModal .header-with-close h2 {
            color: var(--accent-info);
        }
        #privacyPolicyModal strong,
        #confidentialityPolicyModal strong {
            font-weight: 600;
            color: var(--accent-info);
        }