.rulik-widget{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px) + var(--rulik-lift,0px));z-index:70;width:181.8px;font:400 14px/1.4 "Manrope Variable",system-ui,sans-serif;pointer-events:none}
.rulik-widget,.rulik-widget *{box-sizing:border-box}
.rulik-open{display:block;width:181.8px;margin-inline:auto;border-radius:24px;text-decoration:none;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}
.rulik-open:focus-visible{outline:3px solid #a42d26;outline-offset:3px}
.rulik-portrait{position:relative;display:block;width:181.8px;height:204.525px;pointer-events:none;flex:none}
.rulik-portrait img,.rulik-portrait canvas{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.rulik-portrait[data-ready=true] img{visibility:hidden}.rulik-portrait[data-failed=true] img{visibility:visible}
.rulik-ask,.rulik-fallback{position:relative;display:flex;align-items:center;gap:0;width:calc(100% - 9.9px);min-height:48px;margin:-5.7px 0 0 9.9px;padding:0 5px 0 13px;border:1px solid var(--line,#dedfd8);border-radius:8px;background:#fff;color:var(--ink,#20221f);box-shadow:0 4px 14px #2327240a;pointer-events:auto}
.rulik-ask:focus-within{border-color:#a42d26;box-shadow:0 0 0 3px #a42d2612}
.rulik-ask input{width:100%;min-width:0;height:46px;margin:0;padding:10px 0;border:0;border-radius:inherit;outline:none;background:transparent;font:400 14px/1.4 "Manrope Variable",system-ui,sans-serif;color:var(--ink,#20221f)}
.rulik-ask input::placeholder{color:var(--muted,#62665f);opacity:1}.rulik-ask input:focus-visible{outline:none}
.rulik-ask button{display:grid;place-items:center;flex:none;width:36px;height:38px;margin:0;padding:7px;border:0;border-radius:5px;background:transparent;color:var(--muted,#62665f);cursor:pointer}
.rulik-ask button:hover{background:var(--paper,#f8f7f4);color:#a42d26}.rulik-ask button:focus-visible,.rulik-fallback:focus-visible{outline:3px solid #a42d26;outline-offset:3px}
.rulik-ask button:disabled{cursor:progress;opacity:.6}.rulik-ask svg{display:block;fill:none;stroke:currentColor;stroke-width:1.5}
.rulik-fallback{justify-content:space-between;padding-right:15px;text-decoration:none}
.rulik-widget[data-obscured],body.menu-open .rulik-widget{pointer-events:none}
.rulik-widget [hidden]{display:none!important}.rulik-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* A quieter portrait on laptop viewports; retain the composer's readable size. */
@media(min-width:768px) and (max-width:1920px) and (hover:hover) and (pointer:fine){
  .rulik-widget{width:171px}
  .rulik-open{width:160px}
  .rulik-open .rulik-portrait{width:160px;height:180px}
  .rulik-ask,.rulik-fallback{width:calc(100% - 8.7px);margin:3px 0 0 8.7px}
}
@media(max-width:600px){.rulik-widget{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px) + var(--rulik-lift,0px));width:171px}.rulik-open{width:153px}.rulik-open .rulik-portrait{width:153px;height:172.125px;margin-inline:auto}.rulik-ask,.rulik-fallback{width:calc(100% - 17.1px);margin:-4.1px 0 0 17.1px}.rulik-ask{padding-left:5px}.rulik-ask input{font-size:13px}.rulik-fallback{padding-left:5px;padding-right:10px;font-size:13px}}
@media(forced-colors:active){.rulik-ask,.rulik-fallback{border:1px solid CanvasText}.rulik-ask:focus-within{outline:2px solid Highlight}}

/* Coordinates are computed for the whole portrait, using cached visible obstacles. */
.rulik-widget{--rulik-safe-bottom:env(safe-area-inset-bottom,0px)}
.rulik-widget[data-placement="fixed"]{left:var(--rulik-left);top:var(--rulik-top);right:auto;bottom:auto}
.rulik-dock{display:none}
.rulik-dock:has(.rulik-widget[data-placement="inline"]){display:block}
.rulik-widget[data-placement="inline"]{position:absolute;inset:0 auto auto 0}
@media(max-width:600px){
  #hero .hero-actions:has(.quick-lead){position:relative;padding-bottom:236px}
  .rulik-dock{display:block;position:absolute;right:0;bottom:0;width:171px;height:216.025px}
}
@media(max-width:600px) and (scripting:none){#hero .hero-actions:has(.quick-lead){padding-bottom:0}}
@media(scripting:none){.rulik-widget{position:relative;right:auto;bottom:auto;margin:20px 24px 24px auto}}

/* One small, stable composer on phones and narrower touch tablets. */
@media(max-width:767px),(max-width:1100px) and (hover:none),(max-width:1100px) and (pointer:coarse){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
  .rulik-widget{
    display:flex;align-items:center;gap:8px;
    width:var(--rulik-compact-width,min(316px,calc(100vw - 24px)));
    min-height:54px;padding:4px;
    right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));
    border:1px solid var(--line,#dedfd8);border-radius:14px;
    background:#fff;box-shadow:none;
  }
  .rulik-widget[data-placement="fixed"],.rulik-widget[data-placement="inline"]{
    position:fixed;inset:auto;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));
  }
  .rulik-widget[data-placement="compact"]{
    position:fixed;left:var(--rulik-left);top:var(--rulik-top);right:auto;bottom:auto;
  }
  .rulik-widget:focus-within{border-color:#a42d26;box-shadow:inset 0 0 0 1px #a42d26}
  .rulik-open{
    position:relative;display:block;flex:0 0 44px;width:44px;height:44px;
    margin:0;overflow:hidden;border-radius:50%;background:var(--paper,#f8f7f4);
  }
  .rulik-open:focus-visible{outline:2px solid #a42d26;outline-offset:-2px}
  .rulik-open .rulik-portrait{
    position:absolute;width:40px;height:45px;
    left:2px;top:1px;margin:0;
  }
  .rulik-portrait canvas{display:none!important}
  .rulik-portrait img,.rulik-portrait[data-ready=true] img{visibility:visible}
  .rulik-ask,.rulik-fallback{
    flex:1;min-width:0;width:auto;min-height:44px;margin:0;padding:0;
    border:0;border-radius:8px;box-shadow:none;
  }
  .rulik-ask:focus-within{border:0;box-shadow:none}
  .rulik-ask input{min-width:100px;height:44px;padding:8px 0;font-size:16px;line-height:1.4}
  .rulik-ask button{width:44px;height:44px;padding:11px;border-radius:8px}
  .rulik-ask button:focus-visible,.rulik-fallback:focus-visible{outline:2px solid #a42d26;outline-offset:-2px}
  .rulik-fallback{padding-inline:0 10px;font-size:15px}
  #hero .hero-actions:has(.quick-lead){padding-bottom:0}
  .rulik-dock,.rulik-dock:has(.rulik-widget[data-placement="inline"]){display:none}
  .rulik-widget[data-rulik-reaction="attention"] .rulik-open .rulik-portrait{animation:rulik-compact-attention 360ms ease-out}
  .rulik-widget[data-rulik-reaction="send"] .rulik-open .rulik-portrait{animation:rulik-compact-send 240ms ease-out}
}
/* Quiet first paint, then a 250ms appearance and 300ms disappearance. */
  .rulik-widget{opacity:0;visibility:hidden;transition:opacity 300ms ease,visibility 0s linear 300ms}
  .rulik-widget[data-rulik-revealed]:not([data-obscured]){opacity:1;visibility:visible;transition:opacity 250ms ease,visibility 0s}
  .rulik-widget:not([data-rulik-revealed]){transition:none;pointer-events:none}
  .rulik-widget[data-obscured] .rulik-open,
  .rulik-widget[data-obscured] .rulik-ask,
  .rulik-widget[data-obscured] .rulik-fallback{pointer-events:none}
  .rulik-widget:not([data-rulik-revealed]) .rulik-portrait img,
  .rulik-widget:not([data-rulik-revealed]) .rulik-portrait canvas{visibility:hidden!important}
/* Safe first paint before the measured viewport budget is available. */
@media(max-width:767px) and (max-height:520px){
  .rulik-widget{width:var(--rulik-compact-width,min(260px,calc(100vw - 24px)))}
}
@media(max-width:767px) and (max-height:420px){
  .rulik-widget{width:var(--rulik-compact-width,min(220px,calc(100vw - 24px)))}
}
@keyframes rulik-compact-attention{
  0%,100%{transform:translateY(0) rotate(0)}
  38%{transform:translateY(-2px) rotate(-3deg)}
  68%{transform:translateY(0) rotate(2deg)}
}
@keyframes rulik-compact-send{
  0%,100%{transform:scale(1)}
  45%{transform:scale(.94)}
}
@media(prefers-reduced-motion:reduce){
  .rulik-widget[data-rulik-reaction] .rulik-open .rulik-portrait{animation:none}
  .rulik-widget,.rulik-widget[data-rulik-revealed]:not([data-obscured]),
  .rulik-widget[data-obscured] .rulik-portrait img,.rulik-widget[data-obscured] .rulik-portrait canvas{transition:none!important}
}
@media(scripting:none){
  .rulik-widget:not([data-rulik-revealed]){opacity:1;visibility:visible!important}
  .rulik-widget:not([data-rulik-revealed]) .rulik-portrait img{visibility:visible!important}
}
@media(scripting:none) and (max-width:767px),
      (scripting:none) and (max-width:1100px) and (hover:none),
      (scripting:none) and (max-width:1100px) and (pointer:coarse){
  body{padding-bottom:0}
  .rulik-widget{position:relative;left:auto;top:auto;right:auto;bottom:auto;margin:20px 12px 12px auto;visibility:visible!important}
  .rulik-widget .rulik-portrait img{visibility:visible!important}
}
@media(forced-colors:active) and (max-width:767px),
      (forced-colors:active) and (max-width:1100px) and (hover:none),
      (forced-colors:active) and (max-width:1100px) and (pointer:coarse){
  .rulik-widget:focus-within{outline:2px solid Highlight;outline-offset:-2px}
  .rulik-widget[data-placement="compact"]{border-color:CanvasText}
}

/* A portrait's explicit visible fallback must not escape a hidden launcher. */
.rulik-widget[data-obscured] .rulik-portrait img,
.rulik-widget[data-obscured] .rulik-portrait canvas{visibility:hidden!important;transition:visibility 0s linear 300ms}
body.menu-open .rulik-widget{opacity:0;visibility:hidden;transition:none}
body.menu-open .rulik-widget .rulik-portrait img,
body.menu-open .rulik-widget .rulik-portrait canvas{visibility:hidden!important;transition:none}
