.it-page h2 { font-size: clamp(2rem, 3.4vw, 3.3rem); line-height: 1.13; letter-spacing: -.035em; }
.it-hero { position: relative; min-height: 665px; background: #07182b; color: white; isolation: isolate; overflow: hidden; }
.it-hero-image { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; z-index: -2; }
.it-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(4,17,32,.96),rgba(4,17,32,.8) 34%,rgba(4,17,32,.12) 80%); z-index: -1; }
.it-hero-content { padding-top: 38px; padding-bottom: 45px; }
.it-hero .breadcrumbs { margin-bottom: 44px; }
.it-hero h1 { font-size: clamp(3.2rem, 5.7vw, 5.7rem); letter-spacing: -.05em; line-height: 1.04; max-width: 770px; margin: 17px 0 25px; }
.it-hero h1 span { color: #45c8ec; }
.it-hero p { font-size: clamp(1.05rem, 1.5vw, 1.3rem); color: #d4e3ee; max-width: 620px; }
.it-hero-note { display: flex; align-items: center; gap: 10px; color: #b8cfdf; font-size: .8rem; margin-top: 48px; }
.it-hero-note span { height: 7px; width: 7px; background: #4cc9e9; border-radius: 50%; }
.it-section-nav { border-bottom: 1px solid #dce5ec; background: white; }
.it-section-nav .container { display: flex; gap: 38px; overflow-x: auto; }
.it-section-nav a { padding: 23px 0; font-size: .86rem; font-weight: 600; white-space: nowrap; }
.it-section-nav a:hover { color: #087bb8; }
.it-overview { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 80px; }
.it-overview .lead { margin-top: 25px; }
.it-team-photo { margin: 0; position: relative; }
.it-team-photo img { width: 100%; height: 440px; object-fit: cover; border-radius: 4px; }
.it-team-photo figcaption { background: #0a2342; color: #e0edf5; font-size: .8rem; padding: 19px 24px; }
.it-soft { background: #f2f6f9; }
.it-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 60px; margin-bottom: 46px; }
.it-section-heading h2 { margin-bottom: 0; }
.it-section-heading > p { max-width: 370px; margin-bottom: 3px; color: #526579; }
.it-service-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: #d7e3ec; border: 1px solid #d7e3ec; }
.it-service { padding: 30px; background: white; display: flex; flex-direction: column; transition: background .2s; }
.it-service:hover { background: #f8fcff; }
.it-number { color: #087bb8; font-size: .8rem; font-weight: 700; margin-bottom: 30px; }
.it-service h3 { font-size: 1.3rem; margin-bottom: 15px; }
.it-service p { color: #526579; font-size: .94rem; flex: 1; }
.it-service small { color: #075a9c; font-size: .73rem; padding-top: 17px; border-top: 1px solid #e6edf3; }
.it-product-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 25px; }
.it-product { background: #f3f7fa; padding: 35px; border-top: 3px solid #0caedb; display: flex; flex-direction: column; }
.it-product:nth-child(2) { background: #edf5f5; border-color: #379c9b; }
.it-product:nth-child(3) { background: #f4f2ee; border-color: #b39162; }
.it-product h3 { font-size: 2rem; margin: 17px 0; }
.it-product h4 { font-size: 1.06rem; line-height: 1.5; font-weight: 600; }
.it-product p { color: #526579; flex: 1; }
.it-text-link { color: #075a9c; font-weight: 650; font-size: .9rem; display: inline-flex; gap: 25px; align-items: center; }
.it-text-link:hover { text-decoration: underline; }
.it-cloud { background: #07182b; color: white; position: relative; isolation: isolate; overflow: hidden; }
.it-cloud-visual { position: absolute; inset: 0 47% 0 0; background: linear-gradient(90deg, transparent 50%,#07182b),url('../images/it-cloud-hero.webp') center/cover; z-index: -1; }
.it-cloud-copy { width: 48%; margin-left: auto; padding: 90px 0; }
.it-cloud p { color: #bbcede; }
.it-provider-list { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 30px 0; }
.it-provider-list span { border: 1px solid #30475b; padding: 12px 8px; text-align: center; font-size: .85rem; }
.it-stack-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 30px; }
.it-stack-grid > div { border-top: 1px solid #bdcedb; padding-top: 25px; }
.it-stack-grid h3 { font-size: 1.1rem; }
.it-stack-grid p { font-size: .92rem; color: #526579; line-height: 2; }
.it-process { padding: 0; margin: 50px 0 0; list-style: none; display: grid; grid-template-columns: repeat(6,1fr); gap: 25px; }
.it-process li { border-top: 2px solid #d6e6ef; padding-top: 20px; }
.it-process li > span { color: #087bb8; font-size: 1.5rem; font-weight: 300; }
.it-process h3 { font-size: 1.1rem; margin: 17px 0 10px; }
.it-process p { font-size: .86rem; color: #526579; }
.it-sectors { background: #edf3f7; }
.it-sector-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; }
.it-sector-layout > div > p { color: #526579; }
.it-sector-list { display: grid; grid-template-columns: 1fr 1fr; gap: 25px 35px; }
.it-sector-list > div { border-bottom: 1px solid #cddde7; padding-bottom: 12px; }
.it-sector-list h3 { font-size: 1.08rem; }
.it-sector-list p { font-size: .9rem; color: #526579; }
.it-final { padding: 85px 0; text-align: center; background: #0a2342; color: white; }
.it-final h2 { margin: 18px 0 22px; }
.it-final p { color: #c4d6e3; }
.it-final-email { display: block; width: fit-content; margin: 24px auto 0; color: #c4d6e3; font-size: .9rem; }
.it-page a:focus-visible { outline: 3px solid #0caedb; outline-offset: 5px; }
@media (max-width: 1050px) { .it-overview { gap: 40px; } .it-stack-grid { grid-template-columns: repeat(2,1fr); } .it-process { grid-template-columns: repeat(3,1fr); } .it-sector-layout { gap: 40px; } .it-service,.it-product { padding: 25px; } }
@media (max-width: 760px) { .it-hero { min-height: 620px; } .it-hero::after { background: linear-gradient(90deg,rgba(4,17,32,.94),rgba(4,17,32,.65)); } .it-hero .breadcrumbs { margin-bottom: 34px; } .it-hero-content { padding-top: 25px; } .it-hero h1 { font-size: clamp(3.15rem,10vw,4.5rem); } .it-section-nav .container { gap: 25px; } .it-overview,.it-sector-layout { grid-template-columns: 1fr; gap: 35px; } .it-team-photo img { height: 330px; } .it-section-heading { display: block; } .it-section-heading > p { margin-top: 25px; } .it-service-grid { grid-template-columns: repeat(2,1fr); } .it-product-grid { grid-template-columns: 1fr; } .it-cloud-visual { inset: 0; opacity: .2; } .it-cloud-copy { width: 100%; padding: 65px 0; } .it-final { padding: 65px 0; } }
@media (max-width: 480px) { .it-service-grid,.it-stack-grid { grid-template-columns: 1fr; } .it-process,.it-sector-list { grid-template-columns: repeat(2,1fr); gap: 24px; } .it-hero .button-row { align-items: stretch; flex-direction: column; } .it-hero-note { margin-top: 30px; } .it-provider-list { grid-template-columns: repeat(2,1fr); } }
