/* The Cloud is an interactive installation, using Barbara's original kiss contours. */
.baci-cloud-installation{container-type:inline-size;container-name:baci-cloud-width;position:relative;background:#FFFFFF;color:#1E1E26;font-family:inherit;isolation:isolate}
.baci-cloud-installation *{box-sizing:border-box}
.baci-cloud-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:15px;margin:0 0 8px}
.baci-cloud-controls p{margin:0!important;font-size:16px!important}
.baci-cloud-pause{border:0;border-bottom:1px solid currentColor;padding:6px 0;background:transparent;color:#1E1E26;font:inherit;cursor:pointer;white-space:nowrap}
.baci-cloud-destination h1{font-size:36px!important;line-height:1.15!important;margin-bottom:24px!important}.baci-cloud-scene{position:relative;width:100%;height:580px;overflow:hidden;background:#FFFFFF}
.baci-cloud-sky{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.baci-cloud-sky path{vector-effect:non-scaling-stroke}
.baci-cloud-pendant{position:absolute;left:var(--x);top:var(--anchor);height:var(--drop);width:0;transform-origin:50% 0;animation:baci-cloud-sway var(--period) ease-in-out var(--delay) infinite alternate;z-index:2}
.baci-cloud-thread{position:absolute;top:0;left:0;width:1px;height:100%;background:#1E1E26;opacity:.24;pointer-events:none}
.baci-cloud-kiss{position:absolute;bottom:-28px;left:-28px;width:56px;height:56px;border:0;padding:4px;background:transparent!important;color:#C60D06;cursor:pointer;transition:transform .25s ease;z-index:3;border-radius:0}
.baci-cloud-kiss svg{display:block;width:100%;height:100%;object-fit:contain;transform:rotate(var(--tilt));pointer-events:none}
.baci-cloud-kiss:hover,.baci-cloud-kiss[aria-expanded=true]{transform:scale(1.18)}
.baci-cloud-kiss:focus-visible{outline:2px solid #C60D06;outline-offset:4px}
.baci-cloud-pendant:has(.baci-cloud-kiss:hover),.baci-cloud-pendant:has(.baci-cloud-kiss:focus-visible),.baci-cloud-pendant:has(.baci-cloud-kiss[aria-expanded=true]){animation-play-state:paused;z-index:4}
.baci-cloud-installation.is-paused .baci-cloud-pendant{animation-play-state:paused}
.baci-cloud-kiss.is-new:after{content:'';position:absolute;inset:-6px;border:1px solid #C60D06;opacity:.55;animation:baci-cloud-welcome 2.8s ease-out 3;pointer-events:none}
.baci-cloud-paper{position:fixed;inset:0;margin:auto;max-width:440px;width:calc(100% - 40px);max-height:calc(100dvh - 80px);padding:48px 32px 28px;border:1px solid #C60D06;border-top:5px solid #C60D06;border-radius:0;background:#FFFFFF;color:#1E1E26;overflow:auto;opacity:0;transform:scale(.88) translateY(16px);transition:opacity .3s ease,transform .3s ease;font-family:inherit}
.baci-cloud-paper.is-visible{opacity:1;transform:scale(1) translateY(0)}
.baci-cloud-paper::backdrop{background:rgb(255 255 255 / 78%)}
.baci-cloud-paper-logo{display:block;width:180px;max-width:65%;height:auto;margin:32px auto 0;object-fit:contain}
.baci-cloud-paper-text p{font-size:27px;line-height:1.4;font-weight:430;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.baci-cloud-paper.is-long .baci-cloud-paper-text p{font-size:19px;line-height:1.55}
.baci-cloud-paper-close{position:absolute;top:10px;right:14px;width:34px;height:34px;border:0;background:transparent;color:#1E1E26;font:inherit;font-size:28px;line-height:1;cursor:pointer}
.baci-cloud-paper-source{display:block;font-size:14px;line-height:1.5;margin-top:16px}
.baci-cloud-paper-source a{color:inherit;text-decoration:underline}
.baci-cloud-keep{font:inherit;font-size:15px;border:0;border-bottom:1px solid #C60D06;background:transparent;color:#1E1E26;padding:6px 0;cursor:pointer;margin-top:16px}
.baci-cloud-paper :focus-visible,.baci-cloud-pause:focus-visible{outline:2px solid #C60D06;outline-offset:4px}
.baci-cloud-pagination{display:flex;gap:20px;align-items:center;justify-content:center;margin:24px 0}
.baci-cloud-pagination a{color:#1E1E26;text-decoration:underline;font-size:16px}
.baci-cloud-empty{margin:24px 0}
.baci-cloud-fallback{margin-top:24px}
.baci-cloud-fallback details{padding:12px 0;border-top:1px solid #C60D06}
.baci-cloud-fallback summary{cursor:pointer}
@keyframes baci-cloud-sway{from{transform:rotate(calc(var(--swing) * -1))}to{transform:rotate(var(--swing))}}
@keyframes baci-cloud-welcome{from{transform:scale(.8);opacity:.7}to{transform:scale(1.45);opacity:0}}
@media(max-width:600px){.baci-cloud-scene{height:700px}.baci-cloud-kiss{width:48px;height:48px;left:-24px;bottom:-24px}.baci-cloud-controls{align-items:flex-start}.baci-cloud-controls p{font-size:14px!important;max-width:65%}.baci-cloud-pause{font-size:13px}.baci-cloud-paper{padding:48px 24px 24px}.baci-cloud-paper-text p{font-size:24px}}
@media(prefers-reduced-motion:reduce){.baci-cloud-pendant,.baci-cloud-kiss.is-new:after{animation:none!important}.baci-cloud-kiss,.baci-cloud-paper{transition:none!important}}
@media(max-width:600px){.baci-cloud-pendant{left:var(--x-small);top:174px;height:var(--drop-small);--swing:.8deg}}

@container baci-cloud-width (max-width:680px){.baci-cloud-scene{height:700px}.baci-cloud-sky{height:580px}.baci-cloud-pendant{left:var(--x-small);top:174px;height:var(--drop-small);--swing:.8deg}.baci-cloud-kiss{width:48px;height:48px;left:-24px;bottom:-24px}.baci-cloud-controls{align-items:flex-start}.baci-cloud-controls p{font-size:14px!important;max-width:65%}.baci-cloud-pause{font-size:13px}}

/* Two distant clouds suggest the wider installation; only the centre is interactive. */
.baci-cloud-universe{position:relative;isolation:isolate}
.baci-cloud-main{position:relative;width:68%;margin:0 auto;z-index:2}
.baci-cloud-main .baci-cloud-scene{height:720px}
.baci-cloud-main .baci-cloud-sky{height:580px}
.baci-cloud-distant{position:absolute;width:15%;pointer-events:none;user-select:none;z-index:1}
.baci-cloud-distant-left{left:0;top:66px}
.baci-cloud-distant-right{right:0;top:126px}
.baci-cloud-distant svg{display:block;width:100%;height:auto;overflow:visible}
.baci-cloud-distant svg>path{vector-effect:non-scaling-stroke;stroke-width:1.4px}
.baci-cloud-distant-pendant{animation:baci-cloud-sway var(--period) ease-in-out var(--delay) infinite alternate;transform-box:view-box}
.baci-cloud-installation.is-paused .baci-cloud-distant-pendant{animation-play-state:paused}
@container baci-cloud-width (max-width:680px){.baci-cloud-main{width:100%;padding-top:calc(55cqw + 40px)}.baci-cloud-main .baci-cloud-scene{height:calc(24cqw + 510px)}.baci-cloud-main .baci-cloud-sky{height:78.378378cqw}.baci-cloud-main .baci-cloud-pendant{top:24cqw}.baci-cloud-distant{width:28%;top:8px}.baci-cloud-distant-left{left:4%}.baci-cloud-distant-right{right:4%;top:32px}}
@media(prefers-reduced-motion:reduce){.baci-cloud-distant-pendant{animation:none!important}}
