/* The First Path — campaign page additions built on Esker Coffee website v8. */

.first-path-page{background:var(--paper)}
.first-path-page .site-header{top:0}
.first-path-page .first-path-hero .hero-copy>*{max-width:760px}
.first-path-page .first-path-hero .hero-lead{max-width:625px!important}

.first-path-lifestyle{background:var(--paper-soft)}
.first-path-image-grid{grid-template-columns:1.16fr .84fr;grid-template-rows:330px 330px}
.first-path-image-grid .lifestyle-card-tall{grid-row:1/3}
.first-path-image-grid .lifestyle-card-wide{grid-column:2;grid-row:1}
.first-path-image-grid .lifestyle-card:last-child{grid-column:2;grid-row:2}

.rewards-section{overflow:hidden;background:var(--paper)}
.reward-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.reward-card{position:relative;min-height:390px;padding:29px 27px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;background:rgba(251,248,241,.45)}
.reward-card>span{font:400 clamp(2.7rem,4vw,4.6rem)/1 Georgia,"Times New Roman",serif;color:var(--copper);letter-spacing:-.06em}
.reward-card small{display:block;margin-bottom:12px;color:var(--muted);font-size:.68rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.reward-card strong{display:block;font-size:clamp(1.28rem,1.8vw,1.7rem);line-height:1.1;letter-spacing:-.03em}
.reward-card p{margin:14px 0 0;color:var(--muted);font-size:.92rem;line-height:1.65}
.reward-card-featured{background:var(--green);color:#fff}
.reward-card-featured>span{color:var(--sand)}
.reward-card-featured small,.reward-card-featured p{color:rgba(255,255,255,.68)}
.reward-note{position:relative;z-index:1;max-width:800px;margin:25px 0 0;color:var(--muted);font-size:.78rem;line-height:1.6}

.first-path-story .story-image img{object-position:center}

.first-path-signup{background:var(--sand)}
.first-path-signup .newsletter-grid{align-items:center}
.signup-intro{max-width:590px;margin:23px 0 0;color:rgba(20,32,25,.74);font-size:1.02rem;line-height:1.72}
.signup-promises{display:flex;flex-wrap:wrap;gap:9px 22px;margin-top:28px;color:rgba(20,32,25,.72);font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.signup-promises span{position:relative}
.signup-promises span:not(:last-child)::after{content:"";position:absolute;right:-13px;top:50%;width:4px;height:4px;border-radius:50%;background:var(--green);transform:translateY(-50%)}
.mailerlite-shell{position:relative;padding:clamp(23px,3vw,34px);border:1px solid rgba(20,32,25,.3);background:rgba(251,248,241,.62);box-shadow:0 22px 65px rgba(20,32,25,.1)}
.mailerlite-shell .ml-embedded:empty{min-height:190px;display:grid;place-items:center;border:1px dashed rgba(20,32,25,.24);color:var(--muted);font-size:.84rem}
.mailerlite-shell .ml-embedded:empty::before{content:"Loading the First Path signup form…"}
.mailerlite-note{margin:14px 0 0;color:rgba(20,32,25,.64);font-size:.76rem;line-height:1.55;text-align:center}

/* Bring MailerLite's generated form closer to the v8 visual system without relying on its exact template. */
.mailerlite-shell .ml-form-embedWrapper,
.mailerlite-shell .ml-form-embedBody,
.mailerlite-shell .ml-form-embedContent,
.mailerlite-shell .ml-form-formContent,
.mailerlite-shell form{max-width:none!important;width:100%!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
.mailerlite-shell .ml-form-embedWrapper{margin:0!important}
.mailerlite-shell .ml-form-embedBody{padding:0!important}
.mailerlite-shell h4{font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif!important;font-size:clamp(1.65rem,2.6vw,2.45rem)!important;line-height:1.02!important;letter-spacing:-.04em!important;color:var(--ink)!important;margin:0 0 14px!important}
.mailerlite-shell p{color:var(--muted)!important;line-height:1.62!important}
.mailerlite-shell input[type="email"],
.mailerlite-shell input[type="text"]{height:58px!important;border:1px solid var(--green)!important;border-radius:0!important;background:rgba(255,255,255,.55)!important;padding:0 17px!important;color:var(--ink)!important;font:inherit!important}
.mailerlite-shell button,
.mailerlite-shell .primary{min-height:58px!important;border:1px solid var(--green)!important;border-radius:0!important;background:var(--green)!important;color:var(--paper-soft)!important;font:800 .92rem/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;transition:transform .18s ease,background .18s ease!important}
.mailerlite-shell button:hover,
.mailerlite-shell .primary:hover{transform:translateY(-2px)!important;background:var(--green-mid)!important}

@media (max-width:1080px){
  .reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reward-card{min-height:330px}
}

@media (max-width:900px){
  .first-path-page{padding-bottom:0}
  .first-path-image-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 310px}
  .first-path-image-grid .lifestyle-card-tall{grid-column:1/3;grid-row:auto}
  .first-path-image-grid .lifestyle-card-wide,
  .first-path-image-grid .lifestyle-card:last-child{grid-column:auto;grid-row:auto}
}

@media (max-width:680px){
  .first-path-hero .hero-actions{grid-template-columns:1fr}
  .first-path-hero .button{width:100%}
  .first-path-image-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none}
  .first-path-image-grid .lifestyle-card,
  .first-path-image-grid .lifestyle-card-tall,
  .first-path-image-grid .lifestyle-card-wide,
  .first-path-image-grid .lifestyle-card:last-child{grid-column:auto;grid-row:auto;min-height:300px}
  .reward-grid{grid-template-columns:1fr}
  .reward-card{min-height:275px}
  .signup-promises{display:grid;gap:7px}
  .signup-promises span::after{display:none}
  .mailerlite-shell{padding:20px 16px}
}

/* Standalone founding-campaign shell: deliberately no links into the unfinished shop. */
.campaign-header-grid{min-height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px}
.campaign-kicker{justify-self:start;color:var(--green);font-size:.69rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.campaign-header-cta{justify-self:end;display:inline-flex;align-items:center;gap:16px;padding-bottom:6px;border-bottom:1px solid rgba(20,32,25,.4);font-size:.78rem;font-weight:820;letter-spacing:.04em}
.campaign-header-cta:hover{border-color:var(--green)}
.campaign-header .brand-lockup{pointer-events:none}

.campaign-footer-grid{display:grid;grid-template-columns:1.1fr minmax(310px,.8fr) .22fr;gap:clamp(42px,8vw,110px);align-items:start;padding-bottom:70px}
.campaign-footer-note{max-width:540px}
.campaign-footer-note .eyebrow{color:var(--sand)}
.campaign-footer-note h2{max-width:520px;margin:0 0 18px;color:#fff;font-size:clamp(2rem,3.8vw,3.8rem);line-height:1.02;letter-spacing:-.045em}
.campaign-footer-note p:not(.eyebrow){max-width:500px;color:rgba(255,255,255,.68);line-height:1.72}
.campaign-footer-note a{display:inline-block;margin-top:10px;color:#fff;border-bottom:1px solid rgba(255,255,255,.42);padding-bottom:5px;font-weight:760}
.campaign-footer-bottom span:last-child{max-width:650px;text-align:right;line-height:1.55}

@media (max-width:900px){
  .first-path-page{padding-bottom:0}
  .campaign-header-grid{grid-template-columns:1fr auto 1fr;gap:12px}
  .campaign-kicker{font-size:.61rem;letter-spacing:.12em}
  .campaign-header-cta{font-size:.7rem;gap:8px}
  .campaign-footer-grid{grid-template-columns:1fr 1fr}
  .campaign-footer-grid .footer-signoff{display:none}
}

@media (max-width:620px){
  .campaign-header-grid{grid-template-columns:1fr auto}
  .campaign-kicker{display:none}
  .campaign-header .brand-lockup{justify-self:start}
  .campaign-header-cta{justify-self:end;white-space:nowrap}
  .campaign-footer-grid{grid-template-columns:1fr}
  .campaign-footer-note{padding-top:10px;border-top:1px solid rgba(255,255,255,.14)}
  .campaign-footer-bottom{display:grid;grid-template-columns:1fr;gap:12px}
  .campaign-footer-bottom span:last-child{text-align:left}
}
