:root{--navy:#07152d;--blue:#173f9e;--cyan:#20b8e6;--ink:#142035;--text:#3d485b;--muted:#738096;--line:#dfe5ec;--pale:#f3f6f9;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"IBM Plex Sans KR",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.skip-link{position:fixed;top:-5rem}.skip-link:focus{top:1rem;z-index:99;background:#fff;padding:1rem}.site-header{height:88px;padding:0 max(3vw,24px);display:flex;align-items:center;gap:4vw;position:absolute;inset:0 0 auto;z-index:20;color:#fff;border-bottom:1px solid #ffffff30}.brand{width:110px}.brand img{width:100%;height:32px}.site-header nav{display:flex;gap:2.7vw;margin:auto;font-weight:600}.header-cta{border:1px solid #ffffff80;padding:.6rem 1.1rem}.menu-button{display:none;background:none;border:0;color:#fff}.menu-button span{display:block;width:24px;height:2px;background:currentColor;margin:5px}.menu-button b{font-size:0}.eyebrow{font:700 .74rem Manrope;letter-spacing:.16em;color:var(--blue);margin:0 0 1rem}h2{font-size:clamp(2.5rem,4vw,4.3rem);line-height:1.18;letter-spacing:-.045em;margin:0}.hero{min-height:780px;height:100svh;display:grid;grid-template-columns:minmax(24px,1fr) minmax(0,780px) minmax(340px,460px) minmax(24px,1fr);align-items:center;color:#fff;background:linear-gradient(110deg,#04122df7,#08214de6),url('./assets/case-server.jpg') center/cover}.hero-copy{grid-column:2;padding:130px 4rem 70px 0}.hero .eyebrow{color:#78d8f4}.hero h1{font-size:clamp(3.4rem,5.1vw,5.8rem);line-height:1.13;letter-spacing:-.055em;margin:0 0 2rem}.hero h1 em{font-style:normal;color:#8be2fa}.hero-description{max-width:720px;color:#d2dbe9;font-size:1.08rem;line-height:1.9;margin-bottom:2.3rem}.hero-actions{display:flex;gap:.8rem}.button{min-width:190px;padding:.95rem 1.2rem;display:inline-flex;justify-content:center;font-weight:600}.primary{background:#fff;color:var(--navy)}.ghost{border:1px solid #ffffff80}.hero-panel{grid-column:3;border-left:1px solid #ffffff40;padding:2.4rem}.hero-panel>p{font:700 .72rem Manrope;letter-spacing:.16em;color:#78d8f4}.hero-panel ol{list-style:none;padding:0}.hero-panel li{display:flex;gap:1.2rem;padding:1.3rem 0;border-top:1px solid #ffffff28}.hero-panel b{color:var(--cyan)}.section-label{font:700 .72rem Manrope;letter-spacing:.14em;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem}.section-label span{color:var(--blue);margin-right:.8rem}.intro{max-width:var(--max);margin:auto;padding:9rem 2rem;display:grid;grid-template-columns:180px 1.2fr .8fr;gap:5vw}.intro-copy{padding-top:2rem;color:var(--text);font-size:1.05rem}.intro-copy p:last-child{font-weight:600;color:var(--blue)}.maintenance{background:var(--pale);padding:9rem max(2rem,calc((100vw - var(--max))/2))}.maintenance-head{display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;align-items:end;margin-bottom:4rem}.maintenance-head>p{color:var(--text)}.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.care-card{background:#fff;padding:2.2rem;min-height:420px;border-top:4px solid #ccd5e1}.care-card.featured{background:var(--blue);color:#fff;border-color:var(--cyan)}.care-card>span{font:700 .8rem Manrope;color:var(--blue)}.featured>span{color:#8de1f8}.care-card h3{font-size:1.7rem;margin:3.5rem 0 1rem}.care-card p{color:var(--muted)}.featured p{color:#d5def4}.care-card ul{border-top:1px solid var(--line);padding:1.2rem 0 0;list-style:none;margin-top:2rem}.care-card li:before{content:"·";color:var(--cyan);margin-right:.6rem}.process{max-width:var(--max);margin:auto;padding:9rem 2rem;display:grid;grid-template-columns:180px 1fr;gap:5vw}.process-title,.process-list{grid-column:2}.process-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}.process-list div{padding:2rem 1.2rem;border-right:1px solid var(--line)}.process-list b{color:var(--blue)}.process-list p{color:var(--muted);font-size:.9rem}.solutions{background:var(--navy);color:#fff;padding:9rem max(2rem,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.solutions .eyebrow,.contact .eyebrow{color:#74d7f3}.solutions-copy>p:last-child,.contact-copy>p:last-child{color:#b8c3d4;margin-top:2rem}.solution-services article{display:grid;grid-template-columns:50px 1fr;border-top:1px solid #33415a;padding:1.4rem 0}.solution-services article>span{color:var(--cyan)}.solution-services h3{margin:0}.solution-services p{color:#aeb9ca;margin:.3rem 0}.field,.references,.partners,.company,.contact{padding:9rem max(2rem,calc((100vw - var(--max))/2))}.field-head{max-width:720px;margin-bottom:3rem}.field-head>p:last-child,.partner-copy>p:last-child{color:var(--muted)}.field-gallery{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:1rem}.field-gallery figure{margin:0;background:var(--pale)}.field-gallery img{width:100%;height:350px;object-fit:cover}.field-gallery figure:first-child img{height:430px}.field-gallery figcaption{padding:1rem;font-weight:600}.references{background:var(--pale)}.reference-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:3rem}.reference-summary{border-left:1px solid var(--line);padding-left:2rem}.reference-summary strong{display:block;font:800 4rem Manrope;color:var(--blue);line-height:1}.reference-grid{display:grid;grid-template-columns:repeat(6,1fr);background:#fff}.reference-grid span{min-height:86px;display:grid;place-items:center;text-align:center;padding:.7rem;border:1px solid var(--line);font-weight:600;font-size:.9rem}.reference-grid span:last-child{background:var(--blue);color:#fff}.partners,.company,.contact{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.partner-logos{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.partner-logos div{height:145px;display:grid;place-items:center;border-right:1px solid var(--line)}.partner-logos img{max-width:70%;max-height:55px}.product-wrap{margin-top:1.5rem}.solution-line{display:flex;flex-wrap:wrap;gap:.5rem}.solution-line span{border:1px solid var(--line);padding:.35rem .7rem;font-size:.72rem;color:var(--muted)}.company{background:#edf2f7}.company-facts{margin:0}.company-facts div{display:grid;grid-template-columns:100px 1fr;padding:1.1rem 0;border-top:1px solid #ccd5df}.company-facts dt{color:var(--muted)}.company-facts dd{margin:0;font-weight:600}.contact{background:var(--blue);color:#fff}.office-grid{display:grid;gap:1rem}.office-grid article{border:1px solid #ffffff40;padding:1.8rem}.office-grid article>span{font:.7rem Manrope;color:#91def5}.office-grid h3{font-size:1.5rem}.office-grid small{font-size:.7rem;border:1px solid #ffffff70;padding:.15rem .4rem}.office-grid p{color:#d8e1f3}.office-grid article div{border-top:1px solid #ffffff30;padding-top:.8rem;display:flex;justify-content:space-between;font-size:.84rem}footer{background:#050e20;color:#9eabc1;padding:3.5rem max(2rem,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr 2fr;gap:2rem;font-size:.82rem}.footer-brand img{width:120px}.copyright{grid-column:1/-1;border-top:1px solid #263148;padding-top:1rem}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:980px){.menu-button{display:block;margin-left:auto}.site-header nav{display:none;position:absolute;inset:0 0 auto;background:var(--navy);padding:95px 2rem 2rem;flex-direction:column}.site-header nav.is-open{display:flex}.header-cta{display:none}.hero{height:auto;grid-template-columns:1fr}.hero-copy,.hero-panel{grid-column:1}.hero-copy{padding:140px 2rem 3rem}.hero-panel{margin:0 2rem 4rem}.intro,.process,.solutions,.partners,.company,.contact{grid-template-columns:1fr}.intro,.process,.maintenance,.solutions,.field,.references,.partners,.company,.contact{padding:7rem 1.5rem}.process-title,.process-list{grid-column:1}.process-list{grid-template-columns:1fr 1fr}.care-grid{grid-template-columns:1fr}.care-card{min-height:0}.field-gallery{grid-template-columns:1fr 1fr}.field-gallery figure:first-child{grid-column:1/-1}.reference-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){h2{font-size:2.5rem}.hero h1{font-size:3.1rem}.hero-actions{flex-direction:column}.maintenance-head{display:block}.process-list{grid-template-columns:1fr}.field-gallery{grid-template-columns:1fr}.field-gallery figure:first-child{grid-column:auto}.field-gallery img,.field-gallery figure:first-child img{height:280px}.reference-head{display:block}.reference-summary{margin-top:2rem}.reference-grid{grid-template-columns:repeat(2,1fr)}.partner-logos{grid-template-columns:1fr}.partner-logos div{border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr}}

/* Interactive hero network canvas */
.hero{background:radial-gradient(circle at 76% 28%,#123f7d 0,#071b3d 38%,#041126 76%);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,17,38,.92) 0,rgba(4,17,38,.52) 56%,rgba(4,17,38,.1));pointer-events:none;z-index:1}
.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.95}
.hero-copy,.hero-panel{position:relative;z-index:2}
.hero-panel{background:rgba(5,19,44,.18);backdrop-filter:blur(2px)}

/* Keep the two intended hero-title lines stable at every viewport. */
#hero-title{font-size:clamp(3rem,4.15vw,4.25rem);line-height:1.12;white-space:nowrap;word-break:keep-all}
#hero-title em{display:inline-block;white-space:nowrap}
@media(max-width:640px){#hero-title{font-size:clamp(2.05rem,9vw,2.8rem);letter-spacing:-.06em}}

/* Mobile navigation close control */
@media(max-width:980px){
  .site-header .brand{position:relative;z-index:24;flex-shrink:0}
  .menu-button{position:relative;z-index:24;width:44px;height:44px;padding:10px;cursor:pointer}
  .menu-button span{transition:transform .25s ease,opacity .2s ease;margin:5px auto}
  .menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .site-header nav{z-index:22;box-shadow:0 18px 35px rgba(0,0,0,.24)}
}

/* Preserve only the author-defined line breaks in section headings. */
h2{font-size:clamp(2.25rem,2.8vw,3rem);line-height:1.18;white-space:nowrap;word-break:keep-all;letter-spacing:-.055em}
.solutions h2,.partners h2,.company h2,.contact h2{font-size:clamp(2.2rem,2.6vw,2.8rem)}
@media(max-width:640px){
  h2,.solutions h2,.partners h2,.company h2,.contact h2{font-size:clamp(1.45rem,7.2vw,2.15rem);letter-spacing:-.065em}
}

/* Client reference logos */
.reference-grid>.reference-item{min-height:132px;padding:1rem;background:#fff;align-content:center}
.reference-grid>.has-logo img{width:min(92%,180px);height:66px;max-width:none;max-height:none;object-fit:contain;image-rendering:auto;filter:saturate(.95);transition:filter .2s ease,transform .2s ease}
.reference-grid>.has-logo:hover img{filter:saturate(1);transform:scale(1.04)}
.reference-grid>.reference-more{background:var(--blue);color:#fff;font:700 .76rem Manrope;letter-spacing:.1em}
.reference-grid .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;min-height:0!important}
.reference-grid .reference-fallback{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal;border:0;min-height:0;font-weight:600;color:#4d586d}
@media(max-width:640px){.reference-grid>.reference-item{min-height:112px}.reference-grid>.has-logo img{width:min(90%,150px);height:56px;max-width:none;max-height:none}}

/* Customer support email */
.support-email{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.15rem 1rem;width:min(100%,390px);margin-top:2rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.35);transition:background .2s ease,border-color .2s ease}
.support-email span{grid-column:1;font-size:.75rem;color:#b9d5f4}
.support-email strong{grid-column:1;font:600 1rem Manrope,sans-serif;color:#fff}
.support-email b{grid-column:2;grid-row:1/3;color:#91def5;font-size:1.1rem}
.support-email:hover,.support-email:focus-visible{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.7)}

/* Contact label icons */
.support-email span,.office-grid h3{display:flex;align-items:center;gap:.55rem}
.support-email span:before,.office-grid h3:before{content:"";display:inline-block;flex:0 0 auto;width:1.05rem;height:1.05rem;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.support-email span:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Zm0 4-8 5-8-5V6l8 5 8-5v2Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2Zm0 4-8 5-8-5V6l8 5 8-5v2Z'/%3E%3C/svg%3E")}
.office-grid h3:before{width:1.35rem;height:1.35rem;color:#91def5;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 22V2h11v4h5v16h-7v-4h-2v4H4Zm3-3h2v-2H7v2Zm0-5h2v-2H7v2Zm0-5h2V7H7v2Zm5 5h2v-2h-2v2Zm0-5h2V7h-2v2Zm3 10h2v-2h-2v2Zm0-5h2v-2h-2v2Zm0-5h2V7h-2v2Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 22V2h11v4h5v16h-7v-4h-2v4H4Zm3-3h2v-2H7v2Zm0-5h2v-2H7v2Zm0-5h2V7H7v2Zm5 5h2v-2h-2v2Zm0-5h2V7h-2v2Zm3 10h2v-2h-2v2Zm0-5h2v-2h-2v2Zm0-5h2V7h-2v2Z'/%3E%3C/svg%3E")}
