/* Additive motion only. No existing header dimensions, text or theme rules. */
.hha-host { isolation:isolate; }
.hha-stage, #horizon-booking-demo .hha-host>.hha-stage { position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:1;contain:paint; }
.hha-fx { position:absolute;pointer-events:none;opacity:0;will-change:transform,opacity; }
.hha-sweep { left:-42%;top:-80%;width:40%;height:260%;background:linear-gradient(90deg,transparent,rgba(255,153,217,.04) 25%,rgba(255,182,226,.3) 50%,rgba(207,228,255,.1) 60%,transparent);transform:rotate(22deg);filter:blur(13px); }
.hha-halo { width:48%;height:240%;left:-6%;top:-65%;border-radius:50%;background:radial-gradient(ellipse,rgba(222,85,173,.32),rgba(184,87,156,.10) 38%,transparent 70%);filter:blur(16px); }
.hha-wave { width:220px;height:220px;border:1px solid rgba(237,142,204,.4);border-radius:50%;left:70px;top:calc(50% - 110px);box-shadow:0 0 12px rgba(227,132,216,.10),inset 0 0 16px rgba(209,130,220,.08); }
.hha-signal { bottom:0;left:8%;height:19px;width:65%;display:flex;gap:4px;align-items:center;justify-content:center;opacity:1; }
.hha-bar { width:2px;height:2px;border-radius:2px;background:linear-gradient(#bbd9ef,#ef94c4);box-shadow:0 0 8px #ee88bc55;transform:scaleY(.2);opacity:0; }
.hha-ribbon { width:160%;height:90%;left:-30%;top:52%;background:radial-gradient(ellipse at 38% 50%,rgba(247,126,192,.4),rgba(194,145,214,.17) 32%,transparent 65%);filter:blur(18px);border-radius:50%; }
.hha-thread { width:150%;height:1px;left:-25%;bottom:0;background:linear-gradient(90deg,transparent,#e68bb9,rgba(162,212,242,.9),transparent);box-shadow:0 -2px 15px rgba(233,159,216,.4);transform-origin:left; }
.hha-mist { width:160%;height:180%;left:-30%;top:-20%;background:radial-gradient(ellipse at 22% 58%,rgba(145,119,201,.35),transparent 35%),radial-gradient(ellipse at 70% 35%,rgba(217,148,236,.23),transparent 40%);filter:blur(18px); }
.hha-moon { width:33%;height:190%;left:48%;top:-45%;background:radial-gradient(ellipse,rgba(221,168,249,.34),rgba(138,113,218,.08) 35%,transparent 66%);mix-blend-mode:screen;filter:blur(10px); }
.hha-orbit { left:calc(68% - 86px);top:calc(43% - 86px);width:172px;height:172px;border-radius:50%;border:1px solid rgba(214,182,245,.26);border-left-color:transparent;border-bottom-color:transparent;box-shadow:0 0 8px rgba(192,129,229,.10); }
.hha-point { width:3px;height:3px;border-radius:50%;background:#e9c2f3;box-shadow:0 0 7px #d887f5,0 0 16px #b273d477; }
.hha-glint { width:24px;height:24px;background:radial-gradient(ellipse at center,rgba(252,226,255,.9),transparent 40%),linear-gradient(90deg,transparent 47%,#e9b8fa 50%,transparent 53%),linear-gradient(0deg,transparent 47%,#e9b8fa 50%,transparent 53%);filter:drop-shadow(0 0 6px #c576ee); }
.hha-ember { width:3px;height:5px;border-radius:65% 30%;background:linear-gradient(#f2d7ff,#e674dc);box-shadow:0 0 6px #ea75d1,0 0 12px #ba5edf55; }
.hha-wisp { width:50%;height:115%;left:5%;top:8%;background:radial-gradient(ellipse at 40% 65%,rgba(177,88,206,.30),transparent 66%);filter:blur(22px); }
@media(prefers-reduced-motion:reduce) { .hha-stage { display:none; } }

/* The legacy .hm-header direct-child rule positions ordinary header content.
   Keep the effect layer absolute: a relative flex child collapses to 0 x 0. */
#horizon-booking-demo .hha-host > .hha-stage { position:absolute;inset:0;z-index:1; }
