.cloud-ai{padding:24px 0 120px}
.cloud-ai-intro{text-align:center;max-width:820px;margin:0 auto 44px}
.cloud-ai-intro h2{font-size:clamp(38px,4.6vw,60px);line-height:1.02;letter-spacing:-.04em;font-weight:450}
.cloud-ai-intro p{font-size:16px;line-height:1.6;color:var(--body);max-width:600px;margin:22px auto 0}
.cloud-ai-intro .section-actions{justify-content:center}
.cloud-ai-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cloud-card{background:var(--card);border-radius:16px;padding:22px;display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden;isolation:isolate}
.cloud-card:before{content:'';position:absolute;inset:-40% -20% auto auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--glow,#ffffff14),transparent 65%);z-index:-1;opacity:.9}
.cloud-card[data-cloud=gcp]{--glow:#4f8df526}
.cloud-card[data-cloud=aws]{--glow:#ff9f1c1f}
.cloud-card[data-cloud=azure]{--glow:#3aa0ff22}
.cloud-card[data-cloud=hybrid]{--glow:#7cf2c41c}
.cloud-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:'Geist Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.09em;color:var(--muted);text-transform:uppercase}
.cloud-live{display:inline-flex;align-items:center;gap:7px}
.cloud-live i{width:6px;height:6px;border-radius:50%;background:#46d39a;box-shadow:0 0 0 0 #46d39a66;animation:cloud-pulse 2.4s ease-out infinite}
.cloud-card h3{font-size:26px;line-height:1.1;letter-spacing:-.03em;font-weight:450;margin-top:34px}
.cloud-card>p{color:var(--body);font-size:14px;line-height:1.55;margin-top:10px}
.cloud-stack{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--line)}
.cloud-stack li{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.4}
.cloud-stack li span:last-child{color:var(--muted);font-family:'Geist Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding-top:2px}
.cloud-card-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center}
.cloud-card-wide h3{margin-top:28px}
.cloud-card-wide .cloud-stack{margin-top:0;border-top:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.cloud-card-wide .cloud-stack li:nth-child(-n+2){border-top:1px solid var(--line)}
.cloud-flow{list-style:none;margin:12px 0 0;padding:20px 22px;background:var(--card);border-radius:16px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;position:relative;overflow:hidden}
.cloud-flow:before{content:'';position:absolute;left:22px;right:22px;top:33px;height:1px;background:var(--line)}
.cloud-flow:after{content:'';position:absolute;left:22px;top:32px;height:3px;width:18%;border-radius:2px;background:linear-gradient(90deg,transparent,var(--ink),transparent);opacity:.55;animation:cloud-run 6s linear infinite}
.cloud-flow li{position:relative;padding-top:28px}
.cloud-flow li:before{content:'';position:absolute;top:8px;left:0;width:11px;height:11px;border-radius:50%;background:var(--page);border:1px solid var(--muted)}
.cloud-flow strong{display:block;font-size:14px;font-weight:450;letter-spacing:-.01em}
.cloud-flow span{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:4px}
@keyframes cloud-pulse{0%{box-shadow:0 0 0 0 #46d39a66}70%{box-shadow:0 0 0 7px #46d39a00}100%{box-shadow:0 0 0 0 #46d39a00}}
@keyframes cloud-run{0%{transform:translateX(-100%)}100%{transform:translateX(560%)}}
@media(max-width:900px){
  .cloud-ai{padding-bottom:90px}
  .cloud-ai-grid{grid-template-columns:1fr}
  .cloud-card-wide{grid-template-columns:1fr;gap:20px}
  .cloud-card-wide .cloud-stack{grid-template-columns:1fr}
  .cloud-card-wide .cloud-stack li:nth-child(2){border-top:0}
  .cloud-flow{grid-template-columns:1fr;gap:4px}
  .cloud-flow:before,.cloud-flow:after{display:none}
  .cloud-flow li{padding:6px 0 6px 24px}
  .cloud-flow li:before{top:11px}
}
@media(prefers-reduced-motion:reduce){
  .cloud-live i,.cloud-flow:after{animation:none}
}
