:root{
  --mobile-shell-bg:rgba(9,24,32,.95);
  --mobile-shell-border:rgba(255,255,255,.12);
  --mobile-shell-text:rgba(255,255,255,.88);
  --mobile-shell-muted:rgba(255,255,255,.62);
  --mobile-card-radius:20px;
  --mobile-card-border:1px solid rgba(12,36,52,.1);
  --mobile-edge-pad:.95rem;
}

.mnav-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid var(--mobile-shell-border);
  background:rgba(255,255,255,.04);
  color:#fff;
  cursor:pointer;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
  flex-shrink:0;
}

.mnav-toggle:hover,
.mnav-toggle:focus-visible{
  border-color:rgba(91,184,232,.4);
  background:rgba(91,184,232,.14);
  outline:none;
}

.mnav-toggle-bars,
.mnav-toggle-bars::before,
.mnav-toggle-bars::after{
  content:"";
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform .22s ease,opacity .22s ease;
}

.mnav-toggle-bars{
  position:relative;
}

.mnav-toggle-bars::before{
  position:absolute;
  top:-6px;
  left:0;
}

.mnav-toggle-bars::after{
  position:absolute;
  top:6px;
  left:0;
}

body.mobile-nav-open{
  overflow:hidden;
}

body.mobile-nav-open .mnav-toggle-bars{
  transform:rotate(45deg);
}

body.mobile-nav-open .mnav-toggle-bars::before{
  transform:translateY(6px) rotate(90deg);
}

body.mobile-nav-open .mnav-toggle-bars::after{
  opacity:0;
}

.mobile-nav-backdrop{
  position:fixed;
  inset:0;
  background:rgba(7,20,28,.58);
  backdrop-filter:blur(6px);
  opacity:0;
  pointer-events:none;
  transition:opacity .24s ease;
  z-index:119;
}

.mobile-nav-panel{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  width:min(24rem,90vw);
  padding:1rem 1rem 1.2rem;
  background:linear-gradient(180deg,var(--mobile-shell-bg),#08141a 75%);
  box-shadow:-20px 0 44px rgba(0,0,0,.3);
  transform:translateX(100%);
  transition:transform .26s ease;
  z-index:120;
  overflow-y:auto;
}

body.mobile-nav-open .mobile-nav-backdrop{
  opacity:1;
  pointer-events:auto;
}

body.mobile-nav-open .mobile-nav-panel{
  transform:translateX(0);
}

.mobile-nav-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.1rem 0 .95rem;
  margin-bottom:.5rem;
  border-bottom:1px solid rgba(255,255,255,.09);
}

.mobile-nav-label{
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--mobile-shell-muted);
}

.mobile-nav-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:#fff;
  cursor:pointer;
}

.mobile-nav-close:hover,
.mobile-nav-close:focus-visible{
  background:rgba(91,184,232,.15);
  outline:none;
}

.mobile-nav-links{
  display:flex;
  flex-direction:column;
  gap:.68rem;
}

.mobile-nav-links a{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:49px;
  padding:.95rem 1rem;
  border-radius:17px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.04);
  color:var(--mobile-shell-text);
  font-size:1rem;
  font-weight:600;
  line-height:1.35;
  transition:background .22s ease,border-color .22s ease,transform .22s ease;
}

.mobile-nav-links a:hover,
.mobile-nav-links a:focus-visible{
  background:rgba(91,184,232,.12);
  border-color:rgba(91,184,232,.3);
  outline:none;
}

.mobile-nav-links a.current{
  color:#fff;
  border-color:rgba(91,184,232,.38);
  background:rgba(91,184,232,.15);
}

.mobile-nav-links a.nc{
  justify-content:center;
  margin-top:.2rem;
  background:linear-gradient(135deg,#2B7CB5,#4DA8D4) !important;
  border-color:transparent;
  color:#fff;
  box-shadow:0 12px 26px rgba(27,94,138,.26);
}

.mobile-nav-links a.nc:hover,
.mobile-nav-links a.nc:focus-visible{
  transform:translateY(-1px);
}

.mobile-quicknav{
  display:none !important;
}

@media (max-width:900px){
  html,
  body{
    overflow-x:hidden;
  }

  body{
    text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
  }

  body.mobile-has-quicknav{
    padding-bottom:0;
  }

  .mnav-toggle{
    display:inline-flex;
  }

  .nav{
    padding:.74rem var(--mobile-edge-pad) !important;
  }

  .nav .ni{
    gap:.75rem;
  }

  .nl{
    min-width:0;
  }

  .nl svg{
    width:30px !important;
    height:30px !important;
  }

  .nlt{
    max-width:calc(100vw - 11.3rem);
    font-size:1.03rem !important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .nk{
    display:none !important;
  }

  .hero,
  .f-hero{
    min-height:auto !important;
    padding-top:5.95rem !important;
  }

  .hero-in,
  .hi,
  .f-hero-inner{
    grid-template-columns:1fr !important;
    gap:1.18rem !important;
    align-items:start !important;
  }

  .hero-in,
  .hi,
  .f-hero-inner,
  .sg,
  .hero-in,
  .products,
  .custom-wrap,
  .proof,
  .support-split,
  .steps,
  .cta-in,
  .fti,
  .hd,
  .order-note,
  .pg,
  .proof-grid,
  .cog,
  .wg,
  .split,
  .grid,
  .ops,
  .process,
  .steps,
  .jobs,
  .apply-split,
  .case-study-wrap,
  .f-body-inner,
  .f-proof-board,
  .f-mini-grid,
  .f-review-grid,
  .f-score-grid,
  .f-proof-grid,
  .ftg{
    width:100% !important;
    max-width:100% !important;
  }

  .hero h1,
  .f-intro h1{
    font-size:clamp(2.05rem,10.4vw,3.15rem) !important;
    line-height:1.08 !important;
    max-width:none !important;
    letter-spacing:-.02em !important;
    text-wrap:balance;
  }

  .hero p,
  .hsub,
  .f-intro p,
  .hd p,
  .sh p,
  .panel p,
  .card p,
  .job p,
  .case-pane p,
  .channel-pane p{
    font-size:1rem !important;
    line-height:1.7 !important;
    max-width:none !important;
  }

  .hi{
    padding:6.15rem var(--mobile-edge-pad) 2.25rem !important;
  }

  .hero-in{
    padding-inline:var(--mobile-edge-pad);
  }

  .f-hero{
    padding:6.2rem var(--mobile-edge-pad) 2.2rem !important;
  }

  .f-hero-inner{
    margin:0;
  }

  .f-intro{
    padding-inline:.05rem;
  }

  .f-role{
    font-size:1.03rem !important;
    margin-bottom:1rem !important;
  }

  .f-social{
    width:100%;
    gap:.62rem !important;
    margin-top:1rem !important;
  }

  .f-social a{
    width:100%;
    justify-content:center;
    padding:.78rem .95rem !important;
  }

  .f-photo{
    max-width:none !important;
    margin:0 !important;
  }

  .f-img{
    width:100% !important;
    max-width:none !important;
    aspect-ratio:4 / 5 !important;
    border-radius:22px !important;
  }

  .f-img img{
    object-position:center 24% !important;
  }

  .f-badge{
    left:1rem !important;
    right:auto !important;
    bottom:1rem !important;
    transform:none !important;
    max-width:calc(100% - 2rem);
    white-space:normal !important;
    border-radius:12px !important;
    font-size:.78rem !important;
    padding:.52rem .82rem !important;
  }

  .hero .ha{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.62rem !important;
    margin-bottom:1.15rem !important;
    width:100%;
  }

  .btn{
    width:100%;
    justify-content:center;
    padding:.9rem 1rem !important;
    font-size:.93rem !important;
  }

  .hpr{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.52rem !important;
  }

  .hpi{
    min-width:0 !important;
    padding:.72rem .65rem;
    border-radius:14px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
  }

  .hpn{
    font-size:1.3rem !important;
    line-height:1 !important;
  }

  .hpl{
    text-transform:none !important;
    letter-spacing:0 !important;
    margin-top:.2rem !important;
    font-size:.78rem !important;
    line-height:1.35 !important;
  }

  .hpnote{
    max-width:none !important;
    font-size:.72rem !important;
    margin-top:.56rem !important;
  }

  .hc{
    display:block !important;
    width:100%;
    max-width:none !important;
    margin-top:.2rem;
    padding:1rem !important;
    border-radius:19px !important;
    background:rgba(255,255,255,.04) !important;
    border:1px solid rgba(255,255,255,.09) !important;
  }

  .hcl{
    margin-bottom:.75rem !important;
    font-size:.72rem !important;
    letter-spacing:.14em !important;
  }

  .hm{
    gap:.58rem !important;
  }

  .mr{
    padding:.78rem .82rem !important;
    border-radius:14px !important;
    gap:.72rem !important;
  }

  .mi{
    width:36px !important;
    height:36px !important;
  }

  .mn{
    font-size:.74rem !important;
  }

  .mv{
    font-size:.96rem !important;
    line-height:1.35 !important;
  }

  .sh,
  .hd{
    text-align:left !important;
    max-width:none !important;
    margin:0 0 1.45rem !important;
    padding-inline:.06rem;
  }

  .tg{
    font-size:.71rem !important;
    letter-spacing:.16em !important;
    margin-bottom:.52rem !important;
  }

  .sh h2,
  .hd h2,
  .cta h2{
    font-size:clamp(1.55rem,7.9vw,2.15rem) !important;
    line-height:1.15 !important;
    letter-spacing:-.02em !important;
    text-wrap:balance;
  }

  .sec{
    padding:2.7rem var(--mobile-edge-pad) !important;
  }

  .proof{
    padding-top:2.15rem !important;
    padding-bottom:1.75rem !important;
  }

  .svs{
    padding-top:1.2rem !important;
    padding-bottom:1.7rem !important;
  }

  .founder-cta{
    padding:1.5rem var(--mobile-edge-pad) !important;
  }

  .founder-cta-inner{
    grid-template-columns:1fr !important;
    gap:.95rem !important;
    padding:1.1rem !important;
    border-radius:18px !important;
    text-align:left !important;
  }

  .founder-cta-img{
    margin:0 !important;
    width:104px !important;
    height:104px !important;
    border-radius:20px !important;
  }

  .founder-cta-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:52% 30%;
  }

  .founder-cta-text h3{
    font-size:1.44rem !important;
    line-height:1.2 !important;
  }

  .founder-cta-text p{
    margin-bottom:.9rem !important;
  }

  .sg,
  .grid,
  .ops,
  .process,
  .steps,
  .jobs,
  .split,
  .apply-split,
  .cog,
  .wg,
  .case-study-wrap,
  .proof-grid,
  .proof-hero,
  .proof-stat-grid,
  .proof-review-grid,
  .proof-links,
  .f-proof-board,
  .f-mini-grid,
  .f-review-grid,
  .f-score-grid,
  .f-proof-grid,
  .ftg{
    grid-template-columns:1fr !important;
    gap:.85rem !important;
  }

  .proof-panel,
  .case-pane,
  .channel-pane,
  .card,
  .job,
  .step,
  .panel,
  .apply-panel,
  .f-section,
  .f-cta,
  .f-mini-card,
  .f-review-card,
  .f-proof-card,
  .f-score-card,
  .proof-feature,
  .proof-stat,
  .proof-review,
  .stat-box,
  .channel-item{
    border-radius:18px !important;
    padding:1.05rem !important;
  }

  .proof-top{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:.6rem !important;
    margin-bottom:.72rem !important;
  }

  .proof-badge{
    width:fit-content;
    max-width:100%;
    white-space:normal !important;
  }

  .proof-panel h3,
  .case-pane h3,
  .channel-pane h3,
  .job h3,
  .f-section h2,
  .f-cta h2{
    max-width:none !important;
    font-size:clamp(1.42rem,8.4vw,2.02rem) !important;
    line-height:1.12 !important;
    letter-spacing:-.02em !important;
    overflow-wrap:anywhere;
    word-break:normal;
    text-wrap:balance;
  }

  .proof-copy,
  .proof-note{
    font-size:.98rem !important;
    line-height:1.66 !important;
  }

  .proof-feature{
    min-height:unset !important;
  }

  .proof-feature strong,
  .f-score-card strong,
  .f-proof-card strong,
  .stat-box strong{
    font-size:clamp(1.62rem,10vw,2.26rem) !important;
    line-height:1 !important;
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .proof-feature.word strong,
  .f-mini-card strong,
  .f-review-card strong{
    font-size:clamp(1.2rem,6.2vw,1.54rem) !important;
    overflow-wrap:anywhere;
  }

  .proof-feature span,
  .proof-stat span,
  .proof-list li,
  .proof-review p,
  .proof-link,
  .channel-item span,
  .stat-box span,
  .f-mini-card p,
  .f-review-card p{
    font-size:.92rem !important;
    line-height:1.58 !important;
  }

  .proof-list{
    margin-top:.3rem !important;
    gap:.58rem !important;
  }

  .proof-links{
    margin-top:.65rem !important;
  }

  .proof-link{
    width:100%;
    padding:.72rem .86rem !important;
  }

  .link-row{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.56rem !important;
    margin-top:.85rem !important;
  }

  .link-row a{
    width:100%;
    font-size:.86rem !important;
    padding:.72rem .78rem !important;
  }

  .f-body{
    padding:2.65rem var(--mobile-edge-pad) !important;
    background:linear-gradient(180deg,var(--w),var(--off)) !important;
  }

  .f-section{
    margin-bottom:0 !important;
  }

  .f-section p{
    font-size:.98rem !important;
    line-height:1.72 !important;
  }

  .f-tag{
    font-size:.78rem !important;
    padding:.4rem .72rem !important;
  }

  .f-proof-links{
    display:grid;
    grid-template-columns:1fr;
    gap:.58rem !important;
    margin-top:.78rem !important;
  }

  .f-proof-links a{
    width:100%;
    padding:.72rem .82rem !important;
    font-size:.9rem !important;
  }

  form,
  .career-form{
    grid-template-columns:1fr !important;
    gap:.82rem !important;
  }

  label{
    margin-bottom:.3rem !important;
  }

  input,
  select,
  textarea{
    font-size:16px !important;
    border-radius:12px !important;
    padding:.9rem .92rem !important;
  }

  textarea{
    min-height:120px !important;
  }

  .submit-note{
    margin:.62rem 0 .95rem !important;
    font-size:.9rem !important;
    line-height:1.58 !important;
  }

  .wy{
    padding-top:1.9rem !important;
    padding-bottom:2.2rem !important;
  }

  .wc{
    padding:1.15rem !important;
    border-radius:18px !important;
  }

  .wc blockquote{
    font-size:1rem !important;
    line-height:1.55 !important;
  }

  .ct{
    padding:2.8rem var(--mobile-edge-pad) !important;
  }

  .ft{
    padding:2.2rem var(--mobile-edge-pad) 1.12rem !important;
  }

  .ftg{
    margin-bottom:1rem !important;
  }

  .ftl{
    font-size:.74rem !important;
    line-height:1.72 !important;
  }

  .proof,
  .wy,
  .sec{
    scroll-margin-top:5.7rem;
  }
}

@media (max-width:640px){
  .mobile-nav-panel{
    width:min(24rem,92vw);
  }

  .hero .ha{
    grid-template-columns:1fr;
  }

  .hpr{
    grid-template-columns:1fr;
  }

  .hpi{
    padding:.7rem .72rem;
  }

  .link-row{
    grid-template-columns:1fr;
  }
}

@media (max-width:500px){
  .nlt{
    max-width:calc(100vw - 10.9rem);
  }

  .hero h1,
  .f-intro h1{
    font-size:clamp(1.95rem,10.2vw,2.52rem) !important;
  }

  .proof-panel h3,
  .case-pane h3,
  .channel-pane h3,
  .job h3{
    font-size:clamp(1.33rem,8.4vw,1.72rem) !important;
    line-height:1.14 !important;
  }

  .f-badge{
    font-size:.75rem !important;
  }
}

@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:0s !important;
    animation-iteration-count:1 !important;
    transition-duration:0s !important;
    scroll-behavior:auto !important;
  }
}
