/* BotStaffer theme v4 — t5931u/t5932u polish. Bot blue + Staffer green. */
:root {
  --bs-blue: #0058ef;
  --bs-blue-deep: #0050e8;
  --bs-green: #00b088;
  --bs-green-bright: #01b88b;
  --bs-ink: #111827;
  --bs-muted: #5b6472;
  --bs-border: #e6e8ec;
  --bs-paper: #f5f8fc;
  --bs-card: #ffffff;
  --bs-soft: #e8f0ff;
  --bs-soft-green: #e6f7f2;
  --bs-max: 1120px;
  --bs-radius: 16px;
  --bs-radius-sm: 12px;
  --bs-shadow: 0 8px 24px rgba(0, 88, 239, 0.08);
  --bs-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
html { overflow-x: hidden; }
body {
  background: var(--bs-paper) !important;
  font-family: var(--bs-font);
  color: var(--bs-ink);
  overflow-x: hidden;
}
a { color: var(--bs-blue); }
a:hover { color: var(--bs-blue-deep); }

/* ===== HEADER / NAV ===== */
.header-wrapper {
  background: #ffffff !important;
  border-bottom: 1px solid var(--bs-border) !important;
  padding: 12px 0 !important;
  box-shadow: 0 1px 0 rgba(0, 88, 239, 0.06);
}
/* t5931u: 2× header logo (was 88× / max 220) */
.header-wrapper .logo img,
.header-wrapper img.bs-logo-img {
  height: 176px !important;
  width: auto !important;
  max-width: 440px !important;
  object-fit: contain !important;
  display: block !important;
}
.header-wrapper .logo a {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
}
/* t5931u: larger primary nav */
.header-wrapper #navigation .ui.menu .item,
.header-wrapper #navigation a.item,
.header-wrapper .navigation .item {
  color: var(--bs-ink) !important;
  font-weight: 650 !important;
  font-size: 1.15rem !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  padding-left: 0.85em !important;
  padding-right: 0.85em !important;
}
.header-wrapper #navigation .ui.menu .item.active,
.header-wrapper #navigation .ui.menu .item:hover {
  color: var(--bs-blue) !important;
  border-color: var(--bs-green) !important;
}
.header-wrapper .tools a { color: var(--bs-muted) !important; }
.header-wrapper .search input,
.header-wrapper .search .ui.input input {
  color: var(--bs-ink) !important;
  background: var(--bs-soft) !important;
  border-radius: 999px !important;
  padding: 8px 14px !important;
  border: 1px solid var(--bs-border) !important;
}
.header-wrapper .search input::placeholder { color: var(--bs-muted) !important; opacity: 1 !important; }
.header-wrapper .search button,
.header-wrapper svg { color: var(--bs-blue) !important; fill: var(--bs-blue) !important; }
.header-wrapper .hamburger-inner,
.header-wrapper .hamburger-inner::before,
.header-wrapper .hamburger-inner::after { background-color: var(--bs-blue) !important; }
body.is-anonymous .tools .item a[href*="login"] { display: none !important; }

/* Links + buttons */
#page-document a,
.content-area a,
#view a { color: var(--bs-blue); }
#page-document a:hover,
.content-area a:hover { color: var(--bs-blue-deep); }
.ui.primary.button,
.ui.button.primary,
a.ui.primary.button,
.block.__button .ui.primary.button,
.block.__button .ui.button {
  background: var(--bs-blue) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  padding: 0.85em 1.4em !important;
  box-shadow: 0 4px 14px rgba(0, 88, 239, 0.22);
}
.ui.primary.button:hover,
a.ui.primary.button:hover,
.block.__button .ui.button:hover {
  background: var(--bs-blue-deep) !important;
}
.ui.secondary.button,
a.ui.secondary.button,
.ui.button.green {
  background: var(--bs-green) !important;
  color: #fff !important;
  border-radius: 999px !important;
}

/* Soft panels + cards */
#main .ui.segment,
.content-area .ui.segment {
  border-color: var(--bs-border) !important;
  border-radius: var(--bs-radius-sm) !important;
}
body.siteroot .breadcrumbs { display: none !important; }

/* ===== t5932u BRANDED BREADCRUMBS ===== */
body:not(.siteroot) .breadcrumbs.ui.segment,
body:not(.siteroot) .ui.secondary.vertical.segment.breadcrumbs {
  background:
    linear-gradient(90deg, rgba(0, 88, 239, 0.10) 0%, rgba(0, 176, 136, 0.12) 100%) !important;
  border: 1px solid transparent !important;
  border-image: linear-gradient(90deg, var(--bs-blue), var(--bs-green)) 1 !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 16px rgba(0, 88, 239, 0.08) !important;
  margin: 0.75rem auto 1rem !important;
  padding: 0.65rem 1rem !important;
  max-width: var(--bs-max);
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.15rem !important;
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb a.section {
  color: var(--bs-blue) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  text-decoration: none !important;
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb a.section:hover {
  color: var(--bs-green) !important;
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb .section.active,
body:not(.siteroot) .breadcrumbs .ui.breadcrumb .active.section {
  color: var(--bs-ink) !important;
  font-weight: 750 !important;
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb .divider {
  color: var(--bs-green) !important;
  opacity: 0.85 !important;
  font-weight: 700 !important;
}
body:not(.siteroot) .breadcrumbs .ui.breadcrumb a.section svg,
body:not(.siteroot) .breadcrumbs svg {
  color: var(--bs-blue) !important;
  fill: var(--bs-blue) !important;
}

/* ===== HOME HERO BAND ===== */
body.siteroot #page-document,
body.siteroot #view .ui.container {
  max-width: var(--bs-max);
}
body.siteroot .block.title h1.documentFirstHeading,
body.siteroot h1.documentFirstHeading {
  font-size: clamp(1.8rem, 3.2vw, 2.6rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  color: var(--bs-blue) !important;
  margin-bottom: 0.35rem !important;
}
body.siteroot .block.title h1.documentFirstHeading::after {
  content: "";
  display: block;
  width: 72px;
  height: 4px;
  margin-top: 0.55rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--bs-blue), var(--bs-green));
}
body.siteroot #view::before {
  content: "";
  display: block;
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 520px;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 80% 60% at 15% 20%, rgba(0, 88, 239, 0.12), transparent 60%),
    radial-gradient(ellipse 70% 55% at 85% 10%, rgba(0, 176, 136, 0.14), transparent 55%),
    linear-gradient(180deg, var(--bs-soft) 0%, var(--bs-paper) 100%);
}
body.siteroot #view { position: relative; }
body.siteroot #view > * { position: relative; z-index: 1; }

body.siteroot .block.image {
  text-align: center;
  margin: 0.5rem auto 0.25rem !important;
}
body.siteroot .block.image img {
  max-height: 220px !important;
  width: auto !important;
  border-radius: var(--bs-radius) !important;
  filter: drop-shadow(0 10px 28px rgba(0, 88, 239, 0.18));
}
body.siteroot .block.slate p {
  font-size: 1.12rem;
  line-height: 1.55;
  color: var(--bs-ink);
  max-width: 40rem;
}

/* ===== HERO GUIDE CAROUSEL (t5931u) ===== */
.bs-hero-carousel {
  position: relative;
  max-width: 720px;
  margin: 0.75rem auto 1rem;
  border-radius: var(--bs-radius);
  background: #fff;
  border: 1px solid var(--bs-border);
  box-shadow: var(--bs-shadow);
  overflow: hidden;
}
.bs-hc-viewport {
  position: relative;
  width: 100%;
  aspect-ratio: 1200 / 630;
  background: var(--bs-soft);
}
.bs-hc-slide {
  position: absolute;
  inset: 0;
  display: block;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.45s ease;
  text-decoration: none !important;
  color: inherit;
}
.bs-hc-slide.is-active {
  opacity: 1;
  visibility: visible;
  z-index: 1;
}
.bs-hc-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.bs-hc-caption {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 1.1rem 1.25rem 1rem;
  background: linear-gradient(180deg, transparent 0%, rgba(17, 24, 39, 0.78) 55%);
  color: #fff !important;
  font-weight: 750;
  font-size: clamp(1rem, 2.2vw, 1.25rem);
  line-height: 1.3;
  text-shadow: 0 1px 2px rgba(0,0,0,0.35);
}
.bs-hc-caption::before {
  content: "Guide";
  display: inline-block;
  margin-right: 0.55rem;
  padding: 0.15rem 0.55rem;
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  vertical-align: middle;
  background: linear-gradient(90deg, var(--bs-blue), var(--bs-green));
  color: #fff;
  text-shadow: none;
}
.bs-hc-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: none;
  background: rgba(255, 255, 255, 0.92);
  color: var(--bs-blue);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 88, 239, 0.22);
  display: flex;
  align-items: center;
  justify-content: center;
}
.bs-hc-btn:hover { background: #fff; color: var(--bs-green); }
.bs-hc-prev { left: 10px; }
.bs-hc-next { right: 10px; }
.bs-hc-dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  padding: 0.65rem 0.5rem 0.8rem;
  background: #fff;
}
.bs-hc-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: none;
  padding: 0;
  cursor: pointer;
  background: #c9d3e3;
  transition: width 0.2s ease, background 0.2s ease;
}
.bs-hc-dot.is-active {
  width: 22px;
  background: linear-gradient(90deg, var(--bs-blue), var(--bs-green));
}
.bs-hc-dot:hover { background: var(--bs-blue); }

/* Section heads */
#page-document h2,
.content-area h2,
.block.listing .headline,
.block.gridBlock .headline {
  font-size: 1.45rem !important;
  font-weight: 750 !important;
  color: var(--bs-ink) !important;
  letter-spacing: -0.01em;
  margin-top: 2rem !important;
  margin-bottom: 0.85rem !important;
  padding-left: 0.75rem;
  border-left: 4px solid var(--bs-green);
}

/* Teaser / listing cards — rounded, playful */
.block.teaser,
.block.listing .cards .card,
.block.listing .ui.cards .card,
.listing-item,
.items .card,
.block.listing .item {
  background: var(--bs-card) !important;
  border: 1px solid var(--bs-border) !important;
  border-radius: var(--bs-radius) !important;
  box-shadow: var(--bs-shadow) !important;
  overflow: hidden;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.block.teaser:hover,
.block.listing .cards .card:hover,
.listing-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0, 176, 136, 0.14) !important;
  border-color: rgba(0, 176, 136, 0.35) !important;
}
.block.teaser .image-wrapper img,
.block.listing img,
.card img {
  border-radius: 0 !important;
}
.block.teaser .content h2,
.block.teaser h3,
.block.listing .item h2,
.block.listing .item h3 {
  color: var(--bs-blue) !important;
  font-weight: 700 !important;
}
.block.gridBlock {
  margin: 1rem 0 1.5rem !important;
}
.block.separator .ui.divider,
.block.separator hr {
  border-top: 2px solid var(--bs-soft) !important;
  margin: 1.75rem 0 !important;
}

/* Hub / stub pages */
body:not(.siteroot) h1.documentFirstHeading {
  color: var(--bs-blue) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em;
}
body:not(.siteroot) h1.documentFirstHeading::after {
  content: "";
  display: block;
  width: 56px;
  height: 4px;
  margin-top: 0.45rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--bs-blue), var(--bs-green));
}

/* At-a-glance stats row */
.bs-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 1rem 0 1.5rem;
}
.bs-stats .bs-stat {
  flex: 1 1 140px;
  background: #fff;
  border: 1px solid var(--bs-border);
  border-radius: var(--bs-radius);
  padding: 1rem 1.1rem;
  box-shadow: var(--bs-shadow);
  text-align: center;
}
.bs-stats .bs-stat strong {
  display: block;
  font-size: 1.75rem;
  color: var(--bs-blue);
  line-height: 1.1;
}
.bs-stats .bs-stat span {
  color: var(--bs-muted);
  font-size: 0.9rem;
  font-weight: 600;
}

/* ===== FOOTER ===== */
#botstaffer-footer {
  margin-top: 3rem;
  background: #ffffff;
  border-top: 3px solid var(--bs-green);
  color: var(--bs-muted);
  font-size: 0.92rem;
}
#botstaffer-footer .bs-foot-inner {
  max-width: var(--bs-max);
  margin: 0 auto;
  padding: 2rem 1.25rem 1.5rem;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 1.5rem;
}
@media (max-width: 760px) {
  #botstaffer-footer .bs-foot-inner { grid-template-columns: 1fr; }
  .header-wrapper .logo img,
  .header-wrapper img.bs-logo-img {
    height: 120px !important;
    max-width: 300px !important;
  }
}
#botstaffer-footer h3 {
  margin: 0 0 0.65rem;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--bs-ink);
  font-weight: 750;
}
#botstaffer-footer a {
  color: var(--bs-blue);
  text-decoration: none;
  display: inline-block;
  margin: 0.2rem 0;
  font-weight: 600;
}
#botstaffer-footer a:hover { color: var(--bs-green); }
#botstaffer-footer .bs-foot-brand {
  color: var(--bs-ink);
  font-weight: 700;
  margin-bottom: 0.4rem;
}
#botstaffer-footer .bs-foot-brand span.bot { color: var(--bs-blue); }
#botstaffer-footer .bs-foot-brand span.staffer { color: var(--bs-green); }
#botstaffer-footer .bs-foot-copy {
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--bs-border);
  text-align: center;
  font-size: 0.82rem;
  color: var(--bs-muted);
}
#botstaffer-footer .bs-foot-copy a { display: inline; margin: 0 0.35rem; }

/* t5931u: hide native Plone Site Map / Contact / Powered by bar */
#footer,
#portal-footer,
footer#footer,
div#footer[role="contentinfo"],
.ui.grey.inverted.vertical.padded.center.aligned.segment[role="contentinfo"]#footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Full-width branded footer */
body > #botstaffer-footer,
#botstaffer-footer {
  width: 100% !important;
  max-width: none !important;
  clear: both !important;
  float: none !important;
  display: block !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  z-index: 5;
}
.block.unknown { display: none !important; }

/* Hero CTA pills (html block) */
.bs-cta-row { margin: 0.75rem 0 1.25rem; display: flex; flex-wrap: wrap; gap: 0.6rem; }
.bs-cta {
  display: inline-block;
  padding: 0.65rem 1.25rem;
  border-radius: 999px;
  font-weight: 700;
  text-decoration: none !important;
}
.bs-cta-primary { background: var(--bs-blue); color: #fff !important; box-shadow: 0 4px 14px rgba(0, 88, 239, 0.22); }
.bs-cta-secondary { background: var(--bs-green); color: #fff !important; box-shadow: 0 4px 14px rgba(0, 176, 136, 0.22); }
.bs-cta-ghost { background: #fff; color: var(--bs-blue) !important; border: 2px solid var(--bs-blue); }
.bs-cta:hover { filter: brightness(0.96); }

#main > #botstaffer-footer,
#botstaffer-footer {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  order: 9999 !important;
  align-self: stretch !important;
}


/* t5962u role chrome */
.bs-role-hero { margin: 0.5rem 0 1.25rem; }
.bs-role-mission { font-size: 1.15rem; line-height: 1.45; color: #111827; margin: 0 0 0.75rem; }
.bs-role-badges { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 0 0 0.85rem; }
.bs-role-badge {
  display: inline-block; padding: 0.28rem 0.7rem; border-radius: 999px;
  background: #e8f0ff; color: #0058ef; font-size: 0.85rem; font-weight: 600;
  text-decoration: none;
}
a.bs-role-badge:hover { filter: brightness(0.97); }
.bs-role-badge.bs-role-risk { color: #fff; }
.bs-role-cta-final {
  margin: 1.75rem 0 1rem; padding: 1.25rem 1.35rem; border-radius: 14px;
  background: linear-gradient(135deg, #e8f0ff 0%, #e6faf4 100%);
  border: 1px solid #cfe0ff;
}
.bs-role-cta-final h2, .bs-role-cta-final h3 { margin-top: 0; color: #03264c; }

/* Share buttons (t6192u, Oct 29 2026), ported from LIC .guide-share */
.bs-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; max-width: var(--default-container-width, 940px); margin: 28px auto 12px; padding: 14px 20px; border-top: 1px solid #d6e2f5; }
.bs-share__label { font-weight: 600; font-size: 14px; margin-right: 6px; }
.bs-share__btn { display: inline-block; border: 1px solid #0058ef; color: #0058ef; background: #fff; border-radius: 999px; padding: 7px 16px; font: 600 13px/1.2 inherit; text-decoration: none; cursor: pointer; }
.bs-share__btn:hover, .bs-share__btn:focus { background: #0058ef; color: #fff; }
.bs-share__btn--copy { border-color: #00b088; color: #00866a; }
.bs-share__btn--copy:hover, .bs-share__btn--copy:focus { background: #00b088; color: #fff; }
@media (max-width: 600px) { .bs-share__label { flex-basis: 100%; margin: 0 0 2px; } }

/* ===== 2026-10-31 palette (Jason YES t6277s34204): navy/blue brand board ===== */
:root{
  --bs-navy:#0B1B3A; --bs-blue:#1F6FEB; --bs-blue-deep:#1A5FD0; --bs-blue-mid:#5B9BF0;
  --bs-soft:#E8F1FD; --bs-paper:#F5F8FD; --bs-border:#E6E9EF;
  --bs-shadow:0 8px 24px rgba(11,27,58,0.08);
}
.navigation .menu a.item[href="/"]{display:none!important}
.navigation .menu a.item[href="/plan"]{background:var(--bs-blue)!important;color:#fff!important;border-radius:999px!important;padding:.55em 1.2em!important;margin-left:.5em!important;font-weight:700!important;border:0!important}
.navigation .menu a.item[href="/plan"]:hover{background:var(--bs-navy)!important}
.navigation .menu a.item:not([href="/plan"]):hover,.navigation .menu a.item.active:not([href="/plan"]){color:var(--bs-blue)!important;border-color:var(--bs-blue)!important}
.documentFirstHeading{color:var(--bs-navy)!important}
.block.gridBlock .block.teaser,.block.teaser{border-color:var(--bs-border)}
.block.teaser h2,.block.teaser h3{color:var(--bs-navy)}
a{color:var(--bs-blue)}
#botstaffer-footer{border-top:3px solid var(--bs-navy)}
@media (min-width:1024px){.navigation .menu a.item{padding-left:.7em!important;padding-right:.7em!important;margin:0 .15em!important}.navigation .menu{flex-wrap:nowrap}}

/* ===== 2026-10-31 4:25 PM fixes (Jason YES): 1024-1279 nav fit, mobile plan button text, teaser padding ===== */
@media (min-width:1024px) and (max-width:1279.98px){
  .header-wrapper .logo img,.header .logo img{max-width:130px!important;height:auto!important}
  .header-wrapper #navigation .ui.menu a.item,.header-wrapper #navigation a.item{padding-left:.42em!important;padding-right:.42em!important;margin:0 .05em!important;font-size:13.5px!important}
  .header-wrapper #navigation .ui.menu a.item[href="/plan"]{padding:.5em .9em!important;margin-left:.3em!important;white-space:nowrap}
  .navigation .menu{flex-wrap:nowrap!important}
}
.header-wrapper #navigation .mobile-menu a.item[href="/plan"],.header-wrapper #navigation .mobile-menu .ui.menu a.item[href="/plan"],.header-wrapper .navigation .mobile-menu a.item[href="/plan"]{color:#fff!important}
.block.teaser .card-summary,.block.teaser .card-summary>p,.block.teaser p{padding-left:1rem;padding-right:1rem}
.block.teaser .card-summary{padding-bottom:.75rem}
