:root{--bg:#f7f8fa;--paper:#fff;--soft:#eff3f7;--ink:#101820;--muted:#5d6670;--navy:#08243a;--deep:#071b2b;--blue:#1677c8;--line:#dde3e8;--shadow:0 24px 70px #08243a1f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0;font-family:Pretendard,Inter,Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.skip-link{z-index:100;background:var(--blue);color:#fff;padding:10px 14px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.container{width:min(1280px,100% - 96px);margin:0 auto}.site-header{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;border-bottom:1px solid #dde3e8cc;position:sticky;top:0}.nav-shell{grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:72px;display:grid}.logo{letter-spacing:0;color:#002751;align-items:center;gap:8px;font-size:18px;font-weight:800;display:inline-flex}.logo-word{white-space:nowrap}.logo-accent{color:#0071ee}.logo img{flex:none;width:28px;height:28px}.site-nav{color:#304252;justify-content:center;align-items:center;gap:28px;font-size:15px;font-weight:600;display:flex}.site-nav a,.text-link{transition:color .16s}.site-nav a:hover,.text-link:hover{color:var(--blue)}.nav-actions,.hero-actions,.inline-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.lang-button{border:1px solid var(--line);color:#52606d;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:42px;padding:0 14px;display:inline-flex}.lang-button span{font-weight:700}.lang-button span.active{color:var(--blue)}.lang-button i{color:#a2adb7;font-style:normal}.button{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-weight:700;display:inline-flex}.button.primary,.button.nav-cta{background:var(--blue);color:#fff}.button.nav-cta{min-width:129px}.button.secondary,.button.light{color:var(--navy);background:#fff}.button.ghost{color:#fff;border-color:#ffffff57}.menu-toggle,.menu-button{display:none}.home-hero{color:#fff;background:linear-gradient(90deg,#04121ff5 0%,#04121fd1 27%,#04121f38 62%,#04121f00 100%),linear-gradient(#04121f1f 0%,#04121f0a 48%,#04121f52 100%),url(/assets/home-hero.png) 50%/cover no-repeat;align-items:stretch;min-height:clamp(540px,100vh - 160px,680px);display:flex;position:relative;overflow:hidden}.home-hero-copy{z-index:1;justify-content:center;width:100%;display:flex;position:relative}.home-hero-copy-inner{align-self:flex-start;width:min(100% - 88px,1280px);padding:92px 0 74px}.home-hero h1{max-width:650px;min-height:calc(3.24*clamp(48px,5.2vw,78px));font-size:clamp(48px,5.2vw,78px)}html[lang=en] .home-hero h1{max-width:690px;font-size:clamp(40px,4.2vw,60px)}.home-hero .hero-copy{max-width:520px}.capability-strip{border-bottom:1px solid var(--line);background:#fff}.capability-grid{grid-template-columns:repeat(3,minmax(0,1fr));min-height:128px;display:grid}.capability-item{border-right:1px solid var(--line);grid-template-columns:52px 1fr;align-items:center;gap:20px;padding:28px 34px;display:grid}.capability-item:last-child{border-right:0}.capability-item span{border:2px solid var(--blue);width:34px;height:34px;color:var(--blue);border-radius:999px;place-items:center;font-size:13px;font-weight:850;display:grid}.capability-item h2{margin:0 0 5px;font-size:15px;font-weight:850;line-height:1.2}.capability-item p{color:#586777;margin:0;font-size:14px;line-height:1.55}.business-showcase{background:#fff;padding-top:82px;padding-bottom:72px}.business-showcase .section-head{margin-bottom:24px}.business-showcase .section-head.spread{align-items:end}.business-showcase .text-link{justify-self:end}.business-mosaic{grid-template-rows:164px 164px 156px;grid-template-columns:1.08fr .95fr;gap:12px;display:grid}.business-tile{color:#fff;isolation:isolate;background-position:50%;background-size:cover;border-radius:8px;min-height:156px;position:relative;overflow:hidden}.business-tile:before{z-index:-1;content:"";background:linear-gradient(90deg,#051420d1 0%,#05142070 62%,#05142038 100%),linear-gradient(#0514200f 0%,#051420b3 100%);position:absolute;inset:0}.business-tile:hover{transform:translateY(-2px)}.business-tile-large{grid-row:span 2}.business-tile-wide{grid-column:1/-1}.business-tile-copy{height:100%;min-height:inherit;flex-direction:column;justify-content:flex-end;padding:24px 30px;display:flex}.business-tile-copy span{color:#ffffffc7;font-weight:850}.business-tile-copy h3{margin:8px 0;font-size:clamp(24px,2.6vw,38px);line-height:1.12}.business-tile:not(.business-tile-large) .business-tile-copy h3{font-size:clamp(22px,2vw,30px)}.business-tile-copy p{color:#ffffffd1;max-width:460px;margin:0;font-size:15px}.business-tile-copy b{color:#fff;border:1px solid #ffffff8f;border-radius:999px;place-items:center;width:42px;height:42px;font-size:23px;line-height:1;display:grid;position:absolute;bottom:24px;right:24px}.home-why{background:#fbfcfd;padding-top:78px;padding-bottom:84px}.home-why-grid{grid-template-columns:.78fr 1.22fr;align-items:center;gap:58px;display:grid}.home-why-copy h2,.tech-operation h2{margin:0;font-size:clamp(34px,3.6vw,54px);line-height:1.22}.why-cards{background:#f1f4f7;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:22px;display:grid}.why-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:12px;flex-direction:column;padding:16px 16px 26px;display:flex}.why-card-visual{aspect-ratio:4/3;background:#fff;border-radius:8px;margin-bottom:18px;overflow:hidden}.why-card-visual.is-empty{border:1px dashed #cbd6e0}.why-card-visual img{object-fit:contain;object-position:center;width:100%;height:100%}.why-card h3{margin:0 0 8px;font-size:20px}.why-card p{color:var(--muted);margin:0;font-size:15px;line-height:1.6}.tech-operation{background:#fff;padding:74px 0 54px}.tech-operation-grid{grid-template-columns:.86fr 1.14fr;align-items:center;gap:56px;display:grid}.tech-operation p{max-width:520px;color:var(--muted);font-size:17px}.tech-preview{box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.tech-preview img{aspect-ratio:16/9;object-fit:cover;object-position:center;width:100%}.home-statement{padding:54px 0 64px}.home-statement p{max-width:1180px;margin-bottom:0;padding-bottom:28px;font-size:clamp(32px,4.2vw,60px);line-height:1.18;position:relative}.home-statement p:after{content:"";background:var(--blue);height:4px;position:absolute;bottom:0;left:0;right:0}.home-cta-band{background:linear-gradient(90deg,#061521 0%,#08243a 100%);padding:38px 0}.home-cta-band .cta-grid{grid-template-columns:1fr auto}.home-cta-band h2{font-size:clamp(26px,2.7vw,36px)}.home-cta-band p{margin:6px 0 0}.hero-section{background:var(--deep);color:#fff;align-items:center;min-height:820px;display:grid;position:relative;overflow:hidden}.hero-bg{opacity:1;background-image:url(/assets/home-hero.png);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg, #071b2bf5 0%, #071b2bb3 42%, #071b2b2e 100%), linear-gradient(180deg, #071b2b00 70%, var(--bg) 100%);position:absolute;inset:0}.hero-inner{padding:120px 0 150px;position:relative}.eyebrow{color:var(--blue);margin:0 0 18px;font-size:13px;font-weight:800}h1,h2,h3,p{word-break:keep-all;text-wrap:pretty}h1{letter-spacing:0;max-width:760px;margin:0;font-size:clamp(48px,7vw,92px);font-weight:800;line-height:1.08}.hero-section h1{min-height:calc(3.24*clamp(48px,7vw,92px))}html[lang=en] .hero-section h1{max-width:840px;font-size:clamp(42px,5.1vw,64px)}.hero-copy{color:#ffffffd1;max-width:610px;margin:26px 0 36px;font-size:19px}.section{padding:132px 0}.section-head{margin-bottom:46px}.section-head.spread{grid-template-columns:minmax(0,1.1fr) minmax(300px,.75fr);align-items:end;gap:48px;display:grid}.section-head h2,.why-grid h2,.project-copy h2,.cta-grid h2,.page-hero h1{letter-spacing:0;margin:0;font-size:clamp(34px,4vw,56px);font-weight:780;line-height:1.18}.section-head p,.lead,.project-copy p,.cta-grid p,.page-copy{color:var(--muted);font-size:18px}.business-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.business-card{border:1px solid var(--line);color:#fff;background-position:50%;background-size:cover;border-radius:8px;flex-direction:column;justify-content:flex-end;min-height:310px;transition:transform .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.business-card:before{content:"";z-index:0;background:linear-gradient(#0818260a 0%,#08182638 38%,#081826e0 100%),linear-gradient(90deg,#0818263d,#08182605);position:absolute;inset:0}.business-card-copy{z-index:1;padding:24px;position:relative}.business-card:hover{border-color:#1677c88c;transform:translateY(-4px)}.business-card span{color:#ffffffb3;font-weight:800}.business-card h3{margin:8px 0;font-size:25px;line-height:1.25}.business-card p{color:#ffffffc7;margin:0 0 24px}.business-card b{font-size:14px}.why-section{background:#fff}.why-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start;gap:72px;display:grid}.principle-list{gap:20px;display:grid}.principle-item{border-top:1px solid var(--line);grid-template-columns:72px 1fr;gap:22px;padding:28px 0;display:grid}.principle-item:last-child{border-bottom:1px solid var(--line)}.principle-item span{color:var(--blue);font-weight:800}.principle-item h3{margin:0 0 8px;font-size:24px}.principle-item p{color:var(--muted);margin:0}.project-section{background:var(--soft)}.project-grid{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:56px;display:grid}.project-image{box-shadow:var(--shadow);aspect-ratio:16/10;border-radius:8px;overflow:hidden}.project-image img{object-fit:cover;object-position:center top;width:100%;height:100%}.project-copy ul{flex-wrap:wrap;gap:10px;margin:28px 0;padding:0;list-style:none;display:flex}.project-copy li{border:1px solid var(--line);color:#334756;background:#fff;border-radius:999px;padding:8px 13px;font-weight:700}.text-link{color:var(--blue);font-weight:800}.statement-section{background:#fff;padding:128px 0}.statement-section p{max-width:1040px;margin:0 0 26px;font-size:clamp(30px,4vw,56px);font-weight:760;line-height:1.32}.cta-section{background:var(--deep);color:#fff;padding:110px 0}.cta-grid{grid-template-columns:.9fr 1fr;align-items:center;gap:60px;display:grid}.cta-grid p{color:#ffffffc2}.site-footer{color:#ffffffc2;background:#061521;padding:44px 0}.footer-grid{grid-template-columns:1.2fr 1fr 1.2fr;gap:40px;display:grid}.footer-grid strong{color:#fff;font-weight:850}.footer-grid nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;display:grid}.footer-note{text-align:right;margin:0}.page-hero{border-bottom:1px solid var(--line);background:#fff;padding:104px 0 74px}.page-hero-image-bg{isolation:isolate;background-color:var(--deep);color:#fff;background-position:50%;background-size:cover;align-items:center;min-height:360px;display:flex;position:relative;overflow:hidden}.page-hero-image-bg:before{z-index:-2;content:"";background:inherit;position:absolute;inset:0}.page-hero-image-bg:after{z-index:-1;content:"";background:linear-gradient(90deg,#061521c2 0%,#0615218a 45%,#06152138 100%),linear-gradient(#0615212e 0%,#0615214d 100%);position:absolute;inset:0}.projects-hero{background-image:url(/assets/hero-projects.png)}.technology-hero{background-image:url(/assets/hero-technology.png)}.company-hero{background-image:url(/assets/hero-company.png)}.contact-hero{background-image:url(/assets/hero-contact.png)}.page-hero-image-bg .eyebrow{color:#62b6ff}.page-hero-image-bg .page-copy{color:#ffffffd1}.page-hero-grid h1{text-wrap:balance}.page-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(360px,.8fr);align-items:center;gap:58px;display:grid}.page-hero-image{aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:8px}.page-hero .eyebrow{margin-bottom:14px}.page-copy{max-width:740px;margin-top:22px}.content-section{padding:88px 0}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.story-grid{grid-template-columns:minmax(280px,.9fr) minmax(0,1fr);align-items:start;gap:72px;display:grid}.story-grid h2{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.2}.story-grid p{color:var(--muted);margin:0;font-size:19px}.chip-row{flex-wrap:wrap;gap:10px;margin-bottom:30px;display:flex}.chip-row span{border:1px solid var(--line);color:#40515f;background:#fff;border-radius:999px;align-items:center;min-height:40px;padding:0 15px;font-weight:700;display:inline-flex}.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.project-card{border:1px solid var(--line);background:#fff;border-radius:8px;transition:transform .18s,box-shadow .18s;overflow:hidden}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.project-card img{aspect-ratio:16/9;object-fit:cover;width:100%}.project-card div{padding:26px}.project-card h2{margin:0 0 10px;font-size:27px;line-height:1.25}.project-card p:not(.eyebrow){color:var(--muted)}.project-card b{color:var(--blue)}.layer-stack{gap:14px;display:grid}.layer-item{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:76px minmax(180px,.35fr) 1fr;align-items:center;gap:26px;padding:26px;display:grid}.layer-item span{color:var(--blue);font-weight:850}.layer-item h2{margin:0;font-size:25px}.layer-item p{color:var(--muted);margin:0}.technology-image-panel{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:268px;overflow:hidden}.technology-image-panel img{object-fit:cover;width:100%;height:100%;min-height:268px}.process-line{counter-reset:process;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.process-line li{counter-increment:process;border:1px solid var(--line);background:#fff;border-radius:8px;align-items:end;min-height:118px;padding:18px;font-weight:800;display:flex;position:relative}.process-line li:before{content:counter(process, decimal-leading-zero);color:var(--blue);font-size:13px;position:absolute;top:16px;left:18px}.contact-process{grid-template-columns:repeat(4,minmax(0,1fr))}.number-list{margin:18px 0 0;padding-left:22px}.number-list li{margin:8px 0}.faq-list{gap:12px;display:grid}.faq-list details{border:1px solid var(--line);background:#fff;border-radius:8px;padding:20px 22px}.faq-list summary{cursor:pointer;font-weight:800}.faq-list p{color:var(--muted)}.bottom-cta{background:var(--deep);color:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding:34px;display:flex}.bottom-cta h2{margin:0;font-size:clamp(26px,3vw,38px);line-height:1.25}.dark-panel{background:var(--deep);color:#fff}.dark-panel p,.dark-panel li{color:#ffffffc7}.timeline{gap:14px;display:grid}.timeline article{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:140px 1fr;gap:28px;padding:24px;display:grid}.timeline span{color:var(--blue);font-weight:850}.timeline p{color:var(--muted);margin:0}.table-caption{color:var(--muted);margin-top:14px;font-size:14px}.insight-card{transition:transform .18s,box-shadow .18s;display:block}.insight-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.insight-card small{color:#6a7782;margin-top:20px;font-weight:700;display:block}.article-body{max-width:820px}.article-body p{color:#324453;font-size:19px}.article-body .notice{margin:30px 0}.side-stack{align-content:start;gap:18px;display:grid}.info-panel,.list-panel,.contact-form{border:1px solid var(--line);background:#fff;border-radius:8px;padding:28px}.info-panel h2,.info-panel h3,.list-panel h2{margin:0 0 12px;font-size:26px;line-height:1.25}.info-panel p,.list-panel p{color:var(--muted)}.list-panel ul{margin:18px 0 0;padding-left:20px}.list-panel li{margin:8px 0}.data-table{border-collapse:collapse;border:1px solid var(--line);background:#fff;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:16px}.data-table th{width:220px;color:var(--muted);font-weight:700}.contact-form{gap:16px;display:grid}.contact-form label{color:#314250;gap:7px;font-weight:700;display:grid}.contact-form input:not([type=checkbox]):not([type=radio]),.contact-form textarea,.contact-form select{border:1px solid var(--line);background:#fbfcfd;border-radius:8px;width:100%;padding:13px 14px}.contact-form label span{align-items:center;gap:10px;min-height:44px;display:flex}.contact-form input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue);flex:none;margin:0}.contact-form textarea{resize:vertical;min-height:150px}.notice{border-left:4px solid var(--blue);color:#254359;background:#eef7ff;padding:18px 20px}:focus-visible{outline-offset:3px;outline:3px solid #1677c87a}@media (max-width:1023px){.container{width:min(100% - 64px,1280px)}.nav-shell{grid-template-columns:auto auto;justify-content:space-between}.site-nav,.nav-actions{display:none}.menu-button{border:1px solid var(--line);cursor:pointer;border-radius:999px;place-content:center;gap:5px;width:44px;min-height:44px;display:grid}.menu-button span{background:var(--navy);width:18px;height:2px}.menu-button b{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.menu-toggle:checked~.site-nav,.menu-toggle:checked~.nav-actions{grid-column:1/-1;justify-content:stretch;gap:10px;width:100%;padding-bottom:18px;display:grid}.site-nav a{border-bottom:1px solid var(--line);align-items:center;min-height:44px;display:flex}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero,.capability-grid,.home-why-grid,.tech-operation-grid,.home-cta-band .cta-grid{grid-template-columns:1fr}.home-hero{background:linear-gradient(90deg,#04121ff5 0%,#04121fc7 38%,#04121f42 100%),linear-gradient(#04121f14 0%,#04121f4d 100%),url(/assets/home-hero.png) 50%/cover no-repeat;min-height:620px}.home-hero-copy-inner{width:min(100% - 64px,1280px);padding:82px 0 68px}.capability-item{border-right:0;border-bottom:1px solid var(--line)}.capability-item:last-child{border-bottom:0}.business-mosaic{grid-template-rows:260px 220px 220px;grid-template-columns:1fr 1fr}.business-tile-large{grid-area:auto/1/auto/-1}.section-head.spread,.why-grid,.project-grid,.cta-grid,.footer-grid,.content-grid,.page-hero-grid,.story-grid{grid-template-columns:1fr}.project-card-grid,.process-line,.contact-process{grid-template-columns:repeat(2,minmax(0,1fr))}.layer-item{grid-template-columns:1fr;gap:8px}.footer-note{text-align:left}}@media (max-width:767px){.container{width:calc(100% - 40px)}.hero-section{min-height:680px}.home-hero{background:linear-gradient(90deg,#04121ff5 0%,#04121fb8 58%,#04121f5c 100%),linear-gradient(#04121f0f 0%,#04121f57 100%),url(/assets/home-hero.png) 58%/cover no-repeat;min-height:620px}.home-hero-copy-inner{width:calc(100% - 40px);padding:64px 0 52px}.home-hero h1{min-height:136.08px;font-size:42px}html[lang=en] .home-hero h1{font-size:34px}.capability-grid{min-height:0}.capability-item{grid-template-columns:44px 1fr;padding:22px 0}.business-showcase{padding-top:68px}.business-showcase .text-link{justify-self:start}.business-mosaic{grid-template-rows:none;grid-template-columns:1fr}.business-tile,.business-tile-wide{grid-column:auto;min-height:230px}.business-tile-copy{padding:22px}.footer-grid nav a,.logo{align-items:center;min-height:44px;display:flex}.text-link{align-items:center;min-height:44px;display:inline-flex}.faq-list summary{align-items:center;min-height:44px;display:flex}.home-why-grid{gap:34px}.why-cards{grid-template-columns:1fr;padding:16px}.tech-operation{padding:64px 0 44px}.home-statement{padding:44px 0 54px}.home-cta-band{padding:34px 0}.hero-inner{padding:82px 0 110px}h1{font-size:44px}.hero-section h1{min-height:142.56px}html[lang=en] .hero-section h1{font-size:38px}.hero-copy,.section-head p,.lead,.project-copy p,.cta-grid p,.page-copy{font-size:16px}.section{padding:84px 0}.business-grid{grid-template-columns:1fr}.business-card{min-height:240px}.principle-item{grid-template-columns:1fr}.project-grid{gap:32px}.statement-section,.cta-section{padding:78px 0}.page-hero{padding:74px 0 56px}.data-table th,.data-table td{width:100%;display:block}.project-card-grid,.process-line,.contact-process,.timeline article,.bottom-cta{grid-template-columns:1fr}.bottom-cta{padding:26px;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
