/* Shared public news and contact presentation; isolated from other pages. */
:is(.news-page, .contact-page) { background: #fff; color: #1a1a1a; }
:is(.news-page, .contact-page) section.py-5 { padding-top: 40px !important; padding-bottom: 40px !important; }
:is(.news-page, .contact-page) .card-pelekat { border: 1px solid #e8e8e8; border-radius: 15px; box-shadow: none; overflow: hidden; background: #fff; }
:is(.news-page, .contact-page) .card-pelekat:hover { transform: none; box-shadow: 0 8px 24px #00000008; }
:is(.news-page, .contact-page) .card-body { padding: 24px !important; }
:is(.news-page, .contact-page) .btn-pelekat { border-radius: 9px; min-height: 44px; padding: 10px 16px; font-size: .85rem; }
:is(.news-page, .contact-page) .alert { border-radius: 10px; line-height: 1.7; }
:is(.news-page, .contact-page) a:focus-visible, :is(.news-page, .contact-page) button:focus-visible { outline: 3px solid #FF8218; outline-offset: 3px; }
.news-page .container > .d-flex { background: #fafafa; border: 1px solid #e9e9e9; padding: 14px 18px; border-radius: 12px; }
.news-page .container > .d-flex p { font-size: .85rem; }
.news-page .dropdown-menu { border: 1px solid #eee; border-radius: 12px; padding: 8px; box-shadow: 0 12px 30px #00000012; max-width: calc(100vw - 32px); }
.news-page .dropdown-item { white-space: normal; padding: 10px 12px; border-radius: 6px; font-size: .85rem; }
.news-page .category-filter-item.active { background: #1a1a1a; color: #fff; }
.news-page .news-card-icon { height: 105px; font-size: 2rem; }
.news-page .card-body h5 { font-size: 1.05rem; letter-spacing: -.015em; }
.news-page .card-body p { font-size: .85rem; line-height: 1.75; }
.news-page .card-body > .d-flex { flex-wrap: wrap; }
.news-page .card-body small { font-size: .72rem; }
.news-page .badge { font-size: .62rem; border-radius: 6px; padding: 5px 8px; white-space: normal; line-height: 1.5; }
.contact-page .section-title h2 { font-size: 1.65rem; letter-spacing: -.035em; font-weight: 700; }
.contact-page .section-title h2::after { width: 44px; height: 3px; }
.contact-page .col-lg-4 .card-body > div:first-child { display: grid; place-items: center; width: 40px; height: 40px; flex-shrink: 0; border-radius: 10px; background: #fff1e5; font-size: 1.2rem !important; }
.contact-page .col-lg-4 .card-body p { font-size: .82rem !important; line-height: 1.7; overflow-wrap: anywhere; }
.contact-page .col-lg-8 .card-pelekat { border-top: 3px solid #FF8218; }
.contact-page .col-lg-8 .card-body { padding: 30px !important; }
.contact-page .col-lg-8 .card-body > p { font-size: .88rem; line-height: 1.7; }
.contact-page .form-label { font-size: .85rem; font-weight: 600; margin-bottom: 7px; }
.contact-page .form-control, .contact-page .form-select { min-height: 48px; border: 1px solid #d9d9d9; border-radius: 9px; padding: 11px 13px; font-size: 1rem; }
.contact-page .form-select { padding-right: 36px; }
.contact-page .form-control:focus, .contact-page .form-select:focus { border-color: #FF8218; box-shadow: 0 0 0 3px #ff82181a; }
.contact-page section.pb-5 { padding-bottom: 40px !important; }
.contact-page section.pb-5 .card-pelekat { padding: 20px !important; }
.contact-page section.pb-5 p { font-size: .88rem; }
@media (max-width: 575.98px) {
    :is(.news-page, .contact-page) .container { padding-left: 16px; padding-right: 16px; }
    :is(.news-page, .contact-page) section.py-5 { padding-top: 22px !important; padding-bottom: 18px !important; }
    :is(.news-page, .contact-page) .card-body { padding: 14px !important; }
    :is(.news-page, .contact-page) .btn-pelekat { font-size: .78rem; padding: 9px 12px; }
    .news-page .container > .d-flex { padding: 10px 12px; margin-bottom: 14px !important; }
    .news-page .container > .d-flex p { font-size: .75rem; }
    .news-page .dropdown { max-width: 100%; }
    .news-page .dropdown .btn { white-space: normal; text-align: left; }
    .news-page #articlesGrid { --bs-gutter-x: 12px; }
    .news-page .article-card { margin-bottom: 12px !important; }
    .news-page .article-card .card-pelekat { display: flex; flex-direction: row; }
    .news-page .news-card-icon { width: 46px; height: auto; flex-shrink: 0; font-size: 1.25rem; }
    .news-page .card-body { min-width: 0; }
    .news-page .card-body h5 { font-size: .9rem; margin-bottom: 8px !important; }
    .news-page .card-body p { font-size: .78rem; line-height: 1.6 !important; overflow-wrap: anywhere; }
    .news-page .card-body small { font-size: .65rem; }
    .news-page .badge { font-size: .57rem; padding: 3px 6px; }
    .news-page .alert.py-5 { padding: 22px 14px !important; font-size: .8rem; }
    .contact-page .row.g-4 { --bs-gutter-x: 12px; --bs-gutter-y: 16px; }
    .contact-page .col-lg-4 > .d-flex { gap: 10px !important; }
    .contact-page .col-lg-4 .card-body { flex-direction: row; align-items: flex-start !important; gap: 12px !important; padding: 14px !important; }
    .contact-page .col-lg-4 .card-body > div:first-child { width: 34px; height: 34px; font-size: 1rem !important; }
    .contact-page .col-lg-4 .card-body > div:last-child { min-width: 0; flex: 1; }
    .contact-page .col-lg-4 .card-body h6 { font-size: .82rem; }
    .contact-page .col-lg-4 .card-body p { font-size: .76rem !important; line-height: 1.55; overflow-wrap: break-word; word-break: normal; }
    .contact-page .col-lg-8 .card-body { padding: 16px !important; }
    .contact-page .section-title h2 { font-size: 1.3rem; margin-bottom: 8px; padding-bottom: 10px; }
    .contact-page .col-lg-8 .card-body > p { font-size: .78rem; line-height: 1.6; margin-bottom: 14px !important; }
    .contact-page #contactForm .row { --bs-gutter-y: 12px; }
    .contact-page .form-label { font-size: .8rem; margin-bottom: 4px; }
    .contact-page .form-control, .contact-page .form-select { min-height: 44px; padding-top: 8px; padding-bottom: 8px; }
    .contact-page textarea.form-control { height: 110px; }
    .contact-page #contactForm .btn { width: 100%; }
    .contact-page section.pb-5 { padding-bottom: 22px !important; }
    .contact-page section.pb-5 .card-pelekat { padding: 6px !important; }
    .contact-page section.pb-5 .card-body > i { font-size: 1.6rem !important; }
    .contact-page section.pb-5 h5 { font-size: .95rem; margin-top: 8px !important; }
    .contact-page section.pb-5 p { font-size: .78rem; line-height: 1.6; margin-bottom: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
    :is(.news-page, .contact-page) *, :is(.news-page, .contact-page) *::before, :is(.news-page, .contact-page) *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
