/* Studio FB Contact Widget - Ink #1A1A1A on Paper #F4F1EA, nothing else. Radius 0, no shadows, hover inverts. */
.sfbcw,.sfbcw *,.sfbcw *::before,.sfbcw *::after{box-sizing:border-box}
.sfbcw{
  --sfbcw-paper:#F4F1EA;--sfbcw-ink:#1A1A1A;
  --sfbcw-line:rgba(26,26,26,.28);
  --sfbcw-muted:rgba(26,26,26,.66);
  --sfbcw-fd:var(--v-fd,"Fraunces","Playfair Display",Georgia,"Times New Roman",serif);
  --sfbcw-fb:var(--v-fb,"Inter",system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif);
  --sfbcw-ease:cubic-bezier(.2,.7,.2,1);--sfbcw-t:200ms;
  --sfbcw-lift:0px; /* raised by JS when a call bar or chat bubble occupies the corner */
  position:fixed;
  right:calc(1.25rem + env(safe-area-inset-right,0px));
  bottom:calc(var(--sfbcw-bottom,24px) + var(--sfbcw-lift) + env(safe-area-inset-bottom,0px));
  z-index:990; /* below the v2 call bar (998), menu (999), nav (1000) and the session lightbox (99999) */
  display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;
  font-family:var(--sfbcw-fb);color:var(--sfbcw-ink);
  font-size:16px;line-height:1.4;
  -webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;
  transition:bottom var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw button{font:inherit;color:inherit;margin:0}
.sfbcw__ico{width:1.25rem;height:1.25rem;flex:none}

/* Toggle: Ink on Paper, hairline, hover inverts */
.sfbcw__toggle{
  display:inline-flex;align-items:center;gap:.6rem;
  min-height:3rem;min-width:3rem;padding:.85rem 1.25rem;
  border:1px solid var(--sfbcw-ink);border-radius:0;
  background:var(--sfbcw-paper);color:var(--sfbcw-ink);
  font:500 .78rem/1 var(--sfbcw-fb);letter-spacing:.12em;text-transform:uppercase;
  cursor:pointer;-webkit-appearance:none;appearance:none;
  transition:background var(--sfbcw-t) var(--sfbcw-ease),color var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw__toggle:hover,.sfbcw__toggle:focus-visible,.sfbcw.is-open .sfbcw__toggle{background:var(--sfbcw-ink);color:var(--sfbcw-paper)}
.sfbcw__toggle:focus-visible{outline:2px solid var(--sfbcw-ink);outline-offset:3px}
.sfbcw.is-open .sfbcw__toggle:focus-visible{outline-color:var(--sfbcw-paper);outline-offset:-4px}

/* Panel: Paper sheet, Ink hairline, offset frame behind it (the site's photo-frame motif) */
.sfbcw__panel{
  position:relative;
  width:min(21.5rem,calc(100vw - 2.5rem - env(safe-area-inset-right,0px) - env(safe-area-inset-left,0px)));
  padding:1.25rem 1.25rem 1rem;
  background:var(--sfbcw-paper);color:var(--sfbcw-ink);
  border:1px solid var(--sfbcw-ink);border-radius:0;
  opacity:1;transform:none;
  transition:opacity var(--sfbcw-t) var(--sfbcw-ease),transform var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw__panel::after{content:"";position:absolute;inset:0;transform:translate(.75rem,.75rem);border:1px solid var(--sfbcw-ink);opacity:.6;pointer-events:none;z-index:-1}
.sfbcw__panel[hidden]{display:none}
.sfbcw__panel.is-entering{opacity:0;transform:translateY(.5rem)}

.sfbcw__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.sfbcw__title{
  margin:0;font:400 1.6rem/1 var(--sfbcw-fd);letter-spacing:-.02em;color:inherit;
  font-variation-settings:"opsz" 144,"SOFT" 30,"WONK" 0;text-wrap:balance;
}
.sfbcw__close{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:2.5rem;height:2.5rem;margin:-.5rem -.5rem 0 0;
  border:1px solid transparent;border-radius:0;background:transparent;color:var(--sfbcw-ink);cursor:pointer;
  -webkit-appearance:none;appearance:none;
  transition:background var(--sfbcw-t) var(--sfbcw-ease),color var(--sfbcw-t) var(--sfbcw-ease),border-color var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw__close:hover,.sfbcw__close:focus-visible{background:var(--sfbcw-ink);color:var(--sfbcw-paper);border-color:var(--sfbcw-ink)}
.sfbcw__close:focus-visible{outline:2px solid var(--sfbcw-ink);outline-offset:2px}

/* Highlighted option: solid Ink button, hover inverts to Paper */
.sfbcw .sfbcw__primary{
  display:flex;text-decoration:none;align-items:center;gap:.75rem;
  min-height:3rem;padding:.95rem 1.1rem;
  border:1px solid var(--sfbcw-ink);background:var(--sfbcw-ink);color:var(--sfbcw-paper);
  font:500 .78rem/1 var(--sfbcw-fb);letter-spacing:.12em;text-transform:uppercase;
  transition:background var(--sfbcw-t) var(--sfbcw-ease),color var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw__primary > span{flex:1 1 auto}
.sfbcw__primary .sfbcw__ico:last-child{transition:transform var(--sfbcw-t) var(--sfbcw-ease)}
.sfbcw .sfbcw__primary:hover,.sfbcw .sfbcw__primary:focus-visible{background:var(--sfbcw-paper);color:var(--sfbcw-ink)}
.sfbcw__primary:hover .sfbcw__ico:last-child{transform:translateX(.25rem)}
.sfbcw__primary:focus-visible{outline:2px solid var(--sfbcw-ink);outline-offset:2px}

/* Rows: hairline-separated list, hover inverts the whole row */
.sfbcw__list{list-style:none;margin:1rem 0 0;padding:0;border-top:1px solid var(--sfbcw-line)}
.sfbcw__list li{margin:0;padding:0;border-bottom:1px solid var(--sfbcw-line)}
.sfbcw .sfbcw__row{
  display:flex;color:inherit;text-decoration:none;align-items:center;gap:.9rem;
  min-height:3rem;padding:.7rem .5rem;margin:0 -.5rem;
  transition:background var(--sfbcw-t) var(--sfbcw-ease),color var(--sfbcw-t) var(--sfbcw-ease);
}
.sfbcw__row-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}
.sfbcw__row-label{font:500 .6875rem/1.3 var(--sfbcw-fb);letter-spacing:.14em;text-transform:uppercase}
.sfbcw__row-value{font:400 .95rem/1.3 var(--sfbcw-fb);color:var(--sfbcw-muted);overflow-wrap:anywhere}
.sfbcw .sfbcw__row:hover,.sfbcw .sfbcw__row:focus-visible{background:var(--sfbcw-ink);color:var(--sfbcw-paper)}
.sfbcw__row:hover .sfbcw__row-value,.sfbcw__row:focus-visible .sfbcw__row-value{color:rgba(244,241,234,.68)}
.sfbcw__row:focus-visible{outline:2px solid var(--sfbcw-ink);outline-offset:-2px}

@media (max-width:480px){
  .sfbcw{right:calc(1rem + env(safe-area-inset-right,0px))}
  .sfbcw__panel{padding:1.1rem 1rem .9rem}
}
@media (prefers-reduced-motion:reduce){
  .sfbcw,.sfbcw__toggle,.sfbcw__panel,.sfbcw__primary,.sfbcw__primary .sfbcw__ico,.sfbcw__row,.sfbcw__close{transition:none}
  .sfbcw__panel.is-entering{opacity:1;transform:none}
}
@media print{.sfbcw{display:none}}
