/* ══════════ HERO ══════════ */
#s-hero{
  min-height:100vh;
  max-height:100vh;
  background:var(--bg);
  position:relative;overflow:hidden;
  padding-top:66px;
}

#s-hero>.vc_column_container>.vc_column-inner{padding:0!important;}

/* grid texture overlay */
.hero-grid-tex{
  position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(97,64,230,0.13) 1px,transparent 1px);
  background-size:28px 28px;
  mask-image:radial-gradient(ellipse 80% 80% at 68% 44%,black 0%,transparent 100%);
  pointer-events:none;z-index:0;
}
/* violet glow — top left, behind left panel */
.hero-glow-l{
  position:absolute;top:-140px;left:-100px;
  width:clamp(400px,55vw,700px);height:clamp(400px,55vw,700px);
  border-radius:50%;
  background:radial-gradient(circle,rgba(97,64,230,0.1) 0%,transparent 68%);
  pointer-events:none;z-index:0;
  animation:glowpulse 11s ease-in-out infinite;
}
@keyframes glowpulse{0%,100%{transform:scale(1);}50%{transform:scale(1.07) translate(12px,-8px);}}

/* vertical divider between panels */
.hero-divider{
  position:absolute;
  top:10%;bottom:10%;
  left:50%;
  width:1px;
  background:linear-gradient(to bottom,transparent,var(--br) 30%,var(--br) 70%,transparent);
  z-index:1;
  transform:translateX(-50%);
}

.hero-inner{display:flex;align-items:center;}

/* ── LEFT PANEL — statement ── */
.hero-left{
  position:relative;z-index:2;
  padding:clamp(28px,3.5vw,56px) clamp(28px,4vw,64px) clamp(28px,3.5vw,56px) 5% !important;
}

.hero-left>.vc_column-inner>.wpb_wrapper{display:flex;flex-direction:column;justify-content:space-between;}
.hero-kicker{
  font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ac);display:flex;align-items:center;gap:10px;
  margin-bottom:clamp(24px,3vw,44px);
}
.hero-kicker::before{content:"";width:20px;height:1.5px;background:var(--ac);}

/* big headline */
.hero-headline{
    font-family:'Outfit',sans-serif!important;
  font-size:clamp(36px,5.2vw,78px);
  font-weight:900;letter-spacing:-.05em;line-height:.95;
  color:var(--t1);
  margin-bottom:clamp(16px,2vw,28px);
}
.hero-headline em{font-style:normal;font-weight:300;color:var(--ac);}
/* .hero-headline .ghost{
  -webkit-text-stroke:1.5px rgba(14,13,11,0.2);
  color:transparent;
} */
.hero-h1 h1 .ghost{
  color:var(--t1);font-weight:900;
  position:relative;display:inline;
}
.ghost::before{
  content:"";
  position:absolute;
  left:-4px;right:-4px;
  bottom:6px;
  height:40%;
  background:var(--ac);
  opacity:0.18;
  border-radius:4px;
  z-index:-1;
  transform:skewX(-2deg);
}

.hero-body{
  font-size:clamp(14px,1.5vw,17px);font-weight:400;
  color:var(--t2);line-height:1.78;
  max-width:480px;
  margin-bottom:clamp(16px,2vw,28px);
}

/* hero-scroll-cta removed — redundant */

/* bottom — scroll indicator */
.hero-left-bottom{position:absolute;bottom:-120px;display:flex;align-items:center;gap:12px;}
.hero-scroll-line{width:40px;height:1px;background:rgba(14,13,11,0.18);position:relative;overflow:hidden;flex-shrink:0;}
.hero-scroll-line::after{content:"";position:absolute;top:0;left:-100%;height:100%;width:100%;background:var(--ac);animation:scrollL 2.4s cubic-bezier(.4,0,.2,1) infinite;}
@keyframes scrollL{0%{left:-100%;}50%{left:0%;}100%{left:100%;}}
.hero-scroll-txt{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--t3);}

/* ── RIGHT PANEL — contact details ── */
.hero-right{
  position:relative;z-index:2;
  display:flex;flex-direction:column;justify-content:center;
  padding:clamp(44px,5.5vw,80px) clamp(40px,5vw,80px) clamp(44px,5.5vw,80px) clamp(28px,4vw,64px) !important;
  /* keep clear of side nav */
  padding-right:clamp(72px,9vw,110px) !important;
}

/* large ghost "CONTACT" behind contact rows */
.contact-wm{
  position:absolute;
  bottom:-30px;right:5%;
  font-size:clamp(80px,11vw,160px);font-weight:900;
  letter-spacing:-.07em;line-height:1;
  -webkit-text-stroke:1px rgba(14,13,11,0.05);color:transparent;
  pointer-events:none;user-select:none;z-index:0;
  white-space:nowrap;
}

/* availability badge top */
.availability-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(97,64,230,0.08);border:1px solid rgba(97,64,230,0.2);
  border-radius:100px;padding:8px 18px;
  margin-bottom:clamp(28px,4vw,52px);
  width:fit-content;
}
.avail-text{display:flex;justify-content:space-between;align-items:center;gap:8px;position:relative;font-size:11px;font-weight:600;color:var(--t2);letter-spacing:.06em;}
.avail-text::before{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#22c55e;flex-shrink:0;animation:availpulse 2.5s ease-in-out infinite;}
@keyframes availpulse{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,0.4);}50%{box-shadow:0 0 0 6px rgba(34,197,94,0);}}
.avail-text strong{color:#16a34a;font-weight:700;}

/* contact detail rows — editorial bold strips */
.contact-strips{display:flex;flex-direction:column;gap:0;position:relative;z-index:1;}
.contact-strip{
  display:flex;align-items:flex-start;
  /* generous gap so icon never touches any edge effect */
  gap:clamp(20px,2.8vw,36px);
  padding:clamp(20px,2.5vw,32px) 0;
  border-top:1px solid var(--br);
  cursor:none;
  transition:border-top-color .3s,background .3s;
  border-radius:0;
}
.contact-strip:last-child{border-bottom:1px solid var(--br);}
/* hover: subtle background tint — no pseudo-element, zero overlap */
.contact-strip:hover{
  border-top-color:rgba(97,64,230,0.28);
  background:rgba(97,64,230,0.05);
  border-radius:10px;
}
/* no ::before at all */

.strip-icon{
  width:40px;height:40px;border-radius:12px;flex-shrink:0;
  background:rgba(97,64,230,0.12);border:1px solid rgba(97,64,230,0.22);
  display:flex;align-items:center;justify-content:center;
  margin-top:4px;
  transition:background .25s,transform .4s cubic-bezier(.34,1.56,.64,1);
  position:relative;z-index:1;
}
.contact-strip:hover .strip-icon{background:rgba(97,64,230,0.28);transform:rotate(-6deg) scale(1.1);}
.strip-content{position:relative;z-index:1;}
.strip-icon svg{width:15px;height:15px;stroke:var(--ac);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

.strip-content{}
.strip-label{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--t3);margin-bottom:6px;}
.strip-value{font-size:clamp(15px,1.8vw,20px);font-weight:700;color:var(--t1);letter-spacing:-.02em;line-height:1.3;}
.strip-value a{color:var(--t1);text-decoration:none;transition:color .22s;}
.strip-value a:hover{color:var(--ac);}
.strip-sub{font-size:12px;font-weight:400;color:var(--t3);margin-top:3px;}

/* MARQUEE */
.marquee-wrap{background:var(--ac);padding:12px 0;overflow:hidden;white-space:nowrap;position:relative;z-index:10;}
#marquee .vc_column-inner{padding:0;}
.marquee-wrap .wpb_text_column{margin-bottom:0!important;}
.mq-track{display:inline-flex;animation:mq 36s linear infinite;}
.mq-item{font-size:11px;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,0.8);text-transform:uppercase;padding:0 26px;display:inline-flex;align-items:center;gap:14px;}
.mq-item::after{content:"✦";font-size:7px;opacity:.5;}
@keyframes mq{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ══════════ FORM SECTION — radial clip-path reveal ══════════ */
#s-form{
  position:relative;
  /* base background is dark — the clip-path reveal shows bg2 beneath */
  background:var(--dark);
  overflow:hidden;
}

/* The REVEAL LAYER — bg2 color, starts as a tiny circle at bottom-center,
   expands radially until filling the section.
   clip-path: circle(radius at x y)
   start: circle(0% at 50% 100%) — zero-size circle at bottom center
   end:   circle(150% at 50% 100%) — large enough to cover everything */
.form-reveal-layer{
  position:absolute;inset:0;
  background:#fff;
  clip-path:circle(0% at 50% 100%);
  transition:clip-path 2.2s cubic-bezier(.16,1,.3,1);
  z-index:0;
  will-change:clip-path;
}
#s-form.form-revealed .form-reveal-layer{
  clip-path:circle(150% at 50% 100%);
}

/* inner content — sits above the reveal layer */
.form-content{
  position:relative;z-index:1;
  max-width:1280px;margin:0 auto;
  padding:clamp(80px,10vw,130px) 5%;
  align-items:start;
}

/* ── FORM LEFT — section header ── */
.form-left{padding-right:100px;}
.form-section-kicker{
  font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ac);display:flex;align-items:center;gap:10px;
  margin-bottom:clamp(20px,2.5vw,32px);
}
.form-section-kicker::before{content:"";width:20px;height:1.5px;background:var(--ac);}

.form-section-title{
  font-family:'Outfit',sans-serif!important;
  font-size:clamp(28px,3.8vw,52px);font-weight:900;letter-spacing:-.04em;
  line-height:1.05;color:var(--t1);
  margin-bottom:clamp(16px,2vw,28px);
}
.form-section-title em{font-style:normal;font-weight:300;color:var(--ac);}

.form-section-body{
  font-size:clamp(14px,1.5vw,16px);font-weight:400;color:var(--t2);
  line-height:1.82;margin-bottom:clamp(28px,4vw,48px);
}

/* topics we handle — small chip list */
.form-topics-label{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--t3);margin-bottom:10px;}
.form-topic-chips{display:flex;flex-wrap:wrap;gap:7px;}
.form-chip{
  font-size:11px;font-weight:600;color:var(--t2);
  background:#fff;border:1px solid var(--br);
  border-radius:20px;padding:5px 14px;
}

/* large ghost number */
.form-ghost-num{
  font-size:clamp(120px,18vw,260px);font-weight:900;
  letter-spacing:-.08em;line-height:1;
  color:rgba(14,13,11,0.05);
  margin-top:clamp(24px,3vw,40px);
  user-select:none;pointer-events:none;
}

/* ── FORM RIGHT — the actual form ── */
.form-right{}
.form-right .vc_column-inner{
  background:#fff;
  border-radius:24px;
  padding:clamp(28px,4vw,48px)!important;
  box-shadow:0 24px 64px rgba(14,13,11,0.1);
}
.form-right .wpb_text_column{margin-bottom:0!important;}
.form-card-title{
  display:flex;
  gap:4px;
  font-size:clamp(16px,1.8vw,22px);font-weight:900;
  letter-spacing:-.03em;color:var(--t1);
  margin-bottom: 15px!important;
}
.form-card-title > p{margin-bottom:0!important;}
.form-card-title > div{color:var(--ac);}

.cform{display:flex;flex-direction:column;gap:clamp(14px,1.8vw,20px);}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.2vw,14px);}
.fg{display:flex;flex-direction:column;gap:7px;}
#s-form form{row-gap:0;}
#s-form label,#s-form legend{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--t3);}
#s-form .ts-control-placeholder{font-size: 14px;}
#s-form input,#s-form select{
  background:var(--bg);border:1.5px solid var(--br);border-radius:12px;
  padding:clamp(11px,1.4vw,15px) clamp(13px,1.6vw,17px);
  font-family:"Outfit",sans-serif;font-size:14px;font-weight:400;color:var(--t1);
  outline:none;width:100%;cursor:none;
  transition:border-color .25s,background .25s,box-shadow .25s;
}
#s-form input::placeholder,#s-form select::placeholder{color:var(--t3);}
#s-form input:focus,#s-form select:focus{border-color:var(--ac);background:#fff;box-shadow:0 0 0 3px rgba(97,64,230,0.1);}
#s-form textarea{resize:none;min-height:clamp(100px,11vw,140px);line-height:1.6;}
#s-form textarea::placeholder{font-size:14px;}

/* interest pills — checkbox toggle */
.interest-wrap{display:flex;flex-wrap:wrap;gap:7px;}
.int-check{display:none;}
.int-label{
  font-size:11px;font-weight:600;color:var(--t2);
  background:var(--bg2);border:1.5px solid var(--br);
  border-radius:100px;padding:6px 14px;cursor:none;display:inline-block;
  transition:background .2s,color .2s,border-color .2s,transform .28s cubic-bezier(.34,1.56,.64,1);
}
.int-check:checked+.int-label{
  background:var(--ac);color:#fff;border-color:var(--ac);
  transform:scale(1.04);
}
.int-label:hover{background:var(--acl);border-color:var(--acb);color:var(--ac);}

/* submit row */
.fsubmit-row{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding-top:clamp(4px,0.8vw,8px);
  flex-wrap:wrap;
}
#s-form button{
  padding:clamp(13px,1.6vw,16px) clamp(26px,3.2vw,34px);
  background:var(--ac);color:#fff;font-family:"Outfit",sans-serif;
  font-size:14px;font-weight:700;border-radius:100px;border:none;cursor:none;
  display:inline-flex;align-items:center;gap:8px;
  box-shadow:0 4px 20px rgba(97,64,230,0.35);
  transition:background .25s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;
}
#s-form button::after{content:"→";transition:transform .22s;}
#s-form button:hover{background:#4f30c8;transform:scale(1.05);box-shadow:0 8px 32px rgba(97,64,230,0.5);}
#s-form button:hover::after{transform:translateX(4px);}
.fprivacy{font-size:11px;font-weight:400;color:var(--t3);line-height:1.6;width:100%;;
  margin-bottom:clamp(20px,2.5vw,32px);
  padding-bottom:clamp(16px,2vw,24px);
  border-bottom:1px solid var(--dv);margin-bottom:35px!important;}

/* ══════════ WHY SECTION — dark, curtain reveal ══════════ */
#s-why{
  background:var(--bg2);
  padding:120px 5%;
  position:relative;overflow:hidden;
}
/* curtain from top */
.why-reveal{
  position:absolute;
  top:-120px;
  bottom:-120px;
  left:-6%;
  right:-6%;
  z-index:1;
  background:var(--dark);
  transform-origin:top center;
  transform:scaleY(1);
  transition:transform .9s cubic-bezier(.77,0,.18,1);
}
#s-why.why-revealed .why-reveal{transform:scaleY(0);}

/* glow top right */
.why-glow{
  position:absolute;top:-80px;right:-80px;
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle,rgba(97,64,230,0.08) 0%,transparent 65%);
  pointer-events:none;z-index:0;
}

.why-inner{display:flex;justify-content:space-between;align-items:flex-end;max-width:1280px;margin:0 auto;position:relative;z-index:2;border-bottom:1px solid var(--br);margin-bottom:clamp(56px,7vw,88px);padding-bottom:clamp(36px,4.5vw,56px);}
.why-top{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(40px,6vw,80px);align-items:end;
}
.why-kicker{font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--ac);display:flex;align-items:center;gap:10px;margin-bottom:clamp(16px,2vw,24px);}
.why-kicker::before{content:"";width:20px;height:1.5px;background:var(--ac);}
.why-title{font-family:'Outfit',sans-serif!important;font-size:clamp(28px,3.8vw,52px);font-weight:900;letter-spacing:-.04em;line-height:1.05;color:var(--t1);}
.why-title em{font-style:normal;font-weight:300;color:var(--ac);}
.why-intro{font-size:clamp(14px,1.5vw,17px);font-weight:400;color:var(--t2);line-height:1.85;padding-top:4px;}

/* three fact rows */
.why-facts{display:flex;justify-content:space-between;gap:2px;max-width:1280px;background:var(--br);border-radius:18px;overflow:hidden;}
.why-fact{
  background:var(--bg2);padding:clamp(28px,3.5vw,44px) clamp(24px,3vw,36px);
  cursor:none;transition:background .25s;position:relative;overflow:hidden;
}
.why-fact:hover{background:#fff;}
/* bottom accent bar */
.why-fact::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--ac);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.4,0,.2,1);}
.why-fact:hover::after{transform:scaleX(1);}
.why-fact-num{font-size:clamp(48px,6vw,80px);font-weight:900;letter-spacing:-.07em;line-height:1;-webkit-text-stroke:1px rgba(14,13,11,0.12);color:transparent;margin-bottom:clamp(14px,2vw,22px);transition:-webkit-text-stroke .3s;}
.why-fact:hover .why-fact-num{-webkit-text-stroke:1px rgba(97,64,230,0.5);}
.why-fact-title{font-size:clamp(14px,1.5vw,18px);font-weight:800;color:var(--t1);letter-spacing:-.02em;margin-bottom:8px;}
.why-fact-body{font-size:13px;font-weight:400;color:var(--t2);line-height:1.7;}






























/* RESPONSIVE */
@media screen and (max-width: 1440px) {
		
}


@media screen and (min-width: 1241px) and (max-width: 1440px) {
		
}


@media screen and (max-width: 1240px) {
		
}


@media screen and (max-width:  1024px) {
	
}


@media screen and (max-width:  900px) {
  .hero-left,.hero-right{padding:25px!important;}

	.marquee-wrap{padding:9px 0;margin-bottom:0!important;}
	.mq-item{font-size:10px;padding:0 7px;}
}


@media screen and (max-width:  600px) {
  #s-hero{max-height:unset;}
  .hero-inner{flex-direction:column;}
  .hero-divider{display:none;}
  .hero-left,.hero-right{padding:15px!important;}
  .hero-body-text{margin-bottom:0!important;}
  .scroll-to-explore{display:none;}
  .hero-headline{font-weight:700;}

  .form-content{padding:50px 0;}
  .form-section-title{font-weight:700;}

  .form-ghost-num{display:none;}
  
  #s-why{padding:50px 0;}
  .why-inner{flex-direction:column;border:none;padding:0;margin:0;}
  .why-title{font-weight:700;}
  .why-facts{flex-direction:column;}
}


@media screen and (max-width:  375px) {
	
}


@media screen and (max-width:  320px) {
}