/* Amadyny Gallery — namespaced to avoid conflict with Joomla template and Gridbox. */
.amg-gallery{--amg-columns:3;--amg-gap:22px;--amg-radius:12px;--amg-ratio:4/3;max-width:1360px;margin-inline:auto;padding:clamp(18px,3vw,45px) 12px;color:inherit}
.amg-header{margin-bottom:42px}.amg-kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#5d8770}.amg-header h1{font-size:clamp(2rem,4.2vw,3.8rem);font-weight:750;line-height:1.1;margin:12px 0 15px;color:inherit}.amg-intro{font-size:1.06rem;line-height:1.8;max-width:850px;opacity:.8}.amg-section-head{display:flex;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:.07em;opacity:.7;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid currentColor}
.amg-grid{display:grid;grid-template-columns:repeat(var(--amg-columns),minmax(0,1fr));gap:var(--amg-gap);align-items:start}.amg-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;gap:0;border-radius:var(--amg-radius);background:color-mix(in srgb,currentColor 4%,transparent)}.amg-tile__link{display:block;position:relative;text-decoration:none!important;color:inherit;outline-offset:4px}.amg-cover{position:relative;display:block;aspect-ratio:var(--amg-ratio);overflow:hidden;border-radius:var(--amg-radius) var(--amg-radius) 0 0;background:#273c34}.amg-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.amg-tile__link:hover img{transform:scale(1.035)}.amg-placeholder{height:100%;display:grid;place-items:center;color:white;font-size:3rem}.amg-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:58px;height:58px;display:grid;place-items:center;border-radius:50%;font-size:23px;color:#fff;background:#131c18aa;backdrop-filter:blur(6px);border:1px solid #fff8}.amg-caption{padding:19px 20px 23px;min-width:0}.amg-caption h2{font-size:1.05rem;line-height:1.35;font-weight:700;margin:0 0 9px;color:inherit}.amg-caption p{font-size:.94rem;line-height:1.72;white-space:normal;overflow-wrap:anywhere;margin:0;opacity:.88}.amg-load-area{text-align:center;padding:44px 0 28px}.amg-load-more{display:inline-flex;padding:14px 24px;border:1px solid currentColor;color:inherit;text-decoration:none!important;border-radius:30px;min-height:45px;font-weight:650;transition:background .2s}.amg-load-more:hover{background:color-mix(in srgb,currentColor 8%,transparent)}.amg-load-more.is-loading{opacity:.5;pointer-events:none}.amg-load-status{min-height:1.5em;font-size:.88rem;margin:16px auto;opacity:.7}
.amg-feature{max-width:1050px;margin:0 auto 55px;background:color-mix(in srgb,currentColor 4%,transparent);border-radius:var(--amg-radius);overflow:hidden}.amg-feature-media{background:#141917}.amg-feature-media img,.amg-feature-media video{display:block;max-width:100%;max-height:77vh;width:auto;height:auto;margin:auto}.amg-feature-caption{padding:20px 28px 28px}.amg-feature-caption h2{font-size:1.6rem;margin:0 0 10px}.amg-feature-caption p{line-height:1.85;white-space:normal;overflow-wrap:anywhere}.amg-feature-caption a{color:#487d61}.amg-inline-player{aspect-ratio:16/9;position:relative}.amg-inline-player button{position:absolute;inset:0;border:0;background:#101915;color:white;width:100%;cursor:pointer}.amg-inline-player img{width:100%;height:100%;object-fit:cover;opacity:.75}.amg-inline-player span{position:absolute;inset:0;display:grid;place-items:center;font-weight:700}.amg-inline-player iframe{border:0;width:100%;height:100%}
.amg-pswp .pswp__button{width:42px;height:42px;border:1px solid #fffb;border-radius:50%;background:#222d29d9;display:grid;place-items:center;align-self:center;margin:5px 3px}.amg-pswp .pswp__button svg{width:23px;height:23px;position:static}.amg-pswp .pswp__button:hover{background:#496153}.amg-pswp .pswp__top-bar{height:58px;align-items:center}.amg-pswp .amg-lightbox-caption{position:absolute;bottom:90px;left:clamp(14px,5vw,70px);right:clamp(14px,5vw,70px);max-height:135px;overflow:auto;padding:10px 16px 12px;background:#111b18cc;color:#fff;border-radius:12px;pointer-events:auto;overscroll-behavior:contain}.amg-lightbox-caption h2{font-size:1.07rem!important;margin:0 0 4px!important;font-weight:700;color:#fff}.amg-lightbox-caption p{font-size:.9rem;line-height:1.55;white-space:pre-wrap;margin:0 0 8px;color:#f2f2f2;overflow-wrap:anywhere}.amg-lightbox-caption a{font-size:.75rem;color:#c9ead4}.amg-lightbox-strip{position:absolute;bottom:8px;left:clamp(10px,4vw,50px);right:clamp(10px,4vw,50px);height:74px;display:flex;gap:8px;align-items:center;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;overscroll-behavior-x:contain;touch-action:pan-x;user-select:none;pointer-events:auto;cursor:grab}.amg-lightbox-strip:active{cursor:grabbing}.amg-lightbox-strip button{flex:none;width:86px;height:60px;padding:0;border-radius:7px;overflow:hidden;border:2px solid transparent;background:#151b18;cursor:pointer}.amg-lightbox-strip button[aria-current=true]{border-color:#bce7c6}.amg-lightbox-strip img{width:100%;height:100%;object-fit:cover;pointer-events:none}.amg-video-stage{position:absolute;inset:0;display:grid;place-items:center;max-width:min(1100px,96%);max-height:75vh;width:100%;height:100%;margin:auto;pointer-events:none}.amg-video-stage video,.amg-video-stage iframe{width:100%;height:100%;max-height:75vh;border:0;pointer-events:auto;background:#000}.amg-video-poster{width:100%;height:100%;object-fit:contain}.amg-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;border:1px solid #fff9;background:#24342ddd;color:white;pointer-events:auto;font-size:26px;cursor:pointer}
@media(max-width:940px){.amg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:590px){.amg-gallery{padding-inline:8px}.amg-grid{grid-template-columns:1fr;gap:16px}.amg-caption{padding:16px 16px 18px}.amg-pswp .amg-lightbox-caption{bottom:83px;max-height:112px;left:8px;right:8px}.amg-lightbox-strip{height:66px;left:8px;right:8px}.amg-lightbox-strip button{width:70px;height:52px}.amg-pswp .pswp__button{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.amg-cover img{transition:none}}

/* 1.0.2 — optional masonry-like JUSTIFIED rows (aligned bottom edges).
   Prior to JS, the regular accessible CSS grid is the fallback. */
.amg-gallery[data-amg-layout="masonry"] .amg-grid.amg-grid--justified{
 display:flex;flex-direction:column;align-items:stretch;gap:var(--amg-gap);
}
.amg-gallery .amg-justified-row{display:flex;gap:var(--amg-gap);width:100%;align-items:stretch;min-width:0}
.amg-gallery .amg-justified-row>.amg-card{min-width:0;max-width:100%;flex-shrink:1!important;align-self:stretch}
.amg-gallery .amg-justified-row .amg-cover{aspect-ratio:auto!important;height:var(--amg-row-height);width:100%;border-radius:var(--amg-radius) var(--amg-radius) 0 0}
.amg-gallery .amg-justified-row .amg-cover img{width:100%;height:100%;object-fit:cover}
.amg-gallery .amg-justified-row--partial{justify-content:flex-start}
/* Matching round buttons and legible on-dark links in PhotoSwipe. */
.amg-pswp{--pswp-icon-color:#fff;--pswp-icon-color-secondary:#fff;--pswp-error-text-color:#fff}
.amg-pswp .pswp__button,
.amg-pswp .pswp__button:hover,
.amg-pswp .pswp__button:focus{
 box-sizing:border-box!important;width:44px;height:44px;padding:0!important;
 border:1px solid rgba(255,255,255,.43)!important;border-radius:50%!important;
 background:rgba(30,44,39,.91)!important;color:#fff!important;
 display:flex;align-items:center;justify-content:center;
 box-shadow:none!important;opacity:1;line-height:1;
}
.amg-pswp .pswp__button:hover{background:rgba(74,103,87,.98)!important;border-color:#fff!important}
.amg-pswp .pswp__button:focus-visible,
.amg-pswp .amg-lightbox-strip button:focus-visible,
.amg-pswp .amg-lightbox-caption a:focus-visible{outline:2px solid #c5f7da;outline-offset:3px}
.amg-pswp .pswp__button .pswp__icn,
.amg-pswp .pswp__button--arrow .pswp__icn{
 position:static!important;inset:auto!important;width:23px!important;height:23px!important;
 padding:0!important;margin:0!important;transform:none!important;
 color:#fff!important;stroke:#fff;fill:none;
 pointer-events:none;
}
.amg-pswp .pswp__button--arrow,
.amg-pswp .pswp__button--arrow:hover{
 position:absolute;top:50%;margin:0!important;transform:translateY(-50%);
 width:48px;height:48px;
}
.amg-pswp .pswp__button--arrow--prev{left:clamp(8px,2vw,26px);right:auto}
.amg-pswp .pswp__button--arrow--next{right:clamp(8px,2vw,26px);left:auto}
.amg-pswp .pswp__button--arrow:disabled{display:none}
.amg-pswp .pswp__button svg:not(.pswp__icn){width:22px;height:22px;flex:none;color:#fff;fill:currentColor}
.amg-pswp .pswp__button svg:not(.pswp__icn)[fill="none"]{fill:none}
.amg-pswp a.pswp__button:link,.amg-pswp a.pswp__button:visited{color:#fff!important}
.amg-pswp .amg-lightbox-caption a,
.amg-pswp .amg-lightbox-caption a:link,
.amg-pswp .amg-lightbox-caption a:visited{color:#c5f7da!important;text-decoration:underline!important;text-underline-offset:3px}
.amg-pswp .amg-lightbox-caption a:hover{color:#fff!important;text-decoration-thickness:2px!important}
.amg-pswp .amg-lightbox-caption{color:#fff;background:rgba(15,29,24,.95);border:1px solid rgba(255,255,255,.22)}
@media(max-width:590px){.amg-pswp .pswp__button,.amg-pswp .pswp__button:hover,.amg-pswp .pswp__button:focus{width:38px;height:38px}.amg-pswp .pswp__button--arrow,.amg-pswp .pswp__button--arrow:hover{width:40px;height:40px}.amg-pswp .pswp__button .pswp__icn{width:21px!important;height:21px!important}}

/* v1.0.3 — accessible server-side excerpt + AJAX media filters */
.amg-media-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0 28px}
.amg-media-filters a{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:9px 20px;border:1px solid rgba(90,130,105,.34);border-radius:999px;text-decoration:none!important;color:inherit;font-size:.95rem;font-weight:650;transition:background .15s,border-color .15s}
.amg-media-filters a:hover,.amg-media-filters a.is-active{color:#fff!important;background:#286144;border-color:#286144}
.amg-media-filters a[aria-busy=true]{opacity:.6}
.amg-readmore{display:inline-block;margin-top:12px;color:#26714c!important;font-size:.88rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.amg-load-more[hidden],.amg-more[hidden]{display:none!important}

/* v1.0.3 — explanatory sidebar next to the photograph/video, 70%/30%.
   PhotoSwipe's paddingFn also reserves the same width for the media. */
.amg-pswp .amg-lightbox-caption{
  box-sizing:border-box;top:66px;bottom:91px;left:auto;right:0;
  width:30%;height:auto;max-height:none;margin:0;
  padding:0;border-radius:14px 0 0 14px;
  background:rgba(17,30,25,.97);color:#fff;
  z-index:75;pointer-events:auto;overflow:hidden;overscroll-behavior:contain;
  box-shadow:-8px 0 30px rgba(0,0,0,.28);
}
.amg-pswp .amg-caption-scroller{
  height:100%;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;
  padding:clamp(18px,2vw,30px);scrollbar-width:thin;scrollbar-color:#78958b transparent;
  touch-action:pan-y;
}
.amg-pswp .amg-lightbox-caption h2{font-size:clamp(1.05rem,1.7vw,1.45rem)!important;line-height:1.35;margin:0 0 14px!important}
.amg-pswp .amg-lightbox-caption p{font-size:clamp(.9rem,1.05vw,1rem);line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 18px}
.amg-pswp .amg-caption-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.18)}
.amg-pswp .amg-caption-links a{color:#bff2d2!important;overflow-wrap:anywhere;font-size:.9rem;line-height:1.5}
.amg-pswp .amg-caption-links .amg-more{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:7px;background:#376a4e;color:#fff!important;text-decoration:none!important;font-weight:700}
.amg-pswp .amg-caption-links .amg-more:hover{background:#448961!important}
.amg-pswp .pswp__button--arrow--next,.amg-pswp .pswp__button--arrow--next:hover{right:calc(30% + 30px)}
/* The thumbnail strip always stays above the scrolled description. */
.amg-pswp .amg-lightbox-strip{z-index:100;bottom:5px;left:clamp(12px,3vw,45px);right:clamp(12px,3vw,45px);height:80px;
 background:rgba(10,20,16,.82);border-radius:12px;padding:3px 8px;box-sizing:border-box}

/* PhotoSwipe custom content is not laid out as an ordinary image.
   These declarations replace the old absolute/inset/max-width combination.
   The contentResize event supplies exact slide dimensions. */
.amg-pswp .amg-video-stage{
 box-sizing:border-box!important;position:relative!important;inset:auto!important;
 margin:0!important;max-width:none!important;max-height:none!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 background:#000!important;pointer-events:auto!important;overflow:hidden!important;
}
.amg-pswp .amg-video-stage .amg-video-poster{
 position:absolute!important;inset:0!important;display:block!important;
 width:100%!important;height:100%!important;max-height:none!important;
 object-fit:contain!important;pointer-events:none!important;
}
.amg-pswp .amg-video-stage video,.amg-pswp .amg-video-stage iframe{
 position:absolute!important;inset:0!important;display:block!important;
 width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
 margin:0!important;object-fit:contain!important;border:0!important;
 background:#000!important;opacity:1!important;visibility:visible!important;
 z-index:3!important;pointer-events:auto!important;
}
.amg-pswp .amg-video-stage .amg-video-play{
 position:absolute!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;
 transform:translate(-50%,-50%)!important;display:grid!important;place-items:center!important;
 z-index:4!important;pointer-events:auto!important;
 box-sizing:border-box;width:76px;height:76px;padding:0!important;
 color:#fff!important;background:rgba(20,44,31,.91)!important;
 border:1px solid rgba(255,255,255,.8)!important;border-radius:50%!important;
 font-size:30px;line-height:1;
}
@media(max-width:759px){
 .amg-pswp .amg-lightbox-caption{
   left:8px;right:8px;bottom:78px;top:auto;width:auto;
   height:clamp(96px,26dvh,230px);max-height:230px;
   border-radius:10px;padding:0;z-index:75;
 }
 .amg-pswp .amg-caption-scroller{padding:12px 16px}
 .amg-pswp .amg-lightbox-caption h2{font-size:1rem!important;margin-bottom:7px!important}
 .amg-pswp .amg-lightbox-caption p{font-size:.86rem;line-height:1.5}
 .amg-pswp .amg-lightbox-strip{height:72px;bottom:0;left:5px;right:5px;z-index:100;border-radius:10px 10px 0 0}
 .amg-pswp .pswp__zoom-wrap{z-index:1}
 .amg-pswp .pswp__button--arrow--next,.amg-pswp .pswp__button--arrow--next:hover{right:10px}
 .amg-pswp .pswp__button--arrow--prev,.amg-pswp .pswp__button--arrow--prev:hover{left:10px}
}


/* 1.0.5 — customizable description, matching corners and mobile media frame. */
.amg-pswp{
 --amg-caption-bg:#172a22;
 --amg-lightbox-radius:14px;
 --amg-mobile-inset:12px;
}
.amg-pswp .amg-lightbox-caption{
 right:clamp(18px,2vw,34px);
 width:30%;
 top:72px;
 bottom:106px;
 background:var(--amg-caption-bg)!important;
 border:1px solid rgba(255,255,255,.22);
 border-radius:var(--amg-lightbox-radius)!important;
 box-shadow:0 12px 35px rgba(0,0,0,.28);
}
.amg-pswp .pswp__img,
.amg-pswp .amg-video-stage,
.amg-pswp .amg-video-stage video,
.amg-pswp .amg-video-stage iframe,
.amg-pswp .amg-video-stage .amg-video-poster{
 border-radius:var(--amg-lightbox-radius)!important;
}
.amg-pswp .amg-video-stage{overflow:hidden!important}
.amg-pswp .pswp__button--arrow--next,
.amg-pswp .pswp__button--arrow--next:hover{right:calc(30% + 60px)}
/* The backing frame gives portrait photos a full-width, rounded visual field
   while PhotoSwipe keeps each image's aspect ratio and zoom/gesture geometry. */
.amg-pswp .pswp__item::before{content:none}
@media(max-width:759px){
 .amg-pswp .amg-lightbox-caption{
   left:var(--amg-mobile-inset);right:var(--amg-mobile-inset);
   bottom:86px;top:auto;width:auto;
   height:clamp(112px,28dvh,244px);max-height:244px;
   border-radius:var(--amg-lightbox-radius)!important;
 }
 .amg-pswp .pswp__item::before{
   content:'';position:absolute;z-index:0;pointer-events:none;
   top:65px;bottom:clamp(204px,calc(28dvh + 104px),365px);left:var(--amg-mobile-inset);right:var(--amg-mobile-inset);
   background:#111b17;border:1px solid rgba(255,255,255,.13);
   border-radius:var(--amg-lightbox-radius);
 }
 .amg-pswp .pswp__zoom-wrap{z-index:1}
 .amg-pswp .pswp__button--arrow--next,
 .amg-pswp .pswp__button--arrow--next:hover{right:10px}
 .amg-pswp .amg-lightbox-strip{z-index:110;bottom:0;left:5px;right:5px}
}

/* Keep text and links readable when a light caption color is selected. */
.amg-pswp.amg-caption-light .amg-lightbox-caption,
.amg-pswp.amg-caption-light .amg-lightbox-caption h2,
.amg-pswp.amg-caption-light .amg-lightbox-caption p{color:#14251d!important}
.amg-pswp.amg-caption-light .amg-lightbox-caption a:not(.amg-more),
.amg-pswp.amg-caption-light .amg-lightbox-caption a:not(.amg-more):visited{
 color:#125337!important
}
.amg-pswp.amg-caption-light .amg-caption-links{border-color:rgba(0,0,0,.22)}
.amg-pswp.amg-caption-light .amg-caption-scroller{scrollbar-color:#426d57 transparent}


/* 1.0.6 — accessible component-wide design tokens, scoped so Gridbox is untouched. */
.amg-gallery {
 font-family:var(--amg-font-family,inherit);
 --amg-accent:#286144;
}
.amg-gallery .amg-caption h3 {
 font-size:var(--amg-font-thumb-title,17px)!important;
 font-weight:var(--amg-heading-weight,700)!important;
 line-height:1.4;margin:0 0 9px;color:inherit;
}
.amg-gallery .amg-caption p {font-size:var(--amg-font-thumb-body,15px)}
.amg-gallery .amg-section-title {font-size:12px;letter-spacing:.07em;font-weight:var(--amg-heading-weight,700);margin:0;line-height:1.5}
.amg-gallery .amg-kicker{color:var(--amg-accent,#286144)}
.amg-gallery .amg-header h1{font-weight:var(--amg-heading-weight,700)}
.amg-gallery .amg-media-filters a{
 background:var(--amg-filter-bg,#f1f6f2)!important;
 color:var(--amg-filter-text,#244535)!important;
 border-color:color-mix(in srgb,var(--amg-filter-text,#244535) 20%,transparent)!important;
 box-shadow:0 2px 7px rgba(0,0,0,.04);
 transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.amg-gallery .amg-media-filters a:hover{transform:translateY(-2px);box-shadow:0 5px 12px rgba(0,0,0,.09)}
.amg-gallery .amg-media-filters a.is-active,
.amg-gallery .amg-media-filters a.is-active:hover{
 background:var(--amg-filter-active,#286144)!important;
 color:var(--amg-filter-active-text,#ffffff)!important;
 border-color:var(--amg-filter-active,#286144)!important;
}
.amg-gallery .amg-media-filters a:focus-visible,
.amg-gallery .amg-load-more:focus-visible{outline:3px solid var(--amg-accent,#286144);outline-offset:3px}
.amg-gallery .amg-load-more {
 display:inline-flex;align-items:center;justify-content:center;gap:12px;
 background:var(--amg-load-bg,#286144)!important;
 color:var(--amg-load-text,#ffffff)!important;
 border:1px solid var(--amg-load-border,#286144)!important;
 border-radius:999px;box-shadow:0 5px 18px rgba(0,0,0,.12);
 font-weight:var(--amg-heading-weight,700);line-height:1.3;
 transition:transform .25s ease,filter .25s ease,box-shadow .25s ease;
}
.amg-gallery .amg-load-more:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 9px 22px rgba(0,0,0,.19)}
.amg-gallery .amg-load-more[hidden]{display:none!important}
.amg-load-icon{display:inline-flex;align-items:center;justify-content:center}
.amg-load-icon svg{width:19px;height:19px;transition:transform .25s ease}
.amg-load-more:hover .amg-load-icon svg{transform:translateY(3px)}
.amg-gallery .amg-readmore{color:var(--amg-accent,#286144)!important}
.amg-gallery .amg-grid--filter-out {opacity:0;transform:translateY(-9px);transition:opacity .13s ease,transform .13s ease}
.amg-gallery .amg-grid--filter-in {animation:amg-appear .3s ease both}
@keyframes amg-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
/* Match each toolbar and arrow button to a single variable-controlled visual system. */
.amg-pswp{font-family:var(--amg-font-family,inherit)}
.amg-pswp .pswp__button,
.amg-pswp .pswp__button:hover,
.amg-pswp .pswp__button:focus{
 width:var(--amg-button-size,44px)!important;
 height:var(--amg-button-size,44px)!important;
 min-width:var(--amg-button-size,44px)!important;
 min-height:var(--amg-button-size,44px)!important;
 border-radius:var(--amg-control-radius,50%)!important;
 background:var(--amg-icon-bg,#1e2c27)!important;
 border:1px solid var(--amg-icon-border,#9eafa5)!important;
 color:var(--amg-icon-fg,#ffffff)!important;
 transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.amg-pswp .pswp__button:hover{background:var(--amg-icon-hover,#4a6757)!important;box-shadow:0 3px 15px rgba(0,0,0,.27)!important}
.amg-pswp .pswp__button .pswp__icn,
.amg-pswp .pswp__button--arrow .pswp__icn{
 width:var(--amg-icon-size,23px)!important;height:var(--amg-icon-size,23px)!important;
 color:var(--amg-icon-fg,#ffffff)!important;
 stroke:var(--amg-icon-fg,#ffffff)!important;
 stroke-width:var(--amg-icon-stroke,2)!important;
}
.amg-pswp .pswp__button svg:not(.pswp__icn){
 width:var(--amg-icon-size,23px)!important;height:var(--amg-icon-size,23px)!important;
 color:var(--amg-icon-fg,#ffffff)!important;
}
.amg-pswp .pswp__button--arrow,
.amg-pswp .pswp__button--arrow:hover{
 top:50%;transform:translateY(-50%)!important;
}
.amg-pswp a.pswp__button:link,
.amg-pswp a.pswp__button:visited{color:var(--amg-icon-fg,#ffffff)!important}
.amg-pswp .amg-lightbox-caption h2{
 font-size:var(--amg-font-caption-title,22px)!important;
 font-weight:var(--amg-heading-weight,700)!important;
}
.amg-pswp .amg-lightbox-caption p{font-size:var(--amg-font-caption-body,16px)!important}
.amg-pswp .amg-lightbox-caption a,
.amg-pswp .amg-lightbox-caption a:visited,
.amg-pswp.amg-caption-light .amg-lightbox-caption a:not(.amg-more),
.amg-pswp.amg-caption-light .amg-lightbox-caption a:not(.amg-more):visited{
 color:var(--amg-caption-link,#c5f7da)!important;
}
.amg-pswp .amg-caption-links .amg-more{
 background:var(--amg-icon-bg,#1e2c27)!important;
 color:var(--amg-icon-fg,#ffffff)!important;
 border:1px solid var(--amg-icon-border,#9eafa5)!important;
}
.amg-pswp .amg-caption-links .amg-more:hover{background:var(--amg-icon-hover,#4a6757)!important}
/* Scroll using drag or touch, but no thin scrollbar at narrower desktop widths. */
.amg-pswp .amg-lightbox-strip{scrollbar-width:none!important;-ms-overflow-style:none;scroll-behavior:smooth}
.amg-pswp .amg-lightbox-strip::-webkit-scrollbar{display:none!important;width:0;height:0}
.amg-pswp .amg-lightbox-strip button{flex-shrink:0;touch-action:pan-x}
@media(max-width:590px){
 .amg-pswp .pswp__button,.amg-pswp .pswp__button:hover{
  width:clamp(36px,var(--amg-button-size,44px),44px)!important;
  height:clamp(36px,var(--amg-button-size,44px),44px)!important;
  min-width:clamp(36px,var(--amg-button-size,44px),44px)!important;
  min-height:clamp(36px,var(--amg-button-size,44px),44px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .amg-gallery .amg-grid--filter-in{animation:none}
 .amg-gallery .amg-grid--filter-out{transition:none}
 .amg-gallery .amg-media-filters a,.amg-gallery .amg-load-more{transition:none}
 .amg-pswp .amg-lightbox-strip{scroll-behavior:auto}
}

.amg-gallery .amg-media-filters a{gap:8px}
.amg-gallery .amg-filter-icon{display:inline-flex;align-items:center;justify-content:center}
.amg-gallery .amg-filter-icon svg{width:19px;height:19px;stroke-width:var(--amg-icon-stroke,2);transition:transform .2s ease}
.amg-gallery .amg-media-filters a:hover .amg-filter-icon svg{transform:scale(1.07)}
.amg-pswp .pswp__top-bar{min-height:calc(var(--amg-button-size,44px) + 12px)}

/* 1.0.8 - PhotoSwipe above Gridbox/Joomla fixed and sticky headers.
   The lightbox is mounted directly under body (not under .amg-gallery).
   Override PhotoSwipe's default --pswp-root-z-index (100000).
   Do not change z-index of its internal controls, captions or thumbnails. */
body > .pswp.amg-pswp {
  --pswp-root-z-index: 2147483647 !important;
  z-index: 2147483647 !important;
  position: fixed !important;
}

/* 1.0.9: independent heading level / rich husbandry notes */
.amg-gallery .amg-header :is(h1,h2,h3){font-size:clamp(2rem,4.2vw,3.8rem);font-weight:var(--amg-heading-weight,700);line-height:1.1;margin:12px 0 15px;color:inherit}
.amg-rich-description,.amg-lightbox-rich{line-height:1.7;overflow-wrap:anywhere;white-space:normal}
.amg-rich-description p,.amg-lightbox-rich p{margin:0 0 .85em;white-space:normal!important}
.amg-rich-description ul,.amg-rich-description ol,.amg-lightbox-rich ul,.amg-lightbox-rich ol{padding-left:1.45em;margin:.45em 0 1em;list-style:revert}
.amg-rich-description li,.amg-lightbox-rich li{margin:.22em 0}
.amg-rich-description blockquote,.amg-lightbox-rich blockquote{padding:.4em .9em;border-left:3px solid currentColor;opacity:.92}
.amg-rich-description a,.amg-rich-description a:visited{color:var(--amg-accent,#286144);text-decoration:underline}
.amg-pswp .amg-lightbox-rich{font-size:var(--amg-font-caption-body,16px);line-height:1.7}
.amg-pswp .amg-lightbox-rich :is(h3,h4){font-size:1.07em;margin:.8em 0 .5em;line-height:1.35}
.amg-pswp .amg-lightbox-rich a,.amg-pswp .amg-lightbox-rich a:visited{color:var(--amg-caption-link,#c5f7da)!important;text-decoration:underline}
.amg-pswp.amg-caption-light .amg-lightbox-rich,.amg-pswp.amg-caption-light .amg-lightbox-rich :is(p,li,h3,h4){color:#14251d!important}
