/* =========================================================
   SAMPO STUDY — product page specific styles
   (loaded after style.css; reuses the same design system)
   ========================================================= */

.back-link{
  align-self:flex-start;font-family:var(--f-en);font-size:.82rem;letter-spacing:.04em;
  color:var(--green-mid);margin-bottom:22px;transition:transform .4s var(--ease),color .3s;
}
.back-link:hover{transform:translateX(-5px);color:var(--clay);}
.study-hero .hero-lead strong{color:var(--green);font-weight:700;}
.study-hero .hero-lead em{font-style:normal;color:var(--clay);font-weight:700;}

.about-study .mission-body em{font-style:normal;color:var(--green);font-weight:700;}
.about-study .big-statement .hl{white-space:nowrap;}

/* ---- alternating feature rows ---- */
.features .sec-head{margin-bottom:clamp(40px,6vw,72px);}
.feature-row{
  display:grid;grid-template-columns:0.9fr 1.1fr;align-items:center;
  gap:clamp(30px,6vw,90px);
  margin-bottom:clamp(70px,11vw,150px);
}
.feature-row.reverse{grid-template-columns:1.1fr 0.9fr;}
.feature-row.reverse .fr-media{order:2;}
.feature-row.reverse .fr-text{order:1;}
.feature-row:last-child{margin-bottom:0;}

.fr-media{
  border-radius:26px;overflow:hidden;transform-style:preserve-3d;justify-self:center;
  width:clamp(220px,32vw,330px);
  box-shadow:0 50px 90px -45px rgba(30,58,44,.55),0 4px 14px rgba(30,58,44,.08);
}
.fr-media img{width:100%;display:block;}

.fr-no{
  display:block;font-family:var(--f-en);font-weight:200;font-size:clamp(2.4rem,5vw,3.6rem);
  color:var(--sage);line-height:1;margin-bottom:14px;
}
.fr-title{
  font-family:var(--f-disp);font-weight:900;color:var(--ink);
  font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.4;margin-bottom:26px;letter-spacing:.01em;
}
.fr-list{list-style:none;display:flex;flex-direction:column;gap:16px;max-width:520px;}
.fr-list li{
  position:relative;padding-left:34px;color:var(--ink-soft);font-size:clamp(.95rem,1.5vw,1.06rem);line-height:1.8;
}
.fr-list li::before{
  content:"";position:absolute;left:0;top:.62em;width:18px;height:18px;border-radius:50%;
  background:var(--sage-soft);
  box-shadow:inset 0 0 0 2px var(--green-mid);
}
.fr-list li::after{
  content:"";position:absolute;left:6px;top:calc(.62em + 6px);width:6px;height:6px;border-radius:50%;background:var(--green);
}
.fr-list strong{color:var(--green);font-weight:700;}
.fr-link{display:inline-block;margin-top:4px;color:var(--clay);font-weight:500;font-size:.9rem;border-bottom:1px solid var(--clay-soft);transition:transform .3s var(--ease),color .3s;}
.fr-link:hover{color:var(--green);transform:translateX(3px);}

@media (max-width:820px){
  .feature-row,.feature-row.reverse{grid-template-columns:1fr;gap:34px;}
  .feature-row.reverse .fr-media{order:0;}
  .feature-row.reverse .fr-text{order:0;}
  .fr-media{width:min(280px,72vw);}
}

/* ---- checklist ---- */
.checklist{
  list-style:none;display:grid;grid-template-columns:repeat(2,1fr);
  gap:0;border-top:1px solid var(--line);
}
.checklist li{
  position:relative;padding:22px 22px 22px 56px;border-bottom:1px solid var(--line);
  color:var(--ink);font-size:.98rem;line-height:1.7;
}
.checklist li:nth-child(odd){border-right:1px solid var(--line);}
.checklist li::before{
  content:"";position:absolute;left:20px;top:26px;width:22px;height:22px;border-radius:7px;
  background:var(--green);
}
.checklist li::after{
  content:"";position:absolute;left:27px;top:31px;width:8px;height:5px;
  border-left:2px solid var(--cream);border-bottom:2px solid var(--cream);transform:rotate(-45deg);
}
@media (max-width:680px){
  .checklist{grid-template-columns:1fr;}
  .checklist li:nth-child(odd){border-right:none;}
}

/* annotation for unconfirmed copy */
.todo-note{
  display:inline-block;margin-left:8px;font-size:.66rem;font-weight:500;letter-spacing:.04em;
  color:var(--clay);background:var(--clay-soft);border-radius:999px;padding:2px 9px;vertical-align:middle;
}
