*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Inter',sans-serif;background:#fff;color:#111;overflow-x:hidden}

/* ---------- loader ---------- */
#loader{position:fixed;inset:0;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:999;transition:.6s}
#loader img{height:42px}
#loader h2{font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:500;letter-spacing:.08em;color:#9A9AA3;text-transform:uppercase;margin:18px 0 0}
.bar{width:200px;height:3px;background:#eee;border-radius:20px;overflow:hidden;margin-top:16px}
.bar span{display:block;height:100%;width:35%;background:linear-gradient(90deg,#8B1A1A,#D62828);animation:l 1s infinite}
@keyframes l{0%{margin-left:-40%}100%{margin-left:100%}}

/* ---------- header ---------- */
header{display:flex;align-items:center;justify-content:space-between;padding:20px 8%;background:#fff;border-bottom:1px solid #ececec}
.logo{height:32px}
.status-pill{display:flex;align-items:center;gap:8px;font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:#D62828;border:1px solid rgba(214,40,40,.25);padding:8px 16px;border-radius:30px;background:rgba(214,40,40,.06)}
.dot{width:7px;height:7px;border-radius:50%;background:#D62828;box-shadow:0 0 0 0 rgba(214,40,40,.5);animation:pulse 1.8s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(214,40,40,.45)}70%{box-shadow:0 0 0 8px rgba(214,40,40,0)}100%{box-shadow:0 0 0 0 rgba(214,40,40,0)}}

/* ---------- hero ---------- */
.hero{text-align:center;padding:96px 8% 84px;background:#F6F6F7}
.badge{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11.5px;font-weight:600;letter-spacing:.08em;border:1px solid #e5e5e5;color:#333;padding:9px 18px;border-radius:30px;background:#fff}
.badge svg{width:14px;height:14px;color:#D62828}
.hero h1{font-size:clamp(34px,5.2vw,56px);font-weight:800;letter-spacing:-.02em;margin:26px auto 16px;line-height:1.12;color:#111;max-width:820px}
.hero h1 span{color:#D62828}
.hero p{font-size:17px;color:#767680;margin:0 auto;max-width:560px;font-weight:500;line-height:1.6}

/* ---------- section heads ---------- */
.section-head{display:flex;align-items:center;gap:14px;margin:0 0 32px}
.bar-mark{width:4px;height:26px;background:#D62828;border-radius:3px;flex:0 0 auto}
.section-head h2{font-size:26px;font-weight:800;margin:0;letter-spacing:-.01em;color:#111}

.news,.access{padding:64px 8%}
.news{background:#fff}
.access{background:#F6F6F7}

/* ---------- company logos (inside hero, plain, no card) ---------- */
.hero-logos{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:34px;margin-bottom:36px}
.hero-logos a{display:flex;align-items:center;transition:.2s;opacity:.92}
.hero-logos a:hover{opacity:1;transform:translateY(-2px)}
.hero-logos img{height:34px;max-width:130px;object-fit:contain;display:block}

/* ---------- news / announcements ---------- */
.news-status{grid-column:1/-1;font-size:14px;color:#9A9AA3;text-align:center;padding:20px 0}

/* ---------- news / announcements ---------- */
.news-filters{display:flex;gap:8px;margin:-10px 0 26px;flex-wrap:wrap}
.filter-btn{font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:#767680;background:#fff;border:1px solid #ececec;padding:8px 16px;border-radius:30px;cursor:pointer;transition:.2s}
.filter-btn:hover{border-color:#D62828;color:#D62828}
.filter-btn.active{background:#D62828;border-color:#D62828;color:#fff}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.news-card{background:#fff;border:1px solid #ececec;border-radius:16px;padding:24px;transition:.2s;cursor:pointer}
.news-card:hover{border-color:#D62828;box-shadow:0 20px 34px -22px rgba(214,40,40,.28);transform:translateY(-3px)}
.read-more{display:block;margin-top:14px;font-size:12.5px;font-weight:700;color:#D62828}
.news-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.news-tag{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.06em;padding:4px 9px;border-radius:20px}
.tag-hr{background:rgba(214,40,40,.1);color:#D62828}
.tag-it{background:rgba(37,99,235,.1);color:#2563EB}
.tag-event{background:rgba(217,119,6,.12);color:#D97706}
.tag-policy{background:rgba(23,23,23,.08);color:#333}
.tag-general{background:rgba(107,107,112,.1);color:#6B6B70}
.news-date{font-size:11.5px;color:#9A9AA3;font-weight:500}
.news-card h3{margin:0 0 8px;font-size:15.5px;font-weight:700;letter-spacing:-.01em;color:#111;line-height:1.35}
.news-card p{margin:0;font-size:13px;line-height:1.55;color:#767680}

/* ---------- access grid ---------- */
.access-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{position:relative;display:block;padding:26px 24px;border-radius:16px;background:#fff;border:1px solid #ececec;text-decoration:none;color:#111;transition:.2s}
.card:hover{transform:translateY(-4px);border-color:#D62828;box-shadow:0 20px 34px -20px rgba(214,40,40,.28)}
.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(214,40,40,.08);color:#D62828}
.icon svg{width:17px;height:17px}
.arrow{font-size:16px;color:#c9c7cc;transition:.2s}
.card:hover .arrow{color:#D62828;transform:translate(2px,-2px)}
.card h3{margin:0 0 8px;font-size:18px;font-weight:700;letter-spacing:-.01em;color:#111}
.card p{margin:0 0 16px;font-size:13.5px;line-height:1.5;color:#767680}
.tag{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.06em;color:#9A9AA3;font-weight:600}
.card.restricted .tag{color:#D62828}

footer{text-align:center;padding:32px;border-top:1px solid #ececec;color:#9A9AA3;font-size:13px;background:#fff}

/* ---------- announcement modal ---------- */
.modal-overlay{position:fixed;inset:0;background:rgba(17,17,17,.55);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:.2s;z-index:1000}
.modal-overlay.open{opacity:1;pointer-events:auto}
.modal-box{background:#fff;border-radius:18px;max-width:640px;width:100%;max-height:82vh;overflow-y:auto;padding:36px;position:relative;transform:translateY(10px);transition:.2s}
.modal-overlay.open .modal-box{transform:translateY(0)}
.modal-close{position:absolute;top:18px;right:18px;width:34px;height:34px;border-radius:50%;border:1px solid #ececec;background:#fff;font-size:20px;line-height:1;color:#767680;cursor:pointer}
.modal-close:hover{border-color:#D62828;color:#D62828}
.modal-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.modal-box h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 20px;color:#111;padding-right:30px}
.modal-body{font-size:14.5px;line-height:1.75;color:#3a3a3f}
.modal-body p{margin:0 0 14px}
.modal-body h1,.modal-body h2,.modal-body h3{color:#111;font-weight:700;margin:22px 0 10px;letter-spacing:-.01em}
.modal-body h1{font-size:20px}.modal-body h2{font-size:18px}.modal-body h3{font-size:16px}
.modal-body ul,.modal-body ol{margin:0 0 14px;padding-left:20px}
.modal-body li{margin-bottom:6px}
.modal-body a{color:#D62828;font-weight:600}
.modal-body img{max-width:100%;border-radius:10px;margin:10px 0}
.modal-body strong,.modal-body b{color:#111}
.modal-body blockquote{margin:14px 0;padding:12px 16px;border-left:3px solid #D62828;background:#F6F6F7;border-radius:0 8px 8px 0;color:#555}
.modal-body code{background:#F6F6F7;padding:2px 6px;border-radius:5px;font-family:'JetBrains Mono',monospace;font-size:13px}
@media(max-width:1024px){.news-grid,.access-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){
  header{padding:18px 6%}
  .status-pill{font-size:11px;padding:6px 12px}
  .hero-logos{gap:20px;margin-bottom:26px}
  .hero-logos img{height:24px}
  .hero,.news,.access{padding-left:6%;padding-right:6%}
  .news-grid,.access-grid{grid-template-columns:1fr}
}
