:focus:not(:focus-visible) { outline: none !important; }
.button:focus:not(:focus-visible) { box-shadow: none !important; }
#ota .ms-detail-link { color: #0131ff; text-decoration: none; white-space: nowrap; }
#ota .ms-detail-link:hover { color: #0022b8; text-decoration: underline; }
.detail-dialog, .detail-dialog * { box-sizing: border-box; }  
.detail-dialog { border: 0; color: #1e1e1e; background: #fff; padding: 0; overscroll-behavior: contain; }
.detail-dialog::backdrop { background: rgba(0,0,0,.48); backdrop-filter: blur(5px); }
.dialog-close { display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; cursor: pointer; z-index: 1; }
.dialog-close svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.service-detail { width: 980px; max-width: calc(100% - 48px); height: 500px; max-height: calc(100svh - 80px); border-radius: 20px; overflow: hidden; }
.service-detail[open] { display: flex; flex-direction: column; }
.service-detail .detail-scroll { width: 100%; height: 100%; min-height: 0; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; }
.service-detail .dialog-content { flex: none; width: 100%; padding: 60px 125px; margin-block: auto; }
.service-detail .dialog-content h2 { font-family: inherit; font-weight: 600; font-size: 21px; line-height: 25px; letter-spacing: normal; color: #040813; margin: 0; }
.service-detail .dialog-content h2:focus { outline: none; }
.service-detail .dialog-content p { font-family: inherit; font-weight: 600; font-size: 17px; line-height: 25px; letter-spacing: normal; color: #555d6c; margin: 14px 0 0; }
.service-detail .detail-label { color: #1e1e1e; font-weight: inherit; }
.service-detail .detail-ending { white-space: nowrap; }
.service-detail .dialog-close { position: absolute; top: 15px; right: 15px; width: 40px; height: 40px; margin: 0; border: 4px solid transparent; background: #e5eaf3; background-clip: padding-box; color: #040813; }
.service-detail .dialog-close:hover { background-color: #b6caff; }
.service-detail .dialog-close:active { background-color: #a3bcfa; }
@media (max-width: 1068px) {
  .service-detail { width: 692px; }
  .service-detail .dialog-content { padding-inline: 75px 80px; }
}
@media (max-width: 734px) {
  .service-detail { width: 100%; max-width: none; height: 100dvh; max-height: none; margin: 0; border-radius: 0; }
  .service-detail .detail-scroll { display: block; }
  .service-detail .dialog-content { width: min(275px, 87.5%); padding: 75px 0 52px; margin: 0 auto; }
  .service-detail .dialog-content h2, .service-detail .dialog-content p { font-size: 17px; line-height: 1.2353641176; }
  .service-detail .dialog-content p { margin-top: 26px; }
}
