/* Project-owned provider badges: one shared layout, no iframe or nested provider card. */
.ajr-ratings { display:flex; flex-wrap:wrap; align-items:center; gap:12px; max-width:100%; }
.ajr-ratings .ajr-badge { box-sizing:border-box; display:flex; align-items:center; gap:9px; flex:0 0 174px; width:174px; height:56px; padding:9px 10px; border:1px solid #e3e7ed; border-radius:9px; background:#fff; color:#101b30; text-decoration:none; font:400 13px/1.3 'IBM Plex Sans',Arial,sans-serif; box-shadow:0 1px 3px #101b3006; transition:border-color .2s ease,box-shadow .2s ease; }
.ajr-ratings .ajr-badge:hover { color:#101b30; border-color:#bdc9db; text-decoration:none; box-shadow:0 2px 7px #101b3010; }
.ajr-ratings .ajr-badge:focus-visible { outline:3px solid #203ddd; outline-offset:3px; }
.ajr-ratings .ajr-provider-icon { display:block; width:28px; height:28px; flex:none; object-fit:contain; }
.ajr-ratings .ajr-badge-content { display:block; flex:1; min-width:0; }
.ajr-ratings .ajr-badge-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ajr-ratings .ajr-provider-name { color:#101b30; font-size:14px; font-weight:600; line-height:1.2; white-space:nowrap; }
.ajr-ratings .ajr-value { color:#101b30; font-size:19px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums; }
.ajr-ratings .ajr-caption { display:block; margin-top:5px; color:#697687; font-size:10px; line-height:1.2; white-space:nowrap; }
.ajr-ratings .ajr-stars { display:flex; gap:1px; width:69px; height:13px; flex:none; }
.ajr-ratings .ajr-star { position:relative; display:block; flex:none; width:13px; height:13px; background:#d8dce2; -webkit-mask:url('/local/templates/adojapan-next/assets/desktop-hero/star.svg') center/contain no-repeat; mask:url('/local/templates/adojapan-next/assets/desktop-hero/star.svg') center/contain no-repeat; }
.ajr-ratings .ajr-star-fill { position:absolute; inset:0 auto 0 0; display:block; background:#ffb522; }
.ajr-ratings .ajr-unavailable { display:block; margin-top:5px; color:#697687; font-size:10px; }
.ajr-footer-row { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:26px; padding-top:22px; border-top:1px solid #dfe5ef; }
.ajr-footer-label { margin:0; color:#526484; font:500 14px/1.4 'IBM Plex Sans',Arial,sans-serif; }
.ajr-footer-strip { padding:22px 0; background:#f5f7fc; }
.ajr-footer-inner { box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; gap:18px; width:calc(100% - 64px); max-width:1316px; margin:auto; }
@media (max-width:767px) {
  .ajr-footer-row, .ajr-footer-inner { flex-direction:column; align-items:flex-start; gap:12px; }
  .ajr-footer-inner { width:calc(100% - 32px); }
  .ajr-ratings--footer { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,174px)); gap:10px; }
  .ajr-ratings--footer .ajr-badge { flex:none; width:100%; min-width:0; }
}
@media (max-width:380px) {
  .ajr-ratings--footer { gap:8px; }
  .ajr-ratings--footer .ajr-badge { gap:7px; padding-inline:9px; }
  .ajr-ratings--footer .ajr-provider-icon { width:21px; height:24px; }
  .ajr-ratings--footer .ajr-provider-name { font-size:12px; }
  .ajr-ratings--footer .ajr-value { font-size:18px; }
  .ajr-ratings--footer .ajr-badge-top { gap:5px; }
  .ajr-ratings--footer .ajr-stars { width:54px; height:10px; }
  .ajr-ratings--footer .ajr-star { width:10px; height:10px; }
  .ajr-ratings--footer .ajr-caption { font-size:9px; }
}
@media (prefers-reduced-motion:reduce) { .ajr-ratings .ajr-badge { transition:none; } }
