.responsibility-banner { background: linear-gradient(135deg, #FF9F43 0%, #FF7B1E 100%); color: #FFFFFF; padding: 14px 16px; border-radius: 12px; display: flex; flex-direction: row; align-items: flex-start; gap: 12px; margin: 18px 0; }
.responsibility-banner .banner-icon { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background: rgba(255, 255, 255, 0.15); border-radius: 10px; flex-shrink: 0; }
.responsibility-banner .banner-icon .icon-svg { width: 20px; height: 20px; }
.responsibility-banner .banner-body { min-width: 0; }
.responsibility-banner .banner-body .banner-title { font-size: 14px; font-weight: 900; letter-spacing: 0.4px; margin-bottom: 4px; text-transform: uppercase; }
.responsibility-banner .banner-body .banner-text { font-size: 13px; line-height: 1.5; opacity: 0.95; word-wrap: break-word; overflow-wrap: anywhere; }
.responsibility-banner .banner-body .banner-link { color: #FFFFFF; font-weight: 700; border-bottom: 2px solid rgba(255, 255, 255, 0.5); }
.responsibility-banner .banner-body .banner-link:hover { border-bottom-color: #FFFFFF; color: #FFFFFF; }

.help-resources { display: grid; grid-template-columns: 1fr; gap: 16px; margin: 18px 0; }
.help-resources .help-card { padding: 20px; background: #FFFFFF; border: 1px solid #E1E8F0; border-radius: 12px; transition: border-color 0.2s ease, transform 0.2s ease; }
.help-resources .help-card:hover { border-color: #2962FF; transform: translateY(-2px); }
.help-resources .help-card .help-card-org { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 2px; color: #FF3D00; margin-bottom: 8px; }
.help-resources .help-card .help-card-name { font-size: 19px; font-weight: 800; color: #0A1628; margin-bottom: 8px; }
.help-resources .help-card .help-card-text { font-size: 14px; color: #2A3A4E; line-height: 1.6; margin-bottom: 14px; }
.help-resources .help-card .help-card-cta { margin-top: 4px; }
.help-resources .help-card .help-card-contact { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 700; color: #2962FF; }

.limits-list { display: flex; flex-direction: column; gap: 12px; margin: 16px 0; }
.limits-list .limit-item { display: flex; align-items: flex-start; gap: 14px; padding: 16px 20px; background: #F7F9FC; border-radius: 10px; border-left: 3px solid #00C853; }
.limits-list .limit-item .limit-icon { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background: #FFFFFF; border-radius: 8px; flex-shrink: 0; }
.limits-list .limit-item .limit-icon .icon-svg { width: 18px; height: 18px; color: #00C853; }
.limits-list .limit-item .limit-body .limit-title { font-size: 15px; font-weight: 800; color: #0A1628; margin-bottom: 4px; }
.limits-list .limit-item .limit-body .limit-text { font-size: 13px; color: #5A6A7E; line-height: 1.5; }

.cookie-banner { position: fixed; bottom: 16px; left: 16px; right: 16px; max-width: 720px; margin: 0 auto; background: #0A1628; color: #FFFFFF; padding: 20px; border-radius: 14px; box-shadow: 0 16px 48px rgba(10, 22, 40, 0.3); z-index: 200; transform: translateY(120%); transition: transform 0.4s cubic-bezier(0.2, 0.9, 0.3, 1); }
.cookie-banner.is-visible { transform: translateY(0); }
.cookie-banner .cookie-stripe { position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #00C853 0%, #2962FF 100%); border-radius: 14px 14px 0 0; }
.cookie-banner .cookie-content { display: flex; flex-direction: column; gap: 12px; }
.cookie-banner .cookie-content .cookie-text { font-size: 13px; line-height: 1.5; color: rgba(255, 255, 255, 0.85); }
.cookie-banner .cookie-content .cookie-text .cookie-link { color: #00E866; font-weight: 600; border-bottom: 1px solid rgba(0, 232, 102, 0.4); }
.cookie-banner .cookie-content .cookie-actions { display: flex; gap: 8px; }
.cookie-banner .cookie-content .cookie-actions .cookie-btn { padding: 10px 18px; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: 1.2px; border-radius: 8px; cursor: pointer; transition: transform 0.2s ease, background 0.2s ease; flex: 1; }
.cookie-banner .cookie-content .cookie-actions .cookie-btn.cookie-accept { background: #00C853; color: #FFFFFF; }
.cookie-banner .cookie-content .cookie-actions .cookie-btn.cookie-accept:hover { background: #00B048; transform: translateY(-1px); }
.cookie-banner .cookie-content .cookie-actions .cookie-btn.cookie-decline { background: rgba(255, 255, 255, 0.08); color: #FFFFFF; border: 1px solid rgba(255, 255, 255, 0.2); }
.cookie-banner .cookie-content .cookie-actions .cookie-btn.cookie-decline:hover { background: rgba(255, 255, 255, 0.15); }

.faq-list { display: flex; flex-direction: column; gap: 12px; margin: 18px 0; }
.faq-list .faq-item { background: #FFFFFF; border: 1px solid #E1E8F0; border-radius: 12px; overflow: hidden; }
.faq-list .faq-item .faq-question { padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; user-select: none; transition: background 0.2s ease; }
.faq-list .faq-item .faq-question:hover { background: #F7F9FC; }
.faq-list .faq-item .faq-question .question-text { font-size: 16px; font-weight: 700; color: #0A1628; line-height: 1.4; }
.faq-list .faq-item .faq-question .question-icon { width: 24px; height: 24px; flex-shrink: 0; transition: transform 0.3s ease; color: #2962FF; }
.faq-list .faq-item.is-open .faq-question .question-icon { transform: rotate(45deg); }
.faq-list .faq-item .faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.faq-list .faq-item.is-open .faq-answer { max-height: 500px; }
.faq-list .faq-item .faq-answer .answer-inner { padding: 0 24px 20px; font-size: 14px; line-height: 1.7; color: #2A3A4E; }

@media (min-width: 768px) {
  .responsibility-banner { padding: 22px 26px; gap: 22px; border-radius: 14px; margin: 18px 0; }
  .responsibility-banner .banner-icon { width: 56px; height: 56px; border-radius: 14px; }
  .responsibility-banner .banner-icon .icon-svg { width: 28px; height: 28px; }
  .responsibility-banner .banner-body .banner-title { font-size: 20px; letter-spacing: -0.3px; margin-bottom: 8px; }
  .responsibility-banner .banner-body .banner-text { font-size: 15px; line-height: 1.6; }
  .help-resources { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .cookie-banner .cookie-content { flex-direction: row; align-items: center; }
  .cookie-banner .cookie-content .cookie-actions { flex-shrink: 0; }
  .cookie-banner .cookie-content .cookie-actions .cookie-btn { flex: 0 0 auto; }
}

@media (min-width: 1024px) {
  .help-resources { grid-template-columns: repeat(3, 1fr); }
}
