/* Approved navy entry-type cards, scoped to the Japan page. */
:is(#japan-entry-types, #panama-key-points) {
  background: #11132f;
  color: #f9f9ff;
  padding: 72px 0 56px;
  word-break: keep-all;
  overflow-wrap: anywhere;
  scroll-margin-top: 130px;
}
:is(#japan-entry-types, #panama-key-points) * { box-sizing: border-box; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-shell { width: calc(100% - 192px); max-width: 1280px; margin: 0 auto; }
:is(#japan-entry-types, #panama-key-points) :is(p, h2, h3) { margin: 0; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-heading { padding: 0 0 36px; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-kicker { color:#a5a1ef;font-size:calc(14px * var(--country-type-scale, 1));font-weight:600; }
:is(#japan-entry-types, #panama-key-points) h2 { margin: 12px 0 20px; color: #f9f9ff; font-size: calc(42px * var(--country-type-scale, 1)); line-height: 1.3; font-weight: 650; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-intro { max-width: 1060px; color: #b7bbd0; font-size: calc(17px * var(--country-type-scale, 1)); line-height: 1.85; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-entry-card { display: flex; flex-direction: column; min-width: 0; padding: 30px; background: #1b1e3c; border: 1px solid #363958; border-radius: 12px; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-card-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-number { color: #a5a1ef; font-size: calc(13px * var(--country-type-scale, 1)); }
:is(#japan-entry-types, #panama-key-points) .jp-entry-card-label { color: #a4aac9; font-size: calc(11px * var(--country-type-scale, 1)); }
:is(#japan-entry-types, #panama-key-points) .jp-entry-monogram { padding: 32px 0 12px; color: #a5a1ef; font-size: calc(15px * var(--country-type-scale, 1)); font-weight: 500; line-height: 1.2; }
:is(#japan-entry-types, #panama-key-points) h3 { color: #f9f9ff; font-size: calc(30px * var(--country-type-scale, 1)); line-height: 1.3; font-weight: 600; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-english { margin-top: 8px; color: #a4aac9; font-size: calc(13px * var(--country-type-scale, 1)); line-height: 1.5; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-description { margin: 24px 0 28px; color: #c8ccdd; font-size: calc(16px * var(--country-type-scale, 1)); line-height: 1.85; }
:is(#japan-entry-types, #panama-key-points) .jp-entry-card-foot { margin-top: auto; padding-top: 18px; border-top: 1px solid #383b57; color: #a5a1ef; font-size: calc(12px * var(--country-type-scale, 1)); line-height: 1.6; }
@media (max-width: 1199px) {
  :is(#japan-entry-types, #panama-key-points) .jp-entry-shell { width: calc(100% - 96px); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-entry-card { padding: 24px; }
  :is(#japan-entry-types, #panama-key-points) h2 { font-size: calc(36px * var(--country-type-scale, 1)); }
}
@media (max-width: 991px) {
  :is(#japan-entry-types, #panama-key-points) { padding: 48px 0 40px; }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-shell { width: calc(100% - 48px); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-heading { padding: 0 0 28px; }
  :is(#japan-entry-types, #panama-key-points) h2 { font-size: calc(30px * var(--country-type-scale, 1)); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-intro { font-size: calc(15px * var(--country-type-scale, 1)); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-card-grid { grid-template-columns: 1fr; gap: 16px; }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-monogram { padding: 24px 0 10px; font-size: calc(13px * var(--country-type-scale, 1)); }
  :is(#japan-entry-types, #panama-key-points) h3 { font-size: calc(28px * var(--country-type-scale, 1)); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-description { margin: 20px 0 24px; font-size: calc(15px * var(--country-type-scale, 1)); }
}
@media (max-width: 479px) {
  :is(#japan-entry-types, #panama-key-points) .jp-entry-shell { width: calc(100% - 40px); }
  :is(#japan-entry-types, #panama-key-points) h2 { font-size: calc(28px * var(--country-type-scale, 1)); }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-entry-card { padding: 22px; }
  :is(#japan-entry-types, #panama-key-points) .jp-entry-card-label { font-size: calc(10px * var(--country-type-scale, 1)); }
}
