.abRoot{ position:relative;width:100%;overflow:hidden;background:#FBF9F4;font-family:'Inter',sans-serif; }
.abRoot a{ color:#FF7A54;text-decoration:none; }
.abRoot a:hover{ color:#FFC24A; }
.abContainer{ position:relative;max-width:1120px;margin:0 auto;padding:0 44px;box-sizing:border-box; }

.abRev{ opacity:0;transform:translateY(26px);transition:opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1); }
.abRev.in{ opacity:1;transform:translateY(0); }

@keyframes abGlowBreathe{0%,100%{opacity:.4;transform:translate(-50%,-50%) scale(1);}50%{opacity:.72;transform:translate(-50%,-50%) scale(1.06);}}
@keyframes abBlobA{0%,100%{transform:translate(0,0);}50%{transform:translate(-26px,20px);}}
@keyframes abBlobB{0%,100%{transform:translate(0,0);}50%{transform:translate(22px,-18px);}}
@keyframes nameShimmer{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
@keyframes pillSweep{0%{transform:translateX(-140%) skewX(-18deg);}100%{transform:translateX(240%) skewX(-18deg);}}
@keyframes mqLeft{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes mqRight{from{transform:translateX(-50%);}to{transform:translateX(0);}}

/* ---- Header ---- */
.abHeader{ position:relative;width:100%;background:#FBF9F4;box-sizing:border-box;padding:72px 0 96px; }
.abLogo{ height:60px;width:auto;display:block;margin-bottom:44px; }
.abKicker{ font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,122,84,.85);margin-bottom:22px; }
.abH1{ margin:0;max-width:960px;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(38px,5.6vw,72px);line-height:1.03;letter-spacing:-.025em;color:#0F1B3D;transition-delay:.06s; }
.abLede{ margin:30px 0 0;max-width:720px;font-size:clamp(18px,1.6vw,20px);line-height:1.55;color:rgba(15,27,61,.7);transition-delay:.14s; }

/* ---- Founder profile (navy) ---- */
.abFounderSection{ position:relative;width:100%;background:#0F1B3D;box-sizing:border-box;padding:clamp(70px,8vw,120px) 0;overflow:hidden; }
.abBlobA{ position:absolute;top:-12%;right:-6%;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,84,.10),transparent 68%);filter:blur(30px);pointer-events:none;z-index:0;animation:abBlobA 27s ease-in-out infinite; }
.abBlobB{ position:absolute;bottom:-16%;left:-10%;width:740px;height:740px;border-radius:50%;background:radial-gradient(circle,rgba(96,140,220,.09),transparent 70%);filter:blur(34px);pointer-events:none;z-index:0;animation:abBlobB 33s ease-in-out infinite; }

.founderInner{ position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 44px;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,0.95fr) minmax(0,1.05fr);gap:clamp(40px,6vw,90px);align-items:center; }

.fdDesktopCol{ position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:600px; }
.fdGlow{ position:absolute;left:50%;top:52%;width:min(560px,90%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,138,84,.4),rgba(255,194,74,.15) 46%,transparent 70%);animation:abGlowBreathe 5.5s ease-in-out infinite;pointer-events:none;z-index:0; }
.fdWrap{ position:relative;width:clamp(400px,47vw,610px);z-index:2;opacity:0;transform:scale(1.04);transition:opacity .7s ease .15s, transform .7s cubic-bezier(.2,.8,.2,1) .15s; }
.fdWrap.in{ opacity:1;transform:scale(1); }
.fdSharp{
  position:relative;z-index:2;width:100%;height:auto;display:block;transform:translateZ(0);backface-visibility:hidden;
  -webkit-mask-image:linear-gradient(to right, #000 85%, transparent 100%), linear-gradient(to bottom, #000 87%, transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right, #000 85%, transparent 100%), linear-gradient(to bottom, #000 87%, transparent 100%);
  mask-composite:intersect;
}
.fdEcho{
  position:absolute;inset:0;z-index:1;width:100%;height:auto;display:block;filter:blur(30px);opacity:.32;
  -webkit-mask-image:radial-gradient(70% 64% at 50% 40%, #000 54%, transparent 100%);
  mask-image:radial-gradient(70% 64% at 50% 40%, #000 54%, transparent 100%);
}
.fdSweep{
  position:absolute;inset:0;z-index:4;pointer-events:none;mix-blend-mode:screen;
  background:linear-gradient(115deg, transparent 42%, rgba(255,176,110,.55) 50%, rgba(255,214,150,.28) 54%, transparent 62%);
  background-size:260% 100%;background-position:150% 0%;
  -webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat;
  mask-size:100% 100%;mask-repeat:no-repeat;mask-mode:alpha;-webkit-mask-mode:alpha;
}

.fdTopRow{ display:block; }
.fdNameCol{}
.abFounderKicker{ font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#FF9A78;margin-bottom:16px; }

.founderName{ position:relative;display:inline-flex;flex-wrap:wrap;isolation:isolate; }
.founderName::before{
  content:"";position:absolute;left:-6%;top:6%;width:112%;height:88%;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 78% at 42% 50%, rgba(255,138,84,.34), rgba(255,194,74,.14) 46%, transparent 72%);
  filter:blur(26px);opacity:0;transition:opacity 1s ease .3s;
}
.founderName.in::before{ opacity:1; }
.nmL{
  display:inline-block;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(44px,5vw,72px);line-height:.96;letter-spacing:.01em;
  background:linear-gradient(100deg,#FF7A54 0%,#FFC24A 50%,#FF7A54 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:nameShimmer 5.5s ease-in-out infinite;
  opacity:0;transform:translateY(34px);transition:opacity .55s ease, transform .55s cubic-bezier(.19,1,.22,1);
}
.founderName.in .nmL{ opacity:1;transform:translateY(0); }

.fdMobile{ display:none; }

.abBio{ max-width:560px;margin-top:34px;font-weight:400;font-size:clamp(16px,1.3vw,17px);line-height:1.62;color:rgba(245,243,238,.82);text-align:justify;hyphens:auto;-webkit-hyphens:auto;word-spacing:-.01em; }
.bioEm{ color:#FFB489;font-weight:500; }
.bioRegion{ color:#FF9E72;font-weight:600; }

.liConnect{
  position:relative;display:inline-flex;align-items:center;gap:12px;margin-top:30px;padding:13px 24px 13px 14px;border-radius:999px;overflow:hidden;text-decoration:none;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,138,84,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  font-weight:600;font-size:16px;letter-spacing:.005em;color:#F5F3EE;
  transition:transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease, border-color .4s ease, color .4s ease;
}
.liConnect .liMark{
  display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;flex:none;
  background:linear-gradient(135deg,#FF7A54,#FFC24A);color:#0C1631;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:15px;line-height:1;letter-spacing:-.02em;padding-bottom:1px;
  box-shadow:0 2px 8px rgba(255,122,84,.45);transition:transform .4s cubic-bezier(.2,.8,.2,1);
}
.liConnect .liArrow{ color:#FF9A78;margin-left:1px;transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.liConnect::after{
  content:"";position:absolute;top:0;left:0;width:40%;height:100%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,214,150,.42),transparent);transform:translateX(-160%) skewX(-18deg);
}
.liConnect:hover{ transform:translateY(-3px);border-color:rgba(255,138,84,.7);color:#FFC7A6;box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 14px 34px rgba(12,22,49,.5), 0 0 30px rgba(255,138,84,.4); }
.liConnect:hover::after{ animation:pillSweep 1s cubic-bezier(.2,.8,.2,1); }
.liConnect:hover .liMark{ transform:translateX(2px) scale(1.06); }
.liConnect:hover .liArrow{ transform:translateX(5px); }
.liConnect:active{ transform:translateY(-3px);border-color:rgba(255,138,84,.7); }
.liConnect:active::after{ animation:pillSweep 1s cubic-bezier(.2,.8,.2,1); }
.liShort{ display:none; }

/* ---- Certifications + tech stack (cream) ---- */
.abCredSection{ position:relative;width:100%;background:#FBF9F4;box-sizing:border-box;padding:clamp(80px,9vw,120px) 0; }
.abCredInner{ text-align:center; }
.credRow{ display:flex;flex-wrap:wrap;justify-content:center;gap:20px; }
.credPill{
  position:relative;display:inline-flex;align-items:center;gap:14px;padding:18px 36px;border-radius:999px;overflow:hidden;
  background:linear-gradient(145deg,#16264F,#0F1B3D);border:1px solid rgba(255,138,84,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 26px rgba(15,27,61,.18);
  font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(19px,1.8vw,24px);letter-spacing:-.01em;color:#F5F3EE;
  transition:transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease, border-color .4s ease;
}
.credPill::before{ content:"";width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,#FF7A54,#FFC24A);box-shadow:0 0 10px rgba(255,138,84,.7);flex:none; }
.credPill::after{ content:"";position:absolute;top:0;left:0;width:36%;height:100%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,214,150,.42),transparent);transform:translateX(-140%) skewX(-18deg); }
.credPill:hover{ transform:translateY(-6px);border-color:rgba(255,138,84,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 18px 40px rgba(15,27,61,.28); }
.credPill:hover::after{ animation:pillSweep 1s cubic-bezier(.2,.8,.2,1); }
.credPill:active{ transform:translateY(-4px);border-color:rgba(255,138,84,.6); }
.credPill:active::after{ animation:pillSweep 1s cubic-bezier(.2,.8,.2,1); }

.abMarqueeWrap{ position:relative;max-width:1240px;margin:clamp(64px,7vw,96px) auto 0;padding:0 44px;box-sizing:border-box; }
.abMarqueeLabel{ font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,122,84,.9);margin-bottom:2px; }
.mqRow{ position:relative;overflow:hidden;width:100%;padding:36px 0 20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); }
.mqTrack{ display:flex;gap:16px;width:max-content;will-change:transform; }
.mqA{ animation:mqLeft 46s linear infinite; }
.mqB{ animation:mqRight 30s linear infinite; }
.mqC{ animation:mqRight 24s linear infinite; }
.mqD{ animation:mqLeft 22s linear infinite; }
.mqRow:hover .mqTrack{ animation-play-state:paused; }
.techPill{
  position:relative;display:inline-flex;align-items:center;gap:9px;padding:12px 22px;border-radius:999px;overflow:hidden;white-space:nowrap;flex:none;
  background:linear-gradient(145deg,#16264F,#0F1B3D);border:1px solid rgba(255,138,84,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 6px 16px rgba(15,27,61,.14);
  font-weight:600;font-size:15px;letter-spacing:.005em;color:rgba(245,243,238,.92);
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease;
}
.techPill::before{ content:"";width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#FF7A54,#FFC24A);flex:none; }
.techPill::after{ content:"";position:absolute;top:0;left:0;width:40%;height:100%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,214,150,.4),transparent);transform:translateX(-150%) skewX(-18deg); }
.techPill:hover{ transform:translateY(-4px);border-color:rgba(255,138,84,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 12px 26px rgba(15,27,61,.24); }
.techPill:hover::after{ animation:pillSweep .9s cubic-bezier(.2,.8,.2,1); }
.techPill:active{ transform:translateY(-4px);border-color:rgba(255,138,84,.55); }
.techPill:active::after{ animation:pillSweep .9s cubic-bezier(.2,.8,.2,1); }

/* ---- CTA (cream, quiet text CTA) ---- */
.abCtaSection{ position:relative;width:100%;background:#FBF9F4;box-sizing:border-box;padding:0 0 clamp(90px,11vw,150px); }
.abCtaInner{ text-align:center;border-top:1px solid rgba(15,27,61,.12);padding-top:clamp(70px,8vw,100px); }
.abCtaLine{ font-weight:400;font-size:clamp(17px,1.5vw,19px);color:rgba(15,27,61,.6);margin-bottom:22px; }
.aboutCta{ position:relative;display:inline-flex;align-items:center;gap:12px;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(24px,3vw,38px);letter-spacing:-.02em;color:#0F1B3D;text-decoration:none;padding-bottom:8px; }
.aboutCta .abLine{ position:absolute;left:0;bottom:0;height:2.5px;width:100%;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,#FF7A54,#FFC24A);transition:transform .5s cubic-bezier(.2,.8,.2,1);border-radius:2px; }
.aboutCta:hover{ color:#0F1B3D; }
.aboutCta:hover .abLine{ transform:scaleX(1); }
.aboutCta:active .abLine{ transform:scaleX(1); }
.aboutCta .abArrow{ display:inline-block;transition:transform .35s cubic-bezier(.2,.8,.2,1);color:#FF7A54; }
.aboutCta:hover .abArrow{ transform:translateX(7px); }

@media(max-width:820px){
  .abHeader{ padding:52px 0 60px; }
  .abLogo{ height:48px;margin-bottom:32px; }
  .founderInner{ grid-template-columns:1fr;gap:0; }
  .fdDesktopCol{ display:none; }
  .fdMobile{ display:block;position:relative;flex:none;align-self:flex-end; }
  .fdTopRow{ display:flex;align-items:flex-end;gap:16px; }
  .fdNameCol{ flex:1;min-width:0; }
  .fdMobileImg{ height:clamp(132px,42vw,196px);width:auto;position:relative;z-index:1;display:block; }
  .fdMobileGlow{ position:absolute;left:50%;top:50%;width:150%;height:150%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,138,84,.28),transparent 68%);filter:blur(20px);pointer-events:none;z-index:0; }
  .founderName{ display:flex;margin-top:6px; }
  .nmL{ font-size:clamp(32px,11vw,54px); }
  .abBio ~ .liConnect, .liConnect{ clear:both; }
  .liConnect{ padding:10px 18px 10px 12px;font-size:14px;margin-top:24px; }
  .liFull{ display:none; }
  .liShort{ display:inline; }
  .credRow{ gap:10px; }
  .credPill{ padding:9px 18px;font-size:14px;gap:8px; }
  .credPill::before{ width:7px;height:7px; }
  .aboutCta .abLine{ transform:scaleX(1);background:#FF7A54; }
}

@media (prefers-reduced-motion: reduce){
  .nmL, .abBlobA, .abBlobB, .fdGlow, .mqTrack, .credPill::after, .techPill::after, .liConnect::after{ animation:none !important; }
}
