.bg-black {
  background-color: #000 !important;
}


/*
---------------------------------------------
font & reset css
---------------------------------------------
*/
:root {
    --step--2: clamp(0.52rem, calc(0.47rem + 0.23vw), 0.64rem);
    --step--1: clamp(0.63rem, calc(0.56rem + 0.34vw), 0.8rem);
    --step-0: clamp(0.75rem, calc(0.65rem + 0.49vw), 1rem);
    --step-1: clamp(0.9rem, calc(0.76rem + 0.68vw), 1.25rem);
    --step-2: clamp(1.08rem, calc(0.89rem + 0.94vw), 1.56rem);
    --step-3: clamp(1.3rem, calc(1.04rem + 1.28vw), 1.95rem);
    --step-4: clamp(1.56rem, calc(1.21rem + 1.73vw), 2.44rem);
    --step-5: clamp(1.87rem, calc(1.4rem + 2.31vw), 3.05rem);
  }

  h1,
  .h1 {
    font-size: var(--step-5);
  }
  h2,
  .h2 {
    font-size: var(--step-4);
  }
  h3,
  .h3 {
    font-size: var(--step-3);
  }
  .display-1 {
    font-size: var(--step-4);
    font-weight: 300;
    line-height: 1;
  }
  .display-2 {
    font-size: var(--step-3);
    font-weight: 300;
  }
  .display-3 {
    font-size: var(--step-2);
    font-weight: 300;
  }
  .display-4 {
    font-size: var(--step-1);
    font-weight: 300;
  }
  .textlogo {
    font-size: var(--step-4);
  }
  .introtext,
  .lead {
    font-size: var(--step-1);
  }

  .cta {
    font-size: var(--step-5);
    font-weight: 300;
    line-height: 1.2;
    color: var(--white);
  }
  /*---------------------------------------------
  global styles
  ---------------------------------------------
  */
  /* html,
  body {
    font-size: var(--step-0);
  } */

  :root {
    --white: #e7ecef;
    --light-back: #f4c4fd;
    --lighter-purple: #884d94;
    --light-purple: #743780;
    --purple: hsl(290, 31%, 26%);
    --purple-trans: #4f2d56cf;
    /* brand purple color using HSL */
    --hue: 300;
    --saturation: 100%;
    --light: 27%;
    --brand: hsl(var(--hue), var(--saturation), var(--light));
    --brand-lighten: hsl(var(--hue), var(--saturation), calc(var(--light) + 10%));
    --brand-darken: hsl(var(--hue), var(--saturation), calc(var(--light) - 10%));
    /* list item stuff */
    --bg: #fdfdfd;
    --highlight1: #ed4264;
    --highlight2: #ffedbc;
    --color: #1a1e24;
    --font-number: Montserrat, Roboto, Helvetica, Arial, sans-serif;
    --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica,
      Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    /* link animations */
    --line: #275efe;
    --line-active: #275efe;
    --cassiopeia-color-primary: #112855;
    --cassiopeia-color-link: #224faa;
    --cassiopeia-color-hover: var(--brand);
  }

  h1:not(.hero h1),
  footer h3 {
    text-decoration: underline solid var(--brand) 0.3rem;
  }
  .brand {
    color: white;
    font-size: 2.5em;
  }

  a:not([class]) {
    text-decoration: underline dotted white;
    color: inherit;
    text-underline-offset: 0.4rem;
  }
  .nav-link {
    color: var(--white);
  }
  .nav-item {
    margin: 0.1rem;
  }
  .nav-pills .nav-link:hover {
    background-color: var(--cassiopeia-color-primary);
    color: #fff;
  }
  .section-heading h2 {
    line-height: 40px;
    margin-block-start: 0px;
    margin-block-end: 50px;
    padding-block-end: 20px;
    border-block-end: 1px solid rgba(250, 250, 250, 0.15);
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
  }

  .navbar {
    background: var(--brand);
    background: linear-gradient(
      270deg,
      rgba(139, 0, 139, 1) 0%,
      rgba(139, 0, 139, 1) 38%,
      rgba(139, 0, 139, 0) 100%
    );
    position: absolute;
    inset-block-start: 40px;
    inset-inline-start: 0;
    inset-inline-end: 0;
    z-index: 100;
    transition: all 0.5s ease 0s;
  }

  .navbar-brand svg {
    width: 2rem;
  }

  .nav-item img {
    display: none;
  }
  /* mobile menu */

  @media (max-width: 768px) {
    .navbar {
      position: fixed;
      inset-block-end: 0;
      inset-block-start: unset;
      background: var(--brand);
    }
    .navbar-collapse {
      position: fixed;
      left: 0;
      padding-left: 15px;
      padding-right: 15px;
      padding-bottom: 15px;
      width: 100%;
      background: var(--brand);
      height: auto;
      overflow: auto;
    }

    .brandlogo {
      position: fixed;
      bottom: 10px;
      z-index: 9999;
      width: 60px !important;
      height: 60px !important;
      background: var(--brand);
      outline: 4px solid #fff !important;
      border-radius: 40px;
      right: 20px;
      padding: 4px;
    }
    .nav-item a .image-title {
      display: none;
    }
    .nav-item img {
      height: 40px;
      display: block;
    }
    .nav-pills .nav-link.active {
      background: none;
    }
    .menuicon:before {
      background-size: 32px 32px;
      height: 32px;
      width: 32px;
      display:inline-block;
      content: '';
    }
    .home {
      background-repeat: no-repeat;
      background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128"><path fill="white" d="M121.023 126.777H56.08V74.441H23.014v52.336H6.982V58.77h4.006v64.002h8.02V70.437h41.077v52.335h56.934V58.77h4.004zM23.014 32.788h-4.006V8.131H38.2v8.62h-4.005v-4.614H23.014z"/><path fill="white" d="M101.978 73.512V99.61H72.349V73.512h29.629m3.932-3.93H68.419v33.959h37.489V69.582h.002zM125.168 68.055 64 6.888 2.832 68.055 0 65.223l64-64 64 64zM41.303 100.964h7.633v4.005h-7.633z"/><path fill="white" d="M65.736 98.331h42.853v4.006H65.736z"/></svg>');
    }
    .trips {
      background-repeat: no-repeat;
      background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128"><path fill="white" d="M68.357 55.421c-6.006 0-11.129-4.509-11.917-10.486-.869-6.594 3.775-12.666 10.352-13.536a12.262 12.262 0 0 1 1.588-.104c6.006 0 11.128 4.507 11.914 10.484.871 6.592-3.771 12.665-10.348 13.537-.526.069-1.061.105-1.589.105zm.023-20.127c-.353 0-.71.023-1.063.07-4.392.581-7.493 4.64-6.912 9.047.527 3.996 3.945 7.01 7.952 7.01.353 0 .711-.024 1.063-.071 4.391-.582 7.489-4.642 6.907-9.049-.524-3.995-3.941-7.007-7.947-7.007z"/><path fill="white" d="m75.958 87.737-20.845-2.35 2.879-25.675c.37-3.308 3.337-5.749 6.715-5.367l8.77.988c3.327.375 5.73 3.393 5.358 6.727l-2.877 25.677zM59.534 81.86l12.895 1.453 2.432-21.697a2.089 2.089 0 0 0-1.832-2.308l-8.771-.988a2.073 2.073 0 0 0-2.291 1.838L59.534 81.86zM66.035 92.898h15.523v4H66.035zM57.275 102.857h15.522v4H57.275zM26.833 123.363H71.63v4H26.833zM8.296 75.955h4v18.441h-4zM55.504 92.898h6.098v4h-6.098zM96.143 43.696c-6.634 0-12.031-5.412-12.031-12.063 0-6.652 5.397-12.064 12.031-12.064 6.635 0 12.032 5.412 12.032 12.064 0 6.651-5.398 12.063-12.032 12.063zm0-20.128c-4.429 0-8.031 3.618-8.031 8.064s3.603 8.063 8.031 8.063 8.032-3.617 8.032-8.063-3.604-8.064-8.032-8.064zM38.027 56.007c-6.797 0-12.328-5.545-12.328-12.361 0-6.813 5.53-12.357 12.328-12.357 3.294 0 6.39 1.286 8.719 3.621a12.293 12.293 0 0 1 3.608 8.736c0 6.816-5.53 12.361-12.327 12.361zm.002-20.719c-4.593 0-8.33 3.749-8.33 8.357 0 4.61 3.736 8.361 8.328 8.361s8.327-3.751 8.327-8.361c0-4.608-3.735-8.357-8.325-8.357zM9.699 69.48C4.351 69.48 0 65.118 0 59.756s4.351-9.725 9.699-9.725 9.699 4.362 9.699 9.725-4.351 9.724-9.699 9.724zm0-15.449C6.557 54.031 4 56.599 4 59.756c0 3.156 2.557 5.725 5.699 5.725s5.699-2.568 5.699-5.725c0-3.157-2.557-5.725-5.699-5.725z"/><path fill="white" d="m80.336 122.514-9.94-8.954 14.812-14.887 1.156-9.403 3.971.488-1.324 10.764-12.815 12.879 3.97 3.576 13.959-14.225 1.171-9.543 3.971.486-1.337 10.891z"/><path fill="white" d="M111.017 121.873 87.012 79.038v-36.71l11.887-2.769 10.557 19.149H128V72.08h-26.603l-1.042-1.522v5.015l22.338 39.823-11.676 6.477zm-20.005-43.88 21.548 38.45 4.679-2.596-20.884-37.229V57.633l7.151 10.448H124v-5.372h-16.908L96.857 44.142l-5.846 1.362v32.489zM121.08.637h4v52.329h-4z"/><path fill="white" d="m122.078 26.853-21.404-12.394 21.404-12.396 2.004 3.461-15.426 8.934 15.426 8.934zM45.461 116.863H31.674V85.432h4v27.431h5.787V85.432h4z"/><path fill="white" d="M48.957 88.115H27.48V61.574c0-3.424 2.778-6.208 6.194-6.208h9.089c3.416 0 6.194 2.784 6.194 6.208v26.541zm-17.477-4h13.477V61.574a2.203 2.203 0 0 0-2.194-2.208h-9.089c-1.209 0-2.194.99-2.194 2.208v22.541z"/></svg>');
    }
    .new {
      background-repeat: no-repeat;
      background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128"><path fill="white" d="M63.1 111.297c-25.495 0-46.237-20.74-46.237-46.232 0-25.491 20.742-46.229 46.237-46.229 25.49 0 46.227 20.738 46.227 46.229 0 25.492-20.737 46.232-46.227 46.232zm0-88.461c-23.29 0-42.237 18.944-42.237 42.229 0 23.287 18.948 42.232 42.237 42.232 23.284 0 42.227-18.945 42.227-42.232 0-23.285-18.943-42.229-42.227-42.229z"/><path fill="white" d="M45.993 76.074a2 2 0 0 1-1.599-.798l-9.947-13.228v12.026a2 2 0 0 1-4 0V56.061a2 2 0 0 1 3.598-1.202l9.947 13.228V56.061a2 2 0 0 1 4 0v18.013a1.998 1.998 0 0 1-1.999 2zM66.455 76.074H54.512a2 2 0 0 1-2-2V56.061a2 2 0 0 1 2-2h11.943a2 2 0 0 1 0 4h-9.943v14.013h9.943a2 2 0 0 1 0 4z"/><path fill="white" d="M66.455 67.066H54.512a2 2 0 0 1 0-4h11.943a2 2 0 0 1 0 4zM79.5 76.074h-.014a2.002 2.002 0 0 1-1.844-1.259l-7.186-18.012a2 2 0 0 1 3.715-1.483l5.365 13.45 3.613-8.697a2 2 0 0 1 1.847-1.233h.014a2.001 2.001 0 0 1 1.844 1.259l3.424 8.578 5.328-13.357a2 2 0 1 1 3.715 1.482l-7.185 18.012a2 2 0 0 1-3.714 0l-3.462-8.672-3.613 8.698a1.999 1.999 0 0 1-1.847 1.234zM62.743 0h4v11.108h-4zM34.375 7.2l5.554 9.62-3.464 2-5.554-9.62zM9.947 29.625l9.616 5.554-2 3.464-9.617-5.554zM0 61.257h11.106v4H0zM16.818 88.072l2 3.465L9.2 97.088l-2-3.465zM35.18 108.436l3.465 2-5.553 9.617-3.464-2zM61.257 116.896h4V128h-4zM91.54 109.182l5.55 9.617-3.465 2-5.55-9.617zM110.436 89.363l9.618 5.552-2 3.465-9.619-5.552z"/><g><path fill="white" d="M116.896 62.744H128v4h-11.104z"/></g><g><path fill="white" d="m118.794 30.91 2 3.465-9.615 5.551-2-3.464z"/></g><g><path fill="white" d="m94.914 7.945 3.466 2-5.552 9.618-3.465-2z"/></g></svg>');
    }
    .contact {
      background-repeat: no-repeat;
      background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128"><path fill="white" d="M82.141 18.8 67.334 6.194c-1.804-1.532-4.854-1.532-6.658.001L46.732 18.068l-2.603-3.058L58.075 3.138C61.342.36 66.662.359 69.934 3.136l14.808 12.606-2.601 3.058zM125.981 126.947H2.016a2.007 2.007 0 0 1-2.007-2.008V53.688a2.003 2.003 0 0 1 .269-1.198c.162-.284.389-.526.66-.705l12.566-10.699 2.602 3.058L4.023 54.43v68.503h119.952V54.419l-12.267-10.445 2.603-3.057 12.826 10.923c.362.257.638.628.768 1.059.085.266.114.547.085.826v71.215a2.01 2.01 0 0 1-2.009 2.007z"/><path fill="white" d="M114.607 56.248h-4.014V19.272H16.8v36.976h-4.014v-40.99h101.821z"/><path fill="white" d="M83.827 92.721H44.179c-.464 0-.913-.161-1.272-.455L.585 57.603l2.543-3.105 41.767 34.209h38.218l41.93-34.212 2.538 3.111-42.484 34.663a2.012 2.012 0 0 1-1.27.452z"/><path fill="white" d="m6.993 125.504-2.602-3.058 13.793-11.73 10.4-8.929a3961.47 3961.47 0 0 0 4.429-3.804l10.31-8.846 2.614 3.047-10.309 8.845a2208.46 2208.46 0 0 1-4.432 3.805l-10.405 8.934-13.798 11.736zM122.06 126.503l-25.25-21.67a2276.798 2276.798 0 0 1-4.432-3.804l-10.306-8.844 2.614-3.047 10.308 8.845c1.604 1.38 3.208 2.758 4.428 3.802l25.253 21.672-2.615 3.046z"/><g><path fill="white" d="M64.778 77.373c-13.085 0-23.73-10.628-23.73-23.69s10.646-23.689 23.73-23.689a23.674 23.674 0 0 1 18.357 8.68l-3.104 2.548a19.672 19.672 0 0 0-15.254-7.213c-10.872 0-19.716 8.826-19.716 19.675 0 10.85 8.844 19.676 19.716 19.676 4.326 0 8.436-1.375 11.884-3.976l2.417 3.205a23.564 23.564 0 0 1-14.3 4.784z"/><path fill="white" d="M60.857 65.311c-.001 0-.001 0 0 0-.934 0-1.921-.148-2.936-.439-3.035-.871-5.333-3.403-6.147-6.773-1.102-4.561.581-9.612 4.389-13.185 3.331-3.123 7.874-3.778 11.099-3.778 2.703 0 4.727.453 4.811.472l2.105.479-.63 2.064c-.161.524-3.934 12.875-4.604 14.801-1.411 4.04-4.358 6.359-8.087 6.359zm6.405-20.162c-2.5 0-5.979.467-8.352 2.692-3.296 3.091-3.832 6.837-3.233 9.313.477 1.978 1.699 3.383 3.353 3.857a6.68 6.68 0 0 0 1.827.283c2.493 0 3.711-1.993 4.294-3.666.478-1.369 2.717-8.649 3.869-12.405a21.51 21.51 0 0 0-1.758-.074z"/><path fill="white" d="M73.932 65.097c-2.05 0-3.946-.705-5.454-2.074-3.106-2.818-.963-12.375.593-17.82l3.859 1.102c-1.728 6.061-2.545 12.632-1.716 13.787 1.484 1.341 3.371 1.091 4.686.637 3.038-1.046 6.531-4.536 7.329-9.182.579-3.372-.066-8.454-6.433-13.521l2.499-3.141c8.32 6.621 8.515 13.707 7.891 17.342-.953 5.544-5.056 10.602-9.979 12.299-1.111.381-2.215.57-3.275.571z"/></g></svg>');
    }
    .about {
      background-repeat: no-repeat;
      background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 128 128"><path fill="white" d="M84.264 109.825H45.21l-.124-1.874c-.28-4.224-1.223-7.615-2.654-9.551-13.86-18.069-14.249-35.353-14.249-35.522 0-20.424 16.414-37.041 36.588-37.041 20.176 0 36.59 16.617 36.59 37.041 0 .169-.388 17.431-14.273 35.549-1.424 1.915-2.386 5.309-2.69 9.535l-.134 1.863zm-35.344-4.012h31.655c.391-3.244 1.291-7.088 3.312-9.803C96.984 78.92 97.35 63.034 97.35 62.878c0-18.212-14.614-33.028-32.578-33.028-17.962 0-32.576 14.816-32.576 33.028 0 .156.366 16.062 13.441 33.109 2.026 2.738 2.91 6.582 3.283 9.826z"/><path fill="white" d="m41.367 62.748-4.012-.001c.002-15.227 12.301-27.614 27.417-27.614v4.012c-12.904 0-23.403 10.588-23.405 23.603zM50.705 68.864l6.848 38.502-3.95.702-6.847-38.501zM78.842 68.87l3.949.703-6.856 38.502-3.949-.703z"/><path fill="white" d="m54.217 76.129-5.976-2.23 1.402-3.758 4.574 1.706 5.273-1.968 5.274 1.968 5.275-1.968 5.28 1.968 4.581-1.706 1.401 3.758-5.982 2.23-5.28-1.968-5.275 1.968-5.274-1.968zM42.284 106.229h44.975v4.012H42.284zM42.284 115.078h44.975v4.012H42.284zM51.541 123.928h26.462v4.012H51.541z"/><path fill="white" d="M45.498 108.702h4.012v9.293h-4.012z"/><g><path fill="white" d="m56.537 14.106-2.854-2.82L64.771.061 75.86 11.286l-2.854 2.819-8.235-8.336z"/><path fill="white" d="M62.767 4.852h4.012v16.554h-4.012z"/></g><g><path fill="white" d="m23.283 34.354-4.012-.002.007-15.842 15.662-.006.002 4.012-11.654.005z"/><path fill="white" d="M24.061 20.475 35.62 32.181 32.764 35 21.206 23.294z"/></g><g><path fill="white" d="M11.043 75.306 0 64.111l11.043-11.195 2.856 2.817-8.264 8.378 8.264 8.378z"/><path fill="white" d="M4.728 62.104h16.345v4.012H4.728z"/></g><g><path fill="white" d="m33.849 110.176-15.663-.009-.006-15.838 4.012-.002.005 11.83 11.654.007z"/><path fill="white" d="m31.672 93.679 2.856 2.819-11.559 11.707-2.855-2.82z"/></g><g><path fill="white" d="m93.059 111.279-.002-4.011 11.654-.006.004-11.831 4.012.002-.006 15.838z"/><path fill="white" d="m95.23 94.785 11.555 11.707-2.856 2.819-11.555-11.707z"/></g><g><path fill="white" d="m116.956 76.867-2.856-2.816 8.264-8.379-8.264-8.379 2.856-2.817L128 65.672z"/><path fill="white" d="M106.928 63.667h16.343v4.012h-16.343z"/></g><g><path fill="white" d="m105.807 35.457-.004-11.831-11.656-.005.002-4.013 15.664.008.005 15.84z"/><path fill="white" d="m105.027 21.581 2.856 2.818-11.553 11.71-2.856-2.817z"/></g></svg>');
    }
  }

  /* Background Gradients */
  .bg1 {
    background: rgb(58, 67, 180);
    background: linear-gradient(
      -20deg,
      rgba(58, 67, 180, 1) 0%,
      rgba(166, 46, 157, 1) 26%,
      rgba(253, 29, 29, 1) 57%,
      rgba(252, 176, 69, 1) 88%,
      rgba(251, 252, 69, 1) 100%
    );
  }
  .bg2 {
    background: rgb(58, 67, 180);
    background: linear-gradient(
      -200deg,
      rgba(58, 67, 180, 1) 0%,
      rgba(166, 46, 157, 1) 26%,
      rgba(253, 29, 29, 1) 57%,
      rgba(252, 176, 69, 1) 88%,
      rgba(251, 252, 69, 1) 100%
    );
  }
  .bg3 {
    background: #0f0c29; /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #24243e, #302b63, #0f0c29);
    background: linear-gradient(to right, #24243e, #302b63, #0f0c29);
  }
  /* Backgrounds */
  .b1 {
    background-color: #338fd7;
  }
  /*
  ---------------------------------------------
  Hero area & more
  ---------------------------------------------
  */
  .animation-nav {
    animation: fade-in 1.5s linear 0s 1 normal;
  }

  .hero {
    background-position: top, 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: 90vh;
    color: var(--brand);
  }
  .hero .overlay {
    margin-block-start: 30vh;
  }
  .hero h1 {
    animation: slide-up 3s ease 0s 1 normal none;
    font-size: calc(1.5 * var(--step-5));
  }
  .hero p {
    animation: slide-up 3s ease 0s 1 normal none;
    font-size: calc(1.5 * var(--step-4));
  }

  /* alerts */
  #system-message-container {
    position: fixed;
    width: 50%;
    z-index: 101;
    margin: 25%;
  }

  .alert a,
  p a {
    position: relative;
    text-decoration: none !important;
    color: inherit;
  }
  .alert a svg,
  p a svg {
    width: 115%;
    height: 50px;
    position: absolute;
    inset-inline-start: 50%;
    inset-block-end: 0;
    transform: translate(-50%, 7px) translateZ(0);
    fill: none;
    stroke: var(--stroke, var(--line));
    stroke-linecap: round;
    stroke-width: 2px;
    stroke-dasharray: var(--offset, 69px) 278px;
    stroke-dashoffset: 361px;
    transition: stroke 0.25s ease var(--stroke-delay, 0s), stroke-dasharray 0.35s;
  }
  .alert a:hover,
  p a:hover {
    --spacing: 4px;
    --stroke: var(--line-active);
    --stroke-delay: 0.1s;
    --offset: 180px;
  }

  /* triangle */

  a.showreel {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    border: 0;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    padding: 0;
    font-size: inherit;
    font-family: inherit;
    width: 15rem;
    height: auto;
    opacity: 0;
    animation: fade-in 1.5s 2.9s forwards;
  }
  a.showreel .video {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: relative;
    display: block;
    margin: 0;
    width: 3rem;
    height: 3rem;
    background: var(--brand);
    border-radius: 1.625rem;
    box-shadow: 0px 0px 25px 3px rgba(139, 0, 139, 0.8);
  }
  a.showreel .video:after {
    content: "";
    position: absolute;
    inset-inline-start: 25px;
    inset-block-start: 50%;
    transform: translateX(-40%) translateY(-50%) scale(0.6);
    transform-origin: center center;
    width: 0;
    height: 0;
    border-block-start: 15px solid transparent;
    border-block-end: 15px solid transparent;
    border-inline-start: 25px solid #fff;
    z-index: 100;
    transition: all 400ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  a.showreel .button-text {
    transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    inset-inline-end: 0;
    inset-block-end: 0;
    padding: 0.75rem 0;
    margin: 0 0 0 1.85rem;
    color: var(--brand);
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    text-transform: uppercase;
    font-size: var(--step-0);
  }
  a.showreel:hover .video {
    width: 100%;
    box-shadow: unset;
    background: var(--brand);
  }
  a.showreel:hover .button-text {
    color: #fff;
  }

  .modal-dialog {
    max-width: 800px;
    margin: 30px auto;
  }

  .modal-body {
    position: relative;
    padding: 0px;
  }

  .btn-close {
    position: absolute;
    inset-inline-end: -30px;
    inset-block-start: 0;
    background-color: white;
  }

  .mt-10 {
    margin-block-start: -10rem;
  }

  /* card homepge & blog*/

  .ribbon-corner {
    --ribbon-size: 4rem;
    background-color: var(--brand);
    color: #fff;
    position: absolute;
    clip-path: polygon(
      0% 100%,
      50% calc(100% - (var(--ribbon-size) + 1rem)),
      100% 100%,
      100% calc(100% + 0.5rem),
      0% calc(100% + 0.5rem)
    );
    transform: rotate(-45deg) translateX(-50%)
      translateY(calc((var(--ribbon-size) + 1rem) - 100%));
    transform-origin: 0% 0%;
    width: calc((var(--ribbon-size) + 1rem) * 2);
    height: 3rem;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
  }
  .ribbon-fold {
    margin: -0.31rem;
  }
  .ribbon-fold:before {
    background-color: inherit;
    filter: brightness(50%);
    clip-path: polygon(
      0% -10px,
      100% -10px,
      100% 100%,
      calc(100% - 0.5rem - 10px) -10px,
      calc(0.5rem + 10px) -10px,
      0% 100%
    );
    content: "";
    position: absolute;
    bottom: calc(-0.5rem + 1px);
    left: 0;
    width: 100%;
    height: 0.5rem;
    z-index: -1;
  }
  .flyout-text {
    background: var(--brand);
    border-radius: 0.2rem !important;
    color: var(--white);
    display: none;
    margin: 0.25em;
    padding: 0.5em;
    text-align: end;
    z-index: 103;
    width: 300px;
    margin-block-start: -1.5rem;
    margin-inline-start: -300px;
  }

  :focus > .flyout-text,
  :hover > .flyout-text {
    display: block;
    position: absolute;
  }

  .card-icon-top {
    position: absolute;
    inset-block-start: 0;
    inset-inline-end: 0;
  }

  .flyout-icon svg path {
    fill: var(--white);
  }
  /* gallery */
  .h-auto {
    height: 100% !important;
  }
  .gallery div {
    flex: auto;
    width: 220px;
    margin: 0.5vw;
  }

  .gallery div img {
    width: 100%;
    height: auto;
    box-shadow: 0.3rem 0.4rem 0.4rem rgba(0, 0, 0, 0.4);
    transition: transform 400ms ease-out;
  }

  .gallery div img:hover {
    transform: scale(1.15);
  }

  .gallery .photo:hover {
    background: no-repeat center/20%
      url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="darkmagenta" d="m28.34 24.12-6.5-6.85A10.49 10.49 0 1 0 12.5 23h.55a1 1 0 1 0-.1-2 8.5 8.5 0 1 1 5.4-2.32A8.72 8.72 0 0 1 16.53 20a1 1 0 0 0-.41 1.35.89.89 0 0 0 .36.36v.08l6.77 7.13A3.48 3.48 0 0 0 25.73 30h.09a3.43 3.43 0 0 0 2.39-1 3.47 3.47 0 0 0 .13-4.88zm-1.5 3.47a1.45 1.45 0 0 1-1.06.41 1.51 1.51 0 0 1-1-.46l-6.15-6.49a10.07 10.07 0 0 0 1.14-.93 10.54 10.54 0 0 0 1-1.12l6.16 6.5a1.47 1.47 0 0 1-.09 2.09z"/><path fill="darkmagenta" d="M8.55 8.16a1 1 0 0 0-1.39.29 7.19 7.19 0 0 0 1.17 9.29A1 1 0 0 0 9 18a1 1 0 0 0 .67-1.74A5.32 5.32 0 0 1 8 12.91a5.24 5.24 0 0 1 .84-3.36 1 1 0 0 0-.29-1.39z"/></svg>');
    opacity: 1;
  }

  .gallery img:hover {
    opacity: 0.5;
  }

  .carousel-item,
  .carousel-item .bg-dark {
    min-block-size: 300px;
  }
  .carousel-control-next-icon,
  .carousel-control-prev-icon {
    background-color: var(--brand);
    border-radius: 0%;
  }

  .lightbox-caption {
    background-color: var(--brand);
  }

  .modal-backdrop.show {
    opacity: 0.8;
  }

  @media screen and (max-width: 400px) {
    .gallery div {
      margin: 0;
    }

    .gallery {
      padding: 0;
    }
  }

  /* testimonial */

  .bg-offset-hero::before {
    position: absolute;
    content: "";
    width: 75%;
    inset-block-start: 0;
    inset-inline-start: 0;
    inset-block-end: 0;
    background-color: var(--brand);
  }

  .quote_ {
    opacity: 0.3;
  }

  @media (max-width: 767.98px) {
    .bg-offset-hero::before {
      width: 100%;
    }
  }
  /* testimonial end */

  /* single article */
  .full-width img {
    object-fit: cover;
    width: 100vw;
    height: 50vh;
  }
  .com-content-article,
  .com-content-category-blog,
  .blog-featured,
  .com-contact.contact {
    border-block-start: 1.5rem solid var(--brand);
    background: var(--white);
    padding: 2rem;
    margin-block-start: -20vh;
    position: relative;
  }

  .panel-list {
    display: flex;
    flex-flow: row wrap;
    flex: 1 1 auto;
    list-style: none;
  }
  .panel-field {
    position: relative;
    width: 30%;
    min-block-size: 215px;
    margin: 0 auto;
    margin-block-end: 1rem;
    background: white;
    padding: 0.5rem;
  }
  .panel-field:hover {
    background: var(--brand);
    color: white;
  }
  .panel-field svg {
    max-width: 50%;
  }
  .panel-field:hover path {
    fill: white;
  }
  @media (max-width: 767.98px) {
    .panel-field {
      width: 49%;
    }
  }
  .panel-field-label {
    text-decoration: none;
    font-size: var(--step-0);
  }
  .panel-field-value {
    font-size: var(--step--1);
  }

  div.seperator {
    width: 7.5em;
    background-color: #e31b1b;
    height: 0.17em;
    margin-inline-start: -1.8em;
  }
  /*faq details/summary */

  .fulltext details {
    border-block-end: 0.07em solid var(--brand);
    padding: 1.5em 0;
  }

  .fulltext details:last-child {
    border: unset;
  }

  .fulltext details > summary {
    list-style: none;
  }

  .fulltext summary {
    font-size: var(--step-1);
    font-weight: bold;
    cursor: pointer;
    user-select: none;
    transition: all 0.3s ease;
  }

  .fulltext summary:hover {
    color: var(--brand);
  }

  .fulltext details[open] summary ~ * {
    animation: sweep 0.5s ease-in-out;
  }

  .fulltext details[open] summary {
    color: var(--brand);
  }

  .fulltext details[open] p {
    border-inline-start: 2px solid var(--brand);
    margin-block-start: 1rem;
    margin-block-end: 0;
    margin-inline-start: 55px;
    padding-inline-start: 25px;
    opacity: 100;
    transition: all 3s ease;
  }

  .fulltext details[open] summary:after {
    content: "-";
    font-size: 3.2em;
    margin: -33px 0.35em 0 0;
    font-weight: 200;
  }

  .fulltext summary:after {
    background: transparent;
    border-radius: 0.3em;
    content: "+";
    color: var(--brand);
    float: left;
    font-size: 1.8em;
    font-weight: bold;
    margin: -0.3em 0.65em 0 0;
    padding: 0;
    text-align: center;
    width: 25px;
  }

  /* contact fields */
  .contact-form .form-floating > textarea.form-control {
    height: 200px;
  }

  .contact-form .form-control-feedback {
    display: inline-block;
    background-color: var(--brand);
    margin-inline-start: 1rem;
    padding: 0.5rem;
    font-size: var(--step--1);
    color: var(--white);
  }
  .contact-form .invalid {
    color: var(--body-color);
  }
  /* footer */
  footer {
    background: var(--brand);
  }

  footer .footer-project {
    float: left;
    font-size: 0;
  }

  footer .footer-project a {
    padding: 0 8px 8px 0;
    display: block;
    width: 33.33%;
    float: left;
  }

  footer .footer-project a img {
    width: 100%;
  }

  /* copyright */
  .copy-text {
    padding: 0.5rem 1rem;
  }

  .copy-menu li {
    margin-inline-end: 15px;
    padding-inline-end: 15px;
    border-inline-end: 1px solid rgba(255, 255, 255, 0.3);
  }

  .copy-menu a:hover {
    color: var(--brand);
  }

  .copy-menu li:last-child {
    margin-inline-end: 0;
    padding-inline-end: 0;
    border-inline-end: none;
  }

  @media (max-width: 767.98px) {
    .copy-text,
    .copy-menu {
      text-align: center;
    }
  }
  /* cookies */

  .cookie details {
    position: relative;
  }
  .cookie details div {
    position: absolute;
    max-height: calc(100vh - 100px);
    width: 400px;
    max-width: calc(100vw - 2rem);
    inset-block-end: calc(100% + 1rem);
    inset-inline-end: 0;
    overflow: auto;
    transform-origin: 100% 100%;
    z-index: 102;
    outline: 2px solid grey;
    outline-offset: -1em;
  }
  .cookie details[open] div {
    animation: cookie 0.25s ease;
  }

  .cookie summary svg {
    width: 1.5em;
    height: 1.5em;
  }

  /* end footer */
  /* ghost */

  .ghost {
    animation: ghost 60s 10s linear forwards;
    inset-block-start: 0;
    inset-inline-start: 0;
    position: fixed;
    z-index: 999;
    pointer-events: none;
    opacity: 0;
  }
  @keyframes ghost {
    0% {
      transform: translate(-200%, 110vh) rotateZ(-20deg);
      opacity: 0.5;
    }

    12.5% {
      transform: translate(120vw, -120%) rotateZ(20deg);
    }

    25% {
      transform: translate(-200%, 50vh) scale(1.75) rotateZ(-20deg);
    }

    37.5% {
      transform: translate(-200%, -120%) rotateZ(-40deg);
      opacity: 0.5;
    }

    50% {
      transform: translate(100vw, 50vh) rotateZ(0deg);
    }

    62.5% {
      transform: translate(20vw, 100vh) rotateZ(20deg);
    }
    75% {
      transform: translate(200%, 100vh) rotateZ(20deg);
      opacity: 0.25;
    }
    87.5% {
      transform: translate(50vw, -200%) scale(1.75) rotateZ(20deg);
    }

    100% {
      transform: translate(-200%, 110vh) rotateZ(0deg);
      opacity: 1;
    }
  }

  /* animations */
  @keyframes scaleImage {
    100% {
      transform: scale(1);
    }
  }

  @keyframes fadeInText {
    100% {
      opacity: 1;
    }
  }

  @keyframes slide-up {
    from {
      opacity: 0;
      transform: translateY(1000px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes fade-in {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  @keyframes hr {
    from {
      width: 0;
    }

    to {
      width: 220px;
    }
  }

  @keyframes spark {
    from {
      clip-path: polygon(0 0, 0% 0%, 0% 100%, 0% 100%);
    }

    to {
      clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
    }
  }
  @keyframes cookie {
    0% {
      transform: scale(0);
    }
    100% {
      transform: scale(1);
    }
  }

  @keyframes sweep {
    0% {
      opacity: 0;
      margin-inline-start: -10px;
    }
    100% {
      opacity: 1;
      margin-inline-start: 55px;
    }
  }

  /* disable animate */
  @media (prefers-reduced-motion: reduce) {
    * {
      animation: none;
    }
  }
.inputs .item {
    opacity: 0;
    animation: scale-in-bl 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
  [value="All"]:checked ~ .row .item {
    display: block;
  }

  @keyframes scale-in-bl {
    0% {
      transform: scale(0);
      transform-origin: 0% 100%;
      opacity: 1;
    }
    100% {
      transform: scale(1);
      transform-origin: 0% 100%;
      opacity: 1;
    }
  }
  
  [value="bus"]:checked ~ .row .item:not([data-category~="bus"]),
  [value="helicopter"]:checked ~ .row .item:not([data-category~="helicopter"]),
  [value="snowmobile"]:checked ~ .row .item:not([data-category~="snowmobile"]),
  [value="skis"]:checked ~ .row .item:not([data-category~="skis"]),
  [value="4x4otv"]:checked ~ .row .item:not([data-category~="4x4otv"]),
  [value="breakfast"]:checked ~ .row .item:not([data-category~="breakfast"]),
  [value="lunch"]:checked ~ .row .item:not([data-category~="lunch"]),
  [value="dinner"]:checked ~ .row .item:not([data-category~="dinner"]),
  [value="snacks"]:checked ~ .row .item:not([data-category~="snacks"]),
  [value="beginner"]:checked ~ .row .item:not([data-category~="beginner"]),
  [value="moderate"]:checked ~ .row .item:not([data-category~="moderate"]),
  [value="advanced"]:checked ~ .row .item:not([data-category~="advanced"]),
  [value="monday"]:checked ~ .row .item:not([data-category~="monday"]),
  [value="tuesday"]:checked ~ .row .item:not([data-category~="tuesday"]),
  [value="wednesday"]:checked ~ .row .item:not([data-category~="wednesday"]),
  [value="thursday"]:checked ~ .row .item:not([data-category~="thursday"]),
  [value="friday"]:checked ~ .row .item:not([data-category~="friday"]),
  [value="saturday"]:checked ~ .row .item:not([data-category~="saturday"]),
  [value="sunday"]:checked ~ .row .item:not([data-category~="sunday"]),
  [value="request"]:checked ~ .row .item:not([data-category~="request"]),
  [value="low"]:checked ~ .row .item:not([data-category~="low"]),
  [value="full"]:checked ~ .row .item:not([data-category~="full"]),
  [value="good"]:checked ~ .row .item:not([data-category~="good"]) {
    display: none;
    opacity: none;
  }
  .filter-label {
    display: inline-block;
    font-size: 1rem;
    font-weight: 600;
  }
  .btn-tiny {
    font-size: 0.6rem;
    padding: 0.2rem;
  }

  .btn-outline-brand:hover,
  .btn-check:checked + .btn-outline-brand {
    background-color: var(--brand);
    border-color: var(--brand);
    color: #fff;
  }
  .btn-outline-brand {
    border-color: var(--brand);
    color: var(--brand);
  }

  #briansmagic * {
	animation-play-state: paused !important;
}

#briansmagic:hover * {
	animation-play-state: running !important;
}


#briansmagic .rotatepoint {
	color: white;
	height: 100px;
	width: 100%;
	animation: shudder2 10000ms linear 1 normal forwards;
	transform-origin: 0 0;
}
#briansmagic .fixed {
	position: fixed;
	left:0;
	bottom:0;
}
#briansmagic svg {z-index: 3; position: fixed; bottom:0; left: 0;}

#scissor-move
{
  animation: scissor-move 10000ms linear 1 normal forwards;
}
@keyframes scissor-move {
  0% {
    transform: translate(884.417719px, 81.421303px);
  }
  100% {
    transform: translate(-133.081201px, 81.321305px);
  }
}
#scissor-top {
  animation: scissor-top 10000ms linear 1 normal forwards;
}
@keyframes scissor-top {
  0% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  5% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  10% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  15% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  20% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  25% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  30% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  35% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  40% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  45% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  50% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  55% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  60% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  65% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  70% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  75% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  80% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  85% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  90% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  95% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
  100% {
    transform: translate(472px, 352px) rotate(15.418756deg);
  }
}
#scissor-bottom {
  animation: scissor-bottom 10000ms linear 1 normal forwards;
}
@keyframes scissor-bottom {
  0% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  5% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  10% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  15% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  20% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  25% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  30% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  35% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  40% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  45% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  50% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  55% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  60% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  65% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  70% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  75% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  80% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  85% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  90% {
    transform: translate(472px, 352px) rotate(0deg);
  }
  95% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
  100% {
    transform: translate(472px, 352px) rotate(-28.174984deg);
  }
}

.bg-kids {
    background-image: url(../images/bg-kids.webp);
    background-position: center;
    background-repeat: no-repeat;
}
@keyframes shudder2 {
    0% {
        transform: rotate(0deg);
      }
    75% {
        transform: rotate(0deg);
      }
    100% {
        transform: rotate(10deg);
    }
}
.magicoff{opacity:0}
.magicon{opacity:1}

