/* A compact hero-edge strip on touch/compact screens; a floating desktop card. */
.job-notice {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: center;
  column-gap: 16px;
  width: 100%;
  margin: 0;
  padding: 8px max(15px, calc((100% - var(--container)) / 2));
  color: #102a34;
  background: #e4f6f8;
}
.job-notice[hidden] { display: none !important; }
.job-notice__link { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 24px; min-width: 0; min-height: 44px; padding-block: 8px; border-radius: inherit; }
.job-notice__title { display: block; font-size: 1rem; line-height: 1.35; font-weight: 750; }
.job-notice__description { display: none; margin-top: 5px; color: #385461; font-size: .875rem; line-height: 1.5; }
.job-notice__action { display: flex; align-items: center; gap: 10px; color: #006477; font-size: .875rem; font-weight: 700; line-height: 1.5; }
.job-notice__action svg { flex: 0 0 18px; }
.job-notice__close { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: #385461; cursor: pointer; }
.job-notice__link:focus-visible, .job-notice__close:focus-visible { outline: 2px solid #00849a; outline-offset: 3px; }
.job-notice__link:active { background: #d5edf1; }
@media (hover: hover) {
  .job-notice__link:hover .job-notice__action { text-decoration: underline; text-underline-offset: 4px; }
  .job-notice__close:hover { color: #102a34; background: #c5e7eb; }
}
@media (max-width: 620px) {
  .job-notice { column-gap: 8px; }
  .job-notice__link { display: grid; gap: 5px; }
}
@media (min-width: 1181px) and (min-height: 651px) and (hover: hover) and (pointer: fine) {
  .job-notice {
    position: fixed; z-index: 90;
    right: max(24px, env(safe-area-inset-right));
    bottom: max(24px, env(safe-area-inset-bottom));
    display: block; width: 310px; margin: 0; padding: 0;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .3);
  }
  .job-notice__link { display: block; padding: 18px 48px 19px 20px; }
  .job-notice__description { display: block; }
  .job-notice__action { margin-top: 12px; }
  .job-notice__close { position: absolute; top: 2px; right: 2px; }
  /* Keep the contact form, footer and focused page controls unobstructed. */
  .job-notice[data-obstructs-content="true"],
  .job-notice[data-obstructs-focus="true"],
  body.menu-open .job-notice,
  body:has(dialog[open]) .job-notice { visibility: hidden; }
}
@media print { .job-notice { display: none !important; } }
