﻿@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500&family=Manrope:wght@400;500;600&display=swap');

  html.am-loading { overflow: hidden; }

  #am-loader {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: #14213D;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    transition: opacity .6s ease, visibility .6s ease;
  }

  #am-loader.am-hide {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  #am-loader .am-stage {
    position: relative;
    width: 220px;
    height: 120px;
  }

  #am-loader svg { width: 100%; height: 100%; overflow: visible; }

  #am-loader .am-arc {
    fill: none;
    stroke: #C9A455;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-dasharray: 260;
    stroke-dashoffset: 260;
    animation: am-draw 1.4s cubic-bezier(.65,0,.35,1) .3s forwards;
  }

  #am-loader .am-dot {
    fill: #C9A455;
    opacity: 0;
    animation: am-dot-move 1.4s cubic-bezier(.65,0,.35,1) .3s forwards;
  }

  #am-loader .am-word {
    margin-top: 22px;
    font-family: 'Fraunces', Georgia, serif;
    font-weight: 500;
    font-size: 26px;
    letter-spacing: .01em;
    color: #FFFFFF;
    opacity: 0;
    transform: translateY(6px);
    animation: am-fade-up .7s ease 1.5s forwards;
  }

  #am-loader .am-sub {
    margin-top: 6px;
    font-family: 'Manrope', sans-serif;
    font-size: 12.5px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #8D9AB5;
    opacity: 0;
    animation: am-fade-up .7s ease 1.7s forwards;
  }

  #am-loader .am-track {
    margin-top: 34px;
    width: 160px;
    height: 2px;
    background: rgba(246,241,231,.15);
    border-radius: 2px;
    overflow: hidden;
  }

  #am-loader .am-fill {
    height: 100%;
    width: 0%;
    background: #C9A455;
    animation: am-progress 2.6s linear .2s forwards;
  }

  @keyframes am-draw {
    to { stroke-dashoffset: 0; }
  }

  @keyframes am-dot-move {
    0%   { opacity: 0; offset-distance: 0%; }
    8%   { opacity: 1; }
    92%  { opacity: 1; }
    100% { opacity: 0; offset-distance: 100%; }
  }

  @keyframes am-fade-up {
    to { opacity: 1; transform: translateY(0); }
  }

  @keyframes am-progress {
    to { width: 100%; }
  }

  @media (prefers-reduced-motion: reduce) {
    #am-loader .am-arc,
    #am-loader .am-dot,
    #am-loader .am-word,
    #am-loader .am-sub,
    #am-loader .am-fill {
      animation: none !important;
      opacity: 1 !important;
      stroke-dashoffset: 0 !important;
    }
  }