:root{
  --cn3dx-lime:#b8ff45;
  --cn3dx-mint:#28dfaa;
  --cn3dx-deep:#061814;
  --cn3dx-forest:#0d2d25;
  --cn3dx-ink:#07110f;
  --cn3dx-paper:#eef5ef;
  --cn3dx-white:#ffffff;
  --cn3dx-muted:#66736d;
  --cn3dx-line:#cfddd5;
}

.cn3dx-hero,.cn3dx-intro,.cn3dx-services,.cn3dx-promise,.cn3dx-cta,
.cn3dx-hero *,.cn3dx-intro *,.cn3dx-services *,.cn3dx-promise *,.cn3dx-cta *{
  box-sizing:border-box;
}

.cn3dx-hero .elementor-heading-title,.cn3dx-intro .elementor-heading-title,
.cn3dx-services .elementor-heading-title,.cn3dx-promise .elementor-heading-title,
.cn3dx-cta .elementor-heading-title,
.cn3dx-hero p,.cn3dx-intro p,.cn3dx-services p,.cn3dx-promise p,.cn3dx-cta p,
.cn3dx-hero li,.cn3dx-intro li,.cn3dx-services li,.cn3dx-promise li,.cn3dx-cta li{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

.cn3dx-hero .elementor-widget,.cn3dx-intro .elementor-widget,
.cn3dx-services .elementor-widget,.cn3dx-promise .elementor-widget,.cn3dx-cta .elementor-widget{
  margin:0;
}

.cn3dx-hero{
  min-height:760px;
  padding:190px clamp(24px,7vw,120px) 90px;
  display:flex!important;
  justify-content:center;
  color:#fff;
  background:
    radial-gradient(circle at 91% 58%,rgba(40,223,170,.24),transparent 28%),
    linear-gradient(90deg,#061914 0%,#0b2d25 57%,#aeb8b4 100%);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.cn3dx-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(3,20,17,.40) 0%,rgba(6,31,26,.16) 58%,rgba(255,255,255,.05) 100%);
  pointer-events:none;
}

.cn3dx-hero:after{
  content:"";
  position:absolute;
  right:-180px;
  bottom:-260px;
  width:680px;
  height:680px;
  border-radius:50%;
  border:1px solid #b8ff4536;
  box-shadow:0 0 120px #28dfaa26;
  z-index:2;
  pointer-events:none;
}

.cn3dx-hero-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:0;
}

.cn3dx-hero-image .elementor-widget-container,.cn3dx-hero-image img{
  width:100%!important;
  height:100%!important;
}

.cn3dx-hero-image img{
  display:block;
  object-fit:cover;
  object-position:center;
}

.cn3dx-hero-content{
  position:relative;
  z-index:3;
  width:min(100%,900px)!important;
  max-width:900px!important;
  margin-right:auto;
  gap:0!important;
}

.cn3dx-eyebrow{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:#fff;
  font-size:10px;
  line-height:1.4;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.cn3dx-eyebrow p{margin:0!important;}
.cn3dx-eyebrow p:before{
  content:"";
  display:inline-block;
  width:34px;
  height:2px;
  margin-right:12px;
  vertical-align:middle;
  background:linear-gradient(90deg,var(--cn3dx-lime),var(--cn3dx-mint));
}
.cn3dx-eyebrow.cn3dx-dark{color:#365047;}

.cn3dx-hero-title{margin:34px 0!important;overflow:visible!important;}
.cn3dx-hero-title .elementor-heading-title{
  color:#fff!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(60px,7.5vw,116px)!important;
  line-height:.84!important;
  font-weight:900!important;
  letter-spacing:-.068em!important;
  text-transform:uppercase;
}
.cn3dx-hero-title em{font-style:normal;color:var(--cn3dx-lime);}
.cn3dx-hero-lead{
  max-width:620px!important;
  color:#d5e2dc;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-size:17px;
  line-height:1.75;
}
.cn3dx-hero-lead p{margin:0!important;}

.cn3dx-actions{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap;
  gap:14px!important;
  margin-top:38px!important;
}
.cn3dx-actions>.elementor-element{width:auto!important;}

.cn3dx-button .elementor-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:18px 26px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(120deg,var(--cn3dx-lime),var(--cn3dx-mint))!important;
  color:var(--cn3dx-ink)!important;
  box-shadow:0 14px 34px #28dfaa2d;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:transform .2s ease,box-shadow .2s ease;
}
.cn3dx-button .elementor-button:hover{transform:translateY(-2px);box-shadow:0 18px 40px #28dfaa42;}
.cn3dx-button-ghost .elementor-button{background:#ffffff0b!important;color:#fff!important;border:1px solid #ffffff55!important;box-shadow:none;backdrop-filter:blur(8px);}

.cn3dx-hero-index{
  position:absolute!important;
  right:clamp(25px,7vw,110px);
  bottom:65px;
  z-index:3;
  width:auto!important;
}
.cn3dx-hero-index p{display:flex;align-items:center;gap:18px;margin:0!important;}
.cn3dx-hero-index strong{font:900 56px/.8 Inter,ui-sans-serif,system-ui;color:var(--cn3dx-lime);letter-spacing:-.07em;}
.cn3dx-hero-index span{padding-left:18px;border-left:1px solid #ffffff47;color:#d4dfda;font:800 9px/1.7 Inter,ui-sans-serif,system-ui;letter-spacing:.11em;text-transform:uppercase;}

.cn3dx-intro{
  display:flex!important;
  flex-direction:row!important;
  gap:10%;
  align-items:flex-start;
  padding:110px clamp(24px,7vw,120px);
  background:
    radial-gradient(circle at 85% 10%,#28dfaa14,transparent 30%),
    var(--cn3dx-paper);
  color:var(--cn3dx-ink);
}
.cn3dx-intro-heading{flex:1 1 0;width:auto!important;gap:24px!important;}
.cn3dx-intro-copy{flex:.85 1 0;width:auto!important;gap:25px!important;padding-top:38px;}

.cn3dx-section-title .elementor-heading-title{
  color:var(--cn3dx-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(44px,5vw,76px)!important;
  line-height:.92!important;
  font-weight:900!important;
  letter-spacing:-.055em!important;
  text-transform:uppercase;
}
.cn3dx-copy{color:var(--cn3dx-muted);font:400 16px/1.85 Inter,ui-sans-serif,system-ui;}
.cn3dx-copy p{margin:0!important;}
.cn3dx-trust p{display:flex;flex-wrap:wrap;gap:12px;margin:0!important;}
.cn3dx-trust span{padding:10px 14px;border:1px solid #bdd0c4;border-radius:999px;color:#27493c;font:800 9px/1 Inter,ui-sans-serif,system-ui;letter-spacing:.06em;text-transform:uppercase;background:#fff8;}

.cn3dx-services{
  padding:105px clamp(24px,7vw,120px) 80px;
  background:#f9fbf9;
  color:var(--cn3dx-ink);
  gap:0!important;
}
.cn3dx-services-heading{max-width:950px!important;gap:22px!important;margin-bottom:65px;}

.cn3dx-service-row{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch;
  gap:clamp(40px,7vw,105px)!important;
  padding:65px 0;
  border-top:1px solid var(--cn3dx-line);
}
.cn3dx-service-row.cn3dx-reverse{flex-direction:row-reverse!important;}
.cn3dx-service-row>.elementor-element{min-width:0!important;}
.cn3dx-service-copy{
  flex:1 1 0;
  width:auto!important;
  justify-content:center;
  gap:0!important;
  padding:20px 0;
}
.cn3dx-service-title{margin:18px 0 24px!important;overflow:visible!important;}
.cn3dx-service-title .elementor-heading-title{
  color:var(--cn3dx-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(43px,5vw,75px)!important;
  line-height:.9!important;
  font-weight:900!important;
  letter-spacing:-.06em!important;
  text-transform:uppercase;
}
.cn3dx-service-description{max-width:660px!important;color:var(--cn3dx-muted);font:400 15px/1.8 Inter,ui-sans-serif,system-ui;}
.cn3dx-service-description p{margin:0!important;}
.cn3dx-service-points{margin:23px 0 28px!important;}
.cn3dx-service-points ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:10px;}
.cn3dx-service-points li{color:#27493c;font:700 12px/1.5 Inter,ui-sans-serif,system-ui;}
.cn3dx-service-points li span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:10px;border-radius:50%;background:#dcf7ca;color:#326a35;font-size:10px;}
.cn3dx-service-copy>.cn3dx-button{width:auto!important;align-self:flex-start;}

.cn3dx-service-visual-wrap{
  position:relative;
  flex:0 1 45%;
  width:45%!important;
  min-height:540px;
  overflow:hidden;
  border-radius:30px;
  background:var(--cn3dx-forest);
  box-shadow:0 26px 65px #071d1924;
}
.cn3dx-service-visual-wrap:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,#06181494,transparent 48%);
  pointer-events:none;
}
.cn3dx-service-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.cn3dx-service-image .elementor-widget-container,.cn3dx-service-image img{width:100%!important;height:100%!important;}
.cn3dx-service-image img{display:block;object-fit:cover;object-position:center;transition:transform .7s ease;}
.cn3dx-service-row:hover .cn3dx-service-image img{transform:scale(1.035);}
.cn3dx-service-number{position:absolute!important;left:24px;bottom:22px;z-index:2;width:auto!important;}
.cn3dx-service-number p{margin:0!important;color:#fff;font:900 50px/.8 Inter,ui-sans-serif,system-ui;letter-spacing:-.06em;}

.cn3dx-promise{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:9%;
  padding:100px clamp(24px,7vw,120px);
  color:#fff;
  background:
    radial-gradient(circle at 85% 20%,#28dfaa24,transparent 35%),
    linear-gradient(135deg,#061814,#0d342a);
  overflow:hidden;
}
.cn3dx-promise-number{flex:0 0 auto;width:auto!important;}
.cn3dx-promise-number p{margin:0!important;color:var(--cn3dx-lime);font:900 clamp(110px,16vw,245px)/.72 Inter,ui-sans-serif,system-ui;letter-spacing:-.09em;}
.cn3dx-promise-copy{flex:1 1 0;width:auto!important;gap:22px!important;}
.cn3dx-promise .cn3dx-section-title .elementor-heading-title{color:#fff!important;}
.cn3dx-copy-light{max-width:620px!important;color:#bfd0c8;font:400 15px/1.8 Inter,ui-sans-serif,system-ui;}
.cn3dx-copy-light p{margin:0!important;}

.cn3dx-cta{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  justify-content:space-between;
  gap:50px;
  padding:95px clamp(24px,7vw,120px);
  color:var(--cn3dx-ink);
  background:linear-gradient(120deg,var(--cn3dx-lime),var(--cn3dx-mint));
}
.cn3dx-cta-copy{width:auto!important;max-width:900px!important;gap:22px!important;}
.cn3dx-cta>.cn3dx-button{width:auto!important;flex:0 0 auto;}
.cn3dx-button-dark .elementor-button{background:var(--cn3dx-ink)!important;color:#fff!important;box-shadow:0 16px 40px #07110f25;}

body.elementor-editor-active .cn3dx-service-image,
body.elementor-editor-active .cn3dx-hero-image{pointer-events:auto;}

@media(max-width:900px){
  .cn3dx-hero{min-height:720px;padding:165px 24px 90px;}
  .cn3dx-hero-title .elementor-heading-title{font-size:clamp(48px,13vw,72px)!important;}
  .cn3dx-hero-image img{object-position:56% center;}
  .cn3dx-hero-index{right:24px;bottom:28px;}
  .cn3dx-intro,.cn3dx-promise,.cn3dx-cta{flex-direction:column!important;align-items:stretch;padding:75px 24px;gap:35px;}
  .cn3dx-intro-heading,.cn3dx-intro-copy,.cn3dx-promise-copy{width:100%!important;}
  .cn3dx-intro-copy{padding-top:0;}
  .cn3dx-services{padding:75px 24px 55px;}
  .cn3dx-service-row,.cn3dx-service-row.cn3dx-reverse{flex-direction:column!important;gap:28px!important;padding:50px 0;}
  .cn3dx-service-copy,.cn3dx-service-visual-wrap{width:100%!important;flex:1 1 auto;}
  .cn3dx-service-visual-wrap{min-height:430px;order:-1;}
  .cn3dx-promise-number p{font-size:clamp(100px,35vw,170px);}
  .cn3dx-cta>.cn3dx-button{align-self:flex-start;}
}

@media(max-width:520px){
  .cn3dx-hero{min-height:700px;padding-top:155px;}
  .cn3dx-hero-title .elementor-heading-title{font-size:clamp(42px,13vw,59px)!important;line-height:.88!important;}
  .cn3dx-hero-lead{font-size:15px;}
  .cn3dx-actions{flex-direction:column!important;align-items:stretch;}
  .cn3dx-actions>.elementor-element,.cn3dx-actions .elementor-button{width:100%!important;}
  .cn3dx-hero-index{display:none;}
  .cn3dx-section-title .elementor-heading-title{font-size:clamp(38px,11vw,55px)!important;}
  .cn3dx-services-heading{margin-bottom:35px;}
  .cn3dx-service-title .elementor-heading-title{font-size:clamp(38px,11.5vw,55px)!important;}
  .cn3dx-service-visual-wrap{min-height:320px;border-radius:22px;}
  .cn3dx-trust p{flex-direction:column;align-items:flex-start;}
  .cn3dx-cta>.cn3dx-button,.cn3dx-cta>.cn3dx-button .elementor-button{width:100%!important;}
}
