@charset "utf-8";
/* 송도마디 default.css의 SUIT / reset 방식을 필요한 항목으로 정리했습니다. */
@font-face { font-family: 'SUIT'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/SUIT-Regular.woff2') format('woff2'); }
@font-face { font-family: 'SUIT'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/SUIT-Medium.woff2') format('woff2'); }
@font-face { font-family: 'SUIT'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/SUIT-SemiBold.woff2') format('woff2'); }
@font-face { font-family: 'SUIT'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/SUIT-Bold.woff2') format('woff2'); }
@font-face { font-family: 'SUIT'; font-style: normal; font-weight: 800; font-display: swap; src: url('../fonts/SUIT-ExtraBold.woff2') format('woff2'); }
* { box-sizing: border-box; }
html { color-scheme: light; scrollbar-color: #d5d5d5 #fff; scrollbar-width: thin; }
html::-webkit-scrollbar { width: 10px; height: 10px; }
html::-webkit-scrollbar-track { background: #fff; }
html::-webkit-scrollbar-thumb { background: #d5d5d5; border: 2px solid #fff; border-radius: 8px; }
body { margin: 0; font-family: 'SUIT', 'Malgun Gothic', sans-serif; color: #282828; line-height: 1.4; word-break: keep-all; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { border: 0; vertical-align: top; max-width: 100%; }
h1, h2, h3, p, ul, ol, dl, dt, dd, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { padding: 0; border: 0; background: none; cursor: pointer; }
button:disabled { cursor: default; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline: 2px solid #173e75; outline-offset: 4px; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip { position: absolute; left: 20px; top: -70px; z-index: 200; padding: 12px 18px; background: #173e75; color: #fff; }
.skip:focus { top: 10px; }
@keyframes rise-in {
 from { opacity: 0; transform: translate3d(0, 56px, 0); }
 to { opacity: 1; transform: translate3d(0, 0, 0); }
}
.reveal { opacity: 0; transform: translate3d(0, 56px, 0); }
.reveal.is-in { animation: rise-in 1s ease forwards; }
@media (prefers-reduced-motion: reduce) {
 .reveal, .reveal.is-in { opacity: 1; transform: none; animation: none; }
 .step:hover, .contact-actions > *:hover { translate: none; }
}
