/* JE Horizon shared public brand. Canonical source: public/css/brand.css. */
.jh-account-links{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-left:auto;font:1rem/1.4 var(--jh-type)}
.jh-brand-bar .jh-account-links a{min-height:44px;white-space:nowrap}
.jh-brand-bar .jh-account-links .jh-signup{padding:0 .85rem;background:var(--jh-accent);color:#11172b;border-radius:8px;font-weight:650}
.jh-brand-bar .jh-user-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .85rem;border-radius:9999px;background:rgba(6,182,212,.12);border:1px solid rgba(6,182,212,.4);color:#38bdf8;font-size:.875rem;font-weight:600;text-decoration:none;min-height:36px}
.jh-brand-bar .jh-user-pill:hover{background:rgba(6,182,212,.22);border-color:#06b6d4;color:#67e8f9;text-decoration:none}
.jh-brand-bar .jh-user-dot{width:8px;height:8px;border-radius:9999px;background:#06b6d4;box-shadow:0 0 8px #06b6d4;flex-shrink:0}
.jh-brand-bar .jh-user-email{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jh-brand-bar .jh-signout-btn{font:inherit;font-size:.875rem;color:var(--jh-muted);cursor:pointer;background:none;border:none;padding:0;min-height:44px;display:inline-flex;align-items:center}
.jh-brand-bar .jh-signout-btn:hover{color:var(--jh-focus);text-decoration:underline}
@media(max-width:640px){.jh-account-links{font-size:.875rem;gap:.7rem}.jh-brand-bar .jh-company{margin-right:auto}.jh-brand-bar>nav{order:3}}
.jh-products {position:relative;padding:0;margin:0;border:0}
.jh-brand-bar .jh-products summary {font:inherit;letter-spacing:normal;padding:0;font-weight:400}
.jh-products summary {display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--jh-muted);gap:0.4rem}
.jh-products summary::after {content:"⌄";font-size:1.1rem}
.jh-product-menu {position:absolute;top:100%;right:0;z-index:1100;min-width:250px;max-width:calc(100vw - 2rem);padding:0.65rem 1rem;background:var(--jh-surface);border:1px solid var(--jh-line);border-radius:8px;box-shadow:0 12px 30px #0006}
.jh-brand-bar .jh-product-menu a {display:flex;font-size:0.95rem;white-space:normal}
@media(max-width:640px){.jh-brand-bar nav{position:relative}.jh-products{position:static}.jh-product-menu{left:0;right:0;min-width:0;max-width:none}}
:root {
  --jh-background:#0a0e1f; --jh-surface:#141a30; --jh-text:#e8ecf5;
  --jh-muted:#b2bfd2; --jh-accent:#a78bfa; --jh-focus:#67e8f9;
  --jh-line:#354160; --jh-type:"Segoe UI Variable","Segoe UI",sans-serif;
}
body[data-jehorizon-brand] {
  --bg:var(--jh-background); --bg-alt:#0f1428; --card:var(--jh-surface);
  --ink:var(--jh-text); --ink-mute:var(--jh-muted); --muted:var(--jh-muted);
  --accent:var(--jh-accent); --border:var(--jh-line); --line:var(--jh-line);
  font-family:var(--jh-type); background:var(--jh-background); color:var(--jh-text);
}
.jh-brand-bar {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap;
  gap:0.5rem 2rem; padding:0.75rem max(1.25rem,calc((100% - 1080px)/2));
  background:var(--jh-background); border-bottom:1px solid var(--jh-line);
  font:1rem/1.4 var(--jh-type); color:var(--jh-text);
}
.jh-brand-bar .jh-company {font-size:1.25rem;font-weight:750;letter-spacing:-0.03em;color:var(--jh-text);white-space:nowrap}
.jh-brand-bar nav,.jh-brand-links {display:flex;align-items:center;gap:0.25rem 1.3rem;flex-wrap:wrap}
.jh-brand-bar a,.jh-brand-links a {display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--jh-muted)}
.jh-brand-bar a:hover,.jh-brand-links a:hover {color:var(--jh-focus);text-decoration:underline;text-underline-offset:0.25em}
body[data-jehorizon-brand] :is(a,button,input,summary):focus-visible {outline:3px solid var(--jh-focus);outline-offset:4px}
.jh-brand-links {max-width:1080px;margin:1.4rem auto 0;padding:1rem 0;border-top:1px solid var(--jh-line);font:0.95rem/1.5 var(--jh-type)}
body[data-jehorizon-brand] > header:not(.site-head) .brand {display:none}
body[data-jehorizon-brand] > header:not(.site-head) .nav {justify-content:center}
body[data-jehorizon-brand] :is(.btn,.button,.nav-download) {font-family:var(--jh-type);font-size:1rem;min-height:44px;border-radius:8px}
body[data-jehorizon-brand] :is(.btn-primary,.button,.nav-download) {background:#a78bfa;color:#11172b;-webkit-text-fill-color:currentColor}
body[data-jehorizon-brand] :is(.btn-primary,.button,.nav-download):hover {background:#c3afff;color:#11172b}
body[data-jehorizon-brand] :is(.jh-msg,.jh-body p,.jh-concierge header,.jh-chips button,.jh-input input,.jh-input button) {font-family:var(--jh-type);font-size:0.95rem}
body[data-jehorizon-brand] .jh-concierge header {position:static}
body[data-jehorizon-brand] .jh-chips button {min-height:44px}
body[data-jehorizon-brand] .jh-bubble {background:#a78bfa;color:#11172b;box-shadow:none}
body[data-jehorizon-brand="1"].wittlet-page {color-scheme:dark}
.wittlet-page .site-head {padding-block:1.2rem}
.wittlet-page :is(.character-section,.download-section) {background:#101a30}
.wittlet-page .hello {background:#192840;color:var(--jh-text);box-shadow:none}
.wittlet-page .designs button {border-color:var(--jh-line);color:var(--jh-text)}
.wittlet-page .designs button[aria-pressed=true] {background:#a78bfa;color:#11172b}
.wittlet-page .designs button[aria-pressed=true] span {color:#24304c}
.wittlet-page .swatches button {border-color:#101a30}
.wittlet-page .swatches button[aria-pressed=true] {box-shadow:0 0 0 2px var(--jh-focus)}
.wittlet-page .skip {background:#0f1428;color:var(--jh-text)}
.wittlet-page .install li:before {background:var(--jh-surface);color:var(--jh-text);border:1px solid var(--jh-line)}
.jh-legal-page {--bg-card:var(--jh-surface)}
.jh-legal-page .legal-bar {background:var(--jh-background);position:relative}
.jh-legal-page h1 {background:none;color:var(--jh-text);-webkit-text-fill-color:currentColor}
.jh-legal-page .jh-brand-links {justify-content:center;text-align:left}
.jh-legal-page .jh-product-menu {text-align:left}
@media(max-width:640px) {
  .jh-brand-bar {gap:0.15rem;padding:0.65rem 1rem}
  .jh-brand-bar nav {width:100%;gap:0 1rem;font-size:0.875rem}
  .jh-brand-links {gap:0.25rem 1rem}
  body[data-jehorizon-brand] > header .nav-links {gap:0.25rem 1rem}
}
@media(prefers-reduced-motion:reduce) {
  body[data-jehorizon-brand] *,body[data-jehorizon-brand] *::before,body[data-jehorizon-brand] *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Cookie Settings Terminator - US Compliant First-Party Only */
.jeh-cookie-settings,
.jeh-consent,
#jehCookieSettings,
button.jeh-cookie-settings,
[class*="cookie-settings"],
[aria-label*="analytics choices" i],
[aria-label*="cookie" i] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  width: 0 !important;
  height: 0 !important;
  z-index: -99999 !important;
}

/* AI Concierge Fixed Base & Mobile Resilience */
#jhConcierge,
.jh-assistant,
.jh-concierge {
  position: fixed !important;
  z-index: 999999 !important;
  right: max(16px, env(safe-area-inset-right, 16px)) !important;
  bottom: max(16px, env(safe-area-inset-bottom, 16px)) !important;
}
#jhConcierge.collapsed,
.jh-assistant.collapsed,
.jh-concierge.collapsed {
  width: 56px !important;
  height: 56px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
#jhConcierge.collapsed #jhBubble,
.jh-assistant.collapsed #jhBubble,
.jh-concierge.collapsed #jhBubble,
.jh-concierge.collapsed .jh-bubble,
.jh-assistant.collapsed .jh-bubble,
#jhBubble.jh-bubble {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: #a78bfa !important;
  color: #0a0e1f !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  border: none !important;
  box-shadow: 0 6px 24px rgba(0,0,0,0.5) !important;
  cursor: pointer !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
}
@media (max-width: 720px) {
  body.contractor-page #jhConcierge,
  body.contractor-page .jh-assistant,
  body.contractor-page .jh-concierge {
    bottom: max(76px, calc(env(safe-area-inset-bottom, 0px) + 76px)) !important;
  }
}

