:root {
  --green: #0f7a5a;
  --green-dark: #09543e;
  --gold: #f5b941;
  --amber: #ffde8a;
  --red: #e84444;
  --blue: #246bfe;
  --ink: #172033;
  --muted: #647084;
  --paper: #ffffff;
  --bg: #eef3f7;
  --line: #dbe4ee;
  --soft-green: #e9f7f0;
  --soft-gold: #fff7df;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #d9e2ec;
  color: var(--ink);
  line-height: 1.6;
}

[hidden] {
  display: none !important;
}

a {
  color: inherit;
}

.site {
  max-width: 430px;
  min-height: 100vh;
  margin: 0 auto;
  padding-bottom: 88px;
  background: var(--bg);
  box-shadow: 0 0 26px rgba(16, 24, 40, .14);
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ==================================
   header
================================== */
.header {
  position: sticky;
  top: 0;
  z-index: 40;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 14px;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(10px);
}

.logo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  font-weight: 1000;
  color: var(--ink);
}

.logoMark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--gold), #f08d27);
  color: #fff;
  box-shadow: 0 3px 0 #b46612;
}

.logoText {
  font-size: 14px;
  letter-spacing: 0;
}

.menuButton {
  display: inline-grid;
  align-content: center;
  gap: 5px;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 7px;
  background: var(--green);
  padding: 0 10px;
  box-shadow: 0 4px 0 var(--green-dark);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.menuButton span:not(.visually-hidden) {
  display: block;
  width: 100%;
  height: 3px;
  border-radius: 999px;
  background: #fff;
  transition: transform .2s ease, opacity .2s ease;
}

.menuButton:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 6px 0 var(--green-dark), 0 8px 16px rgba(16, 24, 40, .18);
}

.menuButton:active {
  transform: translateY(2px);
  box-shadow: 0 2px 0 var(--green-dark);
}

.menuButton.is-open span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.menuButton.is-open span:nth-child(2) {
  opacity: 0;
}

.menuButton.is-open span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

.headerMenu {
  position: absolute;
  top: calc(100% + 8px);
  right: 10px;
  width: min(270px, calc(100vw - 28px));
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 32px rgba(16, 24, 40, .18);
}

.headerMenu a {
  display: block;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
  transition: background-color .18s ease, color .18s ease, padding-left .18s ease;
}

.headerMenu a:last-child {
  border-bottom: 0;
}

.headerMenu a:hover {
  padding-left: 20px;
  background: var(--soft-green);
  color: var(--green);
}

/* ==================================
   FV
================================== */
.fv{
  padding: 0;
  position: relative;
}
.fv .container-fluid{
  padding: 0;
}
.fv h1 {
  margin-bottom: 0; 
}

.fv .container-fluid {
  padding: 0;
}
.fvCtaGrid {
  position: absolute; /* ★追加: 要素を浮かせて画像の上に重ねる */
  bottom: 55px;       /* ★追加: 画像下端からの位置。完成イメージに合わせて10px〜5%など調整してください */
  left: 0;            /* ★追加: 左端から配置 */
  width: 100%;        /* ★追加: 横幅を画面いっぱいに */
  padding: 0 10px;    /* ★追加: 左右の余白（画面端にボタンがくっつかないように調整） */
  z-index: 10;        /* ★追加: 画像より前面（上）に表示させる */
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.fvCta {
  position: relative;
  display: grid;
  grid-template-columns: 38px 1fr 16px;
  align-items: center;
  gap: 8px;
  min-height: 72px;
  padding: 0.2rem;
  border: 3px solid #fff;
  border-radius: 16px;
  color: #fff;
  text-decoration: none;
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .35),
    0 7px 12px rgba(0, 0, 0, .32);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.fvCta::after {
  content: "";
  width: 14px;
  height: 14px;
  border-top: 6px solid #fff;
  border-right: 6px solid #fff;
  transform: rotate(45deg);
}

.fvCta.primary {
  background: linear-gradient(145deg, #ff8c00 0%, #ff2a00 52%, #dc0000 100%);
}

.fvCta.secondary {
  background: linear-gradient(145deg, #178cff 0%, #005bd1 58%, #003c96 100%);
}

.fvCta:hover {
  color: #fff;
  transform: translateY(-3px);
  filter: brightness(1.05);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .45),
    0 12px 18px rgba(0, 0, 0, .34);
}

.fvCta:active {
  transform: translateY(2px);
  box-shadow:
    inset 0 2px 0 rgba(255, 255, 255, .25),
    0 4px 8px rgba(0, 0, 0, .28);
}

.ctaText {
  display: grid;
  gap: 1px;
  min-width: 0;
  text-shadow: 0 3px 0 rgba(0, 0, 0, .22);
}

.ctaText em {
  color: #ffed26;
  font-size: 15px;
  line-height: 1.05;
  font-style: normal;
  font-weight: 1000;
}

.ctaText strong {
  color: #fff;
  font-size: 21px;
  line-height: 1.05;
  font-weight: 1000;
}

.ctaIcon {
  position: relative;
  width: 34px;
  height: 50%;
}

.ctaIcon.crown {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px; /* アイコンの大きさに合わせて数値を調整してください */
}

.sectionBlock,
.filterSection {
  padding: 18px 14px;
  scroll-margin-top: 66px;
}

#ranking,
#rank1,
#rank2,
#rank3 {
  scroll-margin-top: 66px;
}

h2 {
  margin: 0 0 13px;
  font-size: 20px;
  line-height: 1.28;
  letter-spacing: 0;
}

.compareTable {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 28px;
  border-top: 1px solid #526071;
  border-left: 1px solid #526071;
  background: #fff;
}

.compareTable::after {
  content: "";
  position: absolute;
  top: -2px;
  bottom: -2px;
  left: -2px;
  width: calc(33.3333% + 2px);
  border: 3px solid var(--green);
  pointer-events: none;
  z-index: 6;
}

.compareHead,
.compareCell,
.compareCtaCell {
  --cell-bg: #fff;
  border-right: 1px solid #526071;
  border-bottom: 1px solid #526071;
  text-align: center;
}

.compareHead {
  position: relative;
  padding: 16px 5px 8px;
}

.compareHead.rank1,
.compareCell.rank1,
.compareCtaCell.rank1 {
  --cell-bg: var(--soft-gold);
  background: var(--soft-gold);
}

.rankBadge {
  position: absolute;
  top: -20px;
  left: 50%;
  z-index: 8;
  transform: translateX(-50%);
  padding: 3px 14px;
  border: 2px solid #fff;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(16, 24, 40, .2);
  font-size: 13px;
  font-weight: 1000;
  white-space: nowrap;
}

.rankBadge.gold {
  color: #4b2e00;
  background: var(--gold);
}

.rankBadge.silver {
  color: #344054;
  background: #e6e9ef;
}

.rankBadge.bronze {
  color: #fff;
  background: #b87932;
}

.compareThumb {
  display: block;
  width: 86%;
  aspect-ratio: 1;
  margin: 0 auto;
  border-radius: 7px;
  background: #eef4f8;
  object-fit: contain;
}

.compareHead p {
  margin: 7px 0 0;
  font-size: 11px;
  font-weight: 1000;
  line-height: 1.25;
}

.rowTitle {
  grid-column: 1 / -1;
  padding: 7px 0;
  border-right: 1px solid #526071;
  border-bottom: 1px solid #526071;
  background: #0740a2;
  color: #fff;
  font-size: 14px;
  font-weight: 1000;
  text-align: center;
}

.compareCell {
  display: grid;
  place-items: center;
  gap: 4px;
  min-height: 78px;
  padding: 9px 4px;
  background: var(--cell-bg);
}

.compareCell strong {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.compareCell.bottom {
  padding-bottom: 11px;
}

.compareCtaTitle {
  grid-column: 1 / -1;
  padding: 4px 8px;
  border-right: 1px solid #526071;
  border-bottom: 1px solid #526071;
  background: #ff6600;
  color: #fff;
  text-align: center;
  font-size: 15px;
  font-weight: 1000;
  line-height: 1.25;
}

.compareCtaCell {
  display: grid;
  place-items: center;
  min-height: 78px;
  padding: 13px 5px;
  background: var(--cell-bg);
}

.compareCtaButton {
  display: inline-grid;
  place-items: center;
  width: min(104px, 92%);
  min-height: 52px;
  padding: 9px 12px 11px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(180deg, #ff6262 0%, #e91f2f 52%, #b80718 100%);
  color: #fff;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, .35), 0 5px 0 #8f0714, 0 10px 18px rgba(232, 31, 47, .24);
  text-align: center;
  text-decoration: none;
  font-size: 18px;
  font-weight: 1000;
  line-height: 1;
  animation: miniCtaPulse 1.25s ease-in-out infinite;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.compareCtaButton:hover {
  animation-play-state: paused;
  color: #fff;
  filter: brightness(1.06);
  transform: translateY(-2px);
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, .45), 0 8px 0 #8f0714, 0 13px 24px rgba(232, 31, 47, .34);
}

.compareCtaButton:active {
  animation-play-state: paused;
  transform: translateY(3px);
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, .25), 0 1px 0 #8f0714, 0 5px 12px rgba(232, 31, 47, .24);
}

.mark {
  position: relative;
  display: inline-block;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
}

.mark.double {
  background: var(--cell-bg);
  border: 3px solid var(--red);
  border-radius: 50%;
}

.mark.double::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  background: var(--cell-bg);
  border: 3px solid var(--red);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.mark.circle {
  background: var(--cell-bg);
  border: 4px solid var(--blue);
  border-radius: 50%;
}

.mark.triangle {
  width: 38px;
  height: 34px;
  background: #25395f;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.mark.triangle::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 6px;
  width: 19px;
  height: 18px;
  background: var(--cell-bg);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  transform: translateX(-50%);
}

.filterBox {
  overflow: hidden;
  border: 2px solid #0740a2;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 22px rgba(16, 24, 40, .08);
}

.filterHeader {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 18px;
  background: #0740a2;
  color: #fff;
}

.filterHeader h2 {
  margin: 0;
  font-size: 23px;
}

.filterIcon {
  position: relative;
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border: 3px solid var(--gold);
  border-radius: 50%;
}

.filterIcon::after {
  content: "";
  position: absolute;
  right: -8px;
  bottom: -5px;
  width: 11px;
  height: 3px;
  border-radius: 999px;
  background: var(--gold);
  transform: rotate(45deg);
}

.filterPanel {
  padding: 4px 11px 0;
}

.filterGroup {
  margin: 0;
  padding: 7px 0 16px;
  border: 0;
  border-bottom: 1px dashed var(--line);
}

.filterGroup:last-child {
  border-bottom: 0;
}

.filterGroup legend {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0 6px;
  padding-left: 16px;
  font-size: 17px;
  font-weight: 1000;
}

.filterGroup legend::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 5px;
  border-radius: 999px;
  background: var(--gold);
}

.radioGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.filterOption {
  display: inline-grid;
  grid-template-columns: 17px 1fr;
  align-items: center;
  gap: 5px;
  min-height: 31px;
  padding: 4px 6px;
  border: 1px solid #e7edf4;
  border-radius: 7px;
  background: #fbfdff;
  color: var(--ink);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.filterOption.active {
  border-color: rgba(15, 122, 90, .42);
  background: var(--soft-green);
}

.filterOption input {
  appearance: none;
  width: 15px;
  height: 15px;
  margin: 0;
  border: 2px solid #8894a6;
  border-radius: 50%;
  background: #fff;
}

.filterOption input:checked {
  border-color: var(--green);
  background: var(--green);
  box-shadow: inset 0 0 0 4px #fff;
}

.filterOption span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.filterMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px 16px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.filterSearchButton {
  border: 0;
  border-radius: 7px;
  background: var(--green);
  color: #fff;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 1000;
  cursor: pointer;
  box-shadow: 0 4px 0 var(--green-dark);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.filterSearchButton:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 6px 0 var(--green-dark), 0 8px 16px rgba(16, 24, 40, .16);
}

.filterSearchButton:active {
  transform: translateY(2px);
  box-shadow: 0 2px 0 var(--green-dark);
}

.rankingTitle {
  text-align: center;
  font-size: 23px;
}

.ranking {
  display: grid;
  gap: 13px;
}

.rankCard {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.rankCard.top {
  border: 2px solid #0740a2;
  box-shadow: 0 12px 24px rgba(16, 24, 40, .10);
}

.rankHead {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 9px;
  align-items: center;
  padding: 10px;
  background: #0740a2;
  color: #fff;
}

.rankCard:not(.top) .rankHead {
  background: #263244;
}

.rankNo {
  display: grid;
  place-items: center;
  min-height: 44px;
  border-radius: 7px;
  background: rgba(255, 255, 255, .18);
  font-size: 19px;
  font-weight: 1000;
  text-align: center;
}

.rankHead h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
  letter-spacing: 0;
}

.catch {
  margin: 3px 0 0;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.rankBody {
  padding: 10px;
}

.visualDetail {
  display: grid;
  gap: 10px;
}

.brandSlider {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 696px;
  aspect-ratio: 696 / 392;
  max-height: 392px;
  margin: 0 auto;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #eef4f8;
}

.brandSliderTrack {
  display: flex;
  width: 100%;
  height: 100%;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.brandSliderTrack::-webkit-scrollbar {
  display: none;
}

.brandSlide {
  position: relative;
  display: grid;
  flex: 0 0 100%;
  min-width: 100%;
  height: 100%;
  place-items: center;
  scroll-snap-align: start;
}

.brandImage {
  display: block;
  width: 100%;
  max-width: 696px;
  aspect-ratio: 696 / 392;
  max-height: 392px;
  margin: 0 auto;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #eef4f8;
  object-fit: contain;
}

.brandSlide .brandImage {
  height: 100%;
  max-height: none;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.infoSlide {
  align-content: center;
  justify-items: start;
  padding: 16px 18px 28px;
  background: linear-gradient(135deg, #f8fbfd 0%, #edf6f1 100%);
  color: #263244;
  text-align: left;
}

.infoSlide::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 12px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: rgba(13, 126, 88, .12);
}

.infoSlideLabel {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  background: var(--green);
  color: #fff;
  font-size: 12px;
  font-weight: 1000;
}

.infoSlide strong {
  display: block;
  margin-top: 8px;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 1000;
}

.infoSlide p {
  margin: 7px 0 0;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 800;
}

.brandSliderButton {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(38, 50, 68, .72);
  box-shadow: 0 2px 8px rgba(16, 24, 40, .18);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background .18s ease, opacity .18s ease;
}

.brandSliderButton:hover {
  background: rgba(13, 126, 88, .92);
}

.brandSliderButton::before {
  content: "";
  width: 9px;
  height: 9px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.brandSliderButton.prev {
  left: 8px;
}

.brandSliderButton.prev::before {
  transform: translateX(2px) rotate(-135deg);
}

.brandSliderButton.next {
  right: 8px;
}

.brandSliderButton.next::before {
  transform: translateX(-2px) rotate(45deg);
}

.brandSliderDots {
  position: absolute;
  left: 50%;
  bottom: 8px;
  z-index: 3;
  display: flex;
  gap: 5px;
  transform: translateX(-50%);
}

.brandSliderDot {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(38, 50, 68, .28);
  cursor: pointer;
}

.brandSliderDot.active {
  width: 18px;
  border-radius: 999px;
  background: var(--green);
}

.detailTable {
  overflow: hidden;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  font-size: 13px;
}

.detailRow {
  display: grid;
  grid-template-columns: 112px 1fr;
  border-bottom: 1px solid var(--line);
}

.detailRow:last-child {
  border-bottom: 0;
}

.detailRow dt,
.detailRow dd {
  margin: 0;
  padding: 7px 8px;
}

.detailRow dt {
  background: #f4f8fb;
  font-weight: 1000;
}

.detailRow dd {
  color: #314052;
  font-weight: 800;
}

.miniCta {
  display: block;
  margin: 14px 0;
  padding: 15px 12px;
  border-radius: 7px;
  background: linear-gradient(180deg, #ff6262 0%, #e91f2f 52%, #b80718 100%);
  color: #fff;
  box-shadow: 0 5px 0 #8f0714, 0 10px 20px rgba(232, 31, 47, .28);
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  font-weight: 1000;
  letter-spacing: 0;
  animation: miniCtaPulse 1.25s ease-in-out infinite;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.miniCta:hover {
  animation-play-state: paused;
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 8px 0 #8f0714, 0 13px 24px rgba(232, 31, 47, .34);
}

.miniCta:active {
  animation-play-state: paused;
  transform: translateY(3px);
  box-shadow: 0 1px 0 #8f0714, 0 5px 12px rgba(232, 31, 47, .24);
}

@keyframes miniCtaPulse {
  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.055);
  }
}

.pointsTitle,
.servicesTitle {
  margin: 10px -10px 7px;
  padding: 6px 8px;
  background: var(--soft-green);
  color: var(--green-dark);
  text-align: center;
  font-size: 13px;
  font-weight: 1000;
}

.points {
  margin: 0;
  padding-left: 19px;
  color: #344054;
}

.points li {
  margin: 4px 0;
  font-size: 13px;
  font-weight: 750;
}

.services {
  margin: 0;
  color: #344054;
  font-size: 13px;
  font-weight: 850;
}

.noResults {
  margin: 0;
  padding: 18px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  text-align: center;
  font-size: 13px;
  font-weight: 900;
}

.footer {
  padding: 23px 14px 28px;
  background: #111827;
  color: #fff;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
}

.sticky {
  position: fixed;
  left: 50%;
  bottom: 0;
  z-index: 35;
  display: grid;
  width: min(430px, 100%);
  padding: 8px;
  transform: translateX(-50%);
  border-top: 1px solid var(--line);
  background: rgba(255, 255, 255, .95);
}

.sticky a {
  padding: 14px 12px 16px;
  border-radius: 8px;
  background: linear-gradient(180deg, #f5b941 0%, #ef8d1d 100%);
  color: #382300;
  box-shadow: 0 5px 0 #9a5b0e;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  font-weight: 1000;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.sticky a:hover {
  transform: translateY(-3px);
  filter: brightness(1.05);
  box-shadow: 0 8px 0 #9a5b0e, 0 10px 20px rgba(16, 24, 40, .18);
}

.sticky a:active {
  transform: translateY(3px);
  box-shadow: 0 2px 0 #9a5b0e;
}

@media (max-width: 360px) {
  .hero h1 {
    font-size: 32px;
  }

  .heroCta strong {
    font-size: 16px;
  }

  .radioGrid {
    grid-template-columns: 1fr;
  }

  .detailRow {
    grid-template-columns: 96px 1fr;
  }
}
