/* RehaHouse TOP v1.6.1 | Restore 2-column layout on PC/tablets. */
.rh-top {
  --rh-ink:#073f42;--rh-green:#00694f;--rh-border:#d8e9e4;
  --rh-radius:12px;--rh-gap:22px;--rh-space:50px;
  width:min(100%,1080px);margin-inline:auto;color:var(--rh-ink);container-name:rh-top;container-type:inline-size;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  font-size:15px;line-height:1.55;-webkit-text-size-adjust:100%;text-size-adjust:100%;
}
.rh-top,.rh-top *,.rh-top *::before,.rh-top *::after {box-sizing:border-box;}
.rh-top a {text-decoration:none!important;}
.rh-top a:focus-visible {outline:3px solid #e7a730!important;outline-offset:3px;}
.rh-top img {max-width:100%;}
.rh-top .rh-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--rh-gap);}
.rh-top .rh-top-section {margin-top:var(--rh-space);}
.rh-top .rh-top-section--directory {margin-top:42px;}
.rh-top .rh-top-section--games {margin-top:42px;}
.rh-top .rh-top-section--utility {margin-top:56px;}
.rh-top .rh-top-section--news {margin-top:56px;}
.rh-top .rh-top-section--columns {margin-top:50px;}
.rh-top .rh-top-section--footer {margin-top:54px;}
.rh-top .rh-image-link,.rh-top .rh-visual-card,.rh-top .rh-training-card,.rh-top .rh-games-banner {
  position:relative;display:block;min-width:0;overflow:hidden;border-radius:var(--rh-radius);
  box-shadow:0 1px 0 rgba(7,63,66,.06);
}
.rh-top .rh-image-link img,.rh-top .rh-visual-card img {display:block;width:100%;height:auto;margin:0;}
.rh-top .rh-image-link,.rh-top .rh-training-card,.rh-top .rh-games-banner,.rh-top .rh-news-card {transition:transform .18s ease,box-shadow .18s ease;}
@media(hover:hover) {
  .rh-top .rh-image-link:hover,.rh-top .rh-training-card:hover,.rh-top .rh-games-banner:hover,.rh-top .rh-news-card:hover {transform:translateY(-2px);box-shadow:0 8px 20px rgba(7,63,66,.11);}
}

/* Hero card typography uses component relative sizing rather than viewport sizing. */
.rh-top .rh-training-card {
  container-type:inline-size;isolation:isolate;aspect-ratio:976/570;min-height:290px;
  background:linear-gradient(110deg,#eefaf3 0%,#e9f8f2 56%,#dbf3e7 100%);
  color:var(--rh-ink)!important;
}
.rh-top .rh-training-card__copy {
  display:flex;flex-direction:column;align-items:flex-start;position:relative;z-index:2;
  height:100%;padding:4.4% 4.4% 3.7%;
}
.rh-top .rh-training-card__copy h2,.rh-top .rh-jobs-card__header h2 {
  display:block;margin:0!important;padding:0!important;border:0!important;background:none!important;
  font-weight:900!important;letter-spacing:-.025em;overflow-wrap:normal;
  word-break:keep-all;
}
.rh-top .rh-training-card__copy h2::before,.rh-top .rh-training-card__copy h2::after,
.rh-top .rh-jobs-card__header h2::before,.rh-top .rh-jobs-card__header h2::after {display:none!important;}
.rh-top .rh-training-card__copy h2 {font-size:clamp(25px,6.15cqw,35px)!important;line-height:1.15!important;color:var(--rh-ink)!important;}
.rh-top .rh-training-card__lead {margin:3px 0 10px!important;font-size:clamp(13px,3.03cqw,17px);line-height:1.35;font-weight:800;}
.rh-top .rh-training-card__count {
  display:inline-flex;padding:3px 17px;border-radius:99px;background:#c9edc7;
  font-size:clamp(15px,3.55cqw,20px);font-weight:900;line-height:1.35;white-space:nowrap;
}
.rh-top .rh-training-card__description {
  width:51%;max-width:252px;margin:12px 0 8px!important;
  font-size:clamp(12px,2.65cqw,15px);font-weight:650;line-height:1.52;
  overflow-wrap:anywhere;
}
.rh-top .rh-training-card__cta,.rh-top .rh-games-banner__button {
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  min-height:40px;padding:8px 23px;border-radius:99px;
  background:linear-gradient(105deg,#007353,#00523d);color:#fff;
  font-size:15px;font-weight:800;line-height:1.25;white-space:nowrap;
}
.rh-top .rh-training-card__cta {margin-top:auto;min-width:41%;}
.rh-top .rh-training-card__art {
  position:absolute;z-index:1;width:58%;height:104%;right:-5%;bottom:-5%;
  object-fit:contain;object-position:right bottom;pointer-events:none;
}

/* Section headings have a consistent typographic scale. */
.rh-top .rh-section-title {display:flex;align-items:center;gap:12px;margin:0 0 17px;min-width:0;}
.rh-top .rh-section-title h2 {
  flex:none;max-width:100%;margin:0!important;padding:0!important;border:0!important;background:none!important;
  font-size:24px!important;line-height:1.4!important;font-weight:850!important;
  color:var(--rh-ink)!important;letter-spacing:-.025em;
}
.rh-top .rh-section-title h2::before,.rh-top .rh-section-title h2::after {display:none!important;}
.rh-top .rh-leaf {display:inline-block;margin-right:5px;font-size:.8em;}
.rh-top .rh-section-line {height:1px;flex:1 1 auto;min-width:6px;background:#86bdb9;}
.rh-top .rh-section-title>a {flex:none;color:var(--rh-ink)!important;font-size:14px;font-weight:800;white-space:nowrap;}

/* The original PT/OT examination artwork is preserved; responsive real links on small screens. */
.rh-top .rh-exam-card__art img {display:block;width:100%;}
.rh-top .rh-hotspot {position:absolute;z-index:2;display:block;border-radius:9px;background:transparent;}
.rh-top .rh-hotspot span {position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.rh-top .rh-hotspot:hover {background:rgba(255,255,255,.12);}
.rh-top .rh-hotspot--exam-pt {left:3.5%;bottom:3.5%;width:46%;height:15%;}
.rh-top .rh-hotspot--exam-ot {right:3.5%;bottom:3.5%;width:46%;height:15%;}
.rh-top .rh-mobile-actions {display:none;}

/* Recruitment card: no nowrap or fixed-position type clipping. Art remains behind text. */
.rh-top .rh-jobs-card {
  container-type:inline-size;min-height:290px;aspect-ratio:auto;
  background:linear-gradient(110deg,#fff4f0 0%,#fff8f3 57%,#f8f1e9 100%);isolation:isolate;
}
.rh-top .rh-jobs-card__header {position:relative;z-index:2;padding:4.3% 4.2% 0;}
.rh-top .rh-jobs-card__header h2 {
  max-width:100%;font-size:clamp(22px,5.35cqw,30px)!important;
  line-height:1.23!important;color:#a8433e!important;
}
.rh-top .rh-jobs-card__sub {margin:3px 0 0!important;color:#ab453f;font-size:clamp(13px,3.18cqw,17px);font-weight:800;line-height:1.4;}
.rh-top .rh-jobs-card__body {
  position:relative;z-index:2;max-width:45%;margin:12px 0 0!important;
  color:var(--rh-ink);font-size:clamp(12px,2.65cqw,15px);line-height:1.52;font-weight:650;
}
.rh-top .rh-jobs-card__art {
  position:absolute;z-index:1;width:58%!important;height:53%!important;
  top:24%;right:-3%;object-fit:contain;object-position:right center;pointer-events:none;
}
.rh-top .rh-jobs-card__actions {position:absolute;z-index:3;left:3.4%;right:3.4%;bottom:3%;display:grid;gap:7px;}
.rh-top .rh-jobs-card__actions a {
  display:flex;align-items:center;justify-content:center;gap:8px;min-height:36px;
  padding:6px 9px;border-radius:9px;font-size:clamp(12px,2.65cqw,15px);
  line-height:1.25;text-align:center;font-weight:850;
}
.rh-top .rh-jobs-card__main {background:#b85c57;color:#fff!important;}
.rh-top .rh-jobs-card__main:hover {background:#a74742;}
.rh-top .rh-jobs-card__recruiter {background:#fffdfa;border:1.5px solid #b85c57;color:#a9443f!important;}
.rh-top .rh-jobs-card__recruiter:hover {background:#fff0ea;}

/* Compact game strip on PC and tablet; 230px-ish on phones. */
.rh-top .rh-games-banner {height:202px;min-height:0;isolation:isolate;background:#effaf4;color:var(--rh-ink)!important;}
.rh-top .rh-games-banner>img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:66% 51%;z-index:0;}
.rh-top .rh-games-banner::before {
  content:"";position:absolute;z-index:1;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(245,253,248,.97) 0%,rgba(245,253,248,.93) 31%,rgba(245,253,248,.18) 56%,transparent 74%);
}
.rh-top .rh-games-banner__copy {position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;max-width:51%;height:100%;padding:15px 4.5%;}
.rh-top .rh-games-banner__eyebrow {font-size:12px;font-weight:750;color:#3e7669;letter-spacing:.035em;}
.rh-top .rh-games-banner__copy>strong {font-size:30px;line-height:1.24;font-weight:900;letter-spacing:-.025em;white-space:nowrap;}
.rh-top .rh-games-banner__new {display:inline-block;vertical-align:middle;position:relative;top:-2px;margin-left:4px;padding:3px 9px;border-radius:99px;background:#db7353;color:#fff;font-size:11px;font-weight:850;letter-spacing:0;}
.rh-top .rh-games-banner__description {font-size:14px;line-height:1.45;font-weight:700;}
.rh-top .rh-games-banner__button {min-height:37px;margin-top:3px;padding:7px 21px;font-size:14px;}

/* Matching 3-card sections (same thumbnail height, metadata height, title styles). */
.rh-top .rh-news-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.rh-top .rh-news-card {min-width:0;margin:0;border:1px solid var(--rh-border);border-radius:11px;background:#fff;overflow:hidden;}
.rh-top .rh-news-card>a {display:block;height:100%;color:var(--rh-ink)!important;}
.rh-top .rh-news-thumb {aspect-ratio:16/9;overflow:hidden;background:linear-gradient(115deg,#eff9f4,#fff9ec);}
.rh-top .rh-news-thumb>img {display:block;width:100%;height:100%;object-fit:cover;margin:0;transition:transform .2s ease;}
.rh-top .rh-news-card:hover .rh-news-thumb>img {transform:scale(1.025);}
.rh-top .rh-news-placeholder {display:grid;place-items:center;width:100%;height:100%;font-size:16px;font-weight:800;color:#78988b;}
.rh-top .rh-news-card__info {display:flex;flex-direction:column;align-items:flex-start;min-height:139px;padding:13px 14px 14px;}
.rh-top .rh-news-card__category {display:inline-flex;max-width:100%;margin-bottom:8px;padding:3px 12px;border-radius:99px;background:#e0f4e8;color:#06734f;font-size:12px;line-height:1.4;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rh-top .rh-news-grid--column .rh-news-card__category {background:#fff1dc;color:#9f6922;}
.rh-top .rh-news-card h3 {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;margin:0 0 8px!important;padding:0!important;border:0!important;background:none!important;color:var(--rh-ink)!important;font-size:15px!important;line-height:1.5!important;font-weight:800!important;}
.rh-top .rh-news-card h3::before,.rh-top .rh-news-card h3::after {display:none!important;}
.rh-top .rh-news-card time {margin-top:auto;color:#698b87;font-size:12px;font-weight:500;}
.rh-top .rh-news-empty {grid-column:1/-1;padding:24px;margin:0;border-radius:10px;background:#f3faf7;text-align:center;}

/* Request and guide. Original illustrated banners are retained. */
.rh-top .rh-guide {margin-top:24px;margin-bottom:14px;}
.rh-top .rh-request-mobile,.rh-top .rh-guide-mobile {display:none;}
.rh-top .rh-hotspot--guide-first {left:0;top:0;width:73%;height:100%;}
.rh-top .rh-hotspot--guide-how {left:73%;top:0;width:14%;height:100%;}
.rh-top .rh-hotspot--guide-terms {right:0;top:0;width:13%;height:100%;}

/* Landscape and small desktop: preserve two columns but make every live label fit. */
@media(min-width:981px) and (max-width:1120px) {
  .rh-top {--rh-gap:17px;}
  .rh-top .rh-training-card__copy h2 {font-size:clamp(25px,5.8cqw,32px)!important;}
  .rh-top .rh-jobs-card__header h2 {font-size:clamp(21px,5.05cqw,28px)!important;}
  .rh-top .rh-jobs-card__actions {gap:5px;}
  .rh-top .rh-jobs-card__actions a {min-height:32px;padding:5px 7px;}
}
/* Only narrow handsets use a single large-card column by viewport width. */
@media(max-width:650px) {
  .rh-top {--rh-space:42px;--rh-gap:18px;}
  .rh-top .rh-grid {grid-template-columns:1fr;}
  .rh-top .rh-top-section--directory {margin-top:38px;}
  .rh-top .rh-top-section--games {margin-top:38px;}
  .rh-top .rh-top-section--utility,.rh-top .rh-top-section--news {margin-top:46px;}
  .rh-top .rh-top-section--columns {margin-top:42px;}
  .rh-top .rh-top-section--footer {margin-top:46px;}
  .rh-top .rh-training-card {height:350px;min-height:0;aspect-ratio:auto;}
  .rh-top .rh-training-card__copy {padding:20px 25px 18px;}
  .rh-top .rh-training-card__copy h2 {font-size:34px!important;}
  .rh-top .rh-training-card__lead {font-size:17px;}
  .rh-top .rh-training-card__count {font-size:20px;}
  .rh-top .rh-training-card__description {font-size:15px;max-width:230px;margin-top:12px!important;}
  .rh-top .rh-training-card__art {width:min(65%,550px);right:-2%;height:105%;bottom:-6%;}
  .rh-top .rh-jobs-card {height:350px;min-height:0;aspect-ratio:auto;}
  .rh-top .rh-jobs-card__header {padding:20px 25px 0;}
  .rh-top .rh-jobs-card__header h2 {font-size:31px!important;}
  .rh-top .rh-jobs-card__sub {font-size:18px;}
  .rh-top .rh-jobs-card__body {font-size:15px;margin-top:14px!important;}
  .rh-top .rh-jobs-card__art {width:58%!important;height:55%!important;top:21%;right:0;}
  .rh-top .rh-jobs-card__actions {bottom:16px;left:25px;right:25px;gap:8px;}
  .rh-top .rh-jobs-card__actions a {min-height:39px;font-size:15px;}
  .rh-top .rh-section-title h2 {font-size:23px!important;}
  .rh-top .rh-games-banner {height:186px;}
  .rh-top .rh-games-banner__copy {max-width:55%;}
  .rh-top .rh-games-banner__copy>strong {font-size:28px;}
  .rh-top .rh-news-grid {gap:15px;}
}
/* Narrow tablets and big phones: 2 news columns, separate accessible exam buttons. */
@media(max-width:650px) {
  .rh-top {--rh-gap:15px;}
  .rh-top .rh-training-card {height:322px;}
  .rh-top .rh-training-card__copy {padding:19px 19px 17px;}
  .rh-top .rh-training-card__copy h2 {font-size:30px!important;}
  .rh-top .rh-training-card__lead {font-size:15px;}
  .rh-top .rh-training-card__count {font-size:18px;}
  .rh-top .rh-training-card__description {font-size:13px;max-width:225px;}
  .rh-top .rh-training-card__art {width:62%;right:-7%;height:99%;bottom:-3%;}
  .rh-top .rh-exam-card__art {aspect-ratio:976/430;overflow:hidden;}
  .rh-top .rh-exam-card__art img {width:100%;height:auto;}
  .rh-top .rh-exam-card>.rh-hotspot {display:none;}
  .rh-top .rh-mobile-actions {display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:11px 12px 12px;background:#e4f7fa;}
  .rh-top .rh-mobile-actions a {display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:8px 5px;text-align:center;border-radius:9px;font-size:13px;font-weight:800;color:#fff!important;line-height:1.4;}
  .rh-top .rh-mobile-actions a:first-child {background:#006c79;}
  .rh-top .rh-mobile-actions a:last-child {background:#1474c1;}
  .rh-top .rh-jobs-card {height:325px;}
  .rh-top .rh-jobs-card__header {padding:17px 17px 0;}
  .rh-top .rh-jobs-card__header h2 {font-size:clamp(23px,5.5vw,29px)!important;}
  .rh-top .rh-jobs-card__sub {font-size:clamp(14px,3.6vw,18px);}
  .rh-top .rh-jobs-card__body {max-width:49%;font-size:13px;margin-top:14px!important;}
  .rh-top .rh-jobs-card__art {height:52%!important;top:23%;right:-3%;width:60%!important;}
  .rh-top .rh-jobs-card__actions {left:13px;right:13px;bottom:12px;gap:7px;}
  .rh-top .rh-jobs-card__actions a {min-height:39px;font-size:13px;}
  .rh-top .rh-section-title h2 {font-size:21px!important;}
  .rh-top .rh-news-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .rh-top .rh-news-card__info {min-height:136px;padding:11px 12px 12px;}
  .rh-top .rh-news-card h3 {font-size:14px!important;}
  .rh-top .rh-games-banner {height:0;min-height:0;height:auto;display:flex;flex-direction:column;}
  .rh-top .rh-games-banner>img {position:static;order:-1;width:100%;height:105px;object-fit:cover;object-position:76% 48%;}
  .rh-top .rh-games-banner::before {display:none;}
  .rh-top .rh-games-banner__copy {height:auto;max-width:none;width:100%;padding:13px 18px 17px;gap:5px;}
  .rh-top .rh-games-banner__copy>strong {font-size:25px;white-space:normal;}
  .rh-top .rh-games-banner__description {font-size:13px;}
  .rh-top .rh-games-banner__button {margin-top:6px;min-height:41px;}
  .rh-top .rh-games-desktop {display:none;}
  .rh-top .rh-guide,.rh-top .rh-banner--request {display:none;}
  .rh-top .rh-request-mobile {display:flex;flex-direction:column;gap:8px;padding:17px;border:1.5px solid #159270;border-radius:11px;background:linear-gradient(100deg,#f3fff9,#fff9e7);color:var(--rh-ink)!important;}
  .rh-top .rh-request-mobile__icon {font-size:25px;line-height:1;}
  .rh-top .rh-request-mobile__copy {display:flex;flex-direction:column;gap:4px;}
  .rh-top .rh-request-mobile__copy small,.rh-top .rh-request-mobile__copy em {font-size:12px;font-style:normal;}
  .rh-top .rh-request-mobile__copy strong {font-size:17px;line-height:1.45;}
  .rh-top .rh-request-mobile__button {align-self:flex-start;display:inline-flex;gap:9px;padding:9px 18px;border-radius:99px;background:#00694f;color:#fff;font-size:13px;font-weight:800;}
  .rh-top .rh-guide-mobile {display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:16px;border:1px solid #d7ebe7;border-radius:10px;background:#d7ebe7;overflow:hidden;}
  .rh-top .rh-guide-mobile a {display:block;padding:13px 9px;background:#effbf8;color:var(--rh-ink)!important;text-align:center;font-size:13px;font-weight:800;}
  .rh-top .rh-guide-mobile a:first-child {grid-column:1/-1;}
}
@media(max-width:480px) {
  .rh-top {--rh-space:38px;}
  .rh-top .rh-top-section--utility,.rh-top .rh-top-section--news {margin-top:41px;}
  .rh-top .rh-top-section--columns {margin-top:38px;}
  .rh-top .rh-section-title {gap:8px;margin-bottom:12px;}
  .rh-top .rh-section-title h2 {font-size:clamp(17px,4.5vw,20px)!important;}
  .rh-top .rh-section-title>a {font-size:12px;}
  .rh-top .rh-training-card {height:314px;}
  .rh-top .rh-training-card__copy {padding:18px 15px 16px;}
  .rh-top .rh-training-card__copy h2 {font-size:clamp(26px,7.3vw,31px)!important;}
  .rh-top .rh-training-card__lead {font-size:clamp(13px,3.6vw,15px);margin-bottom:9px!important;}
  .rh-top .rh-training-card__count {font-size:17px;}
  .rh-top .rh-training-card__description {width:52%;font-size:clamp(12px,3.1vw,13px);margin-top:13px!important;}
  .rh-top .rh-training-card__art {width:64%;right:-13%;bottom:-2%;height:96%;}
  .rh-top .rh-training-card__cta {min-width:150px;padding:8px 16px;font-size:14px;min-height:42px;}
  .rh-top .rh-jobs-card {height:318px;}
  .rh-top .rh-jobs-card__header h2 {font-size:clamp(21px,5.6vw,26px)!important;}
  .rh-top .rh-jobs-card__body {max-width:52%;font-size:12px;}
  .rh-top .rh-jobs-card__art {width:60%!important;height:51%!important;top:25%;right:-4%;}
  .rh-top .rh-jobs-card__actions a {font-size:12px;min-height:40px;}
  .rh-top .rh-news-grid {grid-template-columns:1fr;}
  .rh-top .rh-news-card>a {display:grid;grid-template-columns:39% minmax(0,1fr);min-height:130px;}
  .rh-top .rh-news-thumb {height:100%;aspect-ratio:auto;}
  .rh-top .rh-news-card__info {min-height:130px;padding:12px 13px;}
  .rh-top .rh-news-card h3 {font-size:14px!important;}
  .rh-top .rh-news-card__category {margin-bottom:6px;font-size:11px;}
  .rh-top .rh-games-banner>img {height:100px;}
}
@media(max-width:359px) {
  .rh-top .rh-training-card__description {width:54%;font-size:11.5px;}
  .rh-top .rh-training-card__art {width:62%;right:-17%;}
  .rh-top .rh-jobs-card__header h2 {font-size:20px!important;}
  .rh-top .rh-jobs-card__sub {font-size:13px;}
  .rh-top .rh-jobs-card__body {font-size:11.5px;max-width:53%;}
  .rh-top .rh-jobs-card__actions a {font-size:11px;}
  .rh-top .rh-games-banner__copy>strong {font-size:23px;}
}
@media(prefers-reduced-motion:reduce) {
  .rh-top .rh-image-link,.rh-top .rh-training-card,.rh-top .rh-games-banner,.rh-top .rh-news-card,.rh-top .rh-news-thumb img {transition:none;}
}

/* Width-aware adjustments for PC and tablets: keep the original TWO-column cards.
 * The previous <=980px container rule was incorrectly switching SWELL desktop to one column.
 * At 621-950px of actual shortcode space, scale the copy within the 2-column cards.
 * A true single-column fallback is reserved for a container narrower than 620px. */
@media (min-width:651px) {
  @container rh-top (min-width:621px) and (max-width:950px) {
    .rh-top .rh-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;}
    .rh-top .rh-training-card {
      aspect-ratio:auto;min-height:0;height:clamp(226px,32cqw,278px);
    }
    .rh-top .rh-training-card__copy {padding:4.5% 4.5% 3.5%;}
    .rh-top .rh-training-card__copy h2 {font-size:clamp(21px,5.5cqw,30px)!important;}
    .rh-top .rh-training-card__lead {font-size:clamp(12px,2.85cqw,15px);margin:3px 0 7px!important;}
    .rh-top .rh-training-card__count {font-size:clamp(15px,3.4cqw,18px);padding:2px 13px;}
    .rh-top .rh-training-card__description {width:52%;font-size:clamp(11.5px,2.75cqw,14px);margin:9px 0 7px!important;line-height:1.4;}
    .rh-top .rh-training-card__cta {min-height:35px;min-width:43%;padding:6px 14px;font-size:clamp(12px,2.9cqw,14px);}
    .rh-top .rh-training-card__art {width:58%;height:103%;right:-4%;bottom:-4%;}
    .rh-top .rh-jobs-card {aspect-ratio:auto;min-height:0;height:clamp(226px,32cqw,278px);}
    .rh-top .rh-jobs-card__header {padding:4.2% 4.2% 0;}
    .rh-top .rh-jobs-card__header h2 {font-size:clamp(20px,5.15cqw,28px)!important;}
    .rh-top .rh-jobs-card__sub {font-size:clamp(11.5px,2.8cqw,15px);}
    .rh-top .rh-jobs-card__body {max-width:47%;font-size:clamp(11px,2.65cqw,13px);margin-top:9px!important;line-height:1.43;}
    .rh-top .rh-jobs-card__art {width:60%!important;height:50%!important;top:25%;right:-3%;}
    .rh-top .rh-jobs-card__actions {left:3.4%;right:3.4%;bottom:3%;gap:5px;}
    .rh-top .rh-jobs-card__actions a {min-height:28px;padding:5px 8px;font-size:clamp(11px,2.6cqw,13px);}
    .rh-top .rh-section-title h2 {font-size:clamp(19px,2.6vw,24px)!important;}
  }
  @container rh-top (max-width:620px) {
    /* Only very narrow SWELL columns must stack to avoid unreadable text. */
    .rh-top .rh-grid {grid-template-columns:1fr;gap:18px;}
    .rh-top .rh-training-card {min-height:320px;aspect-ratio:auto;}
    .rh-top .rh-training-card__copy {padding:18px 23px 16px;}
    .rh-top .rh-training-card__copy h2 {font-size:32px!important;}
    .rh-top .rh-training-card__lead {font-size:16px;}
    .rh-top .rh-training-card__description {font-size:14px;}
    .rh-top .rh-jobs-card {min-height:320px;}
    .rh-top .rh-jobs-card__header {padding:18px 22px 0;}
    .rh-top .rh-jobs-card__header h2 {font-size:29px!important;}
    .rh-top .rh-jobs-card__sub {font-size:16px;}
    .rh-top .rh-jobs-card__body {font-size:14px;}
    .rh-top .rh-jobs-card__actions {left:22px;right:22px;bottom:12px;}
    .rh-top .rh-jobs-card__actions a {min-height:37px;font-size:14px;}
  }
}


/* === v1.6.2 unified feature cards: no raster text clipping/stretching === */
.rh-top {
  --rh-feature-ratio: 976 / 570;
  --rh-feature-radius: 12px;
}
/* Explicitly normalize the *outer* six surfaces, while leaving the art un-cropped. */
.rh-top .rh-grid--hero > *,
.rh-top .rh-top-section--career > .rh-grid > *,
.rh-top .rh-top-section--directory > .rh-grid > * {
  width: 100%;
  height: auto;
  min-width: 0;
  min-height: 0;
  aspect-ratio: var(--rh-feature-ratio);
  border-radius: var(--rh-feature-radius);
  align-self: stretch;
}
.rh-top .rh-grid--hero > .rh-image-link,
.rh-top .rh-top-section--directory > .rh-grid > .rh-image-link,
.rh-top .rh-exam-card__art { height: 100%; }
.rh-top .rh-grid--hero > .rh-image-link > img,
.rh-top .rh-top-section--directory > .rh-grid > .rh-image-link > img,
.rh-top .rh-exam-card__art > img {
  display:block;
  width:100%;height:100%;object-fit:contain;
}
.rh-top .rh-exam-card .rh-mobile-actions { display:none; }
.rh-top .rh-exam-card > .rh-hotspot { display:block; }
/* Larger invisible click targets on the buttons painted into the exam image. */
.rh-top .rh-hotspot--exam-pt,
.rh-top .rh-hotspot--exam-ot {
  bottom:2%;height:max(15%,44px);max-height:25%;
}
/* Shared fluid typography within cards that have real HTML type. */
.rh-top .rh-training-card,
.rh-top .rh-jobs-card {
  position:relative;
  container-type:inline-size;
  isolation:isolate;
  overflow:hidden;
}
.rh-top .rh-training-card__copy {
  height:100%;padding:4.5% 4.5% 3.7%;
}
.rh-top .rh-training-card__copy h2,
.rh-top .rh-jobs-card__header h2 {
  font-size:clamp(18px,6.1cqw,34px)!important;
  font-weight:900!important;line-height:1.15!important;
  word-break:keep-all;
}
.rh-top .rh-training-card__lead,
.rh-top .rh-jobs-card__sub {
  font-size:clamp(11.5px,3.05cqw,17px);
  font-weight:800;line-height:1.35;
}
.rh-top .rh-training-card__count {font-size:clamp(14px,3.4cqw,19px);padding:3px 13px;}
.rh-top .rh-training-card__description,
.rh-top .rh-jobs-card__body {
  font-size:clamp(11px,2.65cqw,15px);
  line-height:1.42;
  font-weight:650;
}
.rh-top .rh-training-card__description {
  width:50%;max-width:none;margin:9px 0 6px!important;
}
.rh-top .rh-training-card__art {
  position:absolute;width:70%;height:109%;right:-8%;bottom:-8%;
  object-fit:contain;object-position:right bottom;
}
.rh-top .rh-training-card__cta {
  min-width:43%;min-height:44px;padding:7px 13px;
  font-size:clamp(12px,2.8cqw,15px);
}
.rh-top .rh-jobs-card__header {position:relative;z-index:2;padding:4.4% 4.5% 0;}
.rh-top .rh-jobs-card__header h2 {font-size:clamp(18px,5.7cqw,31px)!important;line-height:1.22!important;}
.rh-top .rh-jobs-card__sub {margin:2px 0 0!important;}
.rh-top .rh-jobs-card__body {max-width:47%;margin:8px 0 0!important;}
.rh-top .rh-jobs-card__art {
  position:absolute;width:61%!important;height:45%!important;
  top:26%;right:-3%;object-fit:contain;object-position:right bottom;
}
.rh-top .rh-jobs-card__actions {
  position:absolute;z-index:3;bottom:3.5%;left:3.5%;right:3.5%;
  display:grid;grid-template-columns:1fr;gap:6px;
}
.rh-top .rh-jobs-card__actions a {
  display:flex;align-items:center;justify-content:center;
  min-height:44px;padding:6px 12px;line-height:1.25;
  font-size:clamp(11.5px,2.7cqw,15px);font-weight:850;
  white-space:normal;
}
.rh-top .rh-jobs-card__recruiter {border-width:1.5px;}
/* Balance section typography with visible artwork headings. */
.rh-top .rh-section-title h2 {font-size:clamp(19px,2.3vw,24px)!important;line-height:1.35!important;}
.rh-top .rh-games-banner__copy>strong {font-size:clamp(22px,3vw,30px);}
.rh-top .rh-games-banner__button {min-height:44px;}
/* Narrow desktop content still preserves two columns. */
@media(min-width:651px) {
  @container rh-top (min-width:560px) and (max-width:620px) {
    .rh-top .rh-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
  }
}
/* At tighter tablet/sidebars the normalized cards remain proportional and aligned. */
@media(min-width:651px) {
  @container rh-top (min-width:560px) and (max-width:950px) {
    .rh-top .rh-grid--hero > *,
    .rh-top .rh-top-section--career > .rh-grid > *,
    .rh-top .rh-top-section--directory > .rh-grid > * {
      min-height:0;height:auto;aspect-ratio:976 / 570;
    }
    .rh-top .rh-training-card__copy {padding:4.5% 4.5% 3.2%;}
    .rh-top .rh-training-card__copy h2 {font-size:clamp(18px,6.1cqw,34px)!important;}
    .rh-top .rh-training-card__lead {font-size:clamp(11.5px,3.05cqw,17px);margin:2px 0 5px!important;}
    .rh-top .rh-training-card__count {font-size:clamp(13px,3.4cqw,19px);padding:2px 12px;}
    .rh-top .rh-training-card__description {width:49%;font-size:clamp(10.5px,2.65cqw,15px);margin:6px 0 5px!important;line-height:1.35;}
    .rh-top .rh-training-card__cta {min-height:40px;font-size:clamp(11px,2.8cqw,15px);}
    .rh-top .rh-training-card__art {width:68%;height:108%;right:-9%;bottom:-8%;}
    .rh-top .rh-jobs-card__header {padding:4.2% 4.5% 0;}
    .rh-top .rh-jobs-card__header h2 {font-size:clamp(18px,5.7cqw,31px)!important;}
    .rh-top .rh-jobs-card__sub {font-size:clamp(11px,3.05cqw,17px);}
    .rh-top .rh-jobs-card__body {font-size:clamp(10.5px,2.65cqw,15px);margin:6px 0 0!important;}
    .rh-top .rh-jobs-card__art {width:60%!important;height:45%!important;top:25%;right:-4%;}
    .rh-top .rh-jobs-card__actions {bottom:2.7%;gap:5px;}
    .rh-top .rh-jobs-card__actions a {min-height:44px;padding:5px 9px;font-size:clamp(11px,2.7cqw,15px);}
  }
}
/* Mobile stays stacked, but each of the six large cards shares the same card ratio. */
@media(max-width:650px) {
  .rh-top .rh-grid--hero > *,
  .rh-top .rh-top-section--career > .rh-grid > *,
  .rh-top .rh-top-section--directory > .rh-grid > * {
    min-height:0;height:auto;aspect-ratio:976 / 570;
  }
  .rh-top .rh-exam-card__art {aspect-ratio:auto;overflow:visible;height:100%;}
  .rh-top .rh-mobile-actions {display:none;}
  .rh-top .rh-exam-card > .rh-hotspot {display:block;}
  .rh-top .rh-training-card__copy {padding:4.4% 4.5% 3.6%;}
  .rh-top .rh-training-card__copy h2 {font-size:clamp(18px,6.1cqw,34px)!important;}
  .rh-top .rh-training-card__lead {font-size:clamp(11.5px,3.05cqw,17px);margin:2px 0 5px!important;}
  .rh-top .rh-training-card__count {font-size:clamp(13px,3.4cqw,19px);padding:2px 12px;}
  .rh-top .rh-training-card__description {width:49%;font-size:clamp(10.5px,2.65cqw,15px);margin:6px 0 5px!important;line-height:1.35;}
  .rh-top .rh-training-card__cta {min-height:40px;font-size:clamp(11px,2.8cqw,15px);}
  .rh-top .rh-training-card__art {width:68%;height:108%;right:-9%;bottom:-8%;}
  .rh-top .rh-jobs-card__header {padding:4.2% 4.5% 0;}
  .rh-top .rh-jobs-card__header h2 {font-size:clamp(18px,5.7cqw,31px)!important;}
  .rh-top .rh-jobs-card__sub {font-size:clamp(11px,3.05cqw,17px);}
  .rh-top .rh-jobs-card__body {font-size:clamp(10.5px,2.65cqw,15px);margin:6px 0 0!important;}
  .rh-top .rh-jobs-card__art {width:60%!important;height:45%!important;top:25%;right:-4%;}
  .rh-top .rh-jobs-card__actions {bottom:2.7%;gap:5px;}
  .rh-top .rh-jobs-card__actions a {min-height:44px;padding:5px 9px;font-size:clamp(11px,2.7cqw,15px);}
}

/* Finishing adjustments: keep people visible above the two 44px job actions. */
.rh-top .rh-jobs-card__art {top:21%;height:38%!important;right:-3%;}
@media(min-width:651px) {
  @container rh-top (max-width:650px) {
    .rh-top .rh-jobs-card__body {display:none;}
    .rh-top .rh-jobs-card__art {top:19%;height:38%!important;}
  }
}
@media(max-width:359px) {
  .rh-top .rh-jobs-card__body {display:none;}
  .rh-top .rh-jobs-card__art {top:19%;height:35%!important;}
}

/* Final heading/button polish shared by PC, tablet and phone. */
.rh-top .rh-training-card__copy h2 {font-size:clamp(18px,6.5cqw,35px)!important;}
.rh-top .rh-jobs-card__header h2 {font-size:clamp(18px,6.15cqw,33px)!important;}
.rh-top .rh-jobs-card__actions a {font-size:clamp(12px,3cqw,15px);}


/* === v1.6.3 / type scale + independent illustration/action zones === */
/* Title hierarchy is now HTML for all six feature cards, including the artwork-based ones. */
.rh-top .rh-training-card,
.rh-top .rh-jobs-card,
.rh-top .rh-art-card,
.rh-top .rh-exam-card {
  container-type:inline-size;
}
.rh-top .rh-training-card__copy h2,
.rh-top .rh-jobs-card__header h2,
.rh-top .rh-art-card__title {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  font-size:clamp(17px,5.7cqw,31px)!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:-.035em!important;
  white-space:nowrap;
}
.rh-top .rh-art-card__title::before,
.rh-top .rh-art-card__title::after {display:none!important;}
.rh-top .rh-art-card__cover {
  position:absolute;z-index:2;left:0;top:0;height:22%;width:75%;
  background:linear-gradient(90deg,#fcf9ed 0%,#fcf9ed 77%,rgba(252,249,237,0) 100%);
  pointer-events:none;
}
.rh-top .rh-art-card__title {
  position:absolute;z-index:3;left:4.5%;top:4%;margin:0!important;padding:0!important;
  border:0!important;background:none!important;color:#073f42!important;
}
.rh-top .rh-art-card--cognitive .rh-art-card__cover {width:76%;background:linear-gradient(90deg,#fcfaf2 0%,#fcf9ee 80%,rgba(252,249,238,0) 100%);}
.rh-top .rh-art-card--disease .rh-art-card__cover {width:69%;background:linear-gradient(90deg,#eafbf1 0%,#e9faf0 80%,rgba(234,251,241,0) 100%);}
.rh-top .rh-art-card--column .rh-art-card__cover {width:52%;background:linear-gradient(90deg,#fdf8ec 0%,#fdf8ec 82%,rgba(253,248,236,0) 100%);}
/* Cover the baked exam headline and PT/OT buttons, then put exactly one HTML CTA. */
.rh-top .rh-exam-card__art {position:relative;overflow:hidden;}
.rh-top .rh-exam-card__art::after {
  content:"";position:absolute;z-index:1;left:0;right:0;bottom:0;height:19%;
  background:linear-gradient(180deg,rgba(221,247,251,.97),#dcf7fb 45%,#dff7fa);
}
.rh-top .rh-exam-card > .rh-hotspot,
.rh-top .rh-exam-card .rh-mobile-actions {display:none!important;}
.rh-top .rh-exam-card .rh-art-card__cover--exam {
  width:66%;height:21%;left:0;top:0;
  background:linear-gradient(90deg,#e4f8fc 0%,#e4f8fc 84%,rgba(228,248,252,0) 100%);
}
.rh-top .rh-exam-card .rh-art-card__title {position:absolute;z-index:4;left:4%;top:4%;color:#073f42!important;}
.rh-top .rh-exam-card__cta {
  position:absolute;z-index:5;left:3.7%;right:3.7%;bottom:3%;
  min-height:44px;display:flex;align-items:center;justify-content:center;gap:.7em;
  border-radius:10px;
  color:#fff!important;background:linear-gradient(95deg,#006782,#1777c2);
  font-size:clamp(12px,2.85cqw,16px);font-weight:850;line-height:1.2;
  text-align:center;white-space:nowrap;
}
.rh-top .rh-exam-card__cta:hover {background:linear-gradient(95deg,#005c75,#096ab2);}
/* Separate people illustration from the full-width button stack. The entire illustration zone ends before buttons begin. */
.rh-top .rh-jobs-card__actions {
  position:absolute!important;z-index:6!important;
  left:3.5%!important;right:3.5%!important;bottom:3%!important;
  display:grid!important;grid-template-columns:1fr!important;gap:5px!important;
}
.rh-top .rh-jobs-card__actions a {
  position:relative;z-index:2;min-height:44px!important;padding:5px 8px!important;
  font-size:clamp(11px,2.5cqw,15px)!important;line-height:1.2;
}
.rh-top .rh-jobs-card__art {
  position:absolute!important;
  top:26%!important;right:-1%!important;width:53%!important;height:31%!important;
  max-height:31%!important;
  object-fit:contain!important;object-position:right bottom!important;
  z-index:1!important;
  pointer-events:none!important;
}
.rh-top .rh-jobs-card__header {position:relative;z-index:3;}
.rh-top .rh-jobs-card__body {max-width:47%;}
@media(max-width:650px) {
  .rh-top .rh-jobs-card__art {top:25%!important;height:31%!important;max-height:31%!important;width:53%!important;}
}
@media(max-width:359px) {
  .rh-top .rh-art-card__title,
  .rh-top .rh-training-card__copy h2,
  .rh-top .rh-jobs-card__header h2 {font-size:clamp(16px,5.5cqw,19px)!important;}
}


/* v1.6.3 final: completely mask the old raster title AND subtitle. */
.rh-top .rh-art-card__cover {
  height:33%;width:80%;
  background:linear-gradient(90deg,#fcf9ed 0%,#fcf9ed 93%,rgba(252,249,237,0) 100%);
}
.rh-top .rh-art-card--cognitive .rh-art-card__cover {
  width:80%;background:linear-gradient(90deg,#fcfaf2 0%,#fcf9ee 91%,rgba(252,249,238,0) 100%);
}
.rh-top .rh-art-card--disease .rh-art-card__cover {
  width:79%;background:linear-gradient(90deg,#eafbf1 0%,#e9faf0 92%,rgba(234,251,241,0) 100%);
}
.rh-top .rh-art-card--column .rh-art-card__cover {
  width:79%;background:linear-gradient(90deg,#fdf8ec 0%,#fdf8ec 91%,rgba(253,248,236,0) 100%);
}
.rh-top .rh-exam-card .rh-art-card__cover--exam {
  width:80%;height:33%;
  background:linear-gradient(90deg,#e4f8fc 0%,#e4f8fc 92%,rgba(228,248,252,0) 100%);
}
.rh-top .rh-art-card__subtitle {
  position:absolute;z-index:4;display:block;left:4.5%;top:19%;width:83%;
  color:#073f42;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  font-size:clamp(10px,2.85cqw,16px);font-weight:750;line-height:1.3;
  letter-spacing:-.025em;
}
.rh-top .rh-exam-card .rh-art-card__subtitle {left:4%;width:85%;}
/* A mechanically reserved people zone; never intersects the two job CTA touch targets. */
.rh-top .rh-jobs-card__art {
  top:24%!important;right:-1%!important;width:54%!important;
  height:max(18px,calc(76% - 117px))!important;
  max-height:none!important;object-position:right bottom!important;
}
@media(max-width:650px) {
  .rh-top .rh-jobs-card__art {top:24%!important;height:max(18px,calc(76% - 117px))!important;}
}
@media(max-width:359px) {
  .rh-top .rh-jobs-card__art {top:24%!important;height:max(18px,calc(76% - 117px))!important;}
}
/* Keep the two destination actions side by side so the jobs art has its own full-height region. */
.rh-top .rh-jobs-card__actions {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;}
.rh-top .rh-jobs-card__actions a {min-width:0;min-height:52px!important;padding:5px!important;font-size:clamp(10px,2.45cqw,14px)!important;overflow-wrap:anywhere;}
.rh-top .rh-jobs-card__art {height:max(18px,calc(76% - 82px))!important;max-height:none!important;}
@media(max-width:650px) {
  .rh-top .rh-jobs-card__actions {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .rh-top .rh-jobs-card__art {height:max(18px,calc(76% - 82px))!important;}
}
@media(max-width:359px) {
  .rh-top .rh-jobs-card__art {height:max(18px,calc(76% - 82px))!important;}
}
/* Phones: both job links remain full-width, comfortably tappable. */
@media(max-width:650px) {
  .rh-top .rh-jobs-card__actions {grid-template-columns:1fr!important;gap:5px!important;}
  .rh-top .rh-jobs-card__actions a {min-height:44px!important;font-size:clamp(11px,3cqw,14px)!important;}
  .rh-top .rh-jobs-card__art {height:max(18px,calc(76% - 114px))!important;}
}


/* === v1.6.4 / One readable, common action-label scale across six cards. ===
 * Image-based CTAs (cognitive/disease/column) now use real HTML text,
 * rather than relying on tiny text baked into a resized picture.
 * The entire art card remains the existing link: no nested anchors. */
.rh-top .rh-art-card--cognitive .rh-art-card__body-mask {
  position:absolute;z-index:5;pointer-events:none;left:0;top:49%;width:53%;height:33%;
  background:linear-gradient(90deg,#fdf8ea 0%,#fdf8ea 82%,rgba(253,248,234,0));
}
.rh-top .rh-art-card--cognitive .rh-art-card__body {
  position:absolute;z-index:6;left:4.5%;top:51%;width:48%;
  color:#073f42;font-weight:750;font-size:clamp(10px,2.65cqw,14px);line-height:1.3;
  white-space:pre-line;pointer-events:none;
}
.rh-top .rh-art-card__cta-mask {
  position:absolute;z-index:5;pointer-events:none;
  left:0;bottom:0;width:54%;height:31%;
  background:linear-gradient(90deg,#fff8ed 0%,#fff8ed 91%,rgba(255,248,237,0));
}
.rh-top .rh-art-card--cognitive .rh-art-card__cta-mask {
  background:linear-gradient(90deg,#fff8ed 0%,#fff8ed 91%,rgba(255,248,237,0));
}
.rh-top .rh-art-card--disease .rh-art-card__cta-mask {
  background:linear-gradient(90deg,#f0fcf6 0%,#f0fcf6 91%,rgba(240,252,246,0));
}
.rh-top .rh-art-card--column .rh-art-card__cta-mask {
  background:linear-gradient(90deg,#fff9f0 0%,#fff9f0 91%,rgba(255,249,240,0));
}
.rh-top .rh-art-card__cta {
  position:absolute;z-index:6;left:4.5%;bottom:3%;
  width:47%;min-width:0;display:flex;align-items:center;justify-content:center;gap:.5em;
  padding:4px 6px;border-radius:99px;
  background:linear-gradient(105deg,#007353,#00523d);color:white!important;
  text-align:center;pointer-events:none;
}
/* Shared font rule with explicit scope protects labels from SWELL button styles. */
.rh-top :is(.rh-training-card__cta,.rh-art-card__cta,.rh-exam-card__cta,.rh-jobs-card__actions a,.rh-games-banner__button) {
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif!important;
  font-size:14px!important;font-weight:800!important;line-height:1.3!important;
  min-height:44px!important;letter-spacing:0!important;
  text-transform:none!important;text-align:center!important;
}
.rh-top .rh-jobs-card__actions {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;
}
.rh-top .rh-jobs-card__actions a {
  min-height:48px!important;padding:5px 4px!important;
  white-space:normal!important;overflow-wrap:normal!important;word-break:keep-all!important;
  gap:4px!important;
}
.rh-top .rh-jobs-card__actions a span[aria-hidden] {flex:none;}
.rh-top .rh-jobs-card__recruiter span[aria-hidden] {display:none;}
.rh-top .rh-training-card__cta {padding:6px 12px!important;}
.rh-top .rh-exam-card__cta {padding:6px 12px!important;}
.rh-top .rh-art-card__cta span {font-size:1.1em;line-height:1;}
/* The job characters live in the reserved artwork region above the CTA row. */
.rh-top .rh-jobs-card__art {
  height:max(18px,calc(76% - 78px))!important;
}
@media (min-width:651px) {
  @container rh-top (min-width:900px) {
    .rh-top :is(.rh-training-card__cta,.rh-art-card__cta,.rh-exam-card__cta,.rh-jobs-card__actions a,.rh-games-banner__button) {
      font-size:16px!important;
    }
    .rh-top .rh-art-card__cta {width:48%;}
  }
}
@media (max-width:650px) {
  .rh-top .rh-jobs-card__actions {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .rh-top .rh-jobs-card__art {
    height:max(18px,calc(76% - 78px))!important;
  }
}


/* === v1.6.5: quiet outlines for the six feature cards and two utility cards ===
 * An inset outline, rather than a physical border, preserves the previously
 * approved card dimensions, aspect ratios, content width, and tap targets.
 * Do not apply to the game banner, request banner or article thumbnails. */
.rh-top :is(
  .rh-grid--hero > .rh-training-card,
  .rh-grid--hero > .rh-art-card,
  .rh-top-section--career > .rh-grid > .rh-exam-card,
  .rh-top-section--career > .rh-grid > .rh-jobs-card,
  .rh-top-section--directory > .rh-grid > .rh-art-card,
  .rh-grid--utility > .rh-image-link
) {
  outline: 1px solid #dce8e2;
  outline-offset: -1px;
  transition: outline-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
@media (hover:hover) {
  .rh-top :is(
    .rh-grid--hero > .rh-training-card,
    .rh-grid--hero > .rh-art-card,
    .rh-top-section--career > .rh-grid > .rh-exam-card,
    .rh-top-section--career > .rh-grid > .rh-jobs-card,
    .rh-top-section--directory > .rh-grid > .rh-art-card,
    .rh-grid--utility > .rh-image-link
  ):hover {outline-color:#abcabb;}
}
/* Keep the keyboard-navigation focus ring stronger and outside cards. */
.rh-top a:focus-visible {outline:3px solid #e7a730!important;outline-offset:3px;}
@media (prefers-reduced-motion:reduce) {
  .rh-top :is(.rh-grid--hero > *, .rh-top-section--career > .rh-grid > *, .rh-top-section--directory > .rh-grid > *, .rh-grid--utility > *) {transition:none;}
}


/* === v1.6.6: match the game strip outline to the other service cards ===
 * Inset outline: no change to strip height, corners, artwork or CTA area.
 * Keep above the image (and its gradient overlay) even with overflow clipping.
 */
.rh-top .rh-games-banner {
  outline: 1px solid #dce8e2;
  outline-offset: -1px;
  transition: outline-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
@media (hover:hover) {
  .rh-top .rh-games-banner:hover {outline-color:#abcabb;}
}
@media (prefers-reduced-motion:reduce) {
  .rh-top .rh-games-banner {transition:none;}
}
