/* Scope the VPS-style presentation to the Web Hosting package section. */
.hosting-block--web .hosting-card .feature { align-items:center; gap:10px; }
.hosting-block--web .hosting-card .feature .fs-web-feature-icon { display:block; flex:0 0 21px; width:21px; height:21px; min-width:21px; color:#397fac; overflow:visible; }
.hosting-block--web .hosting-card .feature--premium .fs-web-feature-icon { color:#245d86; }
.hosting-block--web .hosting-card .feature p { min-width:0; line-height:1.55; }
.hosting-block--web .hosting-card .fs-web-feature--quick { background:#edf7fd; border:1px solid #d8ebf7; border-radius:9px; padding:10px; margin:3px -10px 0; }
.hosting-block--web .hosting-card .fs-web-feature--quick p { color:#205e88; font-weight:600; }
.hosting-block--web .hosting-card .fs-web-feature--wordpress { background:#f3f8fc; border:1px solid #e1edf5; border-radius:9px; padding:10px; margin:0 -10px 3px; }
.hosting-block--web .hosting-card .fs-web-feature--wordpress p { color:#205e88; font-weight:600; }
.hosting-block--web .hosting-card .tag { background:#205e88; }
@media(prefers-reduced-motion:no-preference) { .hosting-block--web .hosting-card:hover .fs-web-feature--quick .fs-web-feature-icon { transform:translateY(-1px); } }

/* Performance cards follow the VPS OS catalogue's visual language. */
.fs-speed { padding:80px 0; background:#eef6fc; color:#172f45; }
.fs-speed *, .fs-speed *::before, .fs-speed *::after { box-sizing:border-box; }
.fs-speed-heading { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:end; margin-bottom:34px; }
.fs-speed .fs-speed-eyebrow { color:#3779aa; font-size:12px; font-weight:700; letter-spacing:.13em; margin:0 0 12px; }
.fs-speed h2 { font-size:38px; line-height:1.18; font-weight:700; letter-spacing:-.035em; margin:0; }
.fs-speed h2 span { color:#3779aa; }
.fs-speed .fs-speed-intro { font-size:16px; line-height:1.7; color:#536a7d; margin:0; max-width:540px; }
.fs-speed-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.fs-speed-card { display:flex; flex-direction:column; min-width:0; border:1px solid #d9e5ee; border-radius:18px; padding:25px 22px 20px; background:#fff; box-shadow:0 5px 15px #1e4a6e05; }
.fs-speed-card-heading { display:flex; align-items:center; gap:12px; margin-bottom:28px; min-height:58px; }
.fs-speed-card-heading>div { min-width:0; }
.fs-speed-icon { display:flex; width:52px; height:52px; flex:0 0 52px; align-items:center; justify-content:center; background:#f6f9fc; border:1px solid #eef2f6; border-radius:15px; color:#3779aa; }
.fs-speed-icon svg { display:block; width:38px; height:38px; }
.fs-speed h3 { font-size:17px; line-height:1.25; font-weight:650; letter-spacing:-.025em; margin:0 0 6px; color:#172f45; }
.fs-speed .fs-speed-label { font-size:9px; font-weight:600; letter-spacing:.06em; line-height:1.6; color:#688397; margin:0; }
.fs-speed h4 { font-size:23px; line-height:1.35; font-weight:600; letter-spacing:-.03em; margin:0 0 20px; color:#172f45; min-height:64px; }
.fs-speed .fs-speed-description { font-size:13px; line-height:1.8; color:#536a7d; margin:0 0 24px; }
.fs-speed .fs-speed-footer { border-top:1px solid #eaf0f5; padding-top:16px; margin:auto 0 0; color:#3779aa; font-size:11px; font-weight:600; line-height:1.6; }
.fs-speed-card--max { background:linear-gradient(135deg,#0a2946,#13517e); border-color:#174e79; }
.fs-speed-card--max .fs-speed-icon { color:#9bdbff; background:#ffffff0c; border-color:#ffffff20; }
.fs-speed-card--max h3 { color:#fff; }
.fs-speed-card--max .fs-speed-label { color:#9bcef0; }
.fs-speed .fs-speed-metric { font-size:64px; line-height:1; font-weight:700; letter-spacing:-.055em; color:#fff; margin:-3px 0 5px; }
.fs-speed-metric span { font-size:16px; font-weight:500; letter-spacing:0; }
.fs-speed .fs-speed-promise { font-size:23px; line-height:1.35; font-weight:600; color:#9bdbff; margin:0 0 20px; }
.fs-speed-card--max .fs-speed-description { color:#d1e4f3; }
.fs-speed-card--max .fs-speed-footer { border-color:#ffffff26; color:#9bcef0; }
@media(max-width:1199px) { .fs-speed-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1023px) { .fs-speed { padding:48px 0; } .fs-speed-heading { grid-template-columns:1fr; gap:18px; margin-bottom:24px; } .fs-speed h2 { font-size:30px; } .fs-speed .fs-speed-intro { font-size:14px; } .fs-speed-grid { grid-template-columns:1fr; gap:12px; } .fs-speed-card { padding:22px 18px 18px; border-radius:14px; } .fs-speed-card-heading { flex-direction:row; align-items:center; gap:12px; margin-bottom:22px; } .fs-speed h4 { font-size:21px; min-height:57px; } }
@media(max-width:479px) { .fs-speed-grid { grid-template-columns:1fr; } .fs-speed-card-heading { flex-direction:row; align-items:center; } .fs-speed h4 { min-height:0; } }
