/* Keep the localized site in its original light appearance on every device. */
:root,
html {
  color-scheme: light;
  color-scheme: light only;
}

html,
body {
  background-color: #fff;
}

/* The navigation always sits on its own white surface, including fullscreen heroes. */
.ss-header, .ss-header .ss-header-bar { background-color: #fff !important; }
.ss-header :is(.ss-gnb-link, .ss-util-btn) { color: #111 !important; }
.ss-header .ss-logo img { filter: brightness(0) !important; }

.ss-footer .ss-footer-map { display: block; position: relative; order: 4; margin-block: 1rem; }
.ss-footer-map iframe, .hi-map iframe {
  display: block; width: 100%; height: 100%; border: 0;
}
.ss-footer-map iframe { height: auto; aspect-ratio: 2.55; min-height: 12rem; border-radius: 1rem; }
.ss-footer-map .ss-map-link {
  display: inline-block; margin-top: .5rem; color: #343434; text-decoration: underline;
}
.hi-cta .hi-cta-box { text-wrap: pretty; word-break: normal; overflow-wrap: break-word; }
.hi-cta .hi-cta-t, .hi-cta .hi-cta-d { text-wrap: balance; hyphens: none; }
.hi-cta .hi-cta-d { color: #46464a; }
.hi-cta .hi-cta-b { min-height: 3.5rem; height: auto; padding: .85rem 1rem; line-height: 1.3; text-align: center; }
@media (min-width: 768px) {
  .ss-footer .ss-footer-map { margin: 0; }
  .hi-cta { display: grid; grid-template-columns: 54% 46%; min-height: clamp(32rem, 39vw, 47rem); background: #f5f4f8; text-align: start; }
  .hi-cta .hi-cta-bg { position: relative; inset: auto; grid-column: 1; grid-row: 1; height: 100%; min-width: 0; }
  .hi-cta .hi-cta-bg img { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; object-position: 42% center; }
  .hi-cta .hi-cta-bg::after { content: ""; position: absolute; inset: 0 0 0 auto; width: 9%; background: linear-gradient(90deg, transparent, #f5f4f8); }
  .hi-cta > .container { grid-column: 2; grid-row: 1; display: block; align-self: center; max-width: 39rem; margin: 0; padding: clamp(2rem, 4vw, 5rem) clamp(2rem, 6vw, 6rem) clamp(2rem, 4vw, 5rem) 1.5rem; }
  .hi-cta .hi-cta-box { width: auto; padding: 0; }
}
.ss-header .ss-bar { background-color: #fff !important; color: #222 !important; border-bottom-color: #eee; }
.cm-view-body .notice-source-note { margin: 0 0 1.25rem; border-inline-start: 3px solid #a99bac; padding: .75rem 1rem; background: #f6f3f6; color: #373039; line-height: 1.5; }

@media (max-width: 767.98px) {
  .ss-footer-bottom ul { flex-wrap: wrap; row-gap: .5rem; }
}
