:root {
  --cream: #fff8ee;
  --ink: #18212d;
  --ink-2: #242424;
  --muted: rgba(24, 33, 45, 0.55);
  --line: rgba(24, 24, 24, 0.07);
  --beige: #f3f0e9;
  --paper: #f5f7fc;
  --orange: #f07a22;
  --red: #d92d21;
  --hot: #fc4334;
  --grad: linear-gradient(90deg, #f07a22 0%, #d92d21 100%);
  --grad-deep: linear-gradient(180deg, #f07a22 0%, #4a0201 100%);
  --shadow: 0 20px 50px rgba(40, 24, 10, 0.08);
  --radius: 40px;
  --nav-h: 90px;
  --shell: 1314px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  overflow-x: clip;
}

body.nav-lock { overflow: hidden; }
html.nav-lock,
html.nav-lock body {
  overflow: hidden;
  height: 100%;
}
@media (max-width: 767px) {
  html:has(body.page-home),
  body.page-home {
    overflow-x: hidden;
    max-width: 100%;
  }
  .why-visual { display: none; }
  .why-card { grid-template-columns: 1fr; }
}

img { max-width: 100%; display: block; }

a { text-decoration: none; color: inherit; }

button, input, textarea { font-family: inherit; }

.shell {
  width: min(var(--shell), calc(100% - 48px));
  margin-inline: auto;
}

.shell-wide {
  width: min(1480px, calc(100% - 48px));
  margin-inline: auto;
}

.pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border-radius: 999px;
  background: #fbfaf9;
  border: 1px solid var(--line);
  color: var(--ink);
  font-size: 12px;
  font-weight: 500;
  line-height: 12px;
  letter-spacing: 0.01em;
}

.section-head {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-bottom: 60px;
}

.section-head h2 {
  margin: 0;
  max-width: 980px;
  font-weight: 400;
  font-size: clamp(32px, 3.6vw, 64px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--ink);
}

.section-head p {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  font-size: clamp(16px, 1.2vw, 20px);
  line-height: 1.6;
}

.btn-grad,
.btn-talk {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 0;
  cursor: pointer;
  color: #fff;
  background: var(--grad);
  border-radius: 999px;
  height: 56px;
  padding: 0 8px 0 22px;
  font-weight: 500;
  font-size: 16px;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.btn-grad:hover,
.btn-talk:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(217, 45, 33, 0.28);
  color: #fff;
}

.btn-ico {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #fff;
  color: var(--red);
  font-size: 12px;
  flex: none;
}

.btn-talk {
  height: 46px;
  background: #fff;
  color: #1a1a1a;
  padding-right: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.btn-talk .btn-ico {
  background: var(--hot);
  color: #fff;
}

.link-more {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  font-weight: 500;
  font-size: 16px;
  color: inherit;
}

.link-more .btn-ico {
  background: #fa5902;
  color: #fff;
  transition: transform 0.35s ease;
}

.link-more:hover .btn-ico { transform: translateX(4px); }

/* Nav */
.site-nav {
  position: fixed;
  inset: 18px 18px auto 18px;
  z-index: 1000;
  height: 72px;
  display: flex;
  align-items: center;
  border-radius: 20px;
  transition: background 0.35s ease, box-shadow 0.35s ease, backdrop-filter 0.35s ease;
}

.site-nav.is-stuck {
  background: #ffffffa8;
  backdrop-filter: blur(16px);
  box-shadow: 0 10px 40px rgba(40, 24, 10, 0.08);
}

.site-nav.is-stuck .nav-links a:hover,
.site-nav.is-stuck .nav-links button.nav-linkish:hover,
.site-nav.is-stuck .nav-links .active {
  background: #fff8ee;
}

.nav-inner {
  width: min(1680px, calc(100% - 28px));
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 18px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 180px;
}

.brand img { width: 52px; height: 28px; }

.brand span {
  font-family: "Outfit", "DM Sans", sans-serif;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.04em;
  color: #1d1d1d;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 0 auto;
  list-style: none;
  padding: 0;
}

.nav-links a,
.nav-links button.nav-linkish {
  background: none;
  border: 0;
  color: #1d1d1d;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  padding: 8px 16px;
  border-radius: 999px;
}

.nav-links a:hover,
.nav-links button.nav-linkish:hover,
.nav-links .active {
  background: rgba(255, 255, 255, 0.55);
}

.dropdown-menu {
  border: 0;
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 8px;
  background: #fff;
}

.dropdown-item {
  border-radius: 10px;
  font-weight: 500;
  padding: 10px 14px;
}

.nav-drop { position: relative; }
.nav-drop > a i {
  font-size: 10px;
  margin-left: 4px;
}
.nav-drop::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 12px;
}
.nav-sub {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 240px;
  margin: 0;
  padding: 8px;
  list-style: none;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(40, 24, 10, 0.1);
  z-index: 30;
}
.nav-drop:hover .nav-sub,
.nav-drop:focus-within .nav-sub { display: block; }
.nav-sub a {
  display: block;
  padding: 9px 14px;
  border-radius: 10px;
  font-size: 14px;
  letter-spacing: 0.04em;
}

.nav-close-row { display: none; }
.nav-toggle {
  margin-left: auto;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 0;
  background: #fff;
  display: none;
  place-items: center;
}

/* Static banner. Content sits on the frame the way the design does. */
.hero {
  position: relative;
  height: 100vh;
  height: 100dvh;
  padding: 12px 12px 0;
}

.hero-sticky {
  position: relative;
  height: 100%;
  padding-bottom: 12px;
}

.hero-frame {
  position: relative;
  height: calc(100% - 12px);
  min-height: 0;
  border-radius: 40px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}

.hero-slider {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: #ffb067;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.hero-shape {
  position: absolute;
  right: 2%;
  bottom: 0;
  width: min(84%, 1180px);
  height: auto;
  object-fit: contain;
  object-position: center center;
  z-index: 1;
  pointer-events: none;
}

.hero-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255, 246, 236, 0.42) 0%, rgba(255, 246, 236, 0) 46%);
  pointer-events: none;
}

.hero-content {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.hero h1 {
  position: absolute;
  left: 3.86%;
  top: 25.7%;
  width: min(923px, 54%);
  margin: 0;
  font-family: Inter, "DM Sans", sans-serif;
  font-weight: 500;
  font-size: clamp(42px, 4.6vw, 80px);
  line-height: 1;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: #282828;
}

.hero-lead {
  position: absolute;
  left: 3.86%;
  top: 79%;
  width: min(616px, 36%);
  margin: 0;
  font-size: clamp(18px, 1.7vw, 30px);
  line-height: 1.3;
  text-transform: uppercase;
  color: #282828;
}

.hero-side {
  position: absolute;
  right: 3.86%;
  top: 53.2%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.stat-card,
.discover-card {
  width: 205px;
  height: 204px;
  border-radius: 15px;
  padding: 28px 22px;
}

.stat-card {
  background: rgba(241, 235, 232, 0.16);
  border: 1px solid rgba(225, 225, 225, 0.44);
  backdrop-filter: blur(11px);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.stat-card strong {
  font-size: 50px;
  font-weight: 400;
  line-height: 1;
  color: #fcfeff;
}

.stat-card span { font-size: 16px; font-weight: 500; margin-top: 8px; }

.discover-card {
  background: #262626;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 42px 16px 36px;
  gap: 14px;
}

.discover-ring {
  width: 84px;
  height: 84px;
  display: block;
  flex: none;
}

.discover-ring img {
  width: 84px;
  height: 84px;
  display: block;
}

.discover-card b {
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 26px;
}

/* Mosaic */
.block { padding: 110px 0; }

.know {
  padding: 72px 0 140px;
}

.know-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 56px;
  align-items: center;
}

.know-collage,
.know-copy {
  --know-x: 0px;
  --know-y: 0px;
  --know-s: 1;
  --know-o: 1;
  opacity: var(--know-o);
  transform: translate3d(var(--know-x), var(--know-y), 0) scale(var(--know-s));
}

.know-collage {
  position: relative;
  height: 520px;
}

.know-blob {
  position: absolute;
  right: 6%;
  bottom: 8%;
  width: 46%;
  height: 58%;
  border-radius: 46% 54% 48% 52%;
  background: radial-gradient(circle at 40% 40%, #ffb067 0%, #f07a22 42%, #d92d21 100%);
  filter: blur(2px);
}

.know-shot {
  position: absolute;
  object-fit: cover;
  border-radius: 28px;
  box-shadow: 0 18px 40px rgba(40, 24, 10, 0.14);
}

.know-shot-a {
  width: 62%;
  height: 64%;
  left: 0;
  top: 0;
}

.know-mark {
  position: absolute;
  top: 18px;
  right: 8%;
  width: 138px;
  height: 156px;
  border-radius: 28px;
  background: #1c2430;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
  box-shadow: 0 16px 36px rgba(20, 16, 12, 0.22);
  z-index: 2;
}

.know-mark img { width: 42px; height: auto; }

.know-mark span {
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.know-shot-b {
  width: 48%;
  height: 54%;
  right: 0;
  bottom: 28px;
  z-index: 1;
}

.know-flags {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(40, 24, 10, 0.12);
}

.know-flags svg {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.know-copy h2 {
  margin: 16px 0 14px;
  max-width: 640px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(32px, 3.6vw, 64px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--ink);
}

.know-copy > p {
  margin: 0 0 26px;
  max-width: 620px;
  color: var(--muted);
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(16px, 1.2vw, 20px);
  line-height: 1.6;
}

.know-pill { gap: 8px; }

.know-pill i {
  font-size: 8px;
  color: var(--orange);
}

.know-points {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(24, 24, 24, 0.08);
}

.know-points div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.know-ico {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: none;
  color: #fff;
  background: var(--grad);
  font-size: 18px;
}

.know-points b {
  display: block;
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: var(--ink);
}

.know-points small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
}

.know-checks {
  list-style: none;
  margin: 18px 0 26px;
  padding: 0;
  display: grid;
  gap: 10px;
}

.know-checks li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(16px, 1.2vw, 18px);
  line-height: 1.5;
  color: var(--ink);
}

.know-checks i { color: #2f9e44; font-size: 13px; }

.mosaic {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 253px 272px;
  gap: 12px;
}

.tile {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  min-height: 0;
}

.tile img.fill {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tile-empower { grid-column: 1; grid-row: 1 / span 2; }
.tile-ideas { grid-column: 2; grid-row: 1; }
.tile-explore { grid-column: 2; grid-row: 2; }
.tile-innovative { grid-column: 3; grid-row: 1 / span 2; }

.tile .shade-dark,
.tile .shade-soft {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.tile-copy {
  position: relative;
  z-index: 2;
  color: #fff;
  padding: 36px 32px;
  max-width: 340px;
}

.tile-empower .tile-copy h3,
.tile-innovative .tile-copy h3 {
  margin: 0 0 12px;
  font-weight: 400;
  font-size: clamp(32px, 2.6vw, 53px);
  line-height: 1.02;
}

.tile-innovative .tile-copy { position: absolute; left: 0; right: 0; bottom: 0; }
.tile-innovative .tile-copy h3 { font-size: 38px; line-height: 1.05; }

.tile-copy p {
  margin: 0;
  font-weight: 300;
  font-size: 18px;
  line-height: 1.35;
  letter-spacing: -0.04em;
}

.shade-dark { background: rgba(0, 0, 0, 0.32); }
.shade-soft { background: rgba(0, 0, 0, 0.22); }

.tile-ideas,
.tile-explore {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 28px 24px 0;
}

.tile-ideas { background: #fff; justify-content: center; padding-bottom: 28px; }

.idea-icons {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 16px 0 8px;
  font-size: 34px;
  background: var(--grad-deep);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.idea-icons .plus {
  font-size: 29px;
  color: #223050;
  background: none;
  -webkit-text-fill-color: #223050;
}

.tile-ideas h3,
.tile-explore h3 {
  margin: 8px 0 0;
  font-weight: 400;
  font-size: 29px;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.tile-explore {
  background: linear-gradient(180deg, #f07a22 0%, #4a0201 100%);
  color: #fff;
  align-items: stretch;
  padding: 28px 28px 0;
}

.tile-explore h3 { font-weight: 500; text-align: center; }
.tile-explore p {
  margin: 6px 0 16px;
  text-align: center;
  font-size: 15px;
  letter-spacing: -0.03em;
}

.dash {
  margin-top: auto;
  height: 138px;
  border-radius: 15px 15px 0 0;
  overflow: hidden;
}

.dash img { width: 100%; height: 100%; object-fit: cover; object-position: top; }

/* Why */
.why-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.why-card {
  position: sticky;
  top: 108px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  background: var(--beige);
  border-radius: 40px;
  padding: 10px;
  height: 300px;
  min-height: 300px;
  max-height: 300px;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(40, 24, 10, 0.1);
}

.why-card:nth-child(1) { z-index: 1; top: 100px; }
.why-card:nth-child(2) { z-index: 2; top: 118px; }
.why-card:nth-child(3) { z-index: 3; top: 136px; }
.why-card:nth-child(4) { z-index: 4; top: 154px; }
.why-card:nth-child(5) { z-index: 5; top: 172px; }
.why-card:nth-child(6) { z-index: 6; top: 190px; }

.why-copy,
.why-visual {
  transition: transform 0.85s cubic-bezier(0.22, 0.8, 0.24, 1), opacity 0.7s ease;
}

.why-card:nth-child(1) .why-copy { transform: translate3d(-150px, 18px, 0); opacity: 0; }
.why-card:nth-child(1) .why-visual { transform: translate3d(130px, -24px, 0) scale(0.9); opacity: 0; transition-delay: 0.14s; }
.why-card:nth-child(2) .why-copy { transform: translate3d(40px, 80px, 0); opacity: 0; transition-delay: 0.1s; }
.why-card:nth-child(2) .why-visual { transform: translate3d(-160px, -12px, 0) rotate(-3deg); opacity: 0; }
.why-card:nth-child(3) .why-copy { transform: translate3d(-100px, 36px, 0) rotate(-2deg); opacity: 0; }
.why-card:nth-child(3) .why-visual { transform: translate3d(170px, 28px, 0); opacity: 0; transition-delay: 0.16s; }
.why-card:nth-child(4) .why-copy { transform: translate3d(140px, -18px, 0); opacity: 0; }
.why-card:nth-child(4) .why-visual { transform: translate3d(-70px, 56px, 0) scale(0.92); opacity: 0; transition-delay: 0.12s; }
.why-card:nth-child(5) .why-copy { transform: translate3d(-170px, 10px, 0); opacity: 0; transition-delay: 0.08s; }
.why-card:nth-child(5) .why-visual { transform: translate3d(80px, -48px, 0) rotate(2.5deg); opacity: 0; }
.why-card:nth-child(6) .why-copy { transform: translate3d(24px, 90px, 0); opacity: 0; }
.why-card:nth-child(6) .why-visual { transform: translate3d(-140px, 8px, 0) scale(1.05); opacity: 0; transition-delay: 0.18s; }

.why-card.is-in .why-copy,
.why-card.is-in .why-visual {
  transform: none;
  opacity: 1;
}

.why-copy {
  background: #fff;
  border-radius: 22px;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 0;
  overflow: hidden;
}

.why-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.why-num {
  position: relative;
  display: inline-block;
  padding: 0 2px 8px;
  font-family: "Outfit", "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 28px;
  line-height: 0.75;
  letter-spacing: -0.08em;
  color: transparent;
  -webkit-text-stroke: 1.5px #e85d24;
}

.why-num::after {
  content: "";
  position: absolute;
  left: 2px;
  bottom: 0;
  width: 34px;
  height: 4px;
  border-radius: 99px;
  background: var(--grad);
}

.tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 29px;
  padding: 0 12px 0 3px;
  border-radius: 999px;
  background: var(--grad);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.tag i {
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  color: var(--orange);
  font-size: 11px;
}

.why-num {
  position: relative;
  display: inline-block;
  padding: 0 2px 8px;
  font-family: "Outfit", "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 28px;
  line-height: 0.75;
  letter-spacing: -0.08em;
  color: transparent;
  -webkit-text-stroke: 1.5px #e85d24;
}

.why-num::after {
  content: "";
  position: absolute;
  left: 2px;
  bottom: 0;
  width: 34px;
  height: 4px;
  border-radius: 99px;
  background: var(--grad);
}

.why-copy h3 {
  margin: 0;
  font-weight: 300;
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: -0.04em;
  color: var(--ink-2);
  max-width: 440px;
}

.why-copy p {
  margin: 0;
  color: #616161;
  font-weight: 600;
  font-size: 13px;
  line-height: 1.35;
  letter-spacing: -0.02em;
  max-width: 460px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.why-copy .link-more {
  margin-top: auto;
  align-self: flex-end;
}

.why-visual {
  border-radius: 22px;
  overflow: hidden;
  min-height: 0;
  height: 100%;
}

.why-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.08) translateX(28px);
  transition: transform 0.9s cubic-bezier(0.22, 0.8, 0.24, 1);
}

.why-card.is-in .why-visual img { transform: none; }

.why-card.is-in:hover .why-visual img { transform: scale(1.04); }

#products .section-head { gap: 11px; margin-bottom: 77px; }
#products .section-head h2 {
  max-width: 1314px;
  font-size: clamp(32px, 3.4vw, 56px);
  line-height: 1.257;
  letter-spacing: 0;
  color: #18212d;
}

.product-scrub { position: relative; }

.product-slider {
  position: sticky;
  top: 108px;
  overflow: hidden;
  width: 100%;
}

.products-row {
  display: flex;
  gap: 16px;
  width: max-content;
  will-change: transform;
}

.products-row .product {
  flex: 0 0 340px;
  width: 340px;
}

.product {
  position: relative;
  min-height: 440px;
  border-radius: 28px;
  padding: 28px 26px 28px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  color: #000;
  box-shadow: none;
  transition: background 0.45s ease, color 0.45s ease;
}

.product.is-active {
  background: linear-gradient(165deg, #ff8a4a 0%, #eb411f 48%, #c81f12 100%);
  color: #fff;
}

.product-logo {
  height: 54px;
  width: 140px;
  object-fit: contain;
  object-position: left center;
  mix-blend-mode: multiply;
}

.product.cura .product-logo {
  width: 48px;
  height: 48px;
  object-fit: contain;
  object-position: center;
  border-radius: 12px;
  mix-blend-mode: normal;
}

.product.is-active .product-logo {
  mix-blend-mode: normal;
  filter: brightness(0) invert(1);
}

.product.cura.is-active .product-logo {
  filter: none;
  mix-blend-mode: normal;
}

.product h3 {
  margin: 14px 0 0;
  font-weight: 700;
  font-size: 26px;
}

.product .foot {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 22px;
}

.product p { margin: 0; font-size: 16px; line-height: 1.45; max-width: 360px; }

.cura-wash {
  position: absolute;
  inset: -20% -30%;
  width: 160%;
  height: 140%;
  object-fit: cover;
  opacity: 0;
  transform: rotate(-6deg);
  pointer-events: none;
  transition: opacity 0.45s ease;
}

.product.is-active .cura-wash { opacity: 0.08; }

.product > *:not(.cura-wash) { position: relative; z-index: 1; }

/* Services */
.services {
  background: linear-gradient(211deg, #ef7622 9%, #d92d21 91%);
  padding: 100px 0;
  color: #fff;
}

.services .section-head { gap: 11px; margin-bottom: 77px; }
.services .section-head p { color: #fff; font-size: 20px; line-height: 1.6; max-width: 836px; }
.services .section-head h2 { color: #fff; font-size: clamp(36px, 3.6vw, 64px); line-height: 1.1; }

.svc-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 17px;
}

.svc {
  --svc-x: 0px;
  --svc-y: 0px;
  --svc-r: 0deg;
  --svc-s: 1;
  --svc-o: 1;
  background:
    radial-gradient(ellipse at 58% 88%, rgba(253, 189, 149, 0.55) 0%, rgba(178, 52, 17, 0.08) 46%, transparent 72%),
    #f5f7fc;
  color: #202020;
  border-radius: 20px;
  min-height: 454px;
  padding: 40px 32px 0;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  border: 0;
  text-align: left;
  overflow: hidden;
  opacity: var(--svc-o);
  transform: translate3d(var(--svc-x), var(--svc-y), 0) rotate(var(--svc-r)) scale(var(--svc-s));
  transition: box-shadow 0.4s ease;
}

.svc:hover {
  transform: translate3d(var(--svc-x), calc(var(--svc-y) - 8px), 0) rotate(var(--svc-r)) scale(var(--svc-s));
  box-shadow: 0 24px 40px rgba(0, 0, 0, 0.18);
}

.svc h3 {
  margin: 0 0 12px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
}

.svc-list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.svc-list span {
  display: block;
  position: relative;
  padding-left: 16px;
  font-size: 15px;
  line-height: 1.35;
}
.svc-list span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #e45712;
}
#detailBody {
  display: grid;
  gap: 8px;
  white-space: normal;
}
#detailBody span {
  display: block;
  position: relative;
  padding-left: 16px;
}
#detailBody span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #e45712;
}

.svc-art {
  margin-top: auto;
  height: 230px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.svc-art img {
  height: 220px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: right bottom;
  mix-blend-mode: multiply;
}

/* Support */
.support-wrap {
  background: #f3f5fb;
  border-radius: 40px;
  padding: 12px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.support-left,
.support-right {
  --side-x: 0px;
  --side-y: 0px;
  --side-s: 1;
  --side-o: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  opacity: var(--side-o);
  transform: translate3d(var(--side-x), var(--side-y), 0) scale(var(--side-s));
}

.panel {
  background: #fff;
  border-radius: 30px;
  padding: 36px 32px;
}

.support-title {
  margin: 18px 0 28px;
  font-weight: 300;
  font-size: clamp(26px, 2vw, 30px);
  line-height: 1.3;
  color: var(--ink-2);
}

.ask {
  display: flex;
  align-items: center;
  gap: 16px;
}

.ask-ico {
  width: 68px;
  height: 68px;
  border-radius: 34px;
  display: grid;
  place-items: center;
  background: var(--grad);
  color: #fff;
  font-size: 22px;
  flex: none;
}

.ask small { display: block; font-weight: 500; color: var(--ink-2); }
.ask strong { display: block; font-size: 22px; font-weight: 600; }
.support-numbers {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-top: 6px;
  line-height: 1.2;
}
.support-numbers a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.type-caret {
  display: inline-block;
  width: 2px;
  height: 0.95em;
  margin-left: 2px;
  background: #242424;
  vertical-align: text-bottom;
  animation: phoneBlink 0.85s steps(1) infinite;
}

@keyframes phoneBlink {
  50% { opacity: 0; }
}

.stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #fff;
  border-radius: 30px;
  min-height: 210px;
}

.stat {
  padding: 48px 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.stat + .stat { border-left: 1px solid rgba(227, 227, 227, 0.7); }

.stat b {
  display: flex;
  align-items: flex-start;
  margin: 0;
  color: #242424;
}

.stat b span {
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 60px;
  line-height: 63px;
  letter-spacing: -2.4px;
  color: #242424;
}

.stat b em {
  font-style: normal;
  font-family: Manrope, sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 39px;
  letter-spacing: -1.2px;
  margin-left: 2px;
  background: linear-gradient(180deg, #f07a22 0%, #4a0201 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.stat > span {
  margin-top: 16px;
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 13px;
  line-height: 19.5px;
  letter-spacing: -0.325px;
  color: #616161;
}

.quote {
  min-height: 140px;
  display: flex;
  align-items: center;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.55;
  color: var(--ink-2);
}

.support-photo {
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  min-height: 360px;
  flex: 1;
}

.support-photo img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.support-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(36, 36, 36, 0.28);
}

/* Projects */
#projects .section-head {
  gap: 11px;
  margin-bottom: 77px;
}

#projects .section-head h2 {
  max-width: 1166px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(32px, 3.4vw, 56px);
  line-height: 1.26;
  letter-spacing: 0;
  color: #18212d;
}

#projects .section-head p {
  max-width: 842px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 32px;
  color: rgba(24, 33, 45, 0.5);
}

.project-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 21px;
}

.project-card {
  --proj-x: 0px;
  --proj-y: 0px;
  --proj-r: 0deg;
  --proj-o: 1;
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
  opacity: var(--proj-o);
  transform: translate3d(var(--proj-x), var(--proj-y), 0) rotate(var(--proj-r));
}

.project-card.feature {
  grid-row: 1 / span 2;
  min-height: 743px;
}

.project-card .media {
  height: 51.36%;
  min-height: 0;
  overflow: hidden;
}

.project-card.feature .media { height: 51.36%; }

.project-card.split { flex-direction: row; min-height: 361px; }
.project-card.split .media { width: 41.8%; height: auto; min-height: 100%; flex: none; }

.project-card .media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s ease;
}

.project-card:hover .media img { transform: scale(1.05); }

.project-body {
  padding: 28px 30px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 14px;
}

.project-body h3 {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 28.8px;
  color: #202020;
}

.project-body p {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #202020;
}

.project-body .btn-grad { margin-top: auto; align-self: flex-end; }

.page-cases {
  background: #fff8ee;
}

.page-cases #projects.block {
  padding-top: 56px;
  padding-bottom: 40px;
}

.recent-head {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 56px;
  padding-top: 28px;
}

.recent-dot,
.recent-ring {
  position: absolute;
  pointer-events: none;
}

.recent-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f07a22;
  left: 46%;
  top: 0;
}

.recent-ring {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(240, 122, 34, 0.45);
  left: 38%;
  top: 18px;
}

.recent-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #f0e4d8;
  color: #151515;
  font-size: 13px;
  font-weight: 600;
}

.recent-kicker i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #f07a22;
}

.recent-head h2 {
  margin: 14px 0 0;
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(40px, 5vw, 72px);
  letter-spacing: -0.04em;
  line-height: 0.95;
  color: #151515;
  text-transform: uppercase;
}

.recent-head h2 span { color: #f07a22; }

.work-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.work-filters button {
  border: 1px solid #eadfd4;
  background: #fff;
  color: #151515;
  border-radius: 999px;
  padding: 10px 18px;
  font-weight: 600;
  font-size: 15px;
  cursor: pointer;
}

.work-filters button.is-on {
  border-color: transparent;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
}

.latest-work {
  background: transparent;
  color: #151515;
  padding: 8px 0 48px;
  overflow: hidden;
}

.work-top {
  display: flex;
  align-items: center;
  gap: 16px;
  width: min(1640px, calc(100% - 64px));
  margin: 0 auto 28px;
  color: rgba(21, 21, 21, 0.55);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.work-top i {
  flex: 1;
  height: 1px;
  background: rgba(21, 21, 21, 0.12);
}

.work-top span:last-child::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 8px;
  border-radius: 50%;
  background: #f07a22;
  vertical-align: middle;
}

.work-list {
  width: min(1640px, calc(100% - 24px));
  margin: 0 auto;
}

.work-row {
  display: grid;
  grid-template-columns: minmax(90px, 1fr) auto minmax(90px, 1fr);
  align-items: center;
  gap: 18px;
  margin: 18px 0 42px;
}

.work-row.is-hidden { display: none; }

.work-word {
  font-family: "DM Sans", sans-serif;
  font-weight: 800;
  font-size: clamp(36px, 5.2vw, 76px);
  letter-spacing: -0.045em;
  line-height: 0.9;
  text-transform: uppercase;
  color: #18212d;
}

.work-row .work-word:first-child { justify-self: start; padding-left: 2vw; }
.work-row .work-word:last-child { justify-self: end; padding-right: 2vw; }

.work-card {
  display: flex;
  align-items: stretch;
  gap: 18px;
  background: #fff;
  border: 1px solid #f0e6dc;
  border-radius: 22px;
  padding: 14px;
  box-shadow: 0 16px 40px rgba(40, 24, 10, 0.06);
  transform-origin: center center;
  will-change: transform, opacity;
}

.work-card.size-wide { width: min(860px, 62vw); }
.work-card.size-mid { width: min(700px, 54vw); }
.work-card.size-tall { width: min(640px, 50vw); }
.work-card.size-slim { width: min(780px, 58vw); }

.work-shot {
  flex: none;
  object-fit: cover;
  border-radius: 16px;
  background: #fff8ee;
}

.work-card.size-wide .work-shot { width: 300px; height: 210px; }
.work-card.size-mid .work-shot { width: 220px; height: 250px; }
.work-card.size-tall .work-shot { width: 250px; height: 280px; }
.work-card.size-slim .work-shot { width: 320px; height: 170px; }

.work-copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 8px 8px 4px 0;
}

.work-copy h3 {
  margin: 0 0 8px;
  color: #151515;
  font-size: clamp(16px, 1.4vw, 22px);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  line-height: 1.25;
}

.work-copy p {
  margin: 0 0 8px;
  color: #5c6370;
  font-size: 14px;
  line-height: 1.5;
}

.work-meta-line { margin: 0 0 2px; color: #8b93a7; font-size: 13px; }
.work-meta-line b { color: #151515; font-weight: 600; }

.work-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 12px;
}

.work-view {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 0;
  background: transparent;
  color: #151515;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  padding: 0;
}

.work-view span {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  font-size: 12px;
}

.work-num {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #f07a22;
}

/* Integrate AI collage */
.ai-ecosystem { padding: 48px 0 24px; }

.ai-stage {
  position: relative;
  width: min(1460px, 100%);
  margin: 0 auto;
  aspect-ratio: 1460 / 735;
}

.ai-stage img {
  --icon-x: 0px;
  --icon-y: 0px;
  --icon-r: 0deg;
  --icon-s: 1;
  --icon-o: 1;
  position: absolute;
  object-fit: cover;
  pointer-events: none;
  user-select: none;
  opacity: var(--icon-o);
  transform: translate3d(var(--icon-x), var(--icon-y), 0) rotate(var(--icon-r)) scale(var(--icon-s));
  will-change: transform, opacity;
}

.ai-stage h2 {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(1166px, 80%);
  margin: 0;
  text-align: center;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(28px, 3.8vw, 56px);
  line-height: 1.257;
  letter-spacing: 0;
  color: #18212d;
}

/* Contact */
.contact-wrap {
  width: calc(100% - 24px);
  margin-inline: auto;
}

.contact {
  position: relative;
  border-radius: 40px;
  overflow: hidden;
  min-height: 959px;
  padding: 120px 84px;
  display: flex;
  align-items: center;
}

.contact-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.contact::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.06);
  pointer-events: none;
}

.contact-grid {
  position: relative;
  z-index: 1;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(260px, 527px) minmax(320px, 600px);
  justify-content: space-between;
  align-items: center;
  gap: 48px;
}

.contact-copy,
.glass-form {
  --ct-x: 0px;
  --ct-y: 0px;
  --ct-s: 1;
  --ct-o: 1;
  opacity: var(--ct-o);
  transform: translate3d(var(--ct-x), var(--ct-y), 0) scale(var(--ct-s));
}

.contact h2 {
  margin: 0 0 63px;
  max-width: 527px;
  font-weight: 300;
  font-size: clamp(40px, 4.6vw, 78.9px);
  line-height: 1.065;
  letter-spacing: -3.2px;
  color: #151515;
}

.contact .lede {
  margin: 0;
  max-width: 527px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22.5px;
  letter-spacing: 0.55px;
  color: #151515;
}

.glass-form {
  background: rgba(0, 0, 0, 0.02);
  backdrop-filter: blur(15px);
  border-radius: 30px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.75);
  padding: 48px 30px 28px;
}

.glass-form h3 {
  margin: 0 0 36px;
  max-width: 380px;
  font-family: "DM Sans", sans-serif;
  font-size: 25px;
  font-weight: 600;
  letter-spacing: -0.75px;
  line-height: 33.75px;
  color: #151515;
}

.field { margin-bottom: 16px; }

.field label {
  display: block;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 19.5px;
  margin-bottom: 8px;
  letter-spacing: -0.325px;
  color: #151515;
}

.glass-form .form-control {
  background: rgba(5, 5, 5, 0.05);
  border: 0;
  border-radius: 12px;
  height: 43px;
  color: #151515;
  font-family: "DM Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: -0.48px;
  padding: 0 16px;
  box-shadow: none;
}

.glass-form .form-control::placeholder {
  color: #151515;
  opacity: 1;
}

.glass-form textarea.form-control {
  height: 218px;
  resize: none;
  padding-top: 12px;
}

.glass-form .form-control:focus {
  background: rgba(5, 5, 5, 0.08);
  box-shadow: 0 0 0 2px rgba(240, 122, 34, 0.35);
}

.form-actions { display: flex; justify-content: flex-end; margin-top: 8px; }

.submit {
  border: 0;
  width: 137px;
  height: 44px;
  padding: 0 16px;
  border-radius: 40px;
  color: #f5f5e9;
  background: linear-gradient(87deg, #f07a22 0.75%, #d92d21 99.25%);
  font-family: Manrope, "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 15px;
  letter-spacing: -0.45px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
}

/* Partners + footer */
.closing {
  position: relative;
  margin-top: 40px;
  overflow: hidden;
  color: #fff;
}

.closing-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.partners {
  position: relative;
  z-index: 1;
  padding: 140px 0 0;
  text-align: center;
  color: #1e1a1a;
}

.partners h2 {
  margin: 0 auto 54px;
  max-width: 1182px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(32px, 3.6vw, 60px);
  line-height: 1;
  color: #1e1a1a;
}

.brand-marquee {
  overflow: hidden;
  width: 100%;
}

.brand-track {
  display: flex;
  width: max-content;
  animation: brand-scroll 32s linear infinite;
}

.brand-set {
  display: flex;
  align-items: center;
  gap: 72px;
  padding-right: 72px;
}

.brand-set img {
  width: auto;
  object-fit: contain;
  flex: none;
}

.brand-set img:nth-child(1),
.brand-set img:nth-child(2) { height: 23px; }
.brand-set img:nth-child(3) { height: 36px; }
.brand-set img:nth-child(4) { height: 41px; }
.brand-set img:nth-child(5) { height: 25px; }

@keyframes brand-scroll {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

.site-footer {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 312px 0 60px;
  color: #fff;
  background: transparent;
  overflow: hidden;
}

.site-footer .shell-wide {
  position: relative;
  z-index: 1;
  width: min(1640px, calc(100% - 88px));
}

.brand.light img {
  width: 159px;
  height: 33px;
  filter: none;
}

.footer-brand p.tagline {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: normal;
  margin: 18px 0 28px;
}

.footer-brand .about {
  max-width: 321px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  margin: 0;
}

.brand.light span { color: #fff; }

.watermark {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  width: 100%;
  max-width: none;
  height: 247px;
  object-fit: cover;
  object-position: center bottom;
  opacity: 0.05;
  pointer-events: none;
  mix-blend-mode: plus-lighter;
}

.footer-facts {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 270px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
}

.foot-title {
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 28px;
  margin: 0 0 12px;
  position: relative;
  display: inline-block;
}

.foot-title::after {
  content: "";
  display: block;
  width: 39px;
  height: 2px;
  margin-top: 6px;
  background: #fff;
}

.foot-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.foot-links a {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
}

.foot-links a:hover { color: #ffd0b0; }

.contacts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 36px;
  margin-top: 36px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  color: #f8f8f8;
}

.contacts span { display: inline-flex; align-items: center; gap: 12px; }

.news h3 {
  margin: 0 0 18px;
  max-width: 172px;
  font-family: "DM Sans", sans-serif;
  font-size: 21px;
  font-weight: 600;
  line-height: normal;
}

.news p {
  margin: 0 0 18px;
  max-width: 311px;
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
}

.news-row {
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 9px;
  height: 46px;
  padding: 2px;
  max-width: 309px;
}

.news-row input {
  border: 0;
  outline: 0;
  flex: 1;
  min-width: 0;
  height: 100%;
  padding: 0 14px;
  color: #151515;
  background: transparent;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  line-height: 26px;
}

.news-row input::placeholder { color: #afafaf; }

.news-row button {
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 9px;
  color: #fff;
  background: linear-gradient(85deg, #ef7821 4%, #da3022 96%);
  cursor: pointer;
}

.check {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 14px;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  line-height: 26px;
}

.check input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: #fff;
}

.socials { display: flex; gap: 18px; font-size: 18px; }
.socials a:hover { color: #ffb089; }

.legal {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(248, 248, 248, 0.45);
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  color: #f8f8f8;
}

/* Modal */
.detail-modal .modal-content {
  border: 0;
  border-radius: 28px;
  overflow: hidden;
  background: #fffaf6;
}

.detail-modal .modal-hero {
  height: 220px;
  background: #111 center/cover no-repeat;
  position: relative;
}

.detail-modal .modal-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.45));
}

.detail-modal .modal-body { padding: 28px 28px 12px; }
.detail-modal h3 { margin: 0 0 10px; font-size: 28px; font-weight: 600; }
.detail-modal p { color: #3d3d3d; line-height: 1.6; }
.detail-modal .modal-footer { border: 0; padding: 8px 28px 28px; }

.success-modal .modal-content {
  border: 0;
  border-radius: 24px;
  text-align: center;
  padding: 18px 10px 8px;
}

.success-modal i.big {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin: 8px auto 12px;
  background: var(--grad);
  color: #fff;
  font-size: 28px;
}

/* Scroll progress */
.progress-line {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0;
  z-index: 1100;
  background: var(--grad);
}

@media (max-width: 1199px) {
  .mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 280px 240px 240px; }
  .tile-empower { grid-column: 1; grid-row: 1 / span 2; }
  .tile-innovative { grid-column: 2; grid-row: 1 / span 2; }
  .tile-ideas { grid-column: 1; grid-row: 3; }
  .tile-explore { grid-column: 2; grid-row: 3; }
  .svc-grid { grid-template-columns: 1fr 1fr; }
  .hero h1 { margin-bottom: 48px; }
}

@media (max-width: 991px) {
  .site-nav { left: 10px; right: 10px; width: auto; max-width: calc(100vw - 20px); }
  .nav-inner { position: relative; z-index: 3; flex-wrap: nowrap; align-items: center; gap: 8px; width: 100%; min-width: 0; max-width: 100%; height: 100%; margin: 0; padding: 0 12px; }
  .site-nav .brand { order: 1; min-width: 0; flex: 1 1 auto; overflow: hidden; }
  .site-nav .brand span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .site-nav .btn-talk {
    position: static;
    order: 2;
    margin: 0 0 0 auto;
    height: 46px;
    white-space: nowrap;
    flex: none;
    z-index: 4;
  }
  .site-nav .btn-talk:hover { transform: none; }
  .nav-toggle {
    position: static;
    order: 3;
    display: grid;
    margin: 0;
    width: 46px;
    height: 46px;
    flex: none;
    z-index: 4;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
  }
  .nav-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1;
    border: 0;
    padding: 0;
    background: rgba(28, 18, 14, 0.42);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.35s ease;
  }
  .site-nav.is-open .nav-backdrop { opacity: 1; pointer-events: auto; }
  .nav-links {
    display: flex;
    position: fixed;
    z-index: 6;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 20px 22px 36px;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    background: #fff8ee;
    border-radius: 0;
    box-shadow: none;
    overflow: auto;
    transform: translate3d(-100%, 0, 0);
    visibility: hidden;
    pointer-events: none;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.4s;
  }
  .nav-links.open {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    transform: none;
    visibility: visible;
    pointer-events: auto;
  }
  .nav-close-row { display: flex; justify-content: flex-end; margin: 0 0 12px; padding: 0; }
  .nav-close {
    width: 46px;
    height: 46px;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #1a1a1a;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
    display: grid;
    place-items: center;
    font-size: 18px;
    cursor: pointer;
  }
  .nav-links > li > a,
  .nav-links > li > button.nav-linkish {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 8px;
    font-size: 18px;
  }
  .nav-drop:hover .nav-sub,
  .nav-drop:focus-within .nav-sub { display: none; }
  .nav-sub {
    position: static;
    display: none;
    flex-direction: column;
    min-width: 0;
    margin: 0 0 8px;
    padding: 0 0 8px 12px;
    background: transparent;
    box-shadow: none;
  }
  .nav-drop.is-open > .nav-sub { display: flex; }
  .nav-drop > a i { transition: transform 0.25s ease; }
  .nav-drop.is-open > a i { transform: rotate(180deg); }
  .nav-sub a { font-size: 16px; letter-spacing: 0; text-transform: none; }
  .hero h1 { top: 16%; width: calc(100% - 48px); font-size: 40px; }
  .hero-lead { top: auto; bottom: 28px; width: min(420px, 52%); font-size: 16px; }
  .hero-side { top: auto; bottom: 28px; right: 20px; flex-direction: row; gap: 12px; }
  .know-grid { grid-template-columns: 1fr; gap: 28px; }
  .products-row .product {
    flex-basis: min(340px, calc(100vw - 64px));
    width: min(340px, calc(100vw - 64px));
  }
  .know-collage { height: 440px; }
  .why-card,
  .support-wrap { flex-basis: calc((100% - 16px) / 2); }
  .contact { min-height: 0; padding: 48px 24px; }
  .contact-grid { grid-template-columns: 1fr; gap: 32px; }
  .contact h2 { margin-bottom: 24px; letter-spacing: -1.6px; }
  .glass-form textarea.form-control { height: 160px; }
  .why-card,
  .why-card:nth-child(n) { top: 88px; }
  .project-grid { grid-template-columns: 1fr; }
  .project-card.feature { grid-row: auto; min-height: 0; }
  .project-card.split { flex-direction: column; }
  .project-card.split .media { width: 100%; height: 220px; }
  .recent-head { flex-direction: column; align-items: flex-start; }
  .work-filters { justify-content: flex-start; }
  .work-row { grid-template-columns: 1fr; gap: 10px; }
  .work-word { display: none; }
  .work-card,
  .work-card.size-wide,
  .work-card.size-mid,
  .work-card.size-tall,
  .work-card.size-slim { width: 100%; flex-direction: column; }
  .work-shot,
  .work-card.size-wide .work-shot,
  .work-card.size-mid .work-shot,
  .work-card.size-tall .work-shot,
  .work-card.size-slim .work-shot { width: 100%; height: 200px; }
  .stat-card, .discover-card { width: 170px; height: 170px; }
}
@media (max-width: 991px) and (prefers-reduced-motion: reduce) {
  .nav-links, .nav-backdrop { transition: none; }
}

@media (max-width: 768px) {
  .hero { height: 500px; }
  .hero-side { right: 14px; bottom: 14px; top: auto; flex-direction: row; gap: 8px; }
  .stat-card, .discover-card { width: 112px; height: 112px; padding: 12px 10px; border-radius: 12px; }
  .stat-card strong { font-size: 26px; font-weight: 700; color: #000; }
  .stat-card span { font-size: 11px; margin-top: 4px; }
  .discover-card { padding: 12px 8px 10px; gap: 6px; }
  .discover-ring, .discover-ring img { width: 40px; height: 40px; }
  .discover-card b { font-size: 12px; line-height: 1.2; }
}

@media (max-width: 640px) {
  .shell, .shell-wide { width: calc(100% - 28px); }
  .mosaic, .svc-grid, .stats, .know-points { grid-template-columns: 1fr; }
  .tile-empower, .tile-innovative, .tile-ideas, .tile-explore { grid-column: auto; grid-row: auto; min-height: 320px; }
  .hero { height: 500px; }
  .hero-frame { border-radius: 24px; }
  .hero h1 { top: 14%; left: 20px; width: calc(100% - 40px); font-size: 32px; }
  .hero-lead { left: 20px; bottom: 127px; width: calc(100% - 40px); font-size: 14px; }
  .hero-side { right: 12px; bottom: 12px; top: auto; flex-direction: row; gap: 8px; }
  .product-slider { top: 84px; }
  .products-row .product {
    flex-basis: min(340px, calc(100vw - 48px));
    width: min(340px, calc(100vw - 48px));
  }
  .block { padding: 72px 0; }
  .why-copy { padding: 28px 22px; }
  .product { min-height: 0; }
  .stat + .stat { border-left: 0; border-top: 1px solid rgba(227, 227, 227, 0.7); }
}

@media (max-width: 767px) {
  .why-card,
  .why-card:nth-child(n) {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
    max-height: none;
    position: relative;
    top: auto;
  }
  .why-copy {
    width: 100%;
    grid-column: 1 / -1;
  }
  .why-copy h3,
  .why-copy p { max-width: none; }
  .support-wrap {
    width: 100%;
    grid-template-columns: 1fr;
    flex-basis: auto;
  }
  .support-left,
  .support-right { width: 100%; }
  .support-right { display: none; }
  .ai-ecosystem { display: none; }
  .product-scrub {
    height: auto !important;
    width: calc(100% - 28px);
    margin-inline: auto;
  }
  .product-slider { position: static; top: auto; overflow: visible; }
  .products-row {
    flex-direction: column;
    width: 100%;
    transform: none !important;
  }
  .products-row .product,
  .products-row .product[data-clone] {
    flex: 1 1 auto;
    width: 100%;
  }
  .products-row .product[data-clone] { display: none; }
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .svc,
  .project-card,
  .work-card,
  .work-word,
  .know-collage,
  .know-copy,
  .support-left,
  .support-right,
  .contact-copy,
  .glass-form,
  .why-card .why-copy,
  .why-card .why-visual {
    transform: none !important;
    opacity: 1 !important;
  }
  .site-footer { padding-top: 212px; }
  .site-footer .row > .col-lg-3:first-child { display: none; }
  .site-footer .col-6.col-lg-2 { display: none; }
  .site-nav .btn-talk { display: none; }
  .know { padding: 72px 0 50px; }
  #products .section-head h2 {
    max-width: 1314px;
    font-size: clamp(23px, 3.4vw, 56px);
    line-height: 1.257;
    letter-spacing: 0;
    color: #18212d;
  }
  .hero-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    top: 100px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .know-collage,
  .know-copy { --know-x: 0px; --know-y: 0px; --know-s: 1; --know-o: 1; transform: none; opacity: 1; }
  .why-card .why-copy,
  .why-card .why-visual,
  .why-card .why-visual img,
  .support-left,
  .support-right { --side-x: 0px; --side-y: 0px; --side-s: 1; --side-o: 1; transform: none; opacity: 1; }
  .svc { --svc-x: 0px; --svc-y: 0px; --svc-r: 0deg; --svc-s: 1; --svc-o: 1; transform: none; opacity: 1; }
  .ai-stage img { --icon-x: 0px; --icon-y: 0px; --icon-r: 0deg; --icon-s: 1; --icon-o: 1; transform: none; opacity: 1; }
  .project-card { --proj-x: 0px; --proj-y: 0px; --proj-r: 0deg; --proj-o: 1; transform: none; opacity: 1; }
  .work-card { transform: none; opacity: 1; }
  .work-word { transform: none; opacity: 1; }
  .contact-copy,
  .glass-form { --ct-x: 0px; --ct-y: 0px; --ct-s: 1; --ct-o: 1; transform: none; opacity: 1; }
  .type-caret { animation: none; display: none; }
  .hero-side, .caret { animation: none; }
  .caret { display: none; }
  .brand-track, .cloud-logo-track, .cloud-ind-track { animation: none; }
}

/* Contact page */
.page-contact { background: #fff8ee; }

.page-banner { padding: 108px 12px 0; }

.page-banner-frame {
  position: relative;
  height: 280px;
  border-radius: 36px;
  overflow: hidden;
  display: grid;
  place-items: center;
}

.page-banner-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
}

.page-banner-shade {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 80%, rgba(255, 248, 238, 0.72), transparent 46%),
    linear-gradient(90deg, rgba(255, 248, 238, 0.72) 0%, rgba(255, 248, 238, 0.38) 46%, rgba(217, 45, 33, 0.22) 100%);
}

.page-banner-copy {
  position: relative;
  z-index: 2;
  text-align: center;
}

.page-banner-copy h1 {
  margin: 0 0 14px;
  color: #151515;
  font-size: clamp(36px, 4vw, 52px);
  font-weight: 700;
  letter-spacing: -0.03em;
}

.crumb {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 7px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.62);
  border: 1px solid rgba(255, 255, 255, 0.75);
  color: #5c6370;
  font-size: 14px;
  backdrop-filter: blur(8px);
}

.crumb a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #151515;
}

.crumb i { color: #f07a22; font-size: 12px; }

.banner-dot,
.banner-ring,
.banner-squiggle,
.banner-bloom,
.banner-grid {
  position: absolute;
  z-index: 1;
  pointer-events: none;
}

.banner-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f07a22;
  left: 18%;
  top: 28%;
}

.banner-ring {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid rgba(255, 248, 238, 0.9);
  right: 22%;
  top: 24%;
}

.banner-squiggle {
  width: 42px;
  height: 16px;
  left: 28%;
  top: 34%;
  background:
    radial-gradient(circle at 4px 8px, transparent 5px, #f07a22 6px, #f07a22 7px, transparent 8px),
    radial-gradient(circle at 18px 8px, transparent 5px, #f07a22 6px, #f07a22 7px, transparent 8px),
    radial-gradient(circle at 32px 8px, transparent 5px, #f07a22 6px, #f07a22 7px, transparent 8px);
}

.banner-bloom {
  width: 16px;
  height: 16px;
  left: 16%;
  bottom: 28%;
  background: #fff8ee;
  clip-path: polygon(50% 0, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.banner-grid {
  right: 14%;
  bottom: 26%;
  width: 22px;
  height: 22px;
  background:
    radial-gradient(circle, #fff8ee 1.5px, transparent 1.6px) 0 0 / 7px 7px;
}

.branch-shell { width: min(1140px, calc(100% - 48px)); }

.branches { padding: 20px 0 90px; }

.branch-head {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 48px;
}

.branch-pill {
  gap: 8px;
  margin-bottom: 18px;
  background: #fff;
  border-color: #e6e8ee;
  color: #1a1a1a;
}

.branch-pill i {
  font-size: 8px;
  color: #1a1a1a;
}

.branch-head h2,
.touch-copy h2,
.touch-form h2 {
  margin: 0;
  color: #111;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.branch-head h2 {
  font-size: clamp(32px, 4vw, 44px);
  line-height: 1.15;
}

.branch-head p {
  margin: 14px 0 0;
  color: #8b93a7;
  font-size: 15px;
  line-height: 1.6;
}

.branch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.branch-card {
  position: relative;
  background: #fff;
  border-radius: 22px;
  padding: 42px 28px 36px;
  text-align: center;
  box-shadow: 0 16px 40px rgba(30, 40, 70, 0.05);
  overflow: hidden;
}

.branch-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(211deg, #ef7622 9%, #d92d21 91%);
  opacity: 0;
  transition: opacity 0.6s ease;
}

.branch-card.is-featured::before { opacity: 1; }

.branch-card > * { position: relative; z-index: 1; }

.branch-photo {
  width: 168px;
  height: 168px;
  margin: 0 auto 28px;
  border-radius: 50%;
  border: 2px dashed #f0a06a;
  display: grid;
  place-items: center;
}

.branch-card.is-featured .branch-photo {
  border-style: solid;
  border-color: transparent;
  background: #e7eef3;
}

.branch-photo img {
  width: 148px;
  height: 148px;
  border-radius: 50%;
  object-fit: cover;
}

.branch-card h3,
.branch-card p,
.branch-card a,
.branch-role,
.branch-photo {
  transition: color 0.6s ease, border-color 0.6s ease, background 0.6s ease;
}

.branch-card h3 {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 700;
  color: #151515;
}

.branch-role {
  display: inline-block;
  margin-bottom: 14px;
  color: #d92d21;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 2px solid #f07a22;
  padding-bottom: 6px;
}

.branch-card.is-featured .branch-role {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, 0.7);
}

.branch-card p,
.branch-card a {
  margin: 0;
  color: #6d7588;
  font-size: 14px;
  line-height: 1.7;
}

.branch-card.is-featured h3,
.branch-card.is-featured p,
.branch-card.is-featured a { color: rgba(255, 255, 255, 0.92); }

.touch { padding: 64px 0 48px; }

.touch-grid {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 48px;
  align-items: start;
}

.touch-copy h2 {
  margin-top: 16px;
  font-size: clamp(30px, 3vw, 40px);
  line-height: 1.15;
  max-width: 360px;
}

.touch-copy > p {
  margin: 12px 0 0;
  color: #8b93a7;
  font-size: 15px;
  line-height: 1.6;
  max-width: 340px;
}

.touch-list {
  margin-top: 28px;
  border-top: 1px solid #e4e7ee;
  padding-top: 26px;
  display: grid;
  gap: 22px;
}

.touch-list > div {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.touch-ico {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: linear-gradient(90deg, #f07a22 0%, #d92d21 100%);
  color: #fff;
  display: grid;
  place-items: center;
  flex: none;
  font-size: 16px;
}

.touch-list b {
  display: block;
  margin-bottom: 4px;
  color: #151515;
  font-size: 16px;
}

.touch-list p {
  margin: 0;
  color: #8b93a7;
  font-size: 14px;
  line-height: 1.6;
}

.touch-social {
  display: flex;
  gap: 22px;
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid #e4e7ee;
}

.touch-social a {
  color: #c5cad6;
  font-size: 15px;
}

.touch-social a:hover { color: #f07a22; }

.touch-form {
  background: #fff;
  border-radius: 28px;
  padding: 36px 34px 32px;
  box-shadow: 0 18px 50px rgba(30, 40, 70, 0.06);
}

.touch-form h2 {
  font-size: 28px;
  margin-bottom: 22px;
}

.touch-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.touch-field {
  position: relative;
  display: block;
  margin: 0;
}

.touch-field-full { grid-column: 1 / -1; }

.touch-field i {
  position: absolute;
  left: 16px;
  top: 16px;
  color: #9aa3b5;
  font-size: 14px;
}

.touch-field input,
.touch-field select,
.touch-field textarea {
  width: 100%;
  border: 1px solid #e6e9f0;
  background: #fff;
  color: #151515;
  font-size: 14px;
  outline: none;
}

.touch-field input,
.touch-field select {
  height: 52px;
  border-radius: 999px;
  padding: 0 18px 0 42px;
}

.touch-field select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #9aa3b5 50%), linear-gradient(135deg, #9aa3b5 50%, transparent 50%);
  background-position: calc(100% - 22px) 23px, calc(100% - 16px) 23px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  color: #9aa3b5;
}

.touch-field select:valid { color: #151515; }

.touch-field textarea {
  border-radius: 18px;
  min-height: 140px;
  padding: 16px 18px;
  resize: vertical;
}

.touch-field input:focus,
.touch-field select:focus,
.touch-field textarea:focus { border-color: #f07a22; }

.touch-agree {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 0 18px;
  color: #b0b6c4;
  font-size: 14px;
}

.submit-now {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 0;
  height: 48px;
  padding: 0 8px 0 22px;
  border-radius: 999px;
  background: #f5a524;
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  cursor: pointer;
}

.submit-now span {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.28);
  display: grid;
  place-items: center;
}

@media (max-width: 991px) {
  .branch-grid,
  .touch-grid,
  .touch-fields { grid-template-columns: 1fr; }
  .page-banner-frame { height: 220px; border-radius: 24px; }
  .branches { padding-top: 12px; }
  .blog-grid { grid-template-columns: 1fr; }
}

/* Blog page */
.blog-wrap { padding: 56px 0 40px; }

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.blog-card {
  background: #fff;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 16px 40px rgba(40, 24, 10, 0.06);
}

.blog-card img {
  width: 100%;
  height: 210px;
  object-fit: cover;
}

.blog-body { padding: 18px 20px 16px; }

.blog-body time {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #8b93a7;
  font-size: 13px;
}

.blog-body time i { color: #f07a22; }

.blog-body h2 {
  margin: 10px 0 16px;
  color: #151515;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.02em;
}

.blog-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid #f0e6dc;
  color: #8b93a7;
  font-size: 14px;
}

.blog-more {
  border: 0;
  background: none;
  padding: 0;
  color: #d92d21;
  font-weight: 600;
  cursor: pointer;
}

.blog-more:hover { color: #f07a22; }

.blog-pages {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 36px 0 8px;
}

.blog-pages button {
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #151515;
  font-weight: 600;
  box-shadow: 0 8px 20px rgba(40, 24, 10, 0.06);
  cursor: pointer;
}

.blog-pages .is-current {
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
}

.post-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(260px, 0.75fr);
  gap: 28px;
  width: min(1140px, calc(100% - 48px));
  margin: 48px auto 80px;
  align-items: start;
}

.post-article,
.side-card,
.comment,
.comment-form {
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 16px 40px rgba(40, 24, 10, 0.06);
}

.post-article { padding: 18px; }

.post-article img.hero-shot,
.post-article img.inline-shot {
  width: 100%;
  border-radius: 16px;
  object-fit: cover;
}

.post-article img.hero-shot { height: 380px; }
.post-article img.inline-shot { height: 280px; margin: 8px 0 18px; }

.post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 16px 4px 8px;
  color: #8b93a7;
  font-size: 14px;
}

.post-meta i { color: #f07a22; margin-right: 6px; }

.post-article h2 {
  margin: 8px 4px 14px;
  color: #151515;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.25;
}

.post-article p {
  margin: 0 4px 14px;
  color: #5c6370;
  font-size: 16px;
  line-height: 1.7;
}

.post-quote {
  margin: 8px 4px 18px;
  padding: 16px 18px;
  border-left: 3px solid #f07a22;
  background: #fff8ee;
  border-radius: 0 14px 14px 0;
  color: #151515;
  font-weight: 600;
}

.post-foot {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 8px 4px 4px;
  padding-top: 14px;
  border-top: 1px solid #f0e6dc;
  color: #8b93a7;
  font-size: 14px;
}

.post-foot b { color: #151515; margin-right: 8px; }

.post-tags a,
.tag-cloud a {
  display: inline-block;
  margin: 0 6px 6px 0;
  padding: 6px 12px;
  border-radius: 999px;
  background: #fff8ee;
  color: #d92d21;
  font-size: 13px;
}

.post-comments,
.comment-form { margin-top: 22px; padding: 22px; }

.post-comments h3,
.comment-form h3,
.side-card h3 {
  margin: 0 0 16px;
  color: #151515;
  font-size: 22px;
  font-weight: 700;
}

.comment {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 14px;
  padding: 16px;
  margin-bottom: 12px;
}

.comment img {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
}

.comment b { display: block; color: #151515; }
.comment small { color: #8b93a7; }
.comment p { margin: 8px 0 0; color: #5c6370; }

.comment-form label {
  display: block;
  margin-bottom: 12px;
  color: #8b93a7;
  font-size: 14px;
}

.comment-form input,
.comment-form textarea {
  width: 100%;
  margin-top: 6px;
  border: 1px solid #f0e6dc;
  border-radius: 12px;
  padding: 12px 14px;
  color: #151515;
  background: #fff;
}

.comment-form textarea { min-height: 120px; resize: vertical; }

.comment-form button {
  border: 0;
  height: 46px;
  padding: 0 22px;
  border-radius: 999px;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

.post-side { display: grid; gap: 18px; }

.side-card { padding: 18px; }

.side-card h3 {
  font-size: 16px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f07a22;
}

.side-search {
  display: flex;
  border: 1px solid #f0e6dc;
  border-radius: 12px;
  overflow: hidden;
}

.side-search input {
  flex: 1;
  border: 0;
  padding: 12px 14px;
  outline: none;
}

.side-search button {
  width: 46px;
  border: 0;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
}

.side-list { list-style: none; margin: 0; padding: 0; }
.side-list li {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid #f6efe8;
  color: #5c6370;
}

.side-post {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 12px;
  margin-bottom: 12px;
  color: inherit;
}

.side-post img {
  width: 72px;
  height: 64px;
  object-fit: cover;
  border-radius: 10px;
}

.side-post b {
  display: block;
  color: #151515;
  font-size: 14px;
  line-height: 1.35;
}

.side-post small { color: #8b93a7; }

@media (max-width: 991px) {
  .post-layout { grid-template-columns: 1fr; }
  .post-article img.hero-shot { height: 220px; }
}

/* Cura product page */
.page-cura { background: #fff8ee; }

.cura-hero {
  position: relative;
  padding: 118px 0 12px;
  overflow: hidden;
}

.cura-hero::before {
  content: "";
  position: absolute;
  inset: 0 0 0 36%;
  background: url("../assets/cura 5.png") right center / cover no-repeat;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 22%);
  mask-image: linear-gradient(90deg, transparent, #000 22%);
  pointer-events: none;
}

.cura-hero-grid,
.cura-why-grid,
.cura-action-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 48px;
  align-items: center;
}

.cura-hero-grid {
  position: relative;
  z-index: 1;
  grid-template-columns: minmax(480px, 0.9fr) 1.1fr;
  gap: 12px;
  align-items: center;
}

.cura-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
}

.cura-mark {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  overflow: hidden;
  flex: none;
  display: block;
}
.cura-mark img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cura-brand strong {
  display: block;
  font-size: 22px;
  line-height: 1.1;
  color: #151515;
}

.cura-brand small {
  color: #8b93a7;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
}

.cura-copy h1,
.cura-why h2,
.cura-action h2,
.cura-experience h2,
.cura-steps h2,
.cura-cta h2 {
  margin: 0 0 14px;
  color: #151515;
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.cura-copy h1 { font-size: clamp(44px, 4.1vw, 62px); }
@media (max-width: 767px) {
  .cura-copy h1 { font-size: clamp(34px, 4.1vw, 62px); }
}
.cura-copy h1 em,
.cura-why h2 em,
.cura-action h2 em {
  font-style: normal;
  color: #f07a22;
}

.cura-copy h1 em { color: #ef4314; white-space: nowrap; }

.cura-copy > p,
.cura-why p,
.cura-action > div > p {
  margin: 0 0 22px;
  max-width: 460px;
  color: #5c6370;
  font-size: 18px;
  line-height: 1.55;
}

.cura-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }

.cura-book {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 52px;
  padding: 0 22px;
  border-radius: 999px;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
  font-weight: 700;
}

.cura-ghost {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 56px;
  padding: 0 20px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #f0e4d8;
  color: #151515;
  font-weight: 600;
}

.cura-ghost i {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #151515;
  color: #fff;
  font-size: 11px;
}

.cura-ghost.light {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.7);
  color: #fff;
}

.cura-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.cura-pills li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  background: transparent;
  color: #5c6370;
  font-size: 14px;
  font-weight: 600;
}

.cura-pills i { color: #f07a22; }

.cura-stage {
  position: relative;
  min-height: 640px;
  margin-right: -4vw;
  background: transparent;
  overflow: visible;
}

.stage-wash,
.stage-flame,
.stage-chat,
.stage-card {
  position: absolute;
  height: auto;
  pointer-events: none;
}

.stage-wash { display: none; }

.stage-flame {
  left: 8%;
  top: 0;
  width: 86%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  z-index: 1;
}

.stage-flame.back {
  left: 14%;
  top: 4%;
  width: 78%;
  height: 92%;
  object-fit: contain;
  opacity: 0.22;
  z-index: 0;
}

.stage-chat {
  left: 20%;
  top: 6%;
  width: 64%;
  z-index: 2;
  pointer-events: auto;
  filter: drop-shadow(0 28px 36px rgba(70, 18, 6, 0.28));
}

.stage-card {
  z-index: 4;
  width: 22%;
  filter: drop-shadow(0 16px 18px rgba(80, 24, 8, 0.18));
}
.stage-docs { top: 2%; left: 6%; width: 26%; }
.stage-notes { top: 24%; right: 4%; width: 24%; }
.stage-res { top: 36%; left: 2%; width: 22%; }

.cura-chip {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 16px;
  background: #fff;
  color: #151515;
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 12px 28px rgba(80, 20, 8, 0.16);
}

.cura-chip i { color: #d92d21; }
.chip-a { top: 28px; left: 22px; }
.chip-b { top: 78px; right: 18px; }
.chip-c { bottom: 36px; left: 28px; }

.cura-chat {
  position: absolute;
  z-index: 1;
  left: 14%;
  right: 8%;
  top: 36px;
  bottom: 28px;
  display: flex;
  flex-direction: column;
  background: #1c140f;
  color: #fff;
  border-radius: 22px;
  padding: 14px;
  box-shadow: 0 20px 40px rgba(40, 10, 0, 0.28);
  overflow: auto;
}

.cura-chat header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  font-size: 13px;
}

.cura-chat header span { color: rgba(255, 255, 255, 0.55); }

.cura-chat .ask,
.ask-window .ask {
  margin: 0 0 10px auto;
  max-width: 92%;
  padding: 10px 12px;
  border-radius: 14px;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
}

.cura-chat .lead,
.ask-window > p,
.src-label { margin: 0 0 8px; font-size: 13px; color: rgba(255,255,255,0.82); }

.src-rows { display: grid; gap: 6px; }
.src-rows span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.src-rows small { margin-left: auto; color: rgba(255,255,255,0.55); }

.chat-input {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  background: #2a221c;
  color: rgba(255,255,255,0.55);
  font-size: 12px;
}
.chat-input i {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 10px;
}

.cura-chat .answer {
  padding: 12px;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(240, 122, 34, 0.2), rgba(217, 45, 33, 0.08));
}

.cura-chat ol,
.mini-chat ol {
  margin: 0;
  padding-left: 18px;
  font-size: 13px;
  line-height: 1.45;
}

.sources { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.sources span {
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  font-size: 11px;
}

.cura-benefits { padding: 28px 0 12px; }

.cura-deploy {
  display: grid;
  grid-template-columns: minmax(240px, 0.72fr) 1.4fr;
  gap: 28px;
  align-items: center;
}

.cura-deploy h2 {
  margin: 0;
  max-width: 420px;
  color: #151515;
  font-size: clamp(32px, 3.2vw, 48px);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.cura-deploy-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.cura-deploy-grid article {
  min-height: 190px;
  padding: 18px 16px 16px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid #f3e6da;
}

.cura-deploy-grid span {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  color: #f07a22;
  font-size: 20px;
}

.cura-deploy-grid h3 {
  margin: 0 0 8px;
  color: #151515;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}

.cura-deploy-grid p {
  margin: 0;
  color: #6b7280;
  font-size: 14px;
  line-height: 1.45;
}

.cura-why { padding: 72px 0; }
.cura-why-grid { grid-template-columns: 0.72fr 1.28fr; gap: 20px; }
.cura-why h2 em { color: #ef4314; }

.cura-kicker {
  display: inline-block;
  margin-bottom: 12px;
  color: #f07a22;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cura-kicker.light { color: #ffb07a; }

.cura-why h2,
.cura-action h2 { font-size: clamp(36px, 4vw, 56px); }

.flow {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 340px;
}

.flow-art {
  position: relative;
  flex: 1;
  height: 320px;
}

.flow-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  object-view-box: inset(12% 0% 8% 30%);
  pointer-events: none;
}

.flow-node {
  position: absolute;
  z-index: 1;
  object-fit: contain;
}

.node-team {
  left: 0;
  top: 50%;
  width: 150px;
  height: 150px;
  transform: translateY(-50%);
  object-view-box: inset(18% 15% 0% 7%);
}

.node-notes {
  left: 34%;
  top: 58%;
  width: 146px;
  height: 146px;
  object-view-box: inset(16% 5% 9% 19%);
}

.node-end {
  position: relative;
  flex: none;
  width: 168px;
  height: 168px;
  margin-left: -78px;
  object-view-box: inset(3% 0% 2% 0%);
}

.node-docs {
  left: 22%;
  top: 0;
  display: grid;
  place-items: center;
  gap: 8px;
  width: 156px;
  height: 156px;
  padding: 18px 12px 14px;
  border-radius: 28px;
  background: #fff9f3;
  box-shadow: 0 16px 30px rgba(80, 40, 10, 0.08);
  color: #1c2430;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
}

.node-docs i { color: #f15a22; font-size: 36px; }

.cura-experience {
  background: #fff8ee;
  color: #fff;
  padding: 28px 0 48px;
}

.cura-experience .exp-panel {
  width: calc(100% - 48px);
  max-width: none;
  margin-inline: auto;
  padding: 36px 28px 28px;
  border-radius: 36px;
  background:
    linear-gradient(180deg, rgba(16, 12, 10, 0.92), rgba(12, 9, 8, 0.96)),
    url("../assets/cura-flame-bg.png") left center/cover;
}

.cura-experience h2 { color: #fff; font-size: clamp(36px, 4vw, 56px); }

.cura-exp-head {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  align-items: flex-start;
  margin-bottom: 22px;
}

.cura-exp-head p {
  max-width: 360px;
  margin: 18px 0 0;
  text-align: right;
  color: rgba(255, 255, 255, 0.72);
  font-size: 15px;
  line-height: 1.45;
}

.cura-exp-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 16px;
  align-items: stretch;
}

.exp-ask,
.exp-know,
.exp-team,
.exp-control {
  border-radius: 24px;
  padding: 22px;
}

.exp-ask {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: 8px;
  align-items: center;
  padding: 28px 12px 16px 28px;
  background: linear-gradient(180deg, rgba(18, 12, 10, 0.45), rgba(10, 8, 6, 0.62));
  border: 1px solid rgba(255,255,255,0.08);
}
.exp-know {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 0.62fr 1.38fr;
  align-items: center;
  gap: 8px;
  min-height: 250px;
  padding: 26px 8px 18px 26px;
  background:
    linear-gradient(120deg, #f07a22 0%, #e23b16 55%, #d92d21 100%);
  position: relative;
  z-index: 1;
}
.exp-team { background: #fff8f3; color: #151515; }
.exp-control { background: #1c1714; }

.exp-side {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-content: stretch;
}

.exp-know { grid-column: 1 / -1; }

.cura-experience h3 { margin: 0 0 10px; font-size: 30px; font-weight: 700; letter-spacing: -0.03em; line-height: 1.05; }
.ask-copy p { max-width: 250px; font-size: 15px; line-height: 1.5; }
.exp-know p { max-width: 230px; font-size: 15px; line-height: 1.45; }
.exp-control p,
.exp-team p { font-size: 14px; line-height: 1.45; }
.ask-copy p,
.exp-know p,
.exp-control p { color: rgba(255, 255, 255, 0.82); }
.exp-team { position: relative; z-index: 2; padding-top: 22px; }
.exp-team h3,
.exp-team p { color: #151515; }
.exp-shot { width: 100%; height: auto; display: block; }
.shot-chat { width: 100%; max-height: 520px; object-fit: contain; object-position: center bottom; }
.shot-orbit { margin: 0; height: 230px; width: 100%; object-fit: contain; object-position: right center; }
.shot-faces { width: 112%; max-width: none; margin: 28px 0 0 -6%; }
.shot-perms { margin-top: 14px; }
.checks { list-style: none; margin: 18px 0 0; padding: 0; }
.checks li {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 10px 0;
  color: #fff;
  font-size: 14px;
}
.checks li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
  display: grid;
  place-items: center;
}

.ask-window header,
.cura-chat header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.ask-window header b i { margin-right: 6px; color: #f07a22; }

.ask-window,
.takeaways {
  border-radius: 18px;
  background: #14110f;
  padding: 14px;
}
.takeaways { grid-column: 1; align-self: end; }
.takeaways b { display: flex; gap: 8px; align-items: center; }
.takeaways ul { margin: 10px 0 0; padding-left: 18px; color: rgba(255,255,255,0.8); }
.takeaways li::marker { color: #f07a22; }

.orbit {
  position: relative;
  height: 150px;
}
.orbit i {
  position: absolute;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #fff;
  color: #d92d21;
}
.orbit i:nth-child(1) { top: 8px; right: 28%; }
.orbit i:nth-child(2) { top: 46%; left: 8%; }
.orbit i:nth-child(3) { bottom: 8px; right: 18%; }
.orbit i:nth-child(5) { top: 18%; right: 6%; }
.orbit .hub {
  top: 42%;
  left: 42%;
  background: #1a120e;
  color: #fff;
  width: 54px;
  height: 54px;
  border-radius: 16px;
}

.faces { display: flex; margin-top: 16px; }
.faces span {
  width: 42px;
  height: 42px;
  margin-right: -8px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f3d2bf;
  color: #7a3418;
  font-weight: 700;
  border: 2px solid #fff;
}
.faces span:nth-child(2) { background: #d9e4f5; color: #243652; }
.faces span:nth-child(3) { background: #f7e3b2; color: #6a4a10; }
.faces span:nth-child(4) { background: #e7d4f2; color: #4d2d5c; }
.faces span:nth-child(5) { background: #f6c9c4; color: #6e2a24; }
.faces .add { background: #fff; color: #151515; border: 1px solid #eadfd4; }

.perms { list-style: none; margin: 14px 0 0; padding: 0; }
.perms li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
  font-size: 13px;
}
.perms b {
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  font-weight: 600;
}

.mini-chat {
  margin-top: 16px;
  padding: 12px;
  border-radius: 16px;
  background: #12100e;
}

.mini-chat > p {
  margin: 0 0 8px;
  color: #fff;
  font-size: 13px;
}

.know-icons { display: flex; gap: 10px; margin-top: 14px; font-size: 20px; }
.faces { display: flex; margin-top: 14px; }
.faces img {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #221c18;
  margin-right: -8px;
}

.cura-action { padding: 80px 0; }
.action-list { display: grid; gap: 12px; }
.action-list article {
  display: grid;
  grid-template-columns: 36px 1fr 16px;
  gap: 12px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 16px;
  background: #fff;
}
.action-list article > i { color: #f07a22; font-size: 18px; }
.action-list em { color: #c8c2bb; font-size: 12px; }
.action-list b { display: block; color: #151515; }
.action-list p { margin: 4px 0 0; color: #5c6370; font-size: 14px; }

.cura-player {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  min-height: 0;
  border-radius: 28px;
  overflow: hidden;
  background: #141414;
  box-shadow: 0 24px 50px rgba(40, 24, 10, 0.16);
  cursor: pointer;
}

.cura-video {
  display: block;
  width: 100%;
  height: auto;
  max-height: 520px;
  background: #111;
  pointer-events: none;
}

.player-play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
  font-size: 20px;
  box-shadow: 0 0 30px rgba(240, 122, 34, 0.45);
}

.demo-modal .modal-content {
  position: relative;
  background: #111;
  border: 0;
  border-radius: 20px;
  overflow: hidden;
}

.demo-modal video {
  display: block;
  width: 100%;
  max-height: 80vh;
  background: #000;
}

.book-modal .modal-content {
  position: relative;
  border: 0;
  border-radius: 28px;
  background: #fff8ee;
}

.book-modal .modal-body { padding: 32px 28px 28px; }
.book-modal h3 { margin: 0 0 18px; color: #151515; font-size: 32px; letter-spacing: -0.03em; }
.book-modal form { display: grid; gap: 12px; }
.book-modal label { display: grid; gap: 6px; color: #151515; font-size: 14px; font-weight: 700; }
.book-modal .form-control {
  height: 48px;
  border: 1px solid #f0e4d8;
  border-radius: 14px;
  background: #fff;
  color: #151515;
}
.book-modal .cura-book { justify-content: center; margin-top: 6px; border: 0; }

.demo-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #151515;
}

.progress-pill {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border-radius: 14px;
  background: #fff;
  color: #151515;
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}
.progress-pill i { color: #f07a22; }

.player-side {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 18px 16px;
  background: #101010;
  font-size: 13px;
  color: rgba(255,255,255,0.72);
}
.player-side b { color: #fff; margin-bottom: 8px; }
.player-side .push { margin-top: auto; }

.player-main {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  padding: 56px 22px 18px;
}
.player-main > p { margin: 0; font-size: 22px; font-weight: 700; max-width: 280px; }
.player-main > a {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  align-self: center;
  background: linear-gradient(90deg, #f07a22, #d92d21);
  color: #fff;
  font-size: 18px;
  box-shadow: 0 0 30px rgba(240, 122, 34, 0.45);
}
.player-main .src-rows { grid-auto-flow: column; justify-content: start; }
.player-main small { position: absolute; right: 16px; bottom: 14px; color: rgba(255,255,255,0.6); }

.cura-steps { padding: 28px 0 72px; }
.cura-steps h2 { font-size: clamp(36px, 4vw, 56px); margin: 0; max-width: 760px; }
.cura-steps-head {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  align-items: flex-end;
  margin: 8px 0 28px;
}
.cura-steps-head p { max-width: 320px; margin: 0 0 8px; text-align: right; color: #8b93a7; font-size: 15px; line-height: 1.5; }

.step-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.step-row article {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-height: 280px;
  padding: 28px 24px 26px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid #f3e6da;
}

.step-row b {
  margin: 0;
  background: none;
  color: #e45712;
  -webkit-text-stroke: 0;
  font-size: 42px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.04em;
}
.step-row h3 { margin: 8px 0 0; font-size: 20px; font-weight: 700; color: #151515; line-height: 1.25; }
.step-row p { margin: 0; color: #6b7280; font-size: 15px; line-height: 1.5; }

.step-row article.is-dark {
  background: var(--grad);
  border-color: transparent;
}
.step-row article.is-dark b { color: #fff; }
.step-row article.is-dark h3 { color: #fff; }
.step-row article.is-dark p { color: rgba(255, 255, 255, 0.9); }

.cura-cowork { padding: 20px 0 72px; }
.cura-cowork h2 { font-size: clamp(36px, 4vw, 56px); margin: 0; max-width: 640px; }
.cura-cowork h2 em { color: #ef4314; font-style: normal; }
.cura-cowork .cura-steps-head p { max-width: 380px; }

.cowork-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  gap: 12px;
  align-items: stretch;
}

.cowork-row article {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-height: 220px;
  padding: 22px 20px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid #f3e6da;
}

.cowork-row small {
  color: #f07a22;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.cowork-row h3 {
  margin: 4px 0 0;
  color: #151515;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
}

.cowork-row p { margin: 0; color: #6b7280; font-size: 15px; line-height: 1.5; }

.cowork-row article.is-dark {
  background: #1c120e;
  border-color: #1c120e;
}
.cowork-row article.is-dark small { color: #ffb07a; }
.cowork-row article.is-dark h3 { color: #fff; }
.cowork-row article.is-dark p { color: rgba(255, 255, 255, 0.78); }

.cowork-arrow {
  display: grid;
  place-items: center;
  color: #e45712;
  font-size: 16px;
}

.roster-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 28px;
}
.roster-head h2 { margin: 0; font-size: clamp(36px, 4vw, 56px); }
.roster-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.roster-filters button {
  border: 1px solid #eadfd4;
  background: #fff;
  color: #151515;
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: 600;
}
.roster-filters button.is-on {
  background: #1c120e;
  border-color: #1c120e;
  color: #fff;
}
.roster-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.roster-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-height: 320px;
  padding: 20px 18px 18px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid #f3e6da;
}
.roster-card.is-hidden { display: none; }
.roster-top { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.roster-ico {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #fff1e6;
  color: #e45712;
}
.roster-top small {
  color: #8b93a7;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.roster-card h3 { margin: 8px 0 0; font-size: 20px; font-weight: 700; color: #151515; }
.roster-card p { margin: 0; color: #6b7280; font-size: 14px; line-height: 1.45; }
.roster-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; }
.roster-tags span {
  padding: 6px 10px;
  border-radius: 8px;
  background: #f6f1ea;
  color: #5c6370;
  font-size: 12px;
  font-weight: 600;
}
.roster-hire {
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: none;
  color: #e45712;
  font-weight: 700;
  font-size: 14px;
}
.roster-card.is-dark { background: #1c120e; border-color: #1c120e; }
.roster-card.is-dark h3 { color: #fff; }
.roster-card.is-dark p,
.roster-card.is-dark .roster-top small { color: rgba(255, 255, 255, 0.72); }
.roster-card.is-dark .roster-ico { background: rgba(255, 255, 255, 0.08); color: #ffb07a; }
.roster-card.is-dark .roster-tags span { background: rgba(255, 255, 255, 0.08); color: rgba(255, 255, 255, 0.82); }
.roster-note {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 18px;
  padding: 16px 18px;
  border: 1px dashed #eadfd4;
  border-radius: 18px;
}
.roster-note p { margin: 0; color: #6b7280; }
.roster-custom {
  flex: none;
  border: 0;
  border-radius: 999px;
  padding: 10px 16px;
  background: #fff;
  color: #151515;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(40, 24, 10, 0.06);
}

.cura-models { padding: 12px 0 28px; }
.model-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.model-card {
  padding: 32px 28px 28px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid #f3e6da;
}
.model-card h2 {
  margin: 0 0 12px;
  max-width: 460px;
  color: #151515;
  font-size: clamp(28px, 2.6vw, 40px);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.1;
}
.model-card > p { margin: 0 0 22px; color: #6b7280; font-size: 15px; line-height: 1.55; }
.model-card ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.model-card li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 14px;
  background: #faf6f1;
}
.model-card li b { color: #151515; font-size: 15px; }
.model-card li span { color: #8b93a7; font-size: 13px; text-align: right; }
.model-card.is-dark {
  background: #1c120e;
  border-color: #1c120e;
}
.model-card.is-dark h2 { color: #fff; }
.model-card.is-dark > p { color: rgba(255, 255, 255, 0.74); }
.model-chips {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.model-chips span {
  display: grid;
  place-items: center;
  min-height: 48px;
  padding: 10px 8px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.cura-industry { padding: 48px 0 20px; }
.cura-industry h2 { margin: 0; font-size: clamp(36px, 4vw, 56px); }
.industry-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid #eadfd4;
  border-left: 1px solid #eadfd4;
}
.industry-grid article {
  padding: 22px 20px 20px;
  border-right: 1px solid #eadfd4;
  border-bottom: 1px solid #eadfd4;
  background: #fff;
}
.industry-grid h3 { margin: 0 0 6px; font-size: 16px; font-weight: 700; color: #151515; }
.industry-grid p { margin: 0; color: #6b7280; font-size: 14px; line-height: 1.45; }

.cura-govern { padding: 56px 0 28px; }
.govern-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 40px;
  align-items: start;
}
.cura-govern h2 {
  margin: 0;
  max-width: 420px;
  font-size: clamp(36px, 4vw, 56px);
  letter-spacing: -0.04em;
  line-height: 1.05;
}
.govern-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 32px;
}
.govern-list h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; color: #151515; }
.govern-list p { margin: 0; color: #6b7280; font-size: 15px; line-height: 1.5; }
.govern-list article { padding-bottom: 18px; border-bottom: 1px solid #eadfd4; }

.cura-cta {
  margin: 0 12px 28px;
  padding: 72px 20px;
  border-radius: 36px;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(90, 24, 0, 0.28), rgba(40, 8, 0, 0.45)),
    url("../assets/cura-flame-bg.png") center/cover;
  color: #fff;
}

.cura-cta .shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  text-align: left;
}
.cura-cta h2 { color: #fff; font-size: clamp(36px, 4vw, 52px); max-width: 560px; margin: 0 0 12px; }
.cura-cta h2 em { font-style: italic; color: #fff; }
.cura-cta p { margin: 0; max-width: 460px; color: rgba(255, 255, 255, 0.88); }
.cura-cta-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: none;
  width: 220px;
}
.cura-cta-actions button {
  height: 48px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 15px;
}
.cura-cta-actions .cta-solid { background: #fff; color: #151515; border: 0; }
.cura-cta-actions .cta-line {
  background: transparent;
  color: #fff;
  border: 1.5px solid rgba(255, 255, 255, 0.85);
}

@media (max-width: 1200px) {
  .step-row { grid-template-columns: repeat(2, 1fr); }
  .cura-deploy { grid-template-columns: 1fr; }
  .cura-deploy-grid { grid-template-columns: repeat(2, 1fr); }
  .cowork-row { grid-template-columns: 1fr; }
  .cowork-arrow i { transform: rotate(90deg); }
  .roster-grid { grid-template-columns: repeat(2, 1fr); }
  .roster-head,
  .roster-note { flex-direction: column; align-items: flex-start; }
  .model-grid,
  .govern-grid { grid-template-columns: 1fr; }
  .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .cura-cta .shell { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 991px) {
  .cura-hero-grid,
  .cura-why-grid,
  .cura-action-grid,
  .cura-exp-grid,
  .step-row,
  .cura-deploy-grid,
  .roster-grid,
  .industry-grid,
  .govern-list,
  .exp-side { grid-template-columns: 1fr; }
  .cura-stage { min-height: 560px; margin-right: 0; }
  .stage-chat { left: 18%; width: 64%; top: 8%; }
  .stage-flame { left: 4%; width: 92%; }
  .stage-card { width: 26%; }
  .stage-notes { right: 0; top: 28%; }
  .stage-docs { left: 2%; top: 2%; }
  .stage-res { left: 0; top: 42%; }
  .flow { min-height: 300px; }
  .node-docs { width: 120px; min-height: 110px; font-size: 13px; }
  .cura-experience .exp-panel { width: calc(100% - 24px); padding: 24px 16px; }
  .cura-exp-head p { text-align: left; margin-top: 0; }
  .cura-steps-head { flex-direction: column; align-items: flex-start; }
  .cura-steps-head p { text-align: left; max-width: none; }
  .cura-player { grid-template-columns: 1fr; }
  .exp-ask { grid-template-columns: 1fr; }
}

.page-voco { background: #fff8ee; }
.voco-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #f07a22;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.voco-kicker.light { color: #ffb07a; }
.page-voco h2 {
  margin: 0;
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #151515;
}
.voco-lead { max-width: 560px; margin: 14px 0 0; color: #5c6370; font-size: 17px; }

.voco-hero {
  position: relative;
  overflow: hidden;
  padding: 128px 0 48px;
  color: #151515;
  background: #fff6ee;
}
.voco-hero::before {
  content: "";
  position: absolute;
  inset: 40px 0 80px 34%;
  background: url("../assets/cura 3.png") right center / contain no-repeat;
  pointer-events: none;
}
.voco-stage { position: relative; min-height: 460px; }
.voco-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(340px, 0.86fr) 1.14fr;
  gap: 28px;
  align-items: center;
}
.voco-copy .voco-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; }
.voco-mark {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #1a120e;
  color: #f07a22;
  font-size: 18px;
}
.voco-copy .voco-brand strong { display: block; font-size: 18px; letter-spacing: 0.04em; line-height: 1; }
.voco-copy .voco-brand small { color: #f07a22; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.voco-copy h1 {
  margin: 0;
  color: #151515;
  font-size: clamp(48px, 4.4vw, 68px);
  font-weight: 700;
  letter-spacing: -0.045em;
  line-height: 0.98;
}
.voco-copy h1 em { color: #ef4314; font-style: normal; }
.voco-copy p { max-width: 420px; margin: 18px 0 0; color: #5c6370; font-size: 18px; line-height: 1.45; }
.voco-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.voco-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 52px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
}
.voco-btn.light { background: #fff; color: #d92d21; }
.voco-btn.trial { background: linear-gradient(90deg, #f07a22, #e23b16); color: #fff; }
.voco-btn.demo { background: #fff; color: #151515; border: 1px solid #efe4d8; }
.voco-btn.demo i {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #1a120e;
  color: #fff;
  font-size: 10px;
}
.voco-btn.solid { width: 100%; background: linear-gradient(90deg, #f07a22, #d92d21); color: #fff; }
.voco-cta .voco-brand img { width: 92px; height: 36px; object-fit: contain; filter: brightness(0) invert(1); }

.voco-app {
  border-radius: 28px;
  background: #161311;
  color: #fff;
  box-shadow: 0 30px 70px rgba(60, 16, 0, 0.18);
  overflow: hidden;
}
.app-top {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px 8px;
}
.app-logo { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.app-logo i { color: #f07a22; }
.app-wave { display: flex; align-items: center; gap: 2px; height: 28px; flex: 1; }
.app-wave i { width: 2px; border-radius: 2px; background: #f07a22; display: block; }
.app-wave i:nth-child(3n) { height: 8px; }
.app-wave i:nth-child(3n+1) { height: 16px; }
.app-wave i:nth-child(3n+2) { height: 24px; }
.app-pause {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #2a2420;
  color: #fff;
  font-size: 11px;
}
.app-tabs { display: flex; gap: 16px; padding: 4px 18px 12px; color: rgba(255,255,255,0.45); font-size: 13px; font-weight: 600; }
.app-tabs b { color: #fff; font-weight: 700; }
.app-lines { padding: 6px 18px 22px; }
.app-lines p {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 4px 10px;
  margin: 0 0 14px;
  color: rgba(255,255,255,0.88);
  font-size: 14px;
  line-height: 1.4;
}
.app-lines small { grid-column: 2; color: rgba(255,255,255,0.55); font-size: 12px; }
.app-lines small b { color: #fff; }
.av {
  grid-row: span 2;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
}
.av.a1 { background: #e25b3a; }
.av.a2 { background: #6d4aff; }
.av.a3 { background: #1f8f8a; }
.app-side {
  position: absolute;
  right: 0;
  bottom: 28px;
  width: 230px;
  padding: 16px;
  border-radius: 18px;
  background: #fffaf6;
  color: #151515;
  box-shadow: 0 16px 40px rgba(40, 24, 10, 0.16);
}
.app-side h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 15px; }
.app-side h3 i {
  width: 26px;
  height: 26px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 12px;
}
.app-side ul { margin: 0; padding: 0; list-style: none; }
.app-side li { display: flex; gap: 8px; margin-top: 8px; font-size: 13px; font-weight: 600; }
.app-side li::before { content: ""; width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; background: #f07a22; flex: none; }

.voco-pills {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 28px;
}
.voco-pills article {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(40, 24, 10, 0.05);
}
.voco-pills i {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
}
.voco-pills b { display: block; margin-bottom: 2px; font-size: 15px; }
.voco-pills span { color: #6b7280; font-size: 13px; }

.voco-dynamic { padding: 36px 0 88px; }
.voco-dynamic-grid { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 40px; align-items: center; }
.meet-stage { position: relative; min-height: 520px; margin: 28px 24px 36px 48px; }
.meet-dash { width: 100%; height: auto; display: block; position: relative; z-index: 1; }
.meet-wave, .meet-check, .meet-bot { position: absolute; height: auto; pointer-events: none; }
.meet-wave { left: -54px; top: 86px; width: 132px; z-index: 3; }
.meet-check { right: 6px; top: -10px; width: 142px; z-index: 3; }
.meet-bot { left: -92px; bottom: -4px; width: 248px; z-index: 4; clip-path: inset(0 6.3% 0 0); }
.meet-badge, .meet-bubble {
  position: absolute;
  z-index: 3;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(180deg, #ff8a3d, #ef4314);
  color: #fff;
  box-shadow: 0 12px 30px rgba(239, 67, 20, 0.28);
}
.meet-badge { left: 0; top: 78px; width: 92px; height: 48px; gap: 3px; display: flex; align-items: center; padding: 0 12px; }
.meet-badge i { width: 3px; border-radius: 3px; background: #fff; display: block; }
.meet-badge i:nth-child(odd) { height: 12px; }
.meet-badge i:nth-child(even) { height: 22px; }
.meet-bubble { right: 18px; top: 8px; width: 54px; height: 46px; background: #fff4ea; color: #f07a22; border-radius: 16px 16px 16px 6px; }
.meet-app {
  display: grid;
  grid-template-columns: 150px 1fr;
  min-height: 460px;
  border-radius: 28px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 30px 70px rgba(40, 24, 10, 0.12);
}
.meet-app aside { background: #1a120e; color: #fff; padding: 18px 14px; }
.meet-app aside strong { display: flex; align-items: center; gap: 8px; margin-bottom: 22px; }
.meet-app aside span { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; color: rgba(255,255,255,0.72); font-size: 13px; }
.meet-main { padding: 16px 16px 8px; }
.meet-search, .meet-player { height: 36px; margin-bottom: 12px; border-radius: 10px; background: #f6f1eb; color: #8b93a7; font-size: 13px; display: flex; align-items: center; padding: 0 12px; }
.meet-title { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; }
.meet-title b { display: block; font-size: 20px; }
.meet-title small { color: #8b93a7; }
.meet-title span { padding: 6px 10px; border-radius: 10px; background: #fff4ea; color: #f07a22; font-size: 13px; font-weight: 700; }
.meet-player { justify-content: space-between; }
.meet-player i { color: #f07a22; }
.meet-player em { flex: 1; height: 3px; margin: 0 10px; border-radius: 99px; background: linear-gradient(90deg, #f07a22 35%, #f0e4d8 35%); }
.meet-tabs { display: flex; gap: 16px; margin-bottom: 8px; color: #8b93a7; font-size: 13px; font-weight: 700; }
.meet-tabs b { color: #151515; border-bottom: 2px solid #f07a22; padding-bottom: 6px; }
.meet-main ul { margin: 0; padding: 0; list-style: none; }
.meet-main li { display: flex; gap: 10px; padding: 10px 0; border-top: 1px solid #f3e6da; }
.meet-main em { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: #e25b3a; color: #fff; font-style: normal; font-size: 11px; font-weight: 700; }
.meet-main em.mk { background: #6d4aff; }
.meet-main em.el { background: #1f8f8a; }
.meet-main li b, .meet-main li small { display: block; }
.meet-main li small, .meet-main li p { margin: 0; color: #6b7280; font-size: 13px; }
.voco-bot { position: absolute; left: 8px; bottom: 0; width: 92px; z-index: 4; }
.bot-antenna { display: block; width: 8px; height: 16px; margin: 0 auto; background: #f07a22; border-radius: 8px 8px 0 0; }
.bot-face, .bot-body { display: grid; place-items: center; margin: 0 auto; background: #fff; border: 3px solid #f3e0d2; }
.bot-face { position: relative; width: 62px; height: 48px; border-radius: 22px; }
.bot-face i { position: absolute; top: 16px; width: 8px; height: 4px; border-radius: 0 0 8px 8px; border: 2px solid #1a120e; border-top: 0; }
.bot-face i:first-child { left: 14px; }
.bot-face i:nth-child(2) { right: 14px; }
.bot-face b { position: absolute; bottom: 10px; width: 16px; height: 8px; border-radius: 0 0 10px 10px; background: #1a120e; }
.bot-body { width: 54px; height: 48px; margin-top: -6px; border-radius: 18px; color: #f07a22; font-size: 16px; }
.dynamic-copy { position: relative; }
.dynamic-copy h2 em { color: #ef4314; font-style: normal; }
.dynamic-copy ol { margin: 22px 0; padding: 0; list-style: none; display: grid; gap: 16px; }
.dynamic-copy li { display: flex; gap: 12px; }
.dynamic-copy li > b {
  flex: none;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
  font-size: 16px;
}
.dynamic-copy strong { display: block; margin-bottom: 4px; }
.dynamic-copy li span { color: #6b7280; font-size: 14px; }
.dynamic-plane { position: absolute; right: -12px; bottom: -36px; width: 128px; height: auto; pointer-events: none; }

.voco-how { padding: 72px 0 48px; }
.voco-how-grid {
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 28px;
  align-items: center;
}
.voco-how h2 em { color: #ef4314; font-style: normal; }
.voco-how .voco-lead { max-width: 340px; }
.voco-flow {
  display: flex;
  align-items: center;
  gap: 10px;
}
.voco-flow > .fa-arrow-right { color: #f07a22; font-size: 14px; }
.voco-flow article {
  flex: 1;
  min-width: 0;
  padding: 14px 14px 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(40, 24, 10, 0.06);
}
.flow-art {
  display: grid;
  place-items: center;
  height: 92px;
  margin-bottom: 12px;
  border-radius: 14px;
  background: #fff8f3;
}
.flow-art.wave { display: flex; align-items: center; gap: 3px; }
.flow-art.wave i { width: 3px; border-radius: 3px; background: #f07a22; display: block; }
.flow-art.wave i:nth-child(odd) { height: 18px; }
.flow-art.wave i:nth-child(3n) { height: 36px; }
.flow-art.wave i:nth-child(4n) { height: 52px; }
.flow-no {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  margin-bottom: 8px;
  border-radius: 50%;
  background: #f07a22;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
}
.voco-flow article b { display: block; margin-bottom: 4px; font-size: 16px; }
.voco-flow article > span:last-child { color: #6b7280; font-size: 13px; line-height: 1.4; }
.flow-art.speakers, .flow-art.checks { display: flex; flex-direction: column; justify-content: center; gap: 8px; padding: 12px; }
.flow-art small { display: flex; align-items: center; gap: 6px; }
.flow-art em {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 8px;
  font-style: normal;
  font-weight: 700;
}
.flow-art .a1 { background: #e25b3a; }
.flow-art .a2 { background: #6d4aff; }
.flow-art .a3 { background: #1f8f8a; }
.flow-art s { height: 6px; border-radius: 99px; background: #f0e4d8; text-decoration: none; }
.flow-art.speakers s:first-of-type { width: 42%; }
.flow-art.speakers s:last-of-type { width: 28%; }
.flow-art.checks i {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
}
.flow-art.checks s { width: 70%; }

.voco-features {
  padding: 72px 0;
  background:
    linear-gradient(180deg, rgba(28, 8, 2, 0.78), rgba(18, 6, 2, 0.86)),
    url("../assets/cura-flame-bg.png") center / cover;
  color: #fff;
}
.voco-feat-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.voco-features h2 { color: #fff; margin: 0; }
.voco-feat-head p { max-width: 280px; margin: 0; text-align: right; color: rgba(255,255,255,0.78); }
.voco-feature-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 14px; }
.feat-said, .feat-borders, .insight-pair article {
  padding: 22px;
  border-radius: 24px;
  background: rgba(16, 10, 8, 0.72);
  border: 1px solid rgba(255,255,255,0.08);
}
.voco-feature-grid h3 { margin: 0 0 8px; font-size: 26px; font-weight: 700; }
.feat-said > p, .feat-borders > p, .insight-pair p { margin: 0 0 14px; color: rgba(255,255,255,0.72); font-size: 14px; }
.said-panel { padding: 12px; border-radius: 16px; background: rgba(0,0,0,0.28); }
.said-tools { display: flex; justify-content: space-between; margin-bottom: 8px; color: rgba(255,255,255,0.7); }
.said-tools span { display: flex; gap: 10px; }
.speaker-list { margin: 0; padding: 0; list-style: none; }
.speaker-list li {
  display: grid;
  grid-template-columns: 46px 28px 72px 1fr;
  gap: 8px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
  font-size: 13px;
}
.speaker-list b { color: rgba(255,255,255,0.55); font-weight: 600; }
.speaker-list em {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  font-style: normal;
  font-size: 10px;
  font-weight: 700;
}
.speaker-list .a1 { background: #e25b3a; }
.speaker-list .a2 { background: #6d4aff; }
.speaker-list .a3 { background: #7d8cff; }
.feat-side { display: grid; gap: 14px; }
.feat-borders {
  background:
    linear-gradient(135deg, rgba(240, 122, 34, 0.92), rgba(217, 45, 33, 0.88)),
    url("../assets/cura-flame-bg.png") center / cover;
}
.lang-switch { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.lang-switch span {
  flex: 1;
  display: flex;
  justify-content: space-between;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,0.18);
  font-weight: 700;
}
.lang-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lang-pair div { padding: 14px; border-radius: 14px; background: rgba(255,255,255,0.92); color: #151515; font-weight: 700; }
.insight-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.insight-pair article { background: #fffaf6; color: #151515; }
.insight-pair h3 { font-size: 20px; }
.insight-pair p { color: #6b7280; }
.insight-pair ul { margin: 0; padding: 0; list-style: none; }
.insight-pair li { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; font-weight: 600; }
.insight-pair li::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #f07a22; }
.steps-card li::before { display: none; }
.steps-card i.fa-check { color: #f07a22; }
.steps-card i.fa-square { color: #c8c2bb; }

.voco-work { padding: 84px 0; }
.voco-work-head { max-width: 640px; margin-bottom: 8px; }
.voco-work-head p { max-width: 460px; margin: 12px 0 0; color: #5c6370; font-size: 17px; }
.voco-work-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 40px; align-items: center; }
.voco-devices img {
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(0 28px 50px rgba(60, 24, 8, 0.16));
}
.voco-phone, .voco-laptop {
  background: #1a120e;
  color: #fff;
  border-radius: 24px;
  box-shadow: 0 20px 50px rgba(40, 24, 10, 0.16);
}
.voco-phone {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 180px;
  min-height: 280px;
  padding: 22px 16px;
  z-index: 2;
}
.voco-phone small { color: #ffb07a; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.voco-phone strong { display: block; margin: 18px 0 8px; font-size: 28px; }
.voco-laptop { margin-left: 110px; padding: 18px 18px 8px 90px; min-height: 250px; }
.voco-laptop p { margin: 0 0 12px; color: rgba(255,255,255,0.86); font-size: 14px; line-height: 1.45; }
.lap-bar { display: flex; justify-content: space-between; margin-bottom: 16px; font-size: 14px; }
.lap-bar i { color: #ffb07a; font-style: normal; }
.voco-laptop em { color: #ffb07a; font-style: normal; font-weight: 700; margin-right: 6px; }
.voco-points { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 14px; }
.voco-points li {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(40, 24, 10, 0.06);
}
.voco-points i {
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
  font-size: 18px;
}
.voco-points b { display: block; margin-bottom: 4px; font-size: 18px; }
.voco-points span { color: #5c6370; }

.voco-teams {
  padding: 72px 0;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(90, 22, 4, 0.55), rgba(40, 10, 2, 0.72)),
    url("../assets/cura-flame-bg.png") center / cover;
}
.voco-teams h2 { color: #fff; margin-bottom: 28px; }
.voco-team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.voco-team-grid article {
  padding: 22px;
  border-radius: 22px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.12);
}
.voco-team-grid i { color: #fff; font-size: 22px; }
.voco-team-grid h3 { margin: 16px 0 8px; font-size: 18px; font-weight: 700; }
.voco-team-grid p { margin: 0; color: rgba(255,255,255,0.82); font-size: 14px; }

.voco-start { padding: 72px 0; }
.voco-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 28px; }
.voco-steps article { padding: 22px; border-radius: 22px; background: #fff; border: 1px solid #f3e6da; }
.voco-steps b {
  display: block;
  margin-bottom: 12px;
  color: transparent;
  -webkit-text-stroke: 1.5px #f07a22;
  font-size: 40px;
  line-height: 1;
  font-weight: 500;
}
.voco-steps h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; }
.voco-steps p { margin: 0; color: #5c6370; font-size: 14px; }

.voco-cta {
  margin: 0 0 28px;
  padding: 64px 0;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(80, 18, 4, 0.78), rgba(180, 48, 8, 0.35)),
    url("../assets/cura-flame-bg.png") center / cover;
}
.voco-cta h2, .voco-cta p { color: #fff; }
.voco-cta p { max-width: 460px; margin: 14px 0 22px; color: rgba(255,255,255,0.88); }
.voco-cta-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 28px; align-items: center; }
.voco-cta form {
  display: grid;
  gap: 12px;
  padding: 24px;
  border-radius: 24px;
  background: rgba(255, 248, 238, 0.96);
  color: #151515;
}
.voco-cta h3 { margin: 0 0 4px; font-size: 28px; font-weight: 700; }
.voco-cta label { display: grid; gap: 6px; font-size: 14px; font-weight: 700; }
.voco-cta .form-control { height: 48px; border-radius: 14px; border: 1px solid #f0e4d8; background: #fff; }

@media (max-width: 991px) {
  .voco-hero-grid,
  .voco-feature-grid,
  .feat-side,
  .insight-pair,
  .lang-pair,
  .voco-work-grid,
  .voco-cta-grid,
  .voco-dynamic-grid,
  .voco-how-grid,
  .voco-flow { grid-template-columns: 1fr; display: grid; }
  .voco-pills { grid-template-columns: 1fr; }
  .app-side { position: static; width: auto; margin-top: 12px; }
  .voco-team-grid, .voco-steps { grid-template-columns: 1fr 1fr; }
  .voco-laptop { margin-left: 0; padding: 18px; }
  .voco-phone { position: relative; width: 100%; min-height: 0; margin-bottom: 12px; }
  .speaker-list li { grid-template-columns: 48px 1fr; }
  .speaker-list em { grid-column: 2; }
}

.page-volt { background: #fff8ee; color: #151515; }
.page-volt h2 { margin: 0; font-size: clamp(36px, 4vw, 56px); font-weight: 700; letter-spacing: -0.04em; line-height: 1.05; }
.page-volt h2 em { color: #ef4314; font-style: normal; }
.volt-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.volt-brand img { width: 54px; height: 54px; object-fit: contain; }
.volt-brand strong { display: block; font-size: 22px; letter-spacing: 0.06em; line-height: 1; }
.volt-brand small { color: #f07a22; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.volt-hero { position: relative; overflow: hidden; padding: 128px 0 36px; }
.volt-stage {
  position: relative;
  height: auto;
  background: transparent;
}
.volt-banner { width: 100%; height: auto; display: block; }
.stage-wave, .stage-glow, .stage-truck, .stage-worker, .stage-dash { position: absolute; pointer-events: none; }
.stage-wave { right: -8%; bottom: -30px; width: 88%; height: auto; z-index: 0; }
.stage-glow { right: 0; bottom: 10%; width: 55%; height: auto; z-index: 0; }
.stage-truck { right: 0; bottom: 0; height: 86%; width: auto; max-width: 100%; z-index: 1; }
.stage-worker { left: 0; bottom: 0; height: 94%; width: auto; z-index: 2; }
.stage-dash { right: 4px; top: 12px; width: 46%; height: auto; z-index: 3; }
.volt-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 0.78fr 1.22fr; gap: 12px; align-items: center; }
.volt-checks li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
}
.volt-checks { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.volt-hero h1 { margin: 0; font-size: clamp(52px, 5vw, 76px); font-weight: 700; letter-spacing: -0.045em; line-height: 0.96; }
.volt-hero h1 em { color: #ef4314; font-style: normal; }
.volt-hero p { max-width: 440px; margin: 16px 0 0; color: #5c6370; font-size: 18px; }
.volt-checks { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.volt-checks li { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.volt-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.volt-pills { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 22px; }
.volt-pills img, .volt-cards img, .volt-reasons img { width: 54px; height: 54px; object-fit: contain; }
.volt-steps img { width: 100%; height: 148px; object-fit: cover; object-position: center; border-radius: 14px; display: block; }
.volt-steps strong, .volt-steps span { display: block; }
.solution-laptop, .volt-compare img { width: 100%; height: auto; display: block; }
.crop-cap { object-fit: cover; object-view-box: inset(0 0 16% 0); height: 160px; }
.volt-compare img { border-radius: 16px; margin-bottom: 12px; }
.volt-pills article, .volt-reasons article {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40, 24, 10, 0.05);
}
.volt-pills i, .volt-reasons i, .volt-steps > li > i, .volt-cards i {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
}
.volt-pills b, .volt-reasons b, .volt-issues b { display: block; }
.volt-pills span, .volt-reasons span, .volt-issues span, .volt-cards p, .volt-steps span { color: #5c6370; font-size: 14px; }
.volt-ready {
  margin: 28px 0;
  padding: 64px 0;
  color: #fff;
  background: #1a120e url("../assets/cura-flame-bg.png") center / cover;
}
.volt-problem {
  position: relative;
  overflow: hidden;
  margin: 28px 0;
  padding: 72px 0 56px;
  color: #fff;
  background: #070707;
}
.problem-flame {
  position: absolute;
  right: -2%;
  bottom: -8%;
  width: min(460px, 38%);
  height: 160px;
  object-fit: cover;
  object-position: right bottom;
  pointer-events: none;
  opacity: 1;
  z-index: 3;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 55%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 55%);
}
.problem-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 48px;
  align-items: center;
}
.problem-copy h2 { font-size: clamp(40px, 3.6vw, 52px); letter-spacing: -0.035em; line-height: 1.02; }
.volt-problem h2, .volt-ready h2, .volt-problem p, .volt-ready p { color: #fff; }
.volt-problem h2 em { color: #ff4d12; }
.volt-ready h2 em { color: #ffd0b0; }
.volt-problem .voco-kicker.light { color: #ff6a1a; letter-spacing: 0.16em; font-size: 12px; }
.volt-problem p, .volt-ready p { max-width: 460px; margin-top: 16px; color: rgba(255,255,255,0.72); font-size: 15px; line-height: 1.55; }
.problem-points {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 8px 8px;
  border-radius: 22px;
  background: rgba(18, 10, 6, 0.55);
  border: 1px solid rgba(255, 122, 40, 0.72);
  box-shadow: 0 18px 40px rgba(0,0,0,0.28);
}
.problem-points article {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 16px;
}
.problem-points article + article { border-top: 1px solid rgba(255,255,255,0.08); }
.problem-ico {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: rgba(255, 106, 26, 0.12);
  color: #ff6a1a;
  font-size: 18px;
}
.problem-points b { display: block; font-size: 16px; font-weight: 600; line-height: 1.25; letter-spacing: -0.02em; }
.problem-visual { display: none; }
.problem-cargo {
  position: absolute;
  right: 4%;
  top: 18px;
  width: 70%;
  height: 78%;
  object-fit: cover;
  object-position: 42% 45%;
  filter: grayscale(1) contrast(1.12) brightness(0.78);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 82%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 82%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
  mask-composite: intersect;
}
.problem-worker {
  position: absolute;
  left: -2%;
  bottom: 0;
  width: 42%;
  height: auto;
  max-width: none;
  z-index: 2;
}
.problem-scan { position: absolute; left: 60%; top: 18%; width: 15%; height: 30%; z-index: 3; pointer-events: none; }
.problem-scan span {
  position: absolute;
  border: 1.5px solid rgba(255, 106, 26, 0.85);
  box-shadow: 0 0 0 1px rgba(255, 80, 10, 0.15);
}
.problem-scan span:nth-child(1) { left: 0; top: 8%; width: 46%; height: 78%; }
.problem-scan span:nth-child(2) { left: 42%; top: 0; width: 34%; height: 62%; }
.problem-scan span:nth-child(3) { left: 48%; top: 48%; width: 40%; height: 46%; }
.manual-card {
  position: absolute;
  right: 0;
  top: 46px;
  z-index: 4;
  width: 228px;
  padding: 16px 16px 14px;
  border-radius: 18px;
  background: rgba(18, 10, 6, 0.42);
  border: 1px solid rgba(255, 122, 40, 0.72);
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  backdrop-filter: blur(6px);
}
.manual-card h3 { margin: 0 0 12px; font-size: 16px; font-weight: 600; letter-spacing: -0.02em; }
.manual-card ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.manual-card li { display: flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 500; }
.manual-card li::before {
  content: "\f00d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #e23b2f;
  color: #fff;
  font-size: 9px;
  flex: none;
}
.volt-split { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 36px; align-items: center; }
.volt-solution, .volt-flow, .volt-who, .volt-keys, .volt-edge, .volt-why { padding: 28px 0 64px; }
.volt-lead { max-width: 640px; margin: 12px 0 0; color: #5c6370; }
.volt-laptop { padding: 16px; border-radius: 28px; background: #2a241f; color: #fff; box-shadow: 0 24px 50px rgba(40, 16, 0, 0.16); }
.lap-top, .lap-body { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.lap-top { margin-bottom: 12px; color: #ffb07a; }
.lap-body { padding: 22px; border-radius: 18px; background: #fffaf6; color: #151515; }
.lap-boxes { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 120px; }
.lap-boxes i { display: block; height: 36px; border-radius: 8px; background: linear-gradient(180deg, #f6d7b0, #e8b07a); }
.lap-body small { color: #8b93a7; }
.lap-body strong { display: block; font-size: 40px; letter-spacing: -0.04em; }
.lap-body em { color: #ef4314; font-style: normal; font-weight: 700; }
.volt-steps, .volt-cards, .volt-reasons { margin: 22px 0 0; padding: 0; list-style: none; display: grid; gap: 14px; }
.volt-steps, .volt-cards { grid-template-columns: repeat(4, 1fr); }
.volt-reasons { grid-template-columns: 1fr 1fr; }
.volt-steps li, .volt-cards article { padding: 18px; border-radius: 20px; background: #fff; box-shadow: 0 12px 32px rgba(40, 24, 10, 0.06); }
.volt-steps li { display: grid; gap: 12px; }
.volt-cards h3, .volt-compare h3 { margin: 12px 0 8px; font-size: 20px; }
.volt-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 24px; }
.volt-compare article { padding: 22px; border-radius: 22px; background: #fff; box-shadow: 0 12px 32px rgba(40, 24, 10, 0.06); }
.volt-compare ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.volt-compare li { padding-left: 16px; position: relative; }
.volt-compare li::before { content: ""; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background: #d7cfc6; }
.volt-compare .is-volt { background: #fff7f2; }
.volt-compare .is-volt li::before { background: #f07a22; }
.volt-ready { text-align: center; border-radius: 0; }
.volt-ready .shell { display: grid; justify-items: center; }
.volt-ready .volt-actions { justify-content: center; }
.volt-ready .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255,255,255,0.4); }
@media (max-width: 991px) {
  .volt-hero-grid, .volt-split, .volt-compare, .volt-cards, .volt-steps, .volt-pills, .volt-issues, .volt-reasons, .problem-layout { grid-template-columns: 1fr; }
  .problem-visual { display: none; }
  .problem-points { margin-top: 8px; }
  .manual-card { width: min(228px, 70%); }
}

.page-chmp { background: #fff8ee; color: #151515; font-family: "DM Sans", sans-serif; }
.page-chmp h1, .page-chmp h2, .page-chmp h3, .page-chmp h4, .page-chmp p, .page-chmp a, .page-chmp button, .page-chmp input, .page-chmp select, .page-chmp li, .page-chmp summary, .page-chmp span, .page-chmp b, .page-chmp strong, .page-chmp label { font-family: "DM Sans", sans-serif; }
.page-chmp h1, .page-chmp h2 { margin: 0; font-weight: 700; letter-spacing: -0.04em; line-height: 1.02; }
.page-chmp h2 { font-size: clamp(34px, 3.6vw, 52px); }
.page-chmp h2 em, .page-chmp h1 em { color: #ef4314; font-style: normal; }
.chmp-hero { padding: 128px 0 40px; }
.chmp-hero-grid, .chmp-split { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: 36px; align-items: center; }
.chmp-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.chmp-brand strong { font-size: 28px; letter-spacing: 0.04em; line-height: 1; }
.chmp-brand small { color: #f07a22; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.chmp-hero h1 { font-size: clamp(46px, 4.6vw, 68px); }
.chmp-hero p, .chmp-solution p, .chmp-roles .chmp-head p { max-width: 460px; margin: 16px 0 0; color: #5c6370; font-size: 17px; }
.chmp-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.chmp-stage { position: relative; }
.chmp-shot { width: 100%; height: auto; display: block; }
.chmp-pills { position: relative; z-index: 2; }
.chmp-dash {
  position: relative;
  z-index: 1;
  margin-left: auto;
  width: min(520px, 100%);
  padding: 16px;
  border-radius: 22px;
  color: #fff;
  background: #16120f;
  box-shadow: 0 24px 50px rgba(40, 16, 0, 0.18);
}
.chmp-dash > header, .chmp-screen > header { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.chmp-dash > header em, .chmp-dash aside b { margin-left: auto; color: #ff8a3d; font-style: normal; font-weight: 700; }
.chmp-dash-body { display: grid; grid-template-columns: 132px 1fr 92px; gap: 10px; }
.chmp-dash ul, .chmp-dash ol, .chmp-checks, .chmp-secure-side ul, .chmp-compare ul { margin: 0; padding: 0; list-style: none; }
.chmp-dash ul { display: grid; gap: 8px; font-size: 13px; }
.chmp-dash li { display: flex; align-items: center; gap: 8px; padding: 8px; border-radius: 10px; background: rgba(255,255,255,0.04); }
.chmp-dash li.on, .chmp-screen nav .on { background: rgba(255,106,26,0.18); color: #ffb07a; }
.chmp-dash li b { margin-left: auto; }
.chmp-dash-main { padding: 12px; border-radius: 14px; background: #221c18; }
.chmp-dash-main p, .chmp-dash-main small { display: block; }
.chmp-dash-main small { color: rgba(255,255,255,0.55); margin-bottom: 10px; }
.chmp-dash-main li { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; }
.chmp-dash-main i { width: 8px; height: 8px; border-radius: 50%; background: #ff4d12; }
.chmp-dash-main span { margin-left: auto; color: #ffb07a; font-size: 11px; }
.chmp-dash aside { display: grid; gap: 8px; }
.chmp-dash aside div { padding: 10px 8px; border-radius: 12px; background: #2a211c; text-align: center; }
.chmp-dash aside b { display: block; margin: 0; font-size: 22px; }
.chmp-dash aside span, .chmp-pills span, .chmp-issues span, .chmp-steps p, .chmp-role-grid p, .chmp-cap-grid p, .chmp-vert-grid p { color: #8b93a7; font-size: 13px; }
.chmp-pills, .chmp-issues, .chmp-cap-grid, .chmp-vert-grid { display: grid; gap: 12px; }
.chmp-pills { grid-template-columns: repeat(4, 1fr); margin-top: 28px; }
.chmp-pills article, .chmp-steps li, .chmp-cap-grid article, .chmp-vert-grid article, .chmp-role-grid article {
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40, 24, 10, 0.05);
}
.chmp-pills article { display: flex; align-items: center; gap: 12px; }
.chmp-pills i, .chmp-issues i, .chmp-steps > li > i, .chmp-role-grid i, .chmp-cap-grid i, .chmp-vert-grid i, .chmp-secure-side li i {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
}
.chmp-pills b, .chmp-issues b { display: block; }
.chmp-problem, .chmp-roles, .chmp-secure {
  position: relative;
  overflow: hidden;
  margin: 28px 0;
  padding: 72px 0;
  color: #fff;
  background: linear-gradient(160deg, #d97124, #d92d21);
}
.chmp-problem .voco-kicker.light,
.chmp-roles .voco-kicker.light,
.chmp-secure .voco-kicker.light { color: #fff; }
.chmp-problem h2 em, .chmp-secure h2 em { color: #fff; }
.chmp-problem-flame { position: absolute; right: -30px; bottom: -36px; width: 260px; height: 110px; object-fit: cover; object-position: right bottom; pointer-events: none; opacity: 0.9; z-index: 0; }
.chmp-problem .chmp-split { position: relative; z-index: 1; }
.chmp-problem h2, .chmp-roles h2, .chmp-secure h2, .chmp-problem p { color: #fff; }
.chmp-problem p { max-width: 460px; margin-top: 14px; color: rgba(255,255,255,0.72); }
.chmp-issues { grid-template-columns: 1fr 1fr; }
.chmp-issues article { position: relative; z-index: 1; padding: 18px; border-radius: 16px; background: #161311; border: 1px solid rgba(255,255,255,0.08); }
.chmp-issues i { margin-bottom: 12px; background: rgba(255,106,26,0.12); }
.chmp-issues span { display: block; margin-top: 6px; color: rgba(255,255,255,0.62); }
.chmp-solution, .chmp-flow, .chmp-keys, .chmp-verticals, .chmp-switch, .chmp-faq { padding: 28px 0 64px; }
.chmp-checks { display: grid; gap: 10px; margin: 18px 0 22px; }
.chmp-checks li { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.chmp-checks li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
}
.chmp-solution .chmp-shot { width: 100%; }
.chmp-screen { padding: 16px; border-radius: 16px 16px 0 0; background: #fffaf6; min-height: 280px; }
.chmp-screen > header b { color: #ef4314; }
.chmp-screen > header span { color: #8b93a7; }
.chmp-screen-grid { display: grid; grid-template-columns: 120px 1fr; gap: 12px; margin-top: 8px; }
.chmp-screen nav { display: grid; gap: 8px; font-size: 13px; font-weight: 600; }
.chmp-screen nav span { padding: 8px 10px; border-radius: 10px; }
.chmp-screen .bars { display: grid; gap: 8px; margin: 16px 0; }
.chmp-screen .bars i { display: block; height: 12px; border-radius: 99px; background: linear-gradient(90deg, #f07a22, #ffd0b0); }
.chmp-screen .bars i:nth-child(2) { width: 80%; }
.chmp-screen .bars i:nth-child(3) { width: 62%; }
.chmp-screen .bars i:nth-child(4) { width: 44%; }
.chmp-head { display: flex; justify-content: space-between; align-items: end; gap: 20px; }
.chmp-head a { color: #ef4314; font-weight: 700; white-space: nowrap; }
.chmp-head.light p { margin: 0; max-width: 360px; color: rgba(255,255,255,0.72); }
.chmp-steps, .chmp-role-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 22px; }
.chmp-role-grid { grid-template-columns: repeat(3, 1fr); }
.chmp-steps li { display: grid; gap: 8px; }
.chmp-steps li > span { color: #f07a22; font-weight: 700; }
.chmp-steps p, .chmp-role-grid p, .chmp-cap-grid p, .chmp-vert-grid p { margin: 6px 0 0; }
.chmp-role-grid article { background: rgba(255,255,255,0.05); color: #fff; box-shadow: none; border: 1px solid rgba(255,255,255,0.06); }
.chmp-role-grid p { color: rgba(255,255,255,0.66); }
.chmp-role-grid h3, .chmp-cap-grid h3, .chmp-vert-grid h3 { margin: 12px 0 0; font-size: 18px; }
.chmp-cap-grid, .chmp-vert-grid { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.chmp-secure-side { display: grid; grid-template-columns: 180px 1fr; gap: 18px; align-items: center; }
.chmp-cube {
  width: 160px;
  height: 160px;
  border-radius: 28px;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 42px;
  background:
    linear-gradient(160deg, rgba(255,122,40,0.2), transparent 40%),
    linear-gradient(180deg, #3a2418, #120c09);
  border: 1px solid rgba(255,122,40,0.7);
  box-shadow: 0 0 40px rgba(255,90,20,0.35);
}
.chmp-secure-side li { display: flex; align-items: center; gap: 12px; padding: 8px 0; font-weight: 600; }
.chmp-switch-grid { display: grid; grid-template-columns: 1.4fr 0.8fr; gap: 16px; margin-top: 22px; }
.chmp-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 18px; border-radius: 22px; background: #fff; box-shadow: 0 12px 32px rgba(40, 24, 10, 0.06); }
.chmp-compare h3 { margin: 0 0 12px; font-size: 18px; }
.chmp-compare li { position: relative; padding: 8px 0 8px 26px; }
.chmp-compare li::before {
  content: "\f00d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 10px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f3d2cc;
  color: #c4382c;
  font-size: 8px;
}
.chmp-compare .is-yes li::before { content: "\f00c"; background: #ffe1cc; color: #ef4314; }
.chmp-cta {
  padding: 28px;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(160deg, #f07a22, #d92d21);
}
.chmp-cta h3 { margin: 0 0 8px; font-size: 28px; }
.chmp-cta p { color: rgba(255,255,255,0.9); }
.chmp-cta .voco-btn { margin-top: 8px; margin-right: 8px; }
.chmp-cta .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255,255,255,0.45); }
.chmp-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 22px; }
.chmp-faq details { padding: 16px 18px; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(40, 24, 10, 0.04); }
.chmp-faq summary { cursor: pointer; font-weight: 700; }
.chmp-faq details p { margin: 10px 0 0; color: #5c6370; }
@media (max-width: 991px) {
  .chmp-hero-grid, .chmp-split, .chmp-pills, .chmp-issues, .chmp-steps, .chmp-role-grid, .chmp-cap-grid, .chmp-vert-grid, .chmp-switch-grid, .chmp-faq-grid, .chmp-compare, .chmp-secure-side, .chmp-dash-body, .chmp-screen-grid { grid-template-columns: 1fr; }
  .chmp-head { flex-direction: column; align-items: flex-start; }
  .chmp-stage { min-height: 0; }
}

.page-noho { background: #fff8ee; color: #151515; font-family: "DM Sans", sans-serif; }
.page-noho h1, .page-noho h2, .page-noho h3, .page-noho p, .page-noho a, .page-noho button, .page-noho input, .page-noho select, .page-noho li, .page-noho summary, .page-noho span, .page-noho b, .page-noho strong, .page-noho label { font-family: "DM Sans", sans-serif; }
.page-noho h1, .page-noho h2 { margin: 0; font-weight: 700; letter-spacing: -0.04em; line-height: 1.02; }
.page-noho h1 { font-size: clamp(46px, 4.6vw, 68px); }
.page-noho h2 { font-size: clamp(34px, 3.6vw, 52px); }
.page-noho h1 em, .page-noho h2 em { color: #ef4314; font-style: normal; }
.noho-hero { padding: 128px 0 48px; }
.noho-split { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 36px; align-items: center; }
.noho-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.noho-brand strong { font-size: 28px; letter-spacing: 0.04em; }
.noho-brand small, .noho-solution .voco-kicker { color: #f07a22; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.noho-hero p, .noho-solution p, .noho-capture p { max-width: 480px; margin: 16px 0 0; color: #5c6370; font-size: 17px; }
.noho-shot { width: 100%; height: auto; display: block; }
.noho-device { padding: 16px 16px 0; border-radius: 24px 24px 8px 8px; background: #2a241f; box-shadow: 0 24px 50px rgba(40, 16, 0, 0.16); }
.noho-screen { min-height: 300px; padding: 16px; border-radius: 14px 14px 0 0; color: #fff; background: #1b1613; }
.noho-screen header { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.noho-screen header em { margin-left: auto; color: #ff8a3d; font-style: normal; font-weight: 700; }
.noho-app { display: grid; grid-template-columns: 140px 1fr; gap: 12px; }
.noho-app ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.noho-app li, .noho-doc strong { padding: 8px 10px; border-radius: 10px; background: rgba(255,255,255,0.05); }
.noho-app li.on { background: rgba(255,106,26,0.2); color: #ffb07a; }
.noho-screen.light { color: #151515; background: #fffaf6; }
.noho-doc { display: grid; gap: 8px; }
.noho-doc span { display: block; height: 10px; border-radius: 99px; background: linear-gradient(90deg, #f07a22, #ffd7bf); }
.noho-doc span:nth-child(4) { width: 70%; }
.noho-doc span:nth-child(6) { width: 48%; }
.noho-pills, .noho-issues, .noho-benefits, .noho-uses-grid, .noho-steps { display: grid; gap: 12px; }
.noho-pills { grid-template-columns: repeat(4, 1fr); margin-top: 28px; }
.noho-pills article, .noho-steps li, .noho-uses-grid article, .noho-compare article, .noho-faq details {
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40, 24, 10, 0.05);
}
.noho-pills article { display: flex; align-items: center; gap: 12px; }
.noho-pills i, .noho-issues i, .noho-benefits i, .noho-uses-grid i, .noho-steps > li > i {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
}
.noho-pills b, .noho-issues b { display: block; }
.noho-pills span, .noho-issues span, .noho-steps p, .noho-benefits p, .noho-uses-grid p, .noho-float span { color: #5c6370; font-size: 14px; }
.noho-band {
  margin: 28px 0;
  padding: 72px 0;
  color: #fff;
  background: linear-gradient(160deg, #d97124, #d92d21);
}
.noho-band h2, .noho-band p, .noho-band .voco-kicker.light { color: #fff; }
.noho-band p { max-width: 480px; margin-top: 14px; color: rgba(255,255,255,0.9); }
.noho-issues, .noho-benefits { grid-template-columns: 1fr 1fr; }
.noho-benefits { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.noho-issues article, .noho-benefits article, .noho-float article {
  padding: 18px;
  border-radius: 16px;
  background: #161311;
  border: 1px solid rgba(255,255,255,0.08);
}
.noho-issues i { margin-bottom: 12px; background: rgba(255,106,26,0.15); }
.noho-issues span, .noho-benefits p, .noho-float span { display: block; margin-top: 6px; color: rgba(255,255,255,0.7); }
.noho-solution, .noho-flow, .noho-uses, .noho-diff, .noho-faq { padding: 28px 0 64px; }
.noho-checks { margin: 18px 0 22px; padding: 0; list-style: none; display: grid; gap: 10px; }
.noho-checks li { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.noho-checks li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
}
.noho-steps, .noho-uses-grid { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.noho-uses-grid { grid-template-columns: repeat(3, 1fr); }
.noho-steps li { display: grid; gap: 8px; }
.noho-steps li > span { color: #f07a22; font-weight: 700; }
.noho-steps p, .noho-uses-grid p, .noho-benefits p { margin: 6px 0 0; }
.noho-uses-grid h3, .noho-benefits h3, .noho-compare h3 { margin: 12px 0 0; font-size: 18px; }
.noho-benefits h3, .noho-float b { color: #fff; }
.noho-float { display: grid; gap: 12px; }
.noho-compare { display: grid; grid-template-columns: 1fr 1fr 0.8fr; gap: 14px; margin-top: 22px; }
.noho-compare ul { margin: 12px 0 0; padding: 0; list-style: none; }
.noho-compare li { position: relative; padding: 8px 0 8px 26px; }
.noho-compare li::before {
  content: "\f00d";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 10px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f3d2cc;
  color: #c4382c;
  font-size: 8px;
}
.noho-compare .is-yes li::before { content: "\f00c"; background: #ffe1cc; color: #ef4314; }
.noho-compare aside {
  padding: 22px;
  border-radius: 18px;
  color: #fff;
  background: linear-gradient(160deg, #d97124, #d92d21);
}
.noho-compare aside i { font-size: 28px; margin-bottom: 12px; }
.noho-compare aside b, .noho-compare aside span { display: block; }
.noho-compare aside span { margin-top: 8px; color: rgba(255,255,255,0.88); }
.noho-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 22px; }
.noho-faq summary { cursor: pointer; font-weight: 700; }
.noho-faq details p { margin: 10px 0 0; color: #5c6370; }
.noho-ready { text-align: center; }
.noho-ready .shell { display: grid; justify-items: center; }
.noho-ready .chmp-actions { justify-content: center; }
.noho-ready .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255,255,255,0.45); }
@media (max-width: 991px) {
  .noho-split, .noho-pills, .noho-issues, .noho-benefits, .noho-steps, .noho-uses-grid, .noho-compare, .noho-faq-grid, .noho-app { grid-template-columns: 1fr; }
}

.page-snip { background: #fff8ee; color: #151515; font-family: "DM Sans", sans-serif; }
.page-snip h1, .page-snip h2, .page-snip h3, .page-snip p, .page-snip a, .page-snip button, .page-snip input, .page-snip select, .page-snip li, .page-snip summary, .page-snip span, .page-snip b, .page-snip strong, .page-snip label { font-family: "DM Sans", sans-serif; }
.page-snip h1, .page-snip h2 { margin: 0; font-weight: 700; letter-spacing: -0.04em; line-height: 1.02; }
.page-snip h1 { font-size: clamp(46px, 4.6vw, 68px); }
.page-snip h2 { font-size: clamp(34px, 3.6vw, 52px); }
.page-snip h1 em, .page-snip h2 em { color: #ef4314; font-style: normal; }
.snip-hero { padding: 128px 0 48px; }
.snip-split { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: 36px; align-items: center; }
.snip-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.snip-brand strong { font-size: 28px; letter-spacing: 0.04em; }
.snip-brand small { color: #f07a22; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.snip-hero p, .snip-solution p { max-width: 480px; margin: 16px 0 0; color: #5c6370; font-size: 17px; }
.snip-shot { width: 100%; height: auto; display: block; }
.snip-panel, .snip-report {
  padding: 18px;
  border-radius: 22px;
  color: #fff;
  background: #1b1613;
  box-shadow: 0 24px 50px rgba(40, 16, 0, 0.16);
}
.snip-panel header, .snip-report header { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.snip-panel header em, .snip-report header em { margin-left: auto; color: #ff8a3d; font-style: normal; font-weight: 700; font-size: 28px; }
.snip-panel-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.snip-panel-grid div, .snip-report-stats div { padding: 14px; border-radius: 14px; background: #2a211c; }
.snip-panel-grid .wide { grid-column: 1 / -1; }
.snip-panel-grid small, .snip-report-stats span { display: block; color: rgba(255,255,255,0.6); font-size: 13px; }
.snip-panel-grid strong, .snip-report-stats strong { font-size: 28px; }
.snip-panel-grid i { display: inline-block; width: 28%; height: 10px; margin-right: 4%; border-radius: 99px; background: linear-gradient(90deg, #f07a22, #ffd0b0); }
.snip-panel-grid i:nth-child(3) { width: 18%; }
.snip-panel.light { color: #151515; background: #fffaf6; }
.snip-panel.light ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.snip-panel.light li { display: flex; justify-content: space-between; padding: 12px; border-radius: 12px; background: #fff; }
.snip-panel.light b { color: #ef4314; }
.snip-pills, .snip-issues, .snip-steps, .snip-grid, .snip-who-grid { display: grid; gap: 12px; }
.snip-pills { grid-template-columns: repeat(4, 1fr); margin-top: 28px; }
.snip-pills article, .snip-steps li, .snip-grid article, .snip-who-grid article, .snip-faq details {
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(40, 24, 10, 0.05);
}
.snip-pills article { display: flex; align-items: center; gap: 12px; }
.snip-pills i, .snip-issues i, .snip-steps > li > i, .snip-grid i, .snip-who-grid i {
  flex: none;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #fff1e6;
  color: #f07a22;
}
.snip-pills b, .snip-issues b { display: block; }
.snip-pills span, .snip-issues span, .snip-steps p, .snip-grid p, .snip-who-grid p { color: #5c6370; font-size: 14px; }
.snip-band {
  margin: 28px 0;
  padding: 72px 0;
  color: #fff;
  background: linear-gradient(160deg, #d97124, #d92d21);
}
.snip-band h2, .snip-band p, .snip-band .voco-kicker.light { color: #fff; }
.snip-band p { max-width: 480px; margin-top: 14px; color: rgba(255,255,255,0.9); }
.snip-band h2 em { color: #fff; }
.snip-issues { grid-template-columns: 1fr 1fr; }
.snip-issues article { padding: 18px; border-radius: 16px; background: #161311; border: 1px solid rgba(255,255,255,0.08); }
.snip-issues i { margin-bottom: 12px; background: rgba(255,106,26,0.15); }
.snip-issues span { display: block; margin-top: 6px; color: rgba(255,255,255,0.7); }
.snip-solution, .snip-flow, .snip-features, .snip-who, .snip-faq { padding: 28px 0 64px; }
.snip-checks { margin: 18px 0 22px; padding: 0; list-style: none; display: grid; gap: 10px; }
.snip-checks li { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.snip-checks li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #f07a22;
  color: #fff;
  font-size: 9px;
}
.snip-steps, .snip-grid { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.snip-who-grid { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.snip-steps li { display: grid; gap: 8px; }
.snip-steps li > span { color: #f07a22; font-weight: 700; }
.snip-steps p, .snip-grid p, .snip-who-grid p { margin: 6px 0 0; }
.snip-grid h3, .snip-who-grid h3 { margin: 12px 0 0; font-size: 18px; }
.snip-report-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.snip-report ul { margin: 14px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.snip-report li { padding-left: 16px; position: relative; }
.snip-report li::before { content: ""; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background: #ffb07a; }
.snip-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 22px; }
.snip-faq summary { cursor: pointer; font-weight: 700; }
.snip-faq details p { margin: 10px 0 0; color: #5c6370; }
.snip-ready { text-align: center; }
.snip-ready .shell { display: grid; justify-items: center; }
.snip-ready .chmp-actions { justify-content: center; }
.snip-ready .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255,255,255,0.45); }
@media (max-width: 991px) {
  .snip-split, .snip-pills, .snip-issues, .snip-steps, .snip-grid, .snip-who-grid, .snip-faq-grid, .snip-panel-grid, .snip-report-stats { grid-template-columns: 1fr; }
  .snip-panel-grid .wide { grid-column: auto; }
}

.page-riva { background: #fff8ee; color: #151515; font-family: "DM Sans", sans-serif; }
.page-riva h1, .page-riva h2, .page-riva h3, .page-riva p, .page-riva a, .page-riva button, .page-riva input, .page-riva select, .page-riva li, .page-riva summary, .page-riva span, .page-riva b, .page-riva strong, .page-riva label, .page-riva small { font-family: "DM Sans", sans-serif; }
.page-riva h1, .page-riva h2 { margin: 0; font-weight: 700; letter-spacing: -0.04em; line-height: 1.02; }
.page-riva h1 { font-size: clamp(44px, 4.4vw, 64px); }
.page-riva h2 { font-size: clamp(32px, 3.4vw, 48px); }
.page-riva h1 em, .page-riva h2 em { color: #ef4314; font-style: normal; }
.riva-hero { position: relative; padding: 128px 0 36px; overflow: hidden; background: radial-gradient(620px 420px at 92% 8%, rgba(240, 122, 34, 0.28), transparent 70%), #fff8ee; }
.riva-split { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: 36px; align-items: center; }
.riva-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.riva-brand > span { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(160deg, #f07a22, #d92d21); color: #fff; font-weight: 700; font-size: 22px; }
.riva-brand strong { display: block; font-size: 22px; letter-spacing: 0.08em; }
.riva-brand small { color: #f07a22; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.riva-hero p, .riva-flow > .shell > p, .riva-library p, .riva-why p { max-width: 520px; margin: 16px 0 0; color: #5c6370; font-size: 17px; }
.riva-shot { width: 100%; height: auto; display: block; }
.riva-feed b, .riva-issues b { display: block; }
.riva-pills, .riva-issues, .riva-steps, .riva-uses, .riva-lib, .riva-faq-grid, .riva-stats, .riva-wall { display: grid; gap: 12px; }
.riva-pills { grid-template-columns: repeat(4, 1fr); margin-top: 28px; }
.riva-pills article, .riva-steps li, .riva-lib article, .riva-faq details { padding: 16px; border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(40, 24, 10, 0.05); }
.riva-pills article { display: flex; align-items: center; gap: 12px; }
.riva-pills i, .riva-issues i, .riva-uses i, .riva-lib i { flex: none; width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: #fff1e6; color: #f07a22; }
.riva-pills b, .riva-pills span { display: block; }
.riva-pills span, .riva-issues span { color: #5c6370; font-size: 14px; }
.riva-cams { margin-top: 28px; text-align: center; }
.riva-cams p { margin: 0 0 14px; color: #f07a22; font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.riva-logo-slider .brand-set { gap: 16px; padding-right: 16px; align-items: center; }
.riva-logo-slider .brand-set img,
.riva-logo-slider .brand-set img:nth-child(n) {
  flex: none;
  box-sizing: border-box;
  width: 156px;
  height: 64px;
  max-width: none;
  padding: 12px 16px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(40, 24, 10, 0.06);
  object-fit: contain;
  object-position: center;
}
.riva-logo-slider .brand-set img.on-dark { background: #161311; }
.riva-band { margin: 28px 0; padding: 72px 0; color: #fff; background: radial-gradient(520px 240px at 0% 100%, rgba(240, 90, 20, 0.45), transparent 70%), radial-gradient(420px 200px at 100% 0%, rgba(217, 45, 33, 0.4), transparent 72%), #14110f; }
.riva-band h2, .riva-band p, .riva-band .voco-kicker.light, .riva-band small { color: #fff; }
.riva-band p { max-width: 560px; margin-top: 14px; color: rgba(255,255,255,0.9); }
.riva-band h2 em { color: #fff; }
.riva-issues { grid-template-columns: 1fr 1fr; margin-top: 22px; }
.riva-issues article { padding: 16px; border-radius: 16px; background: #161311; border: 1px solid rgba(255,255,255,0.08); }
.riva-issues i { margin-bottom: 10px; background: rgba(255,106,26,0.15); }
.riva-issues span { display: block; margin-top: 6px; color: rgba(255,255,255,0.7); }
.riva-feed { padding: 16px; border-radius: 22px; background: #1b1613; border: 1px solid rgba(255,255,255,0.08); }
.riva-feed header { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 12px; color: rgba(255,255,255,0.7); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; }
.riva-feed article { display: grid; grid-template-columns: 84px 1fr auto; gap: 12px; align-items: center; padding: 12px 0; border-top: 1px solid rgba(255,255,255,0.08); }
.riva-feed img { width: 84px; height: 52px; object-fit: cover; border-radius: 10px; display: block; }
.riva-feed span { color: rgba(255,255,255,0.65); font-size: 13px; }
.riva-feed button { border: 0; border-radius: 999px; padding: 8px 12px; background: #f07a22; color: #fff; font-weight: 700; font-size: 12px; }
.riva-flow, .riva-why, .riva-library, .riva-faq { padding: 28px 0 64px; }
.riva-steps { grid-template-columns: repeat(3, 1fr); margin: 28px 0 0; padding: 0; list-style: none; align-items: stretch; }
.riva-steps li { display: flex; flex-direction: column; gap: 8px; padding: 12px 12px 20px; position: relative; }
.riva-steps img { width: 100%; height: 168px; object-fit: cover; object-position: center; display: block; border-radius: 14px; }
.riva-steps li:last-child img { object-fit: contain; object-view-box: inset(18% 4% 16% 4%); background: #fff; }
.riva-steps li > span { color: #f07a22; font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.riva-steps b { font-size: 18px; }
.riva-steps p, .riva-uses p { margin: 0; color: #5c6370; }
.riva-steps li:not(:last-child)::after {
  content: "\2192";
  position: absolute;
  z-index: 2;
  top: 86px;
  right: -23px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #f07a22;
  color: #fff;
  font-size: 16px;
  line-height: 34px;
  text-align: center;
  box-shadow: 0 8px 16px rgba(240, 122, 34, 0.28);
}
.riva-uses { grid-template-columns: repeat(4, 1fr); margin-top: 28px; }
.riva-uses article { padding: 18px; border-radius: 18px; background: #161311; border: 1px solid rgba(255,255,255,0.08); }
.riva-uses h3 { margin: 12px 0 6px; font-size: 18px; }
.riva-uses p { color: rgba(255,255,255,0.7); font-size: 14px; }
.riva-uses ul { margin: 12px 0 0; padding: 0; list-style: none; display: grid; gap: 6px; color: rgba(255,255,255,0.85); font-size: 14px; }
.riva-uses li { padding-left: 14px; position: relative; }
.riva-uses li::before { content: ""; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: #ffb07a; }
.riva-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.riva-compare article { padding: 18px; border-radius: 18px; background: #161311; color: #fff; }
.riva-compare h3 { margin: 0 0 12px; font-size: 18px; }
.riva-compare ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.riva-compare li { padding-left: 22px; position: relative; font-size: 14px; }
.riva-compare .bad li::before { content: "\f00d"; color: #ff6b6b; }
.riva-compare .good li::before { content: "\f00c"; color: #3ddc97; }
.riva-compare li::before { position: absolute; left: 0; top: 0; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 12px; }
.riva-roi .shell { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 28px; align-items: end; }
.riva-stats { grid-template-columns: repeat(4, 1fr); }
.riva-stats article { padding: 16px; border-radius: 16px; background: rgba(0,0,0,0.25); }
.riva-stats i { color: #ffb07a; }
.riva-stats strong { display: block; margin-top: 8px; font-size: 32px; }
.riva-stats span, .riva-roi small { display: block; color: rgba(255,255,255,0.75); }
.riva-roi small { grid-column: 1 / -1; }
.riva-lib { grid-template-columns: 1fr 1fr; }
.riva-lib article { display: flex; align-items: center; gap: 12px; }
.riva-faq-head { display: flex; justify-content: space-between; align-items: end; gap: 16px; }
.riva-faq-head a { color: #f07a22; font-weight: 700; text-decoration: none; }
.riva-faq-grid { grid-template-columns: 1fr 1fr; margin-top: 22px; }
.riva-faq summary { cursor: pointer; font-weight: 700; }
.riva-faq details p { margin: 10px 0 0; color: #5c6370; }
.riva-ready .chmp-actions { margin-top: 22px; }
.riva-ready .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255,255,255,0.45); }
.riva-wall { grid-template-columns: repeat(3, 1fr); gap: 10px; }
.riva-wall img { width: 100%; height: auto; display: block; border-radius: 16px; }
@media (max-width: 991px) {
  .riva-split, .riva-pills, .riva-issues, .riva-steps, .riva-uses, .riva-compare, .riva-stats, .riva-lib, .riva-faq-grid, .riva-roi .shell { grid-template-columns: 1fr; }
  .riva-wall { grid-template-columns: repeat(2, 1fr); }
  .riva-steps li::after { display: none; }
  .riva-feed article { grid-template-columns: 84px 1fr; }
  .riva-feed button { grid-column: 2; justify-self: start; }
}

.page-about { font-family: "DM Sans", sans-serif; }
.page-about h1, .page-about h2, .page-about h3, .page-about p, .page-about a, .page-about button, .page-about input, .page-about textarea, .page-about label, .page-about span, .page-about b { font-family: "DM Sans", sans-serif; }
.about-hero { padding: 118px 0 24px; }
.about-hero-visual { position: relative; margin-left: 40px; margin-right: 40px; border-radius: 40px; overflow: hidden; }
.about-hero-bg { width: 100%; height: 500px; object-fit: cover; object-position: center center; display: block; }
.about-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18, 8, 0, 0.52) 0%, rgba(18, 8, 0, 0.16) 38%, transparent 62%); }
.about-hero-visual > p { position: absolute; left: 48px; bottom: 210px; max-width: 460px; margin: 0; color: #fff; font-size: clamp(20px, 2vw, 30px); line-height: 1.3; }
.about-stats { position: absolute; left: 36px; bottom: 28px; display: grid; grid-auto-flow: column; grid-template-columns: repeat(3, 168px); gap: 12px; }
.about-stats article { width: 100%; min-height: 128px; padding: 18px 14px; border-radius: 15px; border: 1px solid rgba(225, 225, 225, 0.44); background: rgba(83, 83, 83, 0.22); backdrop-filter: blur(11px); color: #fff; display: grid; align-content: center; justify-items: center; text-align: center; gap: 8px; }
.about-stats strong { font-size: 42px; font-weight: 400; line-height: 1; }
.about-stats span { font-size: 15px; font-weight: 500; }
.about-center { display: grid; justify-items: center; text-align: center; }
.about-center h2, .about-services h2, .about-values h2, .about-mission h2, .about-global h2, .about-team h2 { margin: 12px 0 0; color: #18212d; font-size: clamp(36px, 4vw, 56px); font-weight: 400; letter-spacing: -0.03em; line-height: 1.08; }
.about-center p, .about-mission > div > p, .about-founded p { max-width: 860px; margin: 16px 0 0; color: rgba(24, 33, 45, 0.55); font-size: 18px; line-height: 1.6; }
.about-pill { display: inline-flex; align-items: center; padding: 7px 12px; border-radius: 999px; border: 1px solid rgba(24, 24, 24, 0.07); background: #fbfaf9; color: #18212d; font-size: 12px; font-weight: 500; }
.about-intro, .about-services, .about-values, .about-mission, .about-team { padding: 72px 0; }
.about-intro .voco-btn, .about-founded .voco-btn, .about-global .voco-btn { margin-top: 28px; }
.about-svc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 28px; margin-top: 36px; }
.about-svc-grid article { display: grid; grid-template-columns: 80px 1fr; gap: 16px; align-items: center; min-height: 100px; border-bottom: 1px solid rgba(227, 227, 227, 0.7); }
.about-svc-grid img { width: 80px; height: 80px; padding: 18px; border-radius: 50%; background: #ffe7d4; object-fit: contain; }
.about-svc-grid div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.about-svc-grid b { font-size: 20px; font-weight: 500; letter-spacing: -0.02em; }
.about-svc-grid span { color: rgba(16, 16, 16, 0.55); font-size: 15px; font-weight: 700; }
.about-founded { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 40px; align-items: end; margin-top: 48px; }
.about-founded img { width: 100%; height: 460px; object-fit: cover; border-radius: 30px; display: block; }
.about-founded p { margin: 0; }
.about-value-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 40px; }
.about-value-grid img, .about-value-grid article { min-height: 280px; border-radius: 32px; }
.about-value-grid img { width: 100%; height: 100%; object-fit: cover; display: block; }
.about-value-grid article { display: flex; flex-direction: column; justify-content: space-between; padding: 28px; border: 1px solid rgba(24, 24, 24, 0.07); }
.about-value-grid h3 { margin: 0; font-size: 28px; font-weight: 400; line-height: 1.2; }
.about-value-grid p { margin: 0; font-size: 18px; line-height: 1.35; }
.about-value-grid .is-beige { background: #f3f0e9; color: #18212d; }
.about-value-grid .is-beige p { color: rgba(24, 33, 45, 0.55); }
.about-value-grid .is-dark { background: #1c0101; color: #fff; border-color: transparent; }
.about-value-grid .is-orange { background: #d03c21; color: #fff; border-color: transparent; }
.about-value-grid .is-dark p, .about-value-grid .is-orange p { color: rgba(255, 255, 255, 0.75); }
.about-mission-grid { display: grid; grid-template-columns: 0.85fr 1fr 1fr; gap: 20px; align-items: stretch; }
.about-mission-grid > div { padding-top: 12px; }
.about-mission-grid > div h2 { text-align: left; }
.about-mission-grid > div p { text-align: left; margin-left: 0; }
.about-mission-grid article { position: relative; min-height: 520px; border-radius: 30px; overflow: hidden; color: #fff; }
.about-mission-grid article > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.about-mission-grid article::after { content: ""; position: absolute; inset: 0; background: rgba(36, 36, 36, 0.55); }
.about-badge, .about-mission-grid article > p { position: relative; z-index: 1; }
.about-badge { position: absolute; top: 24px; left: 24px; display: inline-flex; align-items: center; gap: 10px; height: 40px; padding: 0 16px 0 6px; border-radius: 23px; background: #fff; color: #161616; font-size: 18px; font-weight: 600; }
.about-badge img { background: #161616; border-radius: 50%; padding: 5px; box-sizing: content-box; }
.about-mission-grid article > p { position: absolute; left: 24px; right: 24px; bottom: 28px; margin: 0; color: #fff; font-size: 22px; line-height: 1.35; }
.about-global { position: relative; padding: 88px 0; overflow: hidden; }
.about-map { position: absolute; left: 50%; top: 50%; width: min(1100px, 100%); height: auto; transform: translate(-50%, -50%); opacity: 0.14; pointer-events: none; }
.about-global .about-center { position: relative; }
.about-places { color: #18212d; font-size: 20px; }
.about-places b { color: #da3221; font-weight: 600; }
.about-team-box { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin-top: 36px; padding: 36px 28px; border-radius: 32px; border: 1px solid rgba(0, 0, 0, 0.1); background: #fff; }
.about-team-box img { width: 100%; height: 360px; object-fit: cover; object-position: top center; display: block; border-radius: 8px; }
.about-team-box h3 { margin: 18px 0 6px; font-size: 22px; font-weight: 400; }
.about-team-box span { color: rgba(0, 0, 0, 0.6); font-size: 16px; }
@media (max-width: 991px) {
  .about-hero { padding-top: 100px; }
  .about-hero-visual { min-height: 0; margin-left: 16px; margin-right: 16px; }
  .about-hero-bg { height: 340px; object-position: 72% center; }
  .about-hero-shade { background: linear-gradient(180deg, transparent 42%, rgba(18, 8, 0, 0.62) 100%); }
  .about-hero-visual > p { left: 16px; right: 16px; bottom: 16px; font-size: 16px; }
  .about-stats { position: static; transform: none; grid-auto-flow: row; grid-template-columns: 1fr; margin-top: 12px; }
  .about-stats article { width: auto; min-height: 88px; }
  .about-svc-grid, .about-founded, .about-value-grid, .about-mission-grid, .about-team-box { grid-template-columns: 1fr; }
  .about-value-grid { grid-template-columns: 1fr 1fr; }
  .about-founded img, .about-team-box img { height: 280px; }
}

.page-services { font-family: "DM Sans", sans-serif; }
.page-services h1, .page-services h2, .page-services h3, .page-services p, .page-services a, .page-services button, .page-services li, .page-services span, .page-services b, .page-services figcaption { font-family: "DM Sans", sans-serif; }
.page-services .brand span { font-family: "Outfit", "DM Sans", sans-serif; }
.svc-kicker { margin: 0 0 12px; color: #e45712; font-size: 13px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.svc-kicker.light { color: #ffb087; }
.svc-hero { padding: 132px 0 28px; }
.svc-hero-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 36px; align-items: center; }
.svc-hero h1 { margin: 0; max-width: 620px; color: #1c1c1c; font-size: clamp(40px, 4.2vw, 64px); font-weight: 500; letter-spacing: -0.04em; line-height: 1.02; }
.svc-hero h1 em { color: #e45712; font-style: normal; }
.svc-hero-copy > p { max-width: 460px; margin: 18px 0 0; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.55; }
.svc-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 28px; }
.svc-hero-visual { position: relative; }
.svc-hero-visual > img { width: 100%; height: 420px; object-fit: cover; object-position: center 30%; border-radius: 28px; display: block; }
.svc-badge { position: absolute; top: 18px; right: 18px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: rgba(255, 255, 255, 0.92); color: #1c1c1c; font-size: 13px; font-weight: 600; box-shadow: 0 8px 24px rgba(20, 12, 8, 0.12); }
.svc-badge i { color: #e45712; }
.svc-hero-stats { position: absolute; left: 18px; right: 18px; bottom: 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.svc-hero-stats article { padding: 14px 10px; border-radius: 16px; background: rgba(255, 255, 255, 0.94); text-align: center; box-shadow: 0 10px 24px rgba(20, 12, 8, 0.08); }
.svc-hero-stats strong { display: block; color: #1c1c1c; font-size: 28px; font-weight: 600; letter-spacing: -0.03em; line-height: 1; }
.svc-hero-stats span { display: block; margin-top: 4px; color: rgba(24, 33, 45, 0.6); font-size: 13px; }
.svc-pills { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 28px 0 0; padding: 0; list-style: none; }
.svc-pills li { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 18px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.svc-pills i { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; flex: none; background: #fff1e6; color: #e45712; }
.svc-pills b { display: block; font-size: 16px; font-weight: 600; }
.svc-pills span { display: block; color: rgba(24, 33, 45, 0.55); font-size: 14px; }
.svc-center { display: grid; justify-items: center; text-align: center; }
.svc-paths, .svc-industries, .svc-results, .svc-approach, .svc-quote-wrap, .svc-partners { padding: 72px 0; }
.svc-center h2, .svc-split h2, .svc-why h2, .svc-ready h2 { margin: 0; color: #18212d; font-size: clamp(34px, 3.6vw, 52px); font-weight: 500; letter-spacing: -0.035em; line-height: 1.08; }
.svc-center p, .svc-split > p { max-width: 720px; margin: 14px 0 0; color: rgba(24, 33, 45, 0.58); font-size: 17px; line-height: 1.6; }
.svc-path-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 36px; }
.svc-path-grid article { display: flex; flex-direction: column; padding: 14px 14px 22px; border-radius: 24px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); box-shadow: 0 16px 40px rgba(40, 24, 10, 0.05); }
.svc-path-grid img { width: 100%; height: auto; object-fit: contain; border-radius: 16px; }
.svc-path-grid h3 { margin: 16px 8px 0; font-size: 24px; font-weight: 600; letter-spacing: -0.02em; }
.svc-path-grid p { margin: 6px 8px 0; color: #1c1c1c; font-size: 16px; font-weight: 500; }
.svc-path-grid .svc-lead { margin: 8px 8px 0; color: rgba(24, 33, 45, 0.58); font-size: 15px; line-height: 1.5; }
.svc-path-grid ul { margin: 14px 8px 0; padding: 0; list-style: none; }
.svc-path-grid li { position: relative; padding: 6px 0 6px 16px; color: #2a2a2a; font-size: 15px; }
.svc-path-grid li::before { content: ""; position: absolute; left: 0; top: 13px; width: 6px; height: 6px; border-radius: 50%; background: #e45712; }
.svc-path-grid a { margin: 16px 8px 0; color: #e45712; font-weight: 600; font-size: 15px; }
.svc-why { position: relative; margin: 12px 24px; border-radius: 32px; overflow: hidden; color: #fff; }
.svc-why > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.svc-why-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16, 18, 24, 0.82), rgba(16, 18, 24, 0.55)); }
.svc-why-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 28px; align-items: center; padding: 32px 0; }
.svc-why h2, .svc-why p { color: #fff; }
.svc-why p { max-width: 460px; margin: 14px 0 0; color: rgba(255, 255, 255, 0.82); font-size: 17px; line-height: 1.55; }
.svc-why .voco-btn { margin-top: 26px; }
.svc-why-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.svc-why-cards article { min-height: 200px; padding: 16px 14px; border-radius: 16px; background: rgba(255, 255, 255, 0.14); border: 1px solid rgba(255, 255, 255, 0.22); backdrop-filter: blur(8px); }
.svc-why-cards i { color: #ffb087; font-size: 16px; }
.svc-why-cards h3 { margin: 6px 0 2px; font-size: 16px; font-weight: 600; }
.svc-why-cards p { margin: 0; font-size: 14px; color: rgba(255, 255, 255, 0.78); }
.svc-split { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 32px; align-items: end; }
.svc-split > p { margin: 0; }
.svc-ind-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; margin-top: 32px; }
.svc-ind-grid article { text-align: center; }
.svc-ind-grid img { width: 100%; height: auto; object-fit: contain; border-radius: 18px; display: block; }
.svc-ind-grid span { display: block; margin-top: 10px; font-size: 14px; font-weight: 600; color: #1c1c1c; }
.svc-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 32px; }
.svc-stat-grid article { padding: 28px 18px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); text-align: center; }
.svc-stat-grid strong { display: block; color: #e45712; font-size: clamp(36px, 3vw, 48px); font-weight: 600; letter-spacing: -0.04em; line-height: 1; }
.svc-stat-grid span { display: block; margin-top: 8px; color: rgba(24, 33, 45, 0.62); font-size: 15px; }
.svc-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 32px 0 0; padding: 0; list-style: none; }
.svc-steps li { padding: 22px 18px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.svc-steps b { color: #e45712; font-size: 14px; font-weight: 700; letter-spacing: 0.08em; }
.svc-steps h3 { margin: 12px 0 6px; font-size: 22px; font-weight: 600; }
.svc-steps p { margin: 0; color: rgba(24, 33, 45, 0.6); font-size: 15px; line-height: 1.45; }
.svc-quote { display: grid; grid-template-columns: 120px 1fr; gap: 28px; align-items: center; margin: 0; padding: 28px; border-radius: 28px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.svc-quote img { width: 120px; height: 120px; object-fit: cover; object-position: top center; border-radius: 50%; }
.svc-quote p { margin: 0; color: #1c1c1c; font-size: clamp(20px, 2vw, 26px); font-weight: 500; letter-spacing: -0.02em; line-height: 1.35; }
.svc-quote figcaption { margin-top: 16px; }
.svc-quote strong { display: block; font-size: 16px; }
.svc-quote figcaption span { color: rgba(24, 33, 45, 0.55); font-size: 14px; }
.svc-partners { text-align: center; padding-top: 12px; }
.svc-partners ul { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 36px 64px; margin: 28px 0 0; padding: 0; list-style: none; }
.svc-partners li { font-size: 42px; font-weight: 700; letter-spacing: 0.02em; line-height: 1; }
.svc-partners li:nth-child(1) { color: #ff9900; }
.svc-partners li:nth-child(4) { color: #008fd3; }
.svc-partners li:nth-child(5) { color: #c74634; }
.svc-partners li:nth-child(6) { color: #714b67; }
.svc-partners img { height: 72px; width: auto; max-width: 240px; object-fit: contain; filter: none; opacity: 1; }
.svc-ready { position: relative; margin: 12px 24px 36px; min-height: 360px; border-radius: 32px; overflow: hidden; color: #fff; display: grid; align-items: center; }
.svc-ready > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.svc-ready-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(12, 14, 20, 0.82), rgba(12, 14, 20, 0.35)); }
.svc-ready .shell { position: relative; z-index: 1; padding: 64px 0; }
.svc-ready h2 { max-width: 640px; color: #fff; }
.svc-ready p { max-width: 460px; margin: 12px 0 0; color: rgba(255, 255, 255, 0.82); font-size: 17px; }
.svc-ready .voco-btn.demo { background: transparent; color: #fff; border-color: rgba(255, 255, 255, 0.45); }
@media (max-width: 991px) {
  .svc-hero { padding-top: 110px; }
  .svc-hero-grid, .svc-path-grid, .svc-why-grid, .svc-split, .svc-stat-grid, .svc-steps, .svc-quote { grid-template-columns: 1fr; }
  .svc-pills, .svc-ind-grid, .svc-why-cards { grid-template-columns: 1fr 1fr; }
  .svc-why, .svc-ready { margin-left: 16px; margin-right: 16px; }
  .svc-hero-visual > img { height: 320px; }
  .svc-hero-stats strong { font-size: 22px; }
}

.page-cloud h2 { margin: 0; color: #18212d; font-size: clamp(34px, 3.6vw, 52px); font-weight: 500; letter-spacing: -0.035em; line-height: 1.08; }
.cloud-hero { padding: 132px 0 36px; }
.cloud-hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 40px; align-items: center; }
.cloud-hero h1 { margin: 0; max-width: 640px; color: #1c1c1c; font-size: clamp(42px, 4.4vw, 68px); font-weight: 500; letter-spacing: -0.045em; line-height: 1.02; }
.cloud-hero h1 em { color: #e45712; font-style: normal; }
.cloud-hero-grid > div > p { max-width: 480px; margin: 18px 0 0; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.55; }
.cloud-hero-visual img { width: 100%; height: auto; object-fit: cover; border-radius: 28px; }
.cloud-stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin: 28px 0 0; padding: 0; list-style: none; }
.cloud-stats li { display: flex; align-items: center; gap: 10px; min-height: 72px; padding: 12px 14px; border-radius: 16px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.cloud-stats i { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; flex: none; background: #fff1e6; color: #e45712; }
.cloud-stats span { font-size: 14px; font-weight: 600; line-height: 1.3; }
.cloud-logos { padding: 8px 0 28px; }
.cloud-logos p { margin: 0 0 16px; text-align: center; color: rgba(24, 33, 45, 0.45); font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.cloud-logo-marquee { overflow: hidden; background: #fff; border-top: 1px solid rgba(24, 24, 24, 0.08); border-bottom: 1px solid rgba(24, 24, 24, 0.08); }
.cloud-logo-track { display: flex; width: max-content; animation: brand-scroll 28s linear infinite; }
.cloud-logo-set { display: flex; align-items: center; gap: 64px; padding: 16px 32px; }
.cloud-logo-set img { height: 42px; width: auto; object-fit: contain; flex: none; }
.cloud-logo-set img.gcp { height: 28px; }
.cloud-logo-set .aws { color: #ff9900; font-size: 46px; line-height: 1; }
.cloud-logo-set .word { color: #1c1c1c; font-size: 22px; font-weight: 800; letter-spacing: -0.03em; white-space: nowrap; }
.cloud-logo-set .oracle { color: #c74634; }
.cloud-logo-set .ibm { color: #0f62fe; letter-spacing: 0.08em; }
.cloud-master, .cloud-path, .cloud-caps, .cloud-partner, .cloud-choice, .cloud-industries { padding: 72px 0; }
.cloud-split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.cloud-split > div > p { max-width: 520px; margin: 14px 0 0; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.6; }
.cloud-points { margin: 22px 0 26px; padding: 0; list-style: none; }
.cloud-points li { position: relative; padding: 7px 0 7px 18px; color: #1c1c1c; font-size: 16px; }
.cloud-points li::before { content: ""; position: absolute; left: 0; top: 15px; width: 7px; height: 7px; border-radius: 50%; background: #e45712; }
.cloud-master-side img, .cloud-partner-visual img { width: 100%; height: 320px; object-fit: cover; border-radius: 24px; }
.cloud-why { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 48px; align-items: center; padding: 40px 40px 32px; border-radius: 28px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.cloud-why-copy p { max-width: 460px; margin: 14px 0 22px; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.6; }
.cloud-why-list { margin: 0; padding: 0; list-style: none; }
.cloud-why-list li { display: flex; align-items: center; gap: 18px; padding: 15px 0; border-bottom: 1px solid #eadfd4; }
.cloud-why-list li:last-child { border-bottom: 0; }
.cloud-why-list b { min-width: 36px; color: #e45712; font-size: 16px; letter-spacing: 0.06em; }
.cloud-why-list span { color: #151515; font-size: 18px; font-weight: 600; }
.cloud-outcomes { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 16px; border-radius: 24px; overflow: hidden; background: var(--grad); color: #fff; }
.cloud-outcomes article { display: flex; align-items: center; gap: 14px; padding: 26px 28px; background: transparent; border: 0; border-right: 1px solid rgba(255, 255, 255, 0.28); border-radius: 0; }
.cloud-outcomes article:last-child { border-right: 0; }
.cloud-outcomes i { width: auto; height: auto; border-radius: 0; display: block; background: transparent; color: #fff; font-size: 26px; }
.cloud-outcomes b, .cloud-outcomes span { display: block; }
.cloud-outcomes b { margin: 0; color: #fff; font-size: 22px; font-weight: 600; }
.cloud-outcomes span { color: rgba(255, 255, 255, 0.86); font-size: 14px; }
.cloud-path-head { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 28px; }
.cloud-path-head p { max-width: 360px; margin: 0; color: rgba(24, 33, 45, 0.62); font-size: 16px; line-height: 1.55; }
.cloud-steps, .cloud-cap-grid { display: grid; gap: 16px; }
.cloud-steps, .cloud-cap-grid { grid-template-columns: repeat(3, 1fr); }
.cloud-steps article, .cloud-cap-grid article, .cloud-vendors article { padding: 24px 22px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.cloud-steps b { color: #e45712; font-size: 13px; letter-spacing: 0.08em; }
.cloud-steps small { display: block; margin-top: 14px; color: #e45712; font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.cloud-steps h3, .cloud-cap-grid h3 { margin: 8px 0 0; font-size: 22px; font-weight: 600; }
.cloud-steps p, .cloud-cap-grid p { margin: 8px 0 0; color: rgba(24, 33, 45, 0.6); font-size: 15px; line-height: 1.5; }
.cloud-steps .is-hot { background: var(--grad); border-color: transparent; color: #fff; }
.cloud-steps .is-hot b, .cloud-steps .is-hot small, .cloud-steps .is-hot h3 { color: #fff; }
.cloud-steps .is-hot p { color: rgba(255, 255, 255, 0.88); }
.cloud-cap-grid { margin-top: 32px; }
.cloud-cap-grid i { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: #fff1e6; color: #e45712; }
.cloud-partner-visual { position: relative; }
.cloud-partner-visual p { position: absolute; left: 18px; bottom: 18px; margin: 0; color: #fff; font-size: 28px; font-weight: 600; letter-spacing: -0.03em; line-height: 1.15; text-shadow: 0 8px 24px rgba(0, 0, 0, 0.35); }
.cloud-vendors { display: grid; gap: 12px; }
.cloud-vendors article { display: flex; align-items: center; gap: 16px; }
.cloud-vendors img { width: 52px; height: 52px; object-fit: contain; flex: none; }
.cloud-vendors img.wordmark { width: 168px; height: 40px; }
.cloud-vendors .aws-logo { width: 52px; height: 52px; display: grid; place-items: center; flex: none; color: #ff9900; font-size: 42px; }
.cloud-vendors b { display: block; font-size: 20px; }
.cloud-vendors span { color: rgba(24, 33, 45, 0.58); }
.cloud-where { margin: 0 24px; padding: 64px 0; border-radius: 32px; background: var(--grad); color: #fff; }
.cloud-where h2, .cloud-where p { color: #fff; }
.cloud-where p { color: rgba(255, 255, 255, 0.88); }
.cloud-where-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.cloud-where-stats article { padding: 22px 16px; border-radius: 18px; background: rgba(255, 255, 255, 0.14); text-align: center; }
.cloud-where-stats strong { display: block; font-size: 40px; font-weight: 600; letter-spacing: -0.04em; }
.cloud-where-stats span { color: rgba(255, 255, 255, 0.86); }
.cloud-ind-marquee { overflow: hidden; margin-top: 32px; }
.cloud-ind-track { display: flex; width: max-content; animation: brand-scroll 36s linear infinite; }
.cloud-ind-set { display: flex; gap: 18px; padding-right: 18px; }
.cloud-ind-set article { width: 520px; flex: none; border-radius: 22px; overflow: hidden; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.cloud-ind-set img { width: 100%; height: auto; display: block; }
.cloud-ind-set span { display: block; padding: 14px 16px 16px; color: #151515; font-size: 16px; font-weight: 600; }
.cloud-close { margin: 0 24px 36px; padding: 64px 0; border-radius: 32px; background: var(--grad); color: #fff; text-align: center; }
.cloud-close h2 { color: #fff; }
.cloud-close .svc-hero-actions { justify-content: center; }
.cloud-line { display: inline-flex; align-items: center; gap: 12px; height: 46px; padding: 0 8px 0 22px; border-radius: 999px; border: 1.5px solid rgba(255, 255, 255, 0.8); background: transparent; color: #fff; font-weight: 500; cursor: pointer; }
.cloud-line .btn-ico { background: transparent; color: #fff; }
@media (max-width: 1100px) {
  .cloud-stats { grid-template-columns: repeat(3, 1fr); }
  .cloud-hero-grid, .cloud-split, .cloud-steps, .cloud-cap-grid { grid-template-columns: 1fr 1fr; }
  .cloud-master-grid { grid-template-columns: repeat(3, 1fr); }
  .cloud-why, .cloud-master-head, .cloud-path-head { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 991px) {
  .cloud-hero { padding-top: 110px; }
  .cloud-hero-grid, .cloud-split, .cloud-steps, .cloud-cap-grid, .cloud-where-stats, .cloud-stats, .cloud-outcomes, .cloud-why { grid-template-columns: 1fr; }
  .cloud-outcomes article { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.28); }
  .cloud-outcomes article:last-child { border-bottom: 0; }
  .cloud-where, .cloud-close { margin-left: 16px; margin-right: 16px; }
  .cloud-hero-visual img { height: auto; }
}

.page-dx h2 { margin: 0; color: #18212d; font-size: clamp(34px, 3.4vw, 52px); font-weight: 500; letter-spacing: -0.035em; line-height: 1.08; }
.dx-hero { padding: 132px 0 20px; }
.dx-hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 48px; align-items: center; }
.dx-hero h1 { margin: 0; max-width: 640px; color: #1c1c1c; font-size: clamp(40px, 4.2vw, 62px); font-weight: 500; letter-spacing: -0.045em; line-height: 1.04; }
.dx-hero h1 em { color: #e45712; font-style: italic; font-weight: 500; }
.dx-hero-grid > div > p { max-width: 540px; margin: 18px 0 0; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.55; }
.dx-hero-visual img { width: 100%; height: auto; border-radius: 28px; }
.dx-hero-visual ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.dx-hero-visual li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); font-size: 14px; font-weight: 600; }
.dx-hero-visual i { color: #e45712; }
.dx-promises { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 28px 0 0; padding: 0; list-style: none; }
.dx-promises li { display: flex; align-items: center; gap: 14px; min-height: 92px; padding: 16px 18px; border-radius: 18px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.dx-promises i { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; flex: none; background: #fff1e6; color: #e45712; }
.dx-promises b, .dx-promises span { display: block; }
.dx-promises b { font-size: 16px; }
.dx-promises span { margin-top: 2px; color: rgba(24, 33, 45, 0.58); font-size: 14px; }
.dx-logos { padding: 18px 0 8px; }
.cloud-logo-set .sap { color: #008fd3; }
.cloud-logo-set .odoo { color: #714b67; font-weight: 700; }
.dx-next, .dx-path, .dx-caps, .dx-ind, .dx-ai { padding: 72px 0; }
.dx-next-grid, .dx-path-grid, .dx-caps-head { display: grid; gap: 40px; align-items: center; }
.dx-next-grid { grid-template-columns: 0.92fr 1.08fr; }
.dx-path-grid, .dx-caps-head { grid-template-columns: 1fr 1fr; align-items: end; }
.dx-next-grid > div > p, .dx-path-grid > div > p, .dx-caps-head > p { margin: 14px 0 0; color: rgba(24, 33, 45, 0.62); font-size: 17px; line-height: 1.6; }
.dx-points { margin: 18px 0 22px; padding: 0; list-style: none; }
.dx-points li { position: relative; padding: 7px 0 7px 18px; color: #1c1c1c; font-size: 16px; }
.dx-points li::before { content: ""; position: absolute; left: 0; top: 15px; width: 7px; height: 7px; border-radius: 50%; background: #e45712; }
.dx-next-visual img { width: 100%; height: auto; border-radius: 24px; }
.dx-next-visual blockquote { margin: -36px 24px 0; padding: 18px 20px; border-radius: 18px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); box-shadow: 0 16px 40px rgba(40, 24, 10, 0.06); position: relative; }
.dx-next-visual blockquote p { margin: 0; color: #1c1c1c; font-size: 16px; font-weight: 500; line-height: 1.45; }
.dx-mini-stats, .dx-stat-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.dx-mini-stats { margin-top: 14px; }
.dx-mini-stats article, .dx-stat-row article { padding: 14px 10px; border-radius: 16px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); text-align: center; }
.dx-mini-stats strong, .dx-stat-row strong { display: block; color: #e45712; font-size: 28px; font-weight: 600; letter-spacing: -0.04em; line-height: 1; }
.dx-mini-stats span, .dx-stat-row span { display: block; margin-top: 6px; color: rgba(24, 33, 45, 0.62); font-size: 13px; line-height: 1.3; }
.dx-path ol { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0; padding: 0; list-style: none; }
.dx-path li, .dx-cap-grid article, .dx-products a { padding: 22px 18px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.dx-path b { color: #e45712; font-size: 13px; letter-spacing: 0.08em; }
.dx-path h3, .dx-cap-grid h3, .dx-products b { margin: 10px 0 0; font-size: 20px; font-weight: 600; }
.dx-path li p, .dx-cap-grid p, .dx-products span { margin: 6px 0 0; color: rgba(24, 33, 45, 0.6); font-size: 15px; line-height: 1.45; }
.dx-path .btn-grad { margin-top: 22px; }
.dx-cap-grid, .dx-ind-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 28px; }
.dx-cap-grid i { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: #fff1e6; color: #e45712; }
.dx-ind-grid article { border-radius: 22px; overflow: hidden; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.dx-ind-grid img { width: 100%; height: auto; display: block; }
.dx-products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 28px; }
.dx-products img { height: 36px; width: auto; max-width: 120px; object-fit: contain; }
.dx-products b { display: block; }
.dx-proof { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 18px; margin-top: 18px; align-items: stretch; }
.dx-proof figure { display: grid; grid-template-columns: 88px 1fr; gap: 18px; align-items: center; margin: 0; padding: 22px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.dx-proof figure img { width: 88px; height: 88px; object-fit: cover; object-position: top center; border-radius: 50%; }
.dx-proof blockquote { margin: 0; }
.dx-proof blockquote p { margin: 0; color: #1c1c1c; font-size: 16px; font-weight: 500; line-height: 1.45; }
.dx-proof figcaption { margin-top: 12px; }
.dx-proof figcaption strong { display: block; font-size: 15px; }
.dx-proof figcaption span { color: rgba(24, 33, 45, 0.55); font-size: 13px; }
.dx-proof > div { padding: 22px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.dx-proof h3 { margin: 0 0 14px; font-size: 22px; font-weight: 600; }
.dx-proof .dx-stat-row { grid-template-columns: 1fr 1fr; }
.dx-close { margin: 0 24px 36px; padding: 64px 0; border-radius: 32px; background: var(--grad); color: #fff; text-align: center; }
.dx-close h2 { color: #fff; }
.dx-close .pill { background: rgba(255, 255, 255, 0.16); border-color: rgba(255, 255, 255, 0.28); color: #fff; }
.dx-close p { max-width: 520px; margin: 12px auto 0; color: rgba(255, 255, 255, 0.88); font-size: 17px; }
.dx-close .svc-hero-actions { justify-content: center; }
.dx-line { display: inline-flex; align-items: center; gap: 12px; height: 46px; padding: 0 8px 0 22px; border-radius: 999px; border: 1.5px solid rgba(255, 255, 255, 0.8); background: transparent; color: #fff; font-weight: 500; cursor: pointer; }
.dx-line .btn-ico { background: transparent; color: #fff; }
@media (max-width: 1100px) {
  .dx-hero-grid, .dx-next-grid, .dx-path-grid, .dx-caps-head, .dx-proof { grid-template-columns: 1fr; }
  .dx-promises, .dx-cap-grid, .dx-ind-grid, .dx-mini-stats { grid-template-columns: 1fr 1fr; }
  .dx-products { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 991px) {
  .dx-hero { padding-top: 110px; }
  .dx-hero h1, .cloud-hero h1 { font-size: 36px; }
  .page-dx h2, .page-cloud h2 { font-size: 32px; }
  .dx-next, .dx-path, .dx-caps, .dx-ind, .cloud-master, .cloud-path, .cloud-caps, .cloud-partner, .cloud-choice, .cloud-industries { padding: 48px 0; }
  .dx-promises, .dx-path ol, .dx-cap-grid, .dx-ind-grid, .dx-products, .dx-mini-stats, .dx-proof .dx-stat-row { grid-template-columns: 1fr; }
  .dx-next-visual blockquote { margin: 16px 0 0; }
  .dx-close { margin-left: 16px; margin-right: 16px; }
  .cloud-ind-set article { width: min(420px, 84vw); }
  .svc-hero-actions { gap: 12px; }
  .svc-hero-actions .btn-talk { margin-left: 0; }
}

.page-erp .dx-promises { grid-template-columns: repeat(4, 1fr); }
.cloud-logo-set .ms { color: #00a4ef; }
.cloud-logo-set .infor { color: #ed1c24; font-weight: 700; letter-spacing: -0.03em; }
.cloud-logo-set .epicor { color: #003da5; letter-spacing: 0.06em; }
.erp-platforms { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 28px; }
.erp-platforms article { padding: 22px 20px; border-radius: 22px; background: #fff; border: 1px solid rgba(24, 24, 24, 0.06); }
.erp-platforms img { height: 58px; width: auto; max-width: 200px; object-fit: contain; object-position: left center; }
.erp-platforms b { display: block; font-size: 28px; font-weight: 800; letter-spacing: -0.03em; line-height: 1; }
.erp-platforms .sap { color: #008fd3; }
.erp-platforms .oracle { color: #c74634; }
.erp-platforms .odoo { color: #714b67; font-weight: 700; }
.erp-platforms .ms { color: #00a4ef; font-size: 24px; }
.erp-platforms .infor { color: #ed1c24; font-weight: 700; }
.erp-platforms .epicor { color: #003da5; letter-spacing: 0.04em; font-size: 24px; }
.erp-platforms span { display: block; margin-top: 8px; color: rgba(24, 33, 45, 0.6); font-size: 15px; line-height: 1.4; }
.dx-results { padding: 12px 0 72px; }
@media (max-width: 1100px) {
  .page-erp .dx-promises, .erp-platforms { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 991px) {
  .page-erp .dx-promises, .erp-platforms { grid-template-columns: 1fr; }
}
