/* 헤더 상태(투명 ↔ 흰색) — assets/js/site.js 가 html 에 .is-solid / .menu-open 클래스를 붙입니다 */
:root{--hd-bg:rgba(255,255,255,0);--hd-bd:rgba(255,255,255,0);--hd-sh:none;--hd-fg:#ffffff;--hd-ob:rgba(255,255,255,.85);--hd-logo:brightness(0) invert(1)}
html.is-solid,html.menu-open{--hd-bg:#ffffff;--hd-bd:#ECEBF3;--hd-sh:0 4px 16px rgba(26,24,50,.06);--hd-fg:#2B2940;--hd-ob:#D9D8E6;--hd-logo:none}
.gnb{transition:background-color .2s ease,box-shadow .2s ease,border-color .2s ease}
html:not(.menu-open) .x-mo{display:none !important}
html.menu-open .x-mc{display:none !important}
[data-w][hidden]{display:none !important}
html{scroll-behavior:smooth}
body{margin:0}

@font-face{font-family:'Sokind Latin';src:url(../fonts/Figtree-Variable-latin.woff2) format('woff2-variations'),url(../fonts/Figtree-Variable-latin.woff2) format('woff2');font-weight:300 900;font-style:normal;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+2013-2014,U+2018-201D,U+2026,U+2190-2193}
@font-face{font-family:'Pretendard Variable';src:url(../fonts/PretendardVariable.woff2) format('woff2-variations'),url(../fonts/PretendardVariable.woff2) format('woff2');font-weight:45 920;font-style:normal;font-display:swap}
@font-face{font-family:'SpoqaHanSansNeo';src:url(../fonts/SpoqaHanSansNeo-Regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'SpoqaHanSansNeo';src:url(../fonts/SpoqaHanSansNeo-Medium.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'SpoqaHanSansNeo';src:url(../fonts/SpoqaHanSansNeo-Bold.woff2) format('woff2');font-weight:700;font-display:swap}
body{margin:0;background:#ffffff;color:#1A1832;font-family:'Sokind Latin','Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo',sans-serif;-webkit-font-smoothing:antialiased;word-break:keep-all}
a{color:#4944FE;text-decoration:none}a:hover{color:#3530D9}
button{font-family:inherit;cursor:pointer}
a:focus-visible,button:focus-visible{outline:3px solid #9996FE;outline-offset:3px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.mq1{animation:marquee 48s linear infinite}.mq2{animation:marquee 56s linear infinite}
.gnb{transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
.gnb a,.gnb img{transition:color .3s ease,border-color .3s ease,filter .3s ease}

@keyframes cfade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.c-rise{animation:cfade 1s cubic-bezier(.2,.7,.2,1) both}
.c-rise2{animation:cfade 1s cubic-bezier(.2,.7,.2,1) .25s both}
.c-rise3{animation:cfade 1s cubic-bezier(.2,.7,.2,1) .5s both}
@media (prefers-reduced-motion:reduce){.c-rise,.c-rise2,.c-rise3,.mq1,.mq2{animation:none}}
@media (max-width:1180px){
.r-nav{gap:32px !important;font-size:15px !important}
.c-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.c-stat:nth-child(3){border-left:0 !important}
.c-stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
}
@media (max-width:1023px){
.r-nav,.r-brochure{display:none !important}
.r-burger{display:inline-flex !important}
.r-mnav{display:flex !important}
.r-hdin{height:64px !important;padding:0 20px !important}
.c-hero{height:auto !important;min-height:720px;margin-top:-65px !important;padding:180px 32px 0 !important}
.c-hero h1{font-size:60px !important;letter-spacing:-2px !important}
.c-sec{padding:88px 32px !important}
[style*="font-size: 40px;"]{font-size:34px !important;letter-spacing:-1.1px !important}
.c-split{grid-template-columns:minmax(0,1fr) !important;gap:32px !important}
.c-belief{font-size:28px !important}
.c-mv{grid-template-columns:minmax(0,1fr) !important}
.c-mvitem + .c-mvitem{border-left:0 !important;border-top:1px solid rgba(255,255,255,.14)}
.c-values{grid-template-columns:minmax(0,1fr) !important}
.c-value p:nth-of-type(2){margin-top:28px !important}
.c-founder{grid-template-columns:minmax(0,1fr) !important;gap:28px !important}
.c-tlrow{grid-template-columns:minmax(0,1fr) !important;gap:20px !important}
.c-offices{grid-template-columns:minmax(0,1fr) !important;gap:8px !important}
.c-ctarow{flex-direction:column !important;align-items:flex-start !important}
.r-footwrap{flex-direction:column !important;gap:40px !important}
}
@media (max-width:767px){
.r-hdin{padding:0 16px !important}
.r-hdin img{height:24px !important}
.r-trialbtn{height:38px !important;padding:0 14px !important;font-size:14px !important}
.c-hero{min-height:0;padding:128px 20px 0 !important}
.c-hero > div:last-child{padding-bottom:56px !important}
.c-herofacts{margin-top:44px !important}
.c-herovid{object-position:40% center}
.c-hero h1{font-size:38px !important;line-height:1.3 !important;letter-spacing:-1.2px !important}
.c-hero .c-lead{font-size:16px !important;margin-top:20px !important}
.c-herofacts{gap:0 !important;flex-direction:column;align-items:flex-start !important}
.c-herofacts > div{width:100%;box-sizing:border-box;padding:12px 0 !important;border-left:0 !important;border-top:1px solid rgba(255,255,255,.14)}
.c-bigword{font-size:88px !important}
.c-sec{padding:64px 20px !important}
.c-eyebrow{font-size:12px !important;letter-spacing:1.8px !important}
[style*="font-size: 40px;"]{font-size:27px !important;letter-spacing:-0.8px !important}
.c-belief{font-size:22px !important;line-height:1.6 !important}
.c-stats{grid-template-columns:minmax(0,1fr) !important}
.c-stat{border-left:0 !important;border-top:1px solid rgba(255,255,255,.14);padding:28px 4px !important}
.c-statnum{font-size:54px !important}
.c-mvitem{padding:36px 4px !important}
.c-mvitem p:last-child{font-size:24px !important}
.c-value{padding:28px 24px 32px !important}
.c-quote{font-size:22px !important}
.c-tlyear{font-size:40px !important}
.c-tlrow{padding:32px 0 !important}
.c-tlrow li{gap:16px !important}
.c-tlmo{width:40px !important;font-size:14px !important}
.c-tlrow li span:last-child{font-size:16px !important}
.c-office{padding:28px 4px !important}
.c-cta h2{font-size:27px !important}
.c-ctapeople{left:auto !important;right:-60px;height:70% !important;opacity:.13 !important}
.c-ctabtns{width:100%;flex-direction:column}
.c-ctabtns a{justify-content:center}
.r-footer{padding:48px 20px 96px !important}
.r-footlinks{gap:36px !important;flex-wrap:wrap}
.r-float{right:16px !important;bottom:16px !important}
.r-floattxt{display:none !important}
}


.n-row{transition:background-color .15s ease}
.n-row:hover{background:#F7F6FD}
.n-row:hover .n-title{color:#4944FE}
.n-row:hover .n-arrow{transform:translateX(4px);color:#4944FE}
.n-arrow{transition:transform .2s ease,color .2s ease}
@media (max-width:1023px){
.n-hero{height:auto !important;min-height:0;margin-top:-65px !important;padding:160px 32px 72px !important}
.n-hero h1{font-size:48px !important}
.n-list{padding:64px 32px 96px !important}
}
@media (max-width:767px){
.n-hero{padding:128px 20px 56px !important}
.n-hero h1{font-size:36px !important;letter-spacing:-1.2px !important}
.n-hero p.n-lead{font-size:16px !important}
.n-list{padding:40px 20px 80px !important}
.n-toolbar{flex-wrap:wrap;gap:12px !important}
.n-row{grid-template-columns:112px minmax(0,1fr) !important;gap:14px !important;padding:18px 0 !important;align-items:start !important}
.n-thumb{width:112px !important;height:76px !important;border-radius:10px !important}
.n-fbk-l{display:none !important}
.n-fbk{padding:10px !important;justify-content:flex-end !important}
.n-fbk-n{font-size:13px !important}
.n-meta{font-size:12.5px !important;gap:6px !important}
.n-date{font-size:13px !important}
.n-title{font-size:15.5px !important;line-height:1.5 !important}
.n-arrow{display:none !important}
.n-pager button{min-width:38px !important;height:38px !important}
}

@media (max-width:1320px){.rc-hero h1{font-size:48px !important}}
@media (max-width:1180px){.rc-hero h1{font-size:40px !important;white-space:normal !important;max-width:820px}}
.rc-apply-btn,.rc-story{transition:transform .2s ease,box-shadow .2s ease}
.rc-apply-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.45) !important}
.rc-story:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(26,24,50,.10)}
@media (max-width:1023px){.rc-apply{flex-direction:column !important;align-items:flex-start !important;padding:48px 40px !important}}
@media (max-width:767px){.rc-apply{padding:40px 24px !important;border-radius:20px !important}.rc-apply-t{font-size:26px !important}.rc-apply-btn{width:100% !important;box-sizing:border-box !important;justify-content:center !important}.rc-story{height:auto !important;box-sizing:border-box !important;width:100% !important;padding:16px 20px !important;border-radius:16px !important;flex-wrap:wrap !important;justify-content:center !important;text-align:center !important;font-size:15px !important;gap:6px 10px !important}}
.rc-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.rc-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(26,24,50,.10);border-color:#CFCAFF !important}
@media (max-width:1180px){
.rc-stats{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
.rc-ai{grid-template-columns:minmax(0,1fr) !important}
}
@media (max-width:1023px){
.rc-hero{height:auto !important;min-height:0;margin-top:-65px !important;padding:160px 32px 96px !important}
.rc-hero h1{font-size:44px !important}
.rc-sec{padding:88px 32px !important}
[style*="font-size: 40px;"]{font-size:32px !important;letter-spacing:-1px !important}
.rc-steps,.rc-env,.rc-llm{grid-template-columns:minmax(0,1fr) !important}
.rc-pos{grid-template-columns:minmax(0,1fr) !important}
.r-footwrap{flex-direction:column !important;gap:40px !important}
}
@media (max-width:767px){
.rc-hero{padding:128px 20px 56px !important}
.rc-hero h1{font-size:30px !important;letter-spacing:-1px !important;white-space:normal !important}
.rc-sec{padding:64px 20px !important}
[style*="font-size: 40px;"]{font-size:25px !important;letter-spacing:-0.7px !important;white-space:normal !important}
.rc-stats{grid-template-columns:minmax(0,1fr) !important}
.rc-stat{border-left:0 !important;border-top:1px solid #E6E5EE;padding:24px 4px !important}
.rc-statnum{font-size:48px !important}
.rc-card{padding:28px 24px !important}
.rc-jobtitle{font-size:26px !important}
.rc-ai-box{padding:32px 24px !important}
}
