/* Willow — About v2 */
body.willow-tpl-about,.wv-about{ --secpy:100px; --serif:'Richmond Text',Georgia,serif; --page:#F2EEEB; --dk:#282018; --willow-white:#F2EEEB; --oncream-1:rgba(242,238,235,.7); }



  @media (max-width:1200px){
    nav{padding:20px 5vw !important;}
    /* No bottom padding — the banner image sits flush to the bottom of the hero
       (full-bleed), meeting the next section with no cream gap. */
    [data-hero-ed]{padding:120px 5vw 0 !important;}
    /* Match the Sell/Manage hero: a tall full-bleed image (64vh) that sits flush
       to the bottom of the hero, rather than a short wide banner. */
    [data-hero-img]{margin:44px calc(50% - 50vw) 0 !important;height:64vh !important;min-height:400px !important;aspect-ratio:auto !important;width:100vw !important;}
    [data-hero-img] image-slot{position:absolute;inset:0;width:100% !important;height:100% !important;}
    [data-hero-top] h1{font-size:64px !important;}
    /* Stacked column on mobile — align the intro + CTA to the left, not right. */
    [data-hero-right]{align-items:flex-start !important;}
    [data-hero-right] p{text-align:left !important;}
    [data-hero-cta]{justify-content:flex-start !important;}

    [data-screen-label="Footer"]{padding:56px 5vw 32px !important;}
    [data-screen-label="Footer"] > div:first-child > div{margin-top:0 !important;}
  }

  @media (max-width:640px){
    nav{padding:16px 22px !important;}
    nav img{height:30px !important;}
    [data-hero-top]{flex-direction:column !important;align-items:flex-start !important;gap:20px !important;}
    [data-hero-top] h1{font-size:44px !important;text-align:left !important;order:-1;}
    [data-hero-right] p{max-width:none !important;}

    [data-screen-label="Footer"]{padding:48px 22px 28px !important;}
    [data-screen-label="Footer"] > div:first-child{grid-template-columns:1fr !important;gap:32px !important;}
    [data-screen-label="Footer"] > div:last-child{flex-direction:column !important;gap:16px !important;align-items:flex-start !important;}
    [data-screen-label="Footer"] > div:last-child > div{gap:28px !important;}
  }

  /* Our Story — stack the eyebrow/heading over the paragraphs on tablet/phone
     (it was staying a cramped 2-column grid) and cut the oversized padding. */
  @media (max-width:900px){
    [data-screen-label="Story"]{padding:70px 5vw !important;}
    [data-screen-label="Story"] > div{grid-template-columns:1fr !important;gap:28px !important;}
    [data-screen-label="Story"] h2{font-size:46px !important;max-width:none !important;}
  }
  @media (max-width:640px){
    [data-screen-label="Story"]{padding:52px 22px !important;}
    [data-screen-label="Story"] h2{font-size:38px !important;}
  }

  /* Values — pinned scroll stage */
  [data-value-slide]{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);pointer-events:none;}
  [data-value-slide].is-active{opacity:1;transform:none;}
  [data-vhint-line]{animation:vhintPulse 2s ease-in-out infinite;}
  @keyframes vhintPulse{0%,100%{opacity:.28;}50%{opacity:.85;}}
  @media (max-width:640px){
    [data-values-intro] h2{font-size:30px !important;}
    /* "Transparency" is one long unbreakable word — clamp it to the viewport
       and let it wrap so it can't be clipped on narrow phones. */
    [data-value-slide] h3{font-size:clamp(40px,13vw,60px) !important;overflow-wrap:anywhere;}
    [data-value-slide] p{font-size:17px !important;}
    [data-value-rail]{right:18px !important;}
  }

  @media (max-width:900px){
    [data-team]{padding:72px 28px !important;}
    [data-team] p{font-size:21px !important;margin-bottom:48px !important;}
    [data-team-grid]{grid-template-columns:1fr 1fr !important;gap:24px !important;max-width:none !important;}
  }
  @media (max-width:560px){
    [data-team-grid]{grid-template-columns:1fr !important;gap:36px !important;}
    [data-cta]{padding:100px 28px !important;}
  }

  /* Team headshot: name/position reveal on hover */
  [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);}
  [data-reveal].is-in{opacity:1;transform:none;}
  [data-team-meta]{opacity:0;transform:translateY(8px);transition:opacity .28s ease,transform .28s ease;}
  [data-team-card]:hover [data-team-meta]{opacity:1;transform:translateY(0);}
  @media (hover:none){ [data-team-meta]{opacity:1;transform:none;} }

/* Team intro statement → Light + 1.1px (beats the site-wide p=Regular rule). */
body.willow-tpl-about [data-team] p{font-weight:300 !important;letter-spacing:1.1px !important;}

/* ===== Values v3 — four dark cards on white ===== */
body.willow-tpl-about [data-vcard] h3{ text-wrap:balance; }
/* iPad ≤1200px */
@media (max-width:1200px){
  body.willow-tpl-about [data-values]{ padding:170px 5vw 230px !important; }
  body.willow-tpl-about [data-vhead]{ font-size:40px !important; }
  body.willow-tpl-about [data-vgrid]{ gap:1.6vw !important; margin-top:130px !important; }
  body.willow-tpl-about [data-vcard]{ padding:22px 20px 10px !important; min-height:320px !important; }
  body.willow-tpl-about [data-vcard] h3{ font-size:15px !important; }
  body.willow-tpl-about [data-vcard] p{ font-size:13px !important; }
}
/* Mobile ≤640px — single column, no stagger */
@media (max-width:640px){
  body.willow-tpl-about [data-values]{ padding:120px 22px 160px !important; }
  body.willow-tpl-about [data-vhead]{ font-size:32px !important; }
  body.willow-tpl-about [data-vhead] span{ margin-left:0 !important; }
  body.willow-tpl-about [data-vgrid]{ grid-template-columns:1fr !important; gap:20px !important; margin-top:88px !important; }
  body.willow-tpl-about [data-vcard]{ margin-top:0 !important; min-height:280px !important; }
}

/* Alternating card reveal (gated on wv-vc-anim so cards show if JS is off) */
[data-values].wv-vc-anim [data-vcard]{ opacity:0; transition:opacity .8s cubic-bezier(.22,.61,.36,1), transform .8s cubic-bezier(.22,.61,.36,1); }
[data-values].wv-vc-anim [data-vcard]:nth-child(odd){ transform:translateY(70px); }
[data-values].wv-vc-anim [data-vcard]:nth-child(even){ transform:translateY(-70px); }
[data-values].wv-vc-anim [data-vcard].is-in{ opacity:1; transform:translateY(0); }
[data-values].wv-vc-anim [data-vcard]:nth-child(2).is-in{ transition-delay:.1s; }
[data-values].wv-vc-anim [data-vcard]:nth-child(3).is-in{ transition-delay:.2s; }
[data-values].wv-vc-anim [data-vcard]:nth-child(4).is-in{ transition-delay:.3s; }
@media (prefers-reduced-motion:reduce){ [data-values] [data-vcard]{ opacity:1 !important; transform:none !important; } }

/* ===== Full-bleed image between Values and Team ===== */
@media (max-width:1200px){ body.willow-tpl-about [data-about-fullbleed]{ height:74vh !important; min-height:520px !important; } }
@media (max-width:640px){ body.willow-tpl-about [data-about-fullbleed]{ height:70vh !important; min-height:480px !important; } }
