/* Recess Classes Manager: dynamic gallery ONLY. All other page layout stays in Avada. */
.rscm-gallery {--rscm-gold:#c9a468;--rscm-ink:#101314;--rscm-line:rgba(255,255,255,.15);width:100%;min-width:0;max-width:100%;color:#f5f1eb;font-family:Poppins,Arial,sans-serif;display:block!important}
.rscm-gallery * {box-sizing:border-box}
.rscm-gallery button {font-family:inherit;touch-action:manipulation}
.rscm-gallery .rscm-gallery__toolbar {display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid var(--rscm-line)}
.rscm-gallery .rscm-gallery__filters {display:flex;gap:7px;flex-wrap:wrap}
.rscm-gallery .rscm-gallery__filter {appearance:none;cursor:pointer;border:1px solid #4b524e;background:transparent;color:#f5f1eb;padding:12px 14px;min-height:44px;line-height:1.2;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700;border-radius:0}
.rscm-gallery .rscm-gallery__filter[aria-pressed="true"] {color:#151818;background:var(--rscm-gold);border-color:var(--rscm-gold)}
.rscm-gallery .rscm-gallery__filter:hover {border-color:#e1bf84}
.rscm-gallery .rscm-gallery__count {white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:#babebc;font-size:12px}
/* Only the gallery area is managed by the plugin. Strong selectors guard against Avada resets. */
.rscm-gallery .rscm-gallery__grid {display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:13px!important;align-items:stretch;width:100%;min-width:0}
.rscm-gallery .rscm-gallery__card {display:flex!important;grid-column:span 3!important;position:relative;isolation:isolate;overflow:hidden;align-items:flex-end;text-align:left;min-width:0;width:100%;min-height:340px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:0;background:#222927;color:#fff;cursor:pointer;appearance:none;line-height:1.3}
.rscm-gallery[data-layout="editorial"] .rscm-gallery__card--wide {grid-column:span 6!important}
.rscm-gallery[data-layout="uniform"][data-columns="2"] .rscm-gallery__card {grid-column:span 6!important}
.rscm-gallery[data-layout="uniform"][data-columns="3"] .rscm-gallery__card {grid-column:span 4!important}
.rscm-gallery[data-layout="uniform"][data-columns="4"] .rscm-gallery__card {grid-column:span 3!important}
.rscm-gallery .rscm-gallery__card[hidden] {display:none!important}
.rscm-gallery .rscm-gallery__card img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.8) saturate(.83);transition:transform .35s ease,filter .35s ease}
.rscm-gallery .rscm-gallery__card:hover img,.rscm-gallery .rscm-gallery__card:focus-visible img {transform:scale(1.045);filter:brightness(.91) saturate(.95)}
.rscm-gallery .rscm-gallery__shade {position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.87),transparent 62%),linear-gradient(180deg,rgba(0,0,0,.35),transparent 35%)}
.rscm-gallery .rscm-gallery__category {position:absolute;top:20px;left:20px;color:#edcd96;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.rscm-gallery .rscm-gallery__footer {width:100%;padding:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.rscm-gallery .rscm-gallery__footer strong {color:#fff;font-size:clamp(19px,2.1vw,30px);font-weight:750;letter-spacing:-.02em;line-height:1.04;display:block;overflow-wrap:anywhere}
.rscm-gallery .rscm-gallery__footer small {display:block;font-size:12px;color:#eee;margin-top:10px}
.rscm-gallery .rscm-gallery__arrow {width:38px;height:38px;min-width:38px;display:grid;place-items:center;border:1px solid var(--rscm-gold);color:var(--rscm-gold);font-size:22px}
.rscm-gallery :is(button,a):focus-visible {outline:3px solid #f3ce90;outline-offset:3px}
.rscm-gallery__dialog {position:fixed;width:min(780px,calc(100vw - 30px));max-width:100%;max-height:min(92dvh,900px);overflow:auto;border:1px solid rgba(201,164,104,.4);padding:0;background:#111616;color:#f6f1e9;box-shadow:0 25px 90px rgba(0,0,0,.65);font-family:Poppins,Arial,sans-serif}
.rscm-gallery__dialog::backdrop {background:rgba(0,0,0,.8);backdrop-filter:blur(9px)}
.rscm-gallery__dialog * {box-sizing:border-box}
.rscm-gallery__dialog-content {padding:clamp(20px,3vw,36px)}
.rscm-gallery__dialog-head {display:flex;justify-content:space-between;align-items:center;gap:12px}
.rscm-gallery__dialog-head span {font-size:11px;color:#d8b47a;letter-spacing:.15em;font-weight:600}
.rscm-gallery__close {min-height:44px;border:1px solid #53605b;color:white;background:transparent;cursor:pointer;padding:10px 15px;font-size:12px}
.rscm-gallery__dialog-category {color:#c9a468;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600;margin:25px 0 8px}
.rscm-gallery__dialog h2 {font:750 clamp(30px,4vw,46px)/1.12 Poppins,Arial,sans-serif;color:#fff;margin:0 0 17px}
.rscm-gallery__dialog-photo {width:100%;aspect-ratio:16/9;overflow:hidden;background:#26302d;margin:0 0 22px}
.rscm-gallery__dialog-photo img {display:block;width:100%;height:100%;object-fit:cover}
.rscm-gallery__dialog-photo.is-missing {display:none}
.rscm-gallery__dialog-description {color:#e2dfd8;font:400 15px/1.7 Poppins,Arial,sans-serif;margin-bottom:18px}
.rscm-gallery__dialog-description :is(p,ul,ol) {margin:0 0 13px;color:inherit}
.rscm-gallery__dialog-meta {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0 25px;gap:16px}
.rscm-gallery__dialog-meta>div {border-top:1px solid #48534e;padding-top:12px}
.rscm-gallery__dialog-meta dt {color:#d1ad76;font-weight:700;font-size:11px;letter-spacing:.12em;margin-bottom:7px}
.rscm-gallery__dialog-meta dd {margin:0;color:#f2eee5;font-size:14px;white-space:pre-line;line-height:1.6}
.rscm-gallery__dialog-cta {display:block;text-align:center;padding:16px;background:#c9a468;color:#101314!important;font-weight:700;font-size:12px;letter-spacing:.08em;text-decoration:none!important}
.rscm-gallery__dialog-cta[hidden] {display:none!important}
.rscm-gallery__dialog-note {font-size:12px;line-height:1.6;color:#b9beb9;margin:18px 0 0}
.rscm-gallery__dialog :is(button,a):focus-visible{outline:3px solid #f4d69f;outline-offset:3px}
@media (max-width:1024px) {
 .rscm-gallery .rscm-gallery__card {grid-column:span 6!important;min-height:300px}
 .rscm-gallery[data-layout="editorial"] .rscm-gallery__card--wide {grid-column:span 6!important}
 .rscm-gallery[data-layout="uniform"] .rscm-gallery__card {grid-column:span 6!important}
}
@media (max-width:600px) {
 .rscm-gallery .rscm-gallery__grid {gap:12px!important}
 .rscm-gallery .rscm-gallery__card,.rscm-gallery[data-layout="editorial"] .rscm-gallery__card--wide,.rscm-gallery[data-layout="uniform"] .rscm-gallery__card {grid-column:span 12!important;min-height:320px}
 .rscm-gallery .rscm-gallery__footer strong {font-size:25px}
}
@media(max-width:580px){.rscm-gallery__dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border:0}.rscm-gallery__dialog-content{padding:22px 18px max(30px,env(safe-area-inset-bottom))}.rscm-gallery__dialog-photo{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.rscm-gallery .rscm-gallery__card img{transition:none;transform:none!important}.rscm-gallery__dialog::backdrop{backdrop-filter:none}}

/* v0.1.5: avoid shrink-to-fit when the shortcode sits inside an Avada flex column. */
.rscm-gallery { container-type:normal!important; inline-size:auto; width:100%!important; max-width:none!important; margin-inline:0; }
.rscm-gallery .rscm-gallery__grid{display:grid!important;width:100%!important;min-width:0!important;grid-auto-flow:row dense!important;}
.rscm-gallery .rscm-gallery__card{box-sizing:border-box!important;max-width:none!important;float:none!important;flex:none!important;margin:0!important;}
@media(max-width:1024px){.rscm-gallery .rscm-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.rscm-gallery .rscm-gallery__card,.rscm-gallery[data-layout=editorial] .rscm-gallery__card--wide,.rscm-gallery[data-layout=uniform] .rscm-gallery__card{grid-column:auto!important}}
@media(max-width:600px){.rscm-gallery .rscm-gallery__grid{grid-template-columns:minmax(0,1fr)!important}.rscm-gallery .rscm-gallery__card,.rscm-gallery[data-layout=editorial] .rscm-gallery__card--wide,.rscm-gallery[data-layout=uniform] .rscm-gallery__card{grid-column:auto!important}}
