/* SITE 95, the real world: the first screen after the intro. The M stands in its world; sideways changes the world,
   down continues the page. The still is a CSS background (only the one for this theme and screen shape loads), the live
   world fades in over it. Night: near black ground, off white type, Ice for Book a call. Day: bone, ink, Ice Deep. */
.r95{--r95-bg:#0A0B0D;--r95-fg:#F2F0EF;--r95-fg2:rgb(242 240 239 / .74);--r95-act:#A2CFE7;--r95-act-ink:#0A0B0D;
  position:relative;height:var(--wh,100svh);min-height:520px;overflow:hidden;isolation:isolate;background:var(--r95-bg);color:var(--r95-fg);touch-action:pan-y;
  -webkit-user-select:none;user-select:none}
html[data-theme=light] .r95{--r95-bg:#E8E3DD;--r95-fg:#1A1C20;--r95-fg2:rgb(26 28 32 / .74);--r95-act:#2F6F95;--r95-act-ink:#F2F0EF}
.r95-still{position:absolute;inset:0;background:var(--r95-bg) center/cover no-repeat;transition:opacity .8s cubic-bezier(.2,.7,.1,1)}
html[data-theme=dark] .r95-still{background-image:url(/assets/95/still/l-dark-1920.jpg);background-image:image-set(url(/assets/95/still/l-dark-1920.avif) type("image/avif"),url(/assets/95/still/l-dark-1920.webp) type("image/webp"))}
html[data-theme=light] .r95-still{background-image:url(/assets/95/still/l-light-1920.jpg);background-image:image-set(url(/assets/95/still/l-light-1920.avif) type("image/avif"),url(/assets/95/still/l-light-1920.webp) type("image/webp"))}
@media (max-width:1280px) and (orientation:landscape){
  html[data-theme=dark] .r95-still{background-image:url(/assets/95/still/l-dark-1280.jpg);background-image:image-set(url(/assets/95/still/l-dark-1280.avif) type("image/avif"),url(/assets/95/still/l-dark-1280.webp) type("image/webp"))}
  html[data-theme=light] .r95-still{background-image:url(/assets/95/still/l-light-1280.jpg);background-image:image-set(url(/assets/95/still/l-light-1280.avif) type("image/avif"),url(/assets/95/still/l-light-1280.webp) type("image/webp"))}}
@media (orientation:portrait){
  html[data-theme=dark] .r95-still{background-image:url(/assets/95/still/p-dark-1080.jpg);background-image:image-set(url(/assets/95/still/p-dark-1080.avif) type("image/avif"),url(/assets/95/still/p-dark-1080.webp) type("image/webp"))}
  html[data-theme=light] .r95-still{background-image:url(/assets/95/still/p-light-1080.jpg);background-image:image-set(url(/assets/95/still/p-light-1080.avif) type("image/avif"),url(/assets/95/still/p-light-1080.webp) type("image/webp"))}}
@media (orientation:portrait) and (max-resolution:1.5dppx){
  html[data-theme=dark] .r95-still{background-image:url(/assets/95/still/p-dark-720.jpg);background-image:image-set(url(/assets/95/still/p-dark-720.avif) type("image/avif"),url(/assets/95/still/p-dark-720.webp) type("image/webp"))}
  html[data-theme=light] .r95-still{background-image:url(/assets/95/still/p-light-720.jpg);background-image:image-set(url(/assets/95/still/p-light-720.avif) type("image/avif"),url(/assets/95/still/p-light-720.webp) type("image/webp"))}}
.r95-cv{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .9s cubic-bezier(.2,.7,.1,1);cursor:grab;touch-action:pan-y}
.r95-cv:active{cursor:grabbing}
.r95.is-live .r95-cv{opacity:1}
.r95.is-live .r95-still{opacity:0}

/* the header: the wordmark (its M is the light switch), Book a call, Menu. One filled Book a call on this screen. */
.r95-hud{position:absolute;z-index:4;top:max(20px,calc(12px + env(safe-area-inset-top)));left:max(20px,calc(14px + env(safe-area-inset-left)));right:max(20px,calc(14px + env(safe-area-inset-right)));
  display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--r95-fg)}
.r95-hud .brand{display:flex;align-items:center;color:inherit}
.r95-hud .brand a{color:inherit;display:block}
.r95-hud .wm-svg,.r95-hud .emb-svg{display:block;height:22px;width:auto}
.r95-hud .emb{appearance:none;border:0;background:none;color:inherit;padding:11px 0;margin:-11px 0;cursor:pointer;min-width:26px}
.r95-hud .emb.press .emb-svg{animation:r95-press .32s cubic-bezier(.3,1.6,.5,1)}
@keyframes r95-press{0%{transform:scale(1)}35%{transform:scale(.82) translateY(1px)}100%{transform:scale(1)}}
.r95-hud .right{display:flex;align-items:center;gap:10px}
.r95-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;font:600 14px/1 Switzer,sans-serif;text-decoration:none;white-space:nowrap;color:var(--r95-fg);box-shadow:inset 0 0 0 1px currentColor;background:none}
.r95-btn.book{background:var(--r95-act);color:var(--r95-act-ink);box-shadow:none}
.r95-btn:focus-visible,.r95 button:focus-visible{outline:2px solid var(--r95-fg);outline-offset:3px}

/* the play controls: the world's name, three camera moves, the world arrows, and the two quiet hints */
.r95-ui{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:0 max(20px,calc(14px + env(safe-area-inset-left))) max(18px,calc(10px + env(safe-area-inset-bottom)));
  display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;color:var(--r95-fg);font:500 12px/1.2 "IBM Plex Mono",ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase}
.r95-name{margin:0;display:flex;gap:12px;align-items:center;min-height:44px}
.r95-name [data-world-count]{color:var(--r95-fg2)}
.r95-step{display:flex;align-items:center;gap:6px;justify-self:center}
.r95-step button,.r95-cams button{appearance:none;background:none;border:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;min-height:44px;min-width:44px;padding:0 10px;cursor:pointer;border-radius:999px}
.r95-step button{font-size:16px;letter-spacing:0}
.r95-hint{color:var(--r95-fg2);white-space:nowrap}
.r95-cams{display:flex;gap:2px;justify-self:end}
.r95-cams button{color:var(--r95-fg2)}
.r95-cams button[aria-pressed=true]{color:var(--r95-fg);box-shadow:inset 0 -1px 0 currentColor;border-radius:0}
.r95-down{position:absolute;z-index:3;left:50%;bottom:calc(max(18px,calc(10px + env(safe-area-inset-bottom))) + 56px);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;
  color:var(--r95-fg2);text-decoration:none;font:500 12px/1 "IBM Plex Mono",ui-monospace,Menlo,monospace;letter-spacing:.18em;text-transform:uppercase;min-height:44px;min-width:44px;justify-content:flex-end}
.r95-down i{display:block;width:1px;height:26px;background:currentColor;transform-origin:top;animation:r95-cue 2.4s cubic-bezier(.65,0,.35,1) infinite}
@keyframes r95-cue{0%{transform:scaleY(0)}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
/* the play controls paint with the page (so they are never a late largest paint); a device that keeps the still hides them */
.r95[data-still] .r95-step,.r95[data-still] .r95-cams,.r95[data-still] .r95-name{display:none}
.r95 .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.r95-touch{display:none}
@media (hover:none){.r95-touch{display:inline}.r95-mouse{display:none}}
@media (max-width:699px){
  .r95-hud .menu{display:none}
  .r95-ui{grid-template-columns:1fr auto;grid-template-areas:"name cams" "step step";row-gap:2px}
  .r95-name{grid-area:name}.r95-cams{grid-area:cams}.r95-step{grid-area:step}
  .r95-down{bottom:calc(max(18px,calc(10px + env(safe-area-inset-bottom))) + 104px)}
  .r95-cams button{padding:0 8px}}
@media (prefers-reduced-motion:reduce){.r95-down i{animation:none;transform:none}.r95-still,.r95-cv{transition:none}}
