/* GTech Medical Solutions - shared styles for every page.
   Layout/typography classes are c1, c2 ...; hover states are h1..; focus states are f1.. */

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: #F5F7FA; font-family: "IBM Plex Sans", system-ui, sans-serif; color: #0A1B33; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: "Manrope", system-ui, sans-serif; margin: 0; letter-spacing: -0.025em; }
p { margin: 0; }
a { color: #1273E6; text-decoration: none; }
a:hover { color: #0A55B0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
details summary::-webkit-details-marker { display: none; }
@keyframes rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes revealUp { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes slowZoom { from { transform: scale(1.12); } to { transform: scale(1); } }
@keyframes drawLine { from { width: 0; } to { width: 26px; } }
@keyframes softPulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.35); opacity: 0.55; } }
@keyframes wordUp { from { opacity: 0; transform: translateY(105%) rotate(2.5deg); } to { opacity: 1; transform: none; } }
@keyframes clipWipe { from { clip-path: inset(0 0 100% 0); } to { clip-path: inset(0 0 0 0); } }
@keyframes sheen { 0% { transform: translateX(-130%) skewX(-18deg); } 55%, 100% { transform: translateX(240%) skewX(-18deg); } }
@keyframes ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes scanline { 0% { transform: translateY(-10vh); opacity: 0; } 12% { opacity: 0.85; } 88% { opacity: 0.85; } 100% { transform: translateY(70vh); opacity: 0; } }
@keyframes floatY { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@keyframes ringOut { 0% { transform: scale(0.6); opacity: 0.7; } 100% { transform: scale(2.1); opacity: 0; } }
@keyframes arrowNudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(5px); } }
@keyframes gridDrift { from { background-position: 0 0; } to { background-position: 0 -72px; } }
@keyframes curtainIn { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes curtainOut { from { transform: translateY(0); } to { transform: translateY(-100%); } }
@keyframes blurIn { from { opacity: 0; filter: blur(9px); transform: translateY(12px); } to { opacity: 1; filter: blur(0); transform: none; } }
@keyframes lineGrow { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }

/* ---------- component styles ---------- */
.c1 {
  position: relative;
  background: #0A1B33;
  color: #fff;
  overflow: hidden;
}
.c2 {
  position: absolute;
  inset: 0;
  background: url('../assets/gtech-hero.webp') center right/cover no-repeat;
  opacity: 0.95;
  will-change: transform;
  animation: slowZoom 22s ease-out both;
}
.c3 {
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg,#06121F 0%, rgba(8,24,45,0.95) 38%, rgba(10,27,51,0.35) 62%, rgba(10,27,51,0.12) 100%);
}
.c4 {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(127,192,255,0.09) 1px, transparent 1px);
  background-size: 100% 36px;
  animation: gridDrift 6s linear infinite;
  pointer-events: none;
}
.c5 {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: linear-gradient(90deg,transparent,rgba(127,192,255,0.85),transparent);
  animation: scanline 7s cubic-bezier(.5,0,.5,1) infinite;
  pointer-events: none;
}
.c6 {
  position: relative;
  max-width: 1220px;
  margin: 0 auto;
  padding: 110px 28px 100px;
}
.c7 {
  max-width: 660px;
  animation: rise .8s cubic-bezier(.22,.7,.3,1) both;
}
.c8 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #7FC0FF;
  margin-bottom: 26px;
}
.c9 {
  width: 26px;
  height: 1px;
  background: #4FA8F7;
  display: block;
  animation: drawLine .9s .2s ease both;
}
.c10 {
  font-size: 60px;
  line-height: 1.03;
  font-weight: 800;
  margin-bottom: 24px;
}
.c11 {
  color: #7FC0FF;
  font-weight: 600;
}
.c12 {
  font-size: 18px;
  line-height: 1.65;
  color: rgba(255,255,255,0.78);
  max-width: 560px;
  text-wrap: pretty;
}
.c13 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 38px;
}
.c14 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #1273E6;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 19px 34px;
  border-radius: 999px;
  box-shadow: 0 14px 34px rgba(10,27,51,0.26);
  position: relative;
  overflow: hidden;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}
.c15 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,0.32);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 19px 34px;
  border-radius: 999px;
}
.c16 {
  position: relative;
  border-top: 1px solid rgba(255,255,255,0.12);
  background: rgba(6,18,31,0.55);
}
.c17 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 0 28px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
}
.c18 {
  padding: 26px 24px 26px 0;
}
.c19 {
  display: block;
  font-family: Manrope,sans-serif;
  font-size: 30px;
  font-weight: 800;
}
.c20 {
  font-size: 13.5px;
  color: rgba(255,255,255,0.6);
}
.c21 {
  padding: 26px 24px;
  border-left: 1px solid rgba(255,255,255,0.12);
}
.c22 {
  padding: 26px 0 26px 24px;
  border-left: 1px solid rgba(255,255,255,0.12);
}
.c23 {
  background: #0A1B33;
  border-top: 1px solid rgba(255,255,255,0.1);
  overflow: hidden;
}
.c24 {
  display: flex;
  width: max-content;
  animation: ticker 32s linear infinite;
}
.c25 {
  display: flex;
  gap: 44px;
  padding: 16px 22px;
  align-items: center;
  white-space: nowrap;
}
.c26 {
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.55);
}
.c27 {
  color: #4FA8F7;
}
.c28 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 74px 28px 0;
}
.c29 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
  gap: 18px;
}
.c30 {
  padding: 8px 0;
}
.c31 {
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5A6B80;
}
.c32 {
  display: block;
  font-family: Manrope,sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin-top: 10px;
  letter-spacing: -0.02em;
}
.c33 {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 16px;
  padding: 24px;
  color: #0A1B33;
  box-shadow: 0 1px 2px rgba(10,27,51,0.04);
  transition: transform .35s cubic-bezier(.22,.7,.3,1), box-shadow .35s ease, border-color .3s ease;
}
.c34 {
  font-family: Manrope,sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #1273E6;
  letter-spacing: 0.08em;
}
.c35 {
  display: block;
  font-family: Manrope,sans-serif;
  font-size: 16px;
  font-weight: 700;
}
.c36 {
  display: block;
  margin-top: 6px;
  font-size: 13.5px;
  color: #5A6B80;
  line-height: 1.5;
}
.c37 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 86px 28px 0;
}
.c38 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 40px;
  align-items: end;
  margin-bottom: 44px;
}
.c39 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #1273E6;
  margin-bottom: 18px;
}
.c40 {
  font-size: 40px;
  line-height: 1.12;
  font-weight: 800;
  max-width: 16ch;
}
.c41 {
  font-size: 16px;
  line-height: 1.7;
  color: #5A6B80;
  text-wrap: pretty;
}
.c42 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
  gap: 20px;
}
.c43 {
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 18px;
  padding: 30px;
  transition: transform .4s cubic-bezier(.22,.7,.3,1), box-shadow .4s ease, border-color .3s ease;
}
.c44 {
  font-size: 19px;
  font-weight: 800;
  margin: 14px 0 10px;
}
.c45 {
  font-size: 14.5px;
  line-height: 1.65;
  color: #5A6B80;
}
.c46 {
  background: linear-gradient(160deg,#1273E6,#0A1B33);
  color: #fff;
  border-radius: 18px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.c47 {
  font-family: Manrope,sans-serif;
  font-size: 48px;
  font-weight: 800;
  line-height: 1;
}
.c48 {
  display: block;
  font-size: 14.5px;
  color: rgba(255,255,255,0.8);
  margin-top: 8px;
  line-height: 1.5;
}
.c49 {
  color: #fff;
  font-size: 14.5px;
  font-weight: 600;
  margin-top: 26px;
  display: inline-flex;
  gap: 8px;
}
.c50 {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 32px;
}
.c51 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #1273E6;
  margin-bottom: 16px;
}
.c52 {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.15;
}
.c53 {
  font-size: 14.5px;
  font-weight: 600;
  display: inline-flex;
  gap: 8px;
  align-items: center;
}
.c54 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 20px;
}
.c55 {
  display: block;
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 16px;
  overflow: hidden;
  color: #0A1B33;
  transition: transform .45s cubic-bezier(.22,.7,.3,1), box-shadow .45s ease;
}
.c56 {
  aspect-ratio: 16/10;
  background: url('../assets/gms-xray-dr.webp') center/cover no-repeat;
  transition: transform .8s cubic-bezier(.22,.7,.3,1);
}
.c57 {
  padding: 22px 24px 26px;
}
.c58 {
  font-size: 18px;
  font-weight: 800;
}
.c59 {
  font-size: 14px;
  line-height: 1.6;
  color: #5A6B80;
  margin-top: 8px;
}
.c60 {
  aspect-ratio: 16/10;
  background: url('../assets/gms-carm.webp') center/cover no-repeat;
  transition: transform .8s cubic-bezier(.22,.7,.3,1);
}
.c61 {
  aspect-ratio: 16/10;
  background: url('../assets/gms-cr-viewbox.webp') center/cover no-repeat;
  transition: transform .8s cubic-bezier(.22,.7,.3,1);
}
.c62 {
  margin-top: 86px;
  background: #0A1B33;
  color: #fff;
}
.c63 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 80px 28px;
}
.c64 {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 40px;
}
.c65 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #7FC0FF;
  margin-bottom: 16px;
}
.c66 {
  font-size: 38px;
  font-weight: 800;
  line-height: 1.12;
}
.c67 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,0.32);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 17px 28px;
  border-radius: 999px;
}
.c68 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(230px,1fr));
  gap: 1px;
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 16px;
  overflow: hidden;
}
.c69 {
  background: #0A1B33;
  padding: 30px;
}
.c70 {
  font-family: Manrope,sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #7FC0FF;
}
.c71 {
  font-size: 18px;
  font-weight: 800;
  margin: 12px 0 10px;
}
.c72 {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255,255,255,0.68);
}
.c73 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 48px;
  align-items: center;
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 10px;
  padding: 44px;
}
.c74 {
  font-size: 34px;
  font-weight: 800;
  line-height: 1.15;
  margin-bottom: 8px;
}
.c75 {
  font-size: 17px;
  font-weight: 600;
  color: #1273E6;
  margin-bottom: 16px;
}
.c76 {
  color: #5A6B80;
  font-weight: 500;
}
.c77 {
  font-size: 15.5px;
  line-height: 1.7;
  color: #5A6B80;
  text-wrap: pretty;
}
.c78 {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-size: 14.5px;
  font-weight: 600;
  margin-top: 26px;
}
.c79 {
  display: grid;
  gap: 14px;
}
.c80 {
  background: #F5F7FA;
  border-radius: 16px;
  padding: 26px;
}
.c81 {
  font-family: Manrope,sans-serif;
  font-size: 34px;
  font-weight: 800;
  display: block;
}
.c82 {
  font-size: 14px;
  color: #5A6B80;
}
.c83 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 40px;
  align-items: end;
  margin-bottom: 38px;
}
.c84 {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.14;
}
.c85 {
  font-size: 16px;
  line-height: 1.7;
  color: #5A6B80;
}
.c86 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap: 20px;
}
.c87 {
  border-top: 1px solid #4FA8F7;
  padding-top: 20px;
}
.c88 {
  font-family: Manrope,sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #1273E6;
}
.c89 {
  font-size: 19px;
  font-weight: 800;
  margin: 10px 0 8px;
}
.c90 {
  font-size: 14.5px;
  line-height: 1.6;
  color: #5A6B80;
}
.c91 {
  border-top: 1px solid rgba(10,27,51,0.12);
  padding-top: 20px;
}
.c92 {
  width: 100%;
  background: #F5F7FA;
  overflow-x: clip;
}
.c93 {
  background: #06121F;
  color: rgba(255,255,255,0.68);
  font-size: 12.5px;
  letter-spacing: 0.02em;
}
.c94 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 9px 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
  align-items: center;
}
.c95 {
  color: #7FC0FF;
}
.c96 {
  position: fixed;
  inset: 0;
  z-index: 90;
  background: linear-gradient(160deg,#06121F,#123E75);
  transform: translateY(100%);
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c97 {
  height: 52px;
  width: auto;
  opacity: 0.9;
}
.c98 {
  position: fixed;
  right: 26px;
  bottom: 26px;
  z-index: 70;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: none;
  background: #0A1B33;
  color: #fff;
  font-size: 17px;
  cursor: pointer;
  opacity: 0;
  transform: translateY(14px) scale(0.85);
  transition: opacity .4s ease, transform .4s cubic-bezier(.22,.7,.3,1), background .3s ease;
  box-shadow: 0 14px 34px rgba(10,27,51,0.3);
}
.c99 {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0%;
  z-index: 80;
  background: linear-gradient(90deg,#1273E6,#7FC0FF);
  box-shadow: 0 0 14px rgba(18,115,230,0.45);
}
.c100 {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,0.88);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(10,27,51,0.09);
}
.c101 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  gap: 28px;
}
.c102 {
  display: flex;
  align-items: center;
}
.c103 {
  height: 42px;
  width: auto;
  display: block;
}
.c104 {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  flex-wrap: wrap;
}
.c105 {
  font-size: 14.5px;
  font-weight: 500;
  color: #0A1B33;
  padding: 9px 14px;
  border-radius: 8px;
  transition: background .25s ease, color .25s ease;
  position: relative;
}
.c106 {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: #0A1B33;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  padding: 15px 24px;
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(10,27,51,0.16);
  position: relative;
  overflow: hidden;
  transition: background .3s ease, transform .3s ease;
}
.c107 {
  font-size: 15px;
}
.c108 {
  max-width: 1220px;
  margin: 86px auto 0;
  padding: 0 28px;
}
.c109 {
  background: linear-gradient(120deg,#1273E6,#0A1B33 70%);
  color: #fff;
  border-radius: 10px;
  padding: 56px 48px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 40px;
  align-items: center;
}
.c110 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #BFE0FF;
  margin-bottom: 16px;
}
.c111 {
  width: 26px;
  height: 1px;
  background: #BFE0FF;
  display: block;
}
.c112 {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.14;
  margin-bottom: 14px;
}
.c113 {
  font-size: 16px;
  line-height: 1.7;
  color: rgba(255,255,255,0.82);
}
.c114 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: flex-end;
}
.c115 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  color: #0A1B33;
  font-weight: 600;
  font-size: 12.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 19px 34px;
  border-radius: 999px;
}
.c116 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,0.45);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 19px 34px;
  border-radius: 999px;
}
.c117 {
  margin-top: 86px;
  background: #06121F;
  color: rgba(255,255,255,0.68);
}
.c118 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 64px 28px 32px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
  gap: 40px;
}
.c119 {
  max-width: 300px;
}
.c120 {
  height: 46px;
  width: auto;
  display: block;
  margin-bottom: 18px;
}
.c121 {
  font-size: 14px;
  line-height: 1.7;
}
.c122 {
  display: grid;
  gap: 10px;
  align-content: start;
}
.c123 {
  font-family: Manrope,sans-serif;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 4px;
}
.c124 {
  font-size: 14px;
  color: rgba(255,255,255,0.68);
}
.c125 {
  font-style: normal;
  font-size: 14px;
  line-height: 1.7;
}
.c126 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 20px 28px 40px;
  border-top: 1px solid rgba(255,255,255,0.1);
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
  font-size: 13px;
}
.c127 {
  background: #0A1B33;
  color: #fff;
}
.c128 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 80px 28px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
  gap: 48px;
  align-items: center;
}
.c129 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #7FC0FF;
  margin-bottom: 20px;
}
.c130 {
  font-size: 52px;
  line-height: 1.06;
  font-weight: 800;
  margin-bottom: 22px;
}
.c131 {
  font-size: 17px;
  line-height: 1.7;
  color: rgba(255,255,255,0.76);
  max-width: 52ch;
}
.c132 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}
.c133 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #1273E6;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 18px 32px;
  border-radius: 999px;
}
.c134 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,0.32);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 18px 32px;
  border-radius: 999px;
}
.c135 {
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.16);
  animation: floatY 7s ease-in-out infinite;
}
.c136 {
  width: 100%;
  display: block;
}
.c137 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 48px;
  align-items: center;
}
.c138 {
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(10,27,51,0.08);
  background: #fff;
}
.c139 {
  font-size: 34px;
  font-weight: 800;
  line-height: 1.12;
  margin-bottom: 14px;
}
.c140 {
  font-size: 15.5px;
  line-height: 1.7;
  color: #5A6B80;
  margin-bottom: 26px;
}
.c141 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap: 16px;
}
.c142 {
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 16px;
  padding: 24px;
}
.c143 {
  font-size: 17px;
  font-weight: 800;
  margin-bottom: 8px;
}
.c144 {
  font-size: 14px;
  line-height: 1.6;
  color: #5A6B80;
  margin-bottom: 14px;
}
.c145 {
  display: grid;
  gap: 7px;
  font-size: 13.5px;
  color: #0A1B33;
}
.c146 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 72px 28px 0;
}
.c147 {
  display: inline-block;
  font-family: Manrope,sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #1273E6;
  background: rgba(18,115,230,0.16);
  padding: 5px 10px;
  border-radius: 6px;
}
.c148 {
  font-size: 17px;
  font-weight: 800;
  margin: 12px 0 8px;
}
.c149 {
  font-size: 14px;
  line-height: 1.6;
  color: #5A6B80;
}
.c150 {
  max-width: 1220px;
  margin: 72px auto 0;
  padding: 0 28px;
}
.c151 {
  background: #0A1B33;
  color: #fff;
  border-radius: 10px;
  padding: 48px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 40px;
}
.c152 {
  font-size: 32px;
  font-weight: 800;
  line-height: 1.15;
}
.c153 {
  font-size: 15.5px;
  line-height: 1.7;
  color: rgba(255,255,255,0.72);
  margin-top: 16px;
}
.c154 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}
.c155 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #1273E6;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  padding: 17px 28px;
  border-radius: 999px;
}
.c156 {
  display: grid;
  gap: 12px;
  align-content: center;
}
.c157 {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 15px;
  color: rgba(255,255,255,0.86);
  border-bottom: 1px solid rgba(255,255,255,0.12);
  padding-bottom: 12px;
}
.c158 {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 15px;
  color: rgba(255,255,255,0.86);
}
.c159 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 80px 28px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 48px;
  align-items: center;
}
.c160 {
  font-size: 50px;
  line-height: 1.08;
  font-weight: 800;
  margin-bottom: 22px;
}
.c161 {
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 16px;
  padding: 32px;
  background: rgba(255,255,255,0.04);
}
.c162 {
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #7FC0FF;
}
.c163 {
  display: grid;
  gap: 14px;
  margin-top: 20px;
}
.c164 {
  font-family: Manrope,sans-serif;
  font-size: 19px;
  font-weight: 700;
  border-bottom: 1px solid rgba(255,255,255,0.12);
  padding-bottom: 14px;
}
.c165 {
  font-family: Manrope,sans-serif;
  font-size: 19px;
  font-weight: 700;
}
.c166 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 40px;
  align-items: end;
  margin-bottom: 40px;
}
.c167 {
  font-size: 19px;
  font-weight: 800;
  margin: 12px 0 10px;
}
.c168 {
  display: block;
  margin-top: 16px;
  font-size: 12.5px;
  letter-spacing: 0.04em;
  color: #8494A6;
}
.c169 {
  max-width: 1220px;
  margin: 80px auto 0;
  padding: 0 28px;
}
.c170 {
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 10px;
  padding: 44px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 44px;
}
.c171 {
  display: grid;
  gap: 22px;
}
.c172 {
  display: flex;
  gap: 18px;
}
.c173 {
  font-family: Manrope,sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #1273E6;
  padding-top: 4px;
}
.c174 {
  font-size: 17px;
  font-weight: 800;
}
.c175 {
  font-size: 14.5px;
  line-height: 1.6;
  color: #5A6B80;
  margin-top: 5px;
}
.c176 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 44px;
}
.c177 {
  display: grid;
  gap: 12px;
}
.c178 {
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 14px;
  padding: 20px 24px;
  transition: border-color .3s ease, box-shadow .3s ease;
}
.c179 {
  cursor: pointer;
  font-family: Manrope,sans-serif;
  font-weight: 700;
  font-size: 16px;
  list-style: none;
}
.c180 {
  font-size: 14.5px;
  line-height: 1.65;
  color: #5A6B80;
  margin-top: 12px;
}
.c181 {
  border-left: 1px solid #4FA8F7;
  padding: 8px 0 8px 28px;
}
.c182 {
  margin: 16px 0 0;
  font-family: Manrope,sans-serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.c183 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 48px;
}
.c184 {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.13;
}
.c185 {
  font-size: 16px;
  line-height: 1.75;
  color: #5A6B80;
  margin-bottom: 16px;
  text-wrap: pretty;
}
.c186 {
  font-size: 16px;
  line-height: 1.75;
  color: #5A6B80;
  text-wrap: pretty;
}
.c187 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}
.c188 {
  font-size: 13px;
  font-weight: 500;
  background: #fff;
  border: 1px solid rgba(10,27,51,0.1);
  border-radius: 10px;
  padding: 9px 16px;
}
.c189 {
  background: linear-gradient(150deg,#0A1B33,#123E75);
  color: #fff;
  border-radius: 10px;
  padding: 48px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
  gap: 48px;
}
.c190 {
  width: 96px;
  height: 96px;
  border-radius: 10px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Manrope,sans-serif;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.c191 {
  margin-top: 28px;
  display: grid;
  gap: 18px;
}
.c192 {
  font-family: Manrope,sans-serif;
  font-size: 28px;
  font-weight: 800;
  display: block;
}
.c193 {
  font-size: 13.5px;
  color: rgba(255,255,255,0.65);
}
.c194 {
  font-size: 36px;
  font-weight: 800;
  line-height: 1.1;
}
.c195 {
  font-size: 16px;
  font-weight: 500;
  color: rgba(255,255,255,0.7);
  margin: 8px 0 22px;
}
.c196 {
  font-size: 16px;
  line-height: 1.75;
  color: rgba(255,255,255,0.8);
  margin-bottom: 16px;
  text-wrap: pretty;
}
.c197 {
  font-size: 16px;
  line-height: 1.75;
  color: rgba(255,255,255,0.8);
  text-wrap: pretty;
}
.c198 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
  gap: 20px;
}
.c199 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 80px 28px;
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
  gap: 48px;
}
.c200 {
  font-size: 17px;
  line-height: 1.7;
  color: rgba(255,255,255,0.76);
  max-width: 48ch;
}
.c201 {
  display: grid;
  gap: 12px;
  margin-top: 34px;
  max-width: 440px;
}
.c202 {
  display: block;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 14px;
  padding: 18px 22px;
  color: #fff;
}
.c203 {
  display: block;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #7FC0FF;
  margin-bottom: 6px;
}
.c204 {
  font-family: Manrope,sans-serif;
  font-size: 17px;
  font-weight: 700;
}
.c205 {
  background: #fff;
  color: #0A1B33;
  border-radius: 22px;
  padding: 36px;
  box-shadow: 0 30px 70px rgba(0,0,0,0.3);
}
.c206 {
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #1273E6;
}
.c207 {
  font-size: 28px;
  font-weight: 800;
  margin: 10px 0 8px;
}
.c208 {
  font-size: 14px;
  line-height: 1.6;
  color: #5A6B80;
  margin-bottom: 24px;
}
.c209 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
  gap: 16px;
}
.c210 {
  display: grid;
  gap: 7px;
}
.c211 {
  font-size: 12.5px;
  font-weight: 600;
  color: #5A6B80;
}
.c212 {
  font-family: inherit;
  font-size: 14.5px;
  padding: 13px 14px;
  border: 1px solid rgba(10,27,51,0.14);
  border-radius: 10px;
  background: #F8FAFC;
  color: #0A1B33;
}
.c213 {
  display: grid;
  gap: 7px;
  grid-column: 1/-1;
}
.c214 {
  font-family: inherit;
  font-size: 14.5px;
  padding: 13px 14px;
  border: 1px solid rgba(10,27,51,0.14);
  border-radius: 10px;
  background: #F8FAFC;
  color: #0A1B33;
  resize: vertical;
}
.c215 {
  margin-top: 22px;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #0A1B33;
  color: #fff;
  font-family: 'IBM Plex Sans',sans-serif;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 19px;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: background .3s ease, transform .25s ease;
}
.c216 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 44px;
  align-items: center;
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 10px;
  padding: 44px;
}
.c217 {
  font-size: 32px;
  font-weight: 800;
  line-height: 1.15;
  margin-bottom: 18px;
}
.c218 {
  font-style: normal;
  font-size: 16px;
  line-height: 1.8;
  color: #5A6B80;
}
.c219 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 24px;
  background: #0A1B33;
  color: #fff;
  font-size: 14.5px;
  font-weight: 600;
  padding: 16px 28px;
  border-radius: 999px;
}
.c220 {
  background: linear-gradient(150deg,#0A1B33,#123E75);
  border-radius: 16px;
  padding: 56px 32px;
  text-align: center;
  color: #fff;
}
.c221 {
  position: relative;
  width: 58px;
  height: 58px;
  margin: 0 auto 18px;
  border-radius: 50%;
  border: 1px solid rgba(18,115,230,0.5);
  display: flex;
  align-items: center;
  justify-content: center;
}
.c222 {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #4FA8F7;
  display: block;
  animation: softPulse 2.8s ease-in-out infinite;
}
.c223 {
  position: absolute;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  border: 2px solid #4FA8F7;
  animation: ringOut 2.8s ease-out infinite;
}
.c224 {
  font-family: Manrope,sans-serif;
  font-size: 30px;
  font-weight: 800;
  display: block;
}
.c225 {
  font-size: 14px;
  color: rgba(255,255,255,0.65);
}
.c226 {
  max-width: 1220px;
  margin: 0 auto;
  padding: 28px 28px 0;
}
.c227 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(230px,1fr));
  gap: 20px;
}
.c228 {
  background: #fff;
  border: 1px solid rgba(10,27,51,0.08);
  border-radius: 16px;
  padding: 26px;
}
.c229 {
  display: block;
  font-family: Manrope,sans-serif;
  font-size: 17px;
  font-weight: 700;
  margin: 10px 0 6px;
}
.c230 {
  font-size: 13.5px;
  color: #5A6B80;
}

/* ---------- hover states ---------- */
.h1:hover {
  background: #fff;
  color: #0A1B33;
  transform: translateY(-2px);
}
.h2:hover {
  background: rgba(255,255,255,0.1);
  color: #fff;
}
.h3:hover {
  border-color: #4FA8F7;
  box-shadow: 0 22px 48px rgba(10,27,51,0.09);
  color: #0A1B33;
  transform: translateY(-4px);
}
.h4:hover {
  color: #BFE0FF;
}
.h5:hover {
  box-shadow: 0 26px 60px rgba(10,27,51,0.10);
  color: #0A1B33;
  transform: translateY(-6px);
}
.h6:hover {
  background: rgba(18,115,230,0.08);
  color: #1273E6;
}
.h7:hover {
  background: #1273E6;
  color: #fff;
}
.h8:hover {
  background: #BFE0FF;
  color: #0A1B33;
}
.h9:hover {
  background: rgba(255,255,255,0.12);
  color: #fff;
}
.h10:hover {
  color: #fff;
}
.h11:hover {
  background: rgba(255,255,255,0.08);
  color: #fff;
}
.h12:hover {
  background: #1273E6;
}

/* ---------- focus states ---------- */
.f1:focus {
  outline: none;
  border-color: #4FA8F7;
  background: #fff;
}

/* ---------- page transition (curtain wipes out on arrival) ---------- */
.curtain-on #gt-curtain {
  transform: translateY(0);
  animation: curtainOut .5s .06s cubic-bezier(.6, 0, .4, 1) both;
}

/* ---------- current page in the navigation ---------- */
a[data-navlink][aria-current="page"] {
  color: #1273E6;
  background: rgba(18, 115, 230, 0.08);
}

/* ---------- keyboard focus ---------- */
a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 2px solid #4FA8F7;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  #gt-curtain { display: none; }
}

/* ---------- small screens ---------- */
@media (max-width: 720px) {
  h1 { font-size: 38px !important; }
  h2 { font-size: 28px !important; }
  h3 { word-break: break-word; }
  header > div { padding: 12px 16px !important; gap: 10px 16px !important; flex-wrap: wrap !important; }
  header nav { order: 3; width: 100%; margin-left: 0 !important; gap: 0 !important; justify-content: space-between; flex-wrap: nowrap !important; }
  header nav a { padding: 8px 6px !important; font-size: 13.5px !important; }
  header > div > a[data-sheen] { padding: 12px 18px !important; font-size: 13px !important; margin-left: auto; }
  section > div, section > div > div { min-width: 0; }
  .container { padding-left: 16px !important; padding-right: 16px !important; }
  form { padding: 24px !important; }
  #gt-top { right: 16px !important; bottom: 16px !important; }
}
