:root{--jcrp-green:#0b5d3b;--jcrp-lime:#b9d94e;--jcrp-cream:#f5f2e8;--jcrp-ink:#17372b}
.jcrp-overlay,.jcrp-overlay *{box-sizing:border-box}
.jcrp-overlay{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:rgba(7,31,22,.74);backdrop-filter:blur(4px);font-family:Arial,sans-serif;color:var(--jcrp-ink)}
.jcrp-overlay[hidden]{display:none!important}
.jcrp-modal{position:relative;width:min(980px,100%);max-height:min(88vh,780px);display:grid;grid-template-columns:minmax(270px,36%) 1fr;overflow:hidden;background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.38)}
.jcrp-photo{position:relative;min-height:520px;background:var(--jcrp-green);overflow:hidden}
.jcrp-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.jcrp-photo:after{content:"21 YEARS";position:absolute;left:18px;bottom:18px;padding:10px 14px;background:var(--jcrp-lime);color:var(--jcrp-ink);font-weight:800;letter-spacing:.12em;border-radius:999px}
.jcrp-copy{overflow:auto;padding:42px 46px 36px;background:linear-gradient(180deg,var(--jcrp-cream),#fff 45%)}
.jcrp-eyebrow{margin:0 0 10px!important;color:var(--jcrp-green);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:12px!important}
.jcrp-copy h2{margin:0 42px 22px 0!important;color:var(--jcrp-green)!important;font:800 clamp(28px,4vw,48px)/1.02 Georgia,serif!important;text-transform:none!important;letter-spacing:normal!important}
.jcrp-rule{width:74px;height:5px;margin-bottom:24px;background:var(--jcrp-lime);border-radius:4px}
.jcrp-copy p{font-size:15.5px!important;line-height:1.58!important;margin:0 0 16px!important;color:var(--jcrp-ink)!important}
.jcrp-copy .jcrp-event{padding:16px 18px;border-left:5px solid var(--jcrp-lime);background:#edf4e8;font-weight:700}
.jcrp-copy .jcrp-signature{margin-top:22px!important;font:italic 700 24px Georgia,serif!important;color:var(--jcrp-green)!important}
.jcrp-close{position:absolute;z-index:2;right:16px;top:14px;width:40px;height:40px;padding:0!important;border:0!important;border-radius:50%!important;background:#fff!important;color:var(--jcrp-green)!important;font:400 27px/1 Arial,sans-serif!important;cursor:pointer;box-shadow:0 3px 14px rgba(0,0,0,.18)}
.jcrp-close:focus-visible{outline:3px solid var(--jcrp-lime);outline-offset:3px}
body.jcrp-open{overflow:hidden}
@media(max-width:680px){.jcrp-overlay{padding:10px}.jcrp-modal{grid-template-columns:1fr;grid-template-rows:190px 1fr;max-height:94vh;border-radius:16px}.jcrp-photo{min-height:0}.jcrp-photo img{object-position:center 25%}.jcrp-photo:after{left:12px;bottom:12px;font-size:11px}.jcrp-copy{padding:26px 22px 28px}.jcrp-copy h2{margin-right:30px!important;font-size:30px!important}.jcrp-copy p{font-size:14.5px!important}.jcrp-close{right:10px;top:10px}}
@media(prefers-reduced-motion:no-preference){.jcrp-modal{animation:jcrp-pop .32s ease-out}@keyframes jcrp-pop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}}

/* v1.2: resist theme image rules and balance the portrait at every size. */
.jcrp-modal .jcrp-photo{min-height:0!important;background:#fff!important}
.jcrp-modal .jcrp-photo img{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  width:calc(100% - 36px)!important;
  height:calc(100% - 36px)!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  object-fit:contain!important;
  object-position:center center!important;
}
@media(max-width:680px){
  .jcrp-modal{grid-template-rows:150px minmax(0,1fr)!important}
  .jcrp-modal .jcrp-photo img{width:100%!important;height:100%!important;object-fit:contain!important}
  .jcrp-photo:after{display:none!important}
  .jcrp-copy{padding:22px 20px 26px!important}
  .jcrp-eyebrow{font-size:10px!important;letter-spacing:.13em!important;margin-bottom:8px!important}
  .jcrp-copy h2{font-size:25px!important;line-height:1.06!important;margin:0 34px 16px 0!important}
  .jcrp-rule{height:4px!important;margin-bottom:18px!important}
  .jcrp-copy p{font-size:14px!important;line-height:1.5!important}
  .jcrp-close{width:36px!important;height:36px!important;font-size:24px!important}
}

/* v1.3: compact, contemporary card with the full message visible on desktop. */
.jcrp-overlay{background:rgba(5,30,22,.78)!important}
.jcrp-modal{
  width:min(1120px,calc(100% - 28px))!important;
  max-height:92vh!important;
  grid-template-columns:minmax(300px,35%) minmax(0,65%)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  border-radius:28px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.38),0 1px 0 rgba(255,255,255,.75) inset!important;
}
.jcrp-modal .jcrp-photo{background:linear-gradient(160deg,#edf4e8 0%,#fff 42%,#f3f6f0 100%)!important}
.jcrp-modal .jcrp-photo:before{content:"";position:absolute;z-index:1;left:0;top:0;bottom:0;width:7px;background:linear-gradient(180deg,var(--jcrp-lime),var(--jcrp-green))}
.jcrp-modal .jcrp-photo:after{
  content:"21 YEARS OF IMPACT"!important;
  left:50%!important;bottom:24px!important;transform:translateX(-50%)!important;
  white-space:nowrap!important;padding:9px 14px!important;font-size:11px!important;
  box-shadow:0 8px 24px rgba(11,93,59,.18)!important;
}
.jcrp-copy{padding:34px 42px 26px!important;background:linear-gradient(145deg,#faf8f1 0%,#fff 58%)!important;scrollbar-width:thin;scrollbar-color:#b8cf77 transparent}
.jcrp-eyebrow{
  display:inline-flex!important;align-items:center!important;width:auto!important;
  padding:7px 11px!important;margin:0 0 14px!important;border-radius:999px!important;
  background:#edf5d8!important;color:var(--jcrp-green)!important;
  font-size:10.5px!important;line-height:1!important;letter-spacing:.15em!important;
}
.jcrp-copy h2{
  max-width:620px!important;margin:0 48px 16px 0!important;
  font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(34px,3vw,44px)!important;line-height:1.02!important;
  letter-spacing:-.035em!important;font-weight:780!important;
}
.jcrp-rule{width:58px!important;height:4px!important;margin-bottom:20px!important;background:linear-gradient(90deg,var(--jcrp-lime),#78b943)!important}
.jcrp-copy p{font-size:14.25px!important;line-height:1.48!important;margin-bottom:12px!important}
.jcrp-copy .jcrp-event{margin-top:16px!important;padding:12px 15px!important;border:1px solid #dce9b7!important;border-left:4px solid var(--jcrp-lime)!important;border-radius:10px!important;background:linear-gradient(135deg,#f0f7dc,#f8fbef)!important}
.jcrp-copy .jcrp-signature{margin:12px 0 0!important;font:700 19px/1.1 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:-.02em!important}
.jcrp-close{top:16px!important;right:16px!important;border:1px solid #e4eadf!important;box-shadow:0 10px 30px rgba(13,53,39,.16)!important;transition:transform .18s ease,background .18s ease!important}
.jcrp-close:hover{transform:rotate(4deg) scale(1.06);background:#f3f8e8!important}
@media(max-width:680px){
  .jcrp-modal{width:100%!important;grid-template-columns:1fr!important;grid-template-rows:145px minmax(0,1fr)!important;border-radius:20px!important}
  .jcrp-modal .jcrp-photo:before{width:100%;height:5px;right:0;bottom:auto}
  .jcrp-modal .jcrp-photo:after{display:none!important}
  .jcrp-copy{padding:20px 20px 25px!important}
  .jcrp-eyebrow{font-size:9.5px!important;margin-bottom:11px!important}
  .jcrp-copy h2{font-size:25px!important;line-height:1.04!important;margin:0 38px 13px 0!important}
  .jcrp-rule{margin-bottom:16px!important}
  .jcrp-copy p{font-size:13.75px!important;line-height:1.48!important}
}
