.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

.npay-hero{ padding-block: var(--sp-7) var(--sp-6); }
.npay-hero h1{ margin-block: var(--sp-3) var(--sp-3); }
.npay-hero p.lead{ margin-bottom: var(--sp-5); }
.npay{ padding-top: var(--sp-5); }
@media (max-width:760px){ .npay-hero{ padding-block: var(--sp-6); } .npay{ padding-top: var(--sp-5); } }
.npay-meta{ display:flex; flex-wrap:wrap; gap:8px; }
.npay-meta span{ background: var(--n-0); border:1px solid var(--n-300); border-radius:999px; padding:4px 12px;
  font-size: var(--fs-sm); color: var(--n-800); font-weight:700; }
.npay-tools{ margin-bottom: var(--sp-6); }
.npay-find input{ width:100%; font:inherit; font-size: var(--fs-md); padding:14px 18px; border:1px solid var(--n-300);
  border-radius:999px; background: var(--n-0); color: var(--n-900); }
.npay-find input:focus{ outline:3px solid var(--o-700); outline-offset:2px; border-color: var(--o-500); }
.npay-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top: var(--sp-4); }
.npay-chips a{ background: var(--n-0); border:1px solid var(--n-300); border-radius:999px; padding:7px 14px;
  font-size: var(--fs-sm); font-weight:800; color: var(--n-800); }
.npay-chips a span{ color: var(--o-700); margin-left:2px; }
.npay-chips a:hover{ border-color: var(--o-400); }
.npay-chips a[hidden]{ display:none; }
.npay-found{ margin:8px 4px 0; font-size: var(--fs-sm); color: var(--n-600); min-height:1em; overflow-wrap:anywhere;
  scroll-margin-top: 96px; }
.npay-found:focus{ outline:none; }
.npay-none{ margin: var(--sp-4) 0 0; padding: var(--sp-5); border:1px dashed var(--n-300); border-radius: var(--r-md);
  background: var(--n-0); color: var(--n-800); font-size: var(--fs-sm); text-align:center; }
.npay-none-sub{ display:block; margin-top:4px; color: var(--n-600); }
.npay-pick{ margin-bottom: var(--sp-6); display:grid; grid-template-columns: auto minmax(0, 1fr); column-gap: var(--sp-4); align-items:baseline; }
.npay-pick h2{ font-size: var(--fs-md); margin:0 0 10px; }
.npay-pick-note{ margin:0 0 10px; font-size: var(--fs-sm); color: var(--n-600); }
.npay-pick ul{ grid-column: 1 / -1; list-style:none; margin:0; padding:0; display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:10px; }
.npay-pick li{ background: var(--n-0); border:1px solid var(--n-200); border-radius: var(--r-md); padding:14px 16px; }
.npay-pick .nm{ display:block; font-weight:800; color: var(--n-900); }
.npay-pick .sub{ display:block; font-size: var(--fs-xs); color: var(--n-600); margin-top:2px; }
.npay-pick .nm, .npay-pick .sub{ overflow-wrap:break-word; overflow-wrap:anywhere; }
.npay-pick .pr{ display:block; margin-top:8px; font-weight:800; font-size: var(--fs-md); color: var(--o-700); }
@media (max-width:640px){ .npay-pick ul{ grid-template-columns: repeat(2, minmax(0, 1fr)); order:1; }
  .npay-pick{ grid-template-columns: minmax(0, 1fr); } .npay-pick-note{ order:2; margin:10px 0 0; } }
@media (max-width:20em){ .npay-pick ul{ grid-template-columns: minmax(0, 1fr); } }
.npay-sec{ margin-bottom: var(--sp-7); padding:0; scroll-margin-top: 96px; }
.npay-sec-head{ display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; }
.npay-sec h2{ font-size: var(--fs-lg); margin:0; overflow-wrap:anywhere; }
.npay-sec .cnt{ font-size: var(--fs-sm); font-weight:800; color: var(--o-700); }
.npay-note{ margin: var(--sp-2) 0 0; font-size: var(--fs-sm); color: var(--n-600); }
.npay-sec > .npay-clinic-list{ margin-top: var(--sp-4); }
.npay-sec .npay-clinic-list li.r1{ border-top:0; }
@media (min-width:901px){ .npay-sec > .npay-clinic-list > li.r2{ border-top:0; } }
.npay-tbd{ color: var(--o-700); font-weight:700; font-size: var(--fs-sm); white-space:nowrap; }
.npay-won{ white-space:nowrap; }
.npay-clinic-list li[hidden], .npay-sec[hidden], .npay-pick[hidden], .npay-part[hidden]{ display:none !important; }
.npay-none a{ color: var(--o-700); font-weight:800; white-space:nowrap; }
.npay-foot{ margin-top: var(--sp-6); font-size: var(--fs-sm); color: var(--n-600); }
.npay-foot p{ margin:4px 0; }
.npay-foot a{ color: var(--o-700); font-weight:700; }
[data-npay-date]:empty{ display:none; }

.npay-clinic-list{ list-style:none; margin: var(--sp-5) 0 0; padding: var(--sp-2) var(--sp-6);
  background: var(--n-0); border:1px solid var(--n-200); border-radius: var(--r-lg, 20px); box-shadow: var(--sh-2);
  display:grid; grid-template-columns: 1fr 1fr; column-gap: var(--sp-8); }
.npay-clinic-list li{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap: var(--sp-4);
  padding: 14px 0; border-top:1px solid var(--n-200); }
.npay-clinic-list li:first-child{ border-top:0; }
.npay-clinic-list li:only-child{ grid-column: 1 / -1; }
.npay-clinic-list li > span:first-child{ flex:1 1 0%; min-width:min(8em, 100%); overflow-wrap:break-word; overflow-wrap:anywhere; }
.npay-clinic-list li b{ display:block; color: var(--n-900); }
.npay-clinic-list li small{ display:block; margin-top:2px; font-size: var(--fs-xs); color: var(--n-600); }
.npay-clinic-list li .pr{ margin-left:auto; font-weight:800; color: var(--n-900); font-variant-numeric: tabular-nums; }
@media (max-width:900px){ .npay-clinic-list{ grid-template-columns: 1fr; padding: var(--sp-2) var(--sp-5); } }
.js .npay-late{ visibility:hidden; animation: npay-late 0s 3s forwards; }
@keyframes npay-late{ to{ visibility:visible; } }

.npay-parts{ display:grid; grid-template-columns: 1fr 1fr; gap: var(--sp-5); margin-top: var(--sp-5); }
.npay-part{ background: var(--n-0); border:1px solid var(--n-200); border-radius: var(--r-lg, 20px);
  padding: var(--sp-5) var(--sp-6) var(--sp-2); }
.npay-sec .npay-part{ box-shadow: var(--sh-2); }
.npay-part h3{ display:flex; align-items:baseline; gap:8px; margin:0; padding-bottom: var(--sp-3);
  border-bottom:2px solid var(--n-900); font-size: var(--fs-md); }
.npay-part h3 span{ font-size: var(--fs-sm); font-weight:800; color: var(--o-700); }
.npay-part .npay-clinic-list{ margin:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; grid-template-columns: 1fr; }
@media (max-width:900px){ .npay-parts{ grid-template-columns: 1fr; } .npay-part{ padding: var(--sp-4) var(--sp-5) var(--sp-1); } }
.npay-sec .npay-parts{ margin-top: var(--sp-4); }
