.elementor-kit-6{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#FF7B00;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* scope everything to this page only */
.page-id-42{background:#000;color:#fff}

/* typography */
.page-id-42 .elementor-widget-heading .elementor-heading-title{color:#fff;font-weight:600;letter-spacing:-.015em}
.page-id-42 h1.elementor-heading-title{font-size:clamp(2.5rem,5vw,4rem)}
.page-id-42 h2.elementor-heading-title{font-size:clamp(2rem,3.6vw,2.75rem)}
.page-id-42 h3.elementor-heading-title{font-size:clamp(1.25rem,2.5vw,1.5rem)}
.page-id-42 .elementor-widget-text-editor,
.page-id-42 .elementor-widget-text-editor p,
.page-id-42 .elementor-widget-text-editor li{color:rgba(255,255,255,.8);line-height:1.6}

/* surfaces */
.page-id-42 .e-con{background:transparent}
.page-id-42 .js-tilt,
.page-id-42 .altdrive-card,
.page-id-42 .elementor-widget-image .elementor-widget-container,
.page-id-42 .elementor-widget-text-editor .elementor-widget-container{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  border-radius:24px
}

/* images */
.page-id-42 .elementor-widget-image img{display:block;width:100%;height:auto;border-radius:20px;object-fit:cover}

/* buttons (add these classes on Button widgets if you want presets) */
.page-id-42 .elementor-button.altdrive-btn-primary{
  background:#fff;color:#000;border-radius:16px;border:0;padding:.9em 1.2em;
  box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 10px 20px -10px rgba(255,255,255,.4)
}
.page-id-42 .elementor-button.altdrive-btn-primary:hover{transform:translateY(-1px)}
.page-id-42 .elementor-button.altdrive-btn-ghost{
  background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:.9em 1.2em
}
.page-id-42 .elementor-button.altdrive-btn-ghost:hover{background:rgba(255,255,255,.08)}

/* pills */
.page-id-42 .altdrive-pill{
  display:inline-flex;align-items:center;gap:.5rem;
  border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);
  border-radius:9999px;padding:.35rem .65rem;font-size:.8rem;color:#fff
}

/* accordion */
.page-id-42 .elementor-accordion .elementor-accordion-item{
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:16px;margin:.5rem 0;overflow:hidden
}
.page-id-42 .elementor-accordion .elementor-tab-title{color:#fff;padding:1rem 1.25rem}
.page-id-42 .elementor-accordion .elementor-tab-content{color:rgba(255,255,255,.75);padding:0 1.25rem 1rem}

/* forms */
.page-id-42 .elementor-form .elementor-field-group input,
.page-id-42 .elementor-form .elementor-field-group select,
.page-id-42 .elementor-form .elementor-field-group textarea{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:12px
}
.page-id-42 .elementor-form .elementor-field-group input:focus,
.page-id-42 .elementor-form .elementor-field-group select:focus,
.page-id-42 .elementor-form .elementor-field-group textarea:focus{
  outline:none;box-shadow:0 0 0 3px rgba(212,175,55,.25);border-color:#d4af37
}
.page-id-42 .elementor-form .elementor-message{color:#fff}

/* marquee visuals and interactions (animations handled by JS too) */
.page-id-42 .js-marquee{display:flex;gap:2rem;animation:marquee 25s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.page-id-42 .js-marquee{animation:none!important}}
.page-id-42 .js-tilt{transition:transform .2s ease-out}
.page-id-42 .js-magnetic{transition:transform .15s ease-out}

/* progress bar offsets */
.page-id-42 .js-page-progress{z-index:99999}
body.admin-bar .page-id-42 .js-page-progress{top:32px}
@media (max-width:782px){body.admin-bar .page-id-42 .js-page-progress{top:46px}}

/* Altdrive essentials (no CSS vars to avoid auto-punctuation issues) */
.js-page-progress{
  position:fixed;inset:0 auto auto 0;height:4px;width:100%;
  transform-origin:left;transform:scaleX(0);
  background:linear-gradient(90deg,#d4af37,#fff);
  z-index:99999;pointer-events:none;
}
body.admin-bar .js-page-progress{ top:32px; }
@media (max-width:782px){ body.admin-bar .js-page-progress{ top:46px; } }

.js-cursor-glow{
  position:fixed;inset:0;pointer-events:none;z-index:9998;
  background:radial-gradient(600px at -9999px -9999px,rgba(212,175,55,.10),transparent 60%);
}

/* interactions */
.js-tilt{will-change:transform;transform-style:preserve-3d;transition:transform .2s ease-out;}
.js-magnetic{will-change:transform;transition:transform .15s ease-out;}
.js-marquee{display:flex;gap:2rem;flex-wrap:nowrap;animation:marquee 25s linear infinite;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* quality-of-life */
.js-parallax-hero{will-change:transform}
.js-marquee img{display:block;width:100%;height:auto;object-fit:cover}
@media (prefers-reduced-motion: reduce){
  .js-marquee{animation:none!important;}
  .js-tilt,.js-magnetic{transition:none!important;}
}

.cards-flex .e-con-inner{
  display:flex;
  flex-wrap:wrap !important;
  gap:24px;
}
.cards-flex .e-con-inner > .e-con{ flex:1 1 calc(33.333% - 24px); min-width:260px; }
@media (max-width:1024px){ .cards-flex .e-con-inner > .e-con{ flex-basis:calc(50% - 24px); } }
@media (max-width:640px){  .cards-flex .e-con-inner > .e-con{ flex-basis:100%; } }

/* ---------- Card gold glow (top-right) ---------- */
.js-tilt,
.altdrive-card { position:relative; overflow:hidden; }
.js-tilt::after,
.altdrive-card::after{
  content:""; position:absolute; right:-60px; top:-60px;
  width:220px; height:220px; pointer-events:none;
  background:radial-gradient(closest-side,
              rgba(212,175,55,.18),
              rgba(212,175,55,.06) 40%,
              transparent 70%);
  filter:blur(12px); transform:translateZ(0);
}

/* ---------- Section vignette + vertical fades ---------- */
.section-vignette{ position:relative; overflow:hidden; background:#0b0b0d; }
.section-vignette::before{
  /* subtle gold glow toward top-right */
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(600px at 85% 0%,
              rgba(212,175,55,.12), transparent 60%);
}
.section-vignette::after{
  /* top & bottom fades */
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.95), transparent 18%),
    linear-gradient(to top,    rgba(0,0,0,.95), transparent 18%);
}

/* ---------- Cards layout that actually wraps (targets Elementor’s inner) ---------- */
.cards-grid .e-con-inner{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
@media (max-width:1024px){ .cards-grid .e-con-inner{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){  .cards-grid .e-con-inner{ grid-template-columns:1fr; } }

/* ---------- Brand marquee fade + continuous loop ---------- */
.marquee-mask{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
          mask-image:linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.js-marquee .e-con-inner{
  display:flex; gap:2rem; flex-wrap:nowrap; width:max-content;
  animation:marquee 25s linear infinite;
}
.marquee-mask:hover .js-marquee .e-con-inner{ animation-play-state:paused; }
@keyframes marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){ .js-marquee .e-con-inner{ animation:none !important; } }

/* clip and fade edges */
.marquee-mask{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);
          mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);
}

/* the moving track is the INNER wrapper */
.js-marquee .e-con-inner{
  display:flex;
  gap:2rem;
  flex-wrap:nowrap;
  width:max-content;                   /* let the row be as wide as its content */
  animation:marquee 25s linear infinite;
}
.marquee-mask:hover .js-marquee .e-con-inner{ animation-play-state:paused; }

@keyframes marquee{
  from{ transform:translateX(0); }
  to{   transform:translateX(-50%); }  /* -50% because items are duplicated */
}
@media (prefers-reduced-motion:reduce){
  .js-marquee .e-con-inner{ animation:none !important; }
}/* End custom CSS */