@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable-dynamic-subset.css');
:root{--ink:#17141d;--purple:#6848db;--lilac:#dcd0ff;--pale:#f4f0fc;--cyan:#62d8ef;--pink:#efa7d8;--line:rgba(23,20,29,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f5fb;color:var(--ink);font-family:Outfit,"Pretendard Variable",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:min(1480px,calc(100% - 104px));margin:auto}.site-head{height:84px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20}.logo-lockup{display:inline-flex;align-items:center;gap:7px;font-family:Outfit,sans-serif;font-size:27px;font-weight:700;letter-spacing:-.065em}.logo-lockup img{width:41px;height:41px;object-fit:contain;mix-blend-mode:multiply}.menu{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.menu a{transition:opacity .2s}.menu a:hover{opacity:.5}.lang{border:1px solid var(--ink);border-radius:40px;padding:9px 14px;white-space:nowrap}.lang[aria-current=page]{background:var(--ink);color:white}.lang-group{display:flex;gap:5px}.intro{min-height:calc(100svh - 84px);background:linear-gradient(125deg,#dcd0ff 0%,#e8dfff 42%,#e0f9ff 100%);overflow:hidden;position:relative;display:flex;flex-direction:column}.intro:before{content:'';position:absolute;width:80vw;height:80vw;top:-57vw;right:-12vw;border-radius:50%;background:radial-gradient(circle,#f7b8e0,transparent 68%);opacity:.52;pointer-events:none}.intro-inner{position:relative;flex:1;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;min-height:640px}.intro-copy{z-index:2;padding:50px 0 90px}.hero-kicker{font-size:clamp(15px,1.65vw,25px);font-weight:800;letter-spacing:-.03em;text-transform:uppercase;display:inline-block;padding-bottom:12px;border-bottom:2px solid var(--ink);margin-bottom:38px}.intro h1{font-size:clamp(72px,9.6vw,158px);letter-spacing:-.105em;line-height:.98;margin:0 0 32px;font-weight:700}.intro h1 span{display:block}.intro h1 .outline{color:transparent;-webkit-text-stroke:1.5px var(--ink)}.intro h1 .gradient{background:linear-gradient(90deg,#7349dc 8%,#188fdb 58%,#12aec7);background-clip:text;color:transparent}.hero-sub{font-size:clamp(17px,1.45vw,21px);font-weight:500;line-height:1.65;max-width:610px;letter-spacing:-.02em}.hero-bottom{display:flex;align-items:center;gap:30px;margin-top:35px}.round-link{height:61px;width:61px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:30px;transition:background .25s,color .25s,transform .25s}.round-link:hover{background:var(--ink);color:white;transform:rotate(45deg)}.hero-bottom small{font-size:12px;letter-spacing:.15em;font-weight:700}.brand-art{position:absolute;right:-5%;width:50%;top:8%;bottom:7%;display:grid;place-items:center;pointer-events:none}.brand-art img{width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 38px 38px rgba(61,39,135,.13));animation:float 7s ease-in-out infinite}.hero-meta{position:absolute;right:0;bottom:45px;font-size:12px;letter-spacing:.14em;font-weight:700;writing-mode:vertical-rl}.ticker{background:#17141d;color:#fff;overflow:hidden;white-space:nowrap;padding:15px 0;font-size:13px;font-weight:700;letter-spacing:.21em}.ticker-track{display:flex;width:max-content;gap:48px;animation:marquee 24s linear infinite}.ticker b{font-size:16px;color:#a9e5f5}.section{padding:140px 0}.section-index{font-family:DM Sans,sans-serif;font-size:12px;letter-spacing:.16em;font-weight:700;text-transform:uppercase;border-top:1px solid var(--line);padding-top:15px;display:block}.section-heading{font-size:clamp(48px,6vw,93px);line-height:1.05;letter-spacing:-.085em;font-weight:600;margin:26px 0 0}.section-heading em{font-style:normal;color:#8463df}.story-grid{display:grid;grid-template-columns:1fr .82fr;gap:10%;margin-top:100px}.story-main{font-size:clamp(25px,3.15vw,46px);letter-spacing:-.058em;line-height:1.4;font-weight:600;margin:0}.story-main strong{color:#6646d5}.story-detail{max-width:560px}.story-detail p{font-size:18px;line-height:1.85;margin:0 0 27px;color:#48434f}.story-detail b{color:var(--ink)}.symbol{margin-top:60px;border-top:1px solid var(--line);padding-top:23px;display:flex;gap:28px;align-items:flex-start}.symbol img{width:90px;mix-blend-mode:multiply}.symbol p{margin:0;font-size:15px!important}.vision{background:#17141d;color:white;overflow:hidden;position:relative}.vision:after{content:'';position:absolute;width:600px;height:600px;border-radius:50%;right:-180px;top:-210px;background:radial-gradient(circle,#6e47ce,transparent 70%);opacity:.55}.vision .section-index{border-color:#68616c}.vision .section-heading{position:relative;z-index:1}.vision .section-heading em{background:linear-gradient(90deg,#b889f5,#66d9ee);background-clip:text;color:transparent}.vision-row{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-top:80px;position:relative;z-index:1}.vision-row p{font-size:20px;max-width:570px;line-height:1.8;color:#dfdbe9;margin:0}.vision-row span{font-size:12px;letter-spacing:.2em;white-space:nowrap}.services{background:#e9e1f8}.services .section-heading{max-width:950px}.service-list{margin-top:90px;border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:90px 1fr 1fr 45px;align-items:center;gap:30px;padding:39px 0;border-bottom:1px solid var(--line);transition:padding .35s,background .35s}.service:hover{padding-left:18px;background:rgba(255,255,255,.28)}.service .number{font-size:13px;font-weight:700}.service h3{font-size:clamp(26px,3.1vw,45px);font-weight:600;letter-spacing:-.065em;line-height:1.28;margin:0}.service p{max-width:440px;line-height:1.8;font-size:16px;color:#514a5e;margin:0}.service .asterisk{font-size:29px;color:#7251d8}.contact{background:linear-gradient(135deg,#d8cbfc 0%,#e9d8f3 48%,#bfeff5 100%)}.contact .section-heading{font-size:clamp(60px,8vw,127px)}.contact-body{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:80px;border-top:1px solid var(--line);padding-top:28px}.contact-body p{font-size:18px;line-height:1.7;max-width:520px}.email{font-size:clamp(22px,3.2vw,47px);font-weight:600;letter-spacing:-.06em;overflow-wrap:anywhere;border-bottom:2px solid var(--ink);padding-bottom:6px}.email:hover{color:#6340cd;border-color:#6340cd}footer{background:#17141d;color:#fff;padding:45px 0}.footer-row{display:flex;align-items:end;justify-content:space-between;gap:30px}.footer-word{font-size:clamp(48px,8vw,110px);font-weight:700;line-height:1;letter-spacing:-.09em}.footer-detail{text-align:right;font-size:12px;letter-spacing:.1em;line-height:2}.reveal{opacity:0;transform:translateY(38px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.page-wipe{position:fixed;inset:0;background:#271c4c;z-index:99;transform:translateY(100%);pointer-events:none}.page-wipe.run{animation:wipe 1s cubic-bezier(.72,0,.2,1) forwards}@keyframes wipe{0%{transform:translateY(100%)}50%{transform:translateY(0)}100%{transform:translateY(-100%)}}@keyframes float{50%{transform:translateY(-20px) rotate(2deg)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:900px){.shell{width:calc(100% - 48px)}.menu{gap:15px}.menu .desktop{display:none}.intro-inner{min-height:690px;align-items:start}.intro-copy{padding-top:95px}.intro h1{font-size:clamp(64px,13vw,110px)}.brand-art{width:57%;top:37%;bottom:0;right:-10%;opacity:.8}.hero-sub{max-width:400px}.story-grid{gap:40px}.service{grid-template-columns:45px 1fr 1fr;gap:15px}.service .asterisk{display:none}}
@media(max-width:620px){.shell{width:calc(100% - 36px)}.site-head{height:70px}.logo-lockup{font-size:23px}.logo-lockup img{width:34px;height:34px}.menu{gap:6px}.lang{font-size:11px;padding:7px 10px}.intro{min-height:730px}.intro-inner{min-height:680px;display:block}.intro-copy{padding:66px 0 20px}.hero-kicker{font-size:14px;margin-bottom:30px}.intro h1{font-size:clamp(60px,17vw,90px);margin-bottom:20px}.hero-sub{font-size:17px;max-width:360px}.brand-art{width:77%;top:auto;bottom:12px;right:-16%;height:280px;opacity:.72}.hero-bottom{margin-top:28px}.hero-meta{bottom:20px}.section{padding:90px 0}.section-heading{font-size:clamp(45px,13vw,70px)}.story-grid{grid-template-columns:1fr;margin-top:55px;gap:35px}.story-detail p{font-size:16px}.symbol{margin-top:35px}.vision-row,.contact-body{display:block;margin-top:50px}.vision-row p{font-size:17px;margin-bottom:40px}.services .section-heading{font-size:46px}.service-list{margin-top:50px}.service{grid-template-columns:38px 1fr;align-items:start;padding:25px 0}.service h3{font-size:27px}.service p{grid-column:2;font-size:15px}.contact .section-heading{font-size:clamp(58px,16vw,90px)}.contact-body p{font-size:16px}.email{display:inline-block;margin-top:25px;font-size:clamp(21px,6vw,31px)}.footer-row{display:block}.footer-detail{text-align:left;margin-top:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
html[lang=en] .intro h1{font-size:clamp(59px,7.4vw,113px);letter-spacing:-.08em}html[lang=en] .intro-copy{max-width:900px}@media(max-width:620px){html[lang=en] .intro h1{font-size:clamp(45px,10.8vw,70px);letter-spacing:-.07em}}
.services-intro{max-width:750px;margin:42px 0 0;font-size:18px;line-height:1.8;color:#514a5e}.expertise{background:#f7f5fb}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:70px}.experience-grid .section-heading{margin-top:0}.experience-detail p{font-size:18px;line-height:1.8;max-width:560px;margin:0 0 35px}.experience-detail ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.experience-detail li{padding:19px 0;border-bottom:1px solid var(--line);font-size:19px;font-weight:600;letter-spacing:-.025em}.experience-detail li span{display:inline-block;width:50px;font-size:12px;letter-spacing:.1em;color:#795bd2}.hero-kicker{max-width:100%;line-height:1.25}@media(max-width:620px){.services-intro{font-size:16px;margin-top:30px}.experience-grid{grid-template-columns:1fr;gap:40px;margin-top:45px}.experience-detail p{font-size:16px}.experience-detail li{font-size:16px}.hero-kicker{font-size:12px}}
@media(max-width:620px){.services .section-heading{font-size:clamp(27px,7.8vw,42px);letter-spacing:-.06em}.expertise .section-heading{font-size:clamp(38px,11vw,62px)}}
