@font-face { font-family:'KakaoBig'; src:url('assets/폰트/KakaoBigSans-Regular.woff2') format('woff2'); font-weight:400; font-display:swap; }
@font-face { font-family:'KakaoBig'; src:url('assets/폰트/KakaoBigSans-Bold.woff2') format('woff2'); font-weight:700; font-display:swap; }
@font-face { font-family:'KakaoBig'; src:url('assets/폰트/KakaoBigSans-ExtraBold.woff2') format('woff2'); font-weight:800; font-display:swap; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Light.woff2') format('woff2'); font-weight:300; font-display:swap; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.woff2') format('woff2'); font-weight:400; font-display:swap; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Bold.woff2') format('woff2'); font-weight:700; font-display:swap; }
@font-face { font-family:'ZenSerif'; src:url('assets/폰트/ZEN-SERIF-TTF-Regular.woff2') format('woff2'); font-weight:400; font-display:swap; }
@font-face { font-family:'GriunPol'; src:url('assets/폰트/Griun_PolSensibility-Rg.woff2') format('woff2'); font-weight:400; font-display:swap; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-1.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+AC01-AC03,U+AC05-AC0F,U+AC11-AC18,U+AC1A-AC1B,U+AC1E-AC6F,U+AC71-AC73,U+AC75-AC8B,U+AC8D-ACAB,U+ACAD-ACB8,U+ACBA-ACBC,U+ACBE-ACC3,U+ACC5-ACDF,U+ACE1-ACE6,U+ACE9-ACF4,U+ACF6-ACFB,U+ACFD-ACFF,U+AD01-AD4F,U+AD51-AD6B,U+AD6E-AD8B,U+AD8D-ADBF,U+ADC1-ADDB,U+ADDD-ADF7,U+ADF9-ADFF,U+AE01-AE07,U+AE0A-AE2F,U+AE31-AE37,U+AE39-AE3F,U+AE41-AE4B,U+AE4D-AE4F,U+AE51-AE60,U+AE62-AE64,U+AE66-AF2B,U+AF2D-AF42,U+AF44-B097,U+B099-B09F,U+B0A1-B0A7,U+B0A9-B0AC,U+B0AF-B0B3,U+B0B5-B0C7,U+B0CA-B108,U+B10A-B112,U+B114-B123,U+B125-B143,U+B145-B14F,U+B151-B17A; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-2.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+B17B-B191,U+B193-B207,U+B209-B20B,U+B20D-B273,U+B275-B293,U+B295-B2A4,U+B2A7-B2C7,U+B2C9-B2D7,U+B2DA-B2E3,U+B2E5-B2E7,U+B2E9-B2EA,U+B2EC,U+B2EE-B2F3,U+B2F5-B2F8,U+B2FA-B2FF,U+B301-B353,U+B355-B384,U+B386-B3C3,U+B3C5-B3C7,U+B3C9-B3D8,U+B3DA-B3FB,U+B3FD-B417,U+B419-B41F,U+B421-B428,U+B42A-B44F,U+B451-B4DB,U+B4DE-B4F0,U+B4F2-B513,U+B515-B52F,U+B531-B5A0,U+B5A2-B69C,U+B69E-B6E4; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-3.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+B6E5-B77B,U+B77E-B77F,U+B781-B7C8,U+B7CA-B7EB,U+B7EE-B7FC,U+B7FE-B807,U+B809-B80B,U+B80D-B823,U+B826-B837,U+B839-B85B,U+B85E-B8CB,U+B8CD-B8E7,U+B8E9-B957,U+B959-B97B,U+B97D-B9AB,U+B9AD-B9AF,U+B9B1-B9BB,U+B9BE-B9C7,U+B9CA-B9CB,U+B9CD-B9CF,U+B9D1-B9E3,U+B9E5-B9F4,U+B9F6-B9F8,U+B9FA-BA37,U+BA3A-BA53,U+BA55-BA6F,U+BA71-BA73,U+BA75-BA84,U+BA86-BAA7,U+BAAA-BABA,U+BABC-BB33,U+BB35-BB37,U+BB39-BB3B,U+BB3D-BBF7,U+BBF9-BC0E,U+BC10-BC13,U+BC16-BC17,U+BC19-BC1B,U+BC1D-BC23,U+BC26-BC28,U+BC2A-BC2F,U+BC31-BC42,U+BC44,U+BC46-BC61; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-4.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+BC62-BC83,U+BC85-BC87,U+BC89-BC93,U+BC95-BC9F,U+BCA1-BCA7,U+BCA9-BCBC,U+BCBE-BCBF,U+BCC1-BCC3,U+BCC5-BCF3,U+BCF7-BD7F,U+BD82-BD83,U+BD85-BD87,U+BD89-BE0B,U+BE0D-BE13,U+BE15-BE43,U+BE45-BE53,U+BE55-BE56,U+BE58,U+BE5A,U+BE5C-BE5F,U+BE61-BE67,U+BE69-BF07,U+BF09-BF54,U+BF56-C0AB,U+C0AD-C0AF,U+C0B1-C0B3,U+C0B5-C0BB,U+C0BD-C0C0,U+C0C2-C0C7,U+C0CA-C11B,U+C11E-C11F,U+C121-C123,U+C125-C130,U+C132-C137,U+C139-C153,U+C155-C157,U+C159-C18F,U+C191-C1A0,U+C1A2-C1C3,U+C1C5-C1D5; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-5.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+C1D6-C1FB,U+C1FD-C217,U+C219-C21B,U+C21D-C21F,U+C221-C287,U+C289-C2A3,U+C2A5-C2B4,U+C2B6-C2B8,U+C2BA-C2DB,U+C2DE-C2DF,U+C2E1-C2E3,U+C2E5-C2EB,U+C2ED-C36F,U+C371-C543,U+C546-C547,U+C549,U+C54B-C557,U+C55A-C560,U+C562-C590,U+C592-C5B3,U+C5B5-C5B7,U+C5B9-C5BB,U+C5BD-C5C4,U+C5C7,U+C5C9-C5CF,U+C5D1-C5D3,U+C5D5-C5EB,U+C5EE-C5EF,U+C5F1-C5F3,U+C5F5-C5FF,U+C602-C607,U+C609-C61A,U+C61C-C623,U+C625-C627,U+C629-C643,U+C645-C654,U+C656-C677,U+C679-C693,U+C695-C6A8,U+C6AA-C6AF,U+C6B1-C6CB,U+C6CD-C6CF,U+C6D1-C703,U+C705-C71F,U+C722-C727,U+C729-C73B,U+C73D-C73F,U+C741-C743,U+C745-C74B,U+C74D-C755; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-6.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+C756-C757,U+C759-C773,U+C775-C777,U+C779-C77B,U+C77D-C783,U+C786-C787,U+C789-C78F,U+C791-C793,U+C795-C79F,U+C7A1-C7A4,U+C7A6-C7AB,U+C7AD-C7FF,U+C802-C803,U+C805-C80F,U+C812-C814,U+C816-C81B,U+C81D-C86F,U+C872-C884,U+C886-C88B,U+C88D-C8FB,U+C8FD-C8FF,U+C901-C903,U+C905-C910,U+C912-C94F,U+C951-C987,U+C989-C98F,U+C991-C9BF,U+C9C2-C9C3,U+C9C5-C9D0,U+C9D2-C9D4,U+C9D6-C9DB,U+C9DD-C9EB,U+C9ED-CABC,U+CABE-CC27,U+CC29-CC3C,U+CC3E-CC43,U+CC46-CC97,U+CC99-CC9B,U+CC9D-CCAC,U+CCAE-CCB3,U+CCB5-CCCB; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-7.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+CCCC-CD07,U+CD09-CD2B,U+CD2D-CD5B,U+CD5D-CD77,U+CD79-CD93,U+CD95-CD9B,U+CD9D-CDA8,U+CDAA-CDAF,U+CDB1-CE1F,U+CE22-CE34,U+CE36-CE57,U+CE59-CE67,U+CE69-CE73,U+CE75-CE7B,U+CE7D-CEFF,U+CF01-CF53,U+CF55-CF57,U+CF59-CF63,U+CF65-D04F,U+D051-D06B,U+D06D-D06F,U+D071-D073,U+D075-D07B,U+D07D-D0A3,U+D0A5-D0A7,U+D0A9-D0C0,U+D0C2-D0D4,U+D0D6-D0DB,U+D0DE-D12F,U+D131-D137,U+D139-D14B,U+D14D-D14F,U+D151-D19F,U+D1A1-D1B4,U+D1B6-D22B,U+D22D-D238; }
@font-face { font-family:'KakaoSmall'; src:url('assets/폰트/KakaoSmallSans-Regular.ko-8.woff2') format('woff2'); font-weight:400; font-display:swap; unicode-range:U+D239-D27F,U+D281-D29B,U+D29D-D2B7,U+D2B9-D2EF,U+D2F1-D30B,U+D30D,U+D30F,U+D311-D313,U+D315-D324,U+D326-D327,U+D329-D37B,U+D37D-D39B,U+D39D-D3B7,U+D3B9-D3C8,U+D3CA-D3EB,U+D3ED-D3FB,U+D3FD-D45B,U+D45D-D487,U+D489-D48C,U+D48E-D503,U+D505-D507,U+D509-D50B,U+D50D-D557,U+D559-D55B,U+D55D-D55F,U+D561-D567,U+D56A-D56C,U+D56E-D573,U+D575-D587,U+D58A-D603,U+D605-D614,U+D616-D637,U+D639-D63F,U+D641-D653,U+D656-D68B,U+D68E-D6A7,U+D6A9-D6C3,U+D6C5-D764,U+D766-D7A3; }

html,body { margin:0; background:#14100f; }
html { scroll-behavior:smooth; }
body { color:#201e1d; font-family:'KakaoSmall','Archivo',sans-serif; -webkit-font-smoothing:antialiased; }
h1,h2,h3 { font-family:'KakaoBig','Archivo',sans-serif; }

* { box-sizing:border-box; }
a { color:#2f8ccd; text-decoration:none; }
a:hover { color:#1f6fa8; }
::selection { background:#2f8ccd; color:#fff; }
@keyframes ulji-blink { 0%,100%{opacity:1} 50%{opacity:.2} }
@keyframes ulji-run { from{transform:scaleX(0)} to{transform:scaleX(1)} }
@keyframes ulji-strip { from{transform:translate3d(0,0,0)} to{transform:translate3d(-50%,0,0)} }
@keyframes ulji-marquee { from{transform:translate3d(0,0,0)} to{transform:translate3d(-2820px,0,0)} }
@keyframes ulji-rise { from{opacity:0;transform:translate3d(0,26px,0)} to{opacity:1;transform:none} }
@keyframes ulji-wipe { from{clip-path:inset(0 100% 0 0)} to{clip-path:inset(0 0 0 0)} }
@keyframes ulji-rule { from{transform:scaleX(0)} to{transform:scaleX(1)} }
@keyframes ulji-zoom { from{opacity:0;transform:scale(1.06)} to{opacity:1;transform:scale(1)} }
@keyframes ulji-nudge { 0%,100%{transform:translateY(0)} 50%{transform:translateY(6px)} }
@keyframes ulji-pulse { 0%,100%{box-shadow:0 0 0 0 rgba(47,140,205,.5)} 70%{box-shadow:0 0 0 14px rgba(47,140,205,0)} }
@keyframes ulji-slide-x { 0%,100%{transform:translateX(0)} 50%{transform:translateX(5px)} }

[data-rv] { opacity:0; will-change:opacity,transform; }
[data-rv].rv-in { animation:ulji-rise .72s cubic-bezier(.16,.84,.3,1) both; }
[data-rv="wipe"].rv-in { animation:ulji-wipe .8s cubic-bezier(.16,.84,.3,1) both; }
[data-rv="rule"] { opacity:1; transform:scaleX(0); transform-origin:left center; }
[data-rv="rule"].rv-in { animation:ulji-rule .7s cubic-bezier(.16,.84,.3,1) both; }
[data-rv="zoom"].rv-in { animation:ulji-zoom .9s cubic-bezier(.16,.84,.3,1) both; }
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  [data-rv],[data-rv].rv-in { opacity:1 !important; animation:none !important; transform:none !important; }
}
.ulji-hscroll { -ms-overflow-style:none; scrollbar-width:none; }
.ulji-hscroll::-webkit-scrollbar { display:none; }

/* 프리뷰 런타임의 style-hover 속성을 대체 (인라인 스타일보다 우선하도록 !important) */
.hv-o85:hover { opacity:.85; }
.hv-o90:hover { opacity:.9; }
.hv-blue:hover { background:#1f6fa8 !important; color:#fff !important; }
.hv-navprev:hover { background:linear-gradient(to right,rgba(13,11,10,.85),rgba(13,11,10,0)) !important; }
.hv-navnext:hover { background:linear-gradient(to left,rgba(13,11,10,.85),rgba(13,11,10,0)) !important; }

/* 폼 인풋 포커스 (프로토타입 outline:none 유지 + 브랜드 보더) */
.ulji-input::placeholder { color:rgba(243,242,242,.35); }
.ulji-input:focus { border-color:#2f8ccd !important; }

/* 06 신뢰 카드 — 디자인 원본의 style-before/style-after(프리뷰 런타임 전용)를 실제 의사요소로 */
.ulji-trust-card { position:relative; background:#100e0d; border-top:1px solid rgba(243,242,242,.14); padding:0 14px; overflow:hidden; }
.ulji-trust-card::before,
.ulji-trust-card::after {
  content:''; position:absolute; top:0; bottom:0; width:14px; pointer-events:none;
  background:repeating-linear-gradient(to bottom,transparent 0 9px,rgba(243,242,242,.13) 9px 20px);
}
.ulji-trust-card::before { left:0; }
.ulji-trust-card::after { right:0; }
