:root {
  --navy: #12315c;
  --navy-2: #0c2446;
  --ink: #1a2b3d;
  --muted: #5d6d7e;
  --red: #2f6bff;
  --red-dark: #1d4ed8;
  --orange-ink: #1d4ed8;
  --gold: #2f6bff;
  --paper: #eef3f9;
  --white: #ffffff;
  --line: #d5e1ee;
  --shadow: 0 24px 60px rgba(18, 49, 92, 0.1);
  --radius: 22px;
  --max: 1160px;
  --font: Arial, Helvetica, sans-serif;
  --display: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font);
  color: var(--ink);
  background: var(--paper);
  line-height: 1.65;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font-family: inherit; }
::selection { background: #2f6bff; color: #fff; }

.skip {
  position: absolute;
  left: -999px;
  top: 0;
}
.skip:focus { left: 12px; top: 12px; background: #fff; padding: 8px 12px; z-index: 20; }

.topbar {
  background: linear-gradient(90deg, #0c2446 0%, #1a4f96 100%);
  color: #fff;
  font-size: 13px;
  letter-spacing: 0.01em;
}
.topbar-inner, .nav-inner, .wrap, .footer-grid {
  width: min(var(--max), calc(100% - 48px));
  margin: 0 auto;
}
.topbar-inner {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  min-height: 38px;
}
.topbar a { color: #f3f3f3; }
.topbar a:hover { color: #fff; }
.top-links, .cluster { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.login-link {
  font-weight: 650;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 999px;
  padding: 4px 12px;
  white-space: nowrap;
}
.login-link:hover { background: #fff; color: #12315c !important; }
.top-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.topbar .nav-cta { background: #fff; color: #0c2340; padding: 6px 14px; font-size: 13px; white-space: nowrap; }
.topbar .nav-cta:hover { color: #0c2340; background: #e7efff; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(255, 255, 255, 0.94);
  border-bottom: 1px solid transparent;
  backdrop-filter: blur(16px);
}
.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 88px;
}
.logo img { height: 68px; width: auto; }
.nav-wrap {
  display: flex;
  align-items: center;
  gap: 22px;
}
.nav {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 5px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  box-shadow: 0 10px 28px rgba(11, 23, 48, 0.06);
  font-weight: 600;
  color: var(--navy);
}
.nav > a, .dropdown > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 14px;
  line-height: 1;
  padding: 10px 24px;
  border-radius: 999px;
  color: var(--navy);
  transition: background 0.15s ease, color 0.15s ease;
}
.nav > a:hover, .dropdown > a:hover { background: var(--paper); color: var(--navy); }
.nav > a.active, .dropdown > a.active,
.nav > a.active:hover, .dropdown > a.active:hover {
  background: #2f6bff;
  color: #fff;
}
.dropdown > a::after {
  content: "";
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  opacity: 0.7;
}
.dropdown { position: relative; }
.dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: 300px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 8px;
}
.dropdown:hover .dropdown-menu, .dropdown:focus-within .dropdown-menu { display: block; }
.dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -16px;
  height: 16px;
}
.dropdown-menu a {
  display: block;
  padding: 10px 12px;
  border-radius: 12px;
  font-weight: 550;
  font-size: 14px;
  color: var(--ink);
}
.dropdown-menu a:hover { background: var(--paper); color: var(--orange-ink); }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #1a4f96;
  color: #fff;
  border: 0;
  border-radius: 999px;
  padding: 13px 22px;
  font-weight: 650;
  cursor: pointer;
  letter-spacing: 0.01em;
}
.btn:hover { background: #12315c; color: #fff; transform: translateY(-1px); }
.btn.navy, .btn.navy:hover { color: #fff; }
.hero .actions .btn {
  min-height: 50px;
  padding: 0 22px;
}
.hero .actions .btn:not(.secondary) {
  background: #2f6bff;
  color: #fff;
  box-shadow: 0 12px 28px rgba(47, 107, 255, 0.35);
}
.hero .actions .btn:not(.secondary):hover { background: #1d4ed8; color: #fff; }
.hero .actions .btn:not(.secondary)::after { content: "→"; font-size: 16px; }
.btn.secondary {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  border: 1.5px solid rgba(255, 255, 255, 0.45);
  backdrop-filter: blur(8px);
}
.btn.secondary:hover { background: #fff; color: var(--navy); }
.btn.ghost {
  background: #fff;
  color: var(--navy);
  border: 1.5px solid var(--line);
}
.btn.ghost:hover { border-color: var(--navy); }
.menu-toggle {
  display: none;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 999px;
  width: 44px;
  height: 44px;
  cursor: pointer;
  color: var(--navy);
  font-weight: 650;
}

.hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  min-height: 640px;
  display: grid;
  align-items: center;
  background: #0c2446;
}
.hero::before {
  content: "";
  position: absolute;
  inset: -32px;
  background:
    linear-gradient(105deg, rgba(8, 24, 48, 0.84) 0%, rgba(18, 58, 112, 0.46) 58%, rgba(47, 107, 255, 0.22) 100%),
    url("../assets/hero.jpg") 72% center/cover no-repeat;
  filter: blur(10px);
  z-index: 0;
}
.hero > * { position: relative; z-index: 1; }
.hero-slider { display: block; position: relative; min-height: 680px; }
.hero-slider::before { display: none; }
.hero-slider .slide {
  display: grid;
  position: absolute;
  inset: 0;
  min-height: 680px;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 0;
  transition: opacity 0.9s ease, visibility 0.9s ease;
}
.hero-slider .slide.is-on {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 1;
}
.slide-bg {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.82) 0%, rgba(12, 36, 70, 0.45) 48%, rgba(12, 36, 70, 0.18) 100%),
    url("../assets/slide-office.jpg") center/cover no-repeat;
  z-index: 0;
  transform: scale(1.08);
  transition: transform 7s ease;
}
.slide.is-on .slide-bg { transform: scale(1); }
.slide-bg.warm {
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.82) 0%, rgba(12, 36, 70, 0.42) 52%, rgba(12, 36, 70, 0.15) 100%),
    url("../assets/slide-discussion.jpg") center/cover no-repeat;
}
.slide-bg.cool {
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.82) 0%, rgba(12, 36, 70, 0.42) 52%, rgba(12, 36, 70, 0.15) 100%),
    url("../assets/slide-meeting.jpg") center/cover no-repeat;
}
.hero-slider .hero-grid {
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.7s ease 0.15s, transform 0.7s ease 0.15s;
}
.hero-slider .slide.is-on .hero-grid {
  opacity: 1;
  transform: none;
}
.slider-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 28px;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 10px;
}
.slider-dots button {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  border: 0;
  background: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  padding: 0;
}
.slider-dots button.is-on { width: 32px; background: #fff; }
.hero-grid, .split, .cards, .steps, .values, .advantage, .testimonials, .two {
  width: min(var(--max), calc(100% - 48px));
  margin: 0 auto;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 48px;
  padding: 88px 0;
  align-items: center;
}
.hero .eyebrow, .page-hero .eyebrow { color: #d6e4ff; }
.eyebrow {
  color: #2f6bff;
  font-family: var(--font);
  font-weight: 650;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-size: 12px;
  margin: 0 0 14px;
}
h1, h2, h3, h4 {
  line-height: 1.08;
  margin: 0 0 14px;
  color: var(--navy);
  font-family: var(--display);
  font-weight: 600;
}
.hero h1 { color: #fff; font-size: clamp(26px, 3vw, 36px); letter-spacing: -0.03em; }
.hero h1 span {
  color: #fff;
  font-style: italic;
  font-weight: 700;
  text-shadow: none;
}
.lede { font-size: 18px; color: #f3f3f3; max-width: 560px; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.panel {
  background: rgba(255, 255, 255, 0.94);
  color: var(--ink);
  border-radius: 28px;
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.22);
}
.hero-slider .panel { opacity: 0; }
.hero-slider .panel.is-in {
  animation: panelFade 2.4s linear 1s forwards;
}
@keyframes panelFade {
  from { opacity: 0; }
  to { opacity: 1; }
}
.panel h3 { margin-bottom: 14px; }
.perk { display: flex; gap: 12px; align-items: flex-start; padding: 14px 0; border-top: 1px solid var(--line); }
.perk strong { display: block; font-family: var(--font); }
.perk span { color: var(--muted); font-size: 14px; }
.badge-row { display: flex; align-items: center; gap: 12px; color: var(--navy); font-weight: 700; margin-bottom: 8px; font-family: var(--font); }
.badge-row img { height: 46px; width: auto; }

.section { padding: 88px 0; background: var(--white); }
.section.alt { background: var(--paper); }
.center { text-align: center; }
.center .sub { max-width: 640px; margin: 0 auto 32px; color: var(--muted); }
h2 { font-size: clamp(24px, 2.6vw, 34px); letter-spacing: -0.03em; }
.sub { color: var(--muted); font-size: 17px; }

.steps, .cards, .values, .advantage, .testimonials {
  display: grid;
  gap: 18px;
}
.steps { grid-template-columns: repeat(3, 1fr); margin-top: 8px; }
.process {
  position: relative;
  width: min(var(--max), calc(100% - 48px));
  margin: 12px auto 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  text-align: center;
}
.process::before {
  content: "";
  position: absolute;
  top: 25px;
  left: 18%;
  right: 18%;
  border-top: 2px dotted #d5d8e0;
}
.process-step h3 { font-size: 18px; margin-bottom: 10px; }
.process-step p { color: var(--muted); margin: 0 auto; max-width: 320px; font-size: 14px; }
.process-mark {
  position: relative;
  z-index: 1;
  width: 52px;
  height: 52px;
  margin: 0 auto 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #fff;
  border: 2px solid #d5d8e0;
  color: #1a1a1a;
  font-weight: 700;
  font-size: 16px;
  font-family: var(--font);
}
.process-step:nth-child(2) .process-mark {
  background: #1a4f96;
  border-color: #1a4f96;
  color: #fff;
}
.process-step.is-done .process-mark {
  background: #2f6bff;
  border-color: #2f6bff;
  color: #fff;
}
.process-step.is-done .process-mark svg { width: 22px; height: 22px; }
.section:has(.process),
.home-services,
.section:has(.advantage),
.section:has(.process) h2,
.section:has(.process) h3,
.section:has(.process) .process-mark,
.home-services h2,
.home-services h3,
.section:has(.advantage) h2,
.section:has(.advantage) h3,
.section:has(.advantage) th {
  font-family: Arial, Helvetica, sans-serif;
}
.section:has(.process) > .wrap h2,
.home-services > .wrap h2,
.section:has(.advantage) > .wrap h2 {
  font-size: clamp(24px, 2.6vw, 34px);
}
.advantage .value h3 { font-size: 18px; }
.advantage .value p { font-size: 14px; }
.cards { grid-template-columns: repeat(4, 1fr); }
.values, .advantage { grid-template-columns: repeat(4, 1fr); }
.card, .step, .value, .quote {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  box-shadow: 0 14px 34px rgba(12, 35, 64, 0.06);
}
.card { border-top: 3px solid #2f6bff; }
.card:hover, .step:hover, .value:hover { border-color: #2f6bff; transform: translateY(-3px); }
.num {
  width: 42px; height: 42px; border-radius: 14px;
  display: grid; place-items: center;
  background: #e7efff; color: #1d4ed8; font-weight: 700; margin-bottom: 16px;
  font-family: var(--font);
}
.card h3, .step h3, .value h3 { font-size: 22px; font-family: var(--display); }
.home-services { background: #fff; }
.home-services .eyebrow { color: #d23b3b; font-family: Arial, Helvetica, sans-serif; }
.home-services > .wrap h2 span { color: #3caf62; }
.home-services .cards {
  width: min(var(--max), calc(100% - 48px));
  margin: 8px auto 0;
  gap: 22px;
}
.home-services .card,
.home-services .card h3,
.home-services .card p,
.home-services .card a { font-family: Arial, Helvetica, sans-serif; }
.home-services .card {
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 18px;
  box-shadow: none;
  padding: 28px 22px 24px;
  text-align: left;
}
.home-services .card.tone-blue { background: #eef3fb; }
.home-services .card.tone-pink { background: #fdeff1; }
.home-services .card.tone-mint { background: #eef8f1; }
.home-services .card:hover { transform: none; border-color: transparent; box-shadow: none; }
.home-services .svc-icon {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin-bottom: 22px;
  background: #fff;
  color: #12315c;
}
.home-services .svc-icon svg { width: 22px; height: 22px; }
.home-services .svc-icon.mark-blue { color: #2f6bff; }
.home-services .svc-icon.mark-red { color: #e11d48; }
.home-services .svc-icon.mark-purple { color: #7c3aed; }
.home-services .svc-icon.mark-green { color: #fff; background: #22a35a; }
.home-services .svc-icon.mark-line-green { color: #1c9a4b; background: #fff; }
.home-services .card h3 {
  font-size: 14px;
  line-height: 1.35;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 10px;
  color: #12315c;
}
.home-services .card p { font-size: 14px; line-height: 1.55; color: #5c6b80; }
.home-services .card a.more {
  background: none;
  border: 0;
  padding: 0;
  margin-top: auto;
  border-radius: 0;
  color: #d23b3b;
  font-size: 14px;
  font-weight: 700;
}
.home-services .card a.more:hover { background: none; border-color: transparent; color: #a61b1b; }
.card p, .step p, .value p, .quote p { color: var(--muted); margin: 0; }
.card a.more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  padding: 9px 14px;
  border-radius: 999px;
  background: var(--paper);
  border: 1px solid var(--line);
  color: var(--navy);
  font-weight: 650;
  font-size: 14px;
  line-height: 1;
}
.card a.more::after { content: "→"; }
.card a.more:hover { background: var(--navy); border-color: var(--navy); color: #fff; }

.svc-page { background: #fff; }
.svc-page .eyebrow, .svc-why .eyebrow { color: #c8102e; }
.svc-page h2 span { color: #d23b3b; }
.svc-page .cards {
  width: min(980px, calc(100% - 48px));
  margin: 8px auto 0;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}
.svc-page .card {
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 18px;
  box-shadow: none;
  padding: 26px 24px 22px;
}
.svc-page .card:hover { transform: none; border-color: transparent; }
.svc-page .card.tone-blue { background: #eef3fb; }
.svc-page .card.tone-pink { background: #fdeff1; }
.svc-page .card.tone-mint { background: #eef8f1; }
.svc-page .card.tone-lilac { background: #f4f0fa; }
.svc-page .svc-head { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.svc-page .svc-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #fff;
}
.svc-page .svc-icon svg { width: 22px; height: 22px; }
.svc-page .ink-blue .svc-icon { color: #2563eb; }
.svc-page .ink-red .svc-icon { color: #e11d48; }
.svc-page .ink-green .svc-icon { color: #16a34a; }
.svc-page .ink-purple .svc-icon { color: #7c3aed; }
.svc-page .card h3 {
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-weight: 700;
  color: #12315c;
}
.svc-page .card p { font-size: 14px; line-height: 1.55; color: #5c6b80; }
.svc-page .card a.more {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: auto;
  padding: 12px 16px;
  border: 0;
  border-radius: 10px;
  background: #fff;
  font-weight: 650;
}
.svc-page .ink-blue a.more { color: #2563eb; }
.svc-page .ink-red a.more { color: #e11d48; }
.svc-page .ink-green a.more { color: #16a34a; }
.svc-page .ink-purple a.more { color: #7c3aed; }
.svc-page .card a.more:hover { background: #fff; filter: brightness(0.98); }
.svc-why .advantage { width: min(1100px, calc(100% - 48px)); margin: 8px auto 0; }
.svc-why .value {
  text-align: center;
  background: #fff;
  border: 1px solid #e6edf5;
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(12, 35, 64, 0.04);
  padding: 28px 18px 22px;
}
.svc-why .value:hover { transform: none; }

.page-hero.blog-hero { padding: 28px 0 24px; }
.page-hero.blog-hero h1 { font-size: clamp(26px, 3vw, 36px); margin-bottom: 4px; }
.page-hero.blog-hero p { font-size: 15px; margin: 0; line-height: 1.45; }
.blog-hero .wrap { position: relative; }
.blog-admin-hero .wrap { padding-right: 64px; }
#blog-admin-gate[hidden],
#blog-admin-tools[hidden],
.blog-add[hidden] { display: none !important; }
.blog-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 340px));
  justify-content: center;
  gap: 20px;
}
.blog-list .card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(18, 49, 92, 0.05);
  border-radius: 22px;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(18, 49, 92, 0.04),
    0 14px 28px rgba(18, 49, 92, 0.08),
    0 32px 64px rgba(18, 49, 92, 0.12);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.blog-list .card:hover {
  border-color: rgba(18, 49, 92, 0.05);
  transform: translateY(-6px);
  box-shadow:
    0 2px 4px rgba(18, 49, 92, 0.05),
    0 20px 36px rgba(18, 49, 92, 0.1),
    0 40px 72px rgba(18, 49, 92, 0.16);
}
.blog-list .card h2 { font-size: 18px; line-height: 1.3; }
.blog-list .blog-excerpt { font-size: 14px; line-height: 1.5; }
.blog-add {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: var(--navy);
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(8, 16, 32, 0.22);
}
.blog-add svg { width: 18px; height: 18px; display: block; }
.blog-add:hover { background: var(--navy); color: #fff; }
.blog-gear {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--navy);
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}
.blog-gear:hover { background: var(--navy); color: #fff; }
.blog-card-image, .blog-article-image {
  display: block;
  width: 100%;
  object-fit: cover;
}
.blog-card-image {
  height: 128px;
  margin: -24px -24px 14px;
  width: calc(100% + 48px);
  max-width: none;
}
.blog-article-image {
  max-height: 420px;
  border-radius: 12px;
  margin-bottom: 18px;
}
.blog-modal {
  position: fixed;
  inset: 0;
  z-index: 70;
  background: rgba(11, 23, 48, 0.55);
  display: grid;
  place-items: center;
  padding: 20px;
}
.blog-modal[hidden] { display: none !important; }
.blog-dialog {
  width: min(520px, 100%);
  background: #fff;
  border-radius: 22px;
  padding: 24px;
  max-height: min(90vh, 760px);
  overflow: auto;
  box-shadow: var(--shadow);
}
.blog-dialog h2 { font-size: 28px; }
.blog-dialog p { color: var(--muted); margin: 0 0 14px; }
.blog-dialog .form { border: 0; box-shadow: none; padding: 0; }
.blog-dialog form[hidden] { display: none !important; }
.blog-error { color: var(--orange-ink); font-weight: 650; min-height: 1.2em; }
.blog-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.blog-actions .btn { border: 0; }
.blog-preview { width: 100%; max-height: 180px; object-fit: cover; border-radius: 14px; }

.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 20px; background: #fff; }
table { width: 100%; border-collapse: collapse; min-width: 760px; font-size: 14.5px; }
th, td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
th { background: var(--navy); color: #fff; font-weight: 600; font-family: var(--font); }
td:nth-child(2), th:nth-child(2) { background: #e7efff; color: var(--navy); font-weight: 650; }
th:nth-child(2) { background: #2f6bff; color: #fff; }
tr:last-child td { border-bottom: 0; }

.testimonials { grid-template-columns: repeat(3, 1fr); }
.quote { border-top: 3px solid #2f6bff; }
.quote p { font-size: 16px; font-family: var(--display); font-weight: 500; color: var(--navy); line-height: 1.45; }
.who { display: flex; gap: 12px; align-items: center; margin-top: 18px; }
.avatar {
  width: 42px; height: 42px; border-radius: 50%;
  display: grid; place-items: center;
  background: #2f6bff; color: #fff; font-weight: 700; font-size: 13px;
}
.who strong { display: block; color: var(--navy); font-family: var(--font); }
.who span { color: var(--muted); font-size: 13px; }

.advantage-section { background: #f7f9fc; }
.advantage-section .eyebrow { color: #c8102e; }
.advantage-section .advantage { width: min(1100px, calc(100% - 48px)); margin: 8px auto 36px; }
.advantage-section .value {
  text-align: center;
  background: #fff;
  border: 1px solid #e6edf5;
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(12, 35, 64, 0.04);
  padding: 28px 18px 22px;
}
.advantage-section .value:hover { transform: none; }
.adv-icon { display: grid; place-items: center; margin-bottom: 12px; }
.adv-icon svg { width: 36px; height: 36px; }
.adv-icon.green { color: #22a35a; }
.adv-icon.red { color: #e11d48; }
.adv-icon.blue { color: #3b82f6; }
.adv-icon.purple { color: #8b5cf6; }
.advantage-section .value h3 { margin-bottom: 8px; }
.compare-wrap { margin-top: 8px; }
.advantage-section .table-wrap { border-radius: 14px; border-color: #e6edf5; }
.advantage-section table { min-width: 980px; font-size: 14px; }
.advantage-section th, .advantage-section td { text-align: center; vertical-align: middle; }
.advantage-section th:first-child, .advantage-section td:first-child { text-align: left; }
.advantage-section th {
  background: #0b2046;
  color: #fff;
  font-weight: 650;
  border-right: 1px solid rgba(255,255,255,0.12);
}
.advantage-section th:nth-child(2) { background: #06122b; color: #fff; font-size: 16px; }
.advantage-section td:nth-child(2) { background: #f4f8ff; color: #334155; font-weight: 650; }
.advantage-section td.good { color: #16a34a; font-weight: 700; }
.advantage-section td.bad { color: #c8102e; font-weight: 650; }
.advantage-section td.ink { color: #0b2046; font-weight: 700; font-size: 13px; }
.advantage-section td.muted, .advantage-section td:not(.good):not(.bad):not(.ink):not(:nth-child(2)):not(:first-child) { color: #64748b; }
.advantage-section tr.total td,
.advantage-section tr.total td:nth-child(2),
.advantage-section tr.total td:not(.good):not(.bad):not(.ink):not(:nth-child(2)):not(:first-child) {
  background: #16a34a;
  color: #fff;
  font-weight: 700;
  border-bottom: 0;
}
.review-section { background: #fff; overflow: hidden; }
.review-marquee { display: flex; overflow: hidden; width: 100%; margin-top: 8px; }
.review-track {
  display: flex;
  gap: 18px;
  padding: 8px 0 18px 18px;
  width: max-content;
  animation: reviewMarquee 50s linear infinite;
}
.review-marquee:hover .review-track { animation-play-state: paused; }
@keyframes reviewMarquee {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}
.review-card {
  width: 340px;
  flex: 0 0 auto;
  background: #f8fafc;
  border: 1px solid #eef2f6;
  border-radius: 16px;
  padding: 26px 24px 22px;
  box-shadow: 0 8px 20px rgba(12, 35, 64, 0.04);
}
.review-card .stars { color: #c8102e; letter-spacing: 2px; font-size: 14px; margin-bottom: 12px; }
.review-card p { color: #526277; font-size: 14px; line-height: 1.55; margin: 0 0 18px; }
.review-card .avatar.tone-navy { background: #0b2046; }
.review-card .avatar.tone-red { background: #c8102e; }
.review-card .avatar.tone-green { background: #16a34a; }
.review-card .avatar.tone-blue { background: #2563eb; }
.review-card .avatar.tone-purple { background: #7c3aed; }
.review-card .avatar.tone-teal { background: #0f766e; }
.review-card .avatar.tone-rose { background: #e11d48; }
.review-card .avatar.tone-indigo { background: #4f46e5; }
.review-card .avatar.tone-gold { background: #ca8a04; }
.page-hero {
  position: relative;
  overflow: hidden;
  background: #0c2446;
  color: #fff;
  padding: 84px 0 72px;
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: -32px;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.82), rgba(26, 79, 150, 0.48)),
    url("../assets/hero.jpg") 70% center/cover no-repeat;
  filter: blur(3.5px);
  z-index: 0;
}
.page-hero > * { position: relative; z-index: 1; }
.page-hero.refund-hero { min-height: 420px; }
.page-hero.refund-hero::before {
  inset: 0;
  filter: none;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.68), rgba(26, 79, 150, 0.22)),
    url("../assets/refund-hero.jpg") center 36%/cover no-repeat;
}
.page-hero.contact-hero { min-height: 380px; }
.page-hero.contact-hero::before {
  inset: 0;
  filter: none;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.62), rgba(26, 79, 150, 0.28)),
    url("../assets/contact-hero.jpg") center 23%/cover no-repeat;
}
.page-hero.services-hero {
  min-height: 0;
  aspect-ratio: 1024 / 297;
}
.page-hero.services-hero::before {
  inset: 0;
  filter: none;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.58), rgba(26, 79, 150, 0.18)),
    url("../assets/services-hero.jpg") center 38.4%/cover no-repeat;
}
.page-hero.about-hero {
  min-height: 0;
  aspect-ratio: 1024 / 400;
}
.page-hero.about-hero::before {
  inset: 0;
  filter: none;
  background:
    linear-gradient(105deg, rgba(12, 36, 70, 0.55), rgba(26, 79, 150, 0.16)),
    url("../assets/about-hero.jpg") center 44.3%/cover no-repeat;
}
.page-hero h1 { color: #fff; font-size: clamp(26px, 3vw, 36px); }
.page-hero.about-hero h1 { font-size: clamp(26px, 3vw, 36px); }
.about-block h2 { font-size: clamp(24px, 2.6vw, 34px); }
.about-block .value h3 { font-size: 18px; }
.about-block .value p { font-size: 14px; }
.about-block .grid-2 .card {
  border: 1px solid rgba(18, 49, 92, 0.05);
  border-radius: 22px;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(18, 49, 92, 0.04),
    0 14px 28px rgba(18, 49, 92, 0.08),
    0 32px 64px rgba(18, 49, 92, 0.12);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.about-block .grid-2 .card:hover {
  border-color: rgba(18, 49, 92, 0.05);
  transform: translateY(-6px);
  box-shadow:
    0 2px 4px rgba(18, 49, 92, 0.05),
    0 20px 36px rgba(18, 49, 92, 0.1),
    0 40px 72px rgba(18, 49, 92, 0.16);
}
.page-hero p { color: #f3f3f3; max-width: 680px; font-size: 18px; }

.split {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 32px;
  align-items: start;
}
.callout {
  background: #e8f1ff;
  color: var(--ink);
  border-radius: 28px;
  padding: 32px;
  border: 1px solid #c5d7f5;
}
.callout h3, .callout p { color: var(--ink); }
.callout p { color: var(--muted); }
.refund-hero + .section .split { align-items: center; }
.refund-hero + .section .callout {
  margin-top: 0;
  background: #fff;
  border: 1px solid rgba(18, 49, 92, 0.04);
  border-radius: 22px;
  padding: 28px 26px 22px;
  box-shadow:
    0 1px 2px rgba(18, 49, 92, 0.04),
    0 14px 28px rgba(18, 49, 92, 0.08),
    0 32px 64px rgba(18, 49, 92, 0.16);
  transform: translateY(-6px);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.refund-hero + .section .callout:hover {
  transform: translateY(-10px);
  box-shadow:
    0 2px 4px rgba(18, 49, 92, 0.05),
    0 20px 36px rgba(18, 49, 92, 0.1),
    0 40px 72px rgba(18, 49, 92, 0.18);
}
.refund-hero + .section .callout h3 {
  font-size: 20px;
  margin-bottom: 8px;
}
.refund-hero + .section .callout .btn {
  width: 100%;
  margin-top: 4px;
  background: #12315c;
  box-shadow: 0 8px 18px rgba(18, 49, 92, 0.16);
}
.refund-hero + .section .callout .note { margin-top: 4px; line-height: 1.5; }
.note { font-size: 13px; color: var(--muted); }

.list { display: grid; gap: 14px; margin-top: 18px; }
.list article {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: start;
}
.prose { max-width: 760px; }
.prose h2, .prose h3 { margin-top: 28px; }
.prose ul { padding-left: 18px; color: var(--muted); }
.prose p { color: var(--muted); }

.auth-page {
  position: relative;
  display: grid;
  place-items: center;
  padding: 48px 16px 64px;
  overflow: hidden;
}
.page-login { background: #061428; }
.page-login .site-header {
  position: relative;
  background: transparent;
  backdrop-filter: none;
  border-bottom-color: transparent;
}
.page-login .auth-page { overflow: visible; }
.page-login .auth-motion {
  top: -96px;
  height: calc(100% + 96px);
}
.auth-motion {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.auth-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.auth-stage {
  position: relative;
  z-index: 1;
  width: min(1140px, 100%);
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 440px);
  gap: 88px;
  align-items: stretch;
  padding: 18px 0;
}
.auth-scene,
.auth-card {
  position: relative;
  z-index: 1;
  border: 1px solid rgba(186, 214, 255, 0.72);
  background: linear-gradient(155deg, #f8fbff 0%, #e7f1ff 46%, #d3e6ff 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 18px 40px rgba(8, 28, 72, 0.28),
    0 2px 8px rgba(8, 28, 72, 0.12);
  backdrop-filter: blur(18px);
}
.auth-scene {
  display: flex;
  flex-direction: column;
  padding: 36px 32px 18px;
  border-radius: 48px 36px 44px 32px;
  color: var(--navy);
  background: linear-gradient(160deg, #f4f8ff 0%, #e3eeff 42%, #c9e2ff 100%);
}
.auth-card {
  border-radius: 36px 48px 32px 44px;
  background: linear-gradient(200deg, #ffffff 0%, #eef5ff 55%, #d7e8ff 100%);
}
.auth-scene h2 {
  margin: 8px 0 8px;
  max-width: 12ch;
  color: var(--navy);
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: -0.03em;
}
.auth-kicker {
  margin: 0;
  color: #2f6bff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.auth-scene .scene-copy {
  margin: 0;
  max-width: 34ch;
  color: var(--muted);
  font-size: 15px;
}
.file-scene {
  position: relative;
  flex: 1 1 auto;
  min-height: 250px;
  margin-top: 8px;
  overflow: hidden;
  pointer-events: none;
}
.sheet {
  position: absolute;
  left: 50%;
  bottom: 34px;
  width: 112px;
  height: 142px;
  margin-left: -56px;
  border-radius: 12px;
  background:
    linear-gradient(#d5e1ee, #d5e1ee) 18px 28px / 86px 6px no-repeat,
    linear-gradient(#e4edf6, #e4edf6) 18px 46px / 108px 6px no-repeat,
    linear-gradient(#e4edf6, #e4edf6) 18px 64px / 76px 6px no-repeat,
    linear-gradient(#e4edf6, #e4edf6) 18px 82px / 98px 6px no-repeat,
    #fff;
  box-shadow: 0 16px 30px rgba(8, 20, 40, 0.16);
  opacity: 0;
  z-index: 1;
  animation: sheet-file 4.8s cubic-bezier(0.22, 0.8, 0.28, 1) infinite;
}
.sheet-a { margin-left: -104px; animation-name: sheet-file-a; }
.sheet-b { margin-left: -56px; animation-name: sheet-file-b; animation-delay: 0.22s; }
.sheet-c { margin-left: -8px; animation-name: sheet-file-c; animation-delay: 0.44s; }
.folder-back,
.folder-front {
  position: absolute;
  left: 50%;
  animation: folder-ready 4.8s ease-in-out infinite;
}
.folder-back {
  bottom: 16px;
  width: 250px;
  height: 104px;
  margin-left: -125px;
  border-radius: 8px 22px 18px 18px;
  background: #1a56db;
  z-index: 0;
}
.folder-back::before {
  content: "";
  position: absolute;
  left: 28px;
  top: -24px;
  width: 132px;
  height: 28px;
  border-radius: 14px 14px 0 0;
  background: #1749be;
}
.folder-front {
  bottom: 8px;
  width: 272px;
  height: 70px;
  margin-left: -136px;
  border-radius: 8px 18px 18px 18px;
  background: linear-gradient(180deg, #6ea0ff 0%, #2f6bff 42%, #1d4ed8 100%);
  box-shadow: 0 18px 34px rgba(12, 36, 70, 0.2);
  z-index: 2;
}
.seal {
  position: absolute;
  right: 16px;
  top: -22px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 16px rgba(8, 20, 40, 0.16);
  z-index: 3;
  animation: seal-pop 4.8s ease-in-out infinite;
}
.seal::after {
  content: "";
  position: absolute;
  left: 14px;
  top: 12px;
  width: 16px;
  height: 9px;
  border-left: 3px solid #16865b;
  border-bottom: 3px solid #16865b;
  transform: rotate(-45deg);
}
@keyframes sheet-file-a {
  0% { transform: translateY(-150px) rotate(-14deg); opacity: 0; }
  16% { opacity: 1; }
  46% { transform: translateY(0) rotate(-7deg); opacity: 1; }
  74% { transform: translateY(0) rotate(-7deg); opacity: 1; }
  100% { transform: translateY(28px) rotate(-4deg); opacity: 0; }
}
@keyframes sheet-file-b {
  0% { transform: translateY(-168px) rotate(6deg); opacity: 0; }
  16% { opacity: 1; }
  46% { transform: translateY(0) rotate(-1deg); opacity: 1; }
  74% { transform: translateY(0) rotate(-1deg); opacity: 1; }
  100% { transform: translateY(28px) rotate(2deg); opacity: 0; }
}
@keyframes sheet-file-c {
  0% { transform: translateY(-140px) rotate(14deg); opacity: 0; }
  16% { opacity: 1; }
  46% { transform: translateY(0) rotate(6deg); opacity: 1; }
  74% { transform: translateY(0) rotate(6deg); opacity: 1; }
  100% { transform: translateY(28px) rotate(3deg); opacity: 0; }
}
@keyframes folder-ready {
  0%, 34% { transform: translateY(8px); }
  46%, 100% { transform: translateY(0); }
}
@keyframes seal-pop {
  0%, 36% { transform: scale(0.2); opacity: 0; }
  48% { transform: scale(1.12); opacity: 1; }
  56%, 78% { transform: scale(1); opacity: 1; }
  100% { transform: scale(0.7); opacity: 0; }
}
@media (max-width: 860px) {
  .auth-stage { grid-template-columns: 1fr; gap: 28px; }
  .auth-scene { padding: 24px 22px 12px; }
  .auth-scene h2 { font-size: 28px; }
  .file-scene { min-height: 220px; }
  .folder-back { width: 230px; margin-left: -115px; }
  .folder-front { width: 250px; margin-left: -125px; }
  .sheet { width: 100px; height: 128px; }
  .sheet-a { margin-left: -92px; }
  .sheet-b { margin-left: -50px; }
  .sheet-c { margin-left: -8px; }
}
.auth-card {
  width: min(440px, 100%);
  margin: 0;
  padding: 28px;
  overflow: hidden;
}
.auth-card h1 { font-size: 1.35rem; margin-bottom: 8px; }
.auth-card .lead { color: var(--muted); margin: 0 0 18px; font-size: 15px; }
.auth-card .tabs-line {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: -28px -28px 22px;
  border-bottom: 1px solid var(--line);
}
.auth-card .tabs-line button {
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--muted);
  padding: 16px 8px;
  font-weight: 700;
  cursor: pointer;
}
.auth-card .tabs-line button.active {
  background: rgba(255, 255, 255, 0.72);
  color: var(--navy);
  border-bottom-color: #2f6bff;
}
.auth-card form[hidden],
.auth-card .form-note[hidden] { display: none !important; }
.auth-card .form-note { color: var(--orange-ink); font-weight: 650; font-size: 14px; margin: 0; }
.auth-card .form-note.ok { color: #047857; }
.auth-card .linkish {
  justify-self: start;
  border: 0;
  background: none;
  padding: 0;
  color: var(--orange-ink);
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
}
.auth-card .btn { width: 100%; }
.auth-card .btn.navy { background: var(--navy); }
.auth-card .btn.navy:hover { background: var(--navy-2); }
.auth-card a { color: var(--orange-ink); font-weight: 700; }
.password-field { position: relative; display: block; }
.password-field input { padding-right: 68px; }
.view-password {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: var(--navy);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  padding: 4px 6px;
}
.auth-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 18px;
}
.auth-tab {
  border: 0;
  background: var(--paper);
  color: var(--navy);
  border-radius: 999px;
  padding: 12px;
  font-weight: 650;
  cursor: pointer;
}
.auth-tab.active { background: var(--navy); color: #fff; }
.auth-card .form { border: 0; box-shadow: none; padding: 0; background: transparent; }
.auth-panel[hidden] { display: none !important; }
.checkline {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 550;
}
.checkline input { width: auto; }
.form {
  display: grid;
  gap: 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 28px;
  padding: 28px;
  box-shadow: var(--shadow);
}
label { font-weight: 600; font-size: 14px; display: grid; gap: 6px; }
input, select, textarea {
  width: 100%;
  border: 1px solid #e6e6e6;
  border-radius: 14px;
  padding: 13px 14px;
  font-size: 15px;
  background: #fafafa;
  color: var(--ink);
}
input:focus, select:focus, textarea:focus {
  outline: 2px solid rgba(47, 107, 255, 0.45);
  border-color: var(--navy);
  background: #fff;
}
textarea { min-height: 120px; resize: vertical; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-grid { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 28px; align-items: start; }
.contact-grid .cards { gap: 22px; }
.contact-grid .info-card {
  border: 1px solid rgba(18, 49, 92, 0.05);
  border-radius: 22px;
  padding: 26px 28px;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(18, 49, 92, 0.04),
    0 14px 28px rgba(18, 49, 92, 0.08),
    0 32px 64px rgba(18, 49, 92, 0.12);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.contact-grid .info-card:hover {
  border-color: rgba(18, 49, 92, 0.05);
  transform: translateY(-6px);
  box-shadow:
    0 2px 4px rgba(18, 49, 92, 0.05),
    0 20px 36px rgba(18, 49, 92, 0.1),
    0 40px 72px rgba(18, 49, 92, 0.16);
}
.info-card h3 { margin-bottom: 4px; }
.info-card a { color: #e06a1a; font-weight: 650; }
.info-card a:hover { color: #c4530a; }

.cta {
  background: linear-gradient(120deg, #0c2340 0%, #1a4f96 100%);
  color: #fff;
  border-radius: 28px;
  padding: 40px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}
.cta h2, .cta p { color: #f3f3f3; }
.cta p { margin: 0; }
.cta .btn { background: #fff; color: #0c2340; }
.cta .btn:hover { background: #e7efff; color: #0c2340; }

.site-footer { background: linear-gradient(180deg, #0c2446 0%, #12315c 100%); color: #e8e8e8; padding: 64px 0 24px; }
.footer-grid { display: grid; grid-template-columns: 1.3fr 0.8fr 1.2fr 0.9fr; gap: 28px; }
.site-footer h4 { color: #fff; margin-bottom: 14px; font-family: var(--font); font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; }
.site-footer a { color: #d6e4ff; }
.site-footer a:hover { color: #fff; }
.site-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.legal {
  width: min(var(--max), calc(100% - 48px));
  margin: 32px auto 0;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 13px;
  flex-wrap: wrap;
}
.socials { display: flex; gap: 10px; margin-top: 16px; }
.socials a {
  width: 36px; height: 36px; border-radius: 50%;
  display: grid; place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.22);
  font-size: 13px; font-weight: 700;
}
.to-top {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 40;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: #2f6bff;
  color: #fff;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(11, 23, 48, 0.28);
}
.to-top:hover { background: #1d4ed8; color: #fff; }

.check { color: #157347; font-weight: 700; }
.warn { color: var(--muted); }

@media (max-width: 980px) {
  .hero-grid, .split, .contact-grid, .footer-grid, .cards, .values, .advantage, .testimonials, .steps {
    grid-template-columns: 1fr 1fr;
  }
  .footer-grid, .contact-grid, .hero-grid, .split { grid-template-columns: 1fr; }
  .menu-toggle { display: grid; place-items: center; }
  .nav-wrap {
    display: none;
    position: absolute;
    left: 0; right: 0; top: 100%;
    background: #fff;
    border-bottom: 1px solid var(--line);
    padding: 12px 20px 20px;
  }
  .nav-wrap.open { display: flex; flex-direction: column; align-items: flex-start; }
  .nav {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    border-radius: 22px;
    padding: 8px;
    box-shadow: none;
  }
  .nav > a, .dropdown > a { width: 100%; justify-content: flex-start; }
  .dropdown-menu { position: static; transform: none; width: 100%; display: block; box-shadow: none; border: 0; padding: 0 0 0 12px; background: transparent; }
  .dropdown-menu::before { display: none; }
  .hero { min-height: 0; }
  .hero.hero-slider { min-height: 620px; }
  .hero-slider .slide { min-height: 620px; }
}
@media (max-width: 700px) {
  .cards, .values, .advantage, .testimonials, .steps, .process, .grid-2, .svc-page .cards { grid-template-columns: 1fr; }
  .process::before { display: none; }
  .topbar-inner { justify-content: center; text-align: center; padding: 8px 0; }
  .cta { flex-direction: column; align-items: flex-start; }
  .hero-grid { padding: 56px 0; }
  .hero h1 { font-size: 28px; }
  .section { padding: 64px 0; }
}
