.lb-zoom{cursor:zoom-in}
.lb-zoom:focus{outline:none}
.lb-zoom:focus-visible{outline:3px solid var(--moss,#4F7340);outline-offset:3px}
html.lb-lock,html.lb-lock body{overflow:hidden}
.lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:3.5rem 1rem 1rem;background:rgba(20,17,14,.88)}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:min(1600px,100%);max-height:100%;display:flex;flex-direction:column;align-items:center;gap:.6rem}
.lb img{display:block;max-width:100%;max-height:calc(100vh - 8rem);max-height:calc(100dvh - 8rem);width:auto;height:auto;border-radius:8px;background:#fff;cursor:zoom-out}
.lb figcaption{color:#F3EEE4;font-size:.95rem;line-height:1.4;text-align:center;max-width:70ch}
.lb-close{position:absolute;top:.75rem;right:.75rem;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.4);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.lb-close:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media (prefers-reduced-motion:no-preference){.lb:not([hidden]){animation:lbfade .15s ease-out}@keyframes lbfade{from{opacity:0}to{opacity:1}}}

/* Capture/See/Act/Prove shots */
.pillar-shot{margin:1rem 0 0;aspect-ratio:16/10;overflow:hidden;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:#fff}
.pillar-shot img{width:100%;height:100%;object-fit:cover;object-position:top}
.cssa-shot{margin:1rem 0 1.75rem;max-width:680px}
.cssa-shot img{width:100%;height:auto;border:1px solid rgba(0,0,0,.12);border-radius:12px}
.cssa-shot.cssa-phone{max-width:260px}
.cssa-shot figcaption{font-size:.9rem;font-weight:600;margin-top:.4rem;color:#3d3a35}
.cssa-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin:1rem 0 2rem}
@media(min-width:640px){.cssa-grid{grid-template-columns:1fr 1fr}}
.cssa-grid .cssa-shot{margin:0;max-width:none}
.cssa-grid img{aspect-ratio:16/10;object-fit:cover;object-position:top}
/* Problems section v2 */
.problems-v2{background:#fff;padding-bottom:0}
.pg-band{padding:2.25rem 0;background:#fff}
.pg-band.pg-tint{background:#f3f6ee}
.pg-head{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#3E5C32;margin:0 0 1rem}
.pg-grid{display:grid;grid-template-columns:1fr;gap:1rem;list-style:none;margin:0;padding:0}
@media(min-width:640px){.pg-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.pg-grid{grid-template-columns:repeat(3,1fr)}}
.pg-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #dcd6cb;border-radius:14px;padding:1.25rem}
.pg-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:10px;background:#e7eedc;color:#3E5C32;margin-bottom:.75rem}
.pg-title{font-weight:600;font-size:1.1rem;color:#1f1d1a;margin:0 0 .5rem}
.pg-line{font-size:.95rem;line-height:1.5;color:#4a463f;margin:0 0 .5rem}
.pg-lab{font-weight:600;color:#1f1d1a}
.pg-link{margin-top:auto;padding-top:.5rem;font-weight:600;color:#3E5C32;text-decoration:underline;text-underline-offset:3px}
.pg-link:hover{color:#2c4224}
.pg-link:focus-visible{outline:3px solid #3E5C32;outline-offset:3px;border-radius:4px}
/* v3: cropped step shots, card headline */
.pillar-shot{aspect-ratio:2/1}
.pillar-shot img{object-position:center}
.cssa-shot img{max-width:100%}
.pg-problem{font-weight:700;font-size:1rem;line-height:1.4;color:#1f1d1a;margin:0 0 .4rem}
.pg-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#3E5C32;margin:0 0 .35rem}
@media(max-width:400px){.hdr-cta .btn-primary{padding:.45rem .6rem;font-size:.8rem}}
.seo-related{background:#faf7f0;border-top:1px solid #e5dfd3}
.seo-related-list{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;list-style:none;margin:0;padding:0}
.seo-related-list a{color:#3E5C32;font-weight:600;text-decoration:underline;text-underline-offset:3px}
