 :root{--cream:#f6f0e5;--paper:#fffdf8;--green:#3f7435;--green-dark:#284f2a;--navy:#17253a;--orange:#ef6d4f;--yellow:#f0bd3f;--ink:#18232b;--muted:#66716f;--line:rgba(24,35,43,.14);--shadow:0 18px 45px rgba(23,37,58,.11);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Nunito Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}a{color:inherit}.site-header{width:min(1220px,calc(100% - 40px));margin:auto;padding:20px 0;display:flex;gap:24px;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;text-decoration:none;position:relative;min-width:150px}.brand-pea{font-family:"Caveat";color:var(--green-dark);font-weight:700;font-size:42px;line-height:.85}.pea-dot{color:var(--green);font-size:17px;margin-left:2px;transform:translateY(-8px)}.brand-small{position:absolute;left:7px;top:39px;font-size:9px;font-weight:900;letter-spacing:.16em;color:var(--green-dark)}.nav{display:flex;gap:24px}.nav a{text-decoration:none;color:var(--navy);font-size:14px;font-weight:800}.button{display:inline-block;border:0;border-radius:999px;padding:14px 21px;font:inherit;font-weight:900;cursor:pointer;text-decoration:none}.button-small{padding:10px 16px;background:var(--green);color:#fff;font-size:13px}.button-green{background:var(--green);color:#fff}.hero{background:radial-gradient(circle at 74% 35%,rgba(241,189,63,.14),transparent 24%),linear-gradient(#fffdf8,#f9f5ec);border-bottom:1px solid rgba(24,35,43,.08)}.hero-inner{width:min(1220px,calc(100% - 40px));min-height:690px;margin:auto;display:grid;grid-template-columns:.92fr 1.08fr;gap:58px;align-items:center;padding:55px 0 70px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.16em;font-weight:900;color:var(--green);margin:0 0 12px}.eyebrow.pale{color:#cce2bf}.hero h1{font-family:"Caveat";color:var(--green-dark);font-size:clamp(64px,7.6vw,112px);line-height:.82;letter-spacing:-.035em;margin:0}.hero-underline{width:105px;border-top:7px solid var(--yellow);border-radius:999px;transform:rotate(-4deg);margin:18px 0 25px 250px}.hero-story p{margin:4px 0;font-size:19px}.hero-question{font-size:25px;line-height:1.35;max-width:560px;font-weight:700;color:var(--navy);margin:22px 0}.proposition{font-size:19px;margin:24px 0 0}.proposition strong{font-size:21px;color:var(--navy)}.proposition strong span{color:var(--green)}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}.text-link{text-decoration:none;color:var(--green-dark);font-weight:900}.microcopy{color:var(--muted);font-size:13px;margin-top:10px}.hero-visual{position:relative;min-height:530px}.hero-photo{position:absolute;inset:20px 10px 0 20px;border-radius:46% 54% 12px 12px/16% 18% 6% 6%;background:linear-gradient(rgba(40,79,42,.08),rgba(40,79,42,.08)),linear-gradient(135deg,#ccb590,#efe0c7 42%,#a7bf9b);box-shadow:var(--shadow)}.photo-note{position:absolute;left:50%;bottom:45px;transform:translateX(-50%) rotate(-1deg);width:min(330px,78%);padding:21px;text-align:center;background:rgba(255,253,248,.9);box-shadow:0 12px 30px rgba(0,0,0,.08)}.photo-note span{font-size:10px;letter-spacing:.14em;font-weight:900;color:var(--orange)}.photo-note strong{display:block;margin-top:6px;font-size:21px;color:var(--navy);line-height:1.15}.speech-note{position:absolute;right:-5px;top:30px;width:180px;min-height:130px;display:grid;place-items:center;padding:24px;text-align:center;font-family:"Caveat";font-size:22px;line-height:1.05;color:var(--green-dark);background:var(--paper);border:2px solid var(--green);border-radius:48% 44% 52% 43%;transform:rotate(3deg)}.doodle-heart{position:absolute;color:var(--green);font-size:42px}.heart-one{right:5px;top:175px}.heart-two{right:55px;top:205px;font-size:28px}.feature-strip{background:var(--cream);display:grid;grid-template-columns:repeat(4,1fr)}.feature{text-align:center;padding:30px 25px;border-right:1px solid rgba(24,35,43,.1)}.feature:last-child{border-right:0}.feature-icon{color:var(--green);font-size:34px}.feature strong{display:block;color:var(--navy)}.feature p{font-size:13px;max-width:230px;margin:7px auto 0}.section{width:min(1120px,calc(100% - 40px));margin:auto;padding:95px 0}.idea-grid,.building-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}h2,h3{color:var(--navy);margin-top:0}h2{font-size:clamp(42px,5vw,66px);line-height:.98;letter-spacing:-.04em;margin-bottom:24px}h2 span{color:var(--green)}h3{font-size:25px}.lead{font-size:22px;color:var(--navy)}.idea p:not(.eyebrow):not(.handwritten):not(.small-note){font-size:18px}.founder-card{position:relative;background:var(--cream);padding:45px 42px 36px;transform:rotate(1.5deg);box-shadow:var(--shadow)}.founder-card .tape{position:absolute;width:110px;height:25px;background:rgba(221,190,119,.52);left:50%;top:-13px;transform:translateX(-50%) rotate(-3deg)}.handwritten{font-family:"Caveat";font-size:31px;line-height:1.1;color:var(--green-dark)}.small-note{font-size:13px;color:var(--muted)}.how{width:100%;max-width:none;background:var(--cream);padding-left:max(20px,calc((100vw - 1120px)/2));padding-right:max(20px,calc((100vw - 1120px)/2))}.section-heading{max-width:790px;margin:0 auto 48px;text-align:center}.section-heading>p:last-child{font-size:19px}.section-heading.left{text-align:left;margin-left:0}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.journey-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px}.journey-label{display:inline-block;background:var(--green);color:#fff;padding:6px 10px;font-size:11px;font-weight:900;letter-spacing:.1em;margin-bottom:20px}.journey-label.dark{background:var(--navy)}.step-row{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.step-row span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:800}.together-path{margin-top:28px;background:var(--green-dark);color:#fff;border-radius:999px;display:flex;justify-content:center;gap:18px;padding:20px 30px;flex-wrap:wrap;font-size:14px;font-weight:900}.mission-grid,.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.mission-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 25px rgba(23,37,58,.06)}.mission-card>*:not(.mission-image){margin-left:19px;margin-right:19px}.mission-image{height:235px;position:relative;margin-bottom:22px}.mission-badge{position:absolute;width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:900;font-size:21px;top:12px;left:12px;border:4px solid var(--paper)}.mash{background:radial-gradient(ellipse at 52% 51%,#6e4321 0 11%,transparent 12%),radial-gradient(ellipse at 50% 54%,#f0df9b 0 32%,transparent 33%),linear-gradient(145deg,#98734f,#d6bd92)}.pasta{background:repeating-linear-gradient(25deg,rgba(255,255,255,.07) 0 7px,transparent 7px 15px),linear-gradient(145deg,#d89c43,#f4cf7a 55%,#b46938)}.pizza{background:radial-gradient(circle at 23% 35%,#bd3d29 0 4%,transparent 5%),radial-gradient(circle at 64% 62%,#bd3d29 0 4%,transparent 5%),radial-gradient(circle at 50% 50%,#e9c069 0 39%,transparent 40%),linear-gradient(135deg,#946a3e,#d0ad7a)}.dish{margin-top:0;color:var(--muted)}.skill-lines{display:grid;gap:6px;font-size:14px;margin-bottom:14px}.mission-note{font-family:"Caveat";color:var(--green-dark);font-size:22px;margin-bottom:20px}.signup-panel{margin-top:42px;background:linear-gradient(135deg,#eff2e4,#e4ead7);border-radius:var(--radius);padding:38px;display:grid;grid-template-columns:1.1fr .9fr;gap:45px}.signup-panel h3{font-size:34px}.signup-panel li{margin:7px 0}#signup-form{background:rgba(255,255,255,.63);padding:24px;border-radius:18px;display:grid;gap:10px}#signup-form label{font-weight:800;font-size:13px}#signup-form input{border:1px solid rgba(23,37,58,.18);background:#fff;border-radius:10px;padding:14px;font:inherit}.form-message{color:var(--green-dark);font-weight:700;font-size:13px}.still-section{background:var(--navy);color:#fff}.still-inner{width:min(860px,calc(100% - 40px));margin:auto;padding:85px 0;text-align:center}.still-inner h2{color:#e3efd8;font-family:"Caveat";font-size:clamp(72px,9vw,120px)}.still-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;text-align:left;max-width:720px;margin:0 auto 30px}.still-list span:before{content:"✓";margin-right:9px;color:#bcd7a7;font-weight:900}.handwritten.light{color:#e3efd8}.research-grid article{padding:30px;border-top:3px solid var(--green);background:#fbf8f1}.research-grid span{font-size:11px;font-weight:900;color:var(--orange);letter-spacing:.12em}.research-rule{margin-top:30px;background:var(--cream);padding:19px 22px;border-left:5px solid var(--yellow)}.building{background:var(--green-dark);color:#fff}.building-inner{width:min(1120px,calc(100% - 40px));margin:auto;padding:95px 0;grid-template-columns:1fr .85fr}.building h2{color:#fff}.building-copy p:not(.eyebrow){font-size:18px}.light-link{color:#fff;font-weight:900}.note-stack{position:relative;min-height:350px}.sticky{position:absolute;width:230px;min-height:125px;padding:23px;box-shadow:0 15px 30px rgba(0,0,0,.18);color:var(--ink)}.sticky strong{display:block;font-size:11px;letter-spacing:.13em}.sticky span{display:block;font-family:"Caveat";font-size:25px;line-height:1.08;margin-top:10px}.sticky.one{background:#d8e7cc;left:10px;top:0;transform:rotate(-4deg)}.sticky.two{background:#f2e4c6;right:10px;top:90px;transform:rotate(4deg)}.sticky.three{background:#f0b39e;left:70px;bottom:0;transform:rotate(-2deg)}.closing{text-align:center;padding-top:110px;padding-bottom:115px}.site-footer{background:#1f3f26;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:32px max(20px,calc((100vw - 1120px)/2))}.footer-brand .brand-pea,.footer-brand .brand-small{color:#fff}.footer-small{font-size:13px;opacity:.7}@media(max-width:980px){.nav{display:none}.hero-inner{grid-template-columns:1fr}.idea-grid,.journey-grid,.signup-panel,.building-inner{grid-template-columns:1fr}.feature-strip{grid-template-columns:1fr 1fr}.mission-grid,.research-grid{grid-template-columns:1fr}.mission-card{max-width:680px;margin:auto;width:100%}}@media(max-width:600px){.site-header{width:calc(100% - 28px)}.site-header .button-small{display:none}.hero-inner,.section,.building-inner,.still-inner{width:calc(100% - 32px)}.hero h1{font-size:65px}.hero-underline{margin-left:155px;width:80px}.hero-question{font-size:21px}.hero-visual{min-height:390px}.feature-strip{grid-template-columns:1fr}.feature{border-bottom:1px solid rgba(24,35,43,.1)}.section{padding:70px 0}h2{font-size:43px}.still-list{grid-template-columns:1fr}.signup-panel{padding:26px 20px}.note-stack{min-height:390px}.sticky{width:195px}.sticky.three{left:25px}.site-footer{flex-direction:column;align-items:flex-start}}

/* v0.5 — approved contemporary hero */
.hero{
  background:#fbf8f1;
}
.hero-inner{
  min-height:620px;
  grid-template-columns:.9fr 1.1fr;
  gap:42px;
  padding:35px 0 48px;
}
.hero h1{
  font-family:"Nunito Sans",sans-serif;
  color:var(--green-dark);
  font-size:clamp(58px,5.7vw,88px);
  line-height:.96;
  letter-spacing:-.06em;
  font-weight:900;
  margin:0 0 26px;
}
.dad-reply{
  display:inline-block;
  font-size:28px;
  line-height:1.3;
  font-weight:700;
  font-style:italic;
  color:var(--navy);
  border-bottom:3px solid var(--orange);
  padding-bottom:4px;
  margin:0 0 28px;
}
.guilt-copy{
  max-width:500px;
  font-size:16px;
  line-height:1.65;
  margin:0 0 22px;
}
.guilt-line{
  color:var(--green-dark);
  font-size:27px;
  line-height:1.1;
  margin:0 0 24px;
}
.approved-art{
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.approved-art img{
  display:block;
  width:100%;
  max-width:740px;
  height:auto;
  mix-blend-mode:multiply;
}
.hero-actions{
  margin-top:0;
}
.text-link{
  color:var(--navy);
  border-bottom:2px solid var(--yellow);
  padding-bottom:3px;
}
.feature{
  text-align:left;
  display:grid;
  grid-template-columns:48px 1fr;
  column-gap:16px;
  align-content:center;
}
.feature-icon{
  grid-row:1/3;
  line-height:1;
}
.feature strong,.feature p{
  margin-left:0;
}
.feature p{
  margin-top:5px;
}
.how{
  background:#eef3e8;
  margin-top:50px;
  width:min(1220px,calc(100% - 40px));
  border-radius:18px;
  padding:55px 55px;
}
.how .section-heading{
  margin-bottom:34px;
}
.how .journey-card{
  box-shadow:none;
}
@media(max-width:980px){
  .hero-inner{grid-template-columns:1fr}
  .approved-art{order:2}
  .how{width:calc(100% - 40px)}
}
@media(max-width:600px){
  .hero h1{font-size:54px}
  .dad-reply{font-size:23px}
  .guilt-line{font-size:24px}
  .approved-art img{width:112%;max-width:none}
  .feature{grid-template-columns:42px 1fr}
  .how{width:calc(100% - 24px);padding:42px 22px}
}


/* v0.6 — two-image photorealistic story hero */
.hero-inner{
  grid-template-columns:.82fr 1.18fr;
  gap:54px;
  align-items:center;
}

.story-panels{
  display:grid;
  gap:10px;
  align-self:center;
}

.story-panel{
  margin:0;
  overflow:hidden;
  border-radius:20px;
  background:#e6dece;
  box-shadow:0 8px 28px rgba(20,36,58,.06);
}

.story-panel img{
  display:block;
  width:100%;
  height:auto;
}

.two-lessons{
  width:min(1320px,calc(100% - 64px));
  margin:0 auto;
  padding:26px 0 18px;
  text-align:center;
}

.two-lessons h2{
  margin:0;
  color:var(--navy);
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.03em;
}

.two-lessons h2 span{
  color:var(--green-dark);
}

.two-lessons p{
  margin:7px 0 0;
  font-size:16px;
}

.feature-strip{
  border-top:0;
}

@media(max-width:980px){
  .hero-inner{
    grid-template-columns:1fr;
  }
  .story-panels{
    margin-top:15px;
  }
}

@media(max-width:600px){
  .story-panel{
    border-radius:14px;
  }

  .two-lessons{
    width:calc(100% - 30px);
    padding-top:18px;
  }

  .two-lessons h2{
    font-size:24px;
  }
}


/* v0.7 — compact editorial hero */
.editorial-hero{
  width:min(1320px,calc(100% - 64px));
  margin:0 auto;
  min-height:0;
  padding:24px 0 0;
  border-bottom:0;
}
.editorial-hero .hero-inner{
  width:100%;
  min-height:0;
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:54px;
  align-items:center;
  padding:18px 0 22px;
}
.hero-kicker{
  margin:0 0 14px;
  color:var(--green-dark);
  font-size:10px;
  font-weight:900;
  letter-spacing:.19em;
}
.editorial-hero h1{
  font-size:clamp(48px,4.4vw,68px);
  line-height:.96;
  margin-bottom:18px;
}
.editorial-hero .dad-reply{
  font-size:23px;
  margin-bottom:18px;
}
.editorial-hero .guilt-copy{
  max-width:470px;
  font-size:14px;
  line-height:1.55;
  margin-bottom:15px;
}
.editorial-hero .guilt-line{
  font-size:20px;
  margin-bottom:17px;
}
.editorial-hero .button{
  padding:12px 17px;
  font-size:14px;
}
.editorial-hero .text-link{
  font-size:13px;
}
.photo-story{
  display:grid;
  grid-template-columns:1.03fr .97fr;
  gap:12px;
  align-items:end;
}
.photo-frame{
  position:relative;
  margin:0;
  overflow:hidden;
  border-radius:15px;
  background:#e6dece;
  box-shadow:0 8px 24px rgba(20,36,58,.06);
}
.photo-one{transform:translateY(-12px)}
.photo-frame img{
  display:block;
  width:100%;
  height:300px;
  object-fit:cover;
}
.photo-one img{object-position:55% center}
.photo-two img{object-position:center}
.photo-frame figcaption{
  position:absolute;
  left:12px;
  bottom:10px;
  max-width:calc(100% - 24px);
  padding:7px 10px;
  border-radius:7px;
  background:rgba(251,248,241,.93);
  color:var(--navy);
  font-size:10px;
  font-weight:700;
}
.photo-frame figcaption span{
  display:inline-grid;
  place-items:center;
  width:18px;height:18px;
  margin-right:5px;
  border-radius:50%;
  background:var(--green-dark);
  color:#fff;
}
.hero-proposition{
  display:grid;
  grid-template-columns:1.05fr 1fr 1fr;
  gap:26px;
  align-items:center;
  margin-top:8px;
  padding:20px 26px;
  background:#f0f3e9;
  border-radius:15px 15px 0 0;
}
.prop-title strong{
  display:block;
  color:var(--navy);
  font-size:20px;
  letter-spacing:-.025em;
}
.prop-title strong em{
  color:var(--green-dark);
  font-style:normal;
}
.prop-title>span{
  display:block;
  margin-top:3px;
  font-size:12px;
}
.mini-route{
  display:grid;
  grid-template-columns:auto auto auto auto auto auto;
  align-items:center;
  gap:7px;
  font-size:10px;
  white-space:nowrap;
}
.mini-route b{
  display:grid;
  place-items:center;
  width:38px;height:38px;
  border-radius:50%;
  background:var(--navy);
  color:#fff;
  font-size:9px;
}
.child-mini b{background:var(--green-dark)}
.mini-route i{
  color:var(--orange);
  font-style:normal;
  font-weight:900;
}
.mini-route strong{
  color:var(--green-dark);
}
.feature-strip{
  width:min(1320px,calc(100% - 64px));
  padding-top:4px;
}
.how{
  margin-top:28px;
}
@media(max-width:1050px){
  .editorial-hero .hero-inner{grid-template-columns:1fr}
  .photo-story{max-width:760px}
  .hero-proposition{grid-template-columns:1fr}
  .mini-route{justify-content:start}
}
@media(max-width:650px){
  .editorial-hero{width:calc(100% - 30px)}
  .editorial-hero .hero-inner{gap:24px}
  .photo-story{grid-template-columns:1fr 1fr;gap:8px}
  .photo-frame img{height:210px}
  .photo-one{transform:none}
  .photo-frame figcaption{display:none}
  .hero-proposition{padding:18px}
  .mini-route{
    grid-template-columns:auto 1fr auto 1fr;
    white-space:normal;
  }
  .mini-route strong{grid-column:2/-1}
}


/* v0.8 — crop + spacing refinement */
.photo-frame img{
  height:270px;
  object-fit:cover;
}
.photo-one img{
  object-position:center center;
}
.photo-two img{
  object-position:center center;
}
.photo-frame figcaption{display:none!important}

.photo-story{
  gap:14px;
}
.photo-one{
  transform:translateY(-8px);
}
.editorial-hero .hero-inner{
  padding-bottom:28px;
}
.hero-proposition{
  margin-top:0;
}
@media(max-width:650px){
  .photo-frame img{height:195px}
  .photo-one{transform:none}
}
