
/* V1.9.1: Our Approach — isolated, text-free botanical background and muted reference photograph. */
.brand-promise{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#fdfcf6;
  padding:90px 0 105px;
}
.brand-promise::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:url('./approach-botanical-clean.svg') center center / cover no-repeat;
  pointer-events:none;
}
.brand-promise::after{content:none !important;display:none !important;}
.brand-promise .promise-grid{
  display:grid;
  grid-template-columns:minmax(0,47%) minmax(0,53%);
  gap:48px;
  align-items:center;
  min-height:640px;
  position:relative;
  z-index:1;
}
.brand-promise .promise-visual{
  height:605px;
  margin:0 15px 0 25px;
  position:relative;
  isolation:isolate;
}
.brand-promise .promise-visual::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0 10px 0 0;
  background:rgba(255,255,255,.79);
  border:1px solid #e5ebdd;
  border-radius:240px 240px 19px 19px;
}
.brand-promise .promise-visual::after{
  content:none !important;
  display:none !important;
}
.brand-promise .promise-photo{
  position:absolute;
  inset:60px 0 0 35px;
  border-radius:225px 225px 16px 16px;
  background:
   linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.06) 45%,rgba(23,53,36,.10) 100%),
   url('./approach-farm-reference.webp') center center / cover no-repeat;
  box-shadow:15px 18px 0 #dce6ca;
  opacity:.89;
}
.brand-promise .promise-round{
  right:-20px;
  top:52px;
  z-index:3;
  width:148px;
  height:148px;
  border:7px solid #fffef9;
  transform:rotate(7deg);
}
.brand-promise .photo-credit{z-index:3;left:67px;bottom:20px;text-shadow:0 1px 4px #1a3b3077;}
.brand-promise .promise-copy{position:relative;padding:25px 0 25px 25px;z-index:1;}
.brand-promise .promise-copy::before{content:none !important;display:none !important;}
.brand-promise .promise-copy h2{
  color:#1c4b35;
  font:700 clamp(40px,4.15vw,63px)/1.12 var(--serif);
  max-width:690px;
  letter-spacing:-.04em;
  margin-bottom:26px;
}
.brand-promise .promise-copy h2 em{color:#628d50;}
.brand-promise .promise-copy>p{
  font-size:14px;
  line-height:1.9;
  max-width:590px;
  color:#657866;
  margin-bottom:29px;
}
.brand-promise .promise-points{display:grid;gap:0;margin-bottom:26px;}
.brand-promise .promise-points>div{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid #dfe8d5;}
.brand-promise .promise-points strong{color:#23513a;}
.brand-promise .promise-points small{color:#708371;line-height:1.55;}
@media(max-width:1000px){
 .brand-promise{padding:75px 0 85px;}
 .brand-promise .promise-grid{grid-template-columns:1fr;gap:54px;min-height:0;}
 .brand-promise .promise-visual{width:min(590px,100%);height:535px;margin:0 auto;}
 .brand-promise .promise-copy{padding:5px 6px 0;}
 .brand-promise .promise-copy h2{max-width:660px;}
}
@media(max-width:560px){
 .brand-promise{padding:58px 0 68px;}
 .brand-promise::before{background-position:40% center;}
 .brand-promise .promise-grid{gap:38px;}
 .brand-promise .promise-visual{height:395px;width:100%;margin:0;}
 .brand-promise .promise-visual::before{border-radius:140px 140px 17px 17px;inset:0 8px 0 0;}
 .brand-promise .promise-photo{inset:42px 4px 0 18px;border-radius:130px 130px 14px 14px;box-shadow:10px 12px 0 #dce6ca;background-position:50% 48%;}
 .brand-promise .promise-round{width:112px;height:112px;right:0;top:20px;font-size:19px;}
 .brand-promise .promise-round span{font-size:9px;}
 .brand-promise .photo-credit{left:32px;bottom:15px;font-size:8px;}
 .brand-promise .promise-copy{padding:5px 0 0;}
 .brand-promise .promise-copy h2{font-size:clamp(36px,10vw,46px);line-height:1.14;}
 .brand-promise .promise-points>div{padding:15px 0;}
}
@media(prefers-reduced-motion:reduce){.brand-promise [data-reveal]{opacity:1;transform:none;}}
