/* Trauerfall sticky sidebar – 1:1 replica of codebase StickySidebar.tsx.
   Fully scoped under .tfss-* so it cannot affect the rest of the site.
   Desktop: two cards fixed on the right edge, resting translated 130px off-screen
   (only the icon peeking), sliding fully in on hover (spring-like easing).
   Mobile (<768px): a fixed bottom call bar + a 64px spacer. */

.tfss-desktop,.tfss-desktop *{box-sizing:border-box;}

/* ---------- Desktop (md and up) ---------- */
.tfss-desktop{
  position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:40;
  display:flex;flex-direction:column;gap:12px;
  font-family:'Source Sans 3',system-ui,sans-serif;
}
.tfss-card{
  display:flex;align-items:center;overflow:hidden;text-decoration:none;
  border-radius:12px 0 0 12px; /* rounded-l-xl */
  box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1); /* shadow-lg */
  transform:translateX(130px);
  transition:transform .5s cubic-bezier(.34,1.56,.64,1); /* spring-like (stiffness 120 / damping 14) */
  will-change:transform;
}
.tfss-card:hover,.tfss-card:focus-visible{transform:translateX(0);}
.tfss-phone{background:#F0F0F0;color:#26303F;}          /* bg-secondary / text-foreground */
.tfss-portal{background:#666666;color:#FAFAFA;}          /* bg-accent / text-accent-foreground */
.tfss-inner{display:flex;align-items:center;gap:12px;padding:16px 20px;} /* gap-3 / py-4 px-5 */
.tfss-icon{flex-shrink:0;display:flex;align-items:center;}
.tfss-card .tfss-icon svg{width:24px;height:24px;}      /* w-6 h-6 */
.tfss-phone .tfss-icon svg{color:#990000;}              /* text-primary */
.tfss-portal .tfss-icon svg{color:#FAFAFA;}             /* inherits accent-foreground */
.tfss-text{white-space:nowrap;}
.tfss-text p{margin:0;padding:0;}
.tfss-eyebrow{font-size:12px;line-height:1;color:#4D4D4D;} /* text-xs / muted-foreground / leading-none */
.tfss-strong{font-weight:600;font-size:14px;line-height:1.25rem; color: white !important;} /* font-semibold / text-sm */
.tfss-phone{color: #26303F !important; font-weight:600;font-size:14px;line-height:1.25rem; }

@media (max-width:767px){ .tfss-desktop{display:none;} }

/* ---------- Mobile (below md) ---------- */
.tfss-mobile{
  position:fixed;bottom:0;left:0;right:0;z-index:40;
  background:#990000;color:#FAFAFA; /* bg-primary / text-primary-foreground */
  box-shadow:0 -6px 16px rgba(0,0,0,.15);
  font-family:'Source Sans 3',system-ui,sans-serif;
}
.tfss-mobile a{
  display:flex;align-items:center;justify-content:center;gap:12px;
  padding:16px 0;text-decoration:none;color:inherit;
  transition:background-color .15s;
}
.tfss-mobile a:active{background:rgba(153,0,0,.9);} /* active:bg-primary/90 */
.tfss-mobile .tfss-icon{display:flex;align-items:center;}
.tfss-mobile .tfss-icon svg{width:20px;height:20px;color:#FAFAFA;} /* w-5 h-5 */
.tfss-mtext{text-align:left;}
.tfss-mtext p{margin:0;padding:0;}
.tfss-meyebrow{font-size:11px;line-height:1;color:rgba(250,250,250,.7);margin-bottom:2px;} /* text-[11px] / /70 / mb-0.5 */
.tfss-mstrong{font-weight:700;font-size:16px;letter-spacing:.025em;} /* font-bold / text-base / tracking-wide */
.tfss-spacer{height:64px;} /* h-16 */

@media (min-width:768px){ .tfss-mobile,.tfss-spacer{display:none;} }

/* never print the sticky sidebar (e.g. checklist print) */
@media print{ .tfss-desktop,.tfss-mobile,.tfss-spacer{display:none !important;} }
