/* Source: supplied Runable prototype. Scoped, dependency-free styles. */
/* New content reuses the existing grids, cards, typography and palette. */
.migration-page {
  --migration-font:MigrationManrope,sans-serif;
  --migration-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  --migration-ink:#111b30;
  --migration-white:#fff;
  --migration-space:4px;
  --migration-section-space:90px;
  --migration-radius:6px;
  --migration-radius-card:8px;
  --migration-radius-panel:12px;
  --migration-button-shadow:0 4px 9px #2563eb14;
  --migration-panel-shadow:0 24px 50px #030c2740;
  
}
.migration-page *,.migration-page *:before,.migration-page *:after {
  box-sizing:border-box;
  border:0 solid;
  margin:0;
  padding:0
}
.migration-page {
  line-height:1.5;
  -webkit-text-size-adjust:100%;
  font-family:var(--migration-font)
}
.migration-page h1,.migration-page h2,.migration-page h3,.migration-page h4,.migration-page h5,.migration-page h6 {
  font-size:inherit;
  font-weight:inherit
}
.migration-page a {
  color:inherit;
  text-decoration:inherit
}
.migration-page b,.migration-page strong {
  font-weight:bolder
}
.migration-page code,.migration-page pre {
  font-family:var(--migration-mono);
  font-size:1em
}
.migration-page small {
  font-size:80%
}
.migration-page ol,.migration-page ul {
  list-style:none
}
.migration-page img,.migration-page svg {
  vertical-align:middle;
  display:block
}
.migration-page button,.migration-page input,.migration-page select,.migration-page textarea {
  font:inherit;
  letter-spacing:inherit;
  color:inherit;
  opacity:1;
  background-color:transparent;
  border-radius:0
}
.migration-page button,.migration-page input:where([type=button],.migration-page [type=reset],.migration-page [type=submit]) {
  appearance:button
}
.migration-page textarea {
  resize:vertical
}
.migration-page [hidden] {
  display:none!important
}
@font-face {
  font-family:MigrationManrope;
  src:url(/assets/server-migration/fonts/manrope-regular.woff2)format("woff2");
  font-weight:400 600;
  font-display:swap
}
@font-face {
  font-family:MigrationManrope;
  src:url(/assets/server-migration/fonts/manrope-bold.woff2)format("woff2");
  font-weight:650 800;
  font-display:swap
}
.migration-page {
  color:var(--migration-ink);
  font-synthesis:none;
  --blue:#2563eb;
  --muted:#687489;
  --border:#e7ebf2;
  background:#fff;
  font-family:var(--migration-font)
}
.migration-page * {
  box-sizing:border-box
}
.migration-document {
  scroll-behavior:smooth;
  scroll-padding-top:95px
}
.migration-page {
  margin:0
}
.migration-page a {
  color:inherit;
  text-decoration:none
}
.migration-page button,.migration-page input,.migration-page select,.migration-page textarea {
  font:inherit
}
.migration-page button,.migration-page a,.migration-page input,.migration-page textarea,.migration-page select {
  -webkit-tap-highlight-color:transparent
}
.migration-page button {
  cursor:pointer
}
.migration-page a,.migration-page button {
  transition:background .18s,color .18s,transform .18s
}
.migration-page a:focus-visible,.migration-page button:focus-visible,.migration-page summary:focus-visible {
  outline-offset:5px;
  outline:3px solid #8ab0ff
}
.migration-page h1,.migration-page h2,.migration-page h3,.migration-page p {
  margin:0
}
.migration-page h1,.migration-page h2,.migration-page h3 {
  font-weight:700
}
.migration-page h2 {
  letter-spacing:-1.3px;
  font-size:36px;
  line-height:1.25
}
.migration-page h3 {
  letter-spacing:-.35px;
  font-size:17px
}
.migration-page p {
  color:var(--muted);
  line-height:1.8
}
.migration-page .container {
  width:calc(100% - 64px);
  max-width:1120px;
  margin-inline:auto
}
.migration-page .header {
  z-index:30;
  -webkit-backdrop-filter:blur(15px);
  backdrop-filter:blur(15px);
  background:#ffffffed;
  border-bottom:1px solid #eef0f5;
  height:78px;
  position:sticky;
  top:0
}
.migration-page .nav {
  justify-content:space-between;
  align-items:center;
  gap:30px;
  height:100%;
  display:flex
}
.migration-page .brand {
  letter-spacing:-.8px;
  align-items:center;
  gap:9px;
  font-size:21px;
  font-weight:800;
  display:inline-flex
}
.migration-page .brand-icon {
  color:#fff;
  background:var(--migration-ink);
  border-radius:5px;
  padding:5px;
  display:flex
}
.migration-page .brand-dot {
  color:var(--blue);
  margin-left:-8px
}
.migration-page .nav-links {
  color:#596375;
  gap:31px;
  font-size:13px;
  display:flex
}
.migration-page .nav-links a:hover,.migration-page .footer a:hover {
  color:var(--blue)
}
.migration-page .nav-contact {
  color:#fff;
  background:var(--migration-ink);
  border-radius:var(--migration-radius);
  align-items:center;
  gap:13px;
  padding:12px 17px;
  font-size:12px;
  font-weight:700;
  display:flex
}
.migration-page .nav-contact:hover {
  background:var(--blue)
}
.migration-page .menu-toggle {
  display:none
}
.migration-page .hero {
  text-align:center;
  background:linear-gradient(#0000 55%,#fff 94%) 0 0/100% 100%,linear-gradient(#e8edf65c 1px,#0000 1px) 0 0/38px 38px,linear-gradient(90deg,#e8edf65c 1px,#0000 1px) 0 0/38px 38px;
  padding-top:67px
}
.migration-page .eyebrow {
  letter-spacing:1.8px;
  color:#7a8597;
  font-size:10px;
  font-weight:700;
  line-height:1.6
}
.migration-page .hero-eyebrow {
  color:#4776ca;
  letter-spacing:1.3px;
  background:#f2f6ff;
  border:1px solid #e2eaff;
  border-radius:20px;
  align-items:center;
  gap:9px;
  padding:6px 12px;
  font-size:9px;
  display:inline-flex
}
.migration-page h1 {
  letter-spacing:-2.8px;
  margin-top:24px;
  font-size:60px;
  line-height:1.13
}
.migration-page h1 span {
  color:#2563eb
}
.migration-page .hero-description {
  margin-top:23px;
  font-size:16px;
  line-height:1.75
}
.migration-page .hero-actions {
  justify-content:center;
  align-items:center;
  gap:28px;
  margin-top:29px;
  display:flex
}
.migration-page .button {
  border:0;
  border-radius:var(--migration-radius);
  justify-content:center;
  align-items:center;
  gap:22px;
  padding:15px 22px;
  font-size:13px;
  font-weight:700;
  line-height:1.4;
  display:inline-flex
}
.migration-page .primary {
  background:var(--blue);
  color:#fff;
  box-shadow:var(--migration-button-shadow)
}
.migration-page .primary:hover {
  background:#174ec4;
  transform:translateY(-1px)
}
.migration-page .text-button {
  background:0 0;
  border:0;
  align-items:center;
  gap:9px;
  font-size:12px;
  font-weight:700;
  display:inline-flex
}
.migration-page .text-button:hover {
  color:var(--blue)
}
.migration-page .hero-note {
  color:#8993a4;
  margin-top:16px;
  font-size:10px
}
.migration-page .migration-panel {
  border:1px solid var(--border);
  text-align:left;
  background:#fff;
  border-radius:10px;
  max-width:1000px;
  margin:44px auto 0;
  overflow:hidden;
  box-shadow:0 20px 60px #193e6b0b,0 3px 10px #193e6b05
}
.migration-page .panel-top {
  border-bottom:1px solid var(--border);
  justify-content:space-between;
  align-items:center;
  height:53px;
  padding:0 23px;
  font-size:11px;
  font-weight:700;
  display:flex
}
.migration-page .panel-top>span {
  align-items:center;
  gap:9px;
  display:flex
}
.migration-page .tiny-logo {
  color:#2563eb;
  background:#eff4ff;
  border-radius:4px;
  padding:5px;
  display:flex
}
.migration-page .diagram-label {
  color:#687489;
  font-size:9px;
  font-weight:400
}
.migration-page .status-dot {
  background:#15966a;
  border-radius:50%;
  flex-shrink:0;
  width:6px;
  height:6px;
  display:inline-block
}
.migration-page .status-dot.blue {
  background:var(--blue)
}
.migration-page .panel-body {
  grid-template-columns:200px 1fr;
  display:grid
}
.migration-page .panel-aside {
  border-right:1px solid var(--border);
  color:#7a8496;
  background:#fafbfd;
  flex-direction:column;
  gap:18px;
  padding:24px 16px;
  font-size:10px;
  display:flex
}
.migration-page .mono {
  letter-spacing:1px;
  font-family:var(--migration-mono);
  font-size:8px
}
.migration-page .panel-aside>div {
  align-items:center;
  gap:10px;
  padding:0 10px;
  display:flex
}
.migration-page .panel-aside .aside-active {
  color:var(--blue);
  background:#edf3ff;
  border-radius:5px;
  margin-bottom:-7px;
  padding:10px;
  font-weight:700
}
.migration-page .aside-footer {
  margin-top:auto;
  font-size:8px
}
.migration-page .diagram-main {
  padding:25px 27px 23px
}
.migration-page .diagram-heading {
  justify-content:space-between;
  align-items:center;
  display:flex
}
.migration-page .diagram-heading h2 {
  font-size:17px;
  line-height:1.45
}
.migration-page .soft-tag {
  color:#15966a;
  white-space:nowrap;
  background:#ecf8f3;
  border:1px solid #e0f1e8;
  border-radius:4px;
  padding:5px 8px;
  font-size:9px
}
.migration-page .server-flow {
  align-items:center;
  margin-top:22px;
  display:flex
}
.migration-page .server-node {
  border:1px solid var(--border);
  border-radius:7px;
  flex:1;
  min-width:0;
  padding:16px 17px 0
}
.migration-page .server-node.target {
  background:#fbfcff;
  border-color:#bfd0f6
}
.migration-page .node-icon {
  color:#69788e;
  background:#f2f5fa;
  border-radius:7px;
  justify-content:center;
  align-items:center;
  width:43px;
  height:43px;
  margin-bottom:10px;
  display:flex
}
.migration-page .target .node-icon {
  color:#2563eb;
  background:#eaf1ff
}
.migration-page .server-node strong {
  font-size:12px;
  display:block
}
.migration-page .server-node>span {
  color:#7c8798;
  margin-top:5px;
  font-size:8px;
  display:block
}
.migration-page .node-foot {
  border-top:1px solid var(--border);
  color:#15966a;
  align-items:center;
  gap:6px;
  margin-top:13px;
  padding:10px 0;
  font-size:8px;
  display:flex
}
.migration-page .flow-link {
  color:#7b89a0;
  flex-direction:column;
  flex-shrink:0;
  align-items:center;
  gap:9px;
  width:116px;
  font-size:8px;
  display:flex;
  position:relative
}
.migration-page .flow-line {
  background:#c4d5f7;
  height:1px;
  position:absolute;
  top:20px;
  left:0;
  right:0
}
.migration-page .transfer-icon {
  z-index:1;
  color:var(--blue);
  background:#fff;
  border:1px solid #c4d5f7;
  border-radius:50%;
  padding:10px;
  display:flex
}
.migration-page .checks-row {
  color:#637187;
  justify-content:space-between;
  gap:8px;
  margin-top:19px;
  font-size:9px;
  display:flex
}
.migration-page .checks-row span {
  align-items:center;
  gap:6px;
  display:flex
}
.migration-page .checks-row svg {
  color:#15966a
}
.migration-page .panel-bottom {
  border-top:1px solid var(--border);
  color:#8390a1;
  justify-content:space-between;
  padding:11px 23px;
  font-size:8px;
  display:flex
}
.migration-page .panel-bottom>span {
  align-items:center;
  gap:5px;
  display:flex
}
.migration-page .stack-strip {
  text-align:center;
  border-bottom:1px solid var(--border);
  padding:55px 0 33px
}
.migration-page .stack-strip .eyebrow {
  letter-spacing:1.5px;
  font-size:9px
}
.migration-page .stack-list {
  color:#4d586b;
  justify-content:center;
  align-items:center;
  gap:33px;
  margin:25px 0 19px;
  display:flex
}
.migration-page .stack-list>span {
  align-items:center;
  gap:7px;
  font-size:14px;
  font-weight:700;
  display:flex
}
.migration-page .stack-list svg {
  width:18px;
  height:18px
}
.migration-page .stack-list .nginx-mark {
  font-size:24px;
  font-weight:800
}
.migration-page .nginx-mark span,.migration-page .php-mark span {
  letter-spacing:0;
  font-size:14px
}
.migration-page .stack-list .php-mark {
  letter-spacing:-1px;
  font-size:16px;
  font-style:italic
}
.migration-page .php-mark span {
  font-style:normal
}
.migration-page .audience {
  color:#929baa;
  font-size:10px
}
.migration-page .section {
  padding-top:var(--migration-section-space);
  padding-bottom:var(--migration-section-space)
}
.migration-page .section-heading {
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:34px;
  display:flex
}
.migration-page .section-heading .eyebrow,.migration-page .center-heading .eyebrow,.migration-page .safety-layout .eyebrow {
  margin-bottom:12px
}
.migration-page .section-heading>p {
  padding-bottom:3px;
  font-size:12px
}
.migration-page .services-grid {
  grid-template-columns:repeat(3,1fr);
  gap:17px;
  display:grid
}
.migration-page .service-card {
  background:#fafbfd;
  border:1px solid #edf0f5;
  border-radius:var(--migration-radius-card);
  padding:26px 24px 21px;
  transition:border-color .2s,transform .2s
}
.migration-page .service-card:hover {
  border-color:#bdd0f7;
  transform:translateY(-3px)
}
.migration-page .service-icon {
  color:#3371d2;
  background:#eaf2ff;
  border-radius:var(--migration-radius);
  justify-content:center;
  align-items:center;
  width:39px;
  height:39px;
  margin-bottom:18px;
  display:flex
}
.migration-page .tone-1 {
  color:#8270d1;
  background:#efedff
}
.migration-page .tone-2 {
  color:#30a476;
  background:#e7f8f0
}
.migration-page .tone-3 {
  color:#bf9635;
  background:#fff3dc
}
.migration-page .tone-4 {
  color:#9f63c1;
  background:#f2eafd
}
.migration-page .tone-5 {
  color:#ce7186;
  background:#ffecef
}
.migration-page .service-card h3 {
  font-size:15px;
  line-height:1.5
}
.migration-page .service-card p {
  min-height:87px;
  margin-top:9px;
  font-size:12px;
  line-height:1.8
}
.migration-page .service-tag {
  color:#8c97a8;
  border-top:1px solid #e9edf4;
  margin-top:18px;
  padding-top:13px;
  font-family:ui-monospace,monospace;
  font-size:8px
}
.migration-page .experience {
  color:#fff;
  background:var(--migration-ink);
  position:relative;
  overflow:hidden
}
.migration-page .experience:before {
  content:"";
  border:1px solid #ffffff10;
  border-radius:50%;
  width:530px;
  height:530px;
  position:absolute;
  top:-220px;
  left:28%;
  box-shadow:0 0 0 30px #ffffff04,0 0 0 60px #ffffff04,0 0 0 90px #ffffff04
}
.migration-page .experience-inner {
  grid-template-columns:1.6fr .6fr .8fr;
  align-items:center;
  gap:55px;
  padding-top:45px;
  padding-bottom:45px;
  display:grid;
  position:relative
}
.migration-page .experience .eyebrow {
  color:#8b9ab3;
  margin-bottom:14px;
  font-size:8px
}
.migration-page .experience h2 {
  letter-spacing:-.65px;
  font-size:24px
}
.migration-page .experience-stat strong {
  font-size:52px;
  font-weight:500;
  line-height:1
}
.migration-page .experience-stat strong span {
  color:#79a6ff;
  font-size:38px
}
.migration-page .experience-stat p {
  color:#98a5ba;
  margin-top:10px;
  font-size:10px;
  line-height:1.8
}
.migration-page .experience-stat.last {
  border-left:1px solid #ffffff15;
  padding-left:40px
}
.migration-page .experience-stat.last svg {
  color:#80a8ed
}
.migration-page .experience-stat h3 {
  margin-top:10px;
  font-size:15px
}
.migration-page .center-heading {
  text-align:center
}
.migration-page .center-heading p:not(.eyebrow) {
  margin-top:15px;
  font-size:13px
}
.migration-page .steps {
  grid-template-columns:repeat(4,1fr);
  gap:33px;
  margin-top:43px;
  display:grid
}
.migration-page .step-number {
  color:var(--blue);
  border-bottom:1px solid #dce5f4;
  justify-content:space-between;
  align-items:center;
  margin-bottom:21px;
  padding:0 0 16px;
  font-family:ui-monospace,monospace;
  font-size:13px;
  display:flex
}
.migration-page .step-number svg {
  color:#a8b7cd
}
.migration-page .steps h3 {
  font-size:15px
}
.migration-page .steps p {
  margin-top:10px;
  font-size:12px
}
.migration-page .safety-section {
  background:#f8fafc;
  padding:75px 0
}
.migration-page .safety-layout {
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:90px;
  display:grid
}
.migration-page .section-description {
  margin-top:20px;
  font-size:13px
}
.migration-page .safety-list {
  flex-direction:column;
  gap:15px;
  margin:25px 0 28px;
  padding:0;
  font-size:12px;
  list-style:none;
  display:flex
}
.migration-page .safety-list li {
  align-items:center;
  gap:11px;
  display:flex
}
.migration-page .safety-list svg {
  color:#3576d7;
  width:17px
}
.migration-page .blue-text {
  color:var(--blue)
}
.migration-page .audit-card {
  border:1px solid var(--border);
  background:#fff;
  border-radius:10px;
  padding:24px;
  box-shadow:0 10px 35px #223e5f07
}
.migration-page .audit-card-head {
  color:#8691a2;
  letter-spacing:.8px;
  align-items:center;
  gap:8px;
  font-size:8px;
  display:flex
}
.migration-page .audit-card-head>svg {
  color:var(--blue)
}
.migration-page .audit-card-head .soft-tag {
  letter-spacing:0;
  margin-left:auto;
  font-size:8px
}
.migration-page .audit-card h3 {
  margin-top:19px;
  font-size:25px
}
.migration-page .audit-card h3 span {
  letter-spacing:0;
  color:#8993a4;
  margin-top:4px;
  font-size:10px;
  font-weight:400;
  display:block
}
.migration-page .terminal-box {
  color:#becbdd;
  background:var(--migration-ink);
  border-radius:7px;
  margin-top:22px;
  padding:14px 16px
}
.migration-page .terminal-box>div {
  align-items:center;
  gap:5px;
  margin-bottom:18px;
  display:flex
}
.migration-page .terminal-dot {
  background:#48556a;
  border-radius:50%;
  width:5px;
  height:5px;
  display:block
}
.migration-page .terminal-box>div>span:last-child {
  color:#7f8ba0;
  margin-left:8px;
  font-family:monospace;
  font-size:8px
}
.migration-page .terminal-box code {
  white-space:nowrap;
  font-size:9px;
  line-height:1.9
}
.migration-page .terminal-comment {
  color:#73839d
}
.migration-page .terminal-green {
  color:#58d0a6
}
.migration-page .terminal-blue {
  color:#8aafff
}
.migration-page .audit-card>p {
  margin-top:17px;
  font-size:11px;
  line-height:1.8
}
.migration-page .audit-link {
  border-top:1px solid var(--border);
  color:#2563eb;
  justify-content:space-between;
  align-items:center;
  margin-top:18px;
  padding-top:15px;
  font-size:11px;
  font-weight:700;
  display:flex
}
.migration-page .cases-grid {
  grid-template-columns:1fr 1fr;
  gap:24px;
  display:grid
}
.migration-page .case-card {
  border:1px solid var(--border);
  border-radius:9px;
  overflow:hidden
}
.migration-page .case-visual {
  border-bottom:1px solid var(--border);
  background:#f6f8fc;
  height:196px;
  padding:24px 32px
}
.migration-page .visual-label {
  letter-spacing:1.3px;
  color:#7c8da7;
  align-items:center;
  gap:7px;
  margin-bottom:18px;
  font-family:monospace;
  font-size:8px;
  display:flex
}
.migration-page .file-line {
  color:#6c7890;
  border-bottom:1px solid #e5eaf1;
  justify-content:space-between;
  padding:9px 0;
  font-family:monospace;
  font-size:10px;
  display:flex
}
.migration-page .file-line:last-child {
  border:0
}
.migration-page .resolved {
  color:#249675;
  align-items:center;
  gap:5px;
  display:flex
}
.migration-page .waiting {
  color:#a47f3e
}
.migration-page .crm-visual {
  background:linear-gradient(120deg,#f4f7ff,#f8fafc)
}
.migration-page .crm-flow {
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:25px;
  display:flex
}
.migration-page .crm-flow>span {
  text-align:center;
  background:#fff;
  border:1px solid #e0e6f3;
  border-radius:5px;
  padding:12px 15px;
  font-size:12px;
  font-weight:700
}
.migration-page .crm-flow small {
  color:#8a96a8;
  margin-top:4px;
  font-size:8px;
  font-weight:400;
  display:block
}
.migration-page .crm-flow .crm-middle {
  color:#2864d5;
  border-color:#b9cef9
}
.migration-page .crm-flow>svg {
  color:#a3b8dc;
  flex-shrink:0
}
.migration-page .crm-chips {
  color:#8392a9;
  justify-content:center;
  gap:15px;
  margin-top:20px;
  font-family:monospace;
  font-size:8px;
  display:flex
}
.migration-page .case-content {
  padding:27px 30px
}
.migration-page .case-meta {
  letter-spacing:1.2px;
  color:#547dbd;
  margin-bottom:13px;
  font-size:8px;
  font-weight:700
}
.migration-page .case-content h3 {
  letter-spacing:-.65px;
  font-size:22px;
  line-height:1.4
}
.migration-page .case-content p {
  margin-top:14px;
  font-size:12px;
  line-height:1.8
}
.migration-page .case-content>a {
  border-top:1px solid var(--border);
  justify-content:space-between;
  align-items:center;
  margin-top:25px;
  padding-top:17px;
  font-size:11px;
  font-weight:700;
  display:flex
}
.migration-page .case-content>a:hover {
  color:var(--blue)
}
.migration-page .faq-section {
  padding:5px 0 88px
}
.migration-page .faq-section h2 {
  font-size:30px
}
.migration-page .faq-list {
  max-width:800px;
  margin:30px auto 0
}
.migration-page details {
  border-bottom:1px solid var(--border)
}
.migration-page summary {
  cursor:pointer;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:19px 5px;
  font-size:13px;
  font-weight:700;
  list-style:none;
  display:flex
}
.migration-page summary::-webkit-details-marker {
  display:none
}
.migration-page summary svg {
  color:#8a98ad;
  flex-shrink:0;
  transition:transform .2s
}
.migration-page details[open] summary svg {
  transform:rotate(180deg)
}
.migration-page details p {
  padding:0 30px 20px 5px;
  font-size:12px;
  line-height:1.9
}
.migration-page .contact-section {
  color:#fff;
  background:radial-gradient(at 0 100%,#17409a 0,#0000 60%),#111b30;
  border-radius:var(--migration-radius-panel);
  grid-template-columns:1fr 1fr;
  gap:45px;
  margin-bottom:80px;
  padding:46px;
  display:grid;
  position:relative;
  overflow:hidden
}
.migration-page .contact-copy {
  padding-top:13px
}
.migration-page .contact-copy .eyebrow {
  color:#91addd;
  margin-bottom:20px;
  font-size:8px
}
.migration-page .contact-copy h2 {
  letter-spacing:-1px;
  font-size:32px;
  line-height:1.35
}
.migration-page .contact-copy>p:not(.eyebrow) {
  color:#aabbd5;
  max-width:390px;
  margin-top:19px;
  font-size:12px;
  line-height:1.9
}
.migration-page .contact-points {
  color:#cedbf1;
  flex-direction:column;
  gap:12px;
  margin-top:26px;
  font-size:11px;
  display:flex
}
.migration-page .contact-points>span {
  align-items:center;
  gap:9px;
  display:flex
}
.migration-page .contact-points svg {
  color:#80aaff
}
.migration-page .urgent-contact {
  border-top:1px solid #ffffff17;
  gap:13px;
  margin-top:30px;
  padding-top:24px;
  display:flex
}
.migration-page .urgent-symbol {
  color:#8db4ff;
  background:#ffffff0a;
  border:1px solid #ffffff14;
  border-radius:7px;
  padding:11px;
  display:flex
}
.migration-page .urgent-contact strong {
  color:#a9bddf;
  margin-bottom:8px;
  font-size:10px;
  font-weight:400;
  display:block
}
.migration-page .urgent-contact a {
  align-items:center;
  gap:7px;
  font-size:12px;
  font-weight:700;
  display:flex
}
.migration-page .telegram-contact {
  align-items:center;
  gap:8px;
  margin-top:28px;
  font-size:13px;
  font-weight:700;
  display:flex
}
.migration-page .telegram-contact>span {
  color:#92acd4;
  margin-left:8px;
  font-size:9px;
  font-weight:400
}
.migration-page .form-card {
  color:var(--migration-ink);
  background:#fff;
  border-radius:var(--migration-radius-card);
  padding:25px
}
.migration-page .form-card h3 {
  font-size:18px
}
.migration-page .form-card>p {
  margin:6px 0 20px;
  font-size:10px
}
.migration-page .form-row {
  grid-template-columns:1fr 1fr;
  gap:12px;
  display:grid
}
.migration-page form label {
  margin-bottom:13px;
  font-size:9px;
  font-weight:700;
  display:block
}
.migration-page input:not([type=checkbox]),.migration-page select,.migration-page textarea {
  color:#26344b;
  background:#fbfcfe;
  border:1px solid #e2e7ef;
  border-radius:5px;
  outline:none;
  width:100%;
  margin-top:7px;
  padding:11px 10px;
  font-size:10px
}
.migration-page input:focus,.migration-page select:focus,.migration-page textarea:focus {
  border-color:#85aaff;
  box-shadow:0 0 0 3px #2563eb0b
}
.migration-page textarea {
  resize:vertical;
  min-height:76px
}
.migration-page input::placeholder,.migration-page textarea::placeholder {
  color:#98a2b1
}
.migration-page .consent {
  color:#8a94a4;
  align-items:flex-start;
  gap:8px;
  font-size:8px;
  font-weight:400;
  line-height:1.6;
  display:flex
}
.migration-page .consent input {
  accent-color:#2563eb;
  margin:2px 0 0
}
.migration-page .submit-button {
  gap:12px;
  width:100%;
  margin-top:5px;
  padding:13px;
  font-size:11px
}
.migration-page .submit-button:disabled {
  opacity:.7;
  cursor:wait
}
.migration-page .form-footnote {
  color:#98a1af;
  justify-content:center;
  align-items:center;
  gap:5px;
  margin-top:12px;
  font-size:7px;
  display:flex
}
.migration-page .honeypot {
  display:none
}
.migration-page .form-error {
  color:#b52b41;
  margin:8px 0;
  font-size:10px
}
.migration-page .success-state {
  text-align:center;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:20px;
  height:100%;
  min-height:350px;
  display:flex
}
.migration-page .success-state>svg {
  color:#15966a
}
.migration-page .success-state p {
  font-size:12px
}
.migration-page .success-state .text-button {
  margin-top:8px
}
.migration-page .spinner {
  animation:1s linear infinite migration-spin
}
@keyframes migration-spin {
  to {
  transform:rotate(360deg)
}

}
.migration-page .footer {
  padding-bottom:25px
}
.migration-page .footer-top {
  justify-content:space-between;
  align-items:flex-start;
  gap:30px;
  padding-bottom:38px;
  display:flex
}
.migration-page .footer-top p {
  margin-top:12px;
  font-size:10px
}
.migration-page .footer-links {
  color:#687489;
  gap:32px;
  padding-top:9px;
  font-size:11px;
  display:flex
}
.migration-page .footer-links a {
  align-items:center;
  gap:6px;
  display:flex
}
.migration-page .footer-bottom {
  border-top:1px solid var(--border);
  color:#94a0b0;
  justify-content:space-between;
  align-items:center;
  padding-top:22px;
  font-size:8px;
  display:flex
}
.migration-page .hero>.container {
  animation:.6s ease-out migration-reveal
}
@keyframes migration-reveal {
  0% {
  opacity:0;
  transform:translateY(12px)
}
to {
  opacity:1;
  transform:translateY(0)
}

}
@media(min-width:1400px) {
  .migration-page .container {
  max-width:1160px
}
.migration-page .hero {
  padding-top:78px
}
.migration-page h1 {
  font-size:64px
}

}
@media(max-width:1000px) {
  .migration-page .nav-links {
  gap:18px
}
.migration-page .stack-list {
  gap:20px
}
.migration-page .stack-list>span,.migration-page .nginx-mark span,.migration-page .php-mark span {
  font-size:12px
}
.migration-page .panel-aside {
  padding:20px 10px
}
.migration-page .panel-body {
  grid-template-columns:170px 1fr
}
.migration-page .diagram-main {
  padding:23px 20px
}
.migration-page .flow-link {
  width:80px
}
.migration-page .safety-layout {
  gap:40px
}
.migration-page .services-grid {
  gap:12px
}
.migration-page .service-card {
  padding:22px 18px
}
.migration-page .service-card p {
  min-height:110px
}
.migration-page .contact-section {
  gap:28px;
  padding:32px
}
.migration-page .contact-copy h2 {
  font-size:28px
}
.migration-page .form-row {
  grid-template-columns:1fr
}
.migration-page .experience-inner {
  gap:30px
}
.migration-page .experience-stat.last {
  padding-left:25px
}
.migration-page .case-visual {
  padding:24px
}
.migration-page .crm-flow>span {
  padding:10px
}
.migration-page .crm-flow {
  gap:3px
}
.migration-page .section-heading>p br {
  display:none
}
.migration-page .section-heading>p {
  max-width:300px
}

}
@media(max-width:760px) {
  .migration-page .container {
  width:calc(100% - 40px)
}
.migration-page .header {
  height:66px
}
.migration-page .nav {
  gap:12px
}
.migration-page .brand {
  font-size:19px
}
.migration-page .brand-icon {
  padding:4px
}
.migration-page .nav-contact {
  gap:7px;
  margin-left:auto;
  padding:10px 11px;
  font-size:10px
}
.migration-page .menu-toggle {
  color:var(--migration-ink);
  background:0 0;
  border:0;
  padding:6px;
  display:flex
}
.migration-page .menu-toggle svg {
  width:20px
}
.migration-page .nav-links {
  display:none
}
.migration-page .nav-links.open {
  border-bottom:1px solid var(--border);
  background:#fff;
  flex-direction:column;
  gap:24px;
  padding:25px;
  display:flex;
  position:absolute;
  top:66px;
  left:0;
  right:0;
  box-shadow:0 8px 16px #14243e0a
}
.migration-page .hero {
  background-size:100% 100%,28px 28px,28px 28px;
  padding-top:45px
}
.migration-page .hero-eyebrow {
  letter-spacing:1px;
  padding:6px 9px;
  font-size:7px
}
.migration-page h1 {
  letter-spacing:-1.7px;
  margin-top:22px;
  font-size:38px;
  line-height:1.18
}
.migration-page .hero-description {
  margin-top:18px;
  font-size:12px;
  line-height:1.9
}
.migration-page .desktop-break {
  display:none
}
.migration-page .hero-actions {
  flex-wrap:wrap;
  gap:18px;
  margin-top:24px
}
.migration-page .button {
  gap:16px;
  padding:13px 17px;
  font-size:11px
}
.migration-page .text-button {
  font-size:10px
}
.migration-page .hero-note {
  max-width:290px;
  margin:15px auto 0;
  font-size:8px
}
.migration-page .migration-panel {
  margin-top:30px
}
.migration-page .panel-top {
  height:44px;
  padding:0 14px;
  font-size:9px
}
.migration-page .diagram-label {
  font-size:7px
}
.migration-page .panel-body {
  display:block
}
.migration-page .panel-aside {
  display:none
}
.migration-page .diagram-main {
  padding:20px 16px
}
.migration-page .diagram-heading h2 {
  font-size:14px
}
.migration-page .diagram-heading .soft-tag {
  padding:4px 6px;
  font-size:7px
}
.migration-page .server-flow {
  margin-top:20px
}
.migration-page .server-node {
  padding:12px 10px 0
}
.migration-page .node-icon {
  width:32px;
  height:32px
}
.migration-page .node-icon svg {
  width:20px
}
.migration-page .server-node strong {
  font-size:10px
}
.migration-page .server-node>span {
  min-height:20px;
  font-size:6px;
  line-height:1.6
}
.migration-page .node-foot {
  gap:var(--migration-space);
  padding:8px 0;
  font-size:6px
}
.migration-page .node-foot svg {
  width:10px
}
.migration-page .flow-link {
  width:55px;
  font-size:6px
}
.migration-page .transfer-icon {
  padding:6px
}
.migration-page .transfer-icon svg {
  width:15px;
  height:15px
}
.migration-page .flow-line {
  top:14px
}
.migration-page .checks-row {
  gap:5px;
  font-size:6px
}
.migration-page .checks-row span {
  gap:4px
}
.migration-page .checks-row svg {
  width:11px
}
.migration-page .panel-bottom {
  padding:10px 14px;
  font-size:6px
}
.migration-page .panel-bottom .mono {
  display:none
}
.migration-page .stack-strip {
  padding:33px 0 24px
}
.migration-page .stack-list {
  flex-wrap:wrap;
  gap:18px 25px;
  margin-top:20px
}
.migration-page .stack-list>span,.migration-page .nginx-mark span,.migration-page .php-mark span {
  font-size:12px
}
.migration-page .audience {
  font-size:8px;
  line-height:1.7
}
.migration-page .stack-strip .eyebrow {
  font-size:7px
}
.migration-page .section {
  padding-top:60px;
  padding-bottom:60px
}
.migration-page h2 {
  letter-spacing:-1px;
  font-size:29px
}
.migration-page .eyebrow {
  font-size:8px
}
.migration-page .section-heading {
  margin-bottom:27px;
  display:block
}
.migration-page .section-heading>p {
  margin-top:16px;
  font-size:11px
}
.migration-page .services-grid {
  grid-template-columns:1fr 1fr;
  gap:12px
}
.migration-page .service-card {
  padding:20px 15px 16px
}
.migration-page .service-icon {
  width:33px;
  height:33px;
  margin-bottom:13px
}
.migration-page .service-card h3 {
  min-height:39px;
  font-size:13px;
  line-height:1.5
}
.migration-page .service-card p {
  min-height:110px;
  font-size:10px;
  line-height:1.8
}
.migration-page .service-tag {
  margin-top:12px;
  font-size:6px;
  line-height:1.8
}
.migration-page .experience-inner {
  grid-template-columns:1fr 1fr;
  gap:25px;
  padding:34px 0
}
.migration-page .experience-inner>div:first-child {
  grid-column:1/-1
}
.migration-page .experience h2 {
  font-size:24px
}
.migration-page .experience-stat strong {
  font-size:46px
}
.migration-page .experience-stat.last {
  padding-left:20px
}
.migration-page .experience-stat h3 {
  font-size:13px
}
.migration-page .experience-stat p {
  font-size:9px
}
.migration-page .experience-stat.last svg {
  width:25px;
  height:25px
}
.migration-page .center-heading h2 {
  font-size:27px
}
.migration-page .center-heading p:not(.eyebrow) {
  font-size:11px
}
.migration-page .steps {
  grid-template-columns:1fr 1fr;
  gap:27px 22px;
  margin-top:32px
}
.migration-page .step-number {
  margin-bottom:15px;
  padding-bottom:12px;
  font-size:11px
}
.migration-page .steps h3 {
  font-size:13px
}
.migration-page .steps p {
  font-size:10px
}
.migration-page .safety-section {
  padding:50px 0
}
.migration-page .safety-layout {
  grid-template-columns:1fr;
  gap:32px
}
.migration-page .section-description {
  font-size:11px
}
.migration-page .safety-list {
  gap:13px;
  margin:23px 0;
  font-size:11px
}
.migration-page .audit-card {
  padding:22px
}
.migration-page .terminal-box code {
  font-size:10px
}
.migration-page .cases-grid {
  grid-template-columns:1fr;
  gap:23px
}
.migration-page .section-heading>.text-button {
  margin-top:15px
}
.migration-page .case-content {
  padding:23px
}
.migration-page .case-content h3 {
  font-size:21px
}
.migration-page .case-content p {
  font-size:11px
}
.migration-page .case-visual {
  height:188px;
  padding:22px 26px
}
.migration-page .crm-flow>span {
  padding:12px;
  font-size:11px
}
.migration-page .crm-flow {
  gap:8px
}
.migration-page .faq-section {
  padding:0 0 56px
}
.migration-page .faq-section h2 {
  font-size:25px
}
.migration-page .faq-list {
  margin-top:25px
}
.migration-page summary {
  padding:17px 2px;
  font-size:11px
}
.migration-page details p {
  padding-left:2px;
  font-size:10px
}
.migration-page .contact-section {
  grid-template-columns:1fr;
  gap:30px;
  margin-bottom:48px;
  padding:26px 20px
}
.migration-page .contact-copy {
  padding:0 4px
}
.migration-page .contact-copy h2 {
  font-size:29px
}
.migration-page .contact-copy>p:not(.eyebrow) {
  font-size:11px
}
.migration-page .contact-copy .eyebrow {
  margin-bottom:15px
}
.migration-page .contact-points {
  margin-top:20px;
  font-size:10px
}
.migration-page .urgent-contact {
  margin-top:23px;
  padding-top:20px
}
.migration-page .telegram-contact {
  margin-top:20px
}
.migration-page .form-card {
  padding:20px
}
.migration-page .form-card h3 {
  font-size:17px
}
.migration-page .form-row {
  grid-template-columns:1fr 1fr;
  gap:9px
}
.migration-page form label {
  font-size:9px
}
.migration-page input:not([type=checkbox]),.migration-page select,.migration-page textarea {
  padding:11px 9px;
  font-size:11px
}
.migration-page .consent {
  font-size:8px
}
.migration-page .form-footnote {
  font-size:7px
}
.migration-page .footer-top {
  padding-bottom:24px;
  display:block
}
.migration-page .footer-links {
  gap:24px;
  margin-top:19px;
  padding-top:0;
  font-size:10px
}
.migration-page .footer-bottom {
  flex-wrap:wrap;
  gap:10px;
  font-size:7px;
  line-height:1.6
}
.migration-page .footer-bottom>span:nth-child(2) {
  display:none
}

}
@media(max-width:380px) {
  .migration-page h1 {
  font-size:33px
}
.migration-page .hero-actions {
  gap:15px
}
.migration-page .nav-contact {
  padding:9px;
  font-size:9px
}
.migration-page .services-grid {
  grid-template-columns:1fr
}
.migration-page .service-card h3,.migration-page .service-card p {
  min-height:0
}
.migration-page .service-tag {
  font-size:7px
}
.migration-page .form-row {
  grid-template-columns:1fr
}
.migration-page .checks-row {
  font-size:5.5px
}
.migration-page .server-node {
  padding-inline:8px
}
.migration-page .crm-flow {
  gap:3px
}
.migration-page .crm-flow>span {
  padding:10px
}

}
@media(prefers-reduced-motion:reduce) {
  .migration-document {
  scroll-behavior:auto
}
.migration-page *,.migration-page :before,.migration-page :after {
  transition:none!important;
  animation:none!important
}

}
.migration-page .hero {
  text-align:left;
  background:0 0;
  padding:32px 0 0
}
.migration-page .hero>.container {
  color:#fff;
  isolation:isolate;
  background:radial-gradient(at 0 100%,#17409a 0,#0000 64%),radial-gradient(at 100% 0,#1e3972 0,#0000 60%),#111b30;
  border-radius:var(--migration-radius-panel);
  grid-template-columns:1.05fr 1fr;
  align-items:center;
  gap:36px;
  padding:55px 44px;
  display:grid;
  position:relative;
  overflow:hidden
}
.migration-page .hero>.container:before {
  content:"";
  z-index:-1;
  pointer-events:none;
  border:1px solid #ffffff0c;
  border-radius:50%;
  width:600px;
  height:600px;
  position:absolute;
  top:-330px;
  right:-330px;
  box-shadow:0 0 0 38px #ffffff03,0 0 0 76px #ffffff03,0 0 0 114px #ffffff03
}
.migration-page .hero-copy {
  min-width:0
}
.migration-page .hero-eyebrow {
  color:#a6c3f3;
  letter-spacing:1px;
  background:#ffffff07;
  border-color:#ffffff17;
  padding:7px 10px;
  font-size:8px
}
.migration-page .hero .status-dot.blue {
  background:#83b2ff;
  box-shadow:0 0 10px #6c9cff65
}
.migration-page .hero h1 {
  letter-spacing:-1.8px;
  margin-top:23px;
  font-size:43px;
  line-height:1.2
}
.migration-page .hero h1 span {
  color:#94bcff
}
.migration-page .hero-description {
  color:#b2c2dc;
  margin-top:20px;
  font-size:13px;
  line-height:1.9
}
.migration-page .hero .desktop-break {
  display:none
}
.migration-page .hero-actions {
  justify-content:flex-start;
  gap:20px;
  margin-top:26px
}
.migration-page .hero-actions .button {
  gap:13px;
  padding:14px 18px;
  font-size:11px
}
.migration-page .hero-actions .text-button {
  color:#d7e4fa;
  gap:7px;
  font-size:10px
}
.migration-page .hero-actions .text-button:hover {
  color:#fff
}
.migration-page .hero-proof {
  color:#d3e0f5;
  flex-direction:column;
  gap:13px;
  margin-top:28px;
  font-size:11px;
  display:flex
}
.migration-page .hero-proof>span {
  align-items:center;
  gap:11px;
  display:flex
}
.migration-page .hero-proof svg {
  box-sizing:content-box;
  color:#98beff;
  background:#ffffff06;
  border:1px solid #ffffff12;
  border-radius:var(--migration-radius);
  padding:7px
}
.migration-page .hero-note {
  color:#96add1;
  max-width:360px;
  margin-top:21px;
  font-size:9px;
  line-height:1.8
}
.migration-page .hero .migration-panel {
  color:var(--migration-ink);
  border-color:#ffffff20;
  border-radius:var(--migration-radius-card);
  width:100%;
  max-width:none;
  margin:0;
  box-shadow:var(--migration-panel-shadow)
}
.migration-page .hero .panel-body {
  display:block
}
.migration-page .hero .panel-aside {
  display:none
}
.migration-page .hero .panel-top {
  padding:0 17px;
  font-size:10px
}
.migration-page .hero .diagram-label {
  font-size:7px
}
.migration-page .hero .diagram-main {
  padding:24px 18px
}
.migration-page .hero .diagram-heading h2 {
  font-size:16px
}
.migration-page .hero .diagram-heading .soft-tag {
  padding:5px 6px;
  font-size:7px
}
.migration-page .hero .server-flow {
  margin-top:25px
}
.migration-page .hero .server-node {
  padding:15px 11px 0
}
.migration-page .hero .server-node strong {
  font-size:11px
}
.migration-page .hero .server-node>span {
  min-height:22px;
  font-size:7px;
  line-height:1.5
}
.migration-page .hero .flow-link {
  width:62px;
  font-size:7px
}
.migration-page .hero .transfer-icon {
  padding:8px
}
.migration-page .hero .flow-line {
  top:18px
}
.migration-page .hero .node-foot {
  gap:var(--migration-space);
  font-size:7px
}
.migration-page .hero .checks-row {
  margin-top:23px;
  font-size:7px
}
.migration-page .hero .checks-row span {
  gap:4px
}
.migration-page .hero .checks-row svg {
  width:12px
}
.migration-page .hero .panel-bottom {
  padding:12px 16px;
  font-size:7px
}
.migration-page .hero .panel-bottom .mono {
  display:none
}
@media(max-width:1000px) {
  .migration-page .hero>.container {
  gap:25px;
  padding:40px 28px
}
.migration-page .hero h1 {
  font-size:36px
}
.migration-page .hero-eyebrow {
  font-size:6.5px
}
.migration-page .hero-description {
  font-size:11px
}
.migration-page .hero-actions {
  flex-wrap:wrap;
  gap:16px
}
.migration-page .hero .diagram-heading h2 {
  font-size:13px
}
.migration-page .hero .diagram-heading .soft-tag {
  font-size:6px
}
.migration-page .hero .diagram-main {
  padding:20px 12px
}
.migration-page .hero .server-node {
  padding:12px 8px 0
}
.migration-page .hero .flow-link {
  width:45px
}
.migration-page .hero .server-node strong {
  font-size:9px
}
.migration-page .hero .node-foot,.migration-page .hero .checks-row {
  font-size:6px
}
.migration-page .hero .panel-top {
  padding:0 12px;
  font-size:8px
}
.migration-page .hero .diagram-label {
  font-size:6px
}

}
@media(max-width:760px) {
  .migration-page .hero {
  padding-top:20px
}
.migration-page .hero>.container {
  grid-template-columns:1fr;
  gap:28px;
  padding:29px 20px 23px
}
.migration-page .hero-eyebrow {
  letter-spacing:.8px;
  font-size:6.5px
}
.migration-page .hero h1 {
  letter-spacing:-1.5px;
  margin-top:20px;
  font-size:36px
}
.migration-page .hero-description {
  margin-top:17px;
  font-size:11px
}
.migration-page .hero-actions {
  gap:16px;
  margin-top:22px
}
.migration-page .hero-actions .button {
  padding:13px 15px;
  font-size:10px
}
.migration-page .hero-actions .text-button {
  font-size:9px
}
.migration-page .hero-proof {
  flex-flow:wrap;
  gap:12px 14px;
  margin-top:24px;
  font-size:8px
}
.migration-page .hero-proof>span {
  gap:6px
}
.migration-page .hero-proof svg {
  width:13px;
  height:13px;
  padding:5px
}
.migration-page .hero-note {
  max-width:280px;
  margin:18px 0 0;
  font-size:8px
}
.migration-page .hero .diagram-main {
  padding:20px 13px
}
.migration-page .hero .diagram-heading h2 {
  font-size:13px
}
.migration-page .hero .panel-top {
  height:43px;
  font-size:8px
}
.migration-page .hero .server-node>span {
  font-size:6px
}
.migration-page .hero .node-foot {
  font-size:5.5px
}
.migration-page .hero .checks-row {
  gap:var(--migration-space);
  font-size:5.5px
}
.migration-page .hero .checks-row svg {
  width:10px
}
.migration-page .hero .flow-link {
  width:43px;
  font-size:5.5px
}
.migration-page .hero .transfer-icon {
  padding:6px
}
.migration-page .hero .flow-line {
  top:14px
}
.migration-page .hero .panel-bottom {
  padding:10px 12px;
  font-size:5.5px
}
.migration-page .hero .node-icon {
  width:33px;
  height:33px
}
.migration-page .hero .node-icon svg {
  width:21px
}

}
@media(max-width:380px) {
  .migration-page .hero h1 {
  font-size:31px
}
.migration-page .hero>.container {
  padding-inline:17px
}
.migration-page .hero-proof {
  gap:10px;
  font-size:7px
}
.migration-page .hero-proof svg {
  width:12px;
  height:12px
}
.migration-page .hero .checks-row {
  font-size:5px
}

}
 .migration-page .diagram-heading h2 {
  letter-spacing:-.35px
}
 .migration-page .form-error a {
  text-decoration:underline
}

/* Content added for the personal-data and hybrid-infrastructure brief. */
.migration-page .hero-actions { flex-wrap: wrap; }
.migration-page .context-link { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.migration-page .privacy-section .safety-layout,
.migration-page .hybrid-section .safety-layout { align-items: start; }
.migration-page .privacy-card h3 { margin-top: 0; font-size: 17px; }
.migration-page .privacy-card .safety-list { margin-bottom: 0; }
.migration-page .privacy-card .safety-list li { align-items: flex-start; }
.migration-page .privacy-card .safety-list svg { flex-shrink: 0; margin-top: 2px; }
.migration-page .hybrid-flow { display: flex; flex-direction: column; gap: 12px; }
.migration-page .hybrid-flow .server-node { text-align: center; padding: 18px; flex: none; }
.migration-page .hybrid-flow .server-node strong { font-size: 14px; }
.migration-page .hybrid-connection { display: flex; align-items: center; justify-content: center; gap: 10px; color: var(--muted); font-size: 11px; }
.migration-page .hybrid-connection > span { color: var(--blue); font-size: 20px; }
.migration-page .hybrid-diagram figcaption { color: var(--muted); margin-top: 20px; font-size: 11px; line-height: 1.8; }
