/* Scoped presentation repairs after visual review. */
html body.fc-modern[data-fc-content] :is(.se-title-1,.se-title-2) { font-family:inherit; }
html body.fc-modern[data-fc-content=pricing] .se-head-price .se-title-2 { font-size:clamp(28px,2.5vw,38px); line-height:1.25; font-weight:650; color:#142b49; }
html body.fc-modern[data-fc-content=pricing] .se-head-price .se-title-1 { font-size:15px; line-height:1.7; color:#48607c; }
html body.fc-modern[data-fc-content] :is(.se-head,.tep-head) :is(.se-title-2,.title-1,h2,h3,h4) {
  font-family:inherit; font-weight:650; letter-spacing:-.025em; line-height:1.25;
}
html body.fc-modern[data-fc-content] :is(.se-head,.tep-head) > p,
html body.fc-modern[data-fc-content] :is(.se-head,.tep-head) > .fcv-heading-copy > p {
  font-family:inherit; font-size:16px; font-weight:400; line-height:1.8;
  max-width:72ch; margin-top:18px; margin-inline:0; text-align:start;
}
html body.fc-modern[data-fc-content] .fcv-section-heading .se-title-2 { font-size:clamp(28px,2.5vw,38px); }
html body.fc-modern[data-fc-content] .fcv-heading-copy > p { text-transform:none; color:#425976; }
html body .fcv-section-heading {
  grid-template-columns:minmax(0,1fr) minmax(260px,30%); gap:clamp(28px,4vw,72px);
}
html body .fcv-section-heading > .fcv-visual { max-width:400px; }
html body .fcv-section-heading > .fcv-visual svg { max-height:none; }
html body .fcv-section-heading:not(:has(.fcv-heading-copy p)) { grid-template-columns:minmax(0,1fr) 220px; }
html body .fcv-section-heading:not(:has(.fcv-heading-copy p)) > .fcv-visual { max-width:220px; }

/* Legacy solution headers retained oversized body type and a fixed navbar offset. */
html body.fc-modern[data-fc-content] > .headtab {
  margin:0!important; padding:64px var(--fc-page-gutter) 64px!important;
  background:linear-gradient(115deg,#f4f8ff 0%,#fff 58%,#edf5ff 100%);
  border-bottom:1px solid #d9e4f3; overflow:hidden;
}
html body.fc-modern[data-fc-content] .headthr { padding:0!important; max-width:960px; z-index:1; }
html body.fc-modern[data-fc-content] .headtit { margin-bottom:24px!important; }
html body.fc-modern[data-fc-content] .headtit > h2 {
  font-family:inherit; font-size:13px; font-weight:650; line-height:1.6; letter-spacing:.06em; color:#0753d2; margin:0 0 16px;
}
html body.fc-modern[data-fc-content] .headtit > br { display:none; }
html body.fc-modern[data-fc-content] .headtit h1 {
  font-family:inherit; font-size:clamp(36px,4vw,58px); line-height:1.15; letter-spacing:-.035em; margin:0 0 24px!important;
}
html body.fc-modern[data-fc-content] .headtit p {
  font-family:inherit; font-size:18px; font-weight:400; line-height:1.8; max-width:68ch; margin:0 auto; color:#425976;
}
html body.fc-modern[data-fc-content] .headthr > :is(.cv,.qna) { width:200px; opacity:.85; }
html body.fc-modern[data-fc-content] .headthr > .cv { left:-230px; }
html body.fc-modern[data-fc-content] .headthr > .qna { right:-230px; top:0; }
html body.fc-modern[data-fc-content] .headthr > .buttons { margin:0!important; }
html body.fc-modern[data-fc-content=solution] > .se-iv > .container-fluid {
  width:100%; max-width:none; padding-inline:var(--fc-page-gutter);
}
html body.fc-modern[data-fc-content=solution] > .se-iv > .container-fluid > .container {
  width:100%; max-width:none; padding-inline:0;
}
html body.fc-modern[data-fc-content=solution] > .se-iv > .container-fluid .animate_tabbing_section { width:100%; }

/* Infrastructure figures were still white on the new pale hero background. */
html body.fc-modern[data-fc-content=company] > .header .box-head {
  color:#0753d2; font-family:inherit; font-size:clamp(32px,3vw,44px); font-weight:650; line-height:1.2;
}
html body.fc-modern[data-fc-content=company] > .header .box-desc {
  color:#425976; font-family:inherit; font-size:13px; font-weight:600; letter-spacing:.045em; margin-top:12px;
  height:auto; max-height:none; display:block; overflow:visible;
}
html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center {
  margin-block:36px; padding:24px 0; border-block:1px solid #d5e1f2;
}
html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center > div { margin-bottom:0!important; }
html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center > div + div { border-inline-start:1px solid #d5e1f2; }
html body.fc-modern > .header .btn { line-height:1.5; padding:12px 18px; height:auto; }
html body.fc-modern[data-fc-content=company] > .header .contact-btn { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
html body.fc-modern[data-fc-content=company] > .header .contact-btn .btn { margin:0; }

/* The introductory illustration now reads as part of the server choice panel. */
html body.fc-modern .fc-home-choice { grid-template-columns:minmax(0,1fr) minmax(220px,46%); gap:16px 24px; }
html body.fc-modern .fc-home-choice > .fcv-hero-diagram { width:100%; margin:0; }
html body.fc-modern .fc-home-choice > .fcv-hero-diagram svg { max-height:none; }
html body.fc-modern .fc-home-choice-label { font-size:14px; line-height:1.7; }

/* Catalog and pricing share a legible brand surface, without the old forest overlay. */
html body.fc-modern[data-fc-content=catalog] > .main-header,
html body.fc-modern[data-fc-content=pricing] .fc-pricing-v3 .site-content > .main-header {
  background:#092c62;
  background-image:linear-gradient(115deg,#092c62 10%,#0a4198 100%);
  color:#fff; border:0; padding-block:64px;
}
html body.fc-modern[data-fc-content=catalog] > .main-header .title-2,
html body.fc-modern[data-fc-content=pricing] .main-header .title-2 {
  font-family:inherit; font-size:13px; font-weight:650; letter-spacing:.07em; line-height:1.6; color:#b7d6ff; margin-bottom:18px;
}
html body.fc-modern[data-fc-content=catalog] > .main-header .title-1,
html body.fc-modern[data-fc-content=pricing] .main-header .title-1 {
  font-family:inherit; font-size:clamp(34px,3.4vw,50px); line-height:1.18; font-weight:650; letter-spacing:-.035em;
  text-transform:none!important; color:#fff; margin-bottom:24px!important;
}
html body.fc-modern[data-fc-content=catalog] > .main-header :is(.para-1,.para-5),
html body.fc-modern[data-fc-content=pricing] .main-header :is(.para-1,.para-5) {
  font-family:inherit; font-size:17px; line-height:1.8; font-weight:400; color:#e1ecff; opacity:1; max-width:64ch;
}
html body.fc-modern[data-fc-content=pricing] .main-header .para-5 { font-size:14px; color:#c4d8f8; }
html body.fc-modern[data-fc-content=catalog] > .main-header .buttons { display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; }
html body.fc-modern[data-fc-content=catalog] > .main-header .prbtn {
  margin:0; font-family:inherit; font-size:13px; line-height:1.6; font-weight:600; border-radius:6px; min-height:48px; box-shadow:none;
  display:inline-flex; align-items:center; justify-content:center; padding:12px 16px;
}
html body.fc-modern[data-fc-content=catalog] > .main-header .header-hero { padding:24px; }
html body.fc-modern[data-fc-content=catalog] > .main-header .hero { max-height:340px; object-fit:contain; }
html body.fc-modern[data-fc-content=pricing] .main-header .header-form {
  padding:28px; background:#fff; border:1px solid #cbdcf4; border-top:4px solid #5ca3ff; border-radius:10px; box-shadow:0 12px 32px #00132b26;
}
html body.fc-modern[data-fc-content=pricing] .main-header .header-form .btnform {
  font-family:inherit; border-radius:5px; min-height:48px; font-size:14px; margin-block:0 12px!important; line-height:1.6;
}
html body.fc-modern[data-fc-content=pricing] .main-header .btnform-fill-blue { background:#0753d2; border-color:#0753d2; color:#fff; }
html body.fc-modern[data-fc-content=pricing] .main-header .header-form .form-comment { color:#425976; font-size:12px; line-height:1.75; }
html body.fc-modern[data-fc-content=pricing] .main-header .header-form .hr { margin-block:14px 20px; }
html body.fc-modern[data-fc-content] .headthr > br { display:none; }
html body.fc-modern[data-fc-content] .headthr .notify { margin-top:12px; padding:16px; border:1px solid #d2e0f3; border-radius:8px; }

/* Preserve word separation and add depth to the community's entry points. */
html body.fc-community .fc-hero h1 br { display:revert; }
html body.fc-community .fc-hero .fc-start {
  border:1px solid #b8d0f5; border-top:4px solid #6aadff;
  background:linear-gradient(145deg,#fff 50%,#edf4ff); border-radius:10px; box-shadow:0 14px 36px #03296d33;
}
html body.fc-community .fc-hero .fc-start > .fcv-visual { max-width:340px; width:100%; margin-bottom:24px; }
html body.fc-community #community-main .fc-resource-grid > article { border-top:3px solid #1760cf; }
html body.fc-community #community-main .fc-resource-grid > article > .fcv-visual { width:min(100%,320px); }
html body.fc-community #community-main .fc-card { border-top:3px solid #c4d7f2; }
html body.fc-community #community-main .fc-card:is(:hover,:focus-within) { border-top-color:#0753d2; }
@media(max-width:759px) {
  html body #fc-community-header.fccv .fccv-tabs {
    scrollbar-color:#7499c7 #e8eff9;
    background:linear-gradient(to right,#f7faff 25%,#f7faff00) left center / 30px 100% local no-repeat,
      linear-gradient(to left,#f7faff 25%,#f7faff00) right center / 30px 100% local no-repeat,
      linear-gradient(to right,#557eab3d,#557eab00) left center / 12px 100% scroll no-repeat,
      linear-gradient(to left,#557eab3d,#557eab00) right center / 12px 100% scroll no-repeat;
  }
}

@media(min-width:1200px) {
  html body.fc-modern[data-fc-content=pricing] .main-header > .container > .row { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,400px); gap:48px; margin-inline:0; }
  html body.fc-modern[data-fc-content=pricing] .main-header > .container > .row > div { width:100%; max-width:none; padding:0; }
}

@media(max-width:1023px) {
  html body.fc-modern[data-fc-content] .headthr > :is(.cv,.qna) { display:none; }
}
@media(max-width:600px) {
  html body .fcv-section-heading,
  html body .fcv-section-heading:not(:has(.fcv-heading-copy p)) { grid-template-columns:minmax(0,1fr); gap:20px; }
  html body .fcv-section-heading > .fcv-visual { max-width:300px; width:100%; justify-self:start; }
  html body .fcv-section-heading:not(:has(.fcv-heading-copy p)) > .fcv-visual { max-width:220px; }
  html body.fc-modern[data-fc-content] > .headtab { padding-block:40px!important; }
  html body.fc-modern[data-fc-content] .headtit p { font-size:16px; line-height:1.8; text-align:start; }
  html body.fc-modern[data-fc-content] .headtit h1 { font-size:38px; }
  html body.fc-modern[data-fc-content] .headthr > .buttons { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
  html body.fc-modern[data-fc-content] .headthr > .buttons > .btn { margin:0!important; }
  html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center { row-gap:24px; margin-block:28px; }
  html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center > div { width:50%; }
  html body.fc-modern[data-fc-content=company] > .header .row.justify-content-center > div:nth-child(odd) { border-inline-start:0; }
  html body.fc-modern[data-fc-content=company] > .header:has(.box-head) .para-1 { font-size:17px; }
  html body.fc-modern .fc-home-choice { grid-template-columns:minmax(0,1fr); gap:16px; }
  html body.fc-modern .fc-home-choice > .fcv-hero-diagram { grid-column:1; grid-row:2; max-width:300px; justify-self:center; }
  html body.fc-modern[data-fc-content=catalog] > .main-header,
  html body.fc-modern[data-fc-content=pricing] .fc-pricing-v3 .site-content > .main-header { padding-block:36px; }
  html body.fc-modern[data-fc-content=catalog] > .main-header :is(.title-1,.para-1),
  html body.fc-modern[data-fc-content=pricing] .main-header :is(.title-1,.para-1,.para-5) { text-align:start; }
  html body.fc-modern[data-fc-content=catalog] > .main-header .title-2,
  html body.fc-modern[data-fc-content=pricing] .main-header .title-2 { text-align:start; }
  html body.fc-modern[data-fc-content=catalog] > .main-header .buttons { justify-content:flex-start; }
  html body.fc-modern[data-fc-content=pricing] .main-header .header-form { margin-top:24px!important; padding:22px; }
}

/* Company eyebrow and main heading share the same reading edge. */
html body.fc-modern[data-fc-content=company] .fcv-heading-copy > .se-title-1 { text-align:start; margin-inline:0; }
