/* ================= TOKENS ================= */
:root{
  /* Surfaces */
  --bg:           #f6f4ee;
  --bg-2:         #ffffff;
  --paper:        #fbfaf6;
  --line:         rgba(20,40,30,.10);
  --line-strong:  rgba(20,40,30,.18);

  /* Ink */
  --ink:          #0e1f17;
  --ink-2:        #2b3a32;
  --muted:        #5e6b63;

  /* Brand */
  --green:        #0fb87a;
  --green-deep:   #0a8a5b;
  --green-soft:   #d6f1e5;
  --green-tint:   #eef9f3;

  /* Accents */
  --violet:       #7c3aed;
  --violet-soft:  #ede9fe;
  --amber:        #b45309;
  --amber-soft:   #fef3c7;
  --rose:         #e11d48;
  --rose-soft:    #ffe4e6;
  --sky:          #0284c7;
  --sky-soft:     #e0f2fe;
  --pink:         #ec4899;
  --orange:       #f97316;

  /* Type */
  --display: 'Bricolage Grotesque', system-ui, sans-serif;
  --serif:   'Caprasimo', Georgia, serif;
  --sans:    'Inter', system-ui, -apple-system, sans-serif;

  /* Shadow */
  --shadow-sm: 0 2px 4px rgba(15,40,28,.04), 0 4px 12px rgba(15,40,28,.04);
  --shadow-md: 0 8px 24px -8px rgba(15,40,28,.10), 0 4px 8px rgba(15,40,28,.04);
  --shadow-lg: 0 30px 60px -25px rgba(10,80,55,.25), 0 12px 24px -12px rgba(15,40,28,.10);
}

/* ================= RESET ================= */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--sans);
  background:var(--bg);
  color:var(--ink);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
  min-height:100vh;
}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
input{font-family:inherit}
em{font-style:normal}

.container{max-width:1240px;margin:0 auto;padding:0 28px;position:relative;z-index:2}
.nowrap{white-space:nowrap}
.br-d{display:inline}
@media (max-width:760px){.br-d{display:none}}

/* ================= HERO ================= */
.hero{position:relative;padding:36px 0 80px;overflow:hidden;padding-bottom: 100px;}

/* ============ FLOATING BG DECORATIONS ============ */
.bg-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}

/* Mesh blobs */
.mesh{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55}
.mesh-1{width:620px;height:620px;background:radial-gradient(circle,#a7e9cd 0%,transparent 70%);top:-220px;left:-180px}
.mesh-2{width:520px;height:520px;background:radial-gradient(circle,#fce7b8 0%,transparent 70%);top:80px;right:-160px;opacity:.50}
.mesh-3{width:560px;height:560px;background:radial-gradient(circle,#d8d0f5 0%,transparent 70%);bottom:-420px;left:30%;opacity:.42}
.mesh-4{width:380px;height:380px;background:radial-gradient(circle,#fbcfe8 0%,transparent 70%);top:40%;left:-120px;opacity:.40}

/* Dot grid */
.dotgrid{
  position:absolute;inset:0;
  background-image:radial-gradient(rgba(14,31,23,.28) 1.4px, transparent 1.6px);
  background-size:24px 24px;
  mask-image:radial-gradient(ellipse 90% 70% at 50% 35%, black, transparent 85%);
  -webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 35%, black, transparent 85%);
  opacity:.7;
}

/* ===== Geometric shapes ===== */
.shape{position:absolute;opacity:.85}
.shape-circle{border-radius:50%}
.shape-ring{border-radius:50%;border:3px solid currentColor;background:transparent}
.shape-ring-lg{border-radius:50%;border:2px dashed currentColor;background:transparent}
.shape-square{border-radius:8px;transform:rotate(20deg)}
.shape-tri svg, .shape-cross svg, .shape-blob svg{width:100%;height:100%;display:block}

.s1{ width:46px;height:46px;background:linear-gradient(135deg,#fbbf24,#f59e0b);
     top:20%; left:6%; box-shadow:0 12px 30px -8px rgba(245,158,11,.45);
     animation:float1 9s ease-in-out infinite; }
.s2{ width:70px;height:70px;color:#7c3aed;
     top:8%; right:10%;
     animation:float2 11s ease-in-out infinite; }
.s3{ width:60px;height:52px;color:#0fb87a;
     top:42%; left:3%;
     animation:spin1 16s linear infinite; }
.s4{ width:40px;height:40px;background:linear-gradient(135deg,#ec4899,#e11d48);
     top:55%; right:5%; box-shadow:0 12px 24px -6px rgba(225,29,72,.40);
     animation:float3 8s ease-in-out infinite; }
.s5{ width:38px;height:38px;color:#f97316;
     bottom:14%; left:8%;
     animation:spin2 12s linear infinite; }
.s6{ width:140px;height:140px;color:rgba(15,184,122,.18);
     bottom:6%; right:8%;
     animation:float1 14s ease-in-out infinite; }
.s7{ width:120px;height:120px;color:rgba(124,58,237,.40);
     top:62%; left:46%;
     animation:spin1 24s linear infinite reverse; }
.s8{ width:30px;height:30px;background:linear-gradient(135deg,#0284c7,#0369a1);
     top:30%; right:22%; border-radius:6px;
     box-shadow:0 8px 18px -4px rgba(2,132,199,.45);
     animation:float2 10s ease-in-out infinite; }

/* ===== Floating colorful icons ===== */
.ficon{
  position:absolute;
  width:54px;height:54px;
  background:#fff;
  border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  font-size:26px;
  box-shadow:0 18px 40px -14px rgba(15,40,28,.25), 0 4px 10px rgba(15,40,28,.08);
  border:1px solid var(--line);
  transform:rotate(-6deg);
}
.ficon span{display:inline-block}
.fi1{ top:8%;  left:14%; background:linear-gradient(135deg,#fef3c7,#fde68a); animation:float1 7s ease-in-out infinite; }
.fi2{ top:22%; right:6%;  background:linear-gradient(135deg,#fee4e2,#fecaca); transform:rotate(8deg); animation:float2 9s ease-in-out infinite; }
.fi3{ top:48%; left:10%; background:linear-gradient(135deg,#dcfce7,#bbf7d0); animation:float3 8s ease-in-out infinite; }
.fi4{ top:38%; right:14%; background:linear-gradient(135deg,#e0e7ff,#c7d2fe); transform:rotate(-10deg); animation:float1 10s ease-in-out infinite; }
.fi5{ bottom:24%; right:18%; background:linear-gradient(135deg,#ccfbf1,#99f6e4); animation:float2 11s ease-in-out infinite; }
.fi6{ bottom:8%; left:18%; background:linear-gradient(135deg,#fce7f3,#fbcfe8); transform:rotate(12deg); animation:float3 9s ease-in-out infinite; }
.fi7{ top:60%; right:3%; background:linear-gradient(135deg,#fef3c7,#fed7aa); animation:float1 8s ease-in-out infinite; }
.fi8{ top:70%; left:24%; background:linear-gradient(135deg,#e0f2fe,#bae6fd); transform:rotate(-8deg); animation:float2 10s ease-in-out infinite; }
.fi9{ top:4%; right:32%; background:linear-gradient(135deg,#ffedd5,#fed7aa); transform:rotate(6deg); animation:float3 7s ease-in-out infinite; }

/* Sparkles */
.sparkle{
  position:absolute;width:8px;height:8px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px rgba(15,184,122,.45), 0 0 16px rgba(15,184,122,.55);
  animation:twinkle 3s ease-in-out infinite;
}
.sp1{top:18%;left:32%;animation-delay:.2s}
.sp2{top:30%;right:30%;animation-delay:.9s}
.sp3{bottom:30%;left:38%;animation-delay:1.4s}
.sp4{bottom:18%;right:32%;animation-delay:.5s}
.sp5{top:56%;left:18%;animation-delay:1.8s}

/* Animations */
@keyframes float1{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-22px) rotate(6deg)}
}
@keyframes float2{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(18px) rotate(-8deg)}
}
@keyframes float3{
  0%,100%{transform:translate(0,0) rotate(0deg)}
  50%{transform:translate(10px,-14px) rotate(10deg)}
}
@keyframes spin1{ to{transform:rotate(360deg)} }
@keyframes spin2{ to{transform:rotate(-360deg)} }
@keyframes twinkle{
  0%,100%{opacity:0;transform:scale(.6)}
  50%{opacity:1;transform:scale(1.2)}
}

/* Hide overly busy elements on small screens */
@media (max-width:760px){
  .ficon{width:42px;height:42px;font-size:20px;border-radius:12px}
  .fi4,.fi5,.fi8,.fi9,.s7,.s8,.sp2,.sp4{display:none}
}

.hero-inner{position:relative;z-index:1}

/* ================= LOGO ================= */
.brand-bar{display:flex;justify-content:center;margin-bottom:28px}
.logo{height:90px;width:auto;filter:drop-shadow(0 6px 18px rgba(10,80,55,.20))}
@media (max-width:560px){.logo{height:52px}}

/* ================= PILLS ================= */
.pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px}
.pill{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 14px;border-radius:999px;
  font-size:12.5px;font-weight:600;letter-spacing:.1px;
  border:1px solid transparent;
  background:var(--bg-2);
  box-shadow:var(--shadow-sm);
}
.pill-green{color:var(--green-deep);background:var(--green-tint);border-color:rgba(15,184,122,.25)}
.pill-violet{color:#5b21b6;background:var(--violet-soft);border-color:rgba(124,58,237,.25)}
.pill-amber{color:var(--amber);background:var(--amber-soft);border-color:rgba(180,83,9,.22)}
.pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(15,184,122,.15)}

/* ================= URGENCY PRE-HEADLINE ================= */
.urgency{
  display:inline-flex;align-items:center;gap:8px;
  margin:0 auto 22px;
  padding:8px 18px;
  background:linear-gradient(90deg,#fff5f5,#fef0c7,#fff5f5);
  background-size:200% 100%;
  border:1.5px solid rgba(225,29,72,.25);
  border-radius:999px;
  font-size:13.5px;font-weight:600;color:#7c1d1d;
  box-shadow:0 6px 20px -8px rgba(225,29,72,.30);
  animation:shimmerBg 4s ease-in-out infinite;
  position:relative;left:50%;transform:translateX(-50%);
}
@keyframes shimmerBg{ 0%,100%{background-position:0% 0} 50%{background-position:100% 0} }
.u-flame{font-size:16px;animation:flameWobble 1.4s ease-in-out infinite;display:inline-block}
@keyframes flameWobble{ 0%,100%{transform:scale(1) rotate(-4deg)} 50%{transform:scale(1.15) rotate(6deg)} }

@media (max-width:560px){
  .urgency{font-size:12px;text-align:center;padding:8px 14px;max-width:calc(100% - 24px)}
}

/* ================= HERO TITLE ================= */
.hero-title{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(38px, 5.4vw, 70px);
  line-height:1.12;
  letter-spacing:-.005em;
  text-align:center;
  max-width:1100px;
  margin:0 auto 22px;
  color:var(--ink);
  font-variation-settings:"opsz" 96;
  word-spacing:.02em;
}
.hero-title em{
  font-family:var(--serif);
  font-style:normal;
  font-weight:400;
  color:var(--ink-2);
  letter-spacing:-.005em;
}
.hl{
  position:relative;
  display:inline-block;
  font-family:var(--serif);
  color:var(--green-deep);
  font-style:normal;
  font-weight:400;
  white-space:nowrap;
  letter-spacing:-.01em;
}
.hl-underline{
  position:absolute;
  left:0;right:0;bottom:-12px;
  width:100%;height:14px;
  color:var(--green);
  opacity:.9;
}

/* ================= HERO SUB ================= */
.hero-sub{
  text-align:center;
  font-size:clamp(15px, 1.45vw, 19px);
  color:var(--muted);
  max-width:740px;
  margin:0 auto 52px;
  line-height:1.6;
}
.hero-sub strong{color:var(--ink);font-weight:600}

/* ================= HERO GRID ================= */
.hero-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap:28px;
  align-items:stretch;
  max-width:1180px;
  margin:0 auto;
}
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:24px;max-width:640px}
}

/* ================= VIDEO PANEL ================= */
.video-panel{
  background:var(--bg-2);
  border:1px solid var(--line);
  border-radius:24px;
  padding:24px;
  box-shadow:var(--shadow-md);
  display:flex;flex-direction:column;
  position:relative;
}
.vp-head{margin-bottom:18px}
.vp-pill{
  display:inline-flex;align-items:center;gap:6px;
  font-size:11.5px;font-weight:700;letter-spacing:.6px;
  text-transform:uppercase;
  color:var(--green-deep);
  background:var(--green-tint);
  padding:5px 11px;border-radius:6px;
  margin-bottom:10px;
  border:1px solid rgba(15,184,122,.22);
}
.vp-title{
  font-family:var(--display);
  font-size:clamp(19px,2vw,24px);
  font-weight:700;color:var(--ink);
  letter-spacing:-.02em;line-height:1.25;
}
.vp-title em{font-family:var(--serif);font-style:normal;font-weight:400;color:var(--green-deep)}

.video-shell{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#000;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06), 0 12px 30px -12px rgba(15,40,28,.30);
}
.video-frame{
  position:relative;
  width:100%;
  aspect-ratio: 16 / 9;
}
.video-frame iframe{
  position:absolute;inset:0;
  width:100%;height:100%;border:0;
}

.vp-foot{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:12px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px dashed var(--line);
}
.rating{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--muted)}
.rating strong{color:var(--ink);font-weight:700}
.stars{color:#f59e0b;letter-spacing:1.5px;font-size:15px}
.vp-trust{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:600;color:var(--green-deep);
}

/* ================= FORM PANEL ================= */
.form-panel{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%, #fbfaf5 100%);
  border-radius:24px;
  padding:32px 28px 28px;
  box-shadow:var(--shadow-lg);
  display:flex;flex-direction:column;
  outline:3px dashed rgba(15,184,122,.55);
  outline-offset:-10px;
}

.fp-ribbon{
  display:inline-flex;align-items:center;gap:6px;
  align-self:flex-start;
  font-size:11px;font-weight:800;letter-spacing:1.2px;
  color:var(--green-deep);
  background:var(--green-tint);
  padding:5px 11px;border-radius:999px;
  border:1px solid rgba(15,184,122,.30);
  margin-bottom:14px;
}
.rb-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(15,184,122,.20);animation:blink 1.5s infinite}
@keyframes blink{50%{opacity:.35}}

.fp-title{
  font-family:var(--display);
  font-weight:700;
  font-size:clamp(28px,2.8vw,36px);
  line-height:1.05;
  letter-spacing:-.025em;
  color:var(--ink);
  margin-bottom:6px;
}
.fp-title em{font-family:var(--serif);font-style:normal;color:var(--green-deep);font-weight:400}
.fp-sub{font-size:14px;color:var(--muted);margin-bottom:22px}

.fp-meta{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px;
}
.meta-card{
  display:flex;align-items:center;gap:10px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid transparent;
  transition:transform .2s;
}
.meta-card:hover{transform:translateY(-2px)}
.meta-card--dates{
  background:linear-gradient(135deg,#eef9f3 0%, #d6f1e5 100%);
  border-color:rgba(15,184,122,.25);
  box-shadow:0 4px 12px -6px rgba(15,184,122,.30);
}
.meta-card--dates .meta-icon{
  background:#fff;color:var(--green-deep);
  box-shadow:0 2px 6px rgba(15,184,122,.20);
}
.meta-card--time{
  background:linear-gradient(135deg,#fef3c7 0%, #fde68a 100%);
  border-color:rgba(180,83,9,.25);
  box-shadow:0 4px 12px -6px rgba(180,83,9,.25);
}
.meta-card--time .meta-icon{
  background:#fff;color:var(--amber);
  box-shadow:0 2px 6px rgba(180,83,9,.20);
}
.meta-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:9px;
  flex-shrink:0;
}
.meta-k{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-weight:600}
.meta-v{display:block;font-size:14px;color:var(--ink);font-weight:700;line-height:1.2}

/* ================= FORM ================= */
.signup-form{display:flex;flex-direction:column;gap:14px}
.field{display:flex;flex-direction:column;gap:5px}
.field-label{font-size:12px;font-weight:600;color:var(--ink-2);letter-spacing:.2px}
.field input{
  width:100%;padding:13px 15px;
  background:var(--bg-2);
  color:var(--ink);
  border:1.5px solid var(--line-strong);
  border-radius:11px;
  font-size:15px;font-weight:500;
  transition:border-color .18s, box-shadow .18s, background .18s;
}
.field input::placeholder{color:#9aa8a0;font-weight:400}
.field input:hover{border-color:rgba(15,184,122,.45)}
.field input:focus{
  outline:none;
  border-color:var(--green);
  background:#fff;
  box-shadow:0 0 0 4px rgba(15,184,122,.15);
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:inherit;font-weight:700;font-size:15.5px;letter-spacing:.1px;
  padding:15px 22px;border-radius:12px;
  transition:transform .15s ease, box-shadow .25s ease, filter .2s;
  width:100%;
  text-decoration:none;
  cursor:pointer;
}
.btn-primary{
  background:linear-gradient(180deg,#13c684 0%,#0a9b65 100%);
  color:#fff;
  box-shadow:
    0 1px 0 rgba(255,255,255,.25) inset,
    0 -2px 0 rgba(0,0,0,.10) inset,
    0 10px 24px -10px rgba(15,184,122,.55);
  margin-top:6px;
  position:relative;overflow:hidden;
}
.btn-primary::after{
  content:'';position:absolute;top:0;left:-80%;
  width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
  transform:skewX(-20deg);
  animation:sheen 3.5s ease-in-out infinite;
}
@keyframes sheen{
  0%,60%{left:-80%}
  100%{left:160%}
}
.btn-primary:hover{
  transform:translateY(-1px);
  filter:brightness(1.04);
  box-shadow:
    0 1px 0 rgba(255,255,255,.30) inset,
    0 -2px 0 rgba(0,0,0,.12) inset,
    0 14px 28px -10px rgba(15,184,122,.65);
}
.btn-primary:active{transform:translateY(0)}
.arrow{transition:transform .2s;position:relative;z-index:1}

.fp-note{
  display:flex;align-items:center;justify-content:center;gap:6px;
  font-size:12px;color:var(--muted);
  margin-top:6px;
}
.fp-note svg{flex-shrink:0;color:var(--muted)}

/* ================= AVATARS / SOCIAL ================= */
.fp-avatars{
  display:flex;align-items:center;gap:12px;
  margin-top:20px;padding-top:20px;
  border-top:1px solid var(--line);
}
.av-stack{display:flex;align-items:center}
.av{
  width:34px;height:34px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;color:#fff;
  border:2px solid #fff;
  margin-left:-8px;
  box-shadow:0 2px 6px rgba(0,0,0,.12);
  object-fit:cover;
  background:#eee;
}
.av:first-child{margin-left:0}
.av-more{
  background:var(--green-tint);color:var(--green-deep);
  border-color:var(--green-tint);
  font-size:11px;font-weight:800;
  margin-left:6px;
  min-width:auto;
  padding:0 10px;
  border-radius:100px;
  width:auto;
}
.fp-avatars p{font-size:13px;color:var(--muted);line-height:1.3}
.fp-avatars strong{color:var(--ink);font-weight:700}

/* ============================================================ */
/* ===================== FOLD 2 — FOUNDERS ==================== */
/* ============================================================ */
.founders{
  margin-top: -100px;
  position:relative;
  padding:160px 0 120px;
  background:
    radial-gradient(ellipse 80% 50% at 80% 0%, rgba(15,184,122,.12), transparent 60%),
    radial-gradient(ellipse 60% 40% at 10% 35%, rgba(34,197,94,.10), transparent 55%),
    linear-gradient(180deg,#0a1813 0%, #060f0b 100%);
  color:#e8efe9;
  overflow:hidden;
  isolation:isolate;
}

.f-wave-top{
  position:absolute;
  top:0;left:0;right:0;
  z-index:2;
  line-height:0;
  pointer-events:none;
}
.f-wave-top svg{display:block;width:100%;height:120px}

.f-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}

/* Subtle grid pattern (different from fold 1's dots) */
.f-deco::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 90% 80% at 50% 50%, black, transparent 90%);
  -webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 50%, black, transparent 90%);
}
/* Diagonal shimmer lines for texture */
.f-deco::after{
  content:'';position:absolute;inset:0;
  background-image:repeating-linear-gradient(
    -45deg,
    transparent,
    transparent 80px,
    rgba(15,184,122,.05) 80px,
    rgba(15,184,122,.05) 81px
  );
  opacity:.7;
}

.f-mesh{position:absolute;border-radius:50%;filter:blur(100px);opacity:.45}
.f-mesh-1{width:560px;height:560px;background:radial-gradient(circle,#15cf8a 0%,transparent 70%);top:-200px;right:-160px}
.f-mesh-2{width:480px;height:480px;background:radial-gradient(circle,#0a8a5b 0%,transparent 70%);bottom:-180px;left:-140px;opacity:.50}

.f-shape{position:absolute;opacity:.9}
.f-shape svg{width:100%;height:100%;display:block}
.f-circle{
  width:40px;height:40px;border-radius:50%;
  background:linear-gradient(135deg,#fbbf24,#f59e0b);
  box-shadow:0 10px 30px -4px rgba(245,158,11,.55), 0 0 24px rgba(251,191,36,.30);
  top:12%;right:10%;
  animation:float1 9s ease-in-out infinite;
}
.f-ring{
  width:70px;height:70px;border-radius:50%;
  border:2px dashed rgba(167,232,205,.45);
  top:62%;right:5%;
  animation:spin1 22s linear infinite;
}
.f-cross{
  width:34px;height:34px;color:#34d399;
  top:30%;left:4%;
  filter:drop-shadow(0 0 6px rgba(52,211,153,.5));
  animation:spin2 14s linear infinite;
}
.f-blob{
  width:160px;height:160px;color:rgba(15,184,122,.16);
  bottom:6%;right:14%;
  animation:float1 12s ease-in-out infinite;
}

.founders-grid{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:64px;
  align-items:start;
}
@media (max-width:980px){
  .founders-grid{grid-template-columns:1fr;gap:40px;max-width:680px}
}

/* ===== LEFT — copy ===== */
.founders-copy{padding-top:6px}

.f-kicker{
  display:inline-flex;align-items:center;gap:7px;
  font-size:12px;font-weight:700;letter-spacing:1.2px;
  text-transform:uppercase;
  color:#7ef5c0;
  background:rgba(15,184,122,.12);
  padding:6px 12px;border-radius:999px;
  border:1px solid rgba(126,245,192,.30);
  margin-bottom:18px;
}
.f-kicker-dot{
  width:6px;height:6px;border-radius:50%;
  background:#34d399;
  box-shadow:0 0 0 3px rgba(52,211,153,.25), 0 0 10px rgba(52,211,153,.55);
  animation:blink 1.5s infinite;
}

.f-title{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(30px, 3.6vw, 48px);
  line-height:1.10;
  letter-spacing:-.01em;
  color:#fff;
  margin-bottom:24px;
}
.f-title em{
  font-family:var(--serif);
  font-style:normal;
  font-weight:400;
  color:#7ef5c0;
  letter-spacing:-.005em;
}

.f-callout{
  display:flex;align-items:flex-start;gap:10px;
  margin-bottom:28px;
  padding:12px 14px;
  background:rgba(251,191,36,.08);
  border:1px solid rgba(251,191,36,.22);
  border-radius:10px;
}
.f-callout svg{flex-shrink:0;color:rgba(251,191,36,.55);margin-top:2px;width:15px;height:15px}
.f-callout p{
  font-size:14px;font-weight:500;
  color:rgba(255,255,255,.60);
  line-height:1.5;
}
.f-callout strong{color:rgba(255,255,255,.80);font-weight:700}

.f-body{display:flex;flex-direction:column;gap:14px}
.f-body p{
  font-size:16.5px;line-height:1.65;color:#cfdcd2;
}
.f-body strong{color:#fff;font-weight:700}
.f-body mark{
  background:linear-gradient(180deg,transparent 55%, rgba(52,211,153,.45) 55%);
  color:#7ef5c0;
  font-weight:700;padding:0 3px;border-radius:2px;
}

.f-stack{
  display:flex;flex-direction:column;gap:10px;
  margin:6px 0;
  padding:20px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.04) 0%, rgba(255,255,255,.02) 100%);
  border:1px solid rgba(255,255,255,.10);
  border-left:3px solid #34d399;
  border-radius:12px;
  box-shadow:0 12px 30px -14px rgba(0,0,0,.50), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.f-line{font-size:17px;line-height:1.4;color:#cfdcd2;margin:0 !important}
.f-muted{color:#8a9b91}
.f-bold{font-weight:800;color:#fff;font-size:19px}
.f-accent{
  font-family:var(--serif);
  font-weight:400;
  color:#7ef5c0;
  font-size:30px;
  letter-spacing:-.01em;
  text-shadow:0 0 24px rgba(126,245,192,.30);
}

.f-final{
  font-family:var(--display);
  font-size:clamp(20px,2vw,24px) !important;
  font-weight:700;
  color:#fff !important;
  letter-spacing:-.01em;
  margin-top:6px;
}

/* ===== RIGHT — image + CTA ===== */
.founders-side{
  display:flex;flex-direction:column;gap:56px;
  position:sticky;top:24px;
}
@media (max-width:980px){.founders-side{position:static;gap:40px}}

.founders-image-wrap{
  position:relative;
  background:#fff;
  border-radius:20px;
  padding:14px;
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 30px 70px -20px rgba(0,0,0,.55), 0 0 0 1px rgba(15,184,122,.20);
  transform:rotate(-1deg);
}
.founders-image-wrap::before{
  content:'';position:absolute;inset:-12px;
  background:linear-gradient(135deg,rgba(52,211,153,.40),rgba(124,58,237,.20));
  border-radius:28px;
  z-index:-1;
  filter:blur(28px);
  opacity:.85;
}
.founders-image{
  width:100%;height:auto;display:block;
  border-radius:14px;
}

/* Tape decorations */
.fi-tape{
  position:absolute;
  width:80px;height:24px;
  background:linear-gradient(135deg,#fef3c7,#fde68a);
  opacity:.85;
  box-shadow:0 4px 10px -4px rgba(180,83,9,.35);
}
.fi-tape-tl{top:-10px;left:30px;transform:rotate(-8deg)}
.fi-tape-br{bottom:-10px;right:30px;transform:rotate(6deg)}

.fi-badge{
  position:absolute;
  bottom:24px;left:24px;
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 12px;border-radius:999px;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  font-size:12px;font-weight:700;color:var(--ink);
  box-shadow:0 6px 16px -4px rgba(15,40,28,.20);
  border:1px solid var(--line);
}
.fi-badge svg{color:#f59e0b}

/* ===== CTA Button — Premium ticket-style ===== */
.f-cta{
  position:relative;
  display:flex;align-items:center;gap:18px;
  padding:18px 18px 18px 22px;
  background:
    linear-gradient(180deg,#15cf8a 0%,#0a9b65 100%);
  border-radius:18px;
  color:#fff;
  text-decoration:none;
  box-shadow:
    0 1px 0 rgba(255,255,255,.30) inset,
    0 -3px 0 rgba(0,0,0,.12) inset,
    0 0 0 1px rgba(10,80,55,.20),
    0 18px 40px -12px rgba(15,184,122,.55),
    0 4px 10px rgba(15,40,28,.08);
  transition:transform .18s ease, box-shadow .25s ease, filter .2s;
  overflow:hidden;
  isolation:isolate;
}
/* Inner highlight ring */
.f-cta::before{
  content:'';position:absolute;
  inset:4px;border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 40%);
  pointer-events:none;
  z-index:0;
}
/* Sheen sweep */
.f-cta::after{
  content:'';position:absolute;top:0;left:-80%;
  width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);
  transform:skewX(-20deg);
  animation:sheen 4s ease-in-out infinite;
  z-index:0;
}
.f-cta:hover{
  transform:translateY(-3px);
  filter:brightness(1.05);
  box-shadow:
    0 1px 0 rgba(255,255,255,.35) inset,
    0 -3px 0 rgba(0,0,0,.14) inset,
    0 0 0 1px rgba(10,80,55,.25),
    0 24px 50px -14px rgba(15,184,122,.70),
    0 6px 14px rgba(15,40,28,.10);
}
.f-cta:active{transform:translateY(-1px)}

/* "FREE PASS" ticket-stub flag on the left */
.f-cta-flag{
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:center;gap:7px;
  flex-shrink:0;
  align-self:stretch;
  padding:0 14px;
  font-size:11px;font-weight:800;letter-spacing:1.6px;
  color:#7c4a05;
  background:linear-gradient(180deg,#fde68a 0%,#fbbf24 100%);
  border-radius:12px;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  text-transform:uppercase;
  box-shadow:
    inset 0 0 0 1px rgba(180,83,9,.30),
    inset 0 1px 0 rgba(255,255,255,.50),
    0 4px 10px -4px rgba(180,83,9,.40);
}
.f-cta-flag svg{
  flex-shrink:0;
  color:#7c4a05;
  /* counter-rotate icon so it stays upright */
  transform:rotate(-180deg);
  margin-bottom:2px;
}
.f-cta-flag span{display:inline-block}
/* Perforation between flag and body */
.f-cta-flag::after{
  content:'';
  position:absolute;
  top:6px;bottom:6px;right:-7px;
  width:2px;
  background-image:radial-gradient(circle, rgba(255,255,255,.55) 1px, transparent 1.2px);
  background-size:2px 6px;
  background-repeat:repeat-y;
}

.f-cta-body{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:6px;
  flex:1;min-width:0;
}
.f-cta-main{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(19px,2vw,24px);
  letter-spacing:-.015em;
  line-height:1.1;
  color:#fff;
}
.f-cta-sub{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:500;
  color:rgba(255,255,255,.92);
  line-height:1.3;
}
.f-cta-sub strong{color:#fff;font-weight:700}
.f-cta-sub svg{flex-shrink:0;opacity:.9}

/* Circular arrow chip on the right */
.f-cta-arrow{
  position:relative;z-index:1;
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;
  width:46px;height:46px;border-radius:50%;
  background:#fff;
  color:var(--green-deep);
  box-shadow:
    0 4px 10px rgba(0,0,0,.15),
    inset 0 -2px 0 rgba(0,0,0,.08);
  transition:transform .25s ease;
}
.f-cta-arrow svg{transition:transform .25s ease}
.f-cta:hover .f-cta-arrow{transform:rotate(-12deg) scale(1.06)}
.f-cta:hover .f-cta-arrow svg{transform:translateX(2px)}

@media (max-width:520px){
  .f-cta{padding:16px 14px;gap:12px}
  .f-cta-flag{font-size:9px;padding:0 7px;letter-spacing:1.2px}
  .f-cta-arrow{width:40px;height:40px}
  .f-cta-main{font-size:18px}
  .f-cta-sub{font-size:12px}
}

/* Floating scroll-down arrow at fold bottom */
.f-scroll-arrow{
  position:absolute;
  bottom:32px;left:50%;
  transform:translateX(-50%);
  z-index:10;
  width:46px;height:46px;border-radius:50%;
  background:rgba(255,255,255,.10);
  border:1.5px solid rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.70);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  box-shadow:0 4px 18px rgba(0,0,0,.25), 0 0 0 6px rgba(255,255,255,.04);
  animation:bounceDown 2.2s ease-in-out infinite;
}
@keyframes bounceDown{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(9px)}
}

/* Mobile: hide some founders shapes */
@media (max-width:760px){
  .f-circle,.f-cross{display:none}
  .founders{padding:70px 0 80px}
  .founders-image-wrap{transform:none}
  .fi-tape{display:none}
}

/* ============================================================ */
/* ===================== FOLD 3 — AGENDA ====================== */
/* ============================================================ */
.agenda{
  position:relative;
  padding:70px 0 120px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 55% 40% at 0% 20%,   rgba(15,184,122,.10), transparent 60%),
    radial-gradient(ellipse 45% 35% at 100% 70%,  rgba(251,191,36,.10), transparent 55%),
    radial-gradient(ellipse 50% 30% at 50% 100%,  rgba(15,184,122,.07), transparent 60%),
    linear-gradient(180deg, #f8f7f1 0%, #eeeae0 100%);
}
/* Grid line pattern */
.agenda::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(to right, rgba(14,31,23,.09) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(14,31,23,.09) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
  -webkit-mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
  opacity:.65;z-index:0;
}

/* ---- Section heading ---- */
.ag-head{
  text-align:center;margin-bottom:48px;
  position:relative;z-index:3;
}
.ag-kicker{
  display:inline-flex;align-items:center;gap:7px;
  font-size:12px;font-weight:700;letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--green-deep);
  background:var(--green-tint);
  padding:6px 14px;border-radius:999px;
  border:1px solid rgba(15,184,122,.25);
  margin-bottom:16px;
}
.ag-kicker svg{color:var(--green-deep)}
.ag-title{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(30px,4vw,52px);
  line-height:1.1;letter-spacing:-.02em;
  color:var(--ink);margin-top:14px;
}
.ag-title em{
  display:block;
  font-family:var(--serif);font-style:normal;font-weight:400;
  color:var(--green-deep);letter-spacing:-.01em;
}

/* ---- Marquee ---- */
.marquee-wrap{
  width:100%;overflow:hidden;
  padding:13px 0;
  background:#fff;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-bottom:72px;
  position:relative;z-index:3;
  box-shadow:0 2px 12px rgba(15,40,28,.05);
}
.marquee-track{
  display:inline-flex;align-items:center;gap:32px;
  white-space:nowrap;
  animation:marquee 30s linear infinite;
}
.marquee-wrap:hover .marquee-track{animation-play-state:paused}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.mq-item{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13.5px;font-weight:700;letter-spacing:.1px;
}
.mq-green{color:var(--green-deep)}
.mq-green svg{color:var(--green)}
.mq-amber{color:var(--amber)}
.mq-sep{color:var(--muted);font-size:9px;flex-shrink:0}

/* ---- Full-width module stacks ---- */
.ag-modules{
  display:flex;flex-direction:column;gap:28px;
  position:relative;z-index:3;
}

.ag-module{
  display:grid;
  grid-template-columns: 420px 1fr;
  gap:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--shadow-md);
  transition:transform .25s ease, box-shadow .3s ease;
}
.ag-module:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 56px -20px rgba(15,40,28,.18), 0 6px 14px rgba(15,40,28,.06);
}
/* Alternating — every even card flips image to right */
.ag-module--alt{grid-template-columns:1fr 420px}
.ag-module--alt .ag-module-img{order:2}
.ag-module--alt .ag-module-content{order:1}
@media (max-width:900px){
  .ag-module,.ag-module--alt{grid-template-columns:1fr}
  .ag-module--alt .ag-module-img,.ag-module--alt .ag-module-content{order:unset}
}

/* Image column */
.ag-module-img{
  position:relative;
  overflow:hidden;
  background:var(--green-tint);
  min-height:320px;
}
.ag-module-img img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  transition:transform .6s ease;
}
.ag-module:hover .ag-module-img img{transform:scale(1.04)}

.ag-num{
  position:absolute;top:18px;left:18px;
  font-family:var(--display);
  font-size:13px;font-weight:800;letter-spacing:.5px;
  color:var(--green-deep);
  background:#fff;
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1.5px solid rgba(15,184,122,.35);
  box-shadow:0 4px 10px rgba(15,40,28,.14);
  z-index:2;
}
.ag-num--amber{color:var(--amber);border-color:rgba(180,83,9,.35)}

/* Content column */
.ag-module-content{
  padding:36px 40px;
  display:flex;flex-direction:column;
  justify-content:center;
  gap:14px;
  border-left:1px solid var(--line);
}
.ag-module--alt .ag-module-content{border-left:0;border-right:1px solid var(--line)}
@media (max-width:900px){
  .ag-module-content,.ag-module--alt .ag-module-content{
    border-left:0;border-right:0;border-top:1px solid var(--line);
    padding:28px 24px;
  }
}

/* Day pill */
.ag-pill{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 13px;border-radius:999px;
  font-size:12px;font-weight:700;letter-spacing:.3px;
  color:var(--green-deep);
  background:var(--green-tint);
  border:1px solid rgba(15,184,122,.28);
  align-self:flex-start;
}
.ag-pill svg{flex-shrink:0}
.ag-pill--amber{
  color:var(--amber);
  background:var(--amber-soft);
  border-color:rgba(180,83,9,.28);
}

/* Module title */
.ag-module-title{
  font-family:var(--display);
  font-weight:800;
  font-size:clamp(24px,2.4vw,34px);
  line-height:1.1;letter-spacing:-.02em;
  color:var(--ink);
}
.ag-module-title em{
  font-family:var(--serif);font-style:normal;font-weight:400;
  color:var(--green-deep);
}

/* Sub copy */
.ag-module-sub{
  font-size:15.5px;
  color:var(--ink-2);
  line-height:1.5;
  font-style:italic;
  font-weight:600;
  padding-bottom:14px;
  border-bottom:1px dashed var(--line);
}
.ag-module-sub strong{font-weight:800;font-style:normal;color:var(--ink)}

/* Body paragraphs */
.ag-module-body{display:flex;flex-direction:column;gap:10px}
.ag-module-body p{font-size:15.5px;line-height:1.65;color:var(--ink-2)}
.ag-module-body strong{color:var(--ink);font-weight:700}

/* ---- Fold 3 decorations ---- */
.ag-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}

.ag-dr{position:absolute;border-radius:50%;background:transparent}
.ag-dr1{width:130px;height:130px;border:2px dashed rgba(15,184,122,.22);top:6%;right:2%;animation:spin1 30s linear infinite}
.ag-dr2{width:88px;height:88px;border:2px dashed rgba(180,83,9,.18);bottom:10%;left:1.5%;animation:spin2 24s linear infinite}

.ag-ds{position:absolute}
.ag-ds svg{width:100%;height:100%;display:block}
.ag-ds-tri{width:54px;height:46px;color:rgba(15,184,122,.35);top:28%;left:1.5%;animation:float2 12s ease-in-out infinite}
.ag-ds-cross{width:30px;height:30px;color:rgba(180,83,9,.30);bottom:22%;right:3%;animation:spin2 15s linear infinite}
.ag-ds-blob{width:190px;height:190px;color:rgba(15,184,122,.07);top:55%;right:0.5%;animation:float1 16s ease-in-out infinite}
.ag-ds-circ{position:absolute;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);opacity:.50;top:14%;left:4%;box-shadow:0 10px 28px -6px rgba(245,158,11,.38);animation:float3 10s ease-in-out infinite}

.ag-fi{
  position:absolute;width:50px;height:50px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  font-size:24px;
  box-shadow:0 14px 32px -10px rgba(15,40,28,.16),0 4px 8px rgba(15,40,28,.06);
  border:1px solid var(--line);
}
.ag-fi span{display:inline-block}
.afi1{top:8%;right:6%;background:linear-gradient(135deg,#e0f2fe,#bae6fd);transform:rotate(6deg);animation:float1 9s ease-in-out infinite}
.afi2{bottom:20%;left:3%;background:linear-gradient(135deg,#fef3c7,#fde68a);transform:rotate(-8deg);animation:float2 11s ease-in-out infinite}
.afi3{top:52%;right:2.5%;background:linear-gradient(135deg,#dcfce7,#bbf7d0);transform:rotate(5deg);animation:float3 10s ease-in-out infinite}
.afi4{top:22%;left:3%;background:linear-gradient(135deg,#ede9fe,#ddd6fe);transform:rotate(-6deg);animation:float1 12s ease-in-out infinite}

.ag-sp{position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px rgba(15,184,122,.38),0 0 14px rgba(15,184,122,.45);animation:twinkle 3s ease-in-out infinite}
.agsp1{top:20%;left:14%;animation-delay:.4s}
.agsp2{top:62%;right:10%;animation-delay:1.2s}
.agsp3{bottom:18%;left:38%;animation-delay:1.8s}

@media(max-width:760px){.afi1,.afi3,.ag-ds-blob,.ag-dr1{display:none}}

/* ---- Bottom CTA card ---- */
.ag-cta-wrap{
  margin-top:72px;
  position:relative;z-index:3;
}
.ag-cta-card{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  gap:0;
  background:linear-gradient(135deg,#0c1f17 0%,#060f0b 100%);
  border-radius:28px;
  padding:52px 56px;
  border:1px solid rgba(255,255,255,.07);
  box-shadow:0 40px 80px -30px rgba(0,0,0,.45),0 12px 30px -10px rgba(0,0,0,.18);
  position:relative;overflow:hidden;
}
.ag-cta-card::before{
  content:'';position:absolute;
  top:-80px;left:50%;transform:translateX(-50%);
  width:520px;height:280px;
  background:radial-gradient(ellipse,rgba(15,184,122,.20),transparent 65%);
  pointer-events:none;z-index:0;
}
.ag-cta-card::after{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(to right,rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(to bottom,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:60px 60px;
  pointer-events:none;z-index:0;
}

/* Left column */
.ag-cta-left{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:22px;
  padding-right:52px;
}
.ag-cta-badge{
  display:inline-flex;align-items:center;gap:6px;
  align-self:flex-start;
  font-size:11.5px;font-weight:800;letter-spacing:.8px;
  text-transform:uppercase;
  color:#f59e0b;
  background:rgba(251,191,36,.12);
  border:1px solid rgba(251,191,36,.28);
  padding:5px 12px;border-radius:999px;
}
.ag-cta-heading{
  font-family:var(--display);font-weight:800;
  font-size:clamp(26px,2.6vw,36px);
  line-height:1.1;letter-spacing:-.02em;
  color:#fff;
}
.ag-cta-heading em{font-family:var(--serif);font-style:normal;font-weight:400;color:#7ef5c0}
.ag-cta-feats{list-style:none;display:flex;flex-direction:column;gap:13px}
.ag-cta-feats li{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;color:#b8ccc0}
.ag-feat-check{
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;width:22px;height:22px;border-radius:50%;
  background:rgba(15,184,122,.18);
  border:1px solid rgba(15,184,122,.40);
  color:#34d399;
}

/* Vertical divider */
.ag-cta-divider{
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.12) 30%,rgba(255,255,255,.12) 70%,transparent);
  align-self:stretch;position:relative;z-index:1;
}

/* Right column */
.ag-cta-right{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:18px;
  justify-content:center;
  padding-left:52px;
}
.ag-cta-join{font-size:13px;color:rgba(255,255,255,.50);font-weight:500}
.ag-cta-join strong{color:rgba(255,255,255,.75);font-weight:700}

/* CTA button — ticket-stub style matching fold 2 */
.ag-ctabtn{
  display:flex;align-items:center;gap:18px;
  padding:18px 18px 18px 22px;
  background:linear-gradient(180deg,#15cf8a 0%,#0a9b65 100%);
  border-radius:18px;color:#fff;text-decoration:none;
  box-shadow:
    0 1px 0 rgba(255,255,255,.30) inset,
    0 -3px 0 rgba(0,0,0,.12) inset,
    0 0 0 1px rgba(10,80,55,.20),
    0 18px 40px -12px rgba(15,184,122,.55);
  transition:transform .18s ease,box-shadow .25s ease,filter .2s;
  overflow:hidden;isolation:isolate;position:relative;
}
.ag-ctabtn::before{
  content:'';position:absolute;inset:4px;border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 40%);
  pointer-events:none;z-index:0;
}
.ag-ctabtn::after{
  content:'';position:absolute;top:0;left:-80%;
  width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);
  transform:skewX(-20deg);animation:sheen 4s ease-in-out infinite;z-index:0;
}
.ag-ctabtn:hover{
  transform:translateY(-3px);filter:brightness(1.05);
  box-shadow:
    0 1px 0 rgba(255,255,255,.35) inset,
    0 -3px 0 rgba(0,0,0,.14) inset,
    0 0 0 1px rgba(10,80,55,.25),
    0 24px 50px -14px rgba(15,184,122,.70);
}
.ag-ctabtn:active{transform:translateY(-1px)}

.ag-ctabtn-flag{
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:center;gap:7px;
  flex-shrink:0;align-self:stretch;padding:0 14px;
  font-size:11px;font-weight:800;letter-spacing:1.6px;
  color:#7c4a05;
  background:linear-gradient(180deg,#fde68a 0%,#fbbf24 100%);
  border-radius:12px;writing-mode:vertical-rl;transform:rotate(180deg);
  text-transform:uppercase;
  box-shadow:inset 0 0 0 1px rgba(180,83,9,.30),inset 0 1px 0 rgba(255,255,255,.50);
}
.ag-ctabtn-flag svg{flex-shrink:0;color:#7c4a05;transform:rotate(-180deg);margin-bottom:2px}
.ag-ctabtn-flag span{display:inline-block}
.ag-ctabtn-flag::after{
  content:'';position:absolute;top:6px;bottom:6px;right:-7px;
  width:2px;
  background-image:radial-gradient(circle,rgba(255,255,255,.55) 1px,transparent 1.2px);
  background-size:2px 6px;background-repeat:repeat-y;
}
.ag-ctabtn-body{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:6px;flex:1;min-width:0;
}
.ag-ctabtn-main{
  font-family:var(--display);font-weight:800;
  font-size:clamp(17px,1.6vw,21px);
  letter-spacing:-.015em;line-height:1.1;color:#fff;
}
.ag-ctabtn-sub{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:500;color:rgba(255,255,255,.90);
}
.ag-ctabtn-sub strong{color:#fff;font-weight:700}
.ag-ctabtn-sub svg{flex-shrink:0;opacity:.9}
.ag-ctabtn-arrow{
  position:relative;z-index:1;
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;width:46px;height:46px;border-radius:50%;
  background:#fff;color:var(--green-deep);
  box-shadow:0 4px 10px rgba(0,0,0,.15),inset 0 -2px 0 rgba(0,0,0,.08);
  transition:transform .25s ease;
}
.ag-ctabtn-arrow svg{transition:transform .25s ease}
.ag-ctabtn:hover .ag-ctabtn-arrow{transform:rotate(-12deg) scale(1.06)}
.ag-ctabtn:hover .ag-ctabtn-arrow svg{transform:translateX(2px)}

.ag-cta-secure{font-size:12px;color:rgba(255,255,255,.40);display:flex;align-items:center;gap:5px}

@media(max-width:860px){
  .ag-cta-card{grid-template-columns:1fr;padding:36px 28px}
  .ag-cta-divider{display:none}
  .ag-cta-left{padding-right:0}
  .ag-cta-right{padding-left:0}
}

/* ================= REDUCED MOTION ================= */
@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important}
}

/* ================= MOBILE ================= */
@media (max-width:560px){
  .hero{padding:24px 0 60px}
  .container{padding:0 18px}
  .pills{gap:6px}
  .pill{font-size:11.5px;padding:5px 11px}
  .hero-title{margin-bottom:18px}
  .hero-sub{margin-bottom:36px}
  .video-panel,.form-panel{padding:20px 18px}
  .fp-meta{grid-template-columns:1fr}
}

/* ============================================================ */
/* =================== FOLD 4 — TESTIMONIALS ================= */
/* ============================================================ */
.testimonials{
  position:relative;
  margin-top:-100px;
  padding:200px 0 120px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 65% 55% at 90% 15%, rgba(15,184,122,.10), transparent 55%),
    radial-gradient(ellipse 55% 45% at 5% 80%,  rgba(34,197,94,.08), transparent 60%),
    radial-gradient(ellipse 40% 35% at 50% 50%, rgba(15,184,122,.05), transparent 65%),
    linear-gradient(180deg,#0a1813 0%,#060f0b 100%);
  color:#e8efe9;
  isolation:isolate;
}

/* Grid pattern overlay */
.testimonials::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
  -webkit-mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
  opacity:.7;
}

/* Floating decorations layer */
.tm-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}

/* Rotating dashed rings */
.tm-dr{position:absolute;border-radius:50%;background:transparent}
.tm-dr1{width:150px;height:150px;border:2px dashed rgba(15,184,122,.22);top:7%;right:2.5%;animation:spin1 30s linear infinite}
.tm-dr2{width:90px;height:90px;border:2px dashed rgba(180,83,9,.18);bottom:12%;left:1.5%;animation:spin2 22s linear infinite}
.tm-dr3{width:60px;height:60px;border:1.5px dashed rgba(15,184,122,.15);top:48%;left:5%;animation:spin1 18s linear infinite reverse}

/* Geometric shapes */
.tm-ds{position:absolute}
.tm-ds-quote{width:64px;height:54px;color:rgba(15,184,122,.30)}
.tm-ds-star{width:36px;height:36px;color:rgba(251,191,36,.35)}
.tm-ds-heart{width:36px;height:36px;color:rgba(239,68,68,.30)}
.tm-ds-bubble{width:44px;height:44px;color:rgba(15,184,122,.25)}
.tm-ds1{top:16%;left:2%;animation:float1 11s ease-in-out infinite}
.tm-ds2{top:60%;right:2%;animation:float2 9s ease-in-out infinite}
.tm-ds3{bottom:10%;left:5%;animation:float3 13s ease-in-out infinite}
.tm-ds4{top:30%;right:2.5%;animation:float1 15s ease-in-out infinite}

/* Floating icon chips */
.tm-fi{
  position:absolute;width:50px;height:50px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;font-size:22px;
  box-shadow:0 10px 28px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.18);
}
.tfi1{top:11%;right:6%;background:linear-gradient(135deg,#dcfce7,#bbf7d0);animation:float1 8s ease-in-out infinite}
.tfi2{bottom:20%;left:3.5%;background:linear-gradient(135deg,#fef3c7,#fde68a);animation:float2 10s ease-in-out infinite}
.tfi3{top:52%;right:3%;background:linear-gradient(135deg,#e0f2fe,#bae6fd);animation:float3 9s ease-in-out infinite}
.tfi4{top:26%;left:3%;background:linear-gradient(135deg,#ede9fe,#ddd6fe);animation:float1 12s ease-in-out infinite}

/* Sparkle dots */
.tm-sp{position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 2px rgba(15,184,122,.40),0 0 14px rgba(15,184,122,.50);
  animation:twinkle 3s ease-in-out infinite}
.tmsp1{top:20%;left:15%;animation-delay:.3s}
.tmsp2{top:50%;right:11%;animation-delay:1.1s}
.tmsp3{bottom:22%;left:42%;animation-delay:1.6s}
.tmsp4{top:35%;right:22%;animation-delay:.7s}

/* Wave divider */
.tm-wave-top{
  position:absolute;top:0;left:0;right:0;
  z-index:2;line-height:0;pointer-events:none;
}
.tm-wave-top svg{display:block;width:100%;height:120px}

/* Section header */
.tm-head{
  text-align:center;
  max-width:680px;
  margin:0 auto 64px;
  position:relative;z-index:3;
}
.tm-badge{
  display:inline-block;
  font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:#0fb87a;
  background:rgba(15,184,122,.12);
  border:1px solid rgba(15,184,122,.25);
  border-radius:100px;
  padding:6px 16px;
  margin-bottom:20px;
}
.tm-title{
  font-family:var(--display);
  font-size:clamp(2rem,4vw,3rem);
  font-weight:800;
  line-height:1.15;
  color:#fff;
  margin-bottom:16px;
}
.tm-title em{
  color:#0fb87a;
}
.tm-sub{
  font-size:16px;
  color:rgba(232,239,233,.62);
  line-height:1.6;
}
.tm-sub strong{color:#fff}

/* 3-column grid */
.tm-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  position:relative;z-index:3;
}

/* Card */
.tm-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  padding:28px 28px 32px;
  display:flex;
  flex-direction:column;
  gap:18px;
  transition:transform .25s ease, box-shadow .25s ease;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.tm-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 48px -16px rgba(0,0,0,.45), 0 0 0 1px rgba(15,184,122,.18);
}
.tm-card-top{
  display:flex;
  align-items:center;
  gap:14px;
}
.tm-avatar{
  width:56px;height:56px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid rgba(15,184,122,.35);
  flex-shrink:0;
}
.tm-meta{
  display:flex;flex-direction:column;gap:2px;
}
.tm-name{
  font-size:15px;font-weight:700;
  color:#fff;line-height:1.2;
}
.tm-loc{
  font-size:12px;
  color:rgba(232,239,233,.50);
}
.tm-stars{
  font-size:13px;
  color:#f59e0b;
  letter-spacing:.5px;
  margin-top:2px;
}
.tm-quote{
  font-size:14.5px;
  line-height:1.7;
  color:rgba(232,239,233,.78);
  flex:1;
}

/* Responsive */
@media(max-width:900px){
  .tm-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .tm-grid{grid-template-columns:1fr}
  .testimonials{padding:160px 0 80px}
}

/* ============================================================ */
/* ================= FOLD 5 — SOCIAL PROOF =================== */
/* ============================================================ */
.social-proof{
  position:relative;
  padding:100px 0 100px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 55% 45% at 0% 20%,  rgba(15,184,122,.09), transparent 60%),
    radial-gradient(ellipse 50% 40% at 100% 75%, rgba(251,191,36,.08), transparent 55%),
    radial-gradient(ellipse 40% 35% at 55% 50%, rgba(15,184,122,.05), transparent 65%),
    linear-gradient(180deg, #f8f7f1 0%, #ede9df 100%);
}

/* Dot grid pattern */
.social-proof::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:radial-gradient(rgba(14,31,23,.20) 1.2px, transparent 1.4px);
  background-size:24px 24px;
  mask-image:radial-gradient(ellipse 90% 85% at 50% 50%, black, transparent 88%);
  -webkit-mask-image:radial-gradient(ellipse 90% 85% at 50% 50%, black, transparent 88%);
  opacity:.55;
}

/* Floating deco layer */
.sp-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}

/* Rotating dashed rings */
.sp-dr{position:absolute;border-radius:50%;background:transparent}
.sp-dr1{width:140px;height:140px;border:2px dashed rgba(15,184,122,.22);top:8%;right:2%;animation:spin1 28s linear infinite}
.sp-dr2{width:80px;height:80px;border:2px dashed rgba(180,83,9,.18);bottom:14%;left:1.5%;animation:spin2 20s linear infinite}
.sp-dr3{width:55px;height:55px;border:1.5px dashed rgba(15,184,122,.15);top:52%;left:4%;animation:spin1 16s linear infinite reverse}

/* Geometric shapes */
.sp-ds{position:absolute}
/* Quote mark */
.sp-ds-quote{width:58px;height:50px;color:rgba(15,184,122,.25);top:14%;left:2%;animation:float1 12s ease-in-out infinite}
/* Star outline */
.sp-ds-star{width:34px;height:34px;color:rgba(245,158,11,.32);top:62%;right:2%;animation:float2 9s ease-in-out infinite}
/* Heart outline */
.sp-ds-heart{width:34px;height:34px;color:rgba(239,68,68,.25);bottom:12%;right:3%;animation:float3 11s ease-in-out infinite}
/* Speech bubble outline */
.sp-ds-bubble{width:42px;height:42px;color:rgba(15,184,122,.22);top:38%;right:1.5%;animation:float1 14s ease-in-out infinite}

/* Floating icon chips */
.sp-fi{
  position:absolute;width:50px;height:50px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;font-size:22px;
  box-shadow:0 8px 24px rgba(0,0,0,.10),0 2px 6px rgba(0,0,0,.06);
  border:1px solid rgba(14,31,23,.06);
}
.sfi1{top:10%;right:6.5%;background:linear-gradient(135deg,#dcfce7,#bbf7d0);animation:float1 8s ease-in-out infinite}
.sfi2{bottom:18%;left:3%;background:linear-gradient(135deg,#fef3c7,#fde68a);animation:float2 10s ease-in-out infinite}
.sfi3{top:55%;right:3.5%;background:linear-gradient(135deg,#ffe4e6,#fecaca);animation:float3 9s ease-in-out infinite}
.sfi4{top:28%;left:2.5%;background:linear-gradient(135deg,#e0f2fe,#bae6fd);animation:float1 13s ease-in-out infinite}

/* Sparkle dots */
.sp-sparkle{position:absolute;width:7px;height:7px;border-radius:50%;
  background:var(--green);opacity:.45;
  box-shadow:0 0 0 3px rgba(15,184,122,.15),0 0 12px rgba(15,184,122,.30);
  animation:twinkle 3s ease-in-out infinite}
.spk1{top:22%;left:18%;animation-delay:.4s}
.spk2{top:48%;right:14%;animation-delay:1.0s}
.spk3{bottom:24%;left:44%;animation-delay:1.7s}
.spk4{top:34%;right:26%;animation-delay:.8s}

/* Scroll arrow (reuse founders style) */
.tm-scroll-arrow{
  position:absolute;
  bottom:32px;left:50%;
  transform:translateX(-50%);
  z-index:10;
  width:46px;height:46px;border-radius:50%;
  background:rgba(255,255,255,.10);
  border:1.5px solid rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.70);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  box-shadow:0 4px 18px rgba(0,0,0,.25),0 0 0 6px rgba(255,255,255,.04);
  animation:bounceDown 2.2s ease-in-out infinite;
}

/* 2-col layout */
.sp-layout{
  display:grid;
  grid-template-columns:42% 1fr;
  gap:60px;
  align-items:start;
  position:relative;z-index:3;
}

/* ---- LEFT: Letter column ---- */
.sp-left{position:relative;z-index:3}

/* Badge + headline outside letter */
.sp-badge{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  background:rgba(15,184,122,.10);
  border:1px solid rgba(15,184,122,.22);
  color:var(--green-deep);
  border-radius:100px;
  padding:6px 16px;
  margin-bottom:18px;
  margin-top:50px;
}
.sp-title{
  font-family:var(--display);
  font-size:clamp(2rem,3.4vw,2.8rem);
  font-weight:900;
  line-height:1.12;
  color:var(--ink);
  margin-bottom:6px;
}
.sp-title em{
  color:var(--green-deep);
  position:relative;
}
.sp-title em::after{
  content:'';position:absolute;
  left:0;right:0;bottom:-3px;height:2.5px;
  background:linear-gradient(90deg,var(--green),transparent);
  border-radius:2px;
}
.sp-subtitle{
  font-size:14.5px;color:var(--muted);
  margin-bottom:28px;
}
.sp-subtitle strong{color:var(--ink)}

/* Letter card */
.sp-letter{
  margin-top: 70px;
  position:relative;
  background:#fefefe;
  border-radius:4px 16px 16px 4px;
  padding:36px 40px 40px;
  /* Paper shadow stack */
  box-shadow:
    4px 0 0 0 var(--green),
    0 1px 3px rgba(0,0,0,.06),
    0 6px 20px -4px rgba(10,30,20,.12),
    0 24px 48px -12px rgba(10,30,20,.14);
  /* Subtle horizontal ruled lines */
  background-image:repeating-linear-gradient(
    to bottom,
    transparent,
    transparent 27px,
    rgba(14,31,23,.05) 27px,
    rgba(14,31,23,.05) 28px
  );
  background-size:100% 28px;
}
/* Bottom-right folded corner */
.sp-letter::after{
  content:'';position:absolute;
  bottom:0;right:0;
  width:28px;height:28px;
  background:linear-gradient(225deg,#e8e4da 50%,transparent 50%);
  border-radius:0 0 16px 0;
}

/* Letterhead */
.sp-lh{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:12px;
}
.sp-lh-logo{height:28px;width:auto;object-fit:contain}
.sp-lh-right{
  display:flex;flex-direction:column;align-items:flex-end;gap:2px;
}
.sp-lh-date{
  font-size:11px;font-weight:600;
  color:var(--muted);letter-spacing:.06em;text-transform:uppercase;
}
.sp-lh-tag{font-size:11px;color:rgba(15,184,122,.70);font-style:italic}
.sp-lh-rule{
  height:1.5px;
  background:linear-gradient(90deg,var(--green) 0%,rgba(15,184,122,.15) 55%,transparent 100%);
  border-radius:2px;
  margin-bottom:24px;
}

/* Body paragraphs */
.sp-body{display:flex;flex-direction:column;gap:13px}
.sp-body p{
  font-size:16px;line-height:1.82;
  color:var(--ink-2);
}
.sp-body strong{color:var(--ink);font-weight:700}
.sp-body em{font-style:italic;color:var(--green-deep)}

/* Closing & signature */
.sp-closing{margin-top:22px}
.sp-sign-off{
  font-size:15px;font-weight:700;
  color:var(--ink);margin-bottom:2px;
}
.sp-sign{
  width:320px;display:block;opacity:.90;
  margin:-6px 0 6px -4px;
}
.sp-author{display:flex;flex-direction:column;gap:1px}
.sp-author-name{font-size:14px;font-weight:800;color:var(--ink)}
.sp-author-role{font-size:12px;color:var(--green-deep);font-weight:600}


/* ---- RIGHT: Masonry screenshots ---- */
.sp-right{
  position:relative;
}

.sp-masonry{
  columns:2;
  column-gap:14px;
}

.sp-shot{
  width:100%;
  display:block;
  break-inside:avoid;
  margin-bottom:14px;
  border-radius:10px;
  box-shadow:0 4px 16px -4px rgba(10,30,20,.14), 0 1px 4px rgba(10,30,20,.08);
  border:1px solid rgba(14,31,23,.07);
  transition:transform .3s ease, box-shadow .3s ease;
}
.sp-shot:hover{
  transform:translateY(-3px) scale(1.015) !important;
  box-shadow:0 12px 32px -8px rgba(10,30,20,.22);
  position:relative;z-index:2;
}

/* Slight tilts for organic feel */
.sp-shot.r1{transform:rotate(1.1deg)}
.sp-shot.r2{transform:rotate(-0.9deg)}
.sp-shot.r3{transform:rotate(0.4deg)}

/* Responsive */
@media(max-width:1020px){
  .sp-layout{grid-template-columns:1fr;gap:48px}
}
@media(max-width:600px){
  .sp-masonry{columns:1}
  .social-proof{padding:160px 0 80px}
}

/* ============================================================ */
/* ==================== FOLD 6 — REGISTER ==================== */
/* ============================================================ */
.register-final{
  position:relative;
  margin-top:-100px;
  padding:180px 0 120px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%,   rgba(15,184,122,.16), transparent 50%),
    radial-gradient(ellipse 55% 45% at 5%  70%,   rgba(15,184,122,.10), transparent 60%),
    radial-gradient(ellipse 50% 40% at 95% 60%,   rgba(34,197,94,.08),  transparent 55%),
    radial-gradient(ellipse 40% 35% at 50% 100%,  rgba(15,184,122,.08), transparent 60%),
    linear-gradient(180deg,#0a1813 0%,#060f0b 100%);
  color:#e8efe9;
  isolation:isolate;
}

/* Grid pattern */
.register-final::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
  -webkit-mask-image:radial-gradient(ellipse 95% 90% at 50% 50%, black, transparent 90%);
}

/* Central glow spot */
.register-final::after{
  content:'';position:absolute;
  top:10%;left:50%;transform:translateX(-50%);
  width:700px;height:500px;
  background:radial-gradient(ellipse, rgba(15,184,122,.18) 0%, transparent 70%);
  pointer-events:none;z-index:0;
  filter:blur(40px);
}

/* Wave */
.rf-wave-top{position:absolute;top:0;left:0;right:0;z-index:2;line-height:0;pointer-events:none}
.rf-wave-top svg{display:block;width:100%;height:120px}

/* Floating decorations */
.rf-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}

.rf-dr{position:absolute;border-radius:50%;background:transparent}
.rf-dr1{width:160px;height:160px;border:2px dashed rgba(15,184,122,.20);top:8%;right:2%;animation:spin1 32s linear infinite}
.rf-dr2{width:90px;height:90px;border:2px dashed rgba(180,83,9,.16);bottom:10%;left:2%;animation:spin2 24s linear infinite}
.rf-dr3{width:60px;height:60px;border:1.5px dashed rgba(15,184,122,.14);top:55%;left:5%;animation:spin1 18s linear infinite reverse}

.rf-ds{position:absolute}
.rf-ds-star{width:36px;height:36px;color:rgba(251,191,36,.32);top:15%;left:3%;animation:float1 10s ease-in-out infinite}
.rf-ds-bolt{width:30px;height:30px;color:rgba(15,184,122,.30);top:65%;right:3%;animation:float2 9s ease-in-out infinite}
.rf-ds-check{width:38px;height:38px;color:rgba(15,184,122,.25);bottom:14%;right:5%;animation:float3 12s ease-in-out infinite}
.rf-ds-ticket{width:40px;height:40px;color:rgba(251,191,36,.22);top:40%;left:2%;animation:float1 14s ease-in-out infinite}

.rf-fi{
  position:absolute;width:50px;height:50px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;font-size:22px;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}
.rfi1{top:12%;right:6%;background:linear-gradient(135deg,#fef3c7,#fde68a);animation:float1 8s ease-in-out infinite}
.rfi2{bottom:18%;left:3.5%;background:linear-gradient(135deg,#dcfce7,#bbf7d0);animation:float2 11s ease-in-out infinite}
.rfi3{top:50%;right:3%;background:linear-gradient(135deg,#ffe4e6,#fecaca);animation:float3 9s ease-in-out infinite}
.rfi4{top:25%;left:3%;background:linear-gradient(135deg,#e0f2fe,#bae6fd);animation:float1 13s ease-in-out infinite}

.rf-sp{position:absolute;width:7px;height:7px;border-radius:50%;background:#0fb87a;opacity:.5;
  box-shadow:0 0 0 3px rgba(15,184,122,.18),0 0 14px rgba(15,184,122,.45);
  animation:twinkle 3s ease-in-out infinite}
.rfsp1{top:22%;left:16%;animation-delay:.3s}
.rfsp2{top:55%;right:12%;animation-delay:1.0s}
.rfsp3{bottom:22%;left:45%;animation-delay:1.6s}
.rfsp4{top:38%;right:24%;animation-delay:.7s}

/* ---- Card ---- */
.rf-inner{
  position:relative;z-index:3;
  max-width:900px;
  margin:0 auto;
  text-align:center;
  background:rgba(255,255,255,.04);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  padding:60px 64px 64px;
  box-shadow:
    0 0 0 1px rgba(15,184,122,.12),
    0 32px 80px -20px rgba(0,0,0,.50),
    inset 0 1px 0 rgba(255,255,255,.08);
}
/* Green top accent line */
.rf-inner::before{
  content:'';position:absolute;
  top:0;left:10%;right:10%;height:2px;
  background:linear-gradient(90deg,transparent,var(--green),transparent);
  border-radius:2px;
}

/* Badge */
.rf-badge{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  background:rgba(15,184,122,.15);
  border:1px solid rgba(15,184,122,.30);
  color:#4ade80;
  border-radius:100px;
  padding:7px 18px;
  margin-bottom:24px;
}

/* Heading */
.rf-title{
  font-family:var(--display);
  font-size:clamp(1.9rem,3.6vw,3rem);
  font-weight:900;
  line-height:1.13;
  color:#fff;
  margin-bottom:20px;
}
.rf-title em{color:#4ade80}

/* Date */
.rf-date{
  display:inline-flex;align-items:center;gap:8px;
  font-size:15px;font-weight:600;
  color:#fff;
  background:rgba(15,184,122,.14);
  border:1px solid rgba(15,184,122,.32);
  border-radius:100px;
  padding:10px 22px;
  margin-bottom:16px;
}
.rf-date strong{color:#4ade80;font-weight:800}
.rf-date-sep{color:rgba(255,255,255,.35);margin:0 2px}
.rf-date-time{color:rgba(232,239,233,.90)}
.rf-urgency{
  font-size:13px;color:rgba(232,239,233,.45);
  margin-bottom:40px;
  letter-spacing:.02em;
}

/* Form */
.rf-form{display:flex;flex-direction:column;gap:12px}
.rf-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rf-input{
  width:100%;padding:15px 18px;
  background:rgba(255,255,255,.08);
  border:1.5px solid rgba(255,255,255,.12);
  border-radius:12px;
  font-size:15px;font-family:var(--sans);
  color:#fff;outline:none;
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.rf-input::placeholder{color:rgba(232,239,233,.38)}
.rf-input:focus{
  border-color:var(--green);
  background:rgba(255,255,255,.11);
  box-shadow:0 0 0 4px rgba(15,184,122,.15);
}
.rf-btn{
  width:100%;
  padding:0 28px;
  height:68px;
  background:linear-gradient(135deg,#0fb87a 0%,#0a9e68 100%);
  color:#fff;
  border:none;cursor:pointer;
  border-radius:14px;
  font-family:var(--display);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  box-shadow:0 8px 32px -6px rgba(15,184,122,.60),0 0 0 1px rgba(15,184,122,.25);
  transition:transform .2s,box-shadow .2s;
  margin-top:4px;
}
.rf-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 40px -8px rgba(15,184,122,.70),0 0 0 1px rgba(15,184,122,.35);
}
.rf-btn-main{font-size:17px;font-weight:800;letter-spacing:.01em}
.rf-btn-sub{
  font-size:11.5px;font-weight:500;opacity:.85;
  display:flex;align-items:center;gap:5px;
}
.rf-trust{
  margin-top:18px;
  font-size:12.5px;
  color:rgba(232,239,233,.40);
}

/* Responsive */
@media(max-width:760px){
  .rf-inner{padding:40px 28px 44px}
  .rf-fields{grid-template-columns:1fr}
  .register-final{padding:160px 0 80px}
  .rf-dr1,.rf-fi{display:none}
}

/* ================= FOOTER ================= */
.site-footer{
  background:#000;
  padding:36px 0 104px;
  text-align:center;
}
.site-footer .container{
  display:flex;flex-direction:column;align-items:center;gap:18px;
}
.ft-logo{
  height:48px;
  width:auto;
  opacity:.85;
  display:block;
}
.ft-disclaimer{
  font-size:13px;
  color:rgba(255,255,255,.55);
  line-height:1.6;
  max-width:820px;
}
.ft-nav{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;
}
.ft-nav span{color:rgba(255,255,255,.25);font-size:13px}
.ft-nav a{
  font-size:14px;font-weight:500;
  color:#4ade80;
  text-decoration:none;
  transition:color .2s;
}
.ft-nav a:hover{color:#86efac}
.ft-copy{
  font-size:13px;
  color:rgba(255,255,255,.40);
}
@media(max-width:600px){
  .ft-nav{gap:8px 10px}
  .ft-nav span{display:none}
}

/* ================= STICKY BAR ================= */
.sticky-bar{
  position:fixed;
  bottom:0;left:0;right:0;
  z-index:1000;
  height:72px;
  background:linear-gradient(90deg,#071a10 0%,#0b2318 50%,#071a10 100%);
  border-top:1px solid rgba(15,184,122,.25);
  box-shadow:0 -4px 32px rgba(0,0,0,.45), 0 -1px 0 rgba(15,184,122,.12);
}
.sb-inner{
  max-width:1240px;
  margin:0 auto;
  padding:0 28px;
  height:100%;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
}
.sticky-bar::before{
  content:'';
  position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(15,184,122,.6) 30%,#4ade80 50%,rgba(15,184,122,.6) 70%,transparent 100%);
}

/* Left */
.sb-left{
  display:flex;align-items:center;gap:10px;
}
.sb-fire{font-size:20px;flex-shrink:0}
.sb-label{
  font-size:14px;font-weight:600;
  color:rgba(232,239,233,.85);
  line-height:1.3;
}

/* Centre — countdown */
.sb-center{
  display:flex;align-items:center;gap:6px;
}
.sb-unit{
  display:flex;flex-direction:column;align-items:center;gap:1px;
  min-width:44px;
}
.sb-num{
  font-family:var(--display);
  font-size:22px;font-weight:800;
  line-height:1;
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  border-radius:7px;
  padding:4px 8px;
  min-width:44px;
  text-align:center;
  letter-spacing:.02em;
}
.sb-unit-label{
  font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.35);
  margin-top:2px;
}
.sb-colon{
  font-size:20px;font-weight:700;
  color:rgba(15,184,122,.6);
  margin-bottom:12px;
  line-height:1;
}

/* Right — CTA */
.sb-right{display:flex;justify-content:flex-end}
.sb-cta{
  display:inline-flex;align-items:center;
  padding:0 28px;
  height:44px;
  background:linear-gradient(135deg,#0fb87a 0%,#0a9e68 100%);
  color:#fff;
  font-size:14px;font-weight:700;
  text-decoration:none;
  border-radius:100px;
  white-space:nowrap;
  box-shadow:0 4px 18px -4px rgba(15,184,122,.55);
  transition:transform .2s, box-shadow .2s;
}
.sb-cta:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 24px -4px rgba(15,184,122,.70);
}

@media(max-width:900px){
  .sb-inner{grid-template-columns:1fr auto;padding:0 20px}
  .sb-left{display:none}
}
@media(max-width:560px){
  .sb-inner{grid-template-columns:1fr auto;gap:12px;padding:0 16px;height:64px}
  .sb-num{font-size:18px;min-width:36px;padding:3px 6px}
  .sb-cta{padding:0 14px;font-size:12px;height:38px}
  .sb-colon{font-size:16px}
}

/* ============================================================ */
/* ============= COMPREHENSIVE RESPONSIVE FIXES ============== */
/* ============================================================ */

/* --- Fix "Revenue-Generating" overflow on mobile --- */
@media(max-width:600px){
  .hl{white-space:normal}
  .nowrap{white-space:normal}
}

/* ===== TABLET 768px ===== */
@media(max-width:768px){
  /* Founders — simplify ticket CTA */
  .founders{padding:80px 0 80px}
  .f-cta{padding:18px 20px;gap:14px;border-radius:14px}
  .f-cta-flag{display:none}
  .f-cta-body{text-align:left}
  .f-cta-main{font-size:18px}
  .f-cta-sub{flex-wrap:wrap;font-size:12px}
  .f-scroll-arrow{display:none}

  /* Hide testimonials→social-proof arrow, remove excess top padding */
  .tm-scroll-arrow{display:none}
  .social-proof{padding-top:20px}
  .sp-badge{margin-top:0}

  /* Agenda */
  .agenda{padding:80px 0 80px}
  .ag-title{font-size:clamp(1.7rem,4.5vw,2.4rem)}

  /* Social proof — stack at tablet too */
  .sp-layout{grid-template-columns:1fr;gap:36px}
  .sp-letter{margin-top:0}
  .sp-masonry{columns:2;column-gap:12px}
  .sp-sign{width:220px}

  /* Register */
  .rf-title{font-size:clamp(1.6rem,4.5vw,2.4rem)}
  .rf-inner{padding:44px 32px 48px}
  .rf-fields{grid-template-columns:1fr}
}

/* ===== MOBILE 560px ===== */
@media(max-width:560px){
  /* Hero — keep 100px bottom padding so founders wave overlap is correct */
  .hero{padding:20px 0 100px}
  .hero-title{font-size:clamp(30px,8vw,40px);margin-bottom:14px}
  .hero-sub{font-size:14px;margin-bottom:28px}
  .hl-underline{bottom:-8px}

  /* Hide most floating decorations */
  .s1,.s2,.s3,.s5,.s6,.s7,
  .fi1,.fi2,.fi3,.fi5,.fi6,.fi7,.fi8{display:none}
  .fi4{width:42px;height:42px;font-size:19px}

  /* Form panel */
  .fp-title{font-size:clamp(22px,6vw,28px)}
  .fp-meta{grid-template-columns:1fr 1fr}
  .meta-v{font-size:13px}
  /* Avatars — stack vertically so +843 pill doesn't crowd the text */
  .fp-avatars{flex-direction:column;align-items:flex-start;gap:6px}

  /* Founders — reduce wave height and push content below it */
  .f-wave-top svg{height:72px}
  .founders{padding:96px 0 60px}
  .founders-title{font-size:clamp(1.6rem,7vw,2.2rem) !important}
  .founders-lead{font-size:14px}
  .f-cta{
    padding:16px 20px;gap:14px;
    border-radius:14px;
  }
  .f-cta-flag{display:none}
  .f-cta-body{text-align:center}
  .f-cta-arrow{width:36px;height:36px}
  .f-scroll-arrow{display:none}
  .f-cta-main{font-size:17px}
  .f-cta-sub{font-size:11px}

  /* Agenda — fix image column empty space when stacked */
  .agenda{padding:70px 0 70px}
  .ag-title{font-size:clamp(1.5rem,7vw,2rem)}
  .ag-subtitle{font-size:14px}
  .ag-module-img{height:220px;min-height:unset}
  .ag-module-img img{width:100%;height:100%;object-fit:cover}
  .ag-module-content{padding:24px 20px}
  .ag-mod-title{font-size:clamp(1.1rem,5vw,1.4rem)}

  /* Testimonials — hide decorations that bleed over cards on mobile */
  .testimonials{padding:120px 0 60px}
  .tm-title{font-size:clamp(1.5rem,7vw,2rem)}
  .tm-grid{grid-template-columns:1fr}
  .tm-card{padding:24px 20px}
  .tm-fi,.tm-sp,.tm-ds,.tm-dr{display:none}

  /* Social proof */
  .social-proof{padding:80px 0 60px}
  .sp-title{font-size:clamp(1.5rem,7vw,2rem)}
  .sp-masonry{columns:1}
  .sp-letter{padding:24px 22px 28px}
  .sp-body p{font-size:14.5px}
  .sp-sign{width:180px}

  /* Register */
  .register-final{padding:100px 0 60px}
  .rf-badge{font-size:11px;padding:6px 14px}
  .rf-title{font-size:clamp(1.4rem,6.5vw,1.9rem)}
  .rf-inner{padding:36px 20px 40px;border-radius:20px}
  .rf-date{font-size:13px;padding:8px 16px}
  .rf-urgency{font-size:12px}
  .rf-input{font-size:15px;padding:14px 16px}
  .rf-btn{height:60px;border-radius:14px}
  .rf-btn-main{font-size:16px}
  .rf-btn-sub{font-size:11px}

  /* Footer */
  .site-footer{padding:28px 0 96px}
  .ft-logo{height:38px}
  .ft-disclaimer{font-size:12px}
  .ft-copy{font-size:12px}

  /* Sticky bar text */
  .sb-label{font-size:12px}
  .sb-fire{font-size:16px}
}

/* ===== SMALL MOBILE 480px — sticky bar 50/50 with DD HH MM SS labels ===== */
@media(max-width:480px){
  /* Sticky bar: true 50/50 */
  .sb-inner{grid-template-columns:1fr 1fr;gap:8px;padding:0 12px;height:64px}
  .sb-center{justify-content:center;gap:2px}
  .sb-right{display:flex;justify-content:flex-end;align-items:center}

  /* Compact number boxes */
  .sb-num{font-size:15px;min-width:26px;padding:3px 4px;border-radius:5px}
  .sb-colon{font-size:13px;margin-bottom:14px}

  /* Show DD HH MM SS labels */
  .sb-unit-label{display:block;font-size:8px;letter-spacing:.06em}

  /* CTA fills its half */
  .sb-cta{font-size:11px;padding:0 10px;height:38px;width:100%;justify-content:center}
}

/* ===== SMALL MOBILE 400px ===== */
@media(max-width:400px){
  .hero-title{font-size:28px}
  .sb-num{font-size:14px;min-width:26px;padding:2px 4px}
  .sb-cta{font-size:11px;padding:0 12px;height:36px}
  .rf-fields{grid-template-columns:1fr}
}
