.hero.hero-managed{display:block;padding:0;margin:28px 0 0;background:#edf1f7;border-radius:24px;overflow:hidden;position:relative;isolation:isolate;min-height:0;height:auto;gap:0}
.managed-stage{position:relative;width:100%;aspect-ratio:16/9;background:#111b29}
.managed-banner{position:absolute;inset:0;margin:0;overflow:hidden;background:#111b29;color:#fff}
.managed-banner[hidden]{display:none!important}
.managed-photo{position:absolute;inset:0;overflow:hidden;line-height:0}
.managed-image{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;opacity:1!important}
.managed-copy{position:absolute;z-index:2;top:28px;left:32px;max-width:min(520px,57%);padding:0;pointer-events:none;text-shadow:0 2px 12px #000b}
.managed-logo{display:block!important;width:119px!important;height:auto!important;max-height:48px;object-fit:contain!important;position:static!important;opacity:1!important;background:#fff;border-radius:8px;padding:5px 8px;margin:0 0 14px;box-sizing:border-box}
.managed-title{font-size:clamp(24px,3vw,39px);line-height:1.25;letter-spacing:-1.3px;color:#fff!important;margin:0 0 10px;font-weight:900;text-wrap:balance}
.managed-description{font-size:14px;line-height:1.6;color:#fff!important;margin:0 0 16px;font-weight:600;max-width:440px}
.managed-copy:before{content:"";position:absolute;z-index:-1;inset:-28px -35px -25px -32px;background:radial-gradient(ellipse at 20% 20%,#0c172bb8,transparent 75%);pointer-events:none}
.managed-cta{display:inline-flex;align-items:center;min-height:43px;padding:10px 19px;border-radius:24px;background:#3158ef;color:#fff!important;text-shadow:none;font-weight:800;font-size:14px;pointer-events:auto;box-shadow:0 4px 16px #0003;white-space:nowrap}
.managed-cta:hover{background:#2542c7}.managed-cta:focus-visible,.banner-controls button:focus-visible{outline:3px solid #ffdb64;outline-offset:3px}
.banner-controls{position:absolute;z-index:5;left:24px;bottom:18px;display:flex;align-items:center;gap:9px;padding:7px 10px;background:#fffffff0;border-radius:30px;box-shadow:0 3px 16px #0002;color:#172338}
.banner-controls button{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:50%;background:#fff;border:1px solid #dce3ed;color:#172338;padding:0;font:inherit;cursor:pointer}
.banner-controls .banner-dot{width:9px;height:9px;background:#b7c0d3;border:0}.banner-controls .banner-dot[aria-pressed=true]{width:23px;border-radius:12px;background:#3158ef}
.banner-count{font-size:11px;font-weight:800;min-width:43px;text-align:center}
.admin-entry{display:inline-flex;align-items:center;gap:5px;color:#526174;font-size:12px;font-weight:700;white-space:nowrap;padding:9px 10px;border:1px solid #e2e7f0;border-radius:9px;background:#fff}.admin-entry:hover{color:#3158ef;border-color:#3158ef}
.side-phone strong{animation:dd-phone-pulse 1.55s ease-in-out infinite;text-shadow:0 0 7px #fff,0 0 18px #dce9ff,0 0 34px #8bb8ff,0 0 48px #5b8dff}
.side-phone{animation:dd-phone-halo 1.55s ease-in-out infinite}
@keyframes dd-phone-pulse{0%,100%{transform:scale(1);filter:brightness(1.05)}50%{transform:scale(1.065);filter:brightness(1.4);text-shadow:0 0 10px #fff,0 0 25px #fff,0 0 43px #c1dbff,0 0 60px #80b5ff}}
@keyframes dd-phone-halo{0%,100%{box-shadow:0 0 12px #2c67f766}50%{box-shadow:0 0 20px #4279ffb0,0 0 35px #5389ff66}}
.managed-banner[data-layout=mobile]{position:relative;inset:auto;display:flex;flex-direction:column;background:#102448}
.managed-banner[data-layout=mobile] .managed-copy{position:relative;top:auto;left:auto;max-width:none;width:100%;padding:16px 18px 14px;text-shadow:none;order:0;background:linear-gradient(120deg,#102448,#23417a)}
.managed-banner[data-layout=mobile] .managed-copy:before{display:none}
.managed-banner[data-layout=mobile] .managed-logo{width:91px!important;max-height:34px;margin:0 0 9px;padding:3px 6px}
.managed-banner[data-layout=mobile] .managed-title{font-size:23px;line-height:1.25;letter-spacing:-.8px;margin:0 0 6px}
.managed-banner[data-layout=mobile] .managed-description{font-size:12px;line-height:1.5;margin:0 0 11px;max-width:none}
.managed-banner[data-layout=mobile] .managed-cta{font-size:12px;min-height:35px;padding:7px 15px}
.managed-banner[data-layout=mobile] .managed-photo{position:relative;inset:auto;order:1;aspect-ratio:16/9;width:100%;background:#101b28}
@media(min-width:801px){header{gap:20px}.header-search{min-width:180px}}
@media(max-width:800px){.hero.hero-managed{margin-top:18px;border-radius:18px}.managed-stage{aspect-ratio:auto;min-height:0}.managed-stage>.managed-banner[data-layout=mobile]{position:relative}.managed-stage>.managed-banner[hidden]{display:none!important}.banner-controls{position:relative;left:auto;bottom:auto;justify-content:center;width:100%;border-radius:0;box-shadow:none;padding:9px;background:#edf2fc}.banner-controls button{width:30px;height:30px}.banner-controls .banner-dot{width:8px;height:8px}.banner-controls .banner-dot[aria-pressed=true]{width:22px}.admin-entry{font-size:11px;padding:8px 9px;margin-left:0}.hero.hero-managed .managed-image{object-fit:contain}}
@media(prefers-reduced-motion:reduce){.side-phone,.side-phone strong{animation:none!important}.managed-banner{scroll-behavior:auto}}

/* Per-slide full artwork; HTML consultation button remains available. */
.managed-banner[data-image-only=true] .managed-photo{inset:0!important;left:0!important;width:100%!important;height:100%!important;background:#edf3fa!important}
.managed-banner[data-image-only=true] .managed-photo:after{display:none!important}
.managed-banner[data-image-only=true] .managed-copy{position:absolute!important;inset:0!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important;background:transparent!important;pointer-events:none}
.managed-banner[data-image-only=true] .managed-copy>:not(.managed-cta){display:none!important}
.managed-banner[data-image-only=true] .managed-cta{position:absolute!important;left:22px!important;bottom:18px!important;pointer-events:auto;font-size:12px!important;min-height:34px!important;padding:8px 16px!important}
@media(max-width:800px){.managed-banner[data-image-only=true] .managed-cta{left:10px!important;bottom:9px!important;font-size:9px!important;min-height:25px!important;padding:5px 9px!important}.banner-controls{gap:6px!important;flex-wrap:wrap}}
