/* Harvest: nutrition and healthy habits. Oat and olive, a soft serif, a round photo inside a turning text ring, recipe cards. */
.coach-site.harvest{
  --cs-bg:#f7f3ea;--cs-alt:#efe8d8;--cs-ink:#2a2f1d;--cs-soft:#5a5d48;--cs-line:#ddd4c0;--cs-card:#fffcf5;
  --cs-head:'Young Serif',serif;--cs-body:'Instrument Sans',sans-serif;--cs-head-weight:400;--cs-head-track:-0.01em;--cs-head-case:none;
  --cs-radius:18px;--cs-photo-radius:50%;--cs-button-radius:999px;--cs-photo-pos:47% 45%;
  --cs-shadow:0 26px 50px -34px rgba(60,55,20,.42)
}
.harvest h1{font-size:clamp(44px,5.8vw,82px);line-height:1.02}
.harvest h2{font-size:clamp(32px,3.8vw,52px)}
.harvest .cs-kicker{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.harvest .cs-button{font-weight:600}
.harvest .cs-header{border-bottom:1.5px dashed var(--cs-line)}
.harvest .cs-brand-mark{border-radius:50% 50% 50% 6px}

.hv-hero{padding:56px 0 96px}
.hv-hero-media{position:relative;isolation:isolate;width:100%;max-width:540px;justify-self:center}
.hv-hero-media::before{content:"";position:absolute;z-index:-1;inset:13%;border-radius:50%;background:var(--cs-accent-soft);transform:translate(7%,6%)}
.hv-ring{position:absolute;inset:0;width:100%;height:100%;color:var(--cs-accent-text);animation:hv-spin 70s linear infinite}
/* The turning ring's corners must not widen the page on phones. */
.hv-hero{overflow-x:clip}
.hv-ring text{font:600 10px var(--cs-body);letter-spacing:.18em;fill:currentColor}
@keyframes hv-spin{to{transform:rotate(360deg)}}
.hv-photo{padding:12%}
.hv-photo img,.hv-photo .cs-monogram{aspect-ratio:1/1}

/* Offers as recipe cards */
.hv-card{display:flex;flex-direction:column;padding:30px 30px 32px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:var(--cs-card);box-shadow:var(--cs-shadow)}
.hv-card header{padding-bottom:20px;border-bottom:2px dashed var(--cs-line)}
.hv-card h3{font-size:28px;margin:6px 0 8px}
.hv-meta{display:grid;grid-template-columns:1fr 1fr;margin:0;border-bottom:2px dashed var(--cs-line)}
.hv-meta div{padding:16px 0}
.hv-meta div+div{padding-left:20px;border-left:2px dashed var(--cs-line)}
.hv-meta dt{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cs-soft)}
.hv-meta dd{margin:4px 0 0;font:400 30px/1.15 var(--cs-head)}
.hv-meta div+div dd{font:600 17px/1.15 var(--cs-body);margin-top:10px}
.hv-label{margin:22px 0 12px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cs-accent-text)}
.hv-card .cs-includes{margin-bottom:28px;font-size:15.5px}
.hv-card .cs-button{margin-top:auto}

.harvest .cs-step{padding:26px 0 0;border:0;border-top:2px dashed var(--cs-line);border-radius:0;background:none}
.harvest .cs-step-num{background:var(--coach-accent);color:var(--design-button-ink);font:400 19px/1 var(--cs-head)}
.harvest .cs-story{position:relative;border:0;background:var(--cs-card);box-shadow:var(--cs-shadow);transform:rotate(-.7deg)}
.harvest .cs-story:nth-child(even){transform:rotate(.9deg)}
.harvest .cs-story::after{content:"";position:absolute;top:-12px;left:50%;width:100px;height:26px;background:color-mix(in srgb,var(--coach-accent) 24%,#fff6dc);opacity:.92;transform:translateX(-50%) rotate(-3deg)}
.harvest .cs-quals,.harvest .cs-form{border-style:dashed;border-width:1.5px}
.harvest .cs-faq-list summary{font:400 20px/1.35 var(--cs-head)}
.harvest .cs-footer{border-top:1.5px dashed var(--cs-line)}

@media (max-width:960px){.hv-hero-media{max-width:440px}}

/* Header: a cookbook-style masthead with the name centred and the menu underneath */
.harvest .hv-header{position:relative;background:var(--cs-bg);border-bottom:0}
.hv-header-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:96px}
.hv-brand{justify-self:center;font-size:clamp(26px,3vw,36px);text-align:center}
.hv-header .cs-header-actions{justify-self:end}
.hv-nav{justify-content:center;gap:clamp(18px,3vw,40px);padding:14px 20px;border-block:1.5px dashed var(--cs-line)}
.hv-nav a{color:var(--cs-ink);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}

/* Getting started as a single recipe "method" card */
.hv-method{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;padding:clamp(30px,5vw,60px);border:1.5px dashed var(--cs-line);border-radius:var(--cs-radius);background:var(--cs-card)}
.hv-steps{list-style:none;margin:0;padding:0}
.hv-steps li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;padding:22px 0;border-top:1.5px dashed var(--cs-line)}
.hv-steps li:first-child{border-top:0;padding-top:0}
.hv-num{font:400 48px/1 var(--cs-head);color:var(--cs-accent-text)}
.hv-steps h3{font-size:24px;margin-bottom:6px}
.hv-steps p{color:var(--cs-soft)}
@media (max-width:960px){
  .hv-header-top{grid-template-columns:1fr auto;min-height:72px}
  .hv-brand{justify-self:start;font-size:24px;text-align:left}
  .hv-method{grid-template-columns:minmax(0,1fr);gap:24px}
}
