/* Shared device presentation; the original Blubook palette and type remain intact. */
.hero-preview,.feature-preview{position:relative;isolation:isolate;background:transparent!important;border-radius:32px;overflow:visible;padding:44px 24px 28px;gap:28px}
.hero-preview::before,.feature-preview::before{content:"";position:absolute;inset:3% -2% 12%;z-index:-1;border-radius:48%;background:radial-gradient(ellipse,#a5d9ffb3 0%,#bde8ff70 42%,#dff3ff00 72%)}
.agency-home .hero-preview::before,.agency-home .feature-preview::before{background:radial-gradient(ellipse,#83c7eb88,transparent 72%)}
.phone{width:280px;max-width:100%;border:6px solid #193c5d;border-radius:39px;box-shadow:0 35px 65px -22px #163e6452,0 3px 7px #163e6420;transform:translateY(var(--phone-drift,0px));transition:box-shadow .4s ease;will-change:auto}
.phone img{aspect-ratio:1206 / 2622;object-fit:cover;object-position:top}
.screen-callout{position:absolute;z-index:2;left:-16px;top:29%;display:flex;align-items:flex-start;gap:10px;max-width:225px;padding:16px 18px;background:#f8fcfff2;border:1px solid #c2def1;border-radius:16px;box-shadow:0 16px 40px #163e641a;transform:translateY(calc(var(--phone-drift,0px) * -.5))}
.screen-callout strong{display:block;font-size:14px;line-height:1.4;font-weight:650}.screen-callout small{display:block;font-size:11px;color:var(--copy);margin-top:6px;line-height:1.5}.callout-dot{flex:0 0 8px;width:8px;height:8px;margin-top:5px;background:#3c96ee;border-radius:50%;box-shadow:0 0 0 4px #3c96ee16}
.feature-preview .screen-callout{left:auto;right:-20px;top:55%}.feature-preview figcaption,.hero-preview figcaption{max-width:340px}.feature-preview figcaption strong,.hero-preview figcaption strong{font-size:15px}
.chapter-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:48px}.chapter-nav a{display:flex;align-items:center;gap:12px;padding:18px 16px;border:1px solid var(--line);border-radius:13px;font-size:14px;font-weight:600;background:#f8fcff90;transition:background .2s,transform .2s}.chapter-nav a>span{font-size:11px;color:var(--blue)}.chapter-nav i{font-style:normal;margin-left:auto;color:var(--blue)}.chapter-nav a:hover{transform:translateY(-3px);background:#fff;text-decoration:none}.agency-home .chapter-nav{grid-template-columns:repeat(3,1fr)}
@media(min-width:901px){#events>.feature-preview,#agency-events>.feature-preview{grid-column:1;grid-row:1}#events>.feature-copy,#agency-events>.feature-copy{grid-column:2;grid-row:1}#events .screen-callout,#agency-events .screen-callout{right:auto;left:-12px}.feature{gap:92px}.hero{gap:60px}.hero-preview .phone{width:292px}}
/* Scroll motion is added by JavaScript, leaving every element visible without it. */
.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#2563eb,#68c7ff);box-shadow:0 1px 10px #2563eb55;transform:scaleX(0);transform-origin:left center;opacity:0;pointer-events:none}
@media(prefers-reduced-motion:no-preference){
  .motion-ready .scroll-progress{opacity:1;transition:opacity .35s ease,transform .08s linear}
  .motion-ready .hero-preview::before{animation:blubook-halo 5s ease-in-out infinite}
  .motion-ready .motion-reveal{opacity:0;transform:perspective(1100px) rotateX(9deg) translateY(22px) translateZ(-12px);transform-origin:50% 0;transition:opacity .72s cubic-bezier(.2,.7,.2,1) var(--motion-delay,0ms),transform .86s cubic-bezier(.16,.82,.2,1) var(--motion-delay,0ms)}
  .motion-ready .motion-reveal.motion-visible{opacity:1;transform:perspective(1100px) rotateX(0) translateY(0) translateZ(0)}
  .motion-ready .motion-parallax{translate:0 var(--motion-device-y,0px);rotate:var(--motion-device-rotate,0deg);scale:var(--motion-device-scale,1);transition:translate .12s linear,rotate .2s linear,scale .2s linear;will-change:translate,rotate}
  .motion-ready .motion-scroll-text{translate:0 var(--motion-text-y,0px);transition:translate .16s linear;will-change:translate}
  .motion-ready .hero-preview{perspective:1200px}
  .motion-ready .hero-preview.motion-reveal .phone{opacity:0;transform:rotateY(-24deg) rotateX(3deg) translateZ(-40px) scale(.97);transform-origin:50% 50%;backface-visibility:hidden;transition:opacity .72s .08s ease,transform .98s .08s cubic-bezier(.16,.84,.2,1)}
  .motion-ready .hero-preview.motion-visible .phone{opacity:1;transform:rotateY(0) rotateX(0) translateZ(0) scale(1);animation:blubook-phone-breathe 4.5s 1.35s ease-in-out infinite}
  .motion-ready .hero-preview.motion-reveal .hero-tagline{opacity:0;transform:translateY(18px);transition:opacity .75s .4s ease,transform .75s .4s cubic-bezier(.2,.7,.2,1)}
  .motion-ready .hero-preview.motion-visible .hero-tagline{opacity:1;transform:translateY(0)}
  .button{transition:transform .2s,box-shadow .2s}
  .button:hover{transform:translateY(-2px);box-shadow:0 10px 22px #163e6420}
}
@keyframes blubook-halo{0%,100%{opacity:.72;scale:.96}50%{opacity:1;scale:1.08}}
@keyframes blubook-phone-breathe{0%,100%{box-shadow:0 35px 65px -22px #163e6452,0 3px 7px #163e6420}50%{box-shadow:0 45px 78px -20px #2563eb5c,0 5px 12px #163e6427}}
@media(max-width:900px){.screen-callout{left:-8px;max-width:180px;padding:13px;top:40%}.feature-preview .screen-callout{right:-6px}.phone{width:260px}.chapter-nav{grid-template-columns:1fr 1fr}.hero-preview,.feature-preview{padding-inline:12px}}
@media(max-width:620px){.hero-preview,.feature-preview{padding:30px 8px 20px;gap:20px}.hero-preview{max-width:100%}.phone{width:250px;border-radius:36px}.screen-callout,.feature-preview .screen-callout{position:relative;top:auto;left:auto;right:auto;grid-row:2;max-width:285px;width:100%;padding:14px 16px;margin-top:0;transform:none}.hero-preview figcaption,.feature-preview figcaption{grid-row:3;font-size:13px;max-width:300px}.chapter-nav,.agency-home .chapter-nav{grid-template-columns:1fr 1fr;gap:10px;padding-bottom:36px}.chapter-nav a{font-size:12px;padding:15px 11px;gap:8px}.agency-home .chapter-nav a:last-child{grid-column:1 / -1}.feature{gap:28px}}
@media(prefers-reduced-motion:reduce){.scroll-progress{display:none}.phone,.screen-callout{transform:none!important;translate:none!important;rotate:none!important;scale:none!important}.chapter-nav a,.button,.phone{transition:none}.chapter-nav a:hover,.button:hover{transform:none}.motion-reveal{opacity:1!important;transform:none!important}.motion-scroll-text{translate:none!important}}
