:root {
  --sz-blue: #2563eb;
  --sz-blue-dark: #1d4ed8;
  --sz-purple: #7c3aed;
  --sz-navy: #0f172a;
  --sz-ink: #111827;
  --sz-muted: #596477;
  --sz-line: #dbe3ef;
  --sz-pale: #ebf5ff;
  --sz-soft: #f5f3ff;
  --sz-gradient: linear-gradient(90deg, #1d4ed8, #2563eb, #7c3aed);
}

.theme-systmzro {
  --brand: var(--sz-blue);
  --brand-dark: var(--sz-blue-dark);
  --accent: var(--sz-purple);
  --focus: #f1b82d;
  --surface: #f5f7fb;
  --line: var(--sz-line);
  color: var(--sz-ink);
  background: #fff;
  font-family: 'Changa', Arial, Helvetica, sans-serif;
  font-size: 17px;
  font-weight: 600;
}

.theme-systmzro .page-shell { padding: 0; }
.theme-systmzro h1,
.theme-systmzro h2,
.theme-systmzro h3,
.theme-systmzro h4,
.theme-systmzro strong,
.theme-systmzro b { font-weight: 800; }

.sz-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid #e5e7eb;
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
  backdrop-filter: blur(10px);
}

.sz-header-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  width: min(1280px, calc(100% - 32px));
  min-height: 78px;
  margin: 0 auto;
}

.sz-logo,
.sz-footer-logo {
  display: inline-flex;
  align-items: center;
  color: var(--sz-ink);
  font-size: 38px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.sz-logo span,
.sz-footer-logo span,
.sz-powered span {
  color: transparent;
  background: var(--sz-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.sz-logo strong,
.sz-footer-logo strong,
.sz-powered strong { color: var(--sz-ink); }
.sz-footer-logo strong,
.sz-powered strong { color: #fff; }

.sz-main-nav,
.sz-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.sz-header-actions { justify-content: flex-end; }
.sz-header-signout { margin: 0; }
.sz-header-signout button {
  display: inline-grid;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  color: var(--sz-navy);
  background: #fff;
  border: 1px solid #d8dcec;
  border-radius: 4px;
  cursor: pointer;
}
.sz-header-signout button:hover { color: var(--sz-purple); border-color: var(--sz-purple); }
.sz-main-nav a,
.sz-mobile-menu nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 6px;
  color: #374151;
  font-weight: 800;
  text-decoration: none;
}

.sz-main-nav a::after {
  position: absolute;
  right: 12px;
  bottom: 5px;
  left: 12px;
  height: 2px;
  border-radius: 2px;
  background: var(--sz-gradient);
  content: '';
  opacity: 0;
  transform: scaleX(0);
  transition: opacity .2s ease, transform .2s ease;
}

.sz-main-nav a:hover,
.sz-mobile-menu nav a:hover { color: var(--sz-blue-dark); background: #f8fafc; }
.sz-main-nav a:hover::after { opacity: 1; transform: scaleX(1); }

.sz-button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 7px;
  padding: 10px 17px;
  font: inherit;
  font-weight: 800;
  line-height: 1.1;
  text-decoration: none;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, color .2s ease, background .2s ease;
}

.sz-button:hover { transform: translateY(-1px); box-shadow: 0 9px 22px rgba(30, 64, 175, .22); }
.sz-button-primary { color: #fff; background: var(--sz-gradient); }
.sz-button-outline { color: var(--sz-blue-dark); border-color: var(--sz-blue); background: #fff; }
.sz-button-light { color: var(--sz-blue-dark); border-color: #fff; background: #fff; }
.sz-button-dark { color: #fff; border-color: #3347a8; background: #24358f; }

.sz-mobile-menu { display: none; justify-self: end; position: relative; }
.sz-mobile-menu summary {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid var(--sz-line);
  border-radius: 7px;
  background: #fff;
  cursor: pointer;
  list-style: none;
}
.sz-mobile-menu summary::-webkit-details-marker { display: none; }
.sz-mobile-menu nav {
  position: absolute;
  top: 52px;
  right: 0;
  display: grid;
  width: min(310px, calc(100vw - 40px));
  padding: 10px;
  border: 1px solid var(--sz-line);
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .2);
}
.sz-mobile-menu nav form { margin: 0; }
.sz-mobile-menu nav form button {
  display: inline-flex;
  width: 100%;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  color: var(--sz-navy);
  background: transparent;
  border: 0;
  font: inherit;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.sz-home-hero-wrap { padding: 51px 0 0; }
.sz-home-container { width: min(1280px, calc(100% - 32px)); margin: 0 auto; }
.sz-home-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 24px;
  align-items: center;
  width: 100%;
  min-height: 266.125px;
  margin: 0;
  overflow: hidden;
  padding: 40px;
  color: #fff;
  border-radius: 6px;
  background:
    radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.50), transparent 70%),
    radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%),
    radial-gradient(1100px 520px at 50% 95%, rgba(124,58,237,.45), transparent 72%),
    var(--sz-navy);
}

.sz-home-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: 38.25px;
  line-height: 1.111;
  letter-spacing: 0;
}
.sz-home-hero-copy > p { max-width: 780px; margin: 8px 0 0; font-size: 20px; }
.sz-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.sz-home-counts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sz-home-counts div { padding: 16px; text-align: center; border: 1px solid rgba(255,255,255,.15); border-radius: 8px; background: rgba(255,255,255,.05); }
.sz-home-counts strong { display: block; font-size: 36px; line-height: 1; }
.sz-home-counts span { display: block; margin-top: 8px; color: #dbeafe; font-size: 14px; }

.sz-home-section,
.sz-page-heading,
.sz-service-list,
.sz-feature-list,
.sz-closing {
  width: min(1280px, calc(100% - 32px));
  margin: 0 auto;
  padding: 42.5px 17px;
}

.sz-home-section > h2,
.sz-services-home > h2,
.sz-services-home .sz-home-container > h2 { margin: 0; text-align: center; font-size: 38.25px; line-height: 1.111; }
.sz-home-section > h2 { margin: 0; text-align: center; font-size: 31.875px; line-height: 1.2; }
.sz-section-intro { max-width: 760px; margin: 12px auto 0; color: var(--sz-muted); text-align: center; font-size: 18px; }
.sz-why-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 17px; margin-top: 17px; }

.sz-tile {
  position: relative;
  min-width: 0;
  overflow: hidden;
  padding: 24px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: var(--sz-pale);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.sz-tile::before {
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  background: var(--sz-gradient);
  content: '';
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.sz-tile::after {
  position: absolute;
  right: 16px;
  bottom: 12px;
  left: 16px;
  z-index: 1;
  height: 6px;
  border-radius: 4px;
  background: var(--sz-gradient);
  content: '';
  opacity: 0;
  pointer-events: none;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .75s ease, opacity .2s ease;
}
.sz-tile:hover::before { opacity: 1; }
.sz-tile:hover::after { opacity: 1; transform: scaleX(1); }
.sz-tile:hover { background: var(--sz-soft); box-shadow: 0 16px 32px rgba(2,6,23,.20), 0 10px 24px rgba(2,6,23,.12); transform: translateY(-2px); }
.sz-tile h3,
.sz-tile h4 { margin: 0 0 10px; color: var(--sz-ink); }
.sz-tile p { margin: 0; color: #4b5563; }
.sz-tile-heading { display: flex; align-items: center; gap: 12px; }
.sz-tile-heading h3 { margin: 0; }
.sz-tile-icon { color: var(--sz-ink); font-size: 24px; transition: color .2s ease; }
.sz-tile:hover .sz-tile-heading h3,
.sz-tile:hover .sz-tile-icon { color: var(--sz-blue); }
.sz-tile-footer { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; margin-bottom: 24px; }
.sz-ribbon { position: absolute; top: 8px; right: 8px; z-index: 2; padding: 4px 7px; border-radius: 6px; color: #fff !important; font-size: 11px; line-height: 1; box-shadow: 0 4px 10px rgba(2,6,23,.18); }
.sz-ribbon-core { background: var(--sz-blue); }
.sz-ribbon-addon { background: linear-gradient(90deg,#7c3aed,#6d28d9,#5b21b6); }
.sz-plugin-version { margin-top: 4px; color: var(--sz-muted); font-size: 14px; font-weight: 800; }
.sz-panel-intro { max-width: 760px; margin: 0 auto 16px; color: var(--sz-muted); text-align: center; }
.sz-empty { grid-column: 1 / -1; text-align: center; }

.sz-services-home { background: #f3f7ff; }
.sz-services-home .sz-home-container { width: 100%; }
.sz-why .sz-tile { min-height: 247.5625px; padding: 17px; }
.sz-why .sz-tile h3 { margin-bottom: 8.5px; font-size: 21.25px; line-height: 1.4; }
.sz-why .sz-tile p { font-size: 18.0625px; font-weight: 400; line-height: 1.5; }
.sz-service-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 21.25px; margin-top: 25.5px; }
.sz-service-card-grid article { display: flex; flex-direction: column; background: #fff; }
.sz-service-card-grid .sz-tile { min-height: 299.15625px; padding: 25.5px; }
.sz-service-card-grid h3 { font-size: 25.5px; line-height: 1.333; }
.sz-service-card-grid p { flex: 1; margin-top: 12.75px; font-size: 18.0625px; font-weight: 400; line-height: 1.5; }

.sz-plugins-home { padding-bottom: 40px; }
.sz-plugin-tabs { margin-top: 24px; }
.sz-plugin-tabs > input { position: absolute; opacity: 0; pointer-events: none; }
.sz-tab-controls { display: flex; justify-content: center; gap: 4px; width: max-content; margin: 0 auto 32px; padding: 4px; border-radius: 999px; background: var(--sz-gradient); box-shadow: 0 9px 24px rgba(30,64,175,.2); }
.sz-tab-controls label { min-width: 110px; padding: 9px 20px; border-radius: 999px; color: #dbeafe; text-align: center; font-weight: 800; cursor: pointer; }
#sz-foundation-tab:checked ~ .sz-tab-controls label[for='sz-foundation-tab'],
#sz-addon-tab:checked ~ .sz-tab-controls label[for='sz-addon-tab'] { color: var(--sz-ink); background: #fff; }
.sz-tab-panel { display: none; }
#sz-foundation-tab:checked ~ .sz-foundation-panel,
#sz-addon-tab:checked ~ .sz-addon-panel { display: block; }
.sz-plugin-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25.5px; margin-top: 17px; }
.sz-plugin-grid article { display: flex; flex-direction: column; padding: 21.25px; }
.sz-plugin-grid article > p { flex: 1; margin-top: 12px; }
.sz-plugin-grid h3 { font-size: 21.25px; }
.sz-addon-tile { background: var(--sz-soft); }
.sz-addon-tile > b { color: var(--sz-purple) !important; }

.sz-comparison { background: #f8fafc; }
.sz-comparison .sz-home-container { width: 100%; }
.sz-comparison h2 { margin: 0; text-align: center; font-size: 30px; }
.sz-table-wrap { margin-top: 30px; overflow-x: auto; border: 1px solid var(--sz-line); border-radius: 7px; background: #fff; }
.sz-table-wrap table { width: 100%; min-width: 860px; border-collapse: collapse; }
.sz-table-wrap th,
.sz-table-wrap td { padding: 14px; border-bottom: 1px solid var(--sz-line); background: transparent; text-align: left; }
.sz-table-wrap thead th { color: #334155; background: #eef2f7; }
.sz-table-wrap tbody th { min-width: 210px; }
.sz-table-wrap tbody th small { display: block; color: var(--sz-blue-dark); }
.sz-availability { font-weight: 800; }
.sz-availability.is-included { color: #16803c; }
.sz-availability.is-optional { color: #b42318; }

.sz-work-home > div:first-child { max-width: 850px; }
.sz-kicker { margin: 0 0 8px; color: var(--sz-blue-dark); font-size: 13px; font-weight: 800; text-transform: uppercase; }
.sz-work-home h2 { margin: 0; font-size: 40px; line-height: 1.15; }
.sz-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 34px 0 28px; }
.sz-work-grid article { padding: 0; background: #fff; border-color: var(--sz-line); }
.sz-work-grid img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.sz-work-grid article > div { padding: 22px; }
.sz-work-grid span { color: var(--sz-blue-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }

.sz-page-heading { width: 100%; max-width: none; padding-right: max(20px, calc((100% - 1280px) / 2)); padding-left: max(20px, calc((100% - 1280px) / 2)); color: #fff; background: var(--sz-navy); }
.sz-page-heading .eyebrow { color: #93c5fd; }
.sz-page-heading h1 { max-width: 900px; margin: 7px 0; font-size: 46px; line-height: 1.1; }
.sz-page-heading > p:last-child { max-width: 860px; color: #dbeafe; font-size: 19px; }
.sz-service-list article { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center; padding: 34px 0; border-bottom: 1px solid var(--sz-line); }
.sz-service-list h2 { margin: 7px 0; font-size: 30px; }
.sz-service-list p { max-width: 840px; margin: 0; color: var(--sz-muted); }
.sz-feature-list article { display: grid; grid-template-columns: 60px 1fr 180px; gap: 24px; padding: 28px 0; border-bottom: 1px solid var(--sz-line); }
.sz-feature-list h2 { margin: 0 0 8px; font-size: 26px; }
.sz-feature-list p { margin: 0; color: var(--sz-muted); }
.sz-feature-status { color: #16803c !important; font-weight: 800; }
.sz-features-page { padding-top: 68px; }
.sz-features-hero,
.sz-features-capabilities,
.sz-storage-band > div,
.sz-features-closing { width: min(1280px, calc(100% - 32px)); margin: 0 auto; }
.sz-features-hero { display: grid; grid-template-columns: minmax(0, 2fr) minmax(250px, .7fr); gap: 34px; align-items: end; padding: 51px; color: #fff; border-radius: 6px; background: radial-gradient(1000px 430px at 8% 12%, rgba(37,99,235,.58), transparent 72%), radial-gradient(900px 400px at 92% 85%, rgba(14,165,233,.45), transparent 70%), #0f172a; }
.sz-features-hero .eyebrow { color: #bfdbfe; }
.sz-features-hero h1 { max-width: 820px; margin: 6px 0 0; font-size: 51px; line-height: 1.08; }
.sz-features-hero > div > p:last-of-type { max-width: 790px; margin: 14px 0 0; color: #dbeafe; font-size: 19px; line-height: 1.55; }
.sz-features-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 25px; }
.sz-features-hero aside { padding: 25px; border-left: 3px solid #60a5fa; background: rgba(15,23,42,.38); }
.sz-features-hero aside strong { display: block; font-size: 54px; line-height: 1; }
.sz-features-hero aside span { display: block; margin-top: 6px; color: #bfdbfe; font-weight: 800; }
.sz-features-hero aside p { margin: 13px 0 0; color: #cbd5e1; line-height: 1.5; }
.sz-features-capabilities { padding: 51px 0; }
.sz-features-capabilities > header { max-width: 800px; }
.sz-features-capabilities > header h2 { margin: 4px 0 0; font-size: 34px; }
.sz-features-capabilities > header > p:last-child { margin: 10px 0 0; color: var(--sz-muted); font-size: 17px; }
.sz-feature-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; margin-top: 34px; }
.sz-feature-card { min-height: 230px; padding: 25px; border: 1px solid var(--sz-line); border-radius: 8px; background: #fff; box-shadow: 0 10px 25px rgba(15,23,42,.04); }
.sz-feature-card > div { display: flex; justify-content: space-between; gap: 18px; align-items: center; }
.sz-feature-card > div span { color: var(--sz-blue); font-size: 13px; font-weight: 900; }
.sz-feature-card > div p { margin: 0; color: #16803c; font-size: 13px; font-weight: 800; text-align: right; }
.sz-feature-card h3 { margin: 32px 0 0; font-size: 25px; }
.sz-feature-card > p { margin: 10px 0 0; color: var(--sz-muted); line-height: 1.6; }
.sz-storage-band { padding: 51px 0; color: #f8fafc; background: #0f172a; }
.sz-storage-band header { max-width: 840px; }
.sz-storage-band .eyebrow { color: #93c5fd; }
.sz-storage-band h2 { margin: 4px 0 0; font-size: 34px; }
.sz-storage-band header > p:last-child { margin: 10px 0 0; color: #cbd5e1; font-size: 17px; }
.sz-storage-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; margin-top: 34px; }
.sz-storage-grid article { padding-top: 20px; border-top: 3px solid #60a5fa; }
.sz-storage-grid code { color: #93c5fd; font-weight: 800; }
.sz-storage-grid h3 { margin: 9px 0 0; font-size: 20px; }
.sz-storage-grid p { margin: 8px 0 0; color: #cbd5e1; line-height: 1.5; }
.sz-features-closing { padding: 51px 0; text-align: center; }
.sz-features-closing h2 { max-width: 900px; margin: 6px auto 0; font-size: 34px; }
.sz-features-closing > div { display: flex; flex-wrap: wrap; justify-content: center; gap: 13px; margin-top: 25px; }
.theme-systmzro .text-link { color: var(--sz-blue-dark); font-weight: 800; }
.sz-closing { width: 100%; max-width: none; padding-right: max(20px, calc((100% - 1280px) / 2)); padding-left: max(20px, calc((100% - 1280px) / 2)); text-align: center; background: var(--sz-pale); }
.sz-closing h2 { max-width: 820px; margin: 0 auto 26px; }

.sz-v6-page {
  width: min(1280px, calc(100% - 32px));
  margin: 0 auto;
  padding: 98.25px 0 93.5px;
}
.sz-v6-centered-heading { text-align: center; }
.sz-v6-centered-heading h1,
.sz-v6-centered-heading h2 { margin: 0; font-size: 38.25px; line-height: 1.111; }
.sz-v6-centered-heading > p { margin: 8.5px 0 0; color: var(--sz-muted); font-size: 18.0625px; font-weight: 400; line-height: 1.5; }
.sz-v6-heading-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12.75px; margin-top: 17px; }
.sz-v6-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; margin-top: 34px; }
.sz-v6-service-tile { display: block; min-width: 0; padding: 25.5px; color: var(--sz-ink); border: 0; text-decoration: none; }
.sz-v6-service-tile .sz-tile-heading { gap: 12.75px; }
.sz-v6-service-tile h2,
.sz-v6-service-tile h3 { margin: 0; font-size: 21.25px; line-height: 1.4; }
.sz-v6-service-tile > p { margin-top: 8.5px; font-size: 17px; font-weight: 400; line-height: 25.5px; }
.sz-v6-service-tile .sz-tile-footer { margin-top: 17px; }
.sz-v6-service-tile .sz-button { min-height: 45.125px; padding: 0 17px; font-size: 19.125px; line-height: 19.125px; }
.sz-v6-specialties { margin-top: 51px; }
.sz-v6-specialties .sz-v6-centered-heading > p { margin-top: 12.75px; padding-bottom: 21.25px; font-size: 19.125px; }
.sz-v6-specialties .sz-v6-service-grid { margin-top: 0; }
.sz-v6-specialties .sz-v6-service-tile .sz-button { min-height: 43.21875px; }

.sz-portfolio-page {
  --sz-portfolio-gradient: linear-gradient(90deg, #2563eb, #7c3aed);
  width: min(1280px, calc(100% - 32px));
  margin: 0 auto;
  padding: 68px 0 72px;
}
.sz-portfolio-hero {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 36px;
  align-items: center;
  min-height: 380px;
  padding: 42px;
  color: #fff;
  border-radius: 6px;
  background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(124,58,237,.45), transparent 72%), #0f172a;
}
.sz-portfolio-label { margin: 0; text-transform: uppercase; font-size: 14px; font-weight: 800; }
.sz-portfolio-hero .sz-portfolio-label { color: rgba(255,255,255,.8); }
.sz-portfolio-hero h1 { margin: 7px 0 0; font-size: 38.25px; line-height: 1.1; }
.sz-portfolio-hero-copy > p:last-of-type { max-width: 660px; margin: 12px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-portfolio-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }
.sz-portfolio-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.sz-portfolio-stats a { display: flex; min-height: 214px; flex-direction: column; justify-content: center; padding: 24px; color: #fff; border: 1px solid rgba(255,255,255,.15); border-radius: 8px; background: rgba(255,255,255,.06); text-decoration: none; transition: background .2s ease; }
.sz-portfolio-stats a:hover { background: rgba(255,255,255,.11); }
.sz-portfolio-stats i { font-size: 30px; }
.sz-portfolio-stats strong { margin-top: 12px; font-size: 58px; line-height: 1; }
.sz-portfolio-stats span { margin-top: 12px; font-size: 18px; font-weight: 800; }
.sz-portfolio-stats small { margin-top: 4px; color: rgba(255,255,255,.7); font-weight: 700; }
.sz-portfolio-index { padding: 42px 0; }
.sz-portfolio-index > header,
.sz-portfolio-category > header { text-align: center; }
.sz-portfolio-index h2,
.sz-portfolio-category h2 { margin: 0; font-size: 31px; }
.sz-portfolio-index header p,
.sz-portfolio-category header p { max-width: 800px; margin: 8px auto 0; color: var(--sz-muted); }
.sz-portfolio-index-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 25px; }
.sz-portfolio-index-link { display: grid; grid-template-columns: 1fr auto; padding: 21px; color: var(--sz-ink); border: 1px solid var(--sz-line); border-radius: 6px; background: #fff; text-decoration: none; transition: box-shadow .2s ease, border-color .2s ease; }
.sz-portfolio-index-link:hover { border-color: transparent; box-shadow: 0 12px 24px rgba(2,6,23,.18); }
.sz-portfolio-index-link > span { display: flex; align-items: center; gap: 13px; min-width: 0; font-size: 19px; }
.sz-portfolio-index-link i { color: var(--sz-blue); font-size: 25px; }
.sz-portfolio-index-link b { font-size: 32px; }
.sz-portfolio-index-link p { grid-column: 1 / -1; margin: 13px 0 0; color: var(--sz-muted); font-size: 14px; line-height: 1.65; }
.sz-portfolio-category { padding: 42px 0; scroll-margin-top: 112px; }
.sz-portfolio-category > header small { display: block; margin-top: 9px; color: #64748b; }
.sz-portfolio-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin-top: 34px; }
.sz-portfolio-tile { min-width: 0; padding: 21px; border: 1px solid rgba(15,23,42,.12); border-radius: 8px; background: #fff; box-shadow: 0 2px 10px rgba(2,6,23,.06); transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.sz-portfolio-tile:hover { border-color: transparent; box-shadow: 0 28px 56px rgba(2,6,23,.25), 0 14px 28px rgba(2,6,23,.14); transform: translateY(-1px); }
.sz-portfolio-thumb { position: relative; display: block; width: 100%; height: 256px; padding: 0; overflow: hidden; color: inherit; border: 0; border-radius: 6px; background: #e2e8f0; cursor: pointer; font: inherit; }
.sz-portfolio-thumb > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.sz-portfolio-thumb-fallback { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 22px; color: #fff; background: var(--sz-gradient); text-align: center; cursor: default; }
.sz-portfolio-thumb-fallback > i { font-size: 42px; }
.sz-portfolio-thumb-fallback > strong { font-size: 20px; line-height: 1.25; }
.sz-portfolio-thumb-fallback > small { color: #dbeafe; font-weight: 700; }
.sz-portfolio-thumb-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 14px; color: #fff; background: rgba(2,6,23,.76); transition: background .25s ease; }
.sz-portfolio-thumb:hover .sz-portfolio-thumb-overlay,
.sz-portfolio-thumb:focus-visible .sz-portfolio-thumb-overlay { background: linear-gradient(90deg, rgba(37,99,235,.92), rgba(124,58,237,.92)); }
.sz-portfolio-thumb-overlay strong { display: flex; align-items: center; gap: 9px; text-transform: uppercase; font-size: 14px; }
.sz-portfolio-thumb-overlay small { margin-top: 5px; }
.sz-portfolio-tile-body { margin-top: 17px; }
.sz-portfolio-title-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sz-portfolio-title-row > i { color: var(--sz-blue); font-size: 20px; }
.sz-portfolio-title-row h3 { margin: 0; font-size: 21px; }
.sz-portfolio-title-row > span { padding: 6px 10px; color: #fff; border-radius: 5px; background: #1d4ed8; font-size: 14px; line-height: 1; box-shadow: 0 4px 10px rgba(0,0,0,.16); }
.sz-portfolio-tile-body > p { margin: 13px 0 0; color: #334155; line-height: 1.6; }
.sz-portfolio-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 17px; }
.sz-portfolio-tags span { display: inline-flex; align-items: center; padding: 5px 10px; color: #3730a3; border-radius: 999px; background: #eef2ff; font-size: 14px; font-weight: 700; }
.sz-portfolio-tile footer { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 21px; }
.sz-portfolio-tile footer small { color: #64748b; }
.sz-portfolio-backdrop { position: fixed; inset: 0; z-index: 9000; background: rgba(2,6,23,.88); opacity: 0; transition: opacity .18s ease; }
.sz-portfolio-backdrop[hidden],
.sz-portfolio-modal[hidden] { display: none; }
.sz-portfolio-backdrop.is-open { opacity: 1; }
.sz-portfolio-modal { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 17px; opacity: 0; transition: opacity .18s ease; }
.sz-portfolio-modal.is-open { opacity: 1; }
.sz-portfolio-modal > div { position: relative; z-index: 10001; width: min(1152px, 100%); }
.sz-portfolio-image-modal > div { width: auto; max-width: min(1152px, 100%); }
.sz-portfolio-image-modal img { display: block; max-width: 100%; max-height: 85vh; border-radius: 6px; box-shadow: 0 24px 70px rgba(0,0,0,.45); }
.sz-portfolio-modal-close { position: absolute; top: -13px; right: -13px; z-index: 2; display: grid; width: 42px; height: 42px; place-items: center; padding: 0; color: #fff; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); font-size: 22px; cursor: pointer; box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.sz-portfolio-modal-close-light { color: #111827; background: #fff; }
.sz-portfolio-details-body { max-height: calc(100vh - 34px); padding: 28px; overflow-y: auto; border-radius: 8px; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.45); }
.sz-portfolio-details-content h2 { margin: 6px 0 12px; font-size: 31px; }
.sz-portfolio-details-content > p:not(.sz-portfolio-label) { color: var(--sz-muted); }
.sz-portfolio-details-content > .sz-button { margin-top: 12px; }
.sz-portfolio-detail-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 22px; }
.sz-portfolio-detail-gallery img { display: block; width: 100%; border: 1px solid var(--sz-line); border-radius: 5px; }


.sz-about-page { width: min(1280px, calc(100% - 32px)); margin: 0 auto; padding: 68px 0 72px; }
.sz-about-hero { padding: 42px; color: #fff; border-radius: 6px; background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(14,165,233,.5), transparent 72%), #0f172a; }
.sz-about-hero h1 { margin: 0; font-size: 51px; line-height: 1.1; }
.sz-about-hero p { max-width: 800px; margin: 9px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-about-overview { display: grid; grid-template-columns: 2fr 1fr; gap: 25px; align-items: stretch; padding: 25px 0; }
.sz-about-overview figure { display: flex; flex-direction: column; margin: 0; }
.sz-about-overview figure > div { flex: 1; min-height: 0; overflow: hidden; border: 1px solid var(--sz-line); border-radius: 6px; background: #000; box-shadow: 0 2px 8px rgba(15,23,42,.08); }
.sz-about-overview figure img { display: block; width: 100%; height: 100%; min-height: 390px; object-fit: cover; object-position: top; }
.sz-about-overview figcaption { margin-top: 7px; color: var(--sz-muted); font-size: 13px; }
.sz-about-overview aside { padding: 25px; border: 1px solid var(--sz-line); border-radius: 6px; background: #fff; box-shadow: 0 2px 8px rgba(15,23,42,.08); }
.sz-about-overview aside > header { display: flex; align-items: center; gap: 9px; }
.sz-about-overview aside > header > span { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; color: #fff; border-radius: 6px; background: linear-gradient(90deg,#1d4ed8,#2563eb,#0ea5e9); }
.sz-about-overview h2 { margin: 0; font-size: 21px; line-height: 1.1; }
.sz-about-overview header p { margin: 4px 0 0; color: var(--sz-muted); font-size: 14px; }
.sz-about-overview aside > p { margin: 17px 0 0; color: #334155; line-height: 1.65; }
.sz-about-overview ul { display: grid; gap: 9px; margin: 17px 0; padding: 0; color: #334155; list-style: none; }
.sz-about-overview li { display: flex; gap: 9px; font-size: 14px; }
.sz-about-overview li i { margin-top: 4px; color: var(--sz-blue); }
.sz-about-overview aside > .sz-button { width: 100%; justify-content: center; margin-top: 5px; }
.sz-about-doc-link { display: block; margin-top: 13px; color: var(--sz-blue-dark); font-size: 14px; text-align: center; }
.sz-about-plugin-section { padding: 42px 0; }
.sz-about-plugin-section + .sz-about-plugin-section { border-top: 1px solid var(--sz-line); }
.sz-about-plugin-section > header { text-align: center; }
.sz-about-plugin-section h2 { margin: 0; font-size: 31px; }
.sz-about-plugin-section header p { margin: 8px 0 0; color: var(--sz-muted); }
.sz-about-plugin-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 25px; }
.sz-about-plugin-chip { display: flex; min-width: 0; align-items: flex-start; gap: 13px; padding: 17px; color: var(--sz-ink); border: 1px solid var(--sz-line); border-radius: 6px; background: #fff; text-decoration: none; transition: box-shadow .2s ease, border-color .2s ease; }
.sz-about-plugin-chip:hover { border-color: transparent; box-shadow: 0 12px 24px rgba(2,6,23,.18); }
.sz-about-plugin-chip > i { margin-top: 3px; color: var(--sz-blue); font-size: 19px; opacity: .85; }
.sz-about-plugin-chip > span { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 7px; }
.sz-about-plugin-chip strong { font-size: 17px; }
.sz-about-plugin-chip:hover strong { text-decoration: underline; text-decoration-color: #60a5fa; text-underline-offset: 2px; }
.sz-about-plugin-chip small { color: var(--sz-muted); }
.sz-about-plugin-chip em { display: -webkit-box; width: 100%; overflow: hidden; color: var(--sz-muted); font-size: 14px; font-style: normal; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sz-about-cta { padding: 42px; text-align: center; border: 1px solid var(--sz-line); border-radius: 6px; background: #fff; box-shadow: 0 2px 8px rgba(15,23,42,.08); }
.sz-about-cta h2 { margin: 0; font-size: 31px; }
.sz-about-cta p { max-width: 720px; margin: 9px auto 0; color: var(--sz-muted); }
.sz-about-cta .sz-button { margin-top: 25px; }

.sz-docs-page { width: min(1280px, calc(100% - 32px)); margin: 0 auto; padding: 68px 0 72px; }
.sz-docs-hero { padding: 42px; color: #fff; border-radius: 6px; background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(14,165,233,.5), transparent 72%), #0f172a; }
.sz-docs-hero h1 { margin: 0; font-size: 51px; line-height: 1.1; }
.sz-docs-hero p { max-width: 800px; margin: 9px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-docs-index-section,
.sz-docs-card-section { padding: 42px 0; }
.sz-docs-index-section > header,
.sz-docs-card-section > header { text-align: center; }
.sz-docs-index-section h2,
.sz-docs-card-section h2 { margin: 0; font-size: 31px; }
.sz-docs-index-section header p,
.sz-docs-card-section header p { margin: 8px 0 0; color: var(--sz-muted); }
.sz-docs-index-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 25px; }
.sz-docs-index-grid a { display: flex; min-width: 0; align-items: center; gap: 9px; padding: 11px 17px; color: var(--sz-ink); border: 1px solid var(--sz-line); border-radius: 6px; background: #fff; text-decoration: none; transition: box-shadow .2s ease, border-color .2s ease; }
.sz-docs-index-grid a:hover { border-color: transparent; box-shadow: 0 12px 24px rgba(2,6,23,.18); }
.sz-docs-index-grid i { color: var(--sz-blue); }
.sz-docs-index-grid strong { min-width: 0; }
.sz-docs-index-grid a:hover strong { text-decoration: underline; text-decoration-color: #60a5fa; text-underline-offset: 2px; }
.sz-docs-index-grid small { margin-left: auto; color: var(--sz-muted); white-space: nowrap; }
.sz-docs-index-divider { margin: 42px 0; border-top: 1px solid var(--sz-line); }
.sz-docs-card-section { border-top: 1px solid var(--sz-line); }
.sz-docs-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin-top: 34px; }
.sz-docs-card { min-width: 0; padding: 21px; border: 1px solid rgba(15,23,42,.12); border-radius: 8px; background: #fff; box-shadow: 0 2px 10px rgba(2,6,23,.06); scroll-margin-top: 110px; transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.sz-docs-card:hover { border-color: transparent; box-shadow: 0 28px 56px rgba(2,6,23,.25), 0 14px 28px rgba(2,6,23,.14); transform: translateY(-1px); }
.sz-docs-card-visual { display: flex; width: 100%; height: 224px; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 18px; color: #fff; border: 0; border-radius: 6px; background: rgba(2,6,23,.94); cursor: pointer; font: inherit; text-align: center; transition: background .25s ease; }
.sz-docs-card-visual:hover,
.sz-docs-card-visual:focus-visible { background: linear-gradient(90deg, #2563eb, #7c3aed); }
.sz-docs-card-visual > i { font-size: 42px; }
.sz-docs-card-visual > strong { text-transform: uppercase; font-size: 17px; }
.sz-docs-card-visual > span { font-size: 13px; }
.sz-docs-card-caption { margin-top: 5px; color: var(--sz-muted); font-size: 11px; text-align: center; }
.sz-docs-card-body { margin-top: 17px; }
.sz-docs-card-title { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.sz-docs-card-title > i { color: var(--sz-blue); font-size: 20px; }
.sz-docs-card-title h3 { margin: 0; font-size: 21px; }
.sz-docs-card-body > small { display: block; margin-top: 6px; color: var(--sz-muted); }
.sz-docs-card-body > p { min-height: 105px; margin: 13px 0 0; color: #334155; line-height: 1.55; }
.sz-docs-card footer { margin-top: 21px; }
.sz-docs-backdrop { position: fixed; inset: 0; z-index: 9000; background: rgba(2,6,23,.88); opacity: 0; transition: opacity .18s ease; }
.sz-docs-backdrop[hidden],
.sz-docs-modal[hidden] { display: none; }
.sz-docs-backdrop.is-open { opacity: 1; }
.sz-docs-modal { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 17px; opacity: 0; transition: opacity .18s ease; }
.sz-docs-modal.is-open { opacity: 1; }
.sz-docs-modal > div { position: relative; width: min(768px, 100%); }
.sz-docs-modal-close { position: absolute; top: -13px; right: -13px; z-index: 2; display: grid; width: 42px; height: 42px; place-items: center; padding: 0; color: #111827; border: 0; border-radius: 50%; background: #fff; font-size: 22px; cursor: pointer; box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.sz-docs-modal-body { max-height: calc(100vh - 34px); padding: 28px; overflow-y: auto; border-radius: 8px; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.45); }
.sz-docs-detail-content h2 { margin: 6px 0 12px; font-size: 31px; }
.sz-docs-detail-content > p:not(.sz-portfolio-label) { color: var(--sz-muted); }

.sz-current-pricing-page { width: min(1280px, calc(100% - 32px)); margin: 0 auto; padding: 68px 0 72px; }
.sz-current-pricing-hero { padding: 42px; color: #fff; border-radius: 6px; background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(124,58,237,.45), transparent 72%), #0f172a; }
.sz-current-pricing-hero h1 { margin: 0; font-size: 38.25px; line-height: 1.1; }
.sz-current-pricing-hero p { max-width: 800px; margin: 9px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-current-pricing-sections { padding: 42px 17px; }
.sz-current-pricing-section { padding: 42px 0; border-bottom: 1px solid var(--sz-line); scroll-margin-top: 110px; }
.sz-current-pricing-section:first-child { padding-top: 0; }
.sz-current-pricing-section:last-child { border-bottom: 0; }
.sz-current-pricing-section > header { max-width: 800px; margin: 0 auto; text-align: center; }
.sz-current-pricing-section h2 { margin: 0; font-size: 31px; }
.sz-current-pricing-section header p { margin: 8px 0 0; color: var(--sz-muted); }
.sz-current-plan-grid { display: grid; gap: 17px; margin-top: 25px; }
.sz-current-plan-grid.is-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sz-current-plan-grid.is-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sz-current-plan { display: flex; min-width: 0; flex-direction: column; padding: 21px; border: 1px solid var(--sz-line); border-radius: 8px; background: #fff; box-shadow: 0 2px 10px rgba(2,6,23,.06); transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease; }
.sz-current-plan:hover { border-color: rgba(59,130,246,.35); box-shadow: 0 16px 36px rgba(2,132,199,.15); transform: translateY(-2px); }
.sz-current-plan h3 { margin: 0; font-size: 22px; }
.sz-current-plan-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin: 13px 0 0; }
.sz-current-plan-price strong { color: var(--sz-blue-dark); font-size: 32px; }
.sz-current-plan-price span { color: var(--sz-muted); font-size: 14px; }
.sz-current-plan-description { min-height: 73px; margin: 10px 0 0; color: var(--sz-muted); line-height: 1.55; }
.sz-current-plan ul { display: grid; flex: 1; align-content: start; gap: 9px; margin: 17px 0 0; padding: 0; list-style: none; }
.sz-current-plan li { display: flex; gap: 9px; color: #334155; }
.sz-current-plan li i { margin-top: 4px; color: var(--sz-blue); }
.sz-current-plan footer { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 21px; }
.sz-current-plan footer .sz-button { flex: 1 1 auto; justify-content: center; }
.sz-current-pricing-cta { margin-top: 20px; }
.sz-service-detail-page { padding: 68px 0 0; }
.sz-service-detail-hero,
.sz-service-detail-overview,
.sz-service-pricing-band > div { width: min(1280px, calc(100% - 32px)); margin: 0 auto; }
.sz-service-detail-hero { padding: 51px; color: #fff; border-radius: 6px; background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(14,165,233,.5), transparent 72%), #0f172a; }
.sz-service-detail-hero > div:first-child { display: flex; align-items: center; gap: 13px; }
.sz-service-detail-hero > div:first-child i { font-size: 28px; }
.sz-service-detail-hero h1 { margin: 0; font-size: 51px; line-height: 1.1; }
.sz-service-detail-hero > p { max-width: 800px; margin: 10px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-service-detail-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 25px; }
.sz-service-detail-overview { display: grid; grid-template-columns: 2fr 1fr; gap: 25px; align-items: start; padding: 42px 0; }
.sz-service-detail-overview h2 { margin: 0; font-size: 31px; }
.sz-service-detail-overview > div > p { margin: 13px 0 0; color: #334155; font-size: 17px; line-height: 1.65; }
.sz-service-detail-overview h3 { margin: 25px 0 0; font-size: 25px; }
.sz-service-detail-overview > div ul { display: grid; gap: 10px; margin: 13px 0 0; padding: 0; list-style: none; }
.sz-service-detail-overview > div li { display: flex; gap: 10px; color: #334155; line-height: 1.55; }
.sz-service-detail-overview > div li > i { margin-top: 5px; color: #16a34a; }
.sz-service-detail-overview aside { padding: 21px; border: 1px solid var(--sz-line); border-radius: 8px; background: #fff; }
.sz-service-detail-overview aside h3 { margin: 0; font-size: 21px; }
.sz-service-detail-overview aside ul { display: grid; gap: 9px; margin: 13px 0 0; padding-left: 20px; color: #334155; }
.sz-service-detail-overview aside .sz-button { margin-top: 17px; }
.sz-service-pricing-band { padding: 42px 0; border-top: 1px solid var(--sz-line); border-bottom: 1px solid var(--sz-line); background: #f8fafc; }
.sz-service-pricing-band > div > header { max-width: 800px; margin: 0 auto; text-align: center; }
.sz-service-pricing-band h2 { margin: 0; font-size: 31px; }
.sz-service-pricing-band header p { margin: 8px 0 0; color: var(--sz-muted); }
.sz-service-pricing-link { margin: 17px 0 0; color: var(--sz-muted); text-align: center; }
.sz-service-pricing-link a { color: var(--sz-blue-dark); font-weight: 800; }

.sz-family-maintenance-page { scroll-behavior: smooth; }
.sz-family-maintenance-hero { background: radial-gradient(900px 420px at 10% 8%, rgba(190,24,93,.52), transparent 70%), radial-gradient(900px 420px at 92% 20%, rgba(37,99,235,.48), transparent 72%), #0f172a; }
.sz-family-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 15px; color: #fce7f3; font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.sz-family-maintenance-page .sz-service-detail-overview > div > p + p { padding: 15px 17px; border-left: 4px solid #db2777; border-radius: 0 6px 6px 0; background: #fdf2f8; }
.sz-family-maintenance-page .sz-service-detail-overview aside > p { margin: 10px 0 0; color: #475569; line-height: 1.55; }
.sz-family-plan-wrap { width: min(430px, 100%); margin: 25px auto 0; }
.sz-family-current-plan { position: relative; border: 2px solid #db2777; box-shadow: 0 18px 44px rgba(190,24,93,.14); }
.sz-family-current-plan:hover { border-color: #be185d; box-shadow: 0 22px 50px rgba(190,24,93,.2); }
.sz-family-plan-badge { align-self: flex-start; margin: -8px 0 16px; padding: 7px 10px; color: #9d174d; border-radius: 999px; background: #fce7f3; font-size: 12px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.sz-family-standard-price { margin: 13px 0 -4px; color: #64748b; font-size: 15px; }
.sz-family-standard-price del { color: #9f1239; font-weight: 800; text-decoration-thickness: 2px; }
.sz-family-checkout { padding: 50px 17px 68px; background: #fff; scroll-margin-top: 95px; }
.sz-family-checkout > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 440px); gap: 42px; align-items: center; width: min(1050px, 100%); margin: 0 auto; }
.sz-family-checkout header .sz-family-eyebrow { margin-bottom: 10px; color: #9d174d; }
.sz-family-checkout h2 { margin: 0; color: #0f172a; font-size: 31px; }
.sz-family-checkout header p { margin: 13px 0 0; color: #475569; font-size: 17px; line-height: 1.65; }
.sz-family-paypal-panel { min-height: 112px; padding: 21px; border: 1px solid var(--sz-line); border-radius: 8px; background: #f8fafc; box-shadow: 0 8px 24px rgba(15,23,42,.08); }
.sz-family-paypal-status { margin: 10px 0 0; color: #166534; font-size: 14px; line-height: 1.5; }
.sz-family-paypal-status:empty { display: none; }
.sz-family-paypal-status.is-error { color: #b91c1c; }

.sz-specialty-page { padding: 68px 0 0; }
.sz-specialty-hero,
.sz-specialty-overview,
.sz-specialty-pillars > div,
.sz-specialty-capabilities,
.sz-specialty-process > div { width: min(1280px, calc(100% - 32px)); margin: 0 auto; }
.sz-specialty-hero { padding: 51px; color: #fff; border-radius: 6px; background: radial-gradient(1100px 420px at 10% 8%, rgba(29,78,216,.5), transparent 70%), radial-gradient(1000px 360px at 90% 12%, rgba(37,99,235,.48), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(14,165,233,.5), transparent 72%), #0f172a; }
.sz-specialty-content-creator-services .sz-specialty-hero { background: radial-gradient(1100px 420px at 10% 8%, rgba(59,130,246,.55), transparent 70%), radial-gradient(900px 360px at 90% 12%, rgba(236,72,153,.5), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(14,165,233,.5), transparent 72%), #020617; }
.sz-specialty-new-business-services .sz-specialty-hero { background: radial-gradient(1100px 420px at 10% 8%, rgba(37,99,235,.55), transparent 70%), radial-gradient(900px 360px at 90% 12%, rgba(34,197,94,.5), transparent 70%), radial-gradient(1100px 520px at 50% 95%, rgba(45,212,191,.5), transparent 72%), #020617; }
.sz-specialty-hero > div:first-child { display: flex; align-items: center; gap: 13px; }
.sz-specialty-hero > div:first-child i { font-size: 28px; }
.sz-specialty-hero h1 { margin: 0; font-size: 51px; line-height: 1.1; }
.sz-specialty-hero > p { max-width: 800px; margin: 10px 0 0; color: rgba(255,255,255,.9); font-size: 20px; line-height: 1.5; }
.sz-specialty-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 25px; }
.sz-specialty-overview { display: grid; grid-template-columns: 2fr 1fr; gap: 25px; align-items: start; padding: 42px 0; }
.sz-specialty-overview h2 { margin: 0; font-size: 31px; }
.sz-specialty-overview > div p { margin: 13px 0 0; color: #334155; font-size: 17px; line-height: 1.65; }
.sz-specialty-overview aside { padding: 21px; border: 1px solid var(--sz-line); border-radius: 8px; background: #fff; }
.sz-specialty-overview aside h3 { margin: 0; font-size: 21px; }
.sz-specialty-overview aside ul { display: grid; gap: 9px; margin: 13px 0 0; padding-left: 20px; color: #334155; }
.sz-specialty-overview aside .sz-button { margin-top: 17px; }
.sz-specialty-pillars { padding: 42px 0; border-top: 1px solid var(--sz-line); border-bottom: 1px solid var(--sz-line); background: #f8fafc; }
.sz-specialty-pillars header,
.sz-specialty-capabilities > header { max-width: 800px; margin: 0 auto; text-align: center; }
.sz-specialty-pillars h2,
.sz-specialty-capabilities h2 { margin: 0; font-size: 31px; }
.sz-specialty-pillars header p,
.sz-specialty-capabilities header p { margin: 8px 0 0; color: var(--sz-muted); }
.sz-specialty-pillar-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin-top: 34px; }
.sz-specialty-pillar-grid article { padding: 25px; border: 1px solid var(--sz-line); border-radius: 8px; background: #fff; }
.sz-specialty-pillar-grid i { color: var(--sz-blue); font-size: 26px; }
.sz-specialty-pillar-grid h3 { margin: 15px 0 0; font-size: 21px; }
.sz-specialty-pillar-grid p { margin: 9px 0 0; color: var(--sz-muted); line-height: 1.55; }
.sz-specialty-capabilities { padding: 42px 0; }
.sz-specialty-capabilities > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 28px; }
.sz-specialty-capabilities article { padding: 20px 0; border-top: 3px solid var(--sz-blue); }
.sz-specialty-capabilities article span { color: var(--sz-blue-dark); font-size: 12px; font-weight: 800; }
.sz-specialty-capabilities article h3 { margin: 8px 0 0; }
.sz-specialty-process { padding: 42px 0; color: #f8fafc; background: #0f172a; }
.sz-specialty-process h2 { margin: 0; font-size: 31px; text-align: center; }
.sz-specialty-process > div > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 25px; margin-top: 34px; }
.sz-specialty-process article { padding-top: 17px; border-top: 3px solid #60a5fa; }
.sz-specialty-process article span { color: #93c5fd; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.sz-specialty-process article h3 { margin: 7px 0 0; font-size: 20px; }
.sz-specialty-process article p { margin: 8px 0 0; color: #cbd5e1; line-height: 1.55; }
.sz-specialty-process > div > .sz-button { margin-top: 28px; }

.sz-footer { margin-top: 0; color: #fff; background: var(--sz-navy); }
.sz-footer-inner { width: min(1280px, calc(100% - 40px)); margin: 0 auto; padding: 54px 0 26px; }
.sz-footer a { color: #bfdbfe; }
.sz-footer-lead { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.sz-footer-lead > section { padding: 30px; border: 1px solid rgba(255,255,255,.16); border-radius: 8px; background: rgba(255,255,255,.06); box-shadow: 0 18px 44px rgba(2,6,23,.22); }
.sz-footer h2 { margin: 22px 0 8px; font-size: 28px; }
.sz-footer h3 { margin: 0; }
.sz-footer p { color: #cbd5e1; }
.sz-footer ul { display: grid; gap: 9px; margin: 24px 0; padding: 0; list-style: none; }
.sz-footer li { display: flex; gap: 10px; color: #dbeafe; }
.sz-footer li i { margin-top: 5px; color: #60a5fa; }
.sz-footer-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin-top: 20px; }
.sz-footer-form label { display: grid; gap: 5px; color: #e2e8f0; font-size: 14px; font-weight: 800; }
.sz-footer-form input,
.sz-footer-form textarea { width: 100%; border: 1px solid rgba(148,163,184,.5); border-radius: 6px; padding: 11px; color: #fff; background: rgba(255,255,255,.08); font: inherit; }
.sz-footer-form input:focus,
.sz-footer-form textarea:focus { outline: 3px solid #60a5fa; outline-offset: 1px; }
.sz-form-wide { grid-column: 1 / -1; }
.sz-honeypot { position: absolute !important; left: -10000px !important; }
.sz-footer-links { display: grid; grid-template-columns: 1.35fr repeat(3, 1fr); gap: 32px; margin-top: 42px; padding-top: 38px; border-top: 1px solid rgba(255,255,255,.14); }
.sz-footer-links nav { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.sz-footer-links h3 { margin-bottom: 8px; }
.sz-footer-links a { font-weight: 700; text-decoration: none; }
.sz-footer-links a:hover { color: #fff; text-decoration: underline; }
.sz-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 38px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.14); font-size: 14px; }
.sz-powered { color: #cbd5e1 !important; text-decoration: none; }
.sz-powered span,
.sz-powered strong { font-size: 20px; }

.surface-admin.theme-systmzro,
.surface-account.theme-systmzro { background: #f5f7fb; }
.surface-admin .sz-footer-lead,
.surface-admin .sz-footer-links,
.surface-account .sz-footer-lead,
.surface-account .sz-footer-links { display: none; }
.surface-admin .sz-footer-inner,
.surface-account .sz-footer-inner { padding-top: 18px; }
.surface-admin .sz-footer-bottom,
.surface-account .sz-footer-bottom { margin-top: 0; padding-top: 0; border-top: 0; }
.surface-admin .page-heading,
.surface-account .page-heading { border-top-color: var(--sz-blue); }
.surface-admin .admin-section,
.surface-account .admin-section,
.surface-account .account-section { border-top-color: var(--sz-blue); }
.surface-admin .button,
.surface-account .button { background: var(--sz-blue-dark); }
.surface-admin .admin-nav { border-top: 3px solid var(--sz-blue); }

@media (max-width: 1080px) {
  .sz-header-inner { grid-template-columns: 1fr auto; }
  .sz-main-nav,
  .sz-header-actions { display: none; }
  .sz-mobile-menu { display: block; }
  .sz-home-hero { grid-template-columns: 1fr; }
  .sz-home-counts { max-width: 420px; }
  .sz-why .sz-tile { min-height: 0; }
  .sz-why-grid,
  .sz-service-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sz-plugin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sz-specialty-grid,
  .sz-current-plan-grid.is-three,
  .sz-current-plan-grid.is-four,
  .sz-specialty-capabilities > div,
  .sz-specialty-process > div > div,
  .sz-storage-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sz-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .sz-header-inner,
  .sz-home-container,
  .sz-home-section,
  .sz-service-list,
  .sz-feature-list,
  .sz-footer-inner { width: min(100% - 34px, 1280px); }
  .sz-home-hero-wrap { width: 100%; padding-top: 51px; }
  .sz-home-hero-wrap .sz-home-container { width: min(100% - 34px, 1280px); }
  .sz-services-home .sz-home-container,
  .sz-comparison .sz-home-container { width: 100%; }
  .sz-header-inner { min-height: 68px; }
  .sz-logo { font-size: 31px; }
  .sz-home-hero { min-height: 478.71875px; padding: 25.5px; }
  .sz-home-hero h1 { font-size: 31.875px; }
  .sz-home-hero-copy > p { font-size: 18px; }
  .sz-home-hero .sz-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sz-home-hero .sz-actions .sz-button { width: auto; }
  .sz-home-counts { grid-template-columns: 1fr 1fr; }
  .sz-home-counts div { padding: 19px 10px; }
  .sz-home-counts strong { font-size: 34px; }
  .sz-home-section { padding-top: 40px; padding-bottom: 40px; }
  .sz-home-section > h2,
  .sz-services-home > h2,
  .sz-services-home .sz-home-container > h2,
  .sz-work-home h2 { font-size: 30px; }
  .sz-why-grid,
  .sz-service-card-grid,
  .sz-plugin-grid,
  .sz-work-grid,
  .sz-footer-lead,
  .sz-footer-links { grid-template-columns: 1fr; }
  .sz-why .sz-tile { padding-bottom: 27.75px; }
  .sz-service-card-grid .sz-tile { min-height: 0; padding-bottom: 42.875px; }
  .sz-page-heading h1 { font-size: 36px; }
  .sz-service-list article,
  .sz-feature-list article { grid-template-columns: 1fr; gap: 18px; }
  .sz-portfolio-page { width: min(100% - 34px, 1280px); padding-top: 51px; }
  .sz-portfolio-hero { grid-template-columns: 1fr; min-height: 0; padding: 25px; }
  .sz-portfolio-hero h1 { font-size: 32px; }
  .sz-portfolio-hero-copy > p:last-of-type { font-size: 18px; }
  .sz-portfolio-stats a { min-height: 190px; }
  .sz-portfolio-stats,
  .sz-portfolio-index-grid { grid-template-columns: 1fr; }
  .sz-portfolio-grid,
  .sz-portfolio-detail-gallery { grid-template-columns: 1fr; }
  .sz-portfolio-thumb { height: 256px; }
  .sz-footer-form { grid-template-columns: 1fr; }
  .sz-form-wide { grid-column: auto; }
  .sz-footer-bottom { align-items: flex-start; flex-direction: column; }
  .sz-v6-page { width: min(100% - 34px, 1280px); padding: 106.25px 0 93.5px; }
  .sz-v6-service-grid { grid-template-columns: 1fr; }
  .sz-v6-heading-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sz-v6-heading-actions .sz-button { width: auto; }
  .sz-v6-service-tile > p { font-size: 14.875px; line-height: 21.25px; }
  .sz-v6-service-tile .sz-button,
  .sz-v6-specialties .sz-v6-service-tile .sz-button { min-height: 0; padding: 11.05px 17px; }
  .sz-docs-page { width: min(100% - 34px, 1280px); padding-top: 51px; }
  .sz-docs-hero { padding: 25px; }
  .sz-docs-hero h1 { font-size: 36px; }
  .sz-docs-hero p { font-size: 18px; }
  .sz-docs-index-grid,
  .sz-docs-card-grid { grid-template-columns: 1fr; }
  .sz-docs-card-body > p { min-height: 0; }
  .sz-about-page { width: min(100% - 34px, 1280px); padding-top: 51px; }
  .sz-about-hero { padding: 25px; }
  .sz-about-hero h1 { font-size: 36px; }
  .sz-about-hero p { font-size: 18px; }
  .sz-about-overview,
  .sz-about-plugin-grid { grid-template-columns: 1fr; }
  .sz-about-overview figure img { min-height: 0; aspect-ratio: 16 / 9; }
  .sz-about-plugin-chip em { -webkit-line-clamp: 3; }
  .sz-about-cta { padding: 30px 22px; }
  .sz-current-pricing-page { width: min(100% - 34px, 1280px); padding-top: 51px; }
  .sz-current-pricing-hero { padding: 25px; }
  .sz-current-pricing-hero h1 { font-size: 32px; }
  .sz-current-pricing-hero p { font-size: 18px; }
  .sz-current-pricing-sections { padding-right: 0; padding-left: 0; }
  .sz-current-plan-grid.is-three,
  .sz-current-plan-grid.is-four { grid-template-columns: 1fr; }
  .sz-current-plan-description { min-height: 0; }
  .sz-service-detail-page { padding-top: 51px; }
  .sz-service-detail-hero,
  .sz-service-detail-overview,
  .sz-service-pricing-band > div { width: min(100% - 34px, 1280px); }
  .sz-service-detail-hero { padding: 25px; }
  .sz-service-detail-hero h1 { font-size: 36px; }
  .sz-service-detail-hero > p { font-size: 18px; }
  .sz-service-detail-overview { grid-template-columns: 1fr; }
  .sz-family-checkout > div { grid-template-columns: 1fr; gap: 25px; }
  .sz-family-checkout h2 { font-size: 28px; }
  .sz-family-paypal-panel { padding: 17px; }
  .sz-specialty-page { padding-top: 51px; }
  .sz-specialty-hero,
  .sz-specialty-overview,
  .sz-specialty-pillars > div,
  .sz-specialty-capabilities,
  .sz-specialty-process > div { width: min(100% - 34px, 1280px); }
  .sz-specialty-hero { padding: 25px; }
  .sz-specialty-hero h1 { font-size: 36px; }
  .sz-specialty-hero > p { font-size: 18px; }
  .sz-specialty-overview,
  .sz-specialty-pillar-grid,
  .sz-specialty-capabilities > div,
  .sz-specialty-process > div > div { grid-template-columns: 1fr; }
  .sz-features-page { padding-top: 51px; }
  .sz-features-hero,
  .sz-features-capabilities,
  .sz-storage-band > div,
  .sz-features-closing { width: min(100% - 34px, 1280px); }
  .sz-features-hero { grid-template-columns: 1fr; gap: 25px; padding: 25px; }
  .sz-features-hero h1 { font-size: 36px; }
  .sz-features-hero aside { border-top: 3px solid #60a5fa; border-left: 0; }
  .sz-feature-card-grid,
  .sz-storage-grid { grid-template-columns: 1fr; }
  .sz-feature-card { min-height: 0; }
}
