/* ===== Reset & Base ===== */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #0A0E17;
  color: #FFFFFF;
  line-height: 1.5;
  min-height: 100vh;
}

a {
  color: inherit;
  text-decoration: none;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== Page Container ===== */
.page {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  min-height: 100vh;
  overflow-x: hidden;
}

/* ===== Background Ellipses ===== */
.bg-ellipse {
  position: absolute;
  width: 2312px;
  height: 2312px;
  border-radius: 50%;
  filter: blur(250px);
  pointer-events: none;
}

.bg-ellipse-1 {
  left: calc(50% - 2312px / 2 - 6px);
  top: -1794px;
  background: rgba(35, 44, 69, 0.56);
}

.bg-ellipse-2 {
  left: calc(50% - 2312px / 2 - 960px);
  top: 1028px;
  background: rgba(35, 44, 69, 0.31);
}

.bg-ellipse-3 {
  left: calc(50% - 2312px / 2 + 1422px);
  top: 3055px;
  background: rgba(35, 44, 69, 0.31);
}

.bg-ellipse-blue {
  position: absolute;
  width: 1071px;
  height: 856px;
  left: 413px;
  top: -810px;
  background: #304BB8;
  opacity: 0.51;
  filter: blur(160.674px);
  border-radius: 50%;
}

/* ===== Header ===== */
.header {
  position: relative;
  width: 100%;
  height: 210px;
  background: rgba(0, 0, 0, 0.13);
  z-index: 10;
}

.header-inner {
  max-width: 1920px;
  margin: 0 auto;
  padding: 70px 140px 70px;
  height: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.logo {
  display: flex;
  align-items: center;
  gap: 17px;
}

.logo-icon {
  width: 68.49px;
  height: 68.49px;
  border-radius: 50%;
  background: #D9D9D9;
  flex-shrink: 0;
}

.logo-text {
  display: flex;
  flex-direction: column;
  gap: 7px;
  justify-content: center;
}

.logo-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 23.7084px;
  line-height: 26px;
  color: #FFFFFF;
}

.logo-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17.3678px;
  line-height: 19px;
  color: rgba(255, 255, 255, 0.5);
}

.nav {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 76.03px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.nav-link {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 26.1686px;
  line-height: 32px;
  color: #A8A8A8;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 3.27px;
}

.nav-link-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.nav-link.active {
  color: #FFFFFF;
}

.nav-link.active::after {
  content: '';
  display: block;
  width: 29.44px;
  height: 3.27px;
  background: #EABD19;
  border-radius: 3.27107px;
}

.nav-arrow {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  border-left: 5.5px solid transparent;
  border-right: 5.5px solid transparent;
  border-top: 6.78px solid #A8A8A8;
  flex-shrink: 0;
  vertical-align: middle;
}

/* Products dropdown */
.nav-dropdown {
  position: relative;
}

.nav-dropdown-trigger {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
  -webkit-appearance: none;
  appearance: none;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 26.1686px;
  line-height: 32px;
  color: #A8A8A8;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 3.27px;
}

.nav-dropdown-trigger:hover {
  color: #A8A8A8;
}

.nav-dropdown-trigger:focus {
  outline: 2px solid rgba(234, 189, 25, 0.6);
  outline-offset: 4px;
}

.nav-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin: 8px 0 0;
  padding: 12px 0;
  min-width: 220px;
  background: rgba(20, 20, 25, 0.98);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  list-style: none;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
  display: none;
  z-index: 100;
}

.nav-dropdown.is-open .nav-dropdown-menu {
  display: block;
}

.nav-dropdown.is-open .nav-arrow {
  border-top-color: #fff;
  transform: rotate(180deg);
}

.nav-dropdown-item {
  display: block;
  padding: 10px 20px;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  color: #E5E5E5;
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}

.nav-dropdown-item:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.header-right {
  display: flex;
  align-items: center;
  gap: 14px;
}

.social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
}

.social-link .icon-telegram {
  width: 24.17px;
  height: 24.17px;
}

.social-link .icon-email {
  width: 23.17px;
  height: 23.16px;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  cursor: pointer;
  border: none;
  white-space: nowrap;
}

.btn-header {
  padding: 19.1459px 10.2111px;
  min-width: 206.78px;
  height: 62.54px;
  background: #FFFFFF;
  color: rgba(0, 0, 0, 0.8);
  font-size: 20.4223px;
  line-height: 25px;
  border-radius: 81.585px;
}

/* ===== Hero ===== */
.hero {
  position: relative;
  padding: 48px 60px 0;
  max-width: 1920px;
  margin: 0 auto;
}

.hero-poster {
  position: relative;
  width: 100%;
  max-width: 1769px;
  height: 494px;
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.13);
  border-radius: 55px;
  overflow: hidden;
}

/* Inner rectangle (Figma Rectangle 2) */
.hero-inner {
  position: absolute;
  width: 1675px;
  max-width: calc(100% - 48px);
  height: 402px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255, 255, 255, 0.01);
  border-radius: 27.2055px;
  pointer-events: none;
}

/* Decorative gradient groups (opacity 0.04) */
.hero-shapes {
  position: absolute;
  width: 522.2px;
  height: 837.81px;
  mix-blend-mode: normal;
  opacity: 0.04;
  pointer-events: none;
}

.hero-shapes-left {
  left: -533.56px;
  top: 163px;
  transform: matrix(-0.62, 0.78, -0.98, -0.19, 0, 0);
}

.hero-shapes-right {
  left: 1138.13px;
  top: -231px;
  transform: matrix(-0.62, 0.78, -0.98, -0.19, 0, 0);
}

.hero-shape {
  position: absolute;
  display: block;
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
}

.hero-shapes-left .hero-shape-1 {
  left: -5.63%;
  right: 91.2%;
  top: 90.18%;
  bottom: -70.47%;
  background: linear-gradient(346.13deg, #FFFFFF 40.95%, rgba(255, 255, 255, 0) 111.85%);
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-left .hero-shape-2 {
  left: 2.78%;
  right: 83.1%;
  top: 50.44%;
  bottom: -30.72%;
  background: linear-gradient(343.09deg, #FFFFFF 28.41%, rgba(255, 255, 255, 0) 76.99%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-left .hero-shape-3 {
  left: -28.56%;
  right: 114.25%;
  top: 73.12%;
  bottom: -41.3%;
  background: linear-gradient(351.83deg, #FFFFFF 54.15%, rgba(255, 255, 255, 0) 88.1%);
  box-shadow: inset 0 13.4548px 8.96984px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-left .hero-shape-4 {
  left: -20.15%;
  right: 106.02%;
  top: 33%;
  bottom: -1.18%;
  background: linear-gradient(156.51deg, rgba(255, 255, 255, 0.6) 16.88%, #FFFFFF 84.85%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-left .hero-shape-5 {
  left: -13.44%;
  right: 99.32%;
  top: 85.13%;
  bottom: -35.72%;
  background: linear-gradient(341.51deg, #FFFFFF 25.58%, rgba(255, 255, 255, 0.5) 98.33%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-left .hero-shape-6 {
  left: -5.03%;
  right: 90.91%;
  top: 44.5%;
  bottom: 4.91%;
  background: linear-gradient(342.97deg, #FFFFFF 23.32%, rgba(255, 255, 255, 0) 100.84%);
  box-shadow: inset -4.48492px 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-1 {
  left: 88.87%;
  right: -3.3%;
  top: 10.43%;
  bottom: 9.29%;
  background: linear-gradient(346.13deg, #FFFFFF 40.95%, rgba(255, 255, 255, 0) 111.85%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-2 {
  left: 97.28%;
  right: -11.4%;
  top: -29.32%;
  bottom: 49.03%;
  background: linear-gradient(343.09deg, #FFFFFF 28.41%, rgba(255, 255, 255, 0) 76.99%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-3 {
  left: 65.94%;
  right: 19.75%;
  top: -6.64%;
  bottom: 38.45%;
  background: linear-gradient(351.83deg, #FFFFFF 54.15%, rgba(255, 255, 255, 0) 88.1%);
  box-shadow: inset 0 13.4548px 8.96984px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-4 {
  left: 74.35%;
  right: 11.52%;
  top: -46.76%;
  bottom: 78.58%;
  background: linear-gradient(156.51deg, rgba(255, 255, 255, 0.6) 16.88%, #FFFFFF 84.85%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-5 {
  left: 81.06%;
  right: 4.82%;
  top: 5.37%;
  bottom: 44.03%;
  background: linear-gradient(341.51deg, #FFFFFF 25.58%, rgba(255, 255, 255, 0.5) 98.33%);
  box-shadow: inset 0 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

.hero-shapes-right .hero-shape-6 {
  left: 89.47%;
  right: -3.59%;
  top: -35.26%;
  bottom: 84.67%;
  background: linear-gradient(342.97deg, #FFFFFF 23.32%, rgba(255, 255, 255, 0) 100.84%);
  box-shadow: inset -4.48492px 13.4548px 4.48492px #5458FF;
  transform: matrix(-0.6, 0.8, -0.98, -0.21, 0, 0);
}

/* ETH coins */
.hero-deco {
  position: absolute;
  pointer-events: none;
}

.hero-deco-left {
  width: 341.5px;
  height: 335.52px;
  left: calc(50% - 341.5px / 2 - 751.75px);
  top: calc(50% - 335.52px / 2 + 116.76px);
}

.hero-deco-right {
  width: 341.5px;
  height: 335.52px;
  left: calc(50% - 341.5px / 2 + 751.75px);
  top: calc(50% - 335.52px / 2);
}

.hero-deco img {
  width: 341.5px;
  height: auto;
  display: block;
}

.hero-deco-right img {
  transform: none;
}

/* Text content (Group 1786: left 252px, top 135px) */
.hero-content {
  position: absolute;
  left: 0;
  right: 0;
  top: 135px;
  padding: 0 252px;
  z-index: 2;
}

.hero-title {
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 53px;
  line-height: 67px;
  text-align: center;
  color: #FFFFFF;
  max-width: 1094px;
  margin: 0 auto 31px;
  display: block;
}

.hero-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 56px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  max-width: 1265px;
  margin: 0 auto;
  display: block;
}

/* ===== Intro ===== */
.intro {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 60px;
}

.intro-text {
  width: 100%;
  max-width: 1625px;
  margin: 0 auto 0;
  padding-top: 69px;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 56px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
}

.line {
  border: none;
  height: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  width: 1017px;
  max-width: 90%;
  margin: 0 auto;
}

.line-intro {
  margin-top: 86px;
}

.section-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 53px;
  line-height: 67px;
  text-align: center;
  color: #FFFFFF;
}

/* ===== Solutions ===== */
.solutions {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 147px;
  position: relative;
}

.solutions-inner {
  position: relative;
  max-width: 1610px;
  margin: 0 auto;
}

/* Header block (Figma: 1610×593px, background, border-radius) */
.solutions-header {

  border-radius: 72.9769px;
  min-height: 593px;
  padding: 60px 90px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* textblock: 925.9×414px */
.solutions-textblock {
  width: 100%;
  max-width: 925.9px;
  padding-top: 0;
  padding-bottom: 0;
}

.solutions-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 53px;
  line-height: 67px;
  text-align: center;
  color: #FFFFFF;
  margin: 0 auto 0;
  max-width: 354px;
}

/* text (grid): 925.9×261px, top 153px from textblock start */
.solutions-grid {
  display: grid;
  grid-template-columns: 352px 412px;
  gap: 73px 144px;
  max-width: 925.9px;
  margin: 153px auto 0;
  justify-content: center;
  align-items: start;
}

.solution-item {
  display: flex;
  align-items: center;
  gap: 31px;
  min-height: 47px;
}

.solution-item .solution-icon {
  width: 34px;
  height: 34px;
  flex-shrink: 0;
  object-fit: contain;
  display: block;
}

a.solution-item:hover {
  color: #EABD19;
}

.solution-name {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 38.9738px;
  line-height: 120%;
  letter-spacing: -0.03em;
  color: #FFFFFF;
}

/* Resources card 3: 1445.94×492px, top 491px */
.solutions-desc-block {
  max-width: 1445.94px;
  margin: 77px auto 0;
  padding: 90px 90px 80px;
  background: rgba(86, 119, 255, 0.08);
  border-radius: 72.9769px;
  box-sizing: border-box;
}

.solutions-desc {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 27.6589px;
  line-height: 150%;
  text-align: center;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.line-solutions {
  border-color: rgba(255, 255, 255, 0.2);
  margin-top: 131px;
}

/* ===== Featured Products ===== */
.products {
  max-width: 1920px;
  margin: 0 auto;
  padding: 85px 148px 0;
  position: relative;
}

.products-inner {
  max-width: 1623px;
  margin: 100px auto;
  background: rgba(86, 119, 255, 0.08);
  border-radius: 72.9769px;
  padding: 53px 50px 30px;
  position: relative;
  box-sizing: border-box;
}

.products-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 53px;
  line-height: 67px;
  text-align: center;
  color: #FFFFFF;
  margin: 0 auto 62px;
  max-width: 478px;
}

.products-table-wrap {
  overflow-x: auto;
  margin-bottom: 75px;
  width: 100%;
  max-width: 1525.29px;
  margin-left: auto;
  margin-right: auto;
}

.products-table {
  width: 100%;
  border-collapse: collapse;
  font-family: 'Inter', sans-serif;
  table-layout: fixed;
}

.products-table thead th {
  font-weight: 600;
  font-size: 28.3652px;
  line-height: 34px;
  letter-spacing: -0.03em;
  color: rgba(255, 255, 255, 0.21);
  text-align: left;
  padding: 0 0 24px 0;
  border-bottom: 0.92px solid rgba(194, 197, 204, 0.18);
  vertical-align: bottom;
}

.products-table thead th:nth-child(1) {
  padding-left: 18px;
  width: 40%;
}

.products-table thead th:nth-child(2) {
  text-align: center;
  width: 22%;
}

.products-table thead th:nth-child(3) {
  padding-left: 0;
  width: 38%;
}

.products-table tbody tr {
  border-bottom: 0.92px solid rgba(194, 197, 204, 0.18);
}

.products-table tbody tr:last-child {
  border-bottom: none;
}

.products-table tbody td {
  padding: 29px 0;
  font-size: 29.5354px;
  line-height: 35px;
  letter-spacing: -0.05em;
  color: #FFFFFF;
  vertical-align: middle;
  height: 71px;
  box-sizing: border-box;
}

.products-table tbody td:first-child {
  padding-left: 18px;
  font-weight: 600;
}

.product-num {
  font-family: 'SF Pro Display', -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
  font-size: 29.5354px;
  line-height: 120%;
  letter-spacing: -0.03em;
  color: #C2C5CC;
  margin-right: 4px;
}

.product-price {
  font-weight: 800;
  font-size: 59.0709px;
  line-height: 71px;
  letter-spacing: -0.05em;
  color: rgba(255, 255, 255, 0.5);
  text-align: center;
}

.products-table tbody td:last-child {
  font-weight: 400;
}

.btn-secondary {
  display: flex;
  margin: 0 auto;
  padding: 27.6589px 12.2929px;
  min-width: 351px;
  height: 92px;
  align-items: center;
  justify-content: center;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 30.7321px;
  line-height: 37px;
  color: #FFFFFF;
  background: rgba(51, 65, 85, 0.05);
  box-shadow: -1px -1px 0px #334155, -2px -2px 2px #222C39, inset -1px -1px 0px #252E3C, inset -2px -2px 2px #2A3646;
  border-radius: 999999px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
}

/* ===== Why Choose Us ===== */
.why-choose {
  max-width: 1920px;
  margin: 100px auto;
  padding: 0 149px;
}

.why-choose-inner {
  background: rgba(86, 119, 255, 0.08);
  border-radius: 72.9769px;
  padding: 58px 50px 92px;
  position: relative;
}

.choose-level-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 53px;
  line-height: 67px;
  text-align: center;
  color: #FFFFFF;
  margin-bottom: 73px;
}

.level-cards {
  display: flex;
  justify-content: center;
  gap: 32px;
  margin-bottom: 46px;
  flex-wrap: wrap;
}

.level-card {
  width: 100%;
  max-width: 360px;
  flex: 1;
  min-width: 280px;
  background: rgba(0, 0, 0, 0.05);
  box-shadow: -2px -2px 2px #222C39;
  border-radius: 55px;
  padding: 30px 60px 42px;
}

.level-card:nth-child(2) {
  max-width: 437px;
}

.level-card-featured {
  max-width: 388px;
  background: rgba(0, 0, 0, 0.05);
  box-shadow: -2px -2px 2px #222C39;
}

.level-card-featured .level-card-title {
  width: 328px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
  background: #3597FF;
  box-shadow: 0 0 36.9px rgba(53, 151, 255, 0.3);
  border-radius: 26.5034px;
  padding: 30px 20px;
}

.level-card-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 51.2155px;
  line-height: 80%;
  letter-spacing: -0.05em;
  text-align: center;
  color: #FFFFFF;
  margin-bottom: 45px;
}

.level-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.level-list li {
  display: flex;
  align-items: center;
  gap: 18.41px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 21.35px;
  line-height: 120%;
  letter-spacing: -0.03em;
  color: #FFFFFF;
}

.level-dot {
  width: 5.89px;
  height: 5.89px;
  border-radius: 50%;
  background: #5D5D5D;
  flex-shrink: 0;
}

.btn-contact {
  margin-bottom: 81px;
}

.why-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px 33px;
  max-width: 1075px;
  margin: 0 auto 51px;
}

.why-feature {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.15px;
  padding: 22.7076px 24.9153px;
  background: rgba(255, 255, 255, 0.02);
  border-radius: 28.3845px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 21.35px;
  line-height: 120%;
  letter-spacing: -0.03em;
  color: #00D4FF;
}

.why-check {
  flex-shrink: 0;
}

.why-conclusion {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 56px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  max-width: 1405px;
  margin: 0 auto;
}

/* ===== CTA Section ===== */
.cta {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 149px 125px;
  position: relative;
}

.cta-inner {
  position: relative;
  background: rgba(0, 0, 0, 0.11);
  box-shadow: -1px -1px 0px #334155, -2px -2px 2px #222C39, inset -1px -1px 0px #252E3C, inset -2px -2px 2px #2A3646;
  border-radius: 55px;
  padding: 87px 60px 92px;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}

.cta-deco {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  opacity: 0.9;
}

.cta-deco-left {
  left: -520px;
  transform: translateY(-50%) rotate(15deg);
}

.cta-deco-right {
  right: -520px;
  transform: translateY(-50%) rotate(-9.3deg);
}

.cta-deco img {
  width: 855px;
  height: 855px;
  object-fit: contain;
}

.cta-title {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 83px;
  line-height: 67px;
  text-align: center;
  background: linear-gradient(90deg, rgba(255, 215, 0, 0) 0%, rgba(255, 215, 0, 0.96) 100%), linear-gradient(97.36deg, #FAC695 5.72%, #FFF0E2 128.78%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 61px;
  position: relative;
  z-index: 1;
}

.cta-subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 30px;
  line-height: 44px;
  text-align: center;
  background: linear-gradient(0deg, rgba(255, 179, 0, 0.31), rgba(255, 179, 0, 0.31)), linear-gradient(97.36deg, #FAC695 5.72%, #FFF0E2 128.78%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  max-width: 664px;
  margin-bottom: 58px;
  position: relative;
  z-index: 1;
}

.cta-buttons {
  display: flex;
  gap: 127px;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

.btn-cta-primary {
  padding: 27.6589px 12.2929px;
  min-width: 351px;
  height: 92px;
  background: #FFCD43;
  border: 1px solid #FFFFFF;
  box-shadow: 0px 0px 69.8px rgba(255, 205, 67, 0.31);
  border-radius: 999999px;
  font-size: 30.7321px;
  line-height: 37px;
  color: #8E6800;
}

.btn-cta-outline {
  padding: 27.6589px 12.2929px;
  min-width: 351px;
  height: 92px;
  background: transparent;
  border: 1px solid #FFFFFF;
  border-radius: 999999px;
  font-size: 30.7321px;
  line-height: 37px;
  color: #FFFFFF;
}

/* ===== Footer ===== */
.footer {
  position: relative;
  width: 100%;
  min-height: 688px;
  background: #141622;
  padding: 0;
  box-sizing: border-box;
}

.footer-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.13);
  pointer-events: none;
}

.footer-inner {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  padding: 59px 269px 40px;
  box-sizing: border-box;
}

/* Group 1781: logo centered, 65×65 circle + CryptoSoft Lab. */
.footer-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 23px;
  margin-bottom: 93px;
}

.footer-logo-icon {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  background: #D9D9D9;
  flex-shrink: 0;
}

.footer-logo-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 47.207px;
  line-height: 52px;
  color: #FFFFFF;
}

/* text: 1494×230px, columns with 75px gap */
.footer-columns {
  display: grid;
  grid-template-columns: 178px 239px 152px 315px 310px;
  gap: 0 75px;
  max-width: 1494px;
  margin: 0 auto 25px;
  justify-content: center;
}

.footer-col-title {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 27px;
  line-height: 33px;
  color: #FFFFFF;
  margin-bottom: 32px;
}

.footer-col-important {
  font-weight: 800;
  font-size: 27px;
  line-height: 33px;
  color: rgba(255, 255, 255, 0.5);
}

.footer-col ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-col ul li {
  margin-bottom: 0;
}

.footer-col a,
.footer-col li {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.4);
}

.footer-support {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.73);
  margin: 0 0 10px 0;
}

.footer-muted {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.4);
  margin: 0;
}

.footer-important-lead {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.73);
  margin: 0 0 10px 0;
}

.footer-important-list {
  gap: 10px;
}

.footer-important-list li {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 0;
}

/* Group 1784: disclaimer at 472px */
.footer-disclaimer {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 29px;
  color: rgba(255, 255, 255, 0.6);
  text-align: center;
  margin: 0 auto 88px;
  max-width: 391px;
}

/* Group 1785: copyright at 618px */
.footer-copyright {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20.2759px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.4);
  text-align: center;
  margin: 0 auto;
  max-width: 854px;
}

/* ===== Responsive: Tablet ===== */
@media (max-width: 1200px) {
  .header-inner {
    padding: 0 40px;
  }

  .nav {
    gap: 40px;
    margin-left: 0;
  }

  .nav-link {
    font-size: 22px;
  }

  .hero-poster {
    height: auto;
    min-height: 400px;
  }

  .hero-content {
    padding: 0 40px;
  }

  .hero-title {
    font-size: 42px;
    line-height: 52px;
    margin-bottom: 40px;
  }

  .hero-subtitle {
    font-size: 24px;
    line-height: 44px;
  }

  .hero-shapes {
    display: none;
  }

  .hero-deco {
    display: none;
  }

  .intro-text {
    padding-top: 80px;
    font-size: 24px;
    line-height: 44px;
  }

  .solutions,
  .products,
  .why-choose,
  .cta {
    padding-left: 24px;
    padding-right: 24px;
  }

  .solutions-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 40px;
  }

  .section-title,
  .solutions-title,
  .products-title,
  .choose-level-title {
    font-size: 42px;
    line-height: 52px;
  }

  .level-cards {
    flex-direction: column;
    align-items: center;
  }

  .level-card {
    max-width: 100%;
  }

  .why-features {
    grid-template-columns: repeat(2, 1fr);
  }

  .cta-title {
    font-size: 56px;
    line-height: 60px;
  }

  .cta-deco {
    display: none;
  }

  .footer-columns {
    grid-template-columns: repeat(2, 1fr);
    gap: 48px 24px;
  }

  .footer-inner {
    padding: 48px 24px 32px;
  }
}

/* ===== Responsive: Mobile ===== */
@media (max-width: 768px) {
  .header {
    height: auto;
    padding: 20px 0;
  }

  .header-inner {
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    padding: 0 20px;
  }

  .nav {
    position: static;
    transform: none;
    order: 3;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
  }

  .header-right {
    order: 2;
  }

  .logo {
    order: 1;
  }

  .nav-link {
    font-size: 18px;
  }

  .btn-header {
    min-width: 140px;
    height: 48px;
    font-size: 16px;
  }

  .hero {
    padding: 24px 20px 0;
  }

  .hero-content {
    top: 40px;
    padding: 0 20px;
  }

  .hero-poster {
    min-height: 320px;
    border-radius: 28px;
  }

  .hero-shapes {
    display: none;
  }

  .hero-title {
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 24px;
  }

  .hero-subtitle {
    font-size: 18px;
    line-height: 28px;
  }

  .intro {
    padding: 0 20px;
  }

  .intro-text {
    padding-top: 48px;
    font-size: 18px;
    line-height: 32px;
  }

  .line-intro {
    margin-top: 48px;
  }

  .solutions-header {
    padding: 40px 24px 40px;
    border-radius: 32px;
    min-height: auto;
  }

  .solutions-grid {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 40px;
  }

  .solution-name {
    font-size: 28px;
  }

  .solutions-desc-block {
    padding: 40px 24px 40px;
    margin-top: 40px;
    border-radius: 32px;
  }

  .solutions-desc {
    font-size: 18px;
    line-height: 28px;
  }

  .products-inner {
    padding: 32px 20px 48px;
    border-radius: 32px;
  }

  .products-table thead {
    display: none;
  }

  .products-table tbody tr {
    display: block;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(194, 197, 204, 0.18);
  }

  .products-table tbody td {
    display: block;
    padding: 4px 0;
    font-size: 18px;
  }

  .product-price {
    font-size: 32px;
    margin: 8px 0;
  }

  .btn-secondary {
    min-width: 100%;
    height: 56px;
    font-size: 20px;
  }

  .why-choose-inner {
    padding: 40px 20px 48px;
    border-radius: 32px;
  }

  .choose-level-title {
    font-size: 32px;
    line-height: 40px;
    margin-bottom: 32px;
  }

  .level-card-title {
    font-size: 36px;
  }

  .level-list li {
    font-size: 18px;
  }

  .why-features {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .why-feature {
    font-size: 16px;
    padding: 16px;
  }

  .why-conclusion {
    font-size: 18px;
    line-height: 32px;
  }

  .cta {
    padding: 0 20px 48px;
  }

  .cta-inner {
    padding: 48px 24px 48px;
    border-radius: 28px;
  }

  .cta-title {
    font-size: 36px;
    line-height: 44px;
    margin-bottom: 24px;
  }

  .cta-subtitle {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 32px;
  }

  .cta-buttons {
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }

  .btn-cta-primary,
  .btn-cta-outline {
    min-width: 100%;
    height: 56px;
    font-size: 20px;
  }

  .footer-columns {
    grid-template-columns: 1fr;
    text-align: center;
    margin-bottom: 40px;
  }

  .footer-col-title {
    margin-bottom: 16px;
  }

  .footer-logo {
    margin-bottom: 40px;
  }

  .footer-disclaimer {
    margin-bottom: 24px;
    font-size: 16px;
  }
}
