.elementor-element {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   gap: 35px
}

.elementor-element h2 {
   max-width: 700px;
   margin-bottom: 8px;
   color: #000;
   font-size: 28px;
   line-height: 36px
}

.elementor-element-row,
.faq_wrapper {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   gap: 25px
}

.elementor-element-item,
.faq-box {
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex
}

.elementor-element-item {
   gap: 15px
}

.elementor-element-box {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   gap: 15px
}

.elementor-element-user {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   gap: 20px;
   font-size: 20px;
   font-weight: 600;
   line-height: 1.4em;
   color: #1d274e
}

.elementor-element-num {
   font-size: 20px;
   font-weight: 700;
   line-height: 52px;
   color: #1d274e
}

.elementor-progress-bar {
   background-color: #f4f6fb;
   height: 30px
}

.elementor-progress-bar span {
   background-color: #ffa028;
   display: block;
   height: 30px
}

.faq {
   color: #fff
}

.faq-box {
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   gap: 15px
}

.faq-wrap {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   gap: 30px
}

.faq-box h2 {
   font-size: 65px;
   line-height: 1em
}

.faq-box p {
   font-size: 25px
}

.faq_item {
   padding: 20px;
   background: #fff;
   border-radius: 10px;
   color: #000;
   cursor: pointer
}

.faq_item.active .faq_desc {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex
}

.faq_arrow {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center
}

.faq_item.active .faq_arrow {
   -webkit-transform: rotate(180deg);
   -ms-transform: rotate(180deg);
   transform: rotate(180deg)
}

.faq_titleWrp {
   font-size: 45px;
   font-weight: 700;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
   gap: 15px
}

.faq_subtitle {
   margin: 0
}

.faq_desc {
   display: none
}

.faq_desc span {
   color: #000;
   font-size: var(--font-size-base);
   line-height: 1.65
}

.page-block {
   width: 100%;
   max-width: 800px;
   margin: 30px auto 60px;
   padding: 0 15px
}

.page-block h2 {
   font-size: var(--font-size-h2);
   line-height: 1.25
}

.page-block h3 {
   font-size: var(--font-size-h3);
   line-height: 1.3
}

.page-block p {
   font-size: var(--font-size-base);
   line-height: 1.65;
   margin-bottom: 14px
}

.faq_desc span {
   padding-top: 20px;
}

/* FAQ: long Italian questions must wrap without overlapping */
.faq_titleWrp {
   font-size: inherit;
   align-items: flex-start;
}

.faq_subtitle {
   font-size: var(--font-size-h3);
   line-height: 1.35;
   font-weight: 700;
   flex: 1;
   min-width: 0;
}

.faq_arrow {
   flex-shrink: 0;
   margin-top: 4px;
}

@media (max-width: 480px) {

   .elementor-element-num,
   .elementor-element-user {
      font-size: 16px;
   }
}

.main-nav a.nav-active {
   color: #3ecf8e;
   font-weight: 700;
   text-decoration: underline;
   text-underline-offset: 4px;
}

/* Header/footer logo — keep mark proportions (avoid vertical stretch) */
.header .logo-wraper,
.footer .logo-wraper {
   align-items: center;
   flex-shrink: 0;
   min-width: 0;
}

.header .logo-wraper {
   max-width: calc(100% - 3.5rem);
}

.footer .logo-wraper {
   max-width: 100%;
}

.header .logo-wraper img,
.footer .logo-wraper img {
   width: 32px;
   height: auto !important;
   max-width: 32px;
   max-height: 36px;
   object-fit: contain;
   aspect-ratio: 96 / 108;
   flex-shrink: 0;
}

.header .logo-wraper span,
.footer .logo-wraper span {
   line-height: 1.1;
   flex: 0 1 auto;
   min-width: 0;
}

.header .logo-wraper span {
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
}

/* Desktop hero form: title above fields (crypto.css sets last child to flex-row). */
@media (min-width: 769px) {

   .block-form.hero-v2 .hero-right.block-form__item,
   .block-form.hero-v2 .hero-right.formx4group {
      display: flex !important;
      flex-direction: column !important;
      flex-wrap: nowrap !important;
      align-items: stretch !important;
      justify-content: flex-start !important;
      gap: 16px !important;
   }

   .block-form.hero-v2 .form-hero-title {
      width: 100% !important;
      max-width: none !important;
      margin: 0 !important;
      text-align: center !important;
      line-height: 1.1 !important;
      writing-mode: horizontal-tb !important;
   }

   .block-form.hero-v2 .hero-right .nr-crypto-form {
      width: 100% !important;
      max-width: 400px !important;
      margin: 0 auto !important;
   }
}

@media (max-width: 768px) {
   .header.box {
      padding-top: 16px;
      padding-bottom: 16px;
   }

   .header .logo-wraper img,
   .footer .logo-wraper img {
      width: 28px;
      max-width: 28px;
      max-height: 32px;
   }

   .header .logo-wraper span,
   .footer .logo-wraper span {
      font-size: 18px;
      letter-spacing: 0.04em;
   }

   /*
    * Hero mobile: stack copy first, form second.
    * crypto.css used display:contents on both columns — form title escaped with order:0
    * and appeared above the hero copy.
    */
   .block-form.hero-v2 {
      display: flex !important;
      flex-direction: column-reverse;
      gap: 20px;
   }

   .block-form.hero-v2 .hero-left,
   .block-form.hero-v2 .hero-right {
      display: flex !important;
      flex-direction: column;
      width: 100%;
      max-width: 100%;
   }

   .block-form.hero-v2 .hero-left {
      order: 1;
      gap: 14px;
   }

   .block-form.hero-v2 .hero-right {
      order: 2;
      gap: 12px;
      margin-top: 4px;
   }

   .block-form.hero-v2 h1,
   .block-form.hero-v2 .hero-subheadline,
   .block-form.hero-v2 .hero-text,
   .block-form.hero-v2 .users,
   .block-form.hero-v2 .hero-trust,
   .block-form.hero-v2 .hero-visual,
   .block-form.hero-v2 .form-hero-title,
   .block-form.hero-v2 .formx4group,
   .block-form.hero-v2 .nr-crypto-form {
      order: unset;
   }

   .block-form.hero-v2 .formx4group {
      min-height: 0;
      margin-top: 0;
   }
}

@media (max-width: 380px) {

   .header .logo-wraper span,
   .footer .logo-wraper span {
      font-size: 15px;
   }
}

/*
 * Hero H1 is the small eyebrow line; the big gradient line is .hero-subheadline.
 * Legacy crypto.css forces 80px/100px gradient on any `.block-form h1 span`.
 */
.block-form.hero-v2 h1 span {
   font-size: inherit;
   line-height: inherit;
   font-weight: inherit;
   background: none;
   -webkit-background-clip: border-box;
   background-clip: border-box;
   -webkit-text-fill-color: currentColor;
}

/* Trust chips must stay inside the hero left column instead of sliding under the form. */
.block-form.hero-v2 .hero-trust {
   flex-wrap: wrap;
}

.block-form.hero-v2 .hero-trust li {
   flex: 1 1 200px;
   white-space: normal;
   text-align: left;
   justify-content: flex-start;
}

/* One section-heading scale: crypto.css ships 65px, 64px, 45px and 28px h2 side by side. */
.win h2,
.faq-box h2 {
   font-size: clamp(26px, 2.6vw, 34px);
   line-height: 1.2;
}

/* SEO copy sections share the page-block rhythm instead of their own scale. */
[data-seo-dense] .section-label {
   margin: 0 0 10px;
   font-size: 14px;
   line-height: 1.4;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   color: #3ecf8e;
}

[data-seo-dense] ul {
   list-style: none;
   display: grid;
   gap: 12px;
   margin: 20px 0 0;
   padding: 0;
}

[data-seo-dense] li {
   font-size: var(--font-size-base);
   line-height: 1.6;
   background: rgba(255, 255, 255, 0.05);
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: 12px;
   padding: 12px 14px;
}

@media (min-width: 769px) {
   [data-seo-dense] ul {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}
/* psi-contrast */
section.box > h2, .box h2 { color: #f5f7f6 !important; }

/* ── nr-agg-trust-banner: AggregateRating visible block ── */
.nr-agg-trust-banner {
  background: linear-gradient(135deg, #1d274e 0%, #162040 100%);
  padding: 20px 0;
}
.nr-agg-trust-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.nr-agg-trust-badge {
  background: #3ecf8e;
  color: #0a1628;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  border-radius: 4px;
  padding: 3px 9px;
  white-space: nowrap;
}
.nr-agg-trust-heading {
  color: #e2e8f0;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  flex: 1 1 160px;
}
.nr-agg-trust-score {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.nr-agg-trust-stars {
  color: #3ecf8e;
  font-size: 18px;
  letter-spacing: 1px;
}
.nr-agg-trust-value {
  color: #fff;
  font-size: 22px;
  font-weight: 700;
}
.nr-agg-trust-max {
  color: #94a3b8;
  font-size: 14px;
}
.nr-agg-trust-meta {
  color: #94a3b8;
  font-size: 13px;
  margin: 0;
}
.nr-agg-trust-meta strong {
  color: #e2e8f0;
}
@media (max-width: 600px) {
  .nr-agg-trust-inner {
    gap: 12px;
  }
  .nr-agg-trust-value {
    font-size: 18px;
  }
}
