:root {
    --color-brand: #2f6bf0;
    --color-brand-dark: #1f52d1;
    --color-accent: #ffa733;
    --color-ink: #1f3557;
    --color-navy: #16294a;
    --color-surface: #f4f7fc;
    --brand-grad: linear-gradient(135deg, #4f8cff 0%, #2f6bf0 55%, #1a4ed0 100%);
    --navy-grad: linear-gradient(150deg, #22406e 0%, #16294a 55%, #0f1e38 100%);
}

body {
    font-family: "Pretendard", sans-serif;
    font-weight: 400;
    margin: 0;
}

::selection {
    background: #c7dbff;
    color: #1f3557;
}

/* 가로 스크롤 칩 행 (가격 필터 등) — 스크롤바 숨김 */
.chip-scroll {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.chip-scroll::-webkit-scrollbar {
    display: none;
}

/* 브랜드 그라디언트 — 로고 'W' 태그와 같은 각도/색 */
.bg-grad-brand {
    background-image: var(--brand-grad);
}

.text-grad-brand {
    background-image: var(--brand-grad);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* 히어로·푸터용 네이비 그라디언트 */
.bg-grad-navy {
    background-image: var(--navy-grad);
}

/* 네이비 패널 위에 얹는 점 격자 — 밋밋한 단색 면을 눌러 준다 */
.dot-grid {
    background-image: radial-gradient(rgba(255, 255, 255, .16) 1px, transparent 1px);
    background-size: 22px 22px;
}

/* 카드 hover 상승 */
.card-lift {
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.card-lift:hover {
    transform: translateY(-4px);
}

@media (prefers-reduced-motion: reduce) {
    .card-lift,
    .card-lift:hover {
        transform: none;
        transition: none;
    }
}
