.gallery-page{--g-bg:#f5f0e7;--g-paper:#fffdf9;--g-paper2:#faf7f1;--g-ink:#141811;--g-muted:#73776e;--g-line:#ddd6ca;--g-gold:#c99a45;--g-dark:#10140f;--g-sage:#718778;--g-sage-soft:#e8eee9;--g-blue:#768b99;--g-blue-soft:#e9eef1;--g-rose:#a47d7b;--g-rose-soft:#f1e8e7;--g-terra:#aa7b60;--g-terra-soft:#f3e8e1;--g-olive:#8d8c63;--g-olive-soft:#efeee3;background:var(--g-bg);color:var(--g-ink);overflow:hidden}.gallery-page *{box-sizing:border-box}.gallery-page a{color:inherit;text-decoration:none}.gallery-page img{display:block;max-width:100%}.gallery-eyebrow{display:inline-flex;align-items:center;gap:9px;margin-bottom:8px;color:#6d7168;font-size:10px;font-weight:500}.gallery-eyebrow:before{content:"";width:26px;height:1px;background:var(--g-gold)}.gallery-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 25%,rgba(118,139,153,.10),transparent 21%),radial-gradient(circle at 88% 20%,rgba(201,154,69,.10),transparent 18%),linear-gradient(180deg,#faf7f1 0%,var(--g-bg) 100%);border-bottom:1px solid rgba(18,22,15,.045)}.gallery-hero__inner{min-height:180px;padding:38px 0 42px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:48px}.gallery-hero h1{margin:0;font-size:25px;font-weight:600;line-height:1.7;letter-spacing:-.3px}.gallery-hero p{max-width:690px;margin:8px 0 0;color:var(--g-muted);font-size:12.8px;line-height:2}.gallery-hero__note{padding-right:18px;border-right:2px solid var(--g-sage);color:#646960;font-size:11.5px;line-height:2}.gallery-showcase{padding:58px 0 64px}.gallery-showcase__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:24px;align-items:stretch}.gallery-compare-card{position:relative;overflow:hidden;border:1px solid var(--g-line);border-radius:20px;background:#d7d0c4;min-height:430px}.gallery-compare-stage{position:relative;width:100%;height:430px;overflow:hidden;background:#d7d0c4;user-select:none;touch-action:pan-y}.gallery-compare-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gallery-compare-image--before{z-index:1}.gallery-compare-after{position:absolute;inset:0;z-index:2;clip-path:inset(0 50% 0 0)}.gallery-compare-label{position:absolute;top:16px;z-index:5;padding:6px 10px;border-radius:999px;background:rgba(15,19,15,.72);backdrop-filter:blur(8px);color:#fff;font-size:9.5px}.gallery-compare-label--before{right:16px}.gallery-compare-label--after{left:16px}.gallery-compare-divider{position:absolute;top:0;bottom:0;left:50%;z-index:6;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06)}.gallery-compare-handle{position:absolute;top:50%;left:50%;z-index:7;width:48px;height:48px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid #fff;border-radius:50%;background:rgba(16,20,15,.88);color:#fff;font-size:16px;box-shadow:0 10px 26px rgba(0,0,0,.13);pointer-events:none}.gallery-compare-range{position:absolute;inset:0;z-index:8;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.gallery-compare-help{position:absolute;right:16px;bottom:16px;z-index:7;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.88);color:#585c54;font-size:9px}.gallery-featured-copy{border:1px solid var(--g-line);border-radius:20px;background:var(--g-paper);padding:27px 25px;display:flex;flex-direction:column;justify-content:center}.gallery-case-code{display:block;color:var(--g-sage);font-size:8.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.gallery-featured-copy h2{margin:4px 0 7px;font-size:21px;font-weight:600;line-height:1.75}.gallery-featured-copy p{margin:0 0 16px;color:var(--g-muted);font-size:12px;line-height:2}.gallery-case-meta,.gallery-modal__facts,.gallery-viewer-facts{border-top:1px solid var(--g-line)}.gallery-case-meta>div,.gallery-modal__facts>div,.gallery-viewer-facts>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--g-line);font-size:10.5px}.gallery-case-meta span,.gallery-modal__facts span,.gallery-viewer-facts span{color:#8b8e86}.gallery-case-meta strong,.gallery-modal__facts strong,.gallery-viewer-facts strong{font-weight:500}.gallery-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.gallery-btn{min-height:38px;padding:7px 12px;border:1px solid transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:10.8px;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.gallery-btn--dark{background:var(--g-dark);color:#fff;border-color:var(--g-dark)}.gallery-btn--dark:hover{border-color:var(--g-gold);color:#efd69f}.gallery-btn--ghost{border-color:var(--g-line);background:#fff;color:#62665d}.gallery-btn--ghost:hover{border-color:var(--g-sage);color:var(--g-sage)}.gallery-btn--gold{background:rgba(201,154,69,.16);border-color:#735b30;color:#fff}.gallery-btn--gold:hover{background:var(--g-gold);color:#12160f}.gallery-filter-bar{position:sticky;top:var(--sherafati-sticky-header-height,68px);z-index:18;background:rgba(245,240,231,.93);backdrop-filter:blur(14px);border-block:1px solid rgba(18,22,15,.05)}.gallery-filter-scroll{display:flex;align-items:center;gap:8px;padding:10px 0;overflow:auto;scrollbar-width:none}.gallery-filter-scroll::-webkit-scrollbar{display:none}.gallery-filter-btn{flex:0 0 auto;border:1px solid var(--g-line);background:rgba(255,255,255,.5);color:#62665d;border-radius:999px;padding:6px 12px;font:inherit;font-size:10.5px;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.gallery-filter-btn.is-active{background:var(--g-dark);border-color:var(--g-dark);color:#fff}.gallery-archive-section{padding:58px 0 66px;background:var(--g-paper2);border-bottom:1px solid rgba(18,22,15,.04)}.gallery-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:25px}.gallery-section-head h2{margin:0;font-size:21px;font-weight:600;line-height:1.8}.gallery-section-head p{margin:5px 0 0;color:var(--g-muted);font-size:12px;line-height:2}.gallery-result-count{font-size:10px;color:#858981;white-space:nowrap}.gallery-editorial-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:224px;gap:16px}.gallery-case-card{--tone:var(--g-sage);--tone-soft:var(--g-sage-soft);grid-column:span 5;position:relative;overflow:hidden;border:1px solid var(--g-line);border-radius:16px;background:var(--g-paper);min-width:0}.gallery-case-card.is-large{grid-column:span 7;grid-row:span 2}.gallery-case-card.is-wide{grid-column:span 7}.gallery-case-card[hidden]{display:none}.gallery-case-card__button{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;text-align:right;color:inherit;cursor:pointer}.gallery-case-card__image{position:absolute;inset:0;background:var(--tone-soft)}.gallery-case-card__image img{width:100%;height:100%;object-fit:cover}.gallery-case-card__image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(16,20,15,.73))}.gallery-case-card__badge{position:absolute;top:14px;right:14px;z-index:2;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.9);color:#555a52;font-size:8.8px}.gallery-case-card__body{position:absolute;right:0;bottom:0;left:0;z-index:2;padding:18px;color:#fff}.gallery-case-card__body small{display:block;color:#d8ddd6;font-size:8.5px}.gallery-case-card__body strong{display:block;margin:2px 0 3px;font-size:15px;font-weight:600;line-height:1.8}.gallery-case-card__body em{font-style:normal;color:#d6d9d3;font-size:9.5px}.gallery-case-card:hover{border-color:var(--tone)}.tone-sage{--tone:var(--g-sage);--tone-soft:var(--g-sage-soft)}.tone-blue{--tone:var(--g-blue);--tone-soft:var(--g-blue-soft)}.tone-rose{--tone:var(--g-rose);--tone-soft:var(--g-rose-soft)}.tone-terra{--tone:var(--g-terra);--tone-soft:var(--g-terra-soft)}.tone-olive{--tone:var(--g-olive);--tone-soft:var(--g-olive-soft)}.gallery-viewer-section{padding:64px 0}.gallery-case-viewer{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px}.gallery-case-viewer__main,.gallery-case-viewer__panel{border:1px solid var(--g-line);border-radius:18px;background:var(--g-paper);overflow:hidden}.gallery-case-viewer__stage{height:420px;position:relative;background:#eee}.gallery-case-viewer__stage>img{width:100%;height:100%;object-fit:contain;background:#ece8e0}.gallery-case-viewer__stage>span{position:absolute;right:16px;top:16px;padding:5px 8px;border-radius:999px;background:rgba(15,19,15,.76);color:#fff;font-size:8.8px}.gallery-case-viewer__thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px;overflow:auto}.gallery-viewer-thumb{min-width:86px;padding:0;border:1px solid var(--g-line);border-radius:10px;overflow:hidden;background:#fff;cursor:pointer}.gallery-viewer-thumb img{width:100%;height:62px;object-fit:cover}.gallery-viewer-thumb span{display:block;padding:4px 5px;color:#6d7168;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-viewer-thumb.is-active{border-color:var(--g-gold)}.gallery-case-viewer__panel{padding:24px;display:flex;flex-direction:column;justify-content:center;overflow:visible}.gallery-case-viewer__panel h3{margin:4px 0 7px;font-size:19px;font-weight:600}.gallery-case-viewer__panel p{margin:0 0 16px;color:var(--g-muted);font-size:11.5px;line-height:2}.gallery-story-section{padding:58px 0;background:var(--g-paper2);border-block:1px solid rgba(18,22,15,.04)}.gallery-story-grid{display:grid;grid-template-columns:280px 1fr;gap:38px}.gallery-story-intro h2{margin:0;font-size:21px;font-weight:600}.gallery-story-intro p{margin:6px 0 0;color:var(--g-muted);font-size:11.5px;line-height:2}.gallery-story-steps{border-top:1px solid var(--g-line)}.gallery-story-step{--tone:var(--g-sage);--tone-soft:var(--g-sage-soft);display:grid;grid-template-columns:42px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--g-line)}.gallery-story-step>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--tone-soft);color:var(--tone);font-size:9px;font-weight:600}.gallery-story-step h3{margin:0 0 3px;font-size:13.5px;font-weight:600}.gallery-story-step p{margin:0;color:var(--g-muted);font-size:10.8px;line-height:1.9}.gallery-final-cta{padding:58px 0 28px}.gallery-final-cta__box{min-height:150px;padding:28px 30px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(115deg,#10140f,#151b15 60%,#182019);color:#fff}.gallery-final-cta__box .gallery-eyebrow{color:#b7bbb3}.gallery-final-cta h2{margin:0;font-size:20px;font-weight:600}.gallery-final-cta p{margin:5px 0 0;color:#adb2aa;font-size:11.5px}.gallery-disclaimer{padding:0 0 46px}.gallery-disclaimer p{margin:0;padding-top:14px;border-top:1px solid var(--g-line);color:#8a8d85;font-size:9.5px;line-height:2}.gallery-empty{padding:30px;border:1px dashed var(--g-line);border-radius:16px;background:var(--g-paper);text-align:center}.gallery-empty strong{font-size:14px}.gallery-empty p{margin:5px 0 0;color:var(--g-muted);font-size:11px}.gallery-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(8,10,8,.84)}.gallery-modal.is-open{display:flex}.gallery-modal__dialog{width:min(100%,1040px);max-height:90vh;overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:var(--g-paper);box-shadow:0 25px 70px rgba(0,0,0,.28)}.gallery-modal__head{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid var(--g-line);background:rgba(255,253,249,.96);backdrop-filter:blur(10px)}.gallery-modal__head>div{display:grid}.gallery-modal__head span{color:#858981;font-size:8px}.gallery-modal__head strong{font-size:13px}.gallery-modal__head button{width:36px;height:36px;border:1px solid var(--g-line);border-radius:50%;background:#fff;cursor:pointer;font-size:20px}.gallery-modal__content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:0}.gallery-modal__visual{padding:18px;border-left:1px solid var(--g-line)}.gallery-modal__image-stage{position:relative;height:430px;border-radius:15px;overflow:hidden;background:#ece8e0}.gallery-modal__image-stage img{width:100%;height:100%;object-fit:contain}.gallery-modal__image-stage span{position:absolute;right:14px;top:14px;padding:5px 8px;border-radius:999px;background:rgba(15,19,15,.76);color:#fff;font-size:8.5px}.gallery-modal__compare{height:430px;border-radius:15px;overflow:hidden}.gallery-modal__compare .gallery-compare-stage{height:430px}.gallery-modal__thumbs{display:flex;gap:8px;overflow:auto;padding-top:10px;scrollbar-width:thin}.gallery-modal-thumb{flex:0 0 88px;padding:0;border:1px solid var(--g-line);border-radius:9px;overflow:hidden;background:#fff;cursor:pointer}.gallery-modal-thumb img{width:100%;height:62px;object-fit:cover}.gallery-modal-thumb span{display:block;padding:4px;color:#74776e;font-size:7.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-modal-thumb.is-active{border-color:var(--g-gold)}.gallery-modal__panel{padding:24px;display:flex;flex-direction:column;justify-content:center}.gallery-modal__panel h3{margin:4px 0 7px;font-size:19px;font-weight:600}.gallery-modal__panel p{margin:0 0 16px;color:var(--g-muted);font-size:11.5px;line-height:2}.gallery-modal-open{overflow:hidden}.gallery-reveal{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.gallery-reveal.is-visible{opacity:1;transform:none}.gallery-page :where(.gallery-case-card,.gallery-filter-btn,.gallery-btn,.gallery-viewer-thumb):hover{transform:none!important}
@media(max-width:960px){.gallery-hero__inner{grid-template-columns:1fr;gap:12px}.gallery-showcase__grid,.gallery-case-viewer{grid-template-columns:1fr}.gallery-story-grid{grid-template-columns:1fr}.gallery-modal__content{grid-template-columns:1fr}.gallery-modal__visual{border-left:0;border-bottom:1px solid var(--g-line)}}
@media(max-width:720px){.gallery-hero__inner{min-height:0;padding:26px 0 30px}.gallery-hero h1{font-size:22px}.gallery-hero p{font-size:11.8px}.gallery-hero__note{font-size:10.5px}.gallery-showcase{padding:40px 0 46px}.gallery-compare-card{min-height:285px;border-radius:16px}.gallery-compare-stage{height:285px}.gallery-compare-handle{width:42px;height:42px}.gallery-featured-copy{padding:19px 17px;border-radius:16px}.gallery-featured-copy h2{font-size:18px}.gallery-featured-copy p{font-size:11px}.gallery-filter-bar{position:relative;top:auto}.gallery-archive-section{padding:44px 0 50px}.gallery-section-head{align-items:flex-start}.gallery-section-head h2{font-size:19px}.gallery-result-count{display:none}.gallery-editorial-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:12px}.gallery-case-card,.gallery-case-card.is-large,.gallery-case-card.is-wide{grid-column:auto;grid-row:auto;height:255px}.gallery-case-card:nth-child(3n+1){height:305px}.gallery-viewer-section{padding:48px 0}.gallery-case-viewer__stage{height:270px}.gallery-case-viewer__thumbs{display:flex;overflow:auto}.gallery-viewer-thumb{flex:0 0 86px}.gallery-case-viewer__panel{padding:18px}.gallery-case-viewer__panel h3{font-size:17px}.gallery-story-section{padding:46px 0}.gallery-story-intro h2{font-size:19px}.gallery-final-cta{padding:46px 0 24px}.gallery-final-cta__box{min-height:0;flex-direction:column;align-items:flex-start;padding:22px 18px;border-radius:16px}.gallery-final-cta h2{font-size:18px}.gallery-modal{padding:10px}.gallery-modal__dialog{border-radius:16px}.gallery-modal__visual,.gallery-modal__panel{padding:12px}.gallery-modal__image-stage,.gallery-modal__compare,.gallery-modal__compare .gallery-compare-stage{height:290px}.gallery-modal__panel h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.gallery-reveal{opacity:1;transform:none;transition:none}}


/* =========================================================
   Gallery V2.1 — compare direction fix + professional polish
   ========================================================= */
.gallery-page{
  --g-shadow-soft:0 10px 34px rgba(23,28,20,.045);
}

/* Keep the visual comparator physical LTR even inside the RTL page. */
.gallery-compare-stage{
  cursor:ew-resize;
  touch-action:pan-y;
  isolation:isolate;
}
.gallery-compare-range{
  direction:ltr!important;
  pointer-events:none;
}
.gallery-compare-divider{
  width:1px;
  background:rgba(255,255,255,.96);
  box-shadow:0 0 0 1px rgba(16,20,15,.08),0 0 18px rgba(16,20,15,.10);
}
.gallery-compare-handle{
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.95);
  background:rgba(14,18,14,.90);
  box-shadow:0 8px 22px rgba(0,0,0,.16);
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.gallery-compare-stage.is-dragging .gallery-compare-handle,
.gallery-compare-stage.is-keyboard-focus .gallery-compare-handle{
  border-color:var(--g-gold);
  background:#151a14;
  box-shadow:0 0 0 4px rgba(201,154,69,.14),0 8px 22px rgba(0,0,0,.16);
}
.gallery-compare-stage.is-dragging .gallery-compare-divider{
  background:var(--g-gold);
}
.gallery-compare-help{
  right:50%;
  transform:translateX(50%);
  bottom:13px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(8px);
  white-space:nowrap;
}

/* More compact, information-first page rhythm. */
.gallery-hero__inner{
  min-height:160px;
  padding:32px 0 35px;
}
.gallery-hero h1{font-size:24px}
.gallery-showcase{padding:48px 0 54px}
.gallery-showcase__grid{
  grid-template-columns:minmax(0,1.48fr) minmax(285px,.52fr);
  gap:18px;
}
.gallery-compare-card{
  min-height:398px;
  border-radius:17px;
  box-shadow:var(--g-shadow-soft);
}
.gallery-compare-stage{height:398px}
.gallery-compare-label{
  top:13px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.2);
  font-size:8.8px;
}
.gallery-featured-copy{
  position:relative;
  overflow:hidden;
  padding:24px 22px;
  border-radius:17px;
  box-shadow:var(--g-shadow-soft);
}
.gallery-featured-copy:before{
  content:"";
  position:absolute;
  right:0;
  top:25px;
  width:3px;
  height:42px;
  border-radius:3px 0 0 3px;
  background:linear-gradient(180deg,var(--g-sage),var(--g-gold));
}
.gallery-featured-copy h2{font-size:19px;margin-top:3px}
.gallery-featured-copy p{font-size:11.5px;margin-bottom:12px}
.gallery-case-meta>div,
.gallery-modal__facts>div,
.gallery-viewer-facts>div{
  padding:8px 0;
  font-size:10px;
}
.gallery-actions{margin-top:14px}
.gallery-btn{min-height:36px;padding:6px 11px;font-size:10.2px}

.gallery-filter-bar{
  border-top:1px solid rgba(18,22,15,.045);
  border-bottom:1px solid rgba(18,22,15,.07);
  background:rgba(250,247,241,.94);
  box-shadow:0 5px 20px rgba(20,24,17,.025);
}
.gallery-filter-scroll{padding:9px 0}
.gallery-filter-btn{
  min-height:32px;
  padding:5px 11px;
  background:rgba(255,255,255,.72);
}
.gallery-filter-btn:not(.is-active):hover{
  border-color:#bdb4a7;
  background:#fff;
}
.gallery-filter-btn.is-active{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}

.gallery-archive-section{padding:50px 0 57px}
.gallery-section-head{margin-bottom:21px}
.gallery-section-head h2{font-size:20px}
.gallery-section-head p{font-size:11.5px}
.gallery-result-count{
  padding:5px 9px;
  border:1px solid var(--g-line);
  border-radius:999px;
  background:rgba(255,255,255,.62);
}
.gallery-editorial-grid{
  grid-auto-rows:205px;
  gap:13px;
}
.gallery-case-card{
  border-radius:14px;
  box-shadow:0 7px 24px rgba(23,28,20,.035);
}
.gallery-case-card__image:after{
  background:linear-gradient(180deg,transparent 48%,rgba(13,17,13,.76));
}
.gallery-case-card__badge{
  top:11px;
  right:11px;
  padding:4px 8px;
  border:1px solid color-mix(in srgb,var(--tone) 35%,#fff);
  background:color-mix(in srgb,var(--tone-soft) 82%,#fff);
  color:#4f554d;
  backdrop-filter:blur(5px);
}
.gallery-case-card__body{padding:15px 16px}
.gallery-case-card__body strong{font-size:14px}
.gallery-case-card__body em{font-size:9px}
.gallery-case-card:focus-within{
  border-color:var(--tone);
  outline:2px solid color-mix(in srgb,var(--tone) 18%,transparent);
  outline-offset:2px;
}

.gallery-viewer-section{padding:54px 0 57px}
.gallery-case-viewer{gap:18px}
.gallery-case-viewer__main,
.gallery-case-viewer__panel{
  border-radius:16px;
  box-shadow:var(--g-shadow-soft);
}
.gallery-case-viewer__stage{
  height:365px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 40%,rgba(255,255,255,.72),transparent 38%),
    #ece7de;
}
.gallery-case-viewer__stage>img{
  width:100%;
  height:100%;
  padding:12px;
  object-fit:contain;
  background:transparent;
}
.gallery-case-viewer__thumbs{gap:7px;padding:9px}
.gallery-viewer-thumb img{height:56px}
.gallery-case-viewer__panel{
  position:relative;
  padding:22px;
}
.gallery-case-viewer__panel:before{
  content:"";
  position:absolute;
  right:0;
  top:23px;
  width:3px;
  height:38px;
  background:var(--g-blue);
}
.gallery-case-viewer__panel h3{font-size:17px}
.gallery-case-viewer__panel p{font-size:10.8px;margin-bottom:13px}

.gallery-story-section{padding:50px 0}
.gallery-story-intro h2{font-size:19px}
.gallery-final-cta{padding:50px 0 24px}
.gallery-final-cta__box{
  min-height:132px;
  padding:24px 27px;
  border-radius:17px;
}
.gallery-final-cta h2{font-size:18px}
.gallery-disclaimer{padding-bottom:38px}

/* Modal compare uses the exact same corrected physical direction. */
.gallery-modal__compare .gallery-compare-range{direction:ltr!important;pointer-events:none}
.gallery-modal__compare .gallery-compare-help{display:none}
.gallery-modal__image-stage,
.gallery-modal__compare,
.gallery-modal__compare .gallery-compare-stage{height:390px}

@media(max-width:960px){
  .gallery-showcase__grid{grid-template-columns:1fr}
  .gallery-compare-card,.gallery-compare-stage{height:360px;min-height:360px}
}

@media(max-width:720px){
  .gallery-hero__inner{padding:23px 0 27px}
  .gallery-hero h1{font-size:21px}
  .gallery-showcase{padding:34px 0 40px}
  .gallery-compare-card,.gallery-compare-stage{height:245px;min-height:245px}
  .gallery-compare-handle{width:40px;height:40px;font-size:14px}
  .gallery-compare-help{bottom:9px;font-size:8px}
  .gallery-featured-copy{padding:17px 15px}
  .gallery-featured-copy h2{font-size:17px}
  .gallery-filter-scroll{padding:8px 0}
  .gallery-filter-btn{min-height:30px;padding:4px 9px;font-size:9.5px}
  .gallery-archive-section{padding:39px 0 44px}
  .gallery-editorial-grid{gap:10px}
  .gallery-case-card,.gallery-case-card.is-large,.gallery-case-card.is-wide{height:235px}
  .gallery-case-card:nth-child(3n+1){height:280px}
  .gallery-case-card__body{padding:13px}
  .gallery-viewer-section{padding:42px 0 45px}
  .gallery-case-viewer__stage{height:245px}
  .gallery-case-viewer__stage>img{padding:8px}
  .gallery-case-viewer__panel{padding:16px}
  .gallery-story-section{padding:40px 0}
  .gallery-final-cta{padding:40px 0 22px}
  .gallery-final-cta__box{padding:19px 16px}
  .gallery-modal__image-stage,
  .gallery-modal__compare,
  .gallery-modal__compare .gallery-compare-stage{height:260px}
}

/* =========================================================
   Gallery V2.2 — final interaction fixes
   ========================================================= */

/* Theme/global anchor rules must never turn dark CTA text black. */
.gallery-page a.gallery-btn--dark,
.gallery-page button.gallery-btn--dark,
.gallery-page .gallery-btn--dark,
.gallery-page a.gallery-btn--dark:visited,
.gallery-page button.gallery-btn--dark:visited{
  color:#fff!important;
  background:var(--g-dark)!important;
  border-color:var(--g-dark)!important;
}
.gallery-page a.gallery-btn--dark:hover,
.gallery-page button.gallery-btn--dark:hover,
.gallery-page a.gallery-btn--dark:focus-visible,
.gallery-page button.gallery-btn--dark:focus-visible{
  color:#efd69f!important;
  background:#171c16!important;
  border-color:var(--g-gold)!important;
}
.gallery-page .gallery-btn--dark svg,
.gallery-page .gallery-btn--dark path{
  color:currentColor!important;
  stroke:currentColor;
}

/* Active filter is also a dark control and must keep white text. */
.gallery-page .gallery-filter-btn.is-active,
.gallery-page .gallery-filter-btn.is-active:hover,
.gallery-page .gallery-filter-btn.is-active:focus-visible{
  color:#fff!important;
  background:var(--g-dark)!important;
  border-color:var(--g-dark)!important;
}

/* Before/after images must never enter the browser's native drag mode. */
.gallery-page .gallery-compare-stage,
.gallery-page .gallery-compare-stage *{
  -webkit-user-select:none;
  user-select:none;
}
.gallery-page .gallery-compare-stage img,
.gallery-page .gallery-compare-image{
  -webkit-user-drag:none!important;
  user-drag:none!important;
  pointer-events:none!important;
  -webkit-touch-callout:none;
}
.gallery-page .gallery-compare-stage{
  cursor:ew-resize;
}
.gallery-page .gallery-compare-stage.is-dragging{
  cursor:grabbing;
}

