html,body,.home-stage,.made-page{background:#f0f0f2!important}
.page-leaving body:not(.home) main{animation:none;opacity:0;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease}
.page-leaving .home-stage .void,.page-leaving .home-stage .handline{animation:none;opacity:0;transition:opacity .16s ease}
.logo-glass{position:fixed;z-index:31;top:25px;left:50%;transform:translateX(-50%);width:214px;height:62px;border:1px solid transparent;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(240,240,242,.06);backdrop-filter:blur(15px) saturate(145%);-webkit-backdrop-filter:blur(15px) saturate(145%);transition:background .28s,border-color .28s,box-shadow .28s}
.sub-header .logo-glass .brand{position:static;transform:none;pointer-events:auto}
.sub-header .logo-glass .brand img{transition:filter .28s}
.logo-on-color .logo-glass{background:rgba(85,17,144,.3);border-color:rgba(255,255,255,.2);box-shadow:0 8px 30px rgba(43,4,72,.12)}
.logo-on-color .sub-header .logo-glass .brand img{filter:brightness(0) invert(1)}
.page-footer{border:0!important}.page-footer a{text-decoration:none}.legal-links{display:flex;gap:22px}
@media(max-width:1100px){.logo-glass{position:static;transform:none;width:200px;height:58px;background:transparent;backdrop-filter:none}.sub-header .logo-glass .brand{position:static}}
@media(max-width:1100px){
  .home-stage{height:100svh;min-height:700px}
  .home .logo-glass{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:20}
  .home .left-nav{position:fixed;left:12px;right:auto;bottom:12px;top:auto;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px);transform:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px;overflow:hidden;background:rgba(250,250,252,.82);border:1px solid rgba(123,36,216,.16);border-radius:18px;box-shadow:0 8px 30px rgba(45,9,70,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:50}
  .home .left-nav a{flex:1 1 0;min-width:0;padding:10px 2px;font-size:10.5px;white-space:nowrap}
  .home .right-nav{display:none}
  .home .void{top:82px;height:500px}
  .home .floating-flower{width:min(340px,86vw)}
  .home .handline{top:auto;bottom:122px;font-size:20px}
}
@media(max-width:650px){
  html,body{overflow-x:hidden}
}
@media(prefers-reduced-motion:reduce){.page-leaving body:not(.home) main,.page-leaving .home-stage .void,.page-leaving .home-stage .handline{transition:none}}
@media(max-width:1100px){.home .left-nav a[data-mobile]{font-size:0}.home .left-nav a[data-mobile]:after{content:attr(data-mobile);font-size:12px}}

@media(max-width:1100px){
  .home-stage{min-height:620px}
  .home .logo-glass{background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .home .left-nav{bottom:24px}
  .home .left-nav a:hover{transform:none}
  .home .void{top:74px;height:455px}
  .home .floating-flower{width:min(320px,82vw)}
  .home .handline{bottom:148px}
}

/* The homepage balloon can be grabbed, thrown and softly bounced. */
.balloon-physics .void{position:fixed;inset:0;width:auto;height:auto;transform:none;pointer-events:none}
.balloon-physics .floating-flower{left:0;top:0;animation:none;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-drag:none;cursor:grab;will-change:transform;transform:translate3d(var(--balloon-x),var(--balloon-y),0) rotate(var(--balloon-r)) scale(var(--balloon-sx,1),var(--balloon-sy,1))}
.balloon-physics .floating-flower.is-dragging{cursor:grabbing;filter:drop-shadow(22px 30px 24px rgba(57,18,79,.24))}
.home .right-nav .contact-cta{padding:10px 13px 10px 17px;border:1px solid rgba(123,36,216,.42);border-radius:999px;background:rgba(123,36,216,.07)}
.home .right-nav .contact-plus{font-size:25px;font-weight:400;line-height:.7}
@media(max-width:1100px){
  .home .handline{top:62svh;bottom:auto}
  .home .left-nav{bottom:36px}
}

/* One contact treatment and an exact logo color across browsers. */
.brand img,.made-page .brand img{filter:none!important}
.logo-on-color .sub-header .logo-glass .brand img{filter:brightness(0) invert(1)!important}
.instagram-link{display:inline-flex!important;align-items:center;gap:7px}
.contact-cta,.home .right-nav .contact-cta{display:inline-flex!important;align-items:center;gap:13px;padding:10px 13px 10px 17px;border:1px solid rgba(123,36,216,.42);border-radius:999px;background:rgba(123,36,216,.07)}
.contact-plus,.home .right-nav .contact-plus{font-size:25px;font-weight:400;line-height:.7}
.contact-cta:hover,.home .right-nav .contact-cta:hover{transform:none!important;background:rgba(123,36,216,.13)}
.home .handline{top:auto!important;bottom:clamp(96px,12vh,145px)}
@media(max-width:1100px){
  .home .handline{top:auto!important;bottom:142px}
}

/* Reveal the glass only where the draggable flower actually crosses the copy. */
@media(min-width:1101px){
  .home .left-nav a,
  .home .right-nav .instagram-link,
  .home .handline{
    isolation:isolate;
  }
  .home .left-nav a,
  .home .right-nav .instagram-link{
    position:relative;
  }
  .home .left-nav a::before,
  .home .right-nav .instagram-link::before,
  .home .handline::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-9px -14px;
    border-radius:18px;
    opacity:0;
    background:rgba(240,240,242,.5);
    -webkit-backdrop-filter:blur(22px) saturate(135%);
    backdrop-filter:blur(22px) saturate(135%);
    box-shadow:0 8px 24px rgba(43,4,72,.04);
    transition:opacity .18s ease;
  }
  .home .left-nav a.flower-overlap::before,
  .home .right-nav .instagram-link.flower-overlap::before,
  .home .handline.flower-overlap::before{
    opacity:1;
  }
  .home .right-nav .contact-cta.flower-overlap{
    -webkit-backdrop-filter:blur(22px) saturate(135%);
    backdrop-filter:blur(22px) saturate(135%);
    background:rgba(240,240,242,.5);
  }
}
