@keyframes fadeInOut {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes darkening {
  0% {
    background-color: rgba(0, 0, 0, 0); }
  50% {
    background-color: rgba(0, 0, 0, 0.692); }
  100% {
    background-color: rgba(0, 0, 0, 0); } }

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(0em); }
  100% {
    opacity: 1;
    transform: translateX(5em); } }

@keyframes fadeInRight {
  0% {
    opacity: 1;
    transform: translateX(5em); }
  100% {
    opacity: 0;
    transform: translateX(0em); } }

.fadeInOut {
  animation: 4s fadeInOut 0.5s;
  opacity: 1;
  transition: visibility 0s 2s, opacity; }

.fadeInLeft {
  animation-name: fadeInLeft; }

.fadeInRight {
  animation-name: fadeInLeft; }

.darkening {
  animation: 4s darkening 0.5s; }

.nautile-theme .scene-wrapper {
  position: relative;
  width: 99vw;
  height: 85vh;
  overflow: hidden;
  margin: 0 auto; }
  .nautile-theme .scene-wrapper .hidden {
    visibility: hidden; }
  .nautile-theme .scene-wrapper * {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
    -webkit-user-drag: none;
    -webkit-touch-callout: none;
    -ms-content-zooming: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .nautile-theme .scene-wrapper #nautile-boutique-app {
    width: 100%;
    height: 100%; }
  .nautile-theme .scene-wrapper .modal-wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 75%;
    height: 75%;
    overflow: hidden;
    z-index: 500 !important;
    background-color: rgba(0, 0, 0, 0.6);
    line-height: 1.2em;
    border-radius: 0.35em;
    opacity: 0;
    visibility: hidden; }
    .nautile-theme .scene-wrapper .modal-wrapper.visible {
      opacity: 1;
      visibility: visible; }
    .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper {
      display: contents; }
      .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper canvas {
        height: 100% !important; }
      .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper .model3d-popup-wrapper {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        -moz-box-direction: normal;
        -moz-box-orient: vertical;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: distribute;
        -webkit-justify-content: space-around;
        justify-content: space-around;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
        width: 100%;
        height: 100%; }
        .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper .model3d-popup-wrapper .hotspot-description,
        .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper .model3d-popup-wrapper .hotspot-description a {
          color: #f8f8f8; }
        .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper .model3d-popup-wrapper .hotspot-title {
          color: #f8f8f8;
          font-size: 1.6em;
          font-weight: 600; }
      .nautile-theme .scene-wrapper .modal-wrapper .content-wrapper iframe {
        width: 100%; }
    .nautile-theme .scene-wrapper .modal-wrapper .close {
      position: absolute;
      z-index: 1;
      top: 0;
      right: 0;
      cursor: pointer; }
  .nautile-theme .scene-wrapper .nautile-boutique-scene-menu {
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 1.5em;
    width: auto;
    max-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    margin-left: 0;
    z-index: 12; }
    .nautile-theme .scene-wrapper .nautile-boutique-scene-menu.hidden {
      display: none; }
    .nautile-theme .scene-wrapper .nautile-boutique-scene-menu ul {
      background-color: #f8f8f877;
      color: #404040;
      list-style: none;
      padding-left: 0.5em; }
      .nautile-theme .scene-wrapper .nautile-boutique-scene-menu ul .menu-item {
        padding: 0.5em;
        cursor: pointer;
        border-bottom: 1px solid rgba(0, 0, 0, 0.6); }
        .nautile-theme .scene-wrapper .nautile-boutique-scene-menu ul .menu-item:hover {
          font-weight: bold; }
        .nautile-theme .scene-wrapper .nautile-boutique-scene-menu ul .menu-item.item-menu-current {
          background-color: rgba(183, 88, 88, 0.5);
          color: #f8f8f8; }
  .nautile-theme .scene-wrapper .nautile-boutique-toggle-menu-button {
    position: absolute;
    left: 0;
    top: 0;
    width: 3em;
    height: 3em;
    z-index: 15;
    cursor: pointer;
    background: transparent; }
    .nautile-theme .scene-wrapper .nautile-boutique-toggle-menu-button:before, .nautile-theme .scene-wrapper .nautile-boutique-toggle-menu-button.expand:before {
      position: absolute;
      content: "";
      font-size: 3em;
      width: 100%;
      height: 100%;
      display: block; }
    .nautile-theme .scene-wrapper .nautile-boutique-toggle-menu-button:before {
      background: url("/img/nav/collapse.png");
      background-size: cover; }
    .nautile-theme .scene-wrapper .nautile-boutique-toggle-menu-button.expand:before {
      background: url("/img/nav/expand.png");
      background-size: cover; }
  .nautile-theme .scene-wrapper .nautile-boutique-title-bar {
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    -moz-user-select: text;
    -webkit-user-select: text;
    -ms-user-select: text;
    user-select: text; }
    .nautile-theme .scene-wrapper .nautile-boutique-title-bar .title-scene-name {
      left: 50%;
      position: absolute;
      width: 200px;
      height: 50px;
      font-size: 2em; }
  .nautile-theme .scene-wrapper.view-control-buttons {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: end;
    -moz-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    margin-right: 5em; }
    .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      position: relative;
      right: 1em;
      bottom: 1em; }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewUpButton,
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewDownButton,
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewLeftButton,
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewRightButton,
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewPlusButton,
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewMinusButton {
        background-size: cover;
        width: 2em;
        height: 2em; }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewUpButton {
        background-image: url("/img/nav/up.png"); }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewDownButton {
        background-image: url("/img/nav/down.png"); }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewLeftButton {
        background-image: url("/img/nav/left.png"); }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewRightButton {
        background-image: url("/img/nav/right.png"); }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewPlusButton {
        background-image: url("/img/nav/plus.png"); }
      .nautile-theme .scene-wrapper.view-control-buttons .nautile-boutique-view-control-wrapper .viewMinusButton {
        background-image: url("/img/nav/minus.png"); }
