/* Shared AI infrastructure presentation for hotel, enterprise and AI pages. */
.ia-infrastructure{background:var(--navy);color:white;margin-top:28px;position:relative;overflow:hidden;padding:65px 0}
.ia-infrastructure:before{content:'';position:absolute;width:600px;height:600px;border:70px solid #459ed60b;top:-300px;right:-220px;border-radius:50%;pointer-events:none}
.ia-infra-lead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:55px;position:relative}
.ia-infra-lead>div{min-width:0}
.ia-infra-lead .eyebrow{color:#b4e175;font-size:12px}
.ia-infra-lead h2{color:white;font-size:39px;line-height:1.2;font-weight:800;letter-spacing:-.035em;overflow-wrap:anywhere}
.ia-infra-lead p:not(.eyebrow){color:#dfebf3;font-size:16px;line-height:1.75;margin-top:20px}
.ia-infra-lead p strong{color:white;font-weight:600}
.ia-infra-tags{display:flex;gap:12px 18px;flex-wrap:wrap;margin-top:24px}
.ia-infra-tags span{display:flex;align-items:center;gap:7px;font-size:12px;color:#e5f1f8}
.ia-infra-tags svg{color:#b4e175;width:19px;height:19px}
.ia-infra-lead .ia-infra-cta{background:var(--green);border-color:var(--green);color:#203947;font-weight:700;font-size:14px}
.ia-infra-lead .ia-infra-cta:hover{background:#a0dc49;border-color:#a0dc49}
.ia-infra-map{margin:0;background:#f2f7fb;border:1px solid #d2e4f0;border-radius:14px;padding:24px;box-shadow:0 20px 50px #14263730;min-width:0;color:var(--ink)}
.ia-infra-map figcaption{font-size:13px;font-weight:700;color:var(--blue-dark);margin-bottom:18px}
.ia-cluster{background:var(--blue-dark);border-radius:10px;color:white;text-align:center;padding:19px 15px 20px}
.ia-map-label{font-size:9px;letter-spacing:.12em;color:#d5edf9;font-weight:600}
.ia-server-racks{display:flex;align-items:center;justify-content:center;gap:17px;margin:16px 0}
.ia-server-racks svg{width:43px;height:43px;stroke-width:1.4;color:#cdeaf8}
.ia-cluster>strong{display:block;font-size:17px;line-height:1.4}
.ia-rtx{display:inline-block;font-size:10px;margin-top:10px;padding:5px 9px;background:#ffffff12;border:1px solid #ffffff35;border-radius:5px;line-height:1.5}
.ia-private-link{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 0;font-size:12px;color:var(--blue-dark);font-weight:600}
.ia-private-link svg{width:19px;height:19px}
.ia-property{background:white;border:1px solid #caddea;border-radius:10px;padding:18px}
.ia-property-title{display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;color:var(--blue-dark);line-height:1.4}
.ia-property-title svg{color:var(--blue);width:22px;height:22px}
.ia-property-devices{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:12px 0 16px}
.ia-property-devices span{font-size:10px;background:#edf5fa;color:var(--muted);padding:5px 8px;border-radius:4px}
.ia-local-server{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding-top:14px}
.ia-local-server>svg{color:var(--blue);width:26px;height:26px}
.ia-local-server strong{display:block;font-size:12px;color:var(--blue-dark)}
.ia-local-server span{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:3px}
.ia-infra-map .ia-map-note{font-size:9px!important;line-height:1.6!important;color:var(--muted)!important;text-align:center;margin-top:13px!important}
.ia-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ia-mode-grid article{border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:12px;padding:28px;background:white;box-shadow:0 7px 25px #253b4c08;min-width:0}
.ia-mode-grid article:nth-child(2){border-top-color:var(--green)}.ia-mode-grid article:nth-child(3){border-top-color:var(--orange)}
.ia-mode-icon{display:flex;align-items:center;justify-content:center;width:49px;height:49px;background:#edf5fb;color:var(--blue);border-radius:10px;margin-bottom:20px}
.ia-mode-icon svg{width:26px;height:26px}
.ia-mode-grid .ia-mode-label{font-size:10px;letter-spacing:.05em;font-weight:700;color:var(--muted);line-height:1.6;margin-bottom:9px}
.ia-mode-grid h3{font-size:24px;color:var(--blue-dark);margin-bottom:14px}
.ia-mode-grid article>p:not(.ia-mode-label){font-size:15px;color:var(--muted);line-height:1.75}
.ia-data-control{display:flex;align-items:flex-start;gap:17px;background:#eef6fa;border:1px solid #d8e8f2;border-radius:10px;padding:24px;margin-top:28px}
.ia-data-control>svg{color:var(--blue);width:28px;height:28px;margin-top:2px}
.ia-data-control h3{font-size:20px;color:var(--blue-dark);margin-bottom:10px}
.ia-data-control p{font-size:14px;color:var(--muted);line-height:1.75}
@media(max-width:1050px){.ia-infra-lead{gap:30px}.ia-infra-lead h2{font-size:34px}.ia-infra-map{padding:20px}.ia-mode-grid article{padding:23px}.ia-mode-grid h3{font-size:22px}}
@media(max-width:820px){.ia-infrastructure{padding:48px 0}.ia-infra-lead{grid-template-columns:1fr;gap:30px}.ia-infra-lead h2{font-size:34px}.ia-infra-lead>div{max-width:680px}.ia-infra-map{max-width:570px;width:100%;justify-self:center}.ia-mode-grid{grid-template-columns:1fr;gap:18px}.ia-mode-grid h3{font-size:24px}.ia-mode-grid article{padding:25px}.ia-mode-icon{margin-bottom:15px}}
@media(max-width:580px){.ia-infrastructure{margin-top:20px;padding:40px 0}.ia-infra-lead h2{font-size:30px}.ia-infra-lead h2 br{display:none}.ia-infra-lead .eyebrow{font-size:10px}.ia-infra-lead p:not(.eyebrow){font-size:15px;margin-top:17px}.ia-infra-tags{gap:12px;font-size:11px}.ia-infra-tags span{font-size:11px}.ia-infra-lead .ia-infra-cta{font-size:13px;padding:13px 16px}.ia-infra-map{padding:18px}.ia-cluster>strong{font-size:16px}.ia-property{padding:15px}.ia-property-title{font-size:14px}.ia-server-racks{gap:15px}.ia-server-racks svg{width:38px;height:38px}.ia-data-control{padding:21px 18px;gap:12px}.ia-data-control h3{font-size:19px}.ia-data-control p{font-size:14px}.ia-mode-grid article>p:not(.ia-mode-label){font-size:15px}}
@media(max-width:360px){.ia-infra-lead h2{font-size:28px}.ia-infra-map{padding:15px}.ia-cluster{padding:17px 10px}.ia-map-label{font-size:8px}.ia-rtx{font-size:9px}.ia-property-title{font-size:12px}.ia-local-server span{font-size:9px}}
