/* AMSEnv photo-led albums v1.2.0: independent from existing RSS styles. */
.amsenvmg{--mg-dark:#123e28;--mg-green:#177b45;--mg-gold:#c9a34a;--mg-muted:#67766a;--mg-line:#dfebe0;--mg-bg:#f6f8f2;color:#173c28;width:100%;max-width:1320px;margin:0 auto 90px;font-family:inherit;box-sizing:border-box}
.amsenvmg *,.amsenvmg *:before,.amsenvmg *:after{box-sizing:border-box}
.amsenvmg-heading{margin-bottom:29px;text-align:center}
.amsenvmg-eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.18em;color:#207c42;margin-bottom:12px;text-transform:uppercase}
.amsenvmg-heading h2{margin:0 0 12px!important;font-size:clamp(28px,3.5vw,43px)!important;line-height:1.15!important;font-weight:800!important;color:var(--mg-dark)!important}
.amsenvmg-heading p{font-size:16px;color:var(--mg-muted);line-height:1.75;max-width:800px;margin:0 auto}
.amsenvmg-filters{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 auto 55px}
.amsenvmg-filter{border:1px solid #bbcebf;background:transparent;color:var(--mg-dark);border-radius:7px;padding:13px 23px;font-size:13px;font-weight:750;line-height:1.2;letter-spacing:.01em;cursor:pointer;font-family:inherit;transition:background-color .2s,border-color .2s,color .2s}
.amsenvmg-filter:hover{background:#e8f2e8;border-color:#96bc9c}
.amsenvmg-filter.is-active{background:#17623a;color:#fff;border-color:#17623a}
.amsenvmg-albums{display:flex;flex-direction:column;gap:64px}
.amsenvmg-album{background:transparent;min-width:0;position:relative;border-bottom:1px solid var(--mg-line);padding-bottom:56px}
.amsenvmg-album:last-child{border-bottom:none;padding-bottom:0}
.amsenvmg-album-header{text-align:center;max-width:970px;margin:0 auto 25px}
.amsenvmg-album-meta{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.amsenvmg-tag{border-radius:999px;background:#e4f2e7;color:#17613a;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;padding:7px 12px}
.amsenvmg-album-meta time{font-size:13px;color:#718074}
.amsenvmg-album-header h3{font-size:clamp(23px,2.4vw,32px)!important;line-height:1.2!important;color:var(--mg-dark)!important;font-weight:800!important;margin:0 0 12px!important;letter-spacing:-.02em}
.amsenvmg-album-header p{font-size:15px;line-height:1.75;color:var(--mg-muted);margin:0 auto;max-width:790px}
.amsenvmg-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;min-width:0}
.amsenvmg-photo{display:flex;position:relative;min-width:0;width:100%;aspect-ratio:4/3;align-items:center;justify-content:center;padding:0;margin:0;border:0;border-radius:12px;overflow:hidden;background:#e8eee8;cursor:zoom-in;box-shadow:0 3px 16px rgba(26,61,42,.075)}
.amsenvmg-photo img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .35s ease}
.amsenvmg-photo:hover img{transform:scale(1.025)}
.amsenvmg-photo:focus-visible,.amsenvmg-filter:focus-visible,.amsenvmg-page-controls button:focus-visible{outline:3px solid #d9b45c;outline-offset:3px}
.amsenvmg-photo[hidden],.amsenvmg-album[hidden],.amsenvmg-empty-filter[hidden]{display:none!important}
.amsenvmg-zoom{position:absolute;right:11px;bottom:11px;width:35px;height:35px;border-radius:50%;background:rgba(7,40,23,.78);color:#fff;display:flex;justify-content:center;align-items:center;font-size:23px;font-weight:500;opacity:0;transition:opacity .2s}
.amsenvmg-photo:hover .amsenvmg-zoom,.amsenvmg-photo:focus-visible .amsenvmg-zoom{opacity:1}
.amsenvmg-placeholder{cursor:default}
.amsenvmg-page-controls{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:20px}
.amsenvmg-page-controls button{border:1px solid #b9d5bf;border-radius:50%;background:#fff;color:var(--mg-dark);cursor:pointer;font-size:24px;width:41px;height:41px;line-height:1;display:flex;align-items:center;justify-content:center}
.amsenvmg-page-controls button:disabled{opacity:.35;cursor:not-allowed}
.amsenvmg-page-label{color:var(--mg-muted);font-size:13px;font-weight:650;min-width:44px;text-align:center}
/* If only one photo exists, use a balanced editorial layout rather than a lonely narrow card. */
.amsenvmg-solo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:52px;padding:24px 0 64px}
.amsenvmg-solo .amsenvmg-photo-grid{grid-column:1;grid-row:1;grid-template-columns:1fr;max-width:550px;width:100%;justify-self:center}
.amsenvmg-solo .amsenvmg-photo{aspect-ratio:auto;min-height:370px;height:440px;background:linear-gradient(145deg,#e5eee4,#f4f6ee)}
.amsenvmg-solo .amsenvmg-photo img{object-fit:contain}
.amsenvmg-solo .amsenvmg-album-header{grid-column:2;grid-row:1;text-align:left;max-width:500px;margin:0}
.amsenvmg-solo .amsenvmg-album-meta{justify-content:flex-start}
.amsenvmg-solo .amsenvmg-album-header h3{font-size:clamp(26px,3vw,41px)!important;margin-bottom:18px!important}
.amsenvmg-solo .amsenvmg-album-header p{font-size:16px;max-width:460px}
.amsenvmg-empty,.amsenvmg-empty-filter{padding:36px;background:#f2f8f2;border:1px dashed #aacdb3;border-radius:16px;text-align:center;color:#5b7763;font-size:15px}
/* Full-screen gallery: original photo proportions preserved, not cropped. */
.amsenvmg-lightbox{position:fixed;inset:0;background:rgba(5,21,13,.96);z-index:999999;display:flex;align-items:center;justify-content:center;gap:10px;padding:45px 72px 25px;color:#fff}
.amsenvmg-lightbox[hidden]{display:none!important}
.amsenvmg-lightbox-content{display:flex;flex:1;min-width:0;align-items:center;justify-content:center;flex-direction:column;height:100%;max-width:1500px;gap:13px}
.amsenvmg-lightbox-content img{max-width:100%;max-height:calc(100% - 70px);width:auto;height:auto;object-fit:contain;box-shadow:0 8px 40px rgba(0,0,0,.28)}
.amsenvmg-lightbox-bottom{width:100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;text-align:center;min-height:42px;font-size:14px;color:#fff}
.amsenvmg-lightbox-title{font-weight:650}
.amsenvmg-lightbox-count{color:#b7cdbd;font-size:12px}
.amsenvmg-lightbox-close,.amsenvmg-lightbox-prev,.amsenvmg-lightbox-next{cursor:pointer;border:0;color:#fff;background:rgba(255,255,255,.13);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.amsenvmg-lightbox-close{position:absolute;right:22px;top:18px;width:45px;height:45px;border-radius:50%;font-size:34px;line-height:1}
.amsenvmg-lightbox-prev,.amsenvmg-lightbox-next{width:48px;height:48px;border-radius:50%;font-size:37px;line-height:1}
.amsenvmg-lightbox-prev:disabled,.amsenvmg-lightbox-next:disabled{opacity:.2;cursor:default}
.amsenvmg-lightbox-close:focus-visible,.amsenvmg-lightbox-prev:focus-visible,.amsenvmg-lightbox-next:focus-visible{outline:3px solid #dfbc61;outline-offset:3px}
body.amsenvmg-lightbox-open{overflow:hidden}
@media(max-width:1000px){.amsenvmg-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amsenvmg-solo{gap:25px}.amsenvmg-solo .amsenvmg-photo{height:370px;min-height:0}.amsenvmg-albums{gap:48px}}
@media(max-width:700px){.amsenvmg{margin-bottom:55px}.amsenvmg-heading h2{font-size:28px!important}.amsenvmg-heading p{font-size:14px}.amsenvmg-filters{justify-content:flex-start;gap:8px;margin-bottom:30px}.amsenvmg-filter{padding:10px 14px;font-size:12px}.amsenvmg-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.amsenvmg-photo{border-radius:9px}.amsenvmg-zoom{opacity:1;width:28px;height:28px;font-size:19px}.amsenvmg-solo{display:flex;flex-direction:column;gap:15px;padding:0 0 40px}.amsenvmg-solo .amsenvmg-album-header{order:0;text-align:center;width:100%;max-width:100%}.amsenvmg-solo .amsenvmg-album-meta{justify-content:center}.amsenvmg-solo .amsenvmg-photo-grid{order:1;max-width:100%}.amsenvmg-solo .amsenvmg-photo{height:auto;max-height:none;aspect-ratio:4/3}.amsenvmg-album{padding-bottom:40px}.amsenvmg-album-header h3{font-size:23px!important}.amsenvmg-album-header p{font-size:14px}.amsenvmg-lightbox{padding:60px 10px 22px;gap:3px}.amsenvmg-lightbox-prev,.amsenvmg-lightbox-next{width:32px;height:44px;background:none;font-size:33px}.amsenvmg-lightbox-close{width:40px;height:40px;right:12px;top:9px}}
@media(max-width:440px){.amsenvmg-photo-grid{grid-template-columns:1fr}.amsenvmg-photo{aspect-ratio:4/3}.amsenvmg-lightbox-bottom{font-size:12px}}
@media(prefers-reduced-motion:reduce){.amsenvmg *{transition:none!important}}
