/* ISOLATED DRAFT. Keep existing plant slider, motion and pause controls. */
.campaign-public-banner { margin: 1.5rem 0; border: 1px solid var(--line,#d5ddd0); border-radius: 1rem; overflow: hidden; background: var(--cream,#faf7ef); }
.campaign-public-link { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); color: inherit; text-decoration: none; }
.campaign-public-link picture,.campaign-public-link img { display: block; width: 100%; height: 100%; object-fit: cover; }
.campaign-public-copy { padding: clamp(1rem,3vw,2rem); overflow-wrap: anywhere; }
.campaign-public-copy h2 { font-size: clamp(1.35rem,3vw,2rem); }
.campaign-public-copy small { display:block; }
.campaign-public-slide .image-note { overflow-wrap:anywhere; max-height:100%; overflow:auto; }
.campaign-public-slide .image-note p { font-size: .9rem; margin: .4rem 0; }
.campaign-public-link:focus-visible { outline: 3px solid #42613b; outline-offset: -4px; }
@media (max-width:680px) { .campaign-public-link { grid-template-columns:1fr; } .campaign-public-link picture { aspect-ratio: 3 / 2; } .campaign-public-slide .image-note { font-size:.9rem; } }
/* Respect native hidden even if a site's later grid rule sets display. */
[data-campaign-public][hidden] { display:none !important; }

.campaign-public-link picture{aspect-ratio:var(--campaign-image-ratio,3/2);height:auto;align-self:start}
/* The existing hero styles target direct img children; campaigns use picture. */
.campaign-public-slide .hero-media{display:block;position:relative}
.campaign-public-slide picture{display:block;position:absolute;inset:0}
.campaign-public-slide picture img{display:block;width:100%;height:100%;object-fit:cover}
.campaign-public-slide .image-note{display:block;background:rgba(22,48,32,.88);padding:14px;border-radius:8px;max-height:calc(100% - 94px)}
.campaign-public-slide .image-note strong,.campaign-public-slide .image-note span{display:block}
.campaign-public-slide .image-note small{opacity:1;letter-spacing:normal;text-transform:none;line-height:1.45}
.campaign-public-slide .image-note p{color:inherit;max-width:none;line-height:1.5}
.campaign-public-banner .campaign-public-copy small{line-height:1.5}
[data-campaign-banner-host][hidden]{display:none!important}
@media(max-width:680px){
 .campaign-public-slide,.campaign-public-slide .hero-media{height:auto;min-height:0;aspect-ratio:auto}
 .campaign-public-slide picture{position:relative;inset:auto;aspect-ratio:var(--campaign-image-ratio,3/2)}
 .campaign-public-link picture{aspect-ratio:var(--campaign-image-ratio,3/2)}
 .campaign-public-slide .hero-media::after{display:none}
 .campaign-public-slide .image-note{position:relative;inset:auto;border-radius:0;padding:16px 18px;max-height:none;overflow:visible;background:#26432f}
 .campaign-public-slide .image-note strong{font-size:20px;line-height:1.3}
 .campaign-public-banner .campaign-public-copy{min-width:0}
 .home-slider:has(.campaign-public-slide:not([hidden])) .slider-controls{position:static;justify-content:center;border-radius:0;padding:10px}
}

/* Focusable action details are a sibling of the image link, never nested links. */
.campaign-public-slide{position:relative}
.campaign-public-slide .image-note:focus-visible{outline:3px solid #d6e788;outline-offset:-3px}
.campaign-public-slide .image-note a{display:inline-block;text-decoration:underline;outline-offset:3px}
