/* BW Sauna Co. Build Map
   Everything is scoped to .bwm or .bwm-modal. Nothing targets a bare element,
   an id, or a theme class. The !important rules exist only to beat Elementor's
   global button and heading colours and are never used for layout. */

@property --bwm-edge{syntax:'<length>';inherits:true;initial-value:0px;}

.bwm{
  --bwm-gold:#CBAC57;
  --bwm-sage:#C7CDB0;
  --bwm-ink:#1D201E;
  --bwm-cream:#F6F5F3;
  --bwm-line:rgba(214,222,200,.19);
  --bwm-land:rgba(52,62,48,.62);
  --bwm-chip-ink:#3A2E1F;
  --bwm-pin:1;
  --bwm-edge:0px;
  --bwm-edge-on:100px;
  transition:--bwm-edge .55s ease;
  position:relative;width:100%;
  font-family:'Montserrat','Helvetica Neue',Helvetica,Arial,sans-serif;
  font-weight:500;font-size:16px;color:var(--bwm-cream);
  -webkit-font-smoothing:antialiased;
  -webkit-tap-highlight-color:transparent;
}
.bwm *,.bwm *::before,.bwm *::after{box-sizing:border-box;}
.bwm ::selection{background:rgba(203,172,87,.35);color:#F6F5F3;}

/* ---------------- Elementor and theme armour ----------------
   Themes and Elementor set button and link colours globally, which is what
   turned the locate button pink and the gold button gold on gold. */
.bwm button,
.bwm-modal button,
.bwm-modal a.bwm-btn{
  -webkit-appearance:none !important;
  appearance:none !important;
  box-shadow:none !important;
  text-shadow:none !important;
  -webkit-tap-highlight-color:transparent;
}
.bwm button:hover,.bwm button:focus,.bwm button:active,
.bwm-modal button:hover,.bwm-modal button:focus,.bwm-modal button:active,
.bwm-modal a.bwm-btn:hover,.bwm-modal a.bwm-btn:focus,.bwm-modal a.bwm-btn:active{
  box-shadow:none !important;
  text-decoration:none !important;
}

/* ---------------- map ---------------- */
.bwm-frame{position:relative;width:100%;}
.bwm-stage{position:relative;width:100%;overflow:hidden;cursor:grab;touch-action:pan-y;
  -webkit-mask-image:
    linear-gradient(to right,transparent 0,#000 var(--bwm-edge),#000 calc(100% - var(--bwm-edge)),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--bwm-edge),#000 calc(100% - var(--bwm-edge)),transparent 100%);
  mask-image:
    linear-gradient(to right,transparent 0,#000 var(--bwm-edge),#000 calc(100% - var(--bwm-edge)),transparent 100%),
    linear-gradient(to bottom,transparent 0,#000 var(--bwm-edge),#000 calc(100% - var(--bwm-edge)),transparent 100%);
  -webkit-mask-composite:source-in;
  mask-composite:intersect;
  border-radius:0;
  transition:border-radius .55s ease;
}
.bwm.is-zoomed{--bwm-edge:var(--bwm-edge-on);}
.bwm.is-zoomed .bwm-stage{touch-action:none;border-radius:72px;}
.bwm.is-dragging .bwm-stage{cursor:grabbing;}
.bwm.is-dragging .bwm-pin{pointer-events:none;}
.bwm-world{position:absolute;inset:0;transform-origin:50% 50%;}
.bwm.is-moving .bwm-world{will-change:transform;}
.bwm-glass{position:absolute;inset:0;
  background:linear-gradient(158deg,rgba(255,255,255,.07) 0%,rgba(0,0,0,.10) 100%),var(--bwm-land);
  filter:drop-shadow(0 14px 30px rgba(0,0,0,.46)) drop-shadow(0 0 18px rgba(203,172,87,.10));
  opacity:0;transition:opacity .8s ease;}
.bwm.is-in .bwm-glass{opacity:1;}
.bwm.is-moving .bwm-glass{filter:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
.bwm-lines,.bwm-pins{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}
.bwm-lines path{fill:rgba(198,210,186,.045);stroke:var(--bwm-line);stroke-width:calc(.85 / var(--k,1));
  stroke-linejoin:round;opacity:0;}
.bwm.is-in .bwm-lines path{animation:bwm-tile .62s cubic-bezier(.22,.85,.3,1) var(--sd,0s) forwards;}
.bwm.is-settled .bwm-lines path{opacity:1;animation:none;}
@keyframes bwm-tile{from{opacity:0;}to{opacity:1;}}

/* ---------------- pins ---------------- */
.bwm-pin{cursor:pointer;outline:none;--body:var(--bwm-sage);}
.bwm-pin--public{--body:var(--bwm-gold);}
.bwm-anim{opacity:0;}
.bwm-hit{fill:transparent;}
.bwm-shape{transform-box:fill-box;transform-origin:50% 100%;
  transform:scale(var(--bwm-pin));transition:transform .18s cubic-bezier(.2,.8,.2,1);}
.bwm-pin:hover .bwm-shape,.bwm-pin.is-open .bwm-shape,.bwm-pin:focus-visible .bwm-shape{
  transform:scale(calc(var(--bwm-pin) * 1.22));}
.bwm-body{fill:var(--body);stroke:var(--bwm-cream);stroke-width:1.4;stroke-linejoin:round;}
.bwm-nophoto{fill:rgba(20,24,19,.5);}
.bwm-shot-pin{pointer-events:none;}
.bwm-glow{fill:var(--body);opacity:0;filter:blur(2.8px);transform-box:fill-box;transform-origin:50% 100%;
  transform:scale(1.3);transition:opacity .22s ease;}
.bwm-pin--public:not(.bwm-pin--soon) .bwm-glow{animation:bwm-pulse 3.2s ease-in-out infinite;}
.bwm-pin:hover .bwm-glow,.bwm-pin.is-open .bwm-glow,.bwm-pin:focus-visible .bwm-glow{opacity:.55;animation:none;}
.bwm-pin--soon .bwm-body{fill:rgba(29,32,30,.85);stroke:var(--bwm-gold);stroke-width:1.8;}
.bwm-pin--soon .bwm-shot-pin{opacity:.55;}
.bwm-badge circle{fill:var(--bwm-ink);stroke:var(--bwm-cream);stroke-width:1;}
.bwm-badge text{fill:var(--bwm-cream);font-family:'Montserrat',Arial,sans-serif;font-size:8px;font-weight:700;text-anchor:middle;}
@keyframes bwm-pulse{0%,100%{opacity:.14;}50%{opacity:.44;}}
@keyframes bwm-drop{from{opacity:0;transform:translateY(-15px);}to{opacity:1;transform:translateY(0);}}
.bwm.is-in .bwm-anim{animation:bwm-drop .5s cubic-bezier(.2,.9,.25,1) var(--d) forwards;}
.bwm.is-settled .bwm-anim{opacity:1;animation:none;}
.bwm[data-filter="public"] .bwm-pin--private .bwm-anim,
.bwm[data-filter="private"] .bwm-pin--public .bwm-anim{opacity:.10;animation:none;}
.bwm[data-filter="public"] .bwm-pin--private,
.bwm[data-filter="private"] .bwm-pin--public{pointer-events:none;}

.bwm-me[hidden]{display:none;}
.bwm-me .bwm-me-dot{fill:var(--bwm-cream);stroke:#12140F;stroke-width:1.2;}
.bwm-me .bwm-me-ring{fill:none;stroke:var(--bwm-cream);stroke-width:1.1;opacity:.5;
  transform-box:fill-box;transform-origin:center;animation:bwm-ring 2.4s ease-out infinite;}
@keyframes bwm-ring{0%{transform:scale(.5);opacity:.65;}100%{transform:scale(2.4);opacity:0;}}

/* ---------------- zoom cluster (outside the stage so the edge mask misses it) ---------------- */
.bwm-zoom{position:absolute;right:16px;bottom:16px;z-index:5;}
.bwm .bwm-zoom button{width:40px;height:40px;padding:0;border-radius:50% !important;display:grid;place-items:center;
  border:1px solid rgba(214,222,200,.28) !important;background:rgba(20,24,20,.72) !important;color:#D6DCC8 !important;
  cursor:pointer;line-height:1;opacity:1;
  transition:border-color .16s ease,color .16s ease,background .16s ease,opacity .25s ease;}
@supports (backdrop-filter:blur(6px)){.bwm .bwm-zoom button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}}
.bwm .bwm-zoom button:hover{border-color:var(--bwm-gold) !important;color:var(--bwm-gold) !important;background:rgba(20,24,20,.9) !important;}
.bwm .bwm-zoom button:focus-visible{outline:2px solid var(--bwm-gold) !important;outline-offset:2px;}
.bwm .bwm-zoom button[hidden]{opacity:0;pointer-events:none;}

/* ---------------- control band ---------------- */
.bwm-ui{display:grid;gap:12px;width:60%;margin:22px auto 0;}
.bwm-ui-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;}

.bwm-chips{gap:4px;}
.bwm .bwm-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:8px 14px 10px;
  border-radius:0 !important;border:0 !important;background:none !important;color:var(--bwm-chip-ink) !important;
  font-size:.75em;font-weight:700;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;position:relative;
  opacity:.58;transition:color .18s ease,opacity .18s ease;}
.bwm .bwm-chip::after{content:'';position:absolute;left:14px;right:14px;bottom:2px;height:2px;
  background:var(--bwm-gold);transform:scaleX(0);transition:transform .22s cubic-bezier(.2,.85,.3,1);}
.bwm .bwm-chip b{font-weight:500;opacity:.55;letter-spacing:.02em;}
.bwm .bwm-chip:hover{opacity:1;color:var(--bwm-chip-ink) !important;}
.bwm .bwm-chip.is-on{opacity:1;color:var(--bwm-chip-ink) !important;}
.bwm .bwm-chip.is-on::after{transform:scaleX(1);}
.bwm .bwm-chip:focus-visible{outline:2px solid var(--bwm-gold) !important;outline-offset:2px;}

.bwm-find{display:flex;align-items:center;gap:0;width:100%;max-width:520px;padding:5px 5px 5px 6px;
  border-radius:44px;border:1px solid rgba(214,222,200,.30);background:rgba(24,28,23,.62);
  box-shadow:0 10px 26px rgba(0,0,0,.18);}
@supports (backdrop-filter:blur(6px)){
  .bwm-find{-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);}
}
.bwm-find:focus-within{border-color:rgba(203,172,87,.7);}
.bwm-sep{flex:0 0 auto;width:1px;height:22px;margin:0 4px;background:rgba(214,222,200,.24);}
.bwm .bwm-input{flex:1 1 auto;min-width:0;padding:10px 16px;border-radius:40px !important;
  border:0 !important;background:transparent !important;color:var(--bwm-cream) !important;
  font-family:inherit;font-size:.875em;font-weight:500;box-shadow:none !important;}
.bwm .bwm-input::placeholder{color:rgba(214,222,200,.66);}
.bwm .bwm-input:focus{outline:none;box-shadow:none !important;}
.bwm .bwm-go{flex:0 0 auto;padding:11px 20px;border-radius:40px !important;
  border:1px solid rgba(203,172,87,.75) !important;background:var(--bwm-ink) !important;color:var(--bwm-cream) !important;
  font-size:.75em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;white-space:nowrap;
  transition:background .18s ease,border-color .18s ease;}
.bwm .bwm-go:hover{background:#262B24 !important;border-color:var(--bwm-gold) !important;color:var(--bwm-cream) !important;}
.bwm .bwm-geo{flex:0 0 auto;width:38px;height:38px;border-radius:50% !important;padding:0;display:grid;place-items:center;
  border:0 !important;background:transparent !important;color:#E4E9DC !important;
  cursor:pointer;transition:color .18s ease,background .18s ease;}
.bwm .bwm-geo:hover{color:var(--bwm-gold) !important;background:rgba(214,222,200,.12) !important;}
.bwm .bwm-go:focus-visible,.bwm .bwm-geo:focus-visible{outline:2px solid var(--bwm-gold) !important;outline-offset:2px;}
.bwm-status{margin:0;text-align:center;}
.bwm-status:not(:empty){display:inline-block;align-self:center;padding:.5em 1.1em;border-radius:40px;
  background:rgba(24,28,23,.94);font-size:.8125em;font-weight:500;color:#D3DAC6;}
.bwm-status:empty{display:none;}

.bwm-near{display:grid;gap:6px;margin:0;}
.bwm-near[hidden]{display:none;}
.bwm-near-h{display:inline-block;align-self:start;margin:0 0 2px;padding:.5em 1.1em;border-radius:40px;
  background:rgba(24,28,23,.94);font-size:.6875em;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--bwm-gold);}
.bwm .bwm-hit-row{display:flex;align-items:baseline;gap:10px;width:100%;text-align:left;padding:10px 14px;
  border-radius:12px !important;border:1px solid rgba(214,222,200,.18) !important;background:rgba(24,28,23,.94) !important;
  color:var(--bwm-cream) !important;cursor:pointer;transition:border-color .18s ease,background .18s ease;}
.bwm .bwm-hit-row:hover{border-color:rgba(203,172,87,.6) !important;background:rgba(31,36,29,.97) !important;}
.bwm .bwm-hit-row:focus-visible{outline:2px solid var(--bwm-gold) !important;outline-offset:2px;}
.bwm-hit-name{font-size:.875em;font-weight:600;}
.bwm-hit-city{font-size:.78em;font-weight:500;color:#AEB7A0;}
.bwm-hit-mi{margin-left:auto;font-size:.75em;font-weight:700;letter-spacing:.06em;color:var(--bwm-gold);white-space:nowrap;}

/* ---------------- location list ---------------- */
.bwm-list,.bwm-list-h{display:none;}
.bwm-list-h{font-size:.6875em;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bwm-gold);margin:6px 0 0;}
.bwm .bwm-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:11px 12px;
  border:0 !important;border-bottom:1px solid rgba(214,222,200,.12) !important;background:none !important;
  color:var(--bwm-cream) !important;cursor:pointer;border-radius:0 !important;}
.bwm .bwm-row:last-child{border-bottom:0 !important;}
.bwm .bwm-row:hover{background:rgba(214,222,200,.06) !important;}
.bwm .bwm-row:focus-visible{outline:2px solid var(--bwm-gold) !important;outline-offset:-2px;}
.bwm-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--bwm-sage);}
.bwm-row--public .bwm-dot{background:var(--bwm-gold);}
.bwm-row--soon .bwm-dot{background:none;box-shadow:inset 0 0 0 2px var(--bwm-gold);}
.bwm-rname{font-size:.875em;font-weight:600;line-height:1.3;}
.bwm-rcity{font-size:.75em;font-weight:500;color:#A9B199;margin-left:auto;text-align:right;white-space:nowrap;}
.bwm[data-filter="public"] .bwm-row--private,
.bwm[data-filter="private"] .bwm-row--public{display:none;}

/* ================= detail modal ================= */
.bwm-modal{position:fixed;inset:0;z-index:99990;display:grid;place-items:center;padding:4vh 4vw;
  font-family:'Montserrat','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;
  -webkit-tap-highlight-color:transparent;}
.bwm-modal[hidden]{display:none;}
.bwm-modal *,.bwm-modal *::before,.bwm-modal *::after{box-sizing:border-box;}
.bwm-modal ::selection{background:rgba(203,172,87,.35);color:#F6F5F3;}
.bwm-modal .bwm-scrim{position:absolute;inset:0;background:rgba(8,10,8,.62) !important;border:0 !important;padding:0;
  cursor:pointer;border-radius:0 !important;animation:bwm-fade .25s ease;}
@supports (backdrop-filter:blur(4px)){.bwm-modal .bwm-scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}}
@keyframes bwm-fade{from{opacity:0;}to{opacity:1;}}
@keyframes bwm-rise{from{opacity:0;transform:translateY(14px) scale(.985);}to{opacity:1;transform:none;}}

.bwm-card{position:relative;width:min(1120px,100%);max-height:92vh;overflow:auto;-webkit-overflow-scrolling:touch;
  display:grid;grid-template-columns:1.04fr 1fr;
  font-size:16px;line-height:1.5;color:#F6F5F3;
  background-color:#171B16;background-image:var(--bwm-texture,none);
  background-size:cover;background-position:center;
  border:1px solid rgba(214,222,200,.18);border-radius:18px;
  box-shadow:0 40px 90px rgba(0,0,0,.6);
  animation:bwm-rise .34s cubic-bezier(.2,.85,.25,1);}
/* dark green over the texture: 87 per cent at the top, 95 per cent at the bottom */
.bwm-card::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;border-radius:inherit;
  background:linear-gradient(180deg,rgba(26,31,24,.87) 0%,rgba(22,27,21,.91) 50%,rgba(17,21,16,.95) 100%);}
.bwm-card > *{position:relative;z-index:1;}

.bwm-modal .bwm-close{position:absolute;top:.9em;right:.9em;z-index:4;width:2.2em;height:2.2em;
  border-radius:50% !important;padding:0;display:grid;place-items:center;
  border:1px solid rgba(214,222,200,.32) !important;background:rgba(16,19,15,.78) !important;color:#CDD3C0 !important;
  font-size:1em;line-height:1;cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease;}
.bwm-modal .bwm-close:hover{color:#F6F5F3 !important;border-color:#CBAC57 !important;background:rgba(16,19,15,.92) !important;}
.bwm-modal .bwm-close:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:2px;}

.bwm-col{padding:3.1em 2.9em;min-width:0;}
.bwm-head{display:flex;align-items:center;justify-content:space-between;gap:1em;flex-wrap:wrap;
  padding-right:2.6em;margin:0 0 .1em;}
.bwm-modal .bwm-eyebrow{margin:0;font-size:1.0625em;font-weight:700;line-height:1.35;color:#CBAC57 !important;}
.bwm-head-right{display:flex;align-items:center;gap:.5em;flex-wrap:wrap;}
.bwm-modal .bwm-soc{display:inline-flex;align-items:center;justify-content:center;width:2em;height:2em;
  border-radius:50% !important;border:1px solid rgba(214,222,200,.28) !important;background:transparent !important;
  color:#CBD0C2 !important;text-decoration:none !important;
  transition:color .18s ease,border-color .18s ease,background .18s ease;}
.bwm-modal .bwm-soc:hover{color:var(--bwm-gold,#CBAC57) !important;border-color:rgba(203,172,87,.6) !important;
  background:rgba(203,172,87,.12) !important;}
.bwm-modal .bwm-soc:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:2px;}
.bwm-modal .bwm-title{margin:.22em 0 .5em;font-size:clamp(1.75em,3.4vw,2.5em);font-weight:700;line-height:1.1;
  letter-spacing:-.012em;color:#F6F5F3 !important;font-family:inherit;}
.bwm-modal .bwm-desc{margin:0;font-size:1em;font-weight:500;line-height:1.62;color:#CBD1C3 !important;}

/* long copy collapses to a readable block with a toggle */
.bwm-desc-wrap{position:relative;}
.bwm-desc-wrap.is-clamped .bwm-desc{max-height:11.4em;overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom,#000 72%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 72%,transparent 100%);}
.bwm-modal .bwm-more{margin:.55em 0 0;padding:0;border:0 !important;background:none !important;
  color:#CBAC57 !important;font-family:inherit;font-size:.8125em;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;cursor:pointer;display:none;border-radius:0 !important;}
.bwm-desc-wrap.has-more .bwm-more{display:inline-flex;align-items:center;gap:.4em;}
.bwm-modal .bwm-more:hover{color:#DCC079 !important;}
.bwm-modal .bwm-more:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:3px;}
.bwm-more svg{transition:transform .2s ease;}
.bwm-desc-wrap:not(.is-clamped) .bwm-more svg{transform:rotate(180deg);}

.bwm-modal .bwm-specs{margin:1.7em 0 0;padding:0;list-style:none;display:grid;gap:.58em;}
.bwm-modal .bwm-spec{position:relative;margin:0;padding-left:1.15em;font-size:1em;line-height:1.45;
  color:#F6F5F3 !important;font-weight:500;}
.bwm-modal .bwm-spec::before{content:'';position:absolute;left:0;top:.62em;width:5px;height:5px;
  border-radius:50%;background:#CBAC57;}
.bwm-modal .bwm-spec b{font-weight:700;color:#F6F5F3 !important;}
.bwm-modal .bwm-tag{display:inline-flex;align-items:center;gap:.45em;margin:0;padding:.36em 1em;
  border-radius:30px !important;font-size:.6875em;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:#CBD0C2 !important;border:1px solid rgba(214,222,200,.28) !important;background:transparent !important;
  text-decoration:none !important;white-space:nowrap;transition:color .18s ease,border-color .18s ease,background .18s ease;}
.bwm-modal .bwm-tag--public{color:#CBAC57 !important;border-color:rgba(203,172,87,.55) !important;}
.bwm-modal a.bwm-tag:hover{color:#F6F5F3 !important;background:rgba(203,172,87,.18) !important;border-color:#CBAC57 !important;}
.bwm-modal a.bwm-tag:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:2px;}

.bwm-acts{display:flex;flex-wrap:wrap;gap:.8em;margin:2.1em 0 0;}
.bwm-modal .bwm-btn{display:inline-flex;align-items:center;justify-content:center;padding:.86em 2em;
  border-radius:40px !important;font-size:.9375em;font-weight:600;line-height:1;text-decoration:none !important;
  cursor:pointer;border:1px solid rgba(214,222,200,.34) !important;background:rgba(214,222,200,.10) !important;
  color:#F6F5F3 !important;transition:background .18s ease,border-color .18s ease,color .18s ease;}
.bwm-modal .bwm-btn:hover{background:rgba(214,222,200,.20) !important;border-color:rgba(214,222,200,.55) !important;color:#F6F5F3 !important;}
.bwm-modal .bwm-btn--gold{background:#1D201E !important;border-color:rgba(203,172,87,.8) !important;color:#F6F5F3 !important;}
.bwm-modal .bwm-btn--gold:hover{background:#262B24 !important;border-color:#CBAC57 !important;color:#F6F5F3 !important;}
.bwm-modal .bwm-btn:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:2px;}

.bwm-media{padding:1.5em 1.5em 1.5em 0;display:grid;gap:.7em;align-content:start;min-width:0;}
.bwm-shot{width:100%;aspect-ratio:1/1.06;object-fit:cover;display:block;border-radius:10px;
  background:rgba(255,255,255,.04);animation:bwm-fade .45s ease;}
.bwm-thumbs{display:flex;gap:.5em;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
.bwm-thumbs::-webkit-scrollbar{display:none;}
.bwm-modal .bwm-thumbs button{flex:0 0 5.2em;height:3.7em;opacity:0;animation:bwm-fade .4s ease var(--td,0s) forwards;padding:0;border-radius:8px !important;overflow:hidden;
  cursor:pointer;border:1px solid rgba(214,222,200,.22) !important;background:none !important;}
.bwm-modal .bwm-thumbs button.is-on{border-color:#CBAC57 !important;}
.bwm-modal .bwm-thumbs button:focus-visible{outline:2px solid #CBAC57 !important;outline-offset:2px;}
.bwm-thumbs img{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------------- responsive ---------------- */
@media (min-width:861px){
  .bwm-glass{-webkit-backdrop-filter:blur(8px) saturate(116%);backdrop-filter:blur(8px) saturate(116%);}
}
@media (max-width:1120px){ .bwm-card{font-size:15px;} .bwm-col{padding:2.6em 2.4em;} }
@media (max-width:1024px){ .bwm-ui{width:80%;} .bwm{--bwm-edge-on:56px;} .bwm.is-zoomed .bwm-stage{border-radius:48px;} }
@media (max-width:860px){
  .bwm{--bwm-pin:1.35;--bwm-edge-on:28px;}
  .bwm.is-zoomed .bwm-stage{border-radius:30px;}
  .bwm-find{max-width:none;}
  .bwm-list-h{display:block;}
  .bwm-list{display:block;max-height:330px;overflow-y:auto;-webkit-overflow-scrolling:touch;
    border:1px solid rgba(214,222,200,.16);border-radius:14px;background:rgba(29,32,30,.34);}
  .bwm-modal{padding:0;place-items:end stretch;}
  .bwm-card{grid-template-columns:1fr;width:100%;max-height:92vh;border-radius:18px 18px 0 0;font-size:15px;}
  .bwm-media{order:-1;padding:1.1em 1.1em 0;}
  .bwm-shot{aspect-ratio:16/11;}
  .bwm-col{padding:1.6em 1.5em 2.2em;}
  .bwm-desc-wrap.is-clamped .bwm-desc{max-height:9.8em;}
}
@media (max-width:640px){
  .bwm-ui{width:90%;}
  .bwm{--bwm-pin:1.6;--bwm-edge-on:14px;}
  .bwm-find{flex-wrap:wrap;justify-content:center;border-radius:26px;padding:8px;}
  .bwm .bwm-input{flex:1 1 100%;text-align:center;}
  .bwm-sep{display:none;}
  .bwm.is-zoomed .bwm-stage{border-radius:18px;}
  .bwm .bwm-chip{padding:8px 13px;}
  .bwm-zoom{right:8px;bottom:8px;}
  .bwm .bwm-zoom button{width:40px;height:40px;}
  .bwm-card{font-size:14px;}
  .bwm-modal .bwm-btn{flex:1 1 auto;}
}
@media (prefers-reduced-motion:reduce){
  .bwm .bwm-anim,.bwm-lines path,.bwm-modal .bwm-thumbs button{opacity:1;animation:none !important;}
  .bwm-glass,.bwm-lines path{opacity:1;transition:none;}
  .bwm-pin--public .bwm-glow,.bwm-me .bwm-me-ring{animation:none;}
  .bwm-shape,.bwm-glow{transition:none;}
  .bwm-card,.bwm-modal .bwm-scrim{animation:none;}
}
