@font-face{font-family:"SUIT Variable";src:url('/assets/fonts/SUIT-Variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--ui-font:"SUIT Variable","SUIT","Noto Sans KR","Malgun Gothic",sans-serif;--loader-blue:#1679fd}
html,body{font-family:var(--ui-font);font-size:16px;font-weight:400;line-height:1.65;letter-spacing:-.015em;font-synthesis:none}
button,input,textarea,select{font-family:var(--ui-font)}
h1,h2,h3{font-weight:700;line-height:1.25;letter-spacing:-.025em}
.brand{font-weight:700;letter-spacing:-.015em;line-height:1.25}
.site-header{gap:26px}.site-header nav{font-size:14px;font-weight:500;line-height:1.3;gap:26px;letter-spacing:0}
.button{font-size:15px;font-weight:600;line-height:1.25;min-height:48px;padding:15px 26px}
.button.compact{font-size:14px;font-weight:600;min-height:44px;padding:12px 20px}
.eyebrow,.hero .eyebrow{font-size:12px;line-height:1.4;letter-spacing:.075em;font-weight:500}
.hero h1{font-size:clamp(46px,4.45vw,76px);font-weight:800;line-height:1.18;letter-spacing:-.03em}
.hero-description{font-size:14px;font-weight:400;line-height:1.65;letter-spacing:-.015em;max-width:540px}
.free-block strong{font-size:34px;font-weight:700;line-height:1.25;letter-spacing:-.025em}
.free-block span{font-size:13px;font-weight:500;line-height:1.6;letter-spacing:-.01em}
.hero-button{font-size:15px;font-weight:600;min-height:50px}
.hero-cards strong{font-size:12px;font-weight:600;line-height:1.3;letter-spacing:0}.hero-cards small{font-size:11px;font-weight:500;line-height:1.5;letter-spacing:-.015em}
.hero-bottom{font-size:10px;line-height:1.4;letter-spacing:.07em}.hero-bottom a{font-size:12px;letter-spacing:-.01em}
.feature-number{font-size:16px;font-weight:600;line-height:1.25}.feature-label{font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0}
.feature-copy h2{font-size:clamp(32px,3vw,44px);font-weight:700;line-height:1.25;letter-spacing:-.03em}
.feature-description{font-size:16px;line-height:1.65;font-weight:400;letter-spacing:-.015em}
.feature-caption{font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.06em}
.feature-controls button{font-family:var(--ui-font);font-size:13px;font-weight:500;line-height:1.25;padding:14px 0;letter-spacing:-.01em}.feature-controls button[aria-pressed=true]{font-weight:600}.feature-controls button span{font-size:11px;font-weight:500}
.support h2{font-size:clamp(40px,4.5vw,68px);font-weight:700;line-height:1.2;letter-spacing:-.03em}
.support-detail{font-size:22px;font-weight:600;line-height:1.55;letter-spacing:-.015em}
.support-description{font-size:16px;font-weight:400;line-height:1.65;letter-spacing:-.015em}
.button.light{font-size:15px;font-weight:600;line-height:1.25;min-height:48px;padding:15px 28px}
.news-heading h2{font-size:32px;line-height:1.25}.news-heading p:last-child{font-size:15px;line-height:1.65;letter-spacing:-.015em}
.news-columns h3{font-size:20px;font-weight:600;line-height:1.3}.text-link{font-size:14px;font-weight:600;line-height:1.3;letter-spacing:-.01em}
.empty{font-size:14px;line-height:1.65}.post-row{font-size:15px;line-height:1.55}.post-row time{font-size:13px;font-weight:500}
.page-shell h1,.post-detail h1,.contact-shell h1{font-size:34px;font-weight:700;line-height:1.25;letter-spacing:-.03em}
.news-tabs a{font-size:15px;font-weight:500;line-height:1.3;padding:17px 4px}.news-tabs a.selected{font-weight:600}
.post-list h2{font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.02em}.post-list p{font-size:14px;line-height:1.65;letter-spacing:-.015em}.post-list time,.post-detail time{font-size:13px;line-height:1.5;font-weight:500}
.post-body{font-size:16px;line-height:1.65;letter-spacing:-.015em}.post-body h2{font-size:22px;font-weight:600;line-height:1.3;letter-spacing:-.02em}.post-body strong{font-weight:600}
.contact-shell p{font-size:15px;line-height:1.65}.contact-form>label{font-size:14px;font-weight:500;line-height:1.5}
.contact-form input,.contact-form textarea{font-family:var(--ui-font);font-size:15px;font-weight:500;line-height:1.6;letter-spacing:-.015em;min-height:48px;padding:12px 16px}.contact-form .consent{font-size:13px;font-weight:400;line-height:1.6}.contact-form .consent input{min-height:0;padding:0}.contact-form small{font-size:12px;line-height:1.6}
.centered p{font-size:15px;line-height:1.65}.centered h1{font-size:34px}footer p{font-size:13px;line-height:1.6}footer div{font-size:13px;font-weight:500;line-height:1.4}footer small{font-size:11px;letter-spacing:0;line-height:1.6}
.language-menu{position:relative;color:inherit;flex-shrink:0;line-height:1.25}
.language-menu>summary{display:flex;gap:8px;align-items:center;min-height:44px;padding:10px 0;list-style:none;cursor:pointer;font-size:14px;font-weight:500;letter-spacing:.02em}
.language-menu>summary::-webkit-details-marker{display:none}.language-menu>summary:focus-visible{outline:3px solid #00b2ff;outline-offset:5px;border-radius:7px}
.globe-icon{width:23px;height:23px;flex-shrink:0}.chevron-icon{width:13px;height:13px;transition:transform .2s}.language-menu[open] .chevron-icon{transform:rotate(180deg)}
.language-layer{position:absolute;right:-12px;top:calc(100% + 12px);width:194px;padding:7px;background:#fff;border:1px solid #e4eaf3;border-radius:14px;box-shadow:0 14px 45px #10214c25;color:#26344b;z-index:60}
.language-layer:before{content:'';position:absolute;right:29px;top:-6px;width:11px;height:11px;background:#fff;border-left:1px solid #e4eaf3;border-top:1px solid #e4eaf3;transform:rotate(45deg)}
.language-form button{font-family:var(--ui-font);width:100%;padding:13px 12px;min-height:46px;display:flex;align-items:center;gap:9px;font-size:14px;font-weight:500;line-height:1.25;color:inherit;border-radius:9px;background:transparent}
.language-form button:hover{background:#f4f7fc}.language-form button.selected{background:#edf5ff;color:#076cfa;font-weight:600}.language-form button span:first-child{font-size:14px}.language-form button small{font-size:11px;font-weight:500;color:#8997ad;margin-left:auto;letter-spacing:.04em}.check-icon{width:17px;height:17px;opacity:0}.selected .check-icon{opacity:1}
/* Each cover is part of one continuous background, including its wave cap. */
.service-story{background:transparent}.service-story>.wave,.support>.wave{display:none}
.service-stage{background:transparent;overflow:visible;isolation:isolate}
.service-background,.support-surface{position:absolute;inset:-110px 0 0;pointer-events:none;-webkit-mask-image:url('/assets/wave-mask.svg'),linear-gradient(#000,#000);mask-image:url('/assets/wave-mask.svg'),linear-gradient(#000,#000);-webkit-mask-size:100% 112px,100% calc(100% - 110px);mask-size:100% 112px,100% calc(100% - 110px);-webkit-mask-position:top center,bottom center;mask-position:top center,bottom center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.service-background{background:url('/assets/section2_bg.png') center/cover no-repeat}
.support{background:transparent;isolation:isolate}.support-surface{background:radial-gradient(at 85% 30%,#51b5fb,transparent 60%),linear-gradient(125deg,#0570ff,#2992fc);z-index:0}.support-inner{position:relative;z-index:1}
.loader{background:var(--loader-blue);color:#fff;gap:17px;transition:opacity .45s,visibility .45s}
.loader-circle{width:236px;height:236px;position:relative;margin-bottom:15px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#ffffff65,transparent 60%),linear-gradient(145deg,#afe5ff66,#c3eaff2b);border:1px solid #dcf7ff90;box-shadow:inset 0 3px 18px #fff4,0 18px 60px #034cb92b;overflow:visible}
.loader-circle:after{content:'';position:absolute;inset:13px;border:1px solid #ffffff25;border-radius:50%;pointer-events:none}
.loader-object{position:absolute;left:50%;top:50%;width:195px;height:215px;object-fit:contain;opacity:0;transform:translate(-50%,-44%) rotate(-5deg) scale(.9);transition:opacity .18s,transform .25s;filter:drop-shadow(0 13px 11px #004eaf30);z-index:2}
.loader-object.active{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1)}
.loader-object.object-loader{height:270px;width:190px;top:46%}.loader-object.object-note{width:205px;height:205px;left:48%}.loader-object.object-headphones{width:229px;height:229px;left:54%}.loader-object.object-play{width:205px;height:205px}.loader-object.object-face{width:224px;height:224px;top:46%}
.glass-orbit{position:absolute;background:linear-gradient(145deg,#ecfcffbb,#9bdcff45);border:1px solid #ffffff65;box-shadow:inset 0 2px 5px #fff3,0 5px 20px #0060c325;border-radius:25%;z-index:3;animation:glassFloat 3s ease-in-out infinite}
.orbit-one{width:37px;height:37px;left:-16px;top:49px;transform:rotate(15deg)}.orbit-two{width:18px;height:18px;right:-5px;bottom:43px;animation-delay:.5s}.orbit-three{width:12px;height:12px;right:27px;top:-9px;animation-delay:1s}
.loader-dots{display:flex;gap:9px;margin-bottom:3px}.loader-dots i{width:7px;height:7px;border-radius:50%;background:#ffffff40;transition:background .2s,transform .2s}.loader-dots i.active{background:#fff;transform:scale(1.2)}
.loader strong{font-family:var(--ui-font);font-size:19px;font-weight:600;line-height:1.3;letter-spacing:.07em}.loader>span{font-size:13px;font-weight:400;line-height:1.5;color:#e7f3ff;letter-spacing:-.01em}.loader .dots{font-weight:400}
@keyframes glassFloat{50%{translate:0 -8px}}
@media(max-height:800px) and (min-width:901px){.hero h1{font-size:52px}.hero-description{font-size:14px}.feature-copy h2{font-size:36px}.feature-description{font-size:16px}.free-block strong{font-size:30px}.hero-content{padding-top:124px}}
@media(max-width:1150px){.site-header nav{font-size:13px;gap:19px}.site-header{gap:18px}.button.compact{padding:12px 16px}.feature-copy h2{font-size:36px}.support-detail{font-size:19px}}
@media(max-width:900px){.site-header{gap:15px}.site-header nav{font-size:15px;gap:8px}.brand{font-size:19px}.language-menu>summary{font-size:13px}.globe-icon{width:22px;height:22px}.hero h1{font-size:clamp(44px,7.2vw,62px)}.hero-description{font-size:14px}.feature-copy h2{font-size:32px}.feature-description{font-size:15px}.feature-art img{height:340px}.service-background,.support-surface{inset:0;-webkit-mask:none;mask:none}.service-background{background-attachment:fixed;opacity:.6}.feature-panel{background:transparent}.support h2{font-size:44px}.support-detail{font-size:18px}.support-description{font-size:15px}.news-heading h2{font-size:30px}.page-shell h1,.post-detail h1,.contact-shell h1{font-size:32px}}
@media(max-width:600px){.brand{font-size:18px}.hero h1{font-size:46px}.hero-description{font-size:14px;line-height:1.65;max-width:335px}.hero .eyebrow{font-size:11px}.free-block strong{font-size:30px}.free-block span{font-size:12px}.hero-button{font-size:14px;min-height:48px}.hero-cards strong{font-size:11px}.hero-cards small{font-size:11px}.hero-cards a{padding:12px 4px}.hero-bottom{font-size:9px;letter-spacing:.055em}.hero-bottom a{font-size:11px}.feature-copy h2{font-size:34px}.feature-description{font-size:15px;line-height:1.65}.feature-label{font-size:14px}.feature-caption{font-size:11px}.service-heading .eyebrow{font-size:11px;letter-spacing:.07em}.service-background{background-attachment:scroll;background-size:auto 850px;background-position:top left;background-repeat:repeat-y;opacity:.45}.support h2{font-size:40px}.support-detail{font-size:16px}.support-description{font-size:15px}.support .eyebrow{font-size:11px;letter-spacing:.07em}.button.light{font-size:14px;min-height:46px}.news-heading p:last-child{font-size:14px}.news-heading .text-link{font-size:13px}.news-columns h3{font-size:19px}.page-shell h1,.post-detail h1{font-size:28px}.contact-shell h1{font-size:32px}.post-body{font-size:15px;line-height:1.65}.post-body h2{font-size:20px}.post-list h2{font-size:18px}.post-list p{font-size:14px}.post-list time{font-size:12px}.loader-circle{width:210px;height:210px}.loader-object.object-loader{height:246px}.loader-object.object-headphones{width:209px;height:209px}.loader-object.object-face{width:208px;height:208px}footer div{font-size:13px}}
@media(prefers-reduced-motion:reduce){.service-background,.support-surface{inset:0;-webkit-mask:none;mask:none}.loader-object{transition:none}.loader .glass-orbit{animation:none}}
.download-icon{width:22px;height:22px;flex-shrink:0}.button.compact .download-icon{width:19px;height:19px}
.js.is-loading{overflow:hidden}.feature-label{margin-top:0}.feature-copy h2{margin-top:22px}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.hero-wrap{height:210vh}.service-story{margin-top:-100vh}.support{margin-top:-100vh}}
.no-js .hero-wrap{height:auto}.no-js .service-story,.no-js .support{margin-top:0}

/* Stronger title hierarchy, with the same SUIT family in both languages. */
h1,h2{font-weight:800}
.hero h1{font-size:clamp(56px,5.3vw,92px);font-weight:900;line-height:1.15}
.feature-copy h2{font-size:clamp(40px,3.6vw,54px);font-weight:800;line-height:1.2}
.support h2{font-size:clamp(48px,5.3vw,82px);font-weight:800;line-height:1.18}
.news-heading h2{font-size:40px;font-weight:800}
.page-shell h1,.post-detail h1,.contact-shell h1,.centered h1{font-size:42px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}
.post-list h2{font-size:24px;font-weight:700}.post-body h2{font-size:28px;font-weight:700}
.brand{font-weight:800}.loader strong{font-weight:700;letter-spacing:.015em}
@media(max-height:800px) and (min-width:901px){.hero h1{font-size:62px}.feature-copy h2{font-size:44px}}
@media(max-width:1150px){.site-header{padding-left:3%;padding-right:3%;gap:16px}.brand{font-size:20px;gap:9px}.site-header nav{gap:15px}.feature-copy h2{font-size:44px}}
@media(max-width:900px){.hero h1{font-size:clamp(52px,8.3vw,74px)}.feature-copy h2{font-size:40px}.support h2{font-size:54px}.news-heading h2{font-size:38px}.page-shell h1,.post-detail h1,.contact-shell h1,.centered h1{font-size:38px}}
@media(max-width:600px){.site-header{gap:10px}.brand{font-size:clamp(14px,4vw,18px);gap:7px}.brand img{width:30px;height:28px}.header-actions{gap:12px}.hero h1{font-size:clamp(48px,12.8vw,56px)}.feature-copy h2{font-size:40px}.support h2{font-size:46px}.news-heading h2{font-size:36px}.page-shell h1,.post-detail h1,.contact-shell h1,.centered h1{font-size:34px}.post-list h2{font-size:22px}.post-body h2{font-size:25px}}

.hero-wrap{background:#080808}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.68) 28%,rgba(0,0,0,.26) 56%,rgba(0,0,0,.05) 80%),linear-gradient(0deg,rgba(0,0,0,.48),transparent 32%)}

.hero-bottom{justify-content:center}

/* Floating glass language selector. */
.language-layer{width:210px;padding:8px;background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(242,248,255,.7));border:1px solid rgba(255,255,255,.82);border-radius:18px;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:0 16px 48px rgba(5,16,38,.2),inset 0 1px 0 rgba(255,255,255,.85);color:#27364b}
.language-layer:before{display:none}
.language-menu[open] .language-layer{animation:languageReveal .18s ease-out}
.language-form{display:grid;gap:5px}
.language-form button{min-height:48px;padding:13px 14px;border-radius:12px;border:1px solid transparent;transition:background .18s,border-color .18s,box-shadow .18s;color:#46556b}
.language-form button:hover{background:rgba(255,255,255,.62);border-color:rgba(255,255,255,.75)}
.language-form button.selected{color:#0767e7;background:linear-gradient(125deg,rgba(226,241,255,.84),rgba(214,235,255,.55));border-color:rgba(135,192,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);font-weight:600}
.language-form button small{font-size:11px;color:#889bb4;letter-spacing:.06em}.language-form button.selected small{color:#4b88d3}
.check-icon{width:16px;height:16px}.language-menu>summary{border-radius:10px;padding:10px 8px;transition:background .18s}.language-menu>summary:hover,.language-menu[open]>summary{background:rgba(128,158,198,.12)}
@keyframes languageReveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.language-menu[open] .language-layer{animation:none}}
@supports not (backdrop-filter:blur(1px)){.language-layer{background:rgba(247,250,255,.96)}}
