.elementor-66 .elementor-element.elementor-element-32833d27{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-66 .elementor-element.elementor-element-7dbabf51{--display:flex;--min-height:50vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#FFFFFF0A;--border-color:#FFFFFF0A;--border-radius:10px 10px 10px 10px;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-66 .elementor-element.elementor-element-7dbabf51.e-con{--align-self:flex-start;}.elementor-66 .elementor-element.elementor-element-548a46c4:hover{--e-transform-rotateZ:-5deg;--e-transform-scale:1.2;}.elementor-66 .elementor-element.elementor-element-548a46c4.elementor-element{--align-self:center;}.elementor-66 .elementor-element.elementor-element-548a46c4{--e-transform-transition-duration:500ms;}.elementor-66 .elementor-element.elementor-element-56583c9c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#FFFFFF0A;--border-color:#FFFFFF0A;--border-radius:10px 10px 10px 10px;--padding-top:2%;--padding-bottom:2%;--padding-left:2%;--padding-right:2%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-66 .elementor-element.elementor-element-483e7520 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:1vw;font-weight:400;line-height:1.5em;color:#F2EFEB;}.elementor-66 .elementor-element.elementor-element-406c58cf{--spacer-size:15px;}.elementor-66 .elementor-element.elementor-element-35681685 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:1vw;font-weight:400;line-height:1.5em;color:#F2EFEB;}body.elementor-page-66:not(.elementor-motion-effects-element-type-background), body.elementor-page-66 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#262626;}@media(max-width:1024px){.elementor-66 .elementor-element.elementor-element-32833d27{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-66 .elementor-element.elementor-element-56583c9c{--padding-top:5%;--padding-bottom:5%;--padding-left:5%;--padding-right:5%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-66 .elementor-element.elementor-element-483e7520 .elementor-heading-title{font-size:15px;}.elementor-66 .elementor-element.elementor-element-35681685 .elementor-heading-title{font-size:15px;}}@media(max-width:767px){.elementor-66 .elementor-element.elementor-element-32833d27{--padding-top:0%;--padding-bottom:0%;--padding-left:10%;--padding-right:10%;}.elementor-66 .elementor-element.elementor-element-7dbabf51{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-66 .elementor-element.elementor-element-548a46c4.elementor-element{--align-self:center;}.elementor-66 .elementor-element.elementor-element-56583c9c{--padding-top:10%;--padding-bottom:10%;--padding-left:10%;--padding-right:10%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-66 .elementor-element.elementor-element-483e7520 .elementor-heading-title{font-size:15px;}.elementor-66 .elementor-element.elementor-element-35681685 .elementor-heading-title{font-size:15px;}}@media(min-width:768px){.elementor-66 .elementor-element.elementor-element-32833d27{--content-width:90%;}.elementor-66 .elementor-element.elementor-element-7dbabf51{--width:50%;}.elementor-66 .elementor-element.elementor-element-56583c9c{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-66 .elementor-element.elementor-element-7dbabf51{--width:100%;}.elementor-66 .elementor-element.elementor-element-56583c9c{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-548a46c4 *//* ===== Rolling Button (infinite on hover + slows to stop on mouse off) ===== */

.roll-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: #ff7a00 !important;
  color: #F2EFEB !important;

  padding: 3vh 3vw;
  border-radius: 6px;
  text-decoration: none;

  font-weight: 800;
  font-size: 1.8vh;
  letter-spacing: 0.5px;
  text-transform: uppercase;

  line-height: 1;

  transition: background-color 200ms ease, color 200ms ease, filter 200ms ease;
}

.roll-btn__viewport{
  display: block;
  height: 1em;          /* exactly one line tall */
  overflow: hidden;
}

.roll-btn__text{
  display: block;
  height: 1em;          /* each line is exactly one line */
}

/* Infinite rolling animation:
   - Use 3 copies of the text in HTML
   - Moves up 2 lines then loops seamlessly */
@keyframes rollLoop {
  from { transform: translateY(0); }
  to   { transform: translateY(-2em); }
}

/* Default (not hovered): sit at rest.
   When hover ends, the animation is removed and this transition makes it "coast" back to rest */
.roll-btn__stack{
  display: block;
  will-change: transform;
  transform: translateY(0);
  transition: transform 900ms cubic-bezier(.16,1,.3,1); /* "slow down to a stop" feel */
}

/* Hover / focus: roll infinitely */
.roll-btn:hover .roll-btn__stack,
.roll-btn:focus-visible .roll-btn__stack{
  animation: rollLoop 0.5s linear infinite; /* change duration to adjust speed */
}

/* Optional: slightly nicer feel */
.roll-btn:hover,
.roll-btn:focus-visible{
  background: #ff7a00 !important;
  color: #F2EFEB !important;
  filter: brightness(0.98);
}

/* Screen-reader text (accessibility) */
.roll-btn__sr{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .roll-btn__stack{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7ee1bf2a */.cgpt-code-card{
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  overflow: hidden;
  background: #262626;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

/* Header bar (prevents clipping) */
.cgpt-code-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 10px;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.cgpt-code-title{
  color: rgba(255,255,255,.75);
  font-size: 12px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

/* Copy button */
.cgpt-copy-btn{
  padding: 7px 10px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(38, 38, 38, 1);
  color: rgba(255,255,255,.92);
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
}

.cgpt-copy-btn:hover{ background: rgba(255, 122, 0, 1); }
.cgpt-copy-btn:active{ transform: translateY(1px); }

/* Code area */
.cgpt-pre{
  margin: 0;
  padding: 14px 16px 16px;
  overflow: auto;
  max-height: 520px; /* optional */
}

.cgpt-code{
  display: block;
  color: rgba(255,255,255,.92);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 14px;
  line-height: 1.55;
  white-space: pre;
}

/* Hide source textarea */
.cgpt-code-source{ display:none; }

.cgpt-copy-btn { font-family: "Poppins", sans-serif; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2bc67c88 */.cgpt-code-card{
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  overflow: hidden;
  background: #262626;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

/* Header bar (prevents clipping) */
.cgpt-code-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 10px;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.cgpt-code-title{
  color: rgba(255,255,255,.75);
  font-size: 12px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

/* Copy button */
.cgpt-copy-btn{
  padding: 7px 10px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(38, 38, 38, 1);
  color: rgba(255,255,255,.92);
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
}

.cgpt-copy-btn:hover{ background: rgba(255, 122, 0, 1); }
.cgpt-copy-btn:active{ transform: translateY(1px); }

/* Code area */
.cgpt-pre{
  margin: 0;
  padding: 14px 16px 16px;
  overflow: auto;
  max-height: 520px; /* optional */
}

.cgpt-code{
  display: block;
  color: rgba(255,255,255,.92);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 14px;
  line-height: 1.55;
  white-space: pre;
}

/* Hide source textarea */
.cgpt-code-source{ display:none; }/* End custom CSS */