.feg-gallery,.feg-gallery *{box-sizing:border-box}
.feg-gallery{--feg-ink:#191615;--feg-cream:#F7F3EB;--feg-red:#772D40;color:var(--feg-ink);margin:2.6em auto;max-width:1160px}
.feg-gallery button{cursor:pointer;font:inherit}
.feg-launch{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;overflow:hidden;line-height:0}
.feg-launch img{width:100%;height:auto;max-height:690px;object-fit:cover;display:block;transition:transform .45s ease}
.feg-launch:hover img{transform:scale(1.014)}
.feg-launch-label{position:absolute;left:22px;bottom:22px;padding:13px 19px;background:var(--feg-cream);font:400 11px/1.2 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.16em;color:var(--feg-ink)}
.feg-intro{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #EDE6DC;padding:12px 0 15px;margin:0!important;font:400 10px/1.4 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.feg-dialog[hidden]{display:none!important}
.feg-dialog{position:fixed!important;inset:0!important;z-index:999999!important;display:grid!important;grid-template-columns:minmax(0,7fr) minmax(300px,3fr);background:#191615!important;color:#F7F3EB!important;overflow:hidden;animation:feg-appear .2s ease-out}
@keyframes feg-appear{from{opacity:0}to{opacity:1}}
.feg-stage{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;padding:32px 3vw 22px}
.feg-stage-top{display:flex;align-items:center;justify-content:space-between;gap:18px;font:400 10px/1.4 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.19em;color:#EDE6DC;text-transform:uppercase;min-height:35px}
.feg-close{width:40px;height:40px;border:1px solid #B78973;border-radius:50%;background:transparent;color:#F7F3EB;font-size:30px;line-height:32px}
.feg-image-zone{display:flex;align-items:center;justify-content:center;flex:1;position:relative;min-height:0;margin-top:10px}
.feg-large-image{max-width:100%!important;max-height:calc(100vh - 175px)!important;width:auto!important;height:auto!important;object-fit:contain;box-shadow:none!important}
.feg-prev,.feg-next{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #B78973;border-radius:50%;background:rgba(25,22,21,.75);width:52px;height:52px;color:#F7F3EB;font-size:22px;line-height:1;z-index:2}
.feg-prev{left:-17px}.feg-next{right:-17px}
.feg-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;min-height:64px}
.feg-counter,.feg-side-counter{font:400 10px/1.4 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.18em}
.feg-thumbs{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;flex:1;max-height:65px;overflow:auto}
.feg-thumb{width:42px;height:51px;padding:0;border:2px solid transparent;background:none;flex-shrink:0;opacity:.55}
.feg-thumb[aria-current="true"]{opacity:1;border-color:#F7F3EB}
.feg-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.feg-side{background:var(--feg-cream);color:var(--feg-ink);height:100%;overflow:auto;padding:56px 13% 30px;display:flex;flex-direction:column}
.feg-panel-top{display:flex;justify-content:space-between;border-bottom:1px solid #EDE6DC;padding-bottom:28px;color:#6C635E;font:400 10px/1.3 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.18em}
.feg-eyebrow{margin:50px 0 14px!important;color:var(--feg-red);font:400 11px/1.5 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.19em}
.feg-photo-title{font:400 clamp(36px,4.2vw,72px)/.92 "Cormorant Garamond",var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:-.025em;color:var(--feg-ink)!important;margin:0 0 28px!important;text-transform:none}
.feg-photo-story{white-space:pre-line;font:400 16px/1.8 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;color:#191615!important;margin:0 0 34px!important}
.feg-credits-wrap{border-top:1px solid #EDE6DC;padding-top:20px;margin-top:3px}
.feg-credits-wrap h3{font:400 10px/1.2 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.19em;color:#6C635E!important;margin:0 0 12px!important}
.feg-photo-credits{white-space:pre-line;font:400 12px/1.9 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;color:#191615!important;margin:0 0 26px!important}
.feg-credits-wrap:has(.feg-photo-credits:empty){display:none}
.feg-nextline{border-top:1px solid #EDE6DC;padding-top:23px;margin-top:auto}
.feg-next-text{border:0;background:none;padding:5px 0;width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--feg-red);font:400 10px/1.2 var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;letter-spacing:.17em}
.feg-dialog button:focus-visible,.feg-launch:focus-visible{outline:3px solid #B78973;outline-offset:3px}
body.feg-locked{overflow:hidden!important}
@media(max-width:800px){
 .feg-dialog{grid-template-columns:1fr!important;grid-template-rows:minmax(0,55vh) minmax(0,45vh)!important;overflow:auto}
 .feg-stage{height:55vh;padding:14px 16px 8px}
 .feg-stage-top{font-size:9px;min-height:30px}
 .feg-large-image{max-height:calc(55vh - 125px)!important}
 .feg-bottom{min-height:38px;margin-top:7px}
 .feg-thumb{height:34px;width:30px}
 .feg-prev,.feg-next{width:37px;height:37px;font-size:16px}
 .feg-prev{left:-10px}.feg-next{right:-10px}
 .feg-side{height:45vh;padding:25px 7% 28px}
 .feg-panel-top{padding-bottom:14px}
 .feg-eyebrow{margin:21px 0 9px!important}
 .feg-photo-title{font-size:44px;margin-bottom:13px!important}
 .feg-photo-story{font-size:14px;line-height:1.55;margin-bottom:19px!important}
 .feg-nextline{padding-top:11px}
}
@media(prefers-reduced-motion:reduce){.feg-dialog{animation:none}.feg-launch img{transition:none}}

/* Félix approved native typography tokens; navigation and metadata remain Rosario. */
.feg-gallery,.feg-dialog{--feg-ink:var(--e-global-color-primary,#191615);--feg-cream:var(--e-global-color-felix_ivory,#F7F3EB);--feg-red:var(--e-global-color-accent,#772D40);font-family:var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;font-weight:400}
.feg-dialog .feg-photo-title{font-family:var(--e-global-typography-primary-font-family,"Cormorant Garamond"),Georgia,serif;font-size:var(--e-global-typography-felix_h2-font-size,51px);line-height:1.1;font-weight:400}
.feg-dialog .feg-photo-story{font-family:var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;font-size:var(--e-global-typography-text-font-size,18px);line-height:1.8;font-weight:400}
.feg-dialog .feg-photo-credits{font-family:var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;font-size:var(--e-global-typography-felix_caption-font-size,14px);line-height:1.75;font-weight:400}
.feg-dialog :is(.feg-panel-top,.feg-counter,.feg-side-counter,.feg-credits-wrap h3,.feg-next-text,.feg-stage-top),.feg-gallery .feg-intro,.feg-gallery .feg-launch-label{font-family:var(--e-global-typography-text-font-family,Rosario),Arial,sans-serif;font-size:13px;font-weight:400}

/* Isolate gallery controls from Elementor's site-wide button padding and skin. */
.feg-dialog button,.feg-gallery .feg-launch{padding:0;min-width:0;min-height:0;box-shadow:none;text-transform:none;letter-spacing:normal;outline-offset:3px}
.feg-dialog .feg-close{display:inline-flex;align-items:center;justify-content:center;padding:0;width:40px;height:40px;border:1px solid var(--e-global-color-felix_copper,#B78973);border-radius:50%;background:transparent;color:var(--feg-cream);font-size:30px;line-height:1}
.feg-dialog :is(.feg-prev,.feg-next){display:inline-flex;align-items:center;justify-content:center;padding:0;width:52px;height:52px;border:1px solid var(--e-global-color-felix_copper,#B78973);border-radius:50%;background:rgba(25,22,21,.75);color:var(--feg-cream);font-size:22px;line-height:1}
.feg-dialog .feg-thumb{display:block;padding:0;width:42px;height:51px;min-width:42px;border:2px solid transparent;border-radius:0;background:transparent}
.feg-dialog .feg-thumb[aria-current="true"]{border-color:var(--feg-cream)}
.feg-dialog .feg-next-text{padding:5px 0;border:0;border-radius:0;background:transparent;color:var(--feg-red)}
.feg-dialog .feg-photo-title{max-width:100%;overflow-wrap:anywhere}
@media(max-width:800px){.feg-dialog :is(.feg-prev,.feg-next){width:37px;height:37px;font-size:16px}.feg-dialog .feg-thumb{height:34px;width:30px;min-width:30px}}

.feg-dialog button:is(.feg-close,.feg-prev,.feg-next):is(:hover,:focus,:active){background:var(--feg-ink);color:var(--feg-cream);border-color:var(--e-global-color-felix_copper,#B78973)}
.feg-dialog button.feg-next-text:is(:hover,:focus,:active){background:transparent;color:var(--feg-red)}
.feg-dialog button.feg-thumb:is(:hover,:focus,:active){background:transparent}
