.gp-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 16px;border-radius:32px;background:radial-gradient(ellipse at 82% 20%,#2b519f7a,transparent 65%),linear-gradient(125deg,#071527,#152f56);color:#fff;padding:74px 0 0}
.gp-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.045;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:64px 64px}
.gp-hero__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:48px;padding-bottom:48px}
.gp-hero__copy{max-width:770px}.gp-hero .eyebrow{color:#a1d7fa;font-size:10px}.gp-hero h1{font-size:clamp(38px,4.7vw,64px);line-height:1.12;font-weight:550;letter-spacing:-2.8px;max-width:840px}.gp-hero h1 span{color:#b8e4ff}.gp-hero__copy>p{font-size:15px;line-height:1.9;color:#c4d6eb;margin:25px 0 28px;max-width:660px}.gp-hero__logo{width:218px;max-width:28%;height:auto;margin-top:10px}.gp-hero__actions{display:flex;flex-wrap:wrap;gap:12px}.gp-hero__actions .button{font-size:12px;min-height:48px}
.gp-hero__rail{position:relative;display:flex;gap:0;padding:0 0 42px;margin:0;list-style:none}.gp-hero__rail::before{content:"";position:absolute;top:20px;left:20px;right:20px;height:1px;background:linear-gradient(90deg,#70b8ee80,#70b8ee15)}.gp-hero__rail li{position:relative;flex:1;min-width:0}.gp-hero__rail a{display:block;padding-right:20px}.gp-hero__rail i{display:grid;place-items:center;position:relative;width:40px;height:40px;border:1px solid #99c7eb66;border-radius:50%;background:#102745;color:#cce8fb;font-style:normal;font-size:10px;margin-bottom:18px}.gp-hero__rail i::after{content:"";position:absolute;inset:-4px;border:1px solid #74c4ff4d;border-radius:50%;animation:gp-flow 12s ease-in-out infinite}.gp-hero__rail li:nth-child(2) i::after{animation-delay:3s}.gp-hero__rail li:nth-child(3) i::after{animation-delay:6s}.gp-hero__rail li:nth-child(4) i::after{animation-delay:9s}.gp-hero__rail strong{display:block;font-size:14px;font-weight:500}.gp-hero__rail small{display:block;color:#a7c4e0;font-size:10px;line-height:1.7;margin-top:6px}.gp-hero__rail a:hover strong{color:#9cd9ff}.gp-hero__source{border-top:1px solid #b5d5f521;padding:15px 0;color:#a4bbd4;font-size:10px;line-height:1.8}
@keyframes gp-flow{0%,25%,100%{opacity:.15;transform:scale(1)}10%,17%{opacity:1;transform:scale(1.12);box-shadow:0 0 22px #67c6fb45}}
.gp-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;padding-block:25px;border-bottom:1px solid var(--line);font-size:11px;color:#647a94}.gp-nav a:hover{color:var(--blue)}.gp-nav a:last-child{margin-left:auto;color:var(--blue)}
.gp-section{padding-block:88px}.gp-section__head{max-width:780px;margin-bottom:34px}.gp-section__head h2{font-size:clamp(29px,3vw,43px);line-height:1.23;letter-spacing:-1.5px}.gp-section__head>p{font-size:14px;line-height:1.85;color:#667a91;margin-top:19px}.gp-paper{background:#f3f7fc;border-block:1px solid #e8eff6}.gp-kicker{font-size:10px;font-weight:600;letter-spacing:1.5px;color:var(--blue);text-transform:uppercase;display:block;margin-bottom:15px}.gp-note{font-size:11px;line-height:1.8;color:#657a92;margin-top:20px;max-width:970px}.gp-note a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.gp-diagram{margin:0;border:1px solid #d8e5f1;border-radius:22px;background:#fff;overflow:hidden}.gp-diagram .dg-screen-visual{display:block;height:auto;aspect-ratio:auto;background:#f3f8fd;overflow:auto;border:0;border-radius:0}.gp-diagram .dg-screen-visual img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;padding:0;aspect-ratio:auto}.gp-diagram figcaption{padding:21px 25px;background:#fff;display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;font-size:12px;color:#627992}.gp-diagram figcaption strong{font-size:13px;color:#243e61;display:block}.gp-diagram figcaption span{flex-basis:100%;line-height:1.75}.gp-diagram__links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:11px;color:var(--blue);margin:14px 0 0}.gp-diagram__links a{text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:34px}.gp-diagram .dg-screen-visual::after{content:"Expand diagram";inset:auto 16px 16px auto;border-radius:30px;padding:8px 12px;background:#132a4be8;color:#fff;font-size:10px;width:auto;height:auto;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}.gp-diagram .dg-screen-visual:hover::after,.gp-diagram .dg-screen-visual:focus-visible::after{opacity:1;transform:none}
.gp-overview__support{display:flex;gap:24px;margin-top:32px}.gp-overview__support article{flex:1;border-top:1px solid #d8e3f0;padding-top:20px}.gp-overview__support h3{font-size:17px;letter-spacing:-.4px}.gp-overview__support p{font-size:12px;line-height:1.85;color:#6a7c92;margin-top:10px}.gp-overview__support a{display:inline-flex;color:var(--blue);font-size:11px;margin-top:13px;min-height:30px}
.gp-stage{padding-block:70px;border-top:1px solid var(--line);scroll-margin-top:112px}.gp-stage:first-of-type{padding-top:10px;border-top:0}.gp-stage__head{display:flex;align-items:flex-start;gap:28px;margin-bottom:32px}.gp-stage__number{flex-shrink:0;font-size:48px;letter-spacing:-3px;line-height:1;color:#5e9fce;font-weight:500}.gp-stage__head h3{font-size:30px;line-height:1.2;letter-spacing:-1px;margin-bottom:14px}.gp-stage__head p{font-size:14px;color:#63778d;line-height:1.85;max-width:810px}.gp-stage__layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px}.gp-steps{padding:0;margin:0;list-style:none;counter-reset:gp-step}.gp-steps li{counter-increment:gp-step;position:relative;padding:0 0 23px 37px;margin-bottom:22px;border-bottom:1px solid #e4ecf4;font-size:13px;color:#5e748d;line-height:1.85}.gp-steps li:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.gp-steps li::before{content:counter(gp-step,decimal-leading-zero);position:absolute;left:0;top:0;color:#8babca;font-size:10px;font-weight:600}.gp-steps strong{display:block;color:#203c5d;font-size:15px;font-weight:600;margin-bottom:7px}.gp-handoff{padding:24px;border:1px solid #dae6f2;background:#f5f9fd;border-radius:18px;align-self:start}.gp-handoff h4{font-size:12px;letter-spacing:0;margin:0 0 16px;color:#233f63}.gp-handoff dl{margin:0}.gp-handoff dt{font-size:9px;letter-spacing:1px;font-weight:600;color:#486d97;text-transform:uppercase;margin-top:15px}.gp-handoff dd{font-size:12px;line-height:1.8;color:#5c7390;margin:6px 0 0}.gp-stage__diagram{margin-top:33px}.gp-stage__source{font-size:10px;color:#6a829c;margin-top:20px}.gp-stage__source a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.gp-component-list{display:flex;gap:26px;flex-wrap:wrap}.gp-component-list article{flex:1 1 270px;border-top:2px solid #91bfe3;padding:23px 0 15px}.gp-component-list h3{font-size:21px}.gp-component-list p{font-size:13px;color:#667d96;line-height:1.85;margin-top:13px}.gp-component-list ul{padding-left:18px;margin:17px 0 0;font-size:12px;color:#516d8c;line-height:1.9}.gp-component-list li+li{margin-top:7px}
.gp-ai{margin-top:42px;padding:35px;border:1px solid #d9e5f3;border-radius:22px;background:#fff}.gp-ai__head{display:flex;justify-content:space-between;align-items:flex-start;gap:36px}.gp-ai h3{font-size:26px;max-width:650px}.gp-ai__badge{padding:8px 12px;border-radius:40px;background:#eaf3fd;font-size:10px;color:#2b519f;white-space:nowrap}.gp-ai p{font-size:13px;color:#637990;line-height:1.85;margin-top:16px}.gp-ai__limits{display:flex;flex-wrap:wrap;gap:8px;margin-top:21px}.gp-ai__limits span{border:1px solid #d9e7f4;border-radius:8px;padding:9px 12px;background:#f6f9fd;color:#35567d;font-size:11px}.gp-ai__source{font-size:10px!important;line-height:1.8!important}
.gp-architecture__extra{margin-top:28px;padding:23px 26px;border:1px solid #d9e4f0;border-radius:18px;background:#fff}.gp-architecture__extra>summary{cursor:pointer;font-weight:600;font-size:14px;color:#24466e}.gp-architecture__extra>p{font-size:13px;color:#637c97;line-height:1.9;margin:20px 0}.gp-stack-list{display:flex;gap:36px;margin-top:31px}.gp-stack-list>div{flex:1}.gp-stack-list h3{font-size:18px}.gp-stack-list p{font-size:12px;color:#657c96;line-height:1.9;margin-top:12px}
.gp-gallery-group{border-top:1px solid #dae5f0;padding:23px 0}.gp-gallery-group>summary{font-size:17px;font-weight:600;letter-spacing:-.3px;color:#233f61;cursor:pointer;min-height:38px}.gp-gallery-group>summary small{font-size:11px;font-weight:400;color:#7388a0;margin-left:12px}.gp-gallery-group .gp-screen-grid{margin-top:25px}.gp-screen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gp-screen-grid .dg-screen-card{margin:0;min-width:0;background:#fff;border:1px solid #dce6f0;border-radius:16px;overflow:hidden}.gp-screen-grid .dg-screen-visual{aspect-ratio:16/9;height:auto;display:block;background:#f4f8fd;border:0;border-radius:0;overflow:hidden}.gp-screen-grid .dg-screen-visual img{width:100%;height:100%;object-fit:contain;aspect-ratio:16/9;padding:0}.gp-screen-grid figcaption{padding:19px;font-size:11px;color:#6a7f98;line-height:1.8}.gp-screen-grid figcaption strong{display:block;color:#274464;font-size:13px;line-height:1.6;margin-bottom:9px}.gp-screen-grid figcaption span{display:block}.gp-screen-grid .gp-slide-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#2b519f;margin:0 0 8px;font-weight:600}.gp-gallery-note{padding:20px 23px;border:1px solid #d7e4f1;border-radius:16px;background:#eef5fc;font-size:12px;color:#5a7594;line-height:1.8;margin-bottom:26px}.gp-gallery-note strong{color:#24466e}
.gp-contact{background:linear-gradient(120deg,#0b213e,#284b87);color:#fff;border-radius:28px;margin:0 16px 30px;padding:65px 0}.gp-contact h2{font-size:clamp(30px,3.5vw,45px);max-width:810px}.gp-contact p{color:#b9d3ee;font-size:14px;line-height:1.85;margin:20px 0 27px;max-width:680px}.gp-contact .eyebrow{color:#a4d6f8}.gp-contact__links{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
@media(max-width:1000px){.gp-hero__heading{gap:28px}.gp-hero__logo{width:170px;max-width:22%}.gp-stage__layout{grid-template-columns:minmax(0,1fr) 260px;gap:28px}.gp-screen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-hero h1{font-size:48px}}
@media(max-width:700px){.gp-hero{margin:0 8px;border-radius:23px;padding-top:42px}.gp-hero__heading{flex-direction:column-reverse;gap:25px;padding-bottom:35px}.gp-hero__logo{width:185px;max-width:70%;margin-top:0}.gp-hero h1{font-size:36px;letter-spacing:-1.8px}.gp-hero__copy>p{font-size:13px}.gp-hero__rail{flex-wrap:wrap;gap:27px 20px;padding-bottom:30px}.gp-hero__rail::before{display:none}.gp-hero__rail li{flex-basis:calc(50% - 10px)}.gp-hero__rail strong{font-size:12px}.gp-hero__rail i{margin-bottom:12px}.gp-nav{gap:10px 20px;font-size:10px}.gp-nav a:last-child{margin-left:0}.gp-section{padding-block:57px}.gp-section__head>p{font-size:13px}.gp-overview__support{flex-direction:column;gap:23px}.gp-stage{padding-block:45px}.gp-stage__head{gap:18px}.gp-stage__head h3{font-size:24px}.gp-stage__number{font-size:36px}.gp-stage__head p{font-size:13px}.gp-stage__layout{grid-template-columns:1fr;gap:25px}.gp-diagram figcaption{padding:17px}.gp-diagram .dg-screen-visual::after{opacity:1;transform:none;font-size:9px;padding:6px 9px}.gp-ai{padding:24px 20px}.gp-ai__head{flex-direction:column;gap:15px}.gp-ai h3{font-size:23px}.gp-stack-list{flex-direction:column;gap:25px}.gp-architecture__extra{padding:20px 16px}.gp-screen-grid{grid-template-columns:1fr;gap:22px}.gp-gallery-group>summary small{display:block;margin:6px 0 0}.gp-contact{margin:0 8px 22px;padding:47px 0;border-radius:22px}.gp-contact p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.gp-hero__rail i::after{animation:none!important;opacity:.25;transform:none}.gp-diagram .dg-screen-visual::after{transition:none}}
:root[data-motion="paused"] .gp-hero__rail i::after{animation-play-state:paused!important}

.gp-diagram:hover{transform:none;box-shadow:none}.gp-diagram:hover .dg-screen-visual img{transform:none}.gp-diagram .dg-screen-visual{position:relative}.gp-diagram .dg-screen-visual::after{position:absolute;pointer-events:none}
.gp-stage,.gp-screen-grid .dg-screen-card{scroll-margin-top:110px}

.gp-gallery-group:first-of-type .gp-screen-grid{grid-template-columns:minmax(0,1fr);max-width:920px}
