@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

html {height:100%;}
body {
    background-color: #050505;
    color: #FFFFFF;
    font-family: 'Plus Jakarta Sans', sans-serif;
    padding-top: 80px; /* Header Space */
}

:root {
    --vivid-pink: #FF007A;
    --vivid-yellow: #FFD600;
    --vivid-blue: #00F0FF;
    --vivid-purple: #BC00FF;
}

@media (max-width: 1024px) {
    * {
        -webkit-tap-highlight-color : transparent;
    }

    body {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    input, textarea, [contenteditable="true"], .selectable {
        -webkit-user-select: text;
        -moz-user-select: text;
        -ms-user-select: text;
        user-select: text;
    }
}

* {
    box-sizing: border-box;
    word-break: keep-all;
}

*:focus {
  outline: none;
}

a {line-height: 1;}
a:link {text-decoration: none;}
a:visited { text-decoration: none;}
a:hover { text-decoration: none;}

input, textarea {outline:none; font-size: 15px;}
ul {list-style: none; margin:0; padding:0;}
h1, h2, p {margin:0;}
button {
    cursor: pointer;
    padding: 0;
    margin: 0;
    background-color: transparent;
    border: 0;
    color:#fff;
}

input[type=checkbox], input[type=radio] {
  vertical-align: middle;
  position: relative;
  bottom: 1px;
}

input[type=radio] {
  bottom: 2px;
}

.align-left {text-align:left !important;}
.align-right {text-align:right !important;}
.align-center {text-align:center !important;}

.fnt-sz-11 {font-size:11px;}
.fnt-sz-12 {font-size:12px;}
.fnt-sz-13 {font-size:13px;}
.fnt-sz-15 {font-size:15px;}
.fnt-sz-16 {font-size:16px;}
.fnt-sz-18 {font-size:18px;}
.fnt-sz-25 {font-size:25px;}

.mgb-2 {margin-bottom:2px;}
.mgb-4 {margin-bottom:4px;}
.mgb-4 {margin-bottom:4px;}
.mgb-5 {margin-bottom:5px;}
.mgb-6 {margin-bottom:6px;}
.mgb-7 {margin-bottom:7px;}
.mgb-8 {margin-bottom:8px;}
.mgb-10 {margin-bottom:10px;}
.mgb-15 {margin-bottom:15px;}
.mgb-20 {margin-bottom:20px;}
.mgb-24 {margin-bottom:24px;}
.mgb-25 {margin-bottom:25px;}
.mgb-30 {margin-bottom:30px;}
.mgb-37 {margin-bottom:37px;}
.mgb-40 {margin-bottom:40px !important;}
.mgb-50 {margin-bottom:50px;}
.mgb-60 {margin-bottom:60px;}
.mgt-0 {margin-top:0px !important;}
.mgt-2 {margin-top:2px !important;}
.mgt-5 {margin-top:5px !important;}
.mgt-7 {margin-top:7px !important;}
.mgt-8 {margin-top:8px !important;}
.mgt-10 {margin-top:10px !important;}
.mgt-12 {margin-top:12px !important;}
.mgt-15 {margin-top:15px !important;}
.mgt-18 {margin-top:18px !important;}
.mgt-20 {margin-top:20px !important;}
.mgt-24 {margin-top:24px;}
.mgt-25 {margin-top:25px !important;}
.mgt-30 {margin-top:30px;}
.mgt-35 {margin-top:35px;}
.mgt-40 {margin-top:40px;}
.mgt-50 {margin-top:50px;}
.mgt-60 {margin-top:60px;}
.mgt-80 {margin-top:80px;}
.mgt-100 {margin-top:100px;}
.mgl-5 {margin-left:5px;}
.mgl-6 {margin-left:6px;}
.mgl-7 {margin-left:7px;}
.mgl-8 {margin-left:8px;}
.mgl-10 {margin-left:10px;}
.mgl-15 {margin-left:15px;}
.mgl-20 {margin-left:20px !important;}
.mgl-25 {margin-left:25px}
.mgl-30 {margin-left:30px;}
.mgl-40 {margin-left:40px;}
.mgl-50 {margin-left:50px;}
.mgr-5 {margin-right:5px;}
.mgr-7 {margin-right:7px;}
.mgr-10 {margin-right:10px;}
.mgr-20 {margin-right:20px;}
.mgr-30 {margin-right:30px;}
.mgr-40 {margin-right:40px;}

.mgb-auto {margin-bottom:auto !important;}

.pd-5 {padding:5px;}
.pd-10 {padding:10px;}
.pd-20 {padding:20px;}
.pdt-5 {padding-top:5px !important;}
.pdt-10 {padding-top:10px !important;}
.pdt-20 {padding-top:20px !important;}
.pdb-10 {padding-bottom:10px !important;}
.pdb-20 {padding-bottom:20px !important;}
.pdb-30 {padding-bottom:30px;}
.pdlr-3 {padding:0 3px;}
.pdtb-10 {padding:10px 0px !important;}
.pdr-0 {padding-right:0;}
.pdl-20 {padding-left:20px;}
.pdb-50 {padding-bottom:50px;}

.inp-required {color:red;}

/* 페이지 공통 정돈 */
.page-container {
  position: relative;
  width: 100%;
  min-height: 100vh;
}
.page-wrap {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}

/* Global Header Style */
header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(10, 10, 12, 0.8);
    backdrop-filter: blur(20px);
}

header.scrolled {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    background: rgba(10, 10, 12, 0.95);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.nav-link {
    font-size: 0.875rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    transition: all 0.3s ease;
}

.nav-link:hover {
    color: white;
}

.nav-link.active {
    color: var(--vivid-pink);
}
