.exam-page { background: #f6f8f7; color: #192b32; min-height: 60vh; }
.exam-intro { background: linear-gradient(115deg, #123f48 0%, #176b69 58%, #d3a74b 58%, #e4c878 100%); color: #fff; overflow: hidden; padding: clamp(3.5rem, 8vw, 6.5rem) 0; position: relative; }
.exam-intro::after { border: 1px solid rgba(255,255,255,.22); border-radius: 50%; content: ""; height: 340px; position: absolute; right: 7%; top: -180px; width: 340px; }
.exam-intro .container { position: relative; z-index: 1; }
.exam-kicker, .exam-overline { align-items: center; display: flex; font-size: .76rem; font-weight: 800; gap: .65rem; letter-spacing: .12em; margin: 0 0 1rem; text-transform: uppercase; }
.exam-kicker { color: #e7d595; }
.exam-kicker span { background: #e7d595; border-radius: 50%; height: 8px; width: 8px; }
.exam-intro h1 { color: #fff; font-family: var(--font-heading); font-size: 3.25rem; font-weight: 800; line-height: 1.05; margin: 0 0 1rem; }
.exam-intro h1 span { color: #f2d27c; }
.exam-intro .container > p:last-child { color: rgba(255,255,255,.82); font-size: 1rem; margin: 0; max-width: 560px; }
.exam-content { padding: 3.5rem 0 5rem; }
.exam-tabs { border-bottom: 1px solid #dce5e2; display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.exam-tabs a { border: 1px solid #dce5e2; border-bottom: 0; color: #31565a; font-size: .88rem; font-weight: 700; padding: .75rem 1rem; text-decoration: none; }
.exam-tabs a:hover, .exam-tabs a.is-active { background: #176b62; border-color: #176b62; color: #fff; }
.exam-section-heading { align-items: end; border-bottom: 1px solid #dce5e2; display: flex; justify-content: space-between; margin-bottom: 1.5rem; padding-bottom: 1rem; }
.exam-overline { color: #188278; font-size: .68rem; margin-bottom: .4rem; }
.exam-section-heading h2 { color: #163b40; font-family: var(--font-heading); font-size: 1.75rem; font-weight: 700; margin: 0; }
.exam-count { background: #e5f1ed; color: #176b62; font-size: .8rem; font-weight: 700; padding: .45rem .75rem; }
.exam-notice-list { display: grid; gap: .85rem; }
.exam-notice { align-items: center; background: #fff; border: 1px solid #e1e9e6; border-left: 4px solid #d1aa4b; display: grid; gap: 1.15rem; grid-template-columns: 54px minmax(0, 1fr) auto; padding: 1.25rem 1.4rem; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.exam-notice:hover { border-color: #a9c9c0; box-shadow: 0 12px 28px rgba(24, 63, 64, .08); transform: translateY(-2px); }
.exam-pdf-icon, .exam-empty-icon { align-items: center; background: #fcebea; color: #b94138; display: flex; font-size: 1.35rem; height: 50px; justify-content: center; width: 50px; }
.exam-notice-date { color: #627a78; font-size: .75rem; font-weight: 700; margin: 0 0 .35rem; }
.exam-notice-date i { margin-right: .35rem; }
.exam-notice-copy h3 { color: #18383c; font-family: var(--font-heading); font-size: 1.05rem; font-weight: 700; line-height: 1.4; margin: 0; overflow-wrap: anywhere; }
.exam-notice-description { color: #637574; font-size: .88rem; line-height: 1.6; margin: .4rem 0 0; }
.exam-pdf-link { align-items: center; background: #176b62; color: #fff; display: inline-flex; font-size: .82rem; font-weight: 700; gap: .55rem; justify-content: center; min-height: 42px; padding: .65rem .9rem; text-decoration: none; transition: background .2s ease; }
.exam-pdf-link:hover, .exam-pdf-link:focus-visible { background: #124f4a; color: #fff; }
.exam-empty { align-items: center; background: #fff; border: 1px dashed #cbd9d5; display: flex; flex-direction: column; padding: 3rem 1.5rem; text-align: center; }
.exam-empty-icon { height: 58px; margin-bottom: 1rem; width: 58px; }
.exam-empty h3 { color: #18383c; font-family: var(--font-heading); font-size: 1.15rem; margin: 0 0 .45rem; }
.exam-empty p { color: #687b78; margin: 0; }
@media (max-width: 640px) {
  .exam-intro { background: linear-gradient(120deg, #123f48 0%, #176b69 76%, #d3a74b 76%, #e4c878 100%); }
  .exam-intro h1 { font-size: 2.4rem; }
  .exam-content { padding: 2.4rem 0 3rem; }
  .exam-notice { align-items: start; gap: .85rem; grid-template-columns: 44px minmax(0, 1fr); padding: 1rem; }
  .exam-pdf-icon { height: 42px; width: 42px; }
  .exam-pdf-link { grid-column: 2; justify-self: start; }
  .exam-notice-copy h3 { font-size: .98rem; }
}
@media (prefers-reduced-motion: reduce) { .exam-notice, .exam-pdf-link { transition: none; } }