/* StripeFit homepage layout. Scoped to .stripefit-home to avoid affecting the rest of the theme. */

.stripefit-home{color:var(--sf-ink)}
.stripefit-home a{color:inherit}

.stripefit-home .sf-hero{padding:56px 0 26px 0;position:relative;overflow:hidden}
.stripefit-home .sf-hero:before{
  content:"";
  position:absolute;inset:-2px;
  background:
    radial-gradient(900px 320px at 15% 15%, rgba(255,77,0,.22), transparent 60%),
    radial-gradient(700px 320px at 85% 25%, rgba(0,0,0,.14), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.94) 55%, rgba(255,255,255,1) 100%);
  pointer-events:none;
}
.stripefit-home .sf-hero .gp-container{position:relative;z-index:1}

.stripefit-home .sf-hero-inner{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}
@media (min-width: 980px){
  .stripefit-home .sf-hero-inner{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:22px}
}

.stripefit-home .sf-kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-weight:900;letter-spacing:.12em;text-transform:uppercase;
  font-size:12px;color:rgba(0,0,0,.62);
}
.stripefit-home .sf-kicker:before{
  content:"";width:42px;height:10px;border-radius:999px;
  background:linear-gradient(90deg, var(--sf-accent), rgba(255,77,0,.2));
}

.stripefit-home .sf-h1{margin:14px 0 10px 0;font-size:clamp(34px,4.6vw,56px);line-height:1.02;letter-spacing:-.02em}
.stripefit-home .sf-sub{margin:0;color:rgba(0,0,0,.72);font-size:16px;max-width:58ch}

.stripefit-home .sf-hero-ctas{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}

.stripefit-home .sf-hero-optin .sf-optin{margin:0;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.stripefit-home .sf-hero-optin .sf-optin h3{font-size:20px}

.stripefit-home .sf-micro{margin:14px 0 0 0;color:rgba(0,0,0,.55);font-size:12px}

.stripefit-home .sf-cats{margin-top:18px;display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width: 740px){
  .stripefit-home .sf-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width: 1120px){
  .stripefit-home .sf-cats{grid-template-columns:repeat(5,minmax(0,1fr))}
}

.stripefit-home .sf-cat{
  display:flex;flex-direction:column;gap:8px;
  padding:14px 14px;border-radius:16px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(0,0,0,.10);
  text-decoration:none;
  transition:transform .14s ease, border-color .14s ease, box-shadow .14s ease;
  min-height:128px;
}
.stripefit-home .sf-cat:hover{transform:translateY(-2px);border-color:rgba(0,0,0,.18);box-shadow:0 12px 26px rgba(0,0,0,.08)}
.stripefit-home .sf-cat-title{font-weight:900;letter-spacing:-.01em}
.stripefit-home .sf-cat-desc{color:rgba(0,0,0,.68);font-size:13px;line-height:1.25}
.stripefit-home .sf-cat-meta{margin-top:auto;color:rgba(0,0,0,.55);font-size:12px}

.stripefit-home .sf-section{padding:26px 0}
.stripefit-home .sf-h2{margin:0;font-size:22px;letter-spacing:-.01em}
.stripefit-home .sf-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.stripefit-home .sf-link{color:rgba(0,0,0,.66);text-decoration:underline;text-underline-offset:3px}

.stripefit-home .sf-latest-grid{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width: 740px){
  .stripefit-home .sf-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width: 1120px){
  .stripefit-home .sf-latest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

.stripefit-home .sf-card{
  position:relative;
  display:block;
  padding:14px 14px 64px 14px;
  border-radius:18px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  text-decoration:none;
  overflow:hidden;
  transition:transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.stripefit-home .sf-card:hover{transform:translateY(-2px);border-color:rgba(0,0,0,.18);box-shadow:0 12px 26px rgba(0,0,0,.08)}

.stripefit-home .sf-card-pill{
  display:inline-flex;align-items:center;justify-content:center;
  padding:6px 10px;border-radius:999px;
  background:rgba(255,77,0,.10);
  border:1px solid rgba(255,77,0,.22);
  color:rgba(0,0,0,.72);
  font-weight:900;
  font-size:12px;
}

.stripefit-home .sf-card-title{display:block;margin-top:10px;font-weight:900;letter-spacing:-.01em;line-height:1.15}
.stripefit-home .sf-card-excerpt{display:block;margin-top:8px;color:rgba(0,0,0,.68);font-size:13px;line-height:1.25;max-width:48ch}

.stripefit-home .sf-card-thumb{
  position:absolute;right:-18px;bottom:-18px;
  width:140px;height:140px;border-radius:22px;
  background-size:cover;background-position:center;
  transform:rotate(-6deg);
  box-shadow:0 12px 28px rgba(0,0,0,.14);
  border:1px solid rgba(0,0,0,.12);
}
.stripefit-home .sf-card-thumb--empty{background:linear-gradient(135deg, rgba(0,0,0,.08), rgba(255,77,0,.10))}

/* Tighten the opt-in and popular blocks on home. */
.stripefit-home .sf-optin input[type="text"],
.stripefit-home .sf-optin input[type="email"]{min-width:160px}
