/* -------------------------------------------

Name: 		Ruizarch
Version:    1.0
Developer:	Nazar Miller (millerDigitalDesign)
Portfolio:  https://themeforest.net/user/millerdigitaldesign/portfolio?ref=MillerDigitalDesign

p.s. I am available for Freelance hire (UI design, web development). email: miller.themes@gmail.com

------------------------------------------- */
/*--------------------------------------------

1. common
    - main
    - typography
    - link
    - button
    - form
    - breadcrumbs
    - backgrounds
    - spaces
2. components
    - preloader
    - cursor
    - hidden elements
    - scrollbar
    - frame
    - menu button
    - menu 
    - banner
    - circle text
    - jmr latest release
    - lines
    - dodecahedron
    - about
    - partners
    - services
    - team
    - social icons
    - revievs
    - blog
    - footer
    - portfolio
    - map
    - accordion
    - price
    - 404
    - images
    - page transitions


--------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.0/css/all.min.css);

/* -------------------------------------------

main

------------------------------------------- */
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

html,
body {
  padding: 0;
  margin: 0;
  font-family: "Outfit", sans-serif;
  font-size: 16px;
  font-weight: 300;
  color: rgba(0, 0, 0, 0.5);
  line-height: 150%;
  -ms-scroll-chaining: none;
  overscroll-behavior: none;
}

@media screen and (max-width: 768px) {

  html,
  body {
    font-size: 15px;
  }
}

*::-moz-selection {
  color: inherit;
  background-color: transparent;
}

*::selection {
  color: inherit;
  background-color: transparent;
}

.mil-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
}

.container {
  pointer-events: all;
}

.mil-relative {
  position: relative;
}

.mil-o-hidden {
  overflow: hidden;
}

.mil-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mil-vert-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100%;
}

@media screen and (max-width: 992px) {
  .mil-mobile-hidden {
    display: none;
  }
}

section {
  position: relative;
  overflow: hidden;
}

/* -------------------------------------------

typography

------------------------------------------- */
h1,
.mil-h1,
h2,
.mil-h12,
h3,
.mil-h3,
h4,
.mil-h4,
h5,
.mil-h5,
h6,
.mil-h6 {
  font-family: "Outfit", sans-serif;
  color: rgb(0, 0, 0);
  font-weight: 500;
  line-height: 120%;
}

@media screen and (max-width: 768px) {

  h1 br,
  .mil-h1 br,
  h2 br,
  .mil-h12 br,
  h3 br,
  .mil-h3 br,
  h4 br,
  .mil-h4 br,
  h5 br,
  .mil-h5 br,
  h6 br,
  .mil-h6 br {
    display: none;
  }
}

h1,
.mil-h1 {
  font-size: 86px;
}

@media screen and (max-width: 1400px) {

  h1,
  .mil-h1 {
    font-size: 74px;
  }
}

@media screen and (max-width: 1200px) {

  h1,
  .mil-h1 {
    font-size: 72px;
  }
}

@media screen and (max-width: 992px) {

  h1,
  .mil-h1 {
    font-size: 58px;
  }
}

@media screen and (max-width: 768px) {

  h1,
  .mil-h1 {
    font-size: 34px;
  }
}

h2,
.mil-h2 {
  font-size: 68px;
  line-height: 120%;
}

@media screen and (max-width: 1200px) {

  h2,
  .mil-h2 {
    font-size: 56px;
  }
}

@media screen and (max-width: 992px) {

  h2,
  .mil-h2 {
    font-size: 44px;
  }
}

@media screen and (max-width: 768px) {

  h2,
  .mil-h2 {
    font-size: 36px;
  }
}

h3,
.mil-h3 {
  font-size: 42px;
}

@media screen and (max-width: 1200px) {

  h3,
  .mil-h3 {
    font-size: 39px;
  }
}

@media screen and (max-width: 992px) {

  h3,
  .mil-h3 {
    font-size: 36px;
  }
}

@media screen and (max-width: 768px) {

  h3,
  .mil-h3 {
    font-size: 30px;
  }
}

h4,
.mil-h4 {
  font-size: 28px;
}

@media screen and (max-width: 1200px) {

  h4,
  .mil-h4 {
    font-size: 26px;
  }
}

@media screen and (max-width: 992px) {

  h4,
  .mil-h4 {
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {

  h4,
  .mil-h4 {
    font-size: 22px;
  }
}

h5,
.mil-h5 {
  font-size: 20px;
  line-height: 150%;
}

@media screen and (max-width: 768px) {

  h5,
  .mil-h5 {
    font-size: 18px;
  }
}

h6,
.mil-h6 {
  font-size: 18px;
  line-height: 150%;
}

@media screen and (max-width: 1200px) {

  h6,
  .mil-h6 {
    font-size: 17px;
  }
}

@media screen and (max-width: 992px) {

  h6,
  .mil-h6 {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {

  h6,
  .mil-h6 {
    font-size: 21px;
  }
}

.mil-no-wrap {
  white-space: nowrap;
}

blockquote {
  padding: 60px;
  background-color: rgba(0, 0, 0, 0.05);
  font-size: 18px;
  color: rgb(0, 0, 0);
  font-style: italic;
  border-left: solid 4px #FEBF18;
}

@media screen and (max-width: 768px) {
  blockquote {
    padding: 30px;
    font-size: 16px;
  }
}

.mil-text-sm {
  font-size: 15px;
}

.mil-text-lg {
  font-size: 18px;
  line-height: 170%;
}

.mil-text-xl {
  font-size: 22px;
  line-height: 180%;
}

@media screen and (max-width: 768px) {
  .mil-text-xl {
    font-size: 20px;
  }
}

.mil-upper {
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
}

.mil-bold {
  font-weight: 500;
}

.mil-thin {
  font-weight: 100;
}

a {
  color: inherit;
  text-decoration: none;
}

.mil-complex-title {
  line-height: normal;
}

.mil-accent {
  color: #FEBF18;
}

.mil-light {
  color: rgb(255, 255, 255) !important;
}

.mil-light a {
  color: rgb(255, 255, 255) !important;
}

.mil-muted {
  color: rgba(255, 255, 255, 0.9);
}

.mil-dark {
  color: rgb(0, 0, 0);
}

.mil-light-soft {
  color: rgba(255, 255, 255, 0.4);
}

.mil-dark-soft {
  color: rgba(0, 0, 0, 0.5);
}

.mil-marker {
  background-color: #FEBF18;
  padding: 0 5px;
}

.mil-center {
  text-align: center;
}

.mil-left {
  text-align: left;
}

.mil-right {
  text-align: right;
}

@media screen and (max-width: 576px) {
  .mil-sm-center {
    text-align: center;
  }
}

.mil-suptitle {
  position: relative;
  display: block;
  margin-bottom: 60px;
}

.mil-suptitle:before {
  content: "";
  position: absolute;
  right: calc(100% + 30px);
  top: 10px;
  width: 600px;
  height: 1px;
  background-color: rgb(255, 255, 255);
  opacity: 0.2;
}

.mil-suptitle.mil-suptitle-right {
  text-align: right;
}

.mil-suptitle.mil-suptitle-right:before {
  left: calc(100% + 30px);
}

@media screen and (max-width: 768px) {
  .mil-suptitle.mil-suptitle-right {
    text-align: center;
  }

  .mil-suptitle.mil-suptitle-right:before {
    display: none;
  }
}

.mil-suptitle.mil-suptitle-dark:before {
  background-color: rgb(0, 0, 0);
  opacity: 0.1;
}

@media screen and (max-width: 768px) {
  .mil-suptitle {
    margin-bottom: 60px;
  }
}

.mil-divider {
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.1);
}

.mil-img-frame {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 140%;
}

.mil-img-frame img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

/* -------------------------------------------

link

------------------------------------------- */
.mil-link {
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 12px;
}

.mil-link svg {
  margin-left: 15px;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.1);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-link svg path {
  fill: rgb(255, 255, 255);
}

.mil-link.mil-accent svg {
  background-color: rgba(255, 255, 255, 0.1);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-link.mil-accent svg path {
  fill: #FEBF18;
}

.mil-link.mil-dark svg {
  background-color: rgba(0, 0, 0, 0.1);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-link.mil-dark svg path {
  fill: rgb(0, 0, 0);
}

.mil-link:hover svg {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}

.mil-link.mil-down-arrow svg {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.mil-link.mil-down-arrow:hover svg {
  -webkit-transform: scale(1.15) rotate(90deg);
  transform: scale(1.15) rotate(90deg);
}

.mil-link.mil-icon-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.mil-link.mil-icon-left svg {
  margin-left: 0;
  margin-right: 15px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.mil-link.mil-icon-left:hover svg {
  -webkit-transform: scale(1.15) rotate(180deg);
  transform: scale(1.15) rotate(180deg);
}

/* -------------------------------------------

button

------------------------------------------- */
.mil-button {
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: none;
  letter-spacing: 2px;
  font-size: 12px;
  background-color: #FEBF18;
  color: rgb(0, 0, 0);
  border-radius: 70px;
  padding: 0 15px 0 50px;
  height: 70px;
  text-transform: uppercase;
  font-weight: 500;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-button span {
  white-space: nowrap;
}

.mil-button svg {
  margin-left: 30px;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 10px;
  background-color: rgb(0, 0, 0);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-button svg path {
  fill: #FEBF18;
}

.mil-button.mil-icon-button {
  padding: 15px;
}

.mil-button.mil-icon-button svg {
  margin-left: 0;
}

.mil-button.mil-icon-button-sm {
  padding: 0;
  height: 40px;
}

.mil-button.mil-icon-button-sm svg {
  margin-left: 0;
  background-color: #FEBF18;
}

.mil-button.mil-icon-button-sm svg path {
  fill: rgb(0, 0, 0);
}

.mil-button:hover {
  -webkit-transform: scale(1.015);
  transform: scale(1.015);
  -webkit-filter: brightness(110%);
  filter: brightness(110%);
}

.mil-button:hover svg {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}

.mil-button.mil-arrow-down svg {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.mil-button.mil-arrow-down:hover {
  -webkit-transform: scale(1.015);
  transform: scale(1.015);
  -webkit-filter: brightness(110%);
  filter: brightness(110%);
}

.mil-button.mil-arrow-down:hover svg {
  -webkit-transform: scale(1.15) rotate(90deg);
  transform: scale(1.15) rotate(90deg);
}

@media screen and (max-width: 992px) {
  .mil-button {
    height: 60px;
    padding: 0 10px 0 40px;
  }

  .mil-button svg {
    margin-left: 25px;
  }
}

/* -------------------------------------------

form

------------------------------------------- */
input,
textarea {
  position: relative;
  height: 70px;
  padding: 0 30px;
  width: 100%;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  font-family: "Outfit", sans-serif;
  color: rgb(0, 0, 0);
  border: none;
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  margin-bottom: 30px;
}

input:focus,
textarea:focus {
  outline: inherit;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.5);
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.5);
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.5);
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.5);
}

input::placeholder,
textarea::placeholder {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.5);
}

textarea {
  padding: 15px 30px;
  height: 300px;
}

select {
  position: relative;
  height: 70px;
  padding: 0 30px;
  width: 100%;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  font-family: "Outfit", sans-serif;
  color: rgb(0, 0, 0);
  background-color: transparent;
  border: none;
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  margin-bottom: 30px;
  border-radius: 0;
  cursor: pointer;

  /* Remove browser default styling */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  /* Custom dropdown arrow */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 30px center;
  background-size: 12px;
}

select:focus {
  outline: none;
  border-bottom-color: rgba(0, 0, 0, 0.6);
}

select option {
  font-family: "Outfit", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #000;
  background: #fff;
}

/* Placeholder option */
select:invalid {
  color: rgba(0, 0, 0, 0.5);
}

/* Mobile */
@media screen and (max-width: 767px) {
  select {
    height: 65px;
    padding: 0 25px;
    background-position: right 25px center;
  }
}

/* -------------------------------------------

breadcrumbs

------------------------------------------- */
.mil-breadcrumbs {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.mil-breadcrumbs:before {
  content: "";
  position: absolute;
  right: calc(100% + 30px);
  top: 10px;
  width: 100vw;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
}

.mil-breadcrumbs li {
  list-style-type: none;
}

.mil-breadcrumbs li:after {
  content: "/";
  margin: 0 15px;
  color: rgb(0, 0, 0);
}

.mil-breadcrumbs li a {
  color: rgb(0, 0, 0);
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  font-size: 12px;
  white-space: nowrap;
  -webkit-transition: 0.2s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.2s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-breadcrumbs li a:hover {
  color: #FEBF18;
}

.mil-breadcrumbs li:last-child {
  margin-right: 0;
  cursor: not-allowed;
}

.mil-breadcrumbs li:last-child a {
  opacity: 0.4;
  pointer-events: none;
}

.mil-breadcrumbs li:last-child:after {
  display: none;
}

.mil-breadcrumbs.mil-light:before {
  background-color: rgba(255, 255, 255, 0.1);
}

.mil-breadcrumbs.mil-light li:after {
  color: rgba(255, 255, 255, 0.9);
}

.mil-breadcrumbs.mil-light li a:hover {
  color: rgb(255, 152, 0) !important;
}

.mil-breadcrumbs.mil-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}


/* =========================================================
   BACKGROUNDS
   ========================================================= */

/* -------------------------------------------
   DARK BACKGROUND
------------------------------------------- */

.mil-dark-bg {
  position: relative;
  background-color: #000;
}


/*
 * IMPORTANT:
 * Do NOT use backdrop-filter: invert(100%).
 *
 * The header/logo is controlled separately by
 * JavaScript using the white and black logo files.
 *
 * This prevents the dark section from physically
 * inverting the fixed header.
 */

.mil-dark-bg::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  pointer-events: none;

  /*
     * Keep this layer visually neutral.
     */
  background: transparent;

  z-index: 1;
}


/* -------------------------------------------
   DARK SECTION CONTENT
------------------------------------------- */

.mil-dark-bg .mi-invert-fix {
  position: relative;

  height: 100%;

  pointer-events: none;

  z-index: 2;
}


/*
 * Allow normal interaction with content.
 */

.mil-dark-bg .mi-invert-fix .container {
  pointer-events: all;
}


/* -------------------------------------------
   SOFT / LIGHT BACKGROUND
------------------------------------------- */

.mil-soft-bg {
  background-color: rgb(242, 242, 242);
}


/* -------------------------------------------

spaces

------------------------------------------- */
.mil-mr-30 {
  margin-right: 30px;
}

.mil-mb-5 {
  margin-bottom: 5px;
}

.mil-mb-10 {
  margin-bottom: 10px;
}

.mil-mb-15 {
  margin-bottom: 15px;
}

.mil-mb-20 {
  margin-bottom: 15px;
}

.mil-mb-30 {
  margin-bottom: 30px;
}

.mil-mb-60 {
  margin-bottom: 60px;
}

.mil-mb-90 {
  margin-bottom: 90px;
}

.mil-mb-120 {
  margin-bottom: 120px;
}

@media screen and (max-width: 992px) {
  .mil-mb-120 {
    margin-bottom: 90px;
  }
}

.mil-mt-suptitle-offset {
  margin-top: 70px;
}

@media screen and (max-width: 992px) {
  .mil-mt-suptitle-offset {
    margin-top: 30px;
  }
}

.mil-p-120-120 {
  padding-top: 120px;
  padding-bottom: 120px;
}

@media screen and (max-width: 992px) {
  .mil-p-120-120 {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}

.mil-p-120-90 {
  padding-top: 120px;
  padding-bottom: 90px;
}

@media screen and (max-width: 992px) {
  .mil-p-120-90 {
    padding-top: 90px;
    padding-bottom: 60px;
  }
}

.mil-p-0-120 {
  padding-bottom: 120px;
}

@media screen and (max-width: 992px) {
  .mil-p-0-120 {
    padding-bottom: 90px;
  }
}

.mil-p-120-0 {
  padding-top: 120px;
}

@media screen and (max-width: 992px) {
  .mil-p-120-0 {
    padding-top: 90px;
  }
}

.mil-p-120-60 {
  padding-top: 120px;
  padding-bottom: 60px;
}

@media screen and (max-width: 992px) {
  .mil-p-120-60 {
    padding-top: 90px;
    padding-bottom: 30px;
  }
}

.mil-p-90-90 {
  padding-top: 90px;
  padding-bottom: 90px;
}

@media screen and (max-width: 992px) {
  .mil-p-90-90 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.mil-p-90-120 {
  padding-top: 90px;
  padding-bottom: 120px;
}

@media screen and (max-width: 992px) {
  .mil-p-90-120 {
    padding-top: 60px;
    padding-bottom: 90px;
  }
}

.mil-p-0-90 {
  padding-bottom: 90px;
}

@media screen and (max-width: 992px) {
  .mil-p-0-90 {
    padding-bottom: 60px;
  }
}

.mil-p-0-30 {
  padding-bottom: 30px;
}

@media screen and (max-width: 992px) {
  .mil-p-0-30 {
    padding-bottom: 0;
  }
}

.mil-p-120-30 {
  padding-top: 120px;
  padding-bottom: 30px;
}

@media screen and (max-width: 992px) {
  .mil-p-120-30 {
    padding-top: 90px;
    padding-bottom: 0;
  }
}

.mil-adaptive-right {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

@media screen and (max-width: 992px) {
  .mil-adaptive-right {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}

.mil-btn-space {
  margin-right: 30px;
}

@media screen and (max-width: 500px) {
  .mil-btn-space {
    margin-right: 50px;
    margin-bottom: 30px;
  }
}


/* -------------------------------------------
   PRELOADER
------------------------------------------- */

.mil-preloader {
  position: fixed;
  z-index: 999999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgb(0, 0, 0);
}

.mil-preloader .mil-preloader-animation {
  opacity: 0;
  position: relative;
  height: 100vh;
  color: rgb(255, 255, 255);
}

.mil-preloader .mil-preloader-animation .mil-pos-abs {
  position: absolute;
  height: 100vh;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-preloader .mil-preloader-animation .mil-pos-abs p {
  opacity: 0;
  margin-right: 15px;
}

@media screen and (max-width: 992px) {

  .mil-preloader .mil-preloader-animation .mil-pos-abs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .mil-preloader .mil-preloader-animation .mil-pos-abs p {
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.mil-preloader .mil-preloader-animation .mil-pos-abs .mil-reveal-frame {
  position: relative;
  padding: 0 30px;
}

.mil-preloader .mil-preloader-animation .mil-pos-abs .mil-reveal-frame .mil-reveal-box {
  z-index: 4;
  position: absolute;
  opacity: 0;
  height: 100%;
  background-color: #FEBF18;
}

.mil-preloader.mil-hidden {
  pointer-events: none;
}


/* -------------------------------------------
   JMR PRELOADER LOGO
------------------------------------------- */

.mil-preloader-logo-wrap {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  margin: 0;
  padding: 0;

  opacity: 0;
}

.mil-preloader-logo {
  display: block;

  width: 90px;
  height: 90px;

  object-fit: contain;
}


/* -------------------------------------------
   MOBILE LOGO
------------------------------------------- */

@media screen and (max-width: 576px) {

  .mil-preloader-logo {
    width: 70px;
    height: 70px;
  }

}


/* -------------------------------------------

cursor

------------------------------------------- */
.mil-ball {
  width: 20px;
  height: 20px;
  position: fixed;
  z-index: 10;
  background-color: rgb(0, 0, 0);
  border-radius: 50%;
  pointer-events: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  opacity: 0.1;
}

.mil-ball .mil-icon-1 {
  position: absolute;
  width: 40px;
  height: 40px;
  -webkit-transform: scale(0);
  transform: scale(0);
}

.mil-ball .mil-icon-1 svg {
  fill: rgba(255, 255, 255, 0.9);
}

.mil-ball .mil-more-text,
.mil-ball .mil-choose-text {
  position: absolute;
  width: 100%;
  text-align: center;
  display: block;
  color: rgba(255, 255, 255, 0.9);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  -webkit-transform: scale(0);
  transform: scale(0);
}

.mil-ball.mil-accent .mil-icon-1 svg {
  fill: rgb(0, 0, 0);
}

.mil-ball.mil-accent .mil-more-text,
.mil-ball.mil-accent .mil-choose-text {
  color: rgb(0, 0, 0);
}

@media screen and (max-width: 1200px) {
  .mil-ball {
    display: none;
  }
}

/* -------------------------------------------

hidden elements

------------------------------------------- */
.mil-hidden-elements .mil-dodecahedron,
.mil-hidden-elements .mil-lines,
.mil-hidden-elements .mil-arrow {
  display: none;
}

/* -------------------------------------------

scrollbar

------------------------------------------- */
::-webkit-scrollbar {
  display: none;
}

.mil-progress-track {
  position: fixed;
  z-index: 10;
  top: 0;
  right: 0;
  width: 4px;
  height: 100%;
  background-color: rgb(0, 0, 0);
}

.mil-progress-track .mil-progress {
  width: 4px;
  height: 0;
  background-color: #FEBF18;
}

@media screen and (max-width: 992px) {
  .mil-progress-track {
    display: none;
  }
}


/* =========================================================
   FRAME / JMR LOGO
   ========================================================= */

/* -------------------------------------------
   LOGO CONTAINER
------------------------------------------- */

.mil-logo {
  position: relative;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  width: 65px !important;
  height: 65px !important;

  margin: 0 !important;
  padding: 0 !important;

  font-size: 0 !important;
  line-height: 0 !important;

  text-decoration: none !important;
  color: transparent !important;

  pointer-events: all;

  flex-shrink: 0;
}


/* -------------------------------------------
   BOTH LOGO IMAGES
------------------------------------------- */

.mil-header-logo {
  position: absolute !important;

  top: 50%;
  left: 50%;

  display: block !important;

  width: 65px !important;
  height: 65px !important;

  min-width: 65px !important;
  min-height: 65px !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  object-fit: contain !important;

  transform: translate(-50%, -50%);

  visibility: visible !important;

  transition:
    opacity 0.3s ease,
    visibility 0.3s ease;
}


/* -------------------------------------------
   WHITE LOGO
------------------------------------------- */

.mil-logo-white {
  opacity: 1;
  visibility: visible;
  z-index: 2;

  filter: none;
  mix-blend-mode: normal;
}



/* -------------------------------------------
   BLACK LOGO
------------------------------------------- */

.mil-logo-black {
  opacity: 0;
  visibility: hidden;
  z-index: 1;

  filter: none;
  mix-blend-mode: normal;
}



/* =========================================================
   MAIN FRAME
   ========================================================= */

.mil-frame {
  padding: 50px 60px 60px 60px;

  position: fixed;

  z-index: 2;

  pointer-events: none;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;

  -ms-flex-direction: column;
  flex-direction: column;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;

  justify-content: space-between;

  width: 100%;
  height: 100%;
}


/* -------------------------------------------
   TABLET FRAME
------------------------------------------- */

@media screen and (max-width: 1200px) {

  .mil-frame {
    padding: 30px;
  }

}


/* -------------------------------------------
   MOBILE FRAME
------------------------------------------- */

@media screen and (max-width: 1200px) {

  .mil-frame {
    padding: 0;

    z-index: 999;

    height: 90px;
  }

}


/* =========================================================
   MOBILE / TABLET FRAME TOP
   ========================================================= */

@media screen and (max-width: 1200px) {

  .mil-frame .mil-frame-top {

    height: 90px;

    background-color: rgba(0, 0, 0, 0.95);

    border-bottom: solid 1px rgba(255, 255, 255, 0.1);

    padding: 0 30px;

    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }


  /* -------------------------------------------
       Header logo
    ------------------------------------------- */

  .mil-frame .mil-frame-top .mil-logo {

    width: 55px !important;
    height: 55px !important;

    color: transparent !important;
  }


  .mil-frame .mil-frame-top .mil-logo .mil-header-logo {

    width: 55px !important;
    height: 55px !important;

    min-width: 55px !important;
    min-height: 55px !important;
  }


  /* -------------------------------------------
       Mobile menu button
    ------------------------------------------- */

  .mil-frame .mil-frame-top .mil-menu-btn span,
  .mil-frame .mil-frame-top .mil-menu-btn span:after,
  .mil-frame .mil-frame-top .mil-menu-btn span:before {

    background: rgb(255, 255, 255);
  }

}


/* =========================================================
   FRAME BOTTOM
   ========================================================= */

.mil-frame .mil-frame-bottom {

  width: 100%;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;

  justify-content: space-between;

  -webkit-box-align: end;
  -ms-flex-align: end;

  align-items: flex-end;
}


@media screen and (max-width: 1200px) {

  .mil-frame .mil-frame-bottom {
    display: none;
  }

}


/* =========================================================
   CURRENT PAGE
   ========================================================= */

.mil-frame .mil-frame-bottom .mil-current-page {

  pointer-events: none;

  font-weight: 500;

  text-transform: uppercase;

  letter-spacing: 2px;

  font-size: 12px;

  width: 300px;

  color: inherit !important;

  -webkit-transform:
    rotate(-90deg) translateX(138px) translateY(-138px);

  transform:
    rotate(-90deg) translateX(138px) translateY(-138px);
}


/* =========================================================
   BACK TO TOP
   ========================================================= */

.mil-frame .mil-frame-bottom .mil-back-to-top {

  width: 300px;

  -webkit-transform:
    rotate(-90deg) translateX(130px) translateY(130px);

  transform:
    rotate(-90deg) translateX(130px) translateY(130px);

  pointer-events: all;
}


/* =========================================================
   FRAME TOP
   ========================================================= */

.mil-frame-top {

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-pack: justify;
  -ms-flex-pack: justify;

  justify-content: space-between;

  -webkit-box-align: center;
  -ms-flex-align: center;

  align-items: center;
}


/* =========================================================
   MENU BUTTON
   ========================================================= */

.mil-menu-btn {

  pointer-events: all;
  z-index: 8;
  height: 28px;

  cursor: pointer;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-pack: center;
  -ms-flex-pack: center;

  justify-content: center;

  -webkit-box-align: center;
  -ms-flex-align: center;

  align-items: center;

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


@media screen and (max-width: 992px) {

  .mil-menu-btn {

    -webkit-transform: scale(0.85);
    transform: scale(0.85);
  }

}


.mil-menu-btn span,
.mil-menu-btn span:after,
.mil-menu-btn span:before {

  content: "";

  display: block;

  width: 28px;
  height: 2.5px;

  background: rgb(0, 0, 0);

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;

  -webkit-transition: inherit;
  transition: inherit;
}


.mil-menu-btn span {

  position: relative;
}


.mil-menu-btn span:after,
.mil-menu-btn span:before {

  position: absolute;
}


.mil-menu-btn span:before {
  top: -9px;
}


.mil-menu-btn span:after {

  width: 18px;

  top: 9px;
}


/* -------------------------------------------
   Active menu button
------------------------------------------- */

.mil-menu-btn.mil-active span {

  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}


.mil-menu-btn.mil-active span:before {

  -webkit-transform:
    translate(0px, 9px) rotate(-90deg);

  transform:
    translate(0px, 9px) rotate(-90deg);
}


.mil-menu-btn.mil-active span:after {

  opacity: 0;

  width: 24px;

  -webkit-transform:
    translate(0px, -9px) rotate(-90deg);

  transform:
    translate(0px, -9px) rotate(-90deg);
}


/* =========================================================
   FULL SCREEN MENU
   ========================================================= */

.mil-menu-frame {

  position: fixed;

  z-index: 9;

  width: 100%;
  height: 100vh;

  background-color: rgb(0, 0, 0);

  opacity: 0;

  pointer-events: none;

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


/* -------------------------------------------
   Menu container
------------------------------------------- */

.mil-menu-frame .container {
  pointer-events: none;
}


/* -------------------------------------------
   Menu frame top
------------------------------------------- */

.mil-menu-frame .mil-frame-top {

  position: absolute;

  top: 0;
  left: 0;

  width: 100%;

  padding: 50px 60px;
}


@media screen and (max-width: 1200px) {

  .mil-menu-frame .mil-frame-top {
    display: none;
  }

}


/* =========================================
   JMR LOGO CONTAINER
========================================= */

.mil-frame-top .mil-logo {
  position: relative !important;
  display: block !important;

  width: 65px !important;
  height: 65px !important;

  opacity: 1 !important;
  visibility: visible !important;

  filter: none !important;
  mix-blend-mode: normal !important;
}


/* =========================================
   BOTH LOGOS
========================================= */

.mil-frame-top .mil-header-logo {
  position: absolute !important;

  top: 50% !important;
  left: 0 !important;

  width: 65px !important;
  height: auto !important;

  object-fit: contain !important;

  display: block !important;

  filter: none !important;
  opacity: 1;
  mix-blend-mode: normal !important;
  -webkit-filter: none !important;
  -webkit-transform: translateY(-50%) translateZ(0) !important;
  transform: translateY(-50%) translateZ(0) !important;
}


/* =========================================
   DEFAULT WHITE
========================================= */

.mil-frame-top .mil-logo-white {
  opacity: 1;
  visibility: visible;
  z-index: 2;

  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}



/* =========================================
   DEFAULT BLACK
========================================= */

.mil-frame-top .mil-logo-black {
  opacity: 0;
  visibility: hidden;
  z-index: 1;

  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}



/* =========================================
   ACTIVE BLACK
========================================= */

.mil-frame-top .mil-logo-black.jmr-active {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 99999 !important;
}


.mil-frame-top .mil-logo-white.jmr-inactive {
  opacity: 0 !important;
  visibility: hidden !important;
  z-index: 1 !important;
}



/* -------------------------------------------
   Menu button
------------------------------------------- */

.mil-menu-frame .mil-frame-top .mil-menu-btn span,
.mil-menu-frame .mil-frame-top .mil-menu-btn span:after,
.mil-menu-frame .mil-frame-top .mil-menu-btn span:before {

  background-color: rgb(255, 255, 255);
}


/* =========================================================
   MENU MAIN ANIMATION
   ========================================================= */

.mil-menu-frame .mil-main-menu {

  -webkit-transform: translateX(-30px);
  transform: translateX(-30px);

  opacity: 0;

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


@media screen and (max-width: 1200px) {

  .mil-menu-frame .mil-main-menu {

    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

}


/* =========================================================
   MENU RIGHT FRAME
   ========================================================= */

.mil-menu-frame .mil-menu-right-frame {

  padding-left: 60px;

  position: relative;

  height: 100vh;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: end;
  -ms-flex-align: end;

  align-items: flex-end;

  border-left:
    solid 1px rgba(255, 255, 255, 0.1);

  opacity: 0;

  -webkit-transform: translateY(30px);
  transform: translateY(30px);

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


.mil-menu-frame .mil-menu-right-frame .mil-menu-right {

  padding-bottom: 60px;
}


/* -------------------------------------------
   Menu decorative animation
------------------------------------------- */

.mil-menu-frame .mil-menu-right-frame .mil-animation-in {

  position: absolute;

  top: -320px;
  right: 0;

  opacity: 0;

  -webkit-transform: translateY(-60px);
  transform: translateY(-60px);

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


@media screen and (max-width: 1200px) {

  .mil-menu-frame .mil-menu-right-frame {
    display: none;
  }

}


@media screen and (max-height: 800px) {

  .mil-menu-frame .mil-menu-right-frame {
    display: none;
  }

}


/* =========================================================
   ACTIVE MENU
   ========================================================= */

.mil-menu-frame.mil-active {

  opacity: 1;

  pointer-events: all;
}


.mil-menu-frame.mil-active .container {

  pointer-events: all;
}


.mil-menu-frame.mil-active .mil-main-menu {

  -webkit-transform: translateX(0);
  transform: translateX(0);

  -webkit-transform: translateY(0);
  transform: translateY(0);

  opacity: 1;

  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}


.mil-menu-frame.mil-active .mil-menu-right-frame {

  opacity: 1;

  -webkit-transform: translateY(0);
  transform: translateY(0);

  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}


.mil-menu-frame.mil-active .mil-menu-right-frame .mil-animation-in {

  opacity: 1;

  -webkit-transform: translateY(0);
  transform: translateY(0);

  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
}


/* =========================================================
   MENU LIST
   ========================================================= */

.mil-menu-list li {

  list-style-type: none;

  margin-bottom: 15px;
}


.mil-menu-list li:last-child {
  margin-bottom: 0;
}


.mil-menu-list li a {

  display: block;

  -webkit-transition:
    0.2s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.2s cubic-bezier(0, 0, 0.3642, 1);
}


.mil-menu-list li a:hover {

  -webkit-transform: translateX(5px);
  transform: translateX(5px);

  color: rgb(255, 255, 255);
}


/* -------------------------------------------
   Horizontal menu list
------------------------------------------- */

.mil-menu-list.mil-hori-list {

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}


.mil-menu-list.mil-hori-list li {

  margin-bottom: 0;

  margin-right: 30px;
}


/* -------------------------------------------
   Dark menu list
------------------------------------------- */

.mil-menu-list.mil-dark li a {

  color: rgb(0, 0, 0);
}


/* =========================================================
   MAIN MENU
   ========================================================= */

.mil-main-menu {

  height: 100vh;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: center;
  -ms-flex-align: center;

  align-items: center;
}


.mil-main-menu ul {

  padding: 0;
  margin: 0;
}


.mil-main-menu ul li {

  margin-bottom: 40px;
}


.mil-main-menu ul li:last-child {
  margin-bottom: 0;
}


.mil-main-menu ul li a {

  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -webkit-box-align: center;
  -ms-flex-align: center;

  align-items: center;

  font-weight: 500;

  color: rgba(255, 255, 255, 0.8);

  font-size: 34px;

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


@media screen and (max-width: 992px) {

  .mil-main-menu ul li a {
    font-size: 26px;
  }

}


/* -------------------------------------------
   Menu hover dot
------------------------------------------- */

.mil-main-menu ul li a:before {

  content: "";

  position: absolute;

  left: 0;

  width: 10px;
  height: 10px;

  border-radius: 50%;

  background-color:
    rgba(255, 255, 255, 0.4);

  -webkit-transform: scale(0);
  transform: scale(0);

  -webkit-transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.4s cubic-bezier(0, 0, 0.3642, 1);
}


.mil-main-menu ul li a:hover {

  color: rgb(255, 255, 255);
}


/* -------------------------------------------
   Active menu item
------------------------------------------- */

.mil-main-menu ul li a.mil-active {

  padding-left: 25px;
}


.mil-main-menu ul li a.mil-active:before {

  -webkit-transform: scale(1);
  transform: scale(1);

  background-color: #FEBF18;
}


.mil-main-menu ul li.mil-active>a {

  color: #FEBF18;
}


.mil-main-menu ul li.mil-active>a:hover {

  color: rgb(255, 152, 0) !important;

  -webkit-filter: brightness(110%);
  filter: brightness(110%);
}


/* =========================================================
   SUBMENU
   ========================================================= */

.mil-main-menu ul li.mil-has-children>a:hover {

  color: rgb(255, 255, 255);

  padding-left: 25px;
}


.mil-main-menu ul li.mil-has-children>a:hover:before {

  -webkit-transform: scale(1);
  transform: scale(1);
}


.mil-main-menu ul li.mil-has-children ul {

  padding-left: 25px;

  overflow: hidden;

  max-height: 0;

  -webkit-transition:
    0.6s cubic-bezier(0, 0, 0.3642, 1);

  transition:
    0.6s cubic-bezier(0, 0, 0.3642, 1);
}


.mil-main-menu ul li.mil-has-children ul li {

  margin-bottom: 5px;
}


.mil-main-menu ul li.mil-has-children ul li:first-child {

  margin-top: 40px;
}


.mil-main-menu ul li.mil-has-children ul li a {

  display: block;

  font-size: 12px;

  color:
    rgba(255, 255, 255, 0.4);

  letter-spacing: 2px;

  font-weight: 500;

  text-transform: uppercase;
}


.mil-main-menu ul li.mil-has-children ul li a:before {
  display: none;
}


.mil-main-menu ul li.mil-has-children ul li a:hover {

  color:
    rgba(255, 255, 255, 0.8);

  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}


.mil-main-menu ul li.mil-has-children ul.mil-active {

  max-height: 200px;
}


/* =========================================================
   RESPONSIVE MAIN MENU
   ========================================================= */

@media screen and (max-width: 1200px) {

  .mil-main-menu {

    -webkit-box-pack: center;
    -ms-flex-pack: center;

    justify-content: center;
  }


  .mil-main-menu ul {

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;

    -ms-flex-direction: column;
    flex-direction: column;

    -webkit-box-align: center;
    -ms-flex-align: center;

    align-items: center;
  }


  .mil-main-menu ul li {

    margin-bottom: 30px;
  }


  .mil-main-menu ul li a {

    -webkit-box-pack: center;
    -ms-flex-pack: center;

    justify-content: center;
  }


  .mil-main-menu ul li a:before {
    display: none;
  }


  .mil-main-menu ul li a.mil-active {

    padding-left: 0 !important;
  }


  .mil-main-menu ul li.mil-has-children ul {

    padding-left: 0;
  }


  .mil-main-menu ul li.mil-has-children ul li:first-child {

    margin-top: 30px;
  }

}


/* =========================================================
   SMALL MOBILE LOGO
   ========================================================= */

@media screen and (max-width: 576px) {

  .mil-frame .mil-frame-top .mil-logo {

    width: 52px !important;
    height: 52px !important;
  }


  .mil-frame .mil-frame-top .mil-logo .mil-header-logo {

    width: 52px !important;
    height: 52px !important;

    min-width: 52px !important;
    min-height: 52px !important;
  }

}

/* -------------------------------------------

banner

------------------------------------------- */
.mil-banner {
  height: 100vh;
}

.mil-banner .container {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.mil-banner .mil-banner-content {
  width: 100%;
  padding-bottom: 120px;
  position: relative;
}

@media screen and (max-width: 992px) {
  .mil-banner .mil-banner-content {
    padding-bottom: 100px;

  }
}


.mil-banner .mil-lines-place {
  position: absolute;
  left: 0;
  bottom: calc(100% + 120px);
}

.mil-inner-banner .mil-banner-content {
  padding: 150px 0 0 0;
}

@media screen and (max-width: 1200px) {
  .mil-inner-banner .mil-banner-content {
    padding: 180px 0 0 0;
  }
}

.mil-banner-personal {
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.1);
}

.mil-banner-personal .mil-banner-content {
  position: relative;
  padding-top: 90px;
}

@media screen and (max-width: 992px) {
  .mil-banner-personal .mil-banner-content {
    padding-top: 180px;
  }
}

.mil-banner-personal .mil-banner-content .mil-personal-text {
  margin-bottom: 300px;
}

@media screen and (max-width: 992px) {
  .mil-banner-personal .mil-banner-content .mil-personal-text {
    margin-bottom: 80px;
    text-align: center;
  }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 60px 0 90px;
  background-color: rgb(255, 255, 255);
  height: 180px;
  position: absolute;
  top: calc(100vh - 180px);
  left: 0;
  width: 100%;
}

@media screen and (max-width: 992px) {
  .mil-banner-personal .mil-banner-content .mil-banner-panel {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: auto;
    padding: 60px 30px;
  }

  .mil-banner-personal .mil-banner-content .mil-banner-panel h5 {
    margin-bottom: 60px;
    text-align: center;
    width: 80%;
  }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 30px;
  padding: 0 50px;
  background-color: rgba(0, 0, 0, 0.1);
  height: 70px;
  border-radius: 70px;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame:hover {
  -webkit-transform: scale(1.015);
  transform: scale(1.015);
}

@media screen and (max-width: 992px) {
  .mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .mil-banner-personal .mil-banner-content .mil-banner-panel .mil-right .mil-social-frame {
    margin-right: 0;
    margin-bottom: 30px;
    height: 60px;
  }
}

.mil-banner-personal .mil-banner-content .mil-banner-panel .mil-button {
  margin: 0 !important;
}

@media screen and (max-width: 992px) {
  .mil-banner-personal .mil-banner-content .mil-banner-panel {
    bottom: 0;
    top: auto;
  }
}

@media screen and (max-width: 768px) {
  .mil-banner-personal .mil-banner-content .mil-banner-panel {
    position: static;
    margin-bottom: 90px;
  }
}

@media screen and (max-width: 992px) {
  .mil-banner-personal {
    height: auto;
  }
}

.mil-portrait-frame {
  position: relative;
}

.mil-portrait-frame img {
  position: relative;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.mil-portrait-frame .mil-nimbus {
  background: radial-gradient(50% 50% at 50% 50%, rgb(255, 152, 0) 0%, rgba(250, 168, 69, 0) 100%);
  width: 100%;
  padding-bottom: 100%;
  position: absolute;
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .mil-portrait-frame {
    height: 400px;
  }

  .mil-portrait-frame img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top;
  }
}

/* -------------------------------------------

circle text

------------------------------------------- */
.mil-circle-text {
  position: absolute;
  right: 0;
  bottom: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 140px;
  height: 140px;
}

.mil-circle-text .mil-ct-svg {
  -webkit-transform: scale(2);
  transform: scale(2);
  width: 140px;
  height: 140px;
}

.mil-circle-text .mil-ct-svg text {
  fill: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-circle-text .mil-button {
  position: absolute;
}

.mil-circle-text:hover svg text {
  fill: rgb(255, 255, 255);
}

@media screen and (max-width: 992px) {
  .mil-circle-text {
    display: none;
  }
}

/* =========================================================
JMR • DYNAMIC LATEST RELEASE PLAYER
========================================================= */

.jmr-release-wrapper {
  position: relative;
  width: 100%;
}

/* =========================================================
RELEASE ARTWORK
========================================================= */

.jmr-release-artwork {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #111;
}

.jmr-artwork-image {
  width: 100%;
  height: 100%;
  display: block;


  object-fit: cover;
  object-position: center;

  background: #111;

  transition:
    transform 1s cubic-bezier(.16, 1, .3, 1),
    filter .4s ease,
    opacity .35s ease;


}

/* Artwork hover */

.jmr-release-artwork:hover .jmr-artwork-image {
  transform: scale(1.04);
}

/* While new artwork is loading */

.jmr-artwork-image.jmr-loading {
  opacity: .45;
}

/* =========================================================
ARTWORK OVERLAY
========================================================= */

.jmr-release-artwork::after {
  content: "";


  position: absolute;

  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(to top,
      rgba(0, 0, 0, .18),
      transparent 45%);

  z-index: 2;

  opacity: .65;

  transition: opacity .4s ease;


}

.jmr-release-artwork:hover::after {
  opacity: .4;
}

/* =========================================================
LARGE PLAY BUTTON
========================================================= */

.jmr-release-play {
  position: absolute;


  top: 50%;
  left: 50%;

  width: 82px;
  height: 82px;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0;

  border: 1px solid rgba(255, 255, 255, .8);
  border-radius: 50%;

  background: #FEBF18;
  color: #000;

  cursor: pointer;

  transform: translate(-50%, -50%);

  z-index: 10;

  box-shadow:
    0 15px 40px rgba(0, 0, 0, .28);

  transition:
    transform .35s cubic-bezier(.16, 1, .3, 1),
    background-color .3s ease,
    box-shadow .3s ease,
    opacity .3s ease;


}

/* Hover */

.jmr-release-play:hover {
  transform:
    translate(-50%, -50%) scale(1.08);


  background: #FEBF18;

  box-shadow:
    0 20px 50px rgba(0, 0, 0, .38);


}

/* Press */

.jmr-release-play:active {
  transform:
    translate(-50%, -50%) scale(.95);
}

/* Keyboard focus */

.jmr-release-play:focus-visible {
  outline: 2px solid #FEBF18;
  outline-offset: 5px;
}

/* Disabled */

.jmr-release-play:disabled {
  cursor: not-allowed;
  opacity: .45;


  transform:
    translate(-50%, -50%) scale(.95);

  box-shadow: none;


}

/* =========================================================
PLAY ICON
========================================================= */

.jmr-release-play svg {
  width: 28px;
  height: 28px;


  display: block;

  fill: #000;

  margin-left: 4px;

  transition:
    transform .3s ease,
    width .25s ease,
    height .25s ease;


}

/* Pause state */

.jmr-release-play.is-playing svg {
  width: 23px;
  height: 23px;


  margin-left: 0;


}

/* =========================================================
PLAYER CONTAINER
========================================================= */

.jmr-player {
  width: 100%;


  padding: 28px 0 0;


}

/* =========================================================
PLAYER INFORMATION
========================================================= */

.jmr-player-info {
  display: flex;


  align-items: center;
  justify-content: space-between;

  gap: 30px;

  min-width: 0;


}

/* Information wrapper */

.jmr-player-info>div:first-child {
  min-width: 0;
}

/* NOW PLAYING */

.jmr-player-label {
  display: block;


  margin-bottom: 7px;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 3px;

  line-height: 1.4;

  text-transform: uppercase;

  opacity: .45;


}

/* Song title */

.jmr-player-info h5 {
  margin: 0 0 5px;


  font-size: 18px;
  line-height: 1.2;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;


}

/* Artist */

.jmr-player-info p {
  margin: 0;


  font-size: 13px;

  line-height: 1.4;

  opacity: .55;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;


}

/* =========================================================
SOUND WAVE
========================================================= */

.jmr-sound-wave {
  display: flex;


  align-items: center;
  justify-content: center;

  gap: 4px;

  width: 45px;
  height: 35px;

  flex-shrink: 0;

  opacity: .7;


}

/* Bars */

.jmr-sound-wave span {
  display: block;


  width: 3px;
  height: 10px;

  background: #FEBF18;

  border-radius: 2px;

  transform-origin: center;

  animation:
    jmrSoundWave 1s ease-in-out infinite;

  animation-play-state: paused;


}

/* Individual heights */

.jmr-sound-wave span:nth-child(1) {
  height: 9px;
  animation-delay: -.2s;
}

.jmr-sound-wave span:nth-child(2) {
  height: 18px;
  animation-delay: -.4s;
}

.jmr-sound-wave span:nth-child(3) {
  height: 27px;
  animation-delay: -.1s;
}

.jmr-sound-wave span:nth-child(4) {
  height: 15px;
  animation-delay: -.5s;
}

.jmr-sound-wave span:nth-child(5) {
  height: 23px;
  animation-delay: -.3s;
}

.jmr-sound-wave span:nth-child(6) {
  height: 12px;
  animation-delay: -.6s;
}

.jmr-sound-wave span:nth-child(7) {
  height: 20px;
  animation-delay: -.15s;
}

/* Playing */

.jmr-sound-wave.is-playing span {
  animation-play-state: running;
}

/* Wave animation */

@keyframes jmrSoundWave {


  0%,
  100% {
    transform: scaleY(.45);
  }

  50% {
    transform: scaleY(1);
  }


}

/* =========================================================
PROGRESS BAR
========================================================= */

.jmr-progress {
  position: relative;


  width: 100%;
  height: 3px;

  margin-top: 24px;

  background: rgba(0, 0, 0, .1);

  cursor: pointer;

  transition:
    height .2s ease,
    background-color .2s ease;


}

/* Progress fill */

.jmr-progress span {
  position: absolute;
  top: 0;
  left: 0;

  width: 0;
  height: 100%;

  background: #FEBF18;

  transition:
    width .1s linear;
}

/* Hover */

.jmr-progress:hover {
  height: 4px;
}

/* Focus */

.jmr-progress:focus-visible {
  outline: 2px solid #FEBF18;
  outline-offset: 5px;
}

/* =========================================================
PLAYER CONTROLS
========================================================= */

.jmr-player-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-top: 14px;
}

/* Time */

.jmr-player-controls>span {
  min-width: 40px;
  font-size: 9px;

  letter-spacing: 1px;

  opacity: .45;

  font-variant-numeric: tabular-nums;

}

/* =========================================================
MINI PLAY BUTTON
========================================================= */

.jmr-mini-play {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0;

  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 50%;

  background: transparent;

  color: #000;

  cursor: pointer;

  transition:
    background-color .3s ease,
    border-color .3s ease,
    transform .3s ease,
    opacity .3s ease;

}

/* Hover */

.jmr-mini-play:hover {
  background: #FEBF18;
  border-color: #FEBF18;
  transform: scale(1.08);
}

/* Focus */

.jmr-mini-play:focus-visible {
  outline: 2px solid #FEBF18;
  outline-offset: 4px;
}

/* Disabled */

.jmr-mini-play:disabled {
  cursor: not-allowed;
  opacity: .4;
}

/* Icon */

.jmr-mini-play svg {
  width: 13px;
  height: 13px;
  display: block;
  fill: #000;
  margin-left: 2px;
}

/* Pause */

.jmr-mini-play.is-playing svg {
  width: 12px;
  height: 14px;
  margin-left: 0;


}

/* =========================================================
RELEASE DETAILS
========================================================= */

.jmr-release-details {
  display: grid;


  grid-template-columns: repeat(2, 1fr);

  gap: 30px;

  padding: 25px 0;

  border-top:
    1px solid rgba(0, 0, 0, .12);

  border-bottom:
    1px solid rgba(0, 0, 0, .12);

}

/* Detail values */

.jmr-release-details p,
#jmrReleaseDate {
  transition: opacity .25s ease;
}

/* =========================================================
RELEASE DATE
========================================================= */

#jmrReleaseDate {
  margin-top: 10px;
}

/* =========================================================
JMR • STREAMING PLATFORM ICONS
========================================================= */

.jmr-platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

/* =========================================
PLATFORM BUTTON
========================================= */

.jmr-platform {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 10px 16px;


  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 999px;

  background: #fff;
  color: #111 !important;

  text-decoration: none !important;

  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.3px;

  transition:
    color 0.3s ease,
    background-color 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease;


}

/* =========================================
ICON
========================================= */

.jmr-platform-icon {
  width: 25px;
  height: 25px;


  display: inline-flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  font-size: 17px;
  line-height: 1;


}

/* =========================================
PLATFORM NAME
========================================= */

.jmr-platform-name {
  display: inline-block;
  white-space: nowrap;
}

/* =========================================
HOVER
========================================= */

.jmr-platform:hover {
  background: #000;
  color: #FEBF18 !important;
  border-color: #000;


  transform: translateY(-3px);

  box-shadow:
    0 8px 20px rgba(0, 0, 0, 0.12);


}

.jmr-platform:hover .jmr-platform-icon {
  color: #FEBF18;
}

/* =========================================
ACTIVE / PRESS
========================================= */

.jmr-platform:active {
  transform: translateY(-1px);
}

/* =========================================
DISABLED PLATFORM
========================================= */

.jmr-platform.jmr-platform-disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: auto;
  transform: none;
  box-shadow: none;
}

/* =========================================
FOCUS
========================================= */

.jmr-platform:focus-visible {
  outline: 2px solid #FEBF18;
  outline-offset: 4px;
}

/* =========================================
MOBILE
========================================= */

@media screen and (max-width: 576px) {


  .jmr-platforms {
    gap: 8px;
  }

  .jmr-platform {
    min-height: 44px;
    padding: 9px 13px;
    gap: 8px;
    font-size: 11px;
  }

  .jmr-platform-icon {
    width: 23px;
    height: 23px;
    font-size: 16px;
  }


}

/* =========================================
SMALL PHONES
========================================= */

@media screen and (max-width: 380px) {


  .jmr-platform {
    padding: 8px 11px;
    font-size: 10px;
  }

  .jmr-platform-icon {
    font-size: 15px;
  }


}


/* =========================================================
LOADING STATE
========================================================= */

.jmr-release-wrapper.jmr-loading {


  pointer-events: none;


}

/* Subtle loading animation */

.jmr-release-wrapper.jmr-loading .jmr-release-artwork::before {


  content: "";

  position: absolute;

  inset: 0;

  z-index: 5;

  background:
    linear-gradient(110deg,
      transparent 20%,
      rgba(255, 255, 255, .08) 45%,
      transparent 70%);

  background-size: 200% 100%;

  animation:
    jmrReleaseLoading 1.4s linear infinite;

}

@keyframes jmrReleaseLoading {


  from {
    background-position: 200% 0;
  }

  to {
    background-position: -200% 0;
  }

}

/* =========================================================
NO RELEASE / ERROR STATE
========================================================= */

.jmr-release-wrapper.jmr-release-error .jmr-release-play {


  opacity: .45;

  cursor: not-allowed;


}

/* =========================================================
TABLET
========================================================= */

@media screen and (max-width: 991px) {

  .jmr-release-wrapper {
    margin-bottom: 60px;
  }

  .jmr-player {
    padding-top: 25px;
  }

}

/* =========================================================
MOBILE
========================================================= */

@media screen and (max-width: 576px) {


  .jmr-release-artwork {
    aspect-ratio: 1 / 1;
  }


  /* Play button */

  .jmr-release-play {
    width: 64px;
    height: 64px;
  }

  .jmr-release-play svg {
    width: 22px;
    height: 22px;
  }


  /* Player */

  .jmr-player {
    padding-top: 22px;
  }


  /* Information */

  .jmr-player-info {
    gap: 15px;
  }

  .jmr-player-info h5 {
    font-size: 16px;
  }

  .jmr-player-info p {
    font-size: 12px;
  }


  /* Wave */

  .jmr-sound-wave {
    width: 38px;

    gap: 3px;
  }

  .jmr-sound-wave span {
    width: 2px;
  }


  /* Release details */

  .jmr-release-details {
    grid-template-columns: 1fr;

    gap: 20px;
  }


  /* Platforms */

  .jmr-platform {
    flex: 1 1 calc(50% - 8px);

    padding: 0 8px;

    font-size: 8px;

    letter-spacing: .7px;
  }

}

/* =========================================================
SMALL MOBILE
========================================================= */

@media screen and (max-width: 380px) {


  .jmr-release-play {
    width: 58px;
    height: 58px;
  }

  .jmr-release-play svg {
    width: 20px;
    height: 20px;
  }


  .jmr-platform {
    flex-basis: 100%;
  }


  .jmr-player-info h5 {
    font-size: 15px;
  }

}

/* =========================================================
REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

  .jmr-release-artwork,
  .jmr-artwork-image,
  .jmr-release-play,
  .jmr-mini-play,
  .jmr-platform,
  .jmr-progress {
    transition: none !important;
  }

  .jmr-sound-wave span {
    animation: none !important;
  }

  .jmr-release-wrapper.jmr-loading .jmr-release-artwork::before {
    animation: none !important;
  }


}


/* -------------------------------------------

lines

------------------------------------------- */
@-webkit-keyframes move {
  from {
    -webkit-transform: translateY(-75px);
    transform: translateY(-75px);
  }

  50% {
    -webkit-transform: translateY(75px);
    transform: translateY(75px);
  }

  to {
    -webkit-transform: translateY(-75px);
    transform: translateY(-75px);
  }
}

@keyframes move {
  from {
    -webkit-transform: translateY(-75px);
    transform: translateY(-75px);
  }

  50% {
    -webkit-transform: translateY(75px);
    transform: translateY(75px);
  }

  to {
    -webkit-transform: translateY(-75px);
    transform: translateY(-75px);
  }
}

.mil-lines-place .mil-lines {
  opacity: 0.05;
  pointer-events: none;
}

@media screen and (max-width: 992px) {
  .mil-lines-place .mil-lines {
    display: none;
  }
}

.mil-lines-place .mil-lines path,
.mil-lines-place .mil-lines rect,
.mil-lines-place .mil-lines line {
  stroke: rgb(0, 0, 0);
}

.mil-lines-place .mil-lines .mil-move {
  -webkit-animation: move 10s linear infinite;
  animation: move 10s linear infinite;
}

.mil-lines-place.mil-light .mil-lines {
  opacity: 0.2;
}

.mil-lines-place.mil-light .mil-lines path,
.mil-lines-place.mil-light .mil-lines rect,
.mil-lines-place.mil-light .mil-lines line {
  stroke: rgb(255, 255, 255);
}

/* -------------------------------------------

dodecahedron

------------------------------------------- */
.mil-animation-frame {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  -webkit-animation: jump 10s linear infinite;
  animation: jump 10s linear infinite;
  pointer-events: none;
}

.mil-animation {
  position: absolute;
  display: inline-block;
  width: 300px;
  height: 300px;
  opacity: 0.2;
  pointer-events: none;
}

.mil-position-1 {
  top: 100px;
  right: 100px;
}

.mil-position-1 .mil-pentagon div {
  border-top: 0.1px solid rgb(255, 255, 255);
}

.mil-position-2 {
  top: -60px;
  left: 15%;
}

.mil-position-2 .mil-pentagon div {
  border-top: 1px solid rgb(255, 255, 255);
}

.mil-position-2 .mil-dodecahedron {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

@media screen and (max-width: 1400px) {
  .mil-position-2 {
    display: none;
  }
}

.mil-position-3 {
  bottom: -100px;
  right: 35%;
}

.mil-position-3 .mil-pentagon div {
  border-top: 1px solid rgb(255, 255, 255);
}

.mil-position-3 .mil-dodecahedron {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

@media screen and (max-width: 1400px) {
  .mil-position-3 {
    display: none;
  }
}

.mil-position-4 {
  top: -60px;
  right: 20%;
}

.mil-position-4 .mil-pentagon div {
  border-top: 0.1px solid rgb(255, 255, 255);
}

.mil-position-4 .mil-dodecahedron {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

@media screen and (max-width: 1400px) {
  .mil-position-4 {
    display: none;
  }
}

.mil-position-4.mil-dark .mil-pentagon div {
  border-top: 0.1px solid rgb(0, 0, 0);
}

.mil-dodecahedron {
  position: relative;
  left: 100px;
  top: 40px;
  width: 100px;
  height: 223px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-animation: rotate 100s infinite linear;
  animation: rotate 100s infinite linear;
}

@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotateX(0deg) rotateY(360deg) rotateZ(360deg);
    transform: rotateX(0deg) rotateY(360deg) rotateZ(360deg);
  }

  to {
    -webkit-transform: rotateX(360deg) rotateY(0deg) rotateZ(-360deg);
    transform: rotateX(360deg) rotateY(0deg) rotateZ(-360deg);
  }
}

@keyframes rotate {
  from {
    -webkit-transform: rotateX(0deg) rotateY(360deg) rotateZ(360deg);
    transform: rotateX(0deg) rotateY(360deg) rotateZ(360deg);
  }

  to {
    -webkit-transform: rotateX(360deg) rotateY(0deg) rotateZ(-360deg);
    transform: rotateX(360deg) rotateY(0deg) rotateZ(-360deg);
  }
}

.mil-pentagon {
  position: absolute;
  width: 100px;
}

.mil-pentagon:nth-child(1) {
  -webkit-transform: rotateY(0.2turn) translateZ(69px) rotateX(26.5deg);
  transform: rotateY(0.2turn) translateZ(69px) rotateX(26.5deg);
}

.mil-pentagon:nth-child(6) {
  bottom: 0;
  -webkit-transform: rotateY(0.2turn) translateZ(-69px) rotateX(206.5deg);
  transform: rotateY(0.2turn) translateZ(-69px) rotateX(206.5deg);
}

.mil-pentagon:nth-child(2) {
  -webkit-transform: rotateY(0.4turn) translateZ(69px) rotateX(26.5deg);
  transform: rotateY(0.4turn) translateZ(69px) rotateX(26.5deg);
}

.mil-pentagon:nth-child(7) {
  bottom: 0;
  -webkit-transform: rotateY(0.4turn) translateZ(-69px) rotateX(206.5deg);
  transform: rotateY(0.4turn) translateZ(-69px) rotateX(206.5deg);
}

.mil-pentagon:nth-child(3) {
  -webkit-transform: rotateY(0.6turn) translateZ(69px) rotateX(26.5deg);
  transform: rotateY(0.6turn) translateZ(69px) rotateX(26.5deg);
}

.mil-pentagon:nth-child(8) {
  bottom: 0;
  -webkit-transform: rotateY(0.6turn) translateZ(-69px) rotateX(206.5deg);
  transform: rotateY(0.6turn) translateZ(-69px) rotateX(206.5deg);
}

.mil-pentagon:nth-child(4) {
  -webkit-transform: rotateY(0.8turn) translateZ(69px) rotateX(26.5deg);
  transform: rotateY(0.8turn) translateZ(69px) rotateX(26.5deg);
}

.mil-pentagon:nth-child(9) {
  bottom: 0;
  -webkit-transform: rotateY(0.8turn) translateZ(-69px) rotateX(206.5deg);
  transform: rotateY(0.8turn) translateZ(-69px) rotateX(206.5deg);
}

.mil-pentagon:nth-child(5) {
  -webkit-transform: rotateY(1turn) translateZ(69px) rotateX(26.5deg);
  transform: rotateY(1turn) translateZ(69px) rotateX(26.5deg);
}

.mil-pentagon:nth-child(10) {
  bottom: 0;
  -webkit-transform: rotateY(1turn) translateZ(-69px) rotateX(206.5deg);
  transform: rotateY(1turn) translateZ(-69px) rotateX(206.5deg);
}

.mil-pentagon:nth-child(11) {
  -webkit-transform: translateZ(69px) rotateX(-90deg);
  transform: translateZ(69px) rotateX(-90deg);
}

.mil-pentagon:nth-child(12) {
  bottom: 0;
  -webkit-transform: translateZ(-69px) rotateX(90deg);
  transform: translateZ(-69px) rotateX(90deg);
}

.mil-pentagon div {
  position: absolute;
  width: 100px;
  height: 69px;
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
}

.mil-pentagon div:nth-child(1) {
  -webkit-transform: rotate(0.2turn);
  transform: rotate(0.2turn);
}

.mil-pentagon div:nth-child(2) {
  -webkit-transform: rotate(0.4turn);
  transform: rotate(0.4turn);
}

.mil-pentagon div:nth-child(3) {
  -webkit-transform: rotate(0.6turn);
  transform: rotate(0.6turn);
}

.mil-pentagon div:nth-child(4) {
  -webkit-transform: rotate(0.8turn);
  transform: rotate(0.8turn);
}

.mil-pentagon div:nth-child(5) {
  -webkit-transform: rotate(1turn);
  transform: rotate(1turn);
}

@-webkit-keyframes jump {
  0% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  50% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

  100% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
}

@keyframes jump {
  0% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  50% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

  100% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
}

/* -------------------------------------------

about

------------------------------------------- */
.mil-about-quote {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-about-quote .mil-avatar {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  position: relative;
}

.mil-about-quote .mil-avatar:after {
  content: ' " ';
  color: rgb(0, 0, 0);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #FEBF18;
  position: absolute;
  bottom: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 12px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 36px;
}

.mil-about-quote .mil-avatar img {
  border-radius: 50%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
}

.mil-about-quote .mil-quote {
  padding-left: 30px;
  width: calc(100% - 90px);
}

@media screen and (max-width: 992px) {
  .mil-about-quote .mil-avatar {
    width: 70px;
    height: 70px;
  }

  .mil-about-quote .mil-avatar:after {
    padding-top: 7px;
    width: 25px;
    height: 25px;
    font-size: 24px;
  }

  .mil-about-quote .mil-quote {
    font-size: 16px;
    padding-left: 30px;
    width: calc(100% - 70px);
  }
}

.mil-about-photo {
  position: relative;
}

.mil-about-photo .mil-lines-place {
  position: absolute;
  top: -120px;
  left: -27%;
}

/* -------------------------------------------

partners

------------------------------------------- */
.mil-infinite-show .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.mil-partner-frame {
  display: block;
}

.mil-partner-frame img {
  width: 100%;
}


/* -------------------------------------------

services

------------------------------------------- */
.mil-complex-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-complex-text .mil-button {
  margin-left: 30px;
}

@media screen and (max-width: 768px) {
  .mil-complex-text {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .mil-complex-text .mil-button {
    margin-left: 0;
    margin-top: 60px;
  }
}

.mil-text-image {
  height: 80px;
  width: 250px;
  display: inline-block;
  overflow: hidden;
  border-radius: 70px;
  margin-right: 30px;
}

.mil-text-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-text-image:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

@media screen and (max-width: 768px) {
  .mil-text-image {
    display: none;
  }
}

.mil-service-card-sm {
  position: relative;
  display: block;
  padding: 60px 30px;
}

.mil-service-card-sm p {
  opacity: 0;
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-service-card-sm .mil-button {
  -webkit-transform: scale(0.3);
  transform: scale(0.3);
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.4;
}

.mil-service-card-sm:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 4px;
  width: 0;
  background-color: #FEBF18;
  -webkit-transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-service-card-sm:hover p {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.mil-service-card-sm:hover .mil-button {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-filter: grayscale(0);
  filter: grayscale(0);
  opacity: 1;
}

.mil-service-card-sm:hover:before {
  width: 100%;
}

@media screen and (max-width: 992px) {
  .mil-service-card-sm p {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .mil-service-card-sm .mil-button {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
  }
}

.mil-services-grid {
  border-top: solid 1px rgba(255, 255, 255, 0.1);
}

.mil-services-grid .mil-services-grid-item {
  border-right: solid 1px rgba(255, 255, 255, 0.1);
}

.mil-services-grid .mil-services-grid-item:first-child {
  border-left: solid 1px rgba(255, 255, 255, 0.1);
}

@media screen and (max-width: 992px) {
  .mil-services-grid {
    padding-bottom: 90px;
  }

  .mil-services-grid .mil-services-grid-item {
    border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  }

  .mil-services-grid .mil-services-grid-item:nth-child(3) {
    border-left: solid 1px rgba(255, 255, 255, 0.1);
  }
}

@media screen and (max-width: 768px) {
  .mil-services-grid {
    padding-bottom: 90px;
  }

  .mil-services-grid .mil-services-grid-item {
    border-left: solid 1px rgba(255, 255, 255, 0.1);
    border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  }
}

.mil-service-card-lg {
  display: block;
}

.mil-service-card-lg .mil-descr {
  padding-right: 30px;
}

.mil-service-card-lg.mil-offset {
  margin-top: 60px;
  margin-bottom: 60px;
}

@media screen and (max-width: 992px) {
  .mil-service-card-lg.mil-offset {
    margin-top: 0;
  }
}

@media screen and (max-width: 992px) {
  .mil-service-card-lg {
    margin-bottom: 60px;
  }
}

.mil-service-card-lg.mil-other-card {
  overflow: hidden;
  position: relative;
  border: solid 1px rgb(229, 229, 229);
  padding: 60px;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-service-card-lg.mil-other-card .mil-descr {
  padding-right: 0;
}

.mil-service-card-lg.mil-other-card:hover {
  background-color: #FEBF18;
}

.mil-service-card-lg.mil-other-card:hover .mil-link svg {
  background-color: rgb(0, 0, 0);
}

.mil-service-card-lg.mil-other-card:hover .mil-link svg path {
  fill: #FEBF18;
}

@media screen and (max-width: 1200px) {
  .mil-service-card-lg.mil-other-card {
    padding: 30px;
  }
}

.mil-service-list li {
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  list-style-type: none;
  padding: 15px 0;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  font-size: 12px;
}

.mil-service-list li:first-child {
  border-top: solid 1px rgba(255, 255, 255, 0.1);
}

.mil-service-list.mil-light li {
  color: rgba(255, 255, 255, 0.6);
}

.mil-service-list.mil-dark li {
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.mil-service-list.mil-dark li:first-child {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
}

/* =========================================================
04 • MEET THE ARTIST
JMR LIGHT SECTION
========================================================= */

.jmr-artists-section {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  color: #111111;
  padding: 120px 0 0;
}

/* =========================================================
BACKGROUND
========================================================= */

.jmr-artists-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}

.jmr-bg-word {
  position: absolute;
  right: -120px;
  top: 80px;


  font-size: clamp(180px, 28vw, 500px);
  line-height: 0.8;
  font-weight: 800;
  letter-spacing: -0.08em;

  color: rgba(0, 0, 0, 0.025);

  user-select: none;


}

/* =========================================================
CONTAINER
========================================================= */

.jmr-artists-container {
  position: relative;
  z-index: 2;
}

/* =========================================================
SECTION LABEL
========================================================= */

.jmr-artists-section .mil-suptitle {
  color: rgba(17, 17, 17, 0.55);
  letter-spacing: 2px;
}

/* =========================================================
ARTIST FEATURE
========================================================= */

.jmr-artist-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 90px;
  align-items: center;
}

/* =========================================================
ARTIST VISUAL
========================================================= */

.jmr-artist-visual {
  position: relative;
  min-width: 0;
}

.jmr-artist-image {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;


  overflow: hidden;

  background: #eeeeee;


}

.jmr-artist-image img {
  width: 100%;
  height: 100%;


  object-fit: cover;

  display: block;

  filter: grayscale(15%);

  transition:
    transform 0.8s cubic-bezier(0.2, 0.65, 0.3, 1),
    filter 0.8s cubic-bezier(0.2, 0.65, 0.3, 1);


}

.jmr-artist-image:hover img {
  transform: scale(1.04);
  filter: grayscale(0%);
}

/* =========================================================
IMAGE OVERLAY
========================================================= */

.jmr-image-overlay {
  position: absolute;
  inset: 0;


  background:
    linear-gradient(to top,
      rgba(0, 0, 0, 0.32),
      transparent 45%);

  pointer-events: none;


}

/* =========================================================
IMAGE INDEX
========================================================= */

.jmr-image-index {
  position: absolute;


  top: 25px;
  left: 25px;

  padding: 8px 12px;

  background: rgba(255, 255, 255, 0.92);

  color: #111111;

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 2px;

  z-index: 3;


}

/* =========================================================
FEATURED ARTIST LABEL
========================================================= */

.jmr-image-label {
  position: absolute;


  left: 25px;
  bottom: 25px;

  display: flex;
  align-items: center;
  gap: 10px;

  color: #ffffff;

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 2px;

  z-index: 3;


}

.jmr-live-dot {
  width: 7px;
  height: 7px;


  border-radius: 50%;

  background: #FEBF18;

  box-shadow:
    0 0 0 5px rgba(255, 152, 0, 0.15);

  animation: jmrArtistPulse 2s infinite;


}

@keyframes jmrArtistPulse {


  0% {
    box-shadow:
      0 0 0 0 rgba(255, 152, 0, 0.35);
  }

  70% {
    box-shadow:
      0 0 0 8px rgba(255, 152, 0, 0);
  }

  100% {
    box-shadow:
      0 0 0 0 rgba(255, 152, 0, 0);
  }


}

/* =========================================================
VERTICAL TEXT
========================================================= */

.jmr-vertical-text {
  position: absolute;


  right: -45px;
  top: 50%;

  transform: rotate(90deg) translateX(50%);
  transform-origin: right center;

  color: rgba(17, 17, 17, 0.35);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 3px;

  white-space: nowrap;


}

/* =========================================================
ARTIST INFORMATION
========================================================= */

.jmr-artist-info {
  max-width: 560px;
}

/* =========================================================
KICKER
========================================================= */

.jmr-artist-kicker {
  display: flex;
  align-items: center;
  gap: 12px;


  margin-bottom: 25px;

  color: rgba(17, 17, 17, 0.5);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 3px;


}

.jmr-artist-kicker span {
  display: block;


  width: 30px;
  height: 1px;

  background: #FEBF18;


}

/* =========================================================
ARTIST NAME
========================================================= */

.jmr-artist-name {
  margin: 0 0 15px;


  color: #111111;

  font-size: clamp(55px, 8vw, 110px);
  line-height: 0.9;

  font-weight: 700;

  letter-spacing: -0.06em;


}

/* =========================================================
GENRE
========================================================= */

.jmr-artist-genre {
  display: flex;
  align-items: center;
  gap: 12px;


  margin-bottom: 35px;

  color: #111111;

  font-size: 12px;
  font-weight: 600;

  text-transform: uppercase;
  letter-spacing: 2px;


}

.jmr-slash {
  color: #FEBF18;
}

/* =========================================================
ARTIST BIO
========================================================= */

.jmr-artist-bio {
  max-width: 480px;


  margin-bottom: 45px;

  color: rgba(17, 17, 17, 0.62);

  font-size: 17px;
  line-height: 1.8;


}

/* =========================================================
SOCIAL CONNECTION
========================================================= */

.jmr-artist-connect {
  margin-bottom: 40px;


  padding-top: 25px;

  border-top: 1px solid rgba(17, 17, 17, 0.1);


}

.jmr-connect-label {
  display: block;


  margin-bottom: 18px;

  color: rgba(17, 17, 17, 0.45);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 2px;


}

.jmr-social-links {
  display: flex;
  gap: 10px;
  position: relative;
  z-index: 20;
  pointer-events: auto;
}

.jmr-social-links a {
  position: relative;
  z-index: 21;
  pointer-events: auto;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  border: 1px solid rgba(17, 17, 17, 0.14);

  background: transparent;

  text-decoration: none;

  transition:
    background 0.35s ease,
    color 0.35s ease,
    border-color 0.35s ease,
    transform 0.35s ease;
}


/* =========================================================
   ICON BRAND COLORS
========================================================= */

.jmr-social-links .jmr-instagram {
  color: #E4405F;
}

.jmr-social-links .jmr-facebook {
  color: #1877F2;
}

.jmr-social-links .jmr-tiktok {
  color: #000000;
}

.jmr-social-links .jmr-x {
  color: #000000;
}

.jmr-social-links .jmr-snapchat {
  background: transparent;
  border-color: rgba(17, 17, 17, 0.14);
  color: #FFFC00;
}

.jmr-social-links .jmr-snapchat i {
  color: #FFFC00;

  /* Black outline around the yellow icon */
  -webkit-text-stroke: 1.25px #111111;
  paint-order: stroke fill;

  font-size: 19px;
}


/* =========================================================
   HOVER BACKGROUNDS
========================================================= */

.jmr-social-links .jmr-instagram:hover {
  background: #E4405F;
  border-color: #E4405F;
  color: #ffffff;
}

.jmr-social-links .jmr-facebook:hover {
  background: #1877F2;
  border-color: #1877F2;
  color: #ffffff;
}

.jmr-social-links .jmr-tiktok:hover {
  background: #000000;
  border-color: #000000;
  color: #ffffff;
}

.jmr-social-links .jmr-x:hover {
  background: #000000;
  border-color: #000000;
  color: #ffffff;
}

.jmr-social-links .jmr-snapchat:hover {
  background: #FFFC00;
  border-color: #FFFC00;
  color: #111111;
}

.jmr-social-links .jmr-snapchat:hover i {
  color: #111111;
  -webkit-text-stroke: 0;
}


/* =========================================================
   HOVER MOVEMENT
========================================================= */

.jmr-social-links a:hover {
  transform: translateY(-4px);
}


/* =========================================================
EXPLORE ARTIST
========================================================= */

.jmr-explore-artist {
  display: inline-flex;
  align-items: center;
  gap: 25px;


  padding-bottom: 12px;

  border-bottom: 1px solid #111111;

  color: #111111;

  text-decoration: none;

  font-size: 12px;
  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 2px;

  transition:
    gap 0.4s ease,
    color 0.3s ease,
    border-color 0.3s ease;


}

.jmr-explore-artist:hover {
  gap: 38px;


  color: #FEBF18;

  border-color: #FEBF18;


}

.jmr-explore-arrow {
  font-size: 20px;
  line-height: 1;
}

/* =========================================================
JMR STATEMENT
========================================================= */

.jmr-artist-statement {
  position: relative;


  display: grid;

  grid-template-columns: 90px minmax(0, 1fr) 120px;

  gap: 35px;

  align-items: center;

  margin-top: 120px;

  padding: 55px 0;

  border-top: 1px solid rgba(17, 17, 17, 0.1);
  border-bottom: 1px solid rgba(17, 17, 17, 0.1);


}

.jmr-statement-line {
  width: 45px;
  height: 1px;


  background: #FEBF18;


}

.jmr-statement-content span {
  display: block;


  margin-bottom: 15px;

  color: rgba(17, 17, 17, 0.45);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 3px;


}

.jmr-statement-content p {
  margin: 0;


  color: #111111;

  font-size: clamp(25px, 3vw, 42px);
  line-height: 1.15;

  letter-spacing: -0.03em;


}

.jmr-statement-content strong {
  font-weight: 700;
}

.jmr-statement-mark {
  color: rgba(17, 17, 17, 0.08);


  font-size: 110px;
  line-height: 1;

  text-align: right;


}

/* =========================================================
MARQUEE
========================================================= */

.jmr-artist-marquee {
  position: relative;


  overflow: hidden;

  margin-top: 80px;

  padding: 25px 0;

  border-top: 1px solid rgba(17, 17, 17, 0.08);


}

.jmr-marquee-track {
  display: flex;
  align-items: center;


  width: max-content;

  gap: 30px;

  color: rgba(17, 17, 17, 0.28);

  font-size: 11px;
  font-weight: 600;

  letter-spacing: 3px;

  white-space: nowrap;

  animation: jmrArtistMarquee 25s linear infinite;


}

.jmr-marquee-track span:nth-child(even) {
  color: #FEBF18;
}

@keyframes jmrArtistMarquee {


  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }


}

/* =========================================================
TABLET
========================================================= */

@media screen and (max-width: 992px) {


  .jmr-artists-section {
    padding-top: 90px;
  }


  .jmr-artist-feature {
    grid-template-columns: 1fr;

    gap: 60px;
  }


  .jmr-artist-info {
    max-width: 700px;
  }


  .jmr-artist-name {
    font-size: clamp(55px, 12vw, 90px);
  }


  .jmr-vertical-text {
    right: -35px;
  }


}

/* =========================================================
MOBILE
========================================================= */

@media screen and (max-width: 768px) {


  .jmr-artists-section {
    padding-top: 70px;
  }


  .jmr-bg-word {
    right: -70px;
    top: 140px;

    font-size: 220px;
  }


  .jmr-artist-feature {
    gap: 45px;
  }


  .jmr-artist-image {
    aspect-ratio: 4 / 5;
  }


  .jmr-image-index {
    top: 15px;
    left: 15px;
  }


  .jmr-image-label {
    left: 15px;
    bottom: 15px;
  }


  .jmr-vertical-text {
    display: none;
  }


  .jmr-artist-name {
    font-size: clamp(48px, 15vw, 75px);
  }


  .jmr-artist-bio {
    font-size: 15px;
    line-height: 1.7;
  }


  .jmr-artist-statement {
    grid-template-columns: 1fr;

    gap: 20px;

    margin-top: 80px;

    padding: 40px 0;
  }


  .jmr-statement-mark {
    display: none;
  }


  .jmr-artist-marquee {
    margin-top: 55px;
  }


}

/* =========================================================
SMALL MOBILE
========================================================= */

@media screen and (max-width: 480px) {


  .jmr-artists-section {
    padding-top: 60px;
  }


  .jmr-artist-name {
    font-size: 48px;
  }


  .jmr-artist-genre {
    font-size: 10px;
  }


  .jmr-social-links a {
    width: 38px;
    height: 38px;
  }


  .jmr-statement-content p {
    font-size: 26px;
  }


}



/* -------------------------------------------

team

------------------------------------------- */
.mil-team-card {
  position: relative;
  overflow: hidden;
  padding-bottom: 130%;
}

.mil-team-card:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 4px;
  width: 0;
  background-color: #FEBF18;
  -webkit-transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-team-card img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-team-card.mil-offset-card {
  -webkit-transform: translateY(60px);
  transform: translateY(60px);
}

@media screen and (max-width: 992px) {
  .mil-team-card.mil-offset-card {
    -webkit-transform: none;
    transform: none;
  }
}

.mil-team-card .mil-description {
  opacity: 0;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 60px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  pointer-events: none;
  -webkit-transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.6s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-team-card .mil-description .mil-secrc-text {
  opacity: 0;
  -webkit-transform: translateY(15px);
  transform: translateY(15px);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.mil-team-card .mil-description .mil-secrc-text a {
  color: rgb(255, 255, 255);
  -webkit-transition: 0.2s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.2s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-team-card .mil-description .mil-secrc-text a:hover {
  color: #FEBF18;
}

.mil-team-card:hover img {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.mil-team-card:hover:after {
  width: 100%;
}

.mil-team-card:hover .mil-description {
  opacity: 1;
  pointer-events: all;
}

.mil-team-card:hover .mil-description .mil-secrc-text {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.mil-team-list {
  position: relative;
}

.mil-team-list .mil-lines-place {
  position: absolute;
  top: -120px;
  left: -22.5%;
}



:root {
  --jmr-black: #080808;
  --jmr-ink: #101010;
  --jmr-white: #f7f7f3;
  --jmr-paper: #f1f1ed;
  --jmr-grey: #858585;
  --jmr-line: rgba(0, 0, 0, .12);
  --jmr-green: #1ed760;
  --jmr-orange: #ff5500;
  --jmr-red: #ff0033;
  --jmr-blue: #1f5eff;
  --jmr-purple: #a855f7;
  --jmr-ease: cubic-bezier(.2, .8, .2, 1);
}

.jmr-record-label {
  position: relative;
  overflow: hidden;
  background: var(--jmr-paper);
  color: var(--jmr-black);
}

/* subtle editorial grain */
.jmr-record-label::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .035;
  z-index: 0;
  background-image:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.jmr-record-label>.container {
  position: relative;
  z-index: 2;
}

/* =========================================================
   SECTION INTRO
========================================================= */

.jmr-section-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: 80px;
  align-items: end;
  margin-bottom: 65px;
}

.jmr-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(0, 0, 0, .42);
}

.jmr-kicker::before {
  content: "";
  width: 28px;
  height: 1px;
  background: currentColor;
}

.jmr-section-intro h2 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(55px, 8vw, 118px);
  line-height: .82;
  letter-spacing: -6px;
  font-weight: 500;
  text-transform: uppercase;
}

.jmr-section-intro h2 span {
  display: inline-block;
  color: transparent;
  -webkit-text-stroke: 1px #111;
}

.jmr-section-intro p {
  max-width: 340px;
  margin: 0 0 6px auto;
  font-size: 12px;
  line-height: 1.8;
  color: rgba(0, 0, 0, .53);
}

/* =========================================================
   TEAM HEADER META
========================================================= */

.jmr-team-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--jmr-line);
}

.jmr-team-meta span {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(0, 0, 0, .4);
}

.jmr-team-meta strong {
  font-size: 8px;
  letter-spacing: 1.5px;
  font-weight: 700;
}

/* =========================================================
   TEAM EDITORIAL GRID
========================================================= */

.jmr-team-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr 1fr;
  grid-template-rows: 330px 330px 330px;
  gap: 10px;
}

.jmr-team-card {
  position: relative;
  overflow: hidden;
  min-height: 280px;
  isolation: isolate;
  color: #fff;
  background: #111;
  text-decoration: none;
}

.jmr-team-card:nth-child(1) {
  grid-column: 1;
  grid-row: 1 / 3;
}

.jmr-team-card:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.jmr-team-card:nth-child(3) {
  grid-column: 3;
  grid-row: 1 / 3;
}

.jmr-team-card:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
}

.jmr-team-card:nth-child(5) {
  grid-column: 1;
  grid-row: 3;
}

.jmr-team-card:nth-child(6) {
  grid-column: 2 / 4;
  grid-row: 3;
}

/* Images */

.jmr-team-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -3;
  object-fit: cover;
  object-position: center;
  filter: grayscale(100%);
  transform: scale(1.015);
  transition:
    transform 1s var(--jmr-ease),
    filter .7s ease;
}

.jmr-team-card:hover .jmr-team-image {
  transform: scale(1.075);
  filter: grayscale(0%);
}

/* cinematic overlay */

.jmr-team-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;

  background:
    linear-gradient(180deg,
      rgba(0, 0, 0, .05) 20%,
      rgba(0, 0, 0, .15) 42%,
      rgba(0, 0, 0, .94) 100%);
}

.jmr-team-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;

  opacity: 0;

  background:
    radial-gradient(circle at 75% 15%,
      rgba(255, 255, 255, .18),
      transparent 32%);

  transition: opacity .6s ease;
}

.jmr-team-card:hover::after {
  opacity: 1;
}


/* Top */

.jmr-team-top {
  position: absolute;
  top: 18px;
  left: 20px;
  right: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.jmr-team-number {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 2px;
  opacity: .65;
}

.jmr-team-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  opacity: .72;
}

.jmr-team-status::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #FEBF18;
  box-shadow: 0 0 12px #FEBF18;
}

/* Content */

.jmr-team-content {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 18px;
}

.jmr-team-role {
  display: block;
  margin-bottom: 8px;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  opacity: .58;
}

.jmr-team-name {
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3vw, 48px);
  line-height: .86;
  letter-spacing: -2.4px;
  font-weight: 500;
}

.jmr-team-tagline {
  max-width: 350px;
  margin: 11px 0 0;
  color: rgba(255, 255, 255, .68);
  font-size: 10px;
  line-height: 1.55;
}

/* Social row */

.jmr-team-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-top: 16px;
  padding-top: 11px;
  border-top: 1px solid rgba(255, 255, 255, .2);
}

.jmr-team-socials {
  display: flex;
  align-items: center;
  gap: 7px;
}

.jmr-social {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .16);
  text-decoration: none;
  transition:
    transform .3s ease,
    background .3s ease,
    color .3s ease;
}

.jmr-social svg {
  width: 12px;
  height: 12px;
  fill: currentColor;
}

.jmr-social:hover {
  transform: translateY(-3px);
}

.jmr-social.instagram:hover {
  color: #fff;
  background: linear-gradient(135deg,
      #833ab4,
      #fd1d1d,
      #fcb045);
}

.jmr-social.linkedin:hover {
  color: #fff;
  background: #0a66c2;
}

.jmr-social.x:hover {
  color: #fff;
  background: #000;
}

.jmr-social.soundcloud:hover {
  color: #fff;
  background: #ff5500;
}

.jmr-social.mail:hover {
  color: #000;
  background: #fff;
}

.jmr-team-mail {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 50%;
  color: #fff;
  text-decoration: none;
  font-size: 12px;
  transition:
    transform .35s ease,
    background .35s ease;
}

.jmr-team-card:hover .jmr-team-mail {
  transform: translate(3px, -3px);
  background: rgba(255, 255, 255, .15);
}

/* =========================================================
   VIEW TEAM BUTTON
========================================================= */

.jmr-team-cta {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.jmr-view-team {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 20px;
  padding: 17px 23px;
  color: #fff;
  background: #0b0b0b;
  text-decoration: none;
  overflow: hidden;
  transition: transform .4s var(--jmr-ease);
}

.jmr-view-team::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
      #1ed760,
      #8b5cf6,
      #ff5500);
  transform: translateX(-101%);
  transition: transform .5s var(--jmr-ease);
}

.jmr-view-team:hover::before {
  transform: translateX(0);
}

.jmr-view-team:hover {
  transform: translateY(-3px);
}

.jmr-view-team span,
.jmr-view-team strong {
  position: relative;
  z-index: 2;
}

.jmr-view-team span {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 2px;
}

.jmr-view-team strong {
  font-size: 13px;
  font-weight: 400;
}

/* =========================================================
   CULTURE
========================================================= */

.jmr-culture {
  position: relative;
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: 80px;
  margin-top: 105px;
  padding: 90px 0;
  border-top: 1px solid var(--jmr-line);
  border-bottom: 1px solid var(--jmr-line);
}

.jmr-culture-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: rgba(0, 0, 0, .42);
}

.jmr-culture-copy {
  max-width: 820px;
}

.jmr-culture-copy h3 {
  margin: 0;
  font-size: clamp(42px, 5.6vw, 82px);
  line-height: .88;
  letter-spacing: -4px;
  font-weight: 500;
  text-transform: uppercase;
}

.jmr-culture-copy h3 span {
  color: transparent;
  -webkit-text-stroke: 1px #111;
}

.jmr-culture-copy p {
  max-width: 630px;
  margin: 30px 0 0;
  font-size: 13px;
  line-height: 1.85;
  color: rgba(0, 0, 0, .55);
}

/* Culture pillars */

.jmr-culture-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 55px;
}

.jmr-culture-pillar {
  padding: 25px 20px;
  background: rgba(255, 255, 255, .55);
  border: 1px solid rgba(0, 0, 0, .08);
  transition:
    transform .4s var(--jmr-ease),
    background .4s ease;
}

.jmr-culture-pillar:hover {
  transform: translateY(-6px);
  background: #fff;
}

.jmr-culture-pillar small {
  display: block;
  margin-bottom: 35px;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 1.7px;
  color: rgba(0, 0, 0, .4);
}

.jmr-culture-pillar h4 {
  margin: 0;
  font-size: 21px;
  line-height: 1;
  letter-spacing: -.8px;
  font-weight: 500;
}

.jmr-culture-pillar p {
  margin: 13px 0 0;
  font-size: 10px;
  line-height: 1.6;
  color: rgba(0, 0, 0, .48);
}

/* =========================================================
   MUSIC INTRO
========================================================= */

.jmr-streaming-section {
  padding-top: 110px;
}

.jmr-streaming-heading {
  display: grid;
  grid-template-columns: 1fr 300px;
  align-items: end;
  gap: 60px;
  margin-bottom: 48px;
}

.jmr-streaming-heading span {
  display: inline-block;
  margin-bottom: 13px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: rgba(0, 0, 0, .42);
}

.jmr-streaming-heading h3 {
  margin: 0;
  font-size: clamp(50px, 7vw, 100px);
  line-height: .82;
  letter-spacing: -5px;
  font-weight: 500;
  text-transform: uppercase;
}

.jmr-streaming-heading h3 em {
  font-style: normal;
  color: transparent;
  -webkit-text-stroke: 1px #111;
}

.jmr-streaming-heading p {
  max-width: 290px;
  margin: 0 0 4px;
  font-size: 11px;
  line-height: 1.75;
  color: rgba(0, 0, 0, .5);
}

/* =========================================================
   STREAMING GRID
========================================================= */

.jmr-platform-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.jmr-platform-card {
  position: relative;
  min-height: 330px;
  padding: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  color: #fff;
  text-decoration: none;
  border-radius: 2px;
  isolation: isolate;
  transition:
    transform .55s var(--jmr-ease),
    box-shadow .55s ease;
}

.jmr-platform-card::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -120px;
  top: -100px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .07);
  filter: blur(2px);
  transition: transform .7s var(--jmr-ease);
}

.jmr-platform-card:hover::before {
  transform: scale(1.45);
}

.jmr-platform-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 25px 70px rgba(0, 0, 0, .2);
}

.jmr-card-header,
.jmr-brand-area,
.jmr-card-info,
.jmr-card-footer {
  position: relative;
  z-index: 3;
}

.jmr-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.jmr-card-index {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 2px;
  opacity: .5;
}

.jmr-card-action {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 1.5px;
  opacity: .65;
  transition: transform .3s ease, opacity .3s ease;
}

.jmr-platform-card:hover .jmr-card-action {
  opacity: 1;
  transform: translateX(4px);
}

.jmr-brand-area {
  flex: 1;
  min-height: 145px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* =========================================================
   PLATFORM LOGO SYSTEM
========================================================= */

.jmr-brand-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    transform .55s var(--jmr-ease),
    filter .4s ease;
}

.jmr-platform-card:hover .jmr-brand-mark {
  transform: scale(1.08);
}

.jmr-brand-mark svg {
  display: block;
  width: 76px;
  height: 76px;
}


/* =====================================================
   PLATFORM CARDS
====================================================== */

.jmr-platform-card {
  position: relative;
  overflow: hidden;
}


/* =====================================================
   BRAND MARK BASE
   Spotify is the visual reference
====================================================== */

.jmr-brand-mark {
  width: 92px;
  height: 92px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;
  position: relative;

  transition:
    transform .4s ease,
    box-shadow .4s ease;
}


/* Prevent downloaded SVGs from stretching */

.jmr-brand-mark img {
  display: block;

  width: auto;
  height: auto;

  max-width: 58px;
  max-height: 58px;

  object-fit: contain;
  object-position: center;

  flex-shrink: 0;
}


/* Existing inline SVGs */

.jmr-brand-mark svg {
  display: block;

  max-width: 58px;
  max-height: 58px;

  object-fit: contain;

  flex-shrink: 0;
}


/* Subtle interaction */

.jmr-platform-card:hover .jmr-brand-mark {
  transform: translateY(-4px);
}


/* =====================================================
   SPOTIFY
====================================================== */

.jmr-spotify {
  background:
    radial-gradient(circle at 75% 20%,
      rgba(30, 215, 96, .10),
      transparent 30%),
    linear-gradient(145deg,
      #030303,
      #080a08);
}


/* Spotify Brand Mark */

.jmr-spotify .jmr-brand-mark {
  width: 80px;
  height: 80px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  border-radius: 50%;

  background: #050505;

  box-shadow:
    0 20px 50px rgba(30, 215, 96, .16),
    inset 0 0 0 1px rgba(255, 255, 255, .04);

  transition:
    transform .4s ease,
    box-shadow .4s ease;
}


/* Spotify Logo */

.jmr-spotify .jmr-brand-mark img {
  width: 48px;
  height: 48px;

  display: block;

  object-fit: contain;
  object-position: center;

  flex-shrink: 0;
}


/* Hover */

.jmr-spotify:hover .jmr-brand-mark {
  transform: translateY(-4px);

  box-shadow:
    0 24px 60px rgba(30, 215, 96, .22),
    inset 0 0 0 1px rgba(30, 215, 96, .08);
}

/* =====================================================
   APPLE MUSIC
   Apple-style treatment
====================================================== */

.jmr-apple {
  background:
    radial-gradient(circle at 70% 15%,
      rgba(255, 45, 85, .20),
      transparent 38%),
    linear-gradient(145deg,
      #120507,
      #050505 65%);
}


/* Apple Music Brand Mark */

.jmr-apple .jmr-brand-mark {
  width: 80px;
  height: 80px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;

  position: relative;

  border-radius: 22px;

  background:
    linear-gradient(145deg,
      #ff375f 0%,
      #ff2d55 45%,
      #ff2d55 60%,
      #af52de 100%);

  box-shadow:
    0 18px 45px rgba(255, 45, 85, .24);

  overflow: hidden;

  transition:
    transform .4s ease,
    box-shadow .4s ease;
}


/* Subtle Apple-style highlight */

.jmr-apple .jmr-brand-mark::before {
  content: "";

  position: absolute;

  top: -35%;
  left: -25%;

  width: 90%;
  height: 90%;

  background:
    radial-gradient(circle,
      rgba(255, 255, 255, .18),
      transparent 65%);

  pointer-events: none;
}


/* Apple Music Logo */

.jmr-apple .jmr-brand-mark img {
  position: relative;
  z-index: 1;

  width: 50px;
  height: 50px;

  display: block;

  object-fit: contain;
  object-position: center;

  flex-shrink: 0;
}


/* Hover */

.jmr-apple:hover .jmr-brand-mark {
  transform: translateY(-4px);

  box-shadow:
    0 24px 55px rgba(255, 45, 85, .32);
}



/* =====================================================
   03 / YOUTUBE MUSIC
====================================================== */

.jmr-youtube {
  background:
    radial-gradient(circle at 50% 30%,
      rgba(255, 0, 0, .20),
      transparent 42%),
    linear-gradient(145deg,
      #080000,
      #030303);
}


/* YouTube logo container */

.jmr-youtube .jmr-brand-mark {
  width: 110px;
  height: 82px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: transparent;
  border-radius: 0;

  box-shadow: none;

  padding: 0;
}


/* YouTube logo image */

.jmr-youtube .jmr-brand-mark img {
  width: 110px;
  height: 110px;

  max-width: none;
  max-height: none;

  display: block;

  object-fit: contain;
  object-position: center;
}



/* =====================================================
   04 / SOUNDCLOUD
====================================================== */

.jmr-soundcloud {
  background:
    radial-gradient(circle at 80% 20%,
      rgba(255, 85, 0, .28),
      transparent 40%),
    linear-gradient(145deg,
      #211005,
      #100803);
}

.jmr-soundcloud .jmr-brand-mark {
  width: 92px;
  height: 92px;

  border-radius: 24px;

  color: #ff5500;

  background: rgb(255, 85, 0);

  box-shadow:
    0 20px 55px rgba(255, 85, 0, .16);
}

.jmr-soundcloud .jmr-brand-mark img,
.jmr-soundcloud .jmr-brand-mark svg {
  width: 68px;
  height: auto;

  max-width: 68px;
  max-height: 48px;
}


/* =====================================================
   05 / TIDAL
====================================================== */

.jmr-tidal {
  background:
    linear-gradient(135deg,
      #050505,
      #111,
      #050505);
}

.jmr-tidal .jmr-brand-mark {
  width: 92px;
  height: 92px;

  border-radius: 24px;

  color: #fff;

  background: rgba(255, 255, 255, .05);

  box-shadow:
    0 20px 55px rgba(255, 255, 255, .08);
}

.jmr-tidal .jmr-brand-mark img,
.jmr-tidal .jmr-brand-mark svg {
  width: 62px;
  height: auto;

  max-width: 62px;
  max-height: 48px;
}


/* =====================================================
   06 / DEEZER
====================================================== */

.jmr-deezer {
  background:
    radial-gradient(circle at 70% 25%,
      rgba(255, 0, 153, .18),
      transparent 30%),
    linear-gradient(145deg,
      #111,
      #1b1b1b);
}

.jmr-deezer .jmr-brand-mark {
  width: 92px;
  height: 92px;

  border-radius: 24px;

  background: rgba(255, 255, 255, .035);

  box-shadow:
    0 20px 55px rgba(255, 0, 153, .12);
}

.jmr-deezer .jmr-brand-mark span {
  width: 7px;

  border-radius: 3px 3px 0 0;

  background:
    linear-gradient(to top,
      #ff0099,
      #ff5500,
      #00ffff);
}

.jmr-deezer .jmr-brand-mark span:nth-child(1) {
  height: 25px;
}

.jmr-deezer .jmr-brand-mark span:nth-child(2) {
  height: 38px;
}

.jmr-deezer .jmr-brand-mark span:nth-child(3) {
  height: 51px;
}

.jmr-deezer .jmr-brand-mark span:nth-child(4) {
  height: 64px;
}

.jmr-deezer .jmr-brand-mark span:nth-child(5) {
  height: 52px;
}


/* =====================================================
   07 / AUDIOMACK
   BLACK MARK
====================================================== */

.jmr-audiomack {
  background:
    radial-gradient(circle at 50% 35%,
      rgba(255, 184, 0, .25),
      transparent 38%),
    linear-gradient(145deg,
      #171006,
      #0e0c08);
}

.jmr-audiomack .jmr-brand-mark {
  width: 92px;
  height: 92px;

  border-radius: 24px;

  background: #000;
  color: #fff;

  box-shadow:
    0 20px 55px rgba(0, 0, 0, .35);
}

.jmr-audiomack .jmr-brand-mark img,
.jmr-audiomack .jmr-brand-mark svg {
  width: 52px;
  height: 52px;

  max-width: 52px;
  max-height: 52px;
}


/* =====================================================
   08 / BOOMPLAY
   Image/SVG logo treatment
====================================================== */

.jmr-boomplay {
  background:
    radial-gradient(circle at 70% 20%,
      rgba(30, 214, 107, .14),
      transparent 35%),
    linear-gradient(145deg,
      #030604,
      #07100a);
}


/* Brand logo container */

.jmr-boomplay .jmr-brand-mark {
  width: 92px;
  height: 92px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 24px;

  /* Keep the logo itself clean */
  background: transparent;

  box-shadow: none;

  color: #20d66b;
}


/* Boomplay official image */

.jmr-boomplay .jmr-brand-mark img,
.jmr-boomplay .jmr-brand-mark svg {
  display: block;

  width: 110px;
  height: 110px;

  max-width: 110px;
  max-height: 110px;

  object-fit: contain;
  object-position: center;

  flex-shrink: 0;

  transition:
    transform .4s ease,
    filter .4s ease;
}


/* Subtle hover */

.jmr-boomplay:hover .jmr-brand-mark img,
.jmr-boomplay:hover .jmr-brand-mark svg {
  transform: translateY(-4px);
  filter: drop-shadow(0 8px 18px rgba(30, 214, 107, .22));
}

/* =====================================================
   DEEZER CUSTOM MARK
====================================================== */

.jmr-deezer .jmr-brand-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
}


/* JMR */

.jmr-jmr {
  background:
    radial-gradient(circle at 80% 15%, rgba(139, 92, 246, .3), transparent 35%),
    linear-gradient(145deg, #100b1c, #050505);
}

.jmr-jmr .jmr-brand-mark {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  color: #fff;
  background:
    linear-gradient(135deg,
      #8b5cf6,
      #ec4899,
      #ff5500);
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -1px;
  box-shadow: 0 20px 55px rgba(139, 92, 246, .25);
}

/* Card info */

.jmr-card-info span {
  display: block;
  margin-bottom: 7px;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.8px;
  opacity: .48;
}

.jmr-card-info h4 {
  margin: 0;
  color: #fff;
  font-size: 23px;
  line-height: 1;
  letter-spacing: -.9px;
  font-weight: 500;
}

/* Card footer */

.jmr-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 17px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, .15);
}

.jmr-card-footer span {
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.5px;
  opacity: .4;
}

.jmr-card-footer strong {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 50%;
  font-size: 12px;
  font-weight: 400;
  transition:
    transform .35s ease,
    background .35s ease;
}

.jmr-platform-card:hover .jmr-card-footer strong {
  transform: translate(4px, -4px);
  background: rgba(255, 255, 255, .13);
}

/* =========================================================
   FINAL LINE
========================================================= */

.jmr-final-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 65px;
  padding-top: 22px;
  border-top: 1px solid var(--jmr-line);
}

.jmr-final-line span,
.jmr-final-line a {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 1.8px;
}

.jmr-final-line span {
  color: rgba(0, 0, 0, .4);
}

.jmr-final-line a {
  color: #000;
  text-decoration: none;
  transition: opacity .3s ease;
}

.jmr-final-line a:hover {
  opacity: .45;
}

/* =========================================================
   TABLET
========================================================= */

@media screen and (max-width: 991px) {

  .jmr-section-intro {
    gap: 45px;
  }

  .jmr-section-intro h2 {
    font-size: clamp(48px, 7vw, 78px);
    letter-spacing: -4px;
  }


  /* =========================================================
     TABLET TEAM GRID
  ========================================================= */

  .jmr-team-grid {
    display: grid;

    /* Two equal columns */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    /* Four rows */
    grid-template-rows:
      360px 280px 280px 360px;

    gap: 10px;
  }


  /* =========================================================
     CARD 1
     Tall left card
  ========================================================= */

  .jmr-team-card:nth-child(1) {
    grid-column: 1;
    grid-row: 1 / 3;
  }


  /* =========================================================
     CARD 2
     Top right
  ========================================================= */

  .jmr-team-card:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
  }


  /* =========================================================
     CARD 3
     Tall right card
  ========================================================= */

  .jmr-team-card:nth-child(3) {
    grid-column: 2;
    grid-row: 2 / 4;
  }


  /* =========================================================
     CARD 4
     Middle left
  ========================================================= */

  .jmr-team-card:nth-child(4) {
    grid-column: 1;
    grid-row: 3;
  }


  /* =========================================================
     CARD 5
     Bottom left
  ========================================================= */

  .jmr-team-card:nth-child(5) {
    grid-column: 1;
    grid-row: 4;
  }


  /* =========================================================
     CARD 6
     Bottom right
     SAME SIZE AS CARD 5
  ========================================================= */

  .jmr-team-card:nth-child(6) {
    grid-column: 2;
    grid-row: 4;
  }


  /* =========================================================
     FORCE EQUAL CARD SIZING
  ========================================================= */

  .jmr-team-card {
    width: 100%;
    height: 100%;
    min-width: 0;
    box-sizing: border-box;
  }


  /* =========================================================
     CULTURE
  ========================================================= */

  .jmr-culture {
    gap: 45px;
  }

  .jmr-culture-pillars {
    grid-template-columns: 1fr 1fr;
  }


  /* =========================================================
     PLATFORM
  ========================================================= */

  .jmr-platform-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media screen and (max-width:767px) {

  .jmr-section-intro {
    display: block;
    margin-bottom: 42px;
  }

  .jmr-section-intro h2 {
    font-size: 47px;
    line-height: .86;
    letter-spacing: -3px;
  }

  .jmr-section-intro p {
    max-width: 290px;
    margin: 22px 0 0;
    font-size: 11px;
  }

  .jmr-team-meta {
    margin-bottom: 9px;
  }


  /* =========================================================
     MOBILE TEAM GRID
  ========================================================= */

  .jmr-team-grid {
    display: grid;

    /* Two equal columns */
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    grid-template-rows:
      310px 235px 310px 235px;

    gap: 6px;
  }


  /* =========================================================
     CARD 1
     Full width
  ========================================================= */

  .jmr-team-card:nth-child(1) {
    grid-column: 1 / 3;
    grid-row: 1;
  }


  /* =========================================================
     CARD 2
     Left column
  ========================================================= */

  .jmr-team-card:nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }


  /* =========================================================
     CARD 3
     Right column × 2 rows
  ========================================================= */

  .jmr-team-card:nth-child(3) {
    grid-column: 2;
    grid-row: 2 / 4;
  }


  /* =========================================================
     CARD 4
     Left column
  ========================================================= */

  .jmr-team-card:nth-child(4) {
    grid-column: 1;
    grid-row: 3;
  }


  /* =========================================================
     CARD 5
     Bottom left
  ========================================================= */

  .jmr-team-card:nth-child(5) {
    grid-column: 1;
    grid-row: 4;
  }


  /* =========================================================
     CARD 6
     Bottom right
     EXACT SAME SIZE AS CARD 5
  ========================================================= */

  .jmr-team-card:nth-child(6) {
    grid-column: 2;
    grid-row: 4;
  }


  /* =========================================================
     FORCE EQUAL CARD SIZING
  ========================================================= */

  .jmr-team-card {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    box-sizing: border-box;
  }

  .jmr-team-top {
    top: 13px;
    left: 14px;
    right: 14px;
  }

  .jmr-team-content {
    left: 14px;
    right: 14px;
    bottom: 14px;
  }

  .jmr-team-name {
    font-size: 24px;
    letter-spacing: -1.4px;
  }

  .jmr-team-role {
    font-size: 6.5px;
  }

  .jmr-team-tagline {
    font-size: 9px;
  }

  .jmr-team-footer {
    margin-top: 10px;
  }

  .jmr-social {
    width: 25px;
    height: 25px;
  }

  .jmr-social svg {
    width: 10px;
    height: 10px;
  }

  .jmr-view-team {
    width: 100%;
    justify-content: space-between;
  }

  /* Culture */

  .jmr-culture {
    display: block;
    margin-top: 70px;
    padding: 60px 0;
  }

  .jmr-culture-copy {
    margin-top: 24px;
  }

  .jmr-culture-copy h3 {
    font-size: 39px;
    letter-spacing: -2.5px;
  }

  .jmr-culture-copy p {
    margin-top: 22px;
    font-size: 11px;
    line-height: 1.8;
  }

  .jmr-culture-pillars {
    grid-template-columns: 1fr;
    gap: 7px;
    margin-top: 35px;
  }

  .jmr-culture-pillar {
    padding: 20px;
  }

  /* Music */

  .jmr-streaming-section {
    padding-top: 75px;
  }

  .jmr-streaming-heading {
    display: block;
    margin-bottom: 32px;
  }

  .jmr-streaming-heading h3 {
    font-size: 46px;
    letter-spacing: -3px;
  }

  .jmr-streaming-heading p {
    max-width: 290px;
    margin-top: 20px;
    font-size: 11px;
  }

  .jmr-platform-grid {
    grid-template-columns: 1fr 1fr;
    gap: 6px;
  }

  .jmr-platform-card {
    min-height: 245px;
    padding: 14px;
  }

  .jmr-brand-area {
    min-height: 95px;
  }

  .jmr-brand-mark {
    transform: scale(.75);
  }

  .jmr-platform-card:hover .jmr-brand-mark {
    transform: scale(.82);
  }

  .jmr-card-info h4 {
    font-size: 18px;
  }

  .jmr-card-footer {
    margin-top: 12px;
    padding-top: 9px;
  }

  .jmr-card-footer strong {
    width: 24px;
    height: 24px;
    font-size: 10px;
  }

  .jmr-final-line {
    display: block;
    margin-top: 45px;
  }

  .jmr-final-line a {
    display: block;
    margin-top: 14px;
  }
}

/* =========================================================
   SMALL PHONES
========================================================= */

@media screen and (max-width:420px) {

  .jmr-section-intro h2 {
    font-size: 40px;
  }

  .jmr-team-grid {
    grid-template-rows:
      280px 215px 280px 215px;
  }

  .jmr-team-name {
    font-size: 21px;
  }

  .jmr-team-tagline {
    display: none;
  }

  .jmr-culture-copy h3 {
    font-size: 34px;
  }

  .jmr-streaming-heading h3 {
    font-size: 39px;
  }

  .jmr-platform-card {
    min-height: 215px;
    padding: 12px;
  }

  .jmr-card-info h4 {
    font-size: 16px;
  }

  .jmr-card-info span {
    font-size: 6px;
  }

  .jmr-card-action,
  .jmr-card-index {
    font-size: 6px;
  }
}

/* =========================================================
   TOUCH
========================================================= */

@media (hover:none) {

  .jmr-team-card:active,
  .jmr-platform-card:active {
    transform: scale(.985);
  }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion:reduce) {

  .jmr-team-image,
  .jmr-team-card,
  .jmr-platform-card,
  .jmr-brand-mark,
  .jmr-view-team,
  .jmr-view-team::before,
  .jmr-social,
  .jmr-team-mail,
  .jmr-culture-pillar,
  .jmr-card-action,
  .jmr-card-footer strong {
    transition: none !important;
  }
}


/* =========================================================
JMR TEAM SECTION
LIGHT EDITORIAL THEME
========================================================= */

.jmr-team-section {
  position: relative;
  width: 100%;
  padding: 130px 0 120px;


  background: #F1F2F1;
  color: #111111;

  overflow: hidden;


}

/* =========================================================
SUBTLE BACKGROUND ACCENT
========================================================= */

.jmr-team-section::before {
  content: "";


  position: absolute;

  top: -220px;
  right: -180px;

  width: 520px;
  height: 520px;

  border-radius: 50%;

  background: rgba(254, 191, 24, 0.08);

  filter: blur(100px);

  pointer-events: none;


}

/* =========================================================
HEADER
========================================================= */

.jmr-team-header {
  position: relative;


  margin-bottom: 80px;

  z-index: 1;


}

.jmr-team-eyebrow {
  display: flex;


  align-items: center;

  gap: 13px;

  margin-bottom: 28px;

  color: #A97800;

  font-size: 10px;
  font-weight: 700;

  letter-spacing: 2.4px;

  text-transform: uppercase;


}

.jmr-eyebrow-line {
  width: 42px;
  height: 2px;


  background: #FEBF18;

  flex-shrink: 0;


}

.jmr-team-header-content {
  display: grid;


  grid-template-columns:
    minmax(0, 1.25fr) minmax(280px, 0.75fr);

  align-items: end;

  gap: 70px;


}

.jmr-team-header h2 {
  margin: 0;


  color: #111111;

  font-size: clamp(48px, 6vw, 88px);

  font-weight: 500;

  line-height: 0.92;

  letter-spacing: -3px;


}

.jmr-team-header h2 span {
  color: #A97800;
}

.jmr-team-header-content>p {
  max-width: 470px;


  margin: 0 0 5px;

  color: #5F625F;

  font-size: 14px;

  line-height: 1.85;


}

/* =========================================================
TEAM GRID
========================================================= */

.jmr-team-grid2 {
  position: relative;


  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 70px 28px;

  z-index: 1;


}

/* =========================================================
TEAM MEMBER
========================================================= */

.jmr-team-member {
  position: relative;


  min-width: 0;


}

/* =========================================================
TEAM PHOTO
========================================================= */

.jmr-team-photo {
  position: relative;


  width: 100%;

  aspect-ratio: 0.82;

  overflow: hidden;

  background: #DCDDDA;


}

.jmr-team-photo img {
  display: block;


  width: 100%;
  height: 100%;

  object-fit: cover;

  filter: grayscale(100%);

  transform: scale(1.001);

  transition:
    transform 0.7s cubic-bezier(.2, .75, .2, 1),
    filter 0.7s ease;


}

.jmr-team-member:hover .jmr-team-photo img {
  transform: scale(1.055);


  filter: grayscale(0%);


}

/* =========================================================
PHOTO OVERLAY
========================================================= */

.jmr-team-overlay {
  position: absolute;


  inset: 0;

  background:
    linear-gradient(to top,
      rgba(0, 0, 0, 0.32),
      rgba(0, 0, 0, 0) 55%);

  pointer-events: none;


}

/* =========================================================
MEMBER NUMBER
========================================================= */

.jmr-team-number2 {
  position: absolute;


  top: 16px;
  left: 16px;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 36px;
  height: 36px;

  border-radius: 50%;

  background: #FEBF18;

  color: #111111;

  font-size: 10px;

  font-weight: 800;

  line-height: 1;


}

/* =========================================================
CONTACT BUTTON
========================================================= */

.jmr-team-contact {
  position: absolute;


  right: 16px;
  bottom: 16px;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 40px;
  height: 40px;

  border-radius: 50%;

  background: rgba(241, 242, 241, 0.94);

  color: #111111;

  text-decoration: none;

  opacity: 0;

  transform: translateY(8px);

  transition:
    opacity 0.3s ease,
    transform 0.3s ease,
    background 0.3s ease,
    color 0.3s ease;


}

.jmr-team-member:hover .jmr-team-contact {
  opacity: 1;


  transform: translateY(0);


}

.jmr-team-contact:hover {
  background: #FEBF18;


  color: #111111;


}

/* =========================================================
TEAM CONTENT
========================================================= */

.jmr-team-content2 {
  padding: 23px 2px 0;
}

/* Role */

.jmr-team-role2 {
  display: block;


  margin-bottom: 8px;

  color: #A97800;

  font-size: 9px;

  font-weight: 800;

  line-height: 1.4;

  letter-spacing: 1.5px;

  text-transform: uppercase;


}

/* Name */

.jmr-team-content2 h3 {
  margin: 0 0 12px;


  color: #111;

  font-size: 22px;

  font-weight: 600;

  line-height: 1.2;

  letter-spacing: -0.3px;


}

/* Bio */

.jmr-team-content2>p {
  margin: 0;


  color: #5F625F;

  font-size: 12.5px;

  line-height: 1.75;


}

/* =========================================================
SOCIAL ICONS
========================================================= */

.jmr-team-socials2 {
  display: flex;


  align-items: center;

  gap: 8px;

  margin-top: 19px;

  padding-top: 15px;

  border-top:
    1px solid rgba(17, 17, 17, 0.13);


}

.jmr-team-socials2 a {
  display: flex;


  align-items: center;
  justify-content: center;

  width: 32px;
  height: 32px;

  border:
    1px solid rgba(17, 17, 17, 0.20);

  border-radius: 50%;

  background: transparent;

  color: #3F423F;

  text-decoration: none;

  font-size: 11px;

  transition:
    background 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease;


}

.jmr-team-socials2 a:hover {
  background: #FEBF18;


  border-color: #FEBF18;

  color: #111111;

  transform: translateY(-2px);


}

/* =========================================================
LINK / TEXT STATES
========================================================= */

.jmr-team-content2 a {
  color: inherit;


  text-decoration: none;


}

/* =========================================================
1200px
========================================================= */

@media screen and (max-width: 1200px) {


  .jmr-team-section {
    padding: 110px 0 100px;
  }


  .jmr-team-grid2 {
    grid-template-columns:
      repeat(3, minmax(0, 1fr));

    gap: 60px 25px;
  }


}

/* =========================================================
991px
========================================================= */

@media screen and (max-width: 991px) {


  .jmr-team-section {
    padding: 90px 0 80px;
  }


  .jmr-team-header {
    margin-bottom: 65px;
  }


  .jmr-team-header-content {
    grid-template-columns: 1fr;

    gap: 25px;
  }


  .jmr-team-header-content>p {
    max-width: 620px;
  }


  .jmr-team-grid2 {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 55px 25px;
  }


}

/* =========================================================
767px
========================================================= */

@media screen and (max-width: 767px) {


  .jmr-team-section {
    padding: 75px 0 65px;
  }


  .jmr-team-header {
    margin-bottom: 50px;
  }


  .jmr-team-eyebrow {
    margin-bottom: 22px;

    font-size: 9px;

    letter-spacing: 1.8px;
  }


  .jmr-eyebrow-line {
    width: 30px;
  }


  .jmr-team-header h2 {
    font-size: clamp(42px, 12vw, 62px);

    letter-spacing: -2px;
  }


  .jmr-team-header-content>p {
    font-size: 13px;

    line-height: 1.75;
  }


  .jmr-team-grid2 {
    grid-template-columns: 1fr;

    gap: 55px;
  }


  .jmr-team-photo {
    aspect-ratio: 1 / 1.08;
  }


  .jmr-team-contact {
    opacity: 1;

    transform: none;
  }


}

/* =========================================================
480px
========================================================= */

@media screen and (max-width: 480px) {


  .jmr-team-section {
    padding: 60px 0 50px;
  }


  .jmr-team-header h2 {
    font-size: 42px;

    line-height: 0.96;

    letter-spacing: -1.5px;
  }


  .jmr-team-grid2 {
    gap: 45px;
  }


  .jmr-team-photo {
    aspect-ratio: 1 / 1.12;
  }


  .jmr-team-number2 {
    top: 14px;
    left: 14px;

    width: 34px;
    height: 34px;

    font-size: 9px;
  }


  .jmr-team-contact {
    right: 14px;
    bottom: 14px;

    width: 38px;
    height: 38px;
  }


  .jmr-team-content2 {
    padding-top: 20px;
  }


  .jmr-team-role2 {
    font-size: 8px;

    letter-spacing: 1.3px;
  }


  .jmr-team-content2 h3 {
    font-size: 21px;
  }


  .jmr-team-content2>p {
    font-size: 12.5px;

    line-height: 1.7;
  }


  .jmr-team-socials2 {
    margin-top: 17px;

    padding-top: 13px;
  }


}




/* -------------------------------------------

social icons

------------------------------------------- */
.mil-social-icons {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mil-social-icons.mil-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.mil-social-icons li {
  list-style-type: none;
  margin-right: 15px;
}

.mil-social-icons li:last-child {
  margin-right: 0;
}

.mil-social-icons li a {
  color: rgb(255, 255, 255);
  font-size: 18px;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-social-icons li a:hover {
  color: #FEBF18;
}

.mil-social-icons.mil-dark li a {
  color: rgb(0, 0, 0);
}

.mil-social-icons.mil-dark li a:hover {
  color: #FEBF18;
}

/* -------------------------------------------

revievs

------------------------------------------- */
.mil-revi-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (max-width: 992px) {
  .mil-revi-pagination {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.mil-revi-pagination .swiper-pagination-bullet {
  padding: 0;
  width: 110px;
  height: 110px;
  padding: 10px;
  opacity: 1;
  border: none;
  background-color: transparent;
  margin: 0 !important;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1) !important;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1) !important;
}

@media screen and (max-width: 992px) {
  .mil-revi-pagination .swiper-pagination-bullet {
    width: 90px;
    height: 90px;
  }
}

.mil-revi-pagination .swiper-pagination-bullet:nth-child(2n) {
  margin-top: 30px !important;
}

@media screen and (max-width: 992px) {
  .mil-revi-pagination .swiper-pagination-bullet:nth-child(2n) {
    margin-top: 0 !important;
  }
}

.mil-revi-pagination .swiper-pagination-bullet:hover {
  -webkit-box-shadow: inset 0 0 0 4px rgb(255, 255, 255);
  box-shadow: inset 0 0 0 4px rgb(255, 255, 255);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot {
  background-color: red;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background-size: cover;
  background-position: top;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1) !important;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1) !important;
}

@media screen and (max-width: 992px) {
  .mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot {
    width: 70px;
    height: 70px;
  }
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-1 {
  background-image: url(../img/faces/customers/1.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-2 {
  background-image: url(../img/faces/customers/2.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-3 {
  background-image: url(../img/faces/customers/3.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-4 {
  background-image: url(../img/faces/customers/4.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-5 {
  background-image: url(../img/faces/customers/5.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-6 {
  background-image: url(../img/faces/customers/6.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet .mil-custom-dot.mil-slide-7 {
  background-image: url(../img/faces/customers/7.jpg);
}

.mil-revi-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  -webkit-box-shadow: inset 0 0 0 4px #FEBF18;
  box-shadow: inset 0 0 0 4px #FEBF18;
}

.mil-quote-icon {
  display: block;
  margin: 0 auto;
  width: 40px;
  height: 40px;
  margin-bottom: 15px;
}

.mil-quote-icon path {
  fill: #FEBF18;
}

.mil-slider-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mil-slider-nav .mil-slider-arrow {
  width: 40px;
  height: 40px;
  padding: 10px;
  background-color: rgb(0, 0, 0);
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-slider-nav .mil-slider-arrow svg path {
  fill: #FEBF18;
}

.mil-slider-nav .mil-slider-arrow.mil-prev {
  margin-right: 10px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.mil-slider-nav .mil-slider-arrow.swiper-button-disabled {
  opacity: 0.1;
  cursor: not-allowed;
}

.mil-slider-nav .mil-slider-arrow:hover {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}

.mil-slider-nav .mil-slider-arrow:hover.mil-prev {
  -webkit-transform: rotate(180deg) scale(1.15);
  transform: rotate(180deg) scale(1.15);
}

.mil-slider-nav.mil-reviews-nav {
  position: absolute;
  top: 160px;
  left: 0;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 992px) {
  .mil-slider-nav.mil-reviews-nav {
    top: 0;
  }
}

.mil-slider-nav.mil-soft .mil-slider-arrow {
  background-color: rgb(229, 229, 229);
}

.mil-slider-nav.mil-soft .mil-slider-arrow svg path {
  fill: rgb(0, 0, 0);
}

/* -------------------------------------------

blog

------------------------------------------- */
.mil-blog-card {
  display: block;
}

.mil-blog-card .mil-cover-frame {
  position: relative;
  overflow: hidden;
  padding-bottom: 65%;
  margin-bottom: 30px;
}

.mil-blog-card .mil-cover-frame img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-blog-card .mil-post-descr {
  padding: 30px 30px 0 0;
}

.mil-blog-card .mil-post-descr .mil-post-text {
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.mil-blog-card:hover .mil-cover-frame img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.mil-blog-card.mil-blog-card-hori {
  padding-top: 60px;
  border-top: solid 1px rgb(229, 229, 229);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-blog-card.mil-blog-card-hori .mil-cover-frame {
  margin-bottom: 0;
  width: 450px;
  padding-bottom: 27%;
}

.mil-blog-card.mil-blog-card-hori .mil-post-descr {
  width: calc(100% - 450px);
  padding: 0;
  padding-left: 60px;
}

@media screen and (max-width: 992px) {
  .mil-blog-card.mil-blog-card-hori {
    display: block;
    padding-top: 0;
    border: none;
  }

  .mil-blog-card.mil-blog-card-hori .mil-cover-frame {
    width: 100%;
    padding-bottom: 65%;
    margin-bottom: 30px;
  }

  .mil-blog-card.mil-blog-card-hori .mil-post-descr {
    width: 100%;
    padding: 30px 30px 0 0;
  }
}

.mil-labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
}

.mil-labels .mil-label {
  margin-right: 15px;
}

.mil-labels .mil-label:last-child {
  margin-right: 0;
}

.mil-pagination {
  padding-top: 60px;
  border-top: solid 1px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 20px;
}

.mil-pagination-btn {
  display: inline-block;
  width: 40px;
  height: 40px;
  font-size: 12px;
  font-weight: 500;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.1);
  color: rgb(0, 0, 0);
  text-align: center;
  line-height: 40px;
  text-decoration: none;
  margin-right: 10px;
}

.mil-pagination-btn.mil-active {
  background-color: #FEBF18;
}

.mil-category-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mil-category-list li {
  list-style-type: none;
  margin-right: 10px;
}

.mil-category-list li:last-child {
  margin-right: 0;
}

.mil-category-list li a {
  height: 40px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: transparent;
  padding: 0 20px;
  border-radius: 40px;
  color: rgb(0, 0, 0);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-category-list li a:hover {
  background-color: rgb(229, 229, 229);
}

.mil-category-list li a.mil-active {
  background-color: #FEBF18;
}

@media screen and (max-width: 768px) {
  .mil-category-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .mil-category-list li {
    margin-right: 0;
    margin-bottom: 10px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .mil-category-list li:last-child {
    margin-bottom: 0;
  }

  .mil-category-list li a {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}


/* -------------------------------------------

   JMR FOOTER

------------------------------------------- */


/* =========================================
   FOOTER BASE
========================================= */

footer.mil-dark-bg {
  position: relative;
  overflow: hidden;
}

footer.mil-dark-bg .container {
  position: relative;
  z-index: 2;
}


/* =========================================
   FOOTER BRAND
========================================= */

footer.mil-dark-bg .mil-footer-logo {
  position: relative;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  width: 65px !important;
  height: 65px !important;

  margin: 0 0 25px 0 !important;
  padding: 0 !important;

  text-decoration: none !important;

  line-height: 0 !important;
  font-size: 0 !important;

  flex-shrink: 0;

  transition:
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

footer.mil-dark-bg .mil-footer-logo-image {
  display: block !important;

  width: 65px !important;
  height: 65px !important;

  min-width: 65px !important;
  min-height: 65px !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  object-fit: contain !important;

  border: 0 !important;
  outline: none !important;

  opacity: 1 !important;
  visibility: visible !important;

  transition:
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

footer.mil-dark-bg .mil-footer-logo:hover {
  text-decoration: none !important;
}

footer.mil-dark-bg .mil-footer-logo:hover .mil-footer-logo-image {
  transform: scale(1.07);
}


/* =========================================
   BRAND TAGLINE
========================================= */

footer.mil-dark-bg .mil-footer-logo+p {
  margin-top: 0;
  margin-bottom: 0;

  font-size: 13px;
  font-weight: 500;

  letter-spacing: 2px;
  text-transform: uppercase;

  color: rgba(255, 255, 255, 0.55);
}


/* =========================================
   FOOTER HEADINGS
========================================= */

footer.mil-dark-bg h6 {
  position: relative;

  margin-bottom: 30px;

  font-size: 12px;
  font-weight: 500;

  line-height: 1.4;

  text-transform: uppercase;
  letter-spacing: 2px;

  color: rgba(255, 255, 255, 0.9);
}

footer.mil-dark-bg h6::after {
  content: "";

  display: block;

  width: 25px;
  height: 1px;

  margin-top: 12px;

  background-color: #FEBF18;

  opacity: 0.8;
}


/* =========================================
   FOOTER MAIN MENU
========================================= */

footer.mil-dark-bg .mil-footer-menu {
  margin: 0;
  padding: 0;
}

footer.mil-dark-bg .mil-footer-menu ul {
  margin: 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-footer-menu ul li {
  margin: 0 0 18px 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-footer-menu ul li:last-child {
  margin-bottom: 0;
}

footer.mil-dark-bg .mil-footer-menu ul li a {
  display: inline-block;

  font-size: 18px;
  font-weight: 500;

  line-height: 1.5;

  color: rgba(255, 255, 255, 0.82);

  text-decoration: none;

  transition:
    color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

footer.mil-dark-bg .mil-footer-menu ul li a:hover {
  color: #FEBF18;

  transform: translateX(7px);
}


/* =========================================
   SECONDARY FOOTER LINKS
========================================= */

footer.mil-dark-bg .mil-menu-list {
  margin: 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-menu-list li {
  margin: 0 0 13px 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-menu-list li:last-child {
  margin-bottom: 0;
}

footer.mil-dark-bg .mil-menu-list li a {
  display: inline-block;

  font-size: 14px;
  font-weight: 400;

  line-height: 1.6;

  color: rgba(255, 255, 255, 0.55);

  text-decoration: none;

  transition:
    color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

footer.mil-dark-bg .mil-menu-list li a:hover {
  color: rgb(255, 152, 0) !important;

  transform: translateX(6px);

  text-decoration: none;
}


/* =========================================
   NEWSLETTER DESCRIPTION
========================================= */

footer.mil-dark-bg .mil-subscribe-form {
  position: relative;

  width: 100%;
  height: 62px;

  margin: 0;

  padding: 0;
}

footer.mil-dark-bg .mil-subscribe-form input {
  display: block;

  width: 100%;
  height: 100%;

  box-sizing: border-box;

  margin: 0;
  padding: 0 72px 0 24px;

  background-color: rgba(255, 255, 255, 0.07);

  color: rgb(255, 255, 255);

  font-family: "Outfit", sans-serif;

  font-size: 12px;
  font-weight: 500;

  text-transform: uppercase;
  letter-spacing: 1.3px;

  border: 1px solid rgba(255, 255, 255, 0.13);

  border-radius: 62px;

  outline: none;

  transition:
    background-color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    border-color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    box-shadow 0.4s cubic-bezier(0, 0, 0.3642, 1);
}


/* =========================================
   NEWSLETTER PLACEHOLDER
========================================= */

footer.mil-dark-bg .mil-subscribe-form input::placeholder {

  color: rgba(255, 255, 255, 0.4);

  font-family: "Outfit", sans-serif;

  font-size: 11px;
  font-weight: 500;

  text-transform: uppercase;
  letter-spacing: 1.3px;

  opacity: 1;
}


/* =========================================
   NEWSLETTER HOVER
========================================= */

footer.mil-dark-bg .mil-subscribe-form input:hover {

  background-color: rgba(255, 255, 255, 0.1);

  border-color: rgba(255, 255, 255, 0.22);
}


/* =========================================
   NEWSLETTER FOCUS
========================================= */

footer.mil-dark-bg .mil-subscribe-form input:focus {

  background-color: rgb(255, 255, 255);

  color: rgb(0, 0, 0);

  border-color: #FEBF18;

  outline: none;

  box-shadow:
    0 0 0 3px rgba(255, 152, 0, 0.12);
}

footer.mil-dark-bg .mil-subscribe-form input:focus::placeholder {

  color: rgb(128, 128, 128);
}


/* =========================================
   NEWSLETTER BUTTON
========================================= */

footer.mil-dark-bg .mil-subscribe-form .mil-button {

  position: absolute;

  top: 8px;
  right: 8px;

  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 46px;
  height: 46px;

  margin: 0;
  padding: 0;

  border-radius: 50%;

  cursor: pointer;

  transition:
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1),
    opacity 0.3s ease;
}

footer.mil-dark-bg .mil-subscribe-form .mil-button:hover {

  transform: translateX(3px);
}

footer.mil-dark-bg .mil-subscribe-form .mil-button:disabled {

  cursor: default;

  opacity: 0.7;

  transform: none;
}


/* =========================================
   NEWSLETTER NOTE
========================================= */

footer.mil-dark-bg .mil-subscribe-form+p {

  margin-top: 14px;

  font-size: 11px;
  line-height: 1.6;

  color: rgba(255, 255, 255, 0.35);
}


/* =========================================
   SOCIAL ICONS
========================================= */

footer.mil-dark-bg .mil-social-icons {

  display: flex;
  align-items: center;
  flex-wrap: wrap;

  margin: 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-social-icons li {

  margin: 0 10px 10px 0;
  padding: 0;

  list-style: none;
}

footer.mil-dark-bg .mil-social-icons li:last-child {
  margin-right: 0;
}

footer.mil-dark-bg .mil-social-icons .social-icon {

  display: flex;
  align-items: center;
  justify-content: center;

  width: 44px;
  height: 44px;

  border: 1px solid rgba(255, 255, 255, 0.15);

  border-radius: 50%;

  color: rgba(255, 255, 255, 0.78);

  text-decoration: none;

  transition:
    color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    border-color 0.4s cubic-bezier(0, 0, 0.3642, 1),
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1),
    background-color 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

footer.mil-dark-bg .mil-social-icons .social-icon:hover {

  color: #FEBF18;

  border-color: #FEBF18;

  background-color: rgba(255, 152, 0, 0.06);

  transform: translateY(-5px);
}


/* =========================================
   FOOTER TEXT
========================================= */

footer.mil-dark-bg .mil-light-soft {

  color: rgba(255, 255, 255, 0.55);
}

footer.mil-dark-bg p {

  line-height: 1.8;
}


/* =========================================
   FOOTER DIVIDER
========================================= */

footer.mil-dark-bg .mil-divider {

  width: 100%;
  height: 1px;

  margin-top: 20px;

  background-color: rgba(255, 255, 255, 0.1);
}


/* =========================================
   FOOTER BOTTOM LINKS
========================================= */

footer.mil-dark-bg .mil-divider~.row a {

  transition:
    color 0.3s ease;
}

footer.mil-dark-bg .mil-divider~.row a:hover {

  color: rgb(255, 152, 0) !important;

  text-decoration: none;
}


/* =========================================
   FOOTER BRAND LINE
========================================= */

footer.mil-dark-bg .mil-mt-30 {

  margin-top: 30px;
}

footer.mil-dark-bg .mil-mt-30 p {

  margin-bottom: 0;

  font-size: 11px;

  line-height: 1.6;

  letter-spacing: 3px;

  text-transform: uppercase;

  color: rgba(255, 255, 255, 0.35);
}


/* =========================================
   TABLET
========================================= */

@media screen and (max-width: 992px) {

  footer.mil-dark-bg .mil-footer-menu ul li a {
    font-size: 18px;
  }

  footer.mil-dark-bg .mil-footer-logo {
    width: 60px !important;
    height: 60px !important;
  }

  footer.mil-dark-bg .mil-footer-logo-image {
    width: 60px !important;
    height: 60px !important;

    min-width: 60px !important;
    min-height: 60px !important;
  }

  footer.mil-dark-bg .mil-subscribe-form {
    max-width: 100%;
  }

}


/* =========================================
   MOBILE
========================================= */

@media screen and (max-width: 768px) {

  footer.mil-dark-bg .mil-footer-menu ul li {
    margin-bottom: 16px;
  }

  footer.mil-dark-bg .mil-footer-menu ul li a {
    font-size: 20px;
  }

  footer.mil-dark-bg .mil-menu-list li {
    margin-bottom: 12px;
  }

  footer.mil-dark-bg .mil-subscribe-form {
    height: 60px;
  }

  footer.mil-dark-bg .mil-subscribe-form input {
    padding-left: 22px;
    padding-right: 68px;
  }

  footer.mil-dark-bg .mil-subscribe-form .mil-button {

    top: 8px;
    right: 8px;

    width: 44px;
    height: 44px;
  }

  footer.mil-dark-bg .mil-social-icons .social-icon {
    width: 43px;
    height: 43px;
  }

  footer.mil-dark-bg .mil-social-icons li {
    margin-right: 9px;
  }

  footer.mil-dark-bg .mil-mt-30 p {
    letter-spacing: 2px;
    line-height: 1.8;
  }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media screen and (max-width: 576px) {

  footer.mil-dark-bg .mil-footer-logo {
    width: 55px !important;
    height: 55px !important;
  }

  footer.mil-dark-bg .mil-footer-logo-image {
    width: 55px !important;
    height: 55px !important;

    min-width: 55px !important;
    min-height: 55px !important;
  }

  footer.mil-dark-bg .mil-footer-logo+p {
    font-size: 11px;
    letter-spacing: 1.5px;
  }

  footer.mil-dark-bg .mil-footer-menu ul li a {
    font-size: 19px;
  }

  footer.mil-dark-bg .mil-menu-list li a {
    font-size: 13px;
  }

  footer.mil-dark-bg .mil-subscribe-form {
    height: 58px;
  }

  footer.mil-dark-bg .mil-subscribe-form input {

    padding-left: 20px;
    padding-right: 64px;

    font-size: 10px;
  }

  footer.mil-dark-bg .mil-subscribe-form input::placeholder {

    font-size: 10px;
    letter-spacing: 1px;
  }

  footer.mil-dark-bg .mil-subscribe-form .mil-button {

    top: 7px;
    right: 7px;

    width: 44px;
    height: 44px;
  }

  footer.mil-dark-bg .mil-social-icons .social-icon {

    width: 40px;
    height: 40px;
  }

  footer.mil-dark-bg .mil-social-icons li {
    margin-right: 8px;
  }

  footer.mil-dark-bg .mil-mt-30 p {
    font-size: 9px;
    letter-spacing: 1.5px;
  }

}


/* =========================================
   ACCESSIBILITY
========================================= */

footer.mil-dark-bg a:focus-visible,
footer.mil-dark-bg button:focus-visible,
footer.mil-dark-bg input:focus-visible {

  outline: 2px solid #FEBF18;

  outline-offset: 4px;
}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

  footer.mil-dark-bg *,
  footer.mil-dark-bg *::before,
  footer.mil-dark-bg *::after {

    transition-duration: 0.01ms !important;

    animation-duration: 0.01ms !important;

    animation-iteration-count: 1 !important;
  }

}


/* -------------------------------------------

portfolio

------------------------------------------- */
.mil-portfolio-item {
  display: block;
}

.mil-portfolio-item .mil-cover-frame {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}

.mil-portfolio-item .mil-cover-frame .mil-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mil-portfolio-item .mil-cover-frame .mil-cover img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-portfolio-item .mil-cover-frame.mil-vert {
  padding-bottom: 130%;
}

.mil-portfolio-item .mil-cover-frame.mil-hori {
  padding-bottom: 65%;
}

.mil-portfolio-item:hover .mil-cover-frame .mil-cover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.mil-portfolio-item.mil-slider-item .mil-cover-frame {
  margin-bottom: 30px;
  height: calc(100vh - 360px);
}

@media screen and (max-width: 992px) {
  .mil-portfolio-item.mil-slider-item .mil-cover-frame {
    height: auto;
    padding-bottom: 100%;
  }
}

.mil-portfolio-item.mil-slider-item .mil-descr {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 180px;
  background-color: rgb(242, 242, 242);
  padding: 0 60px;
}

@media screen and (max-width: 992px) {
  .mil-portfolio-item.mil-slider-item .mil-descr {
    padding: 30px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    height: auto;
  }

  .mil-portfolio-item.mil-slider-item .mil-descr .mil-descr-text {
    margin-bottom: 30px;
  }
}

.mil-portfolio-item.mil-slider-item:hover .mil-cover-frame .mil-cover img {
  -webkit-transform: none;
  transform: none;
}

.swiper-slide .mil-portfolio-item .mil-descr {
  pointer-events: none;
}

.swiper-slide.swiper-slide-active .mil-portfolio-item .mil-descr {
  pointer-events: all;
}

.mil-portfolio {
  position: relative;
}

.mil-portfolio .mil-lines-place {
  position: absolute;
  left: 40.7%;
}

.mil-portfolio .mil-lines-place.mil-lines-long {
  top: 1289px;
}

.mil-portfolio-slider-frame {
  z-index: 0;
  padding-top: 150px;
}

@media screen and (max-width: 992px) {
  .mil-portfolio-slider-frame {
    padding-top: 180px;
  }
}

.mil-portfolio-nav {
  background-color: rgb(242, 242, 242);
  width: 100%;
  padding: 0 60px;
  height: 180px;
  position: absolute;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.mil-portfolio-nav .mil-portfolio-btns-frame {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 15px;
  height: 70px;
  border-radius: 70px;
  background-color: rgb(255, 255, 255);
}

@media screen and (max-width: 992px) {
  .mil-portfolio-nav {
    position: static;
    height: auto;
    padding: 30px 0 90px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    background-color: rgb(255, 255, 255);
  }

  .mil-portfolio-nav .mil-portfolio-btns-frame {
    width: 100%;
    height: auto;
    padding: 0;
  }
}

.swiper-portfolio-pagination {
  white-space: nowrap;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 0 15px;
}

.mil-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: 120px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  .mil-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: auto;
    padding: 30px;
  }
}

.mil-works-nav {
  padding-top: 60px;
  border-top: solid 1px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-works-nav .mil-disabled {
  opacity: 0.2;
  cursor: not-allowed;
}

@media screen and (max-width: 768px) {
  .mil-works-nav {
    padding-top: 0;
    border-top: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .mil-works-nav .mil-link {
    display: none;
  }

  .mil-works-nav .mil-link:last-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

/***************************

map

***************************/
.mil-map-frame {
  background-color: rgb(229, 229, 229);
  pointer-events: all;
  height: 600px;
  position: relative;
  overflow: hidden;
}

.mil-map-frame .mil-map {
  position: absolute;
  top: -25%;
  left: -25%;
  width: 150%;
  height: 150%;
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-map-frame .mil-map iframe {
  width: 100%;
  height: 100%;
}

/* -------------------------------------------

accordion

------------------------------------------- */
.mil-accordion-group {
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  margin-bottom: 30px;
}

.mil-accordion-group .mil-accordion-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  cursor: pointer;
  margin-bottom: 30px;
}

.mil-accordion-group .mil-accordion-menu .mil-symbol {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  color: rgb(0, 0, 0);
  background-color: rgb(229, 229, 229);
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-plus,
.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-minus {
  position: absolute;
}

.mil-accordion-group .mil-accordion-menu .mil-symbol .mil-minus {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.mil-accordion-group .mil-accordion-menu .mil-accordion-head {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  color: rgb(0, 0, 0);
}

.mil-accordion-content {
  height: 0;
  overflow: hidden;
}

/***************************

price

***************************/
.mil-price-card {
  display: block;
  width: 100%;
  border-top: solid 1px rgba(255, 255, 255, 0.1);
  border-bottom: solid 1px rgba(255, 255, 255, 0.1);
  padding: 60px 0 30px;
}

.mil-price-card .mil-price-number {
  padding-top: 10px;
  line-height: 70%;
  font-size: 54px;
  font-weight: 500;
}

.mil-price-card .mil-price-number .mil-thin {
  font-weight: 200;
  font-size: 18px;
}

/***************************

404

***************************/
.mil-404-banner .mil-animation-frame {
  z-index: 2;
}

.mil-404-frame {
  padding-top: 100px;
  height: 100vh;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mil-404-text {
  display: block;
  text-align: center;
  color: rgb(255, 255, 255);
}

.mil-scale-frame {
  -webkit-transform: scale(2.3);
  transform: scale(2.3);
  text-align: center;
  margin-bottom: 90px;
}

@media screen and (max-width: 530px) {
  .mil-scale-frame {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
    margin-bottom: 50px;
  }
}

.mil-404 {
  position: relative;
  color: rgb(255, 255, 255);
  font-size: 6em;
  font-weight: 500;
  animation: glitch-skew 1s infinite linear alternate-reverse;
}

.mil-404::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  left: 2px;
  text-shadow: -2px 0 #FEBF18;
  clip: rect(44px, 450px, 56px, 0);
  animation: glitch-anim 5s infinite linear alternate-reverse;
}

.mil-404::after {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  left: -2px;
  text-shadow: -2px 0 rgb(153, 153, 153), 2px 2px rgb(229, 229, 229);
  animation: glitch-anim2 1s infinite linear alternate-reverse;
}

@-webkit-keyframes glitch-anim {
  0% {
    clip: rect(49px, 9999px, 31px, 0);
    -webkit-transform: skew(0.04deg);
    transform: skew(0.04deg);
  }

  5% {
    clip: rect(63px, 9999px, 92px, 0);
    -webkit-transform: skew(0.18deg);
    transform: skew(0.18deg);
  }

  10% {
    clip: rect(86px, 9999px, 74px, 0);
    -webkit-transform: skew(0.4deg);
    transform: skew(0.4deg);
  }

  15% {
    clip: rect(85px, 9999px, 19px, 0);
    -webkit-transform: skew(0.57deg);
    transform: skew(0.57deg);
  }

  20% {
    clip: rect(64px, 9999px, 75px, 0);
    -webkit-transform: skew(0.96deg);
    transform: skew(0.96deg);
  }

  25% {
    clip: rect(77px, 9999px, 17px, 0);
    -webkit-transform: skew(0.61deg);
    transform: skew(0.61deg);
  }

  30% {
    clip: rect(16px, 9999px, 76px, 0);
    -webkit-transform: skew(0.81deg);
    transform: skew(0.81deg);
  }

  35% {
    clip: rect(5px, 9999px, 61px, 0);
    -webkit-transform: skew(0.56deg);
    transform: skew(0.56deg);
  }

  40% {
    clip: rect(79px, 9999px, 81px, 0);
    -webkit-transform: skew(0.05deg);
    transform: skew(0.05deg);
  }

  45% {
    clip: rect(20px, 9999px, 97px, 0);
    -webkit-transform: skew(0.56deg);
    transform: skew(0.56deg);
  }

  50% {
    clip: rect(33px, 9999px, 100px, 0);
    -webkit-transform: skew(0.16deg);
    transform: skew(0.16deg);
  }

  55% {
    clip: rect(19px, 9999px, 76px, 0);
    -webkit-transform: skew(0.93deg);
    transform: skew(0.93deg);
  }

  60% {
    clip: rect(29px, 9999px, 59px, 0);
    -webkit-transform: skew(0.58deg);
    transform: skew(0.58deg);
  }

  65% {
    clip: rect(19px, 9999px, 95px, 0);
    -webkit-transform: skew(0.83deg);
    transform: skew(0.83deg);
  }

  70% {
    clip: rect(88px, 9999px, 30px, 0);
    -webkit-transform: skew(0.39deg);
    transform: skew(0.39deg);
  }

  75% {
    clip: rect(43px, 9999px, 45px, 0);
    -webkit-transform: skew(0.6deg);
    transform: skew(0.6deg);
  }

  80% {
    clip: rect(30px, 9999px, 4px, 0);
    -webkit-transform: skew(0.89deg);
    transform: skew(0.89deg);
  }

  85% {
    clip: rect(4px, 9999px, 96px, 0);
    -webkit-transform: skew(1deg);
    transform: skew(1deg);
  }

  90% {
    clip: rect(4px, 9999px, 91px, 0);
    -webkit-transform: skew(0.2deg);
    transform: skew(0.2deg);
  }

  95% {
    clip: rect(48px, 9999px, 80px, 0);
    -webkit-transform: skew(0.41deg);
    transform: skew(0.41deg);
  }

  100% {
    clip: rect(10px, 9999px, 58px, 0);
    -webkit-transform: skew(0.91deg);
    transform: skew(0.91deg);
  }
}

@keyframes glitch-anim {
  0% {
    clip: rect(49px, 9999px, 31px, 0);
    -webkit-transform: skew(0.04deg);
    transform: skew(0.04deg);
  }

  5% {
    clip: rect(63px, 9999px, 92px, 0);
    -webkit-transform: skew(0.18deg);
    transform: skew(0.18deg);
  }

  10% {
    clip: rect(86px, 9999px, 74px, 0);
    -webkit-transform: skew(0.4deg);
    transform: skew(0.4deg);
  }

  15% {
    clip: rect(85px, 9999px, 19px, 0);
    -webkit-transform: skew(0.57deg);
    transform: skew(0.57deg);
  }

  20% {
    clip: rect(64px, 9999px, 75px, 0);
    -webkit-transform: skew(0.96deg);
    transform: skew(0.96deg);
  }

  25% {
    clip: rect(77px, 9999px, 17px, 0);
    -webkit-transform: skew(0.61deg);
    transform: skew(0.61deg);
  }

  30% {
    clip: rect(16px, 9999px, 76px, 0);
    -webkit-transform: skew(0.81deg);
    transform: skew(0.81deg);
  }

  35% {
    clip: rect(5px, 9999px, 61px, 0);
    -webkit-transform: skew(0.56deg);
    transform: skew(0.56deg);
  }

  40% {
    clip: rect(79px, 9999px, 81px, 0);
    -webkit-transform: skew(0.05deg);
    transform: skew(0.05deg);
  }

  45% {
    clip: rect(20px, 9999px, 97px, 0);
    -webkit-transform: skew(0.56deg);
    transform: skew(0.56deg);
  }

  50% {
    clip: rect(33px, 9999px, 100px, 0);
    -webkit-transform: skew(0.16deg);
    transform: skew(0.16deg);
  }

  55% {
    clip: rect(19px, 9999px, 76px, 0);
    -webkit-transform: skew(0.93deg);
    transform: skew(0.93deg);
  }

  60% {
    clip: rect(29px, 9999px, 59px, 0);
    -webkit-transform: skew(0.58deg);
    transform: skew(0.58deg);
  }

  65% {
    clip: rect(19px, 9999px, 95px, 0);
    -webkit-transform: skew(0.83deg);
    transform: skew(0.83deg);
  }

  70% {
    clip: rect(88px, 9999px, 30px, 0);
    -webkit-transform: skew(0.39deg);
    transform: skew(0.39deg);
  }

  75% {
    clip: rect(43px, 9999px, 45px, 0);
    -webkit-transform: skew(0.6deg);
    transform: skew(0.6deg);
  }

  80% {
    clip: rect(30px, 9999px, 4px, 0);
    -webkit-transform: skew(0.89deg);
    transform: skew(0.89deg);
  }

  85% {
    clip: rect(4px, 9999px, 96px, 0);
    -webkit-transform: skew(1deg);
    transform: skew(1deg);
  }

  90% {
    clip: rect(4px, 9999px, 91px, 0);
    -webkit-transform: skew(0.2deg);
    transform: skew(0.2deg);
  }

  95% {
    clip: rect(48px, 9999px, 80px, 0);
    -webkit-transform: skew(0.41deg);
    transform: skew(0.41deg);
  }

  100% {
    clip: rect(10px, 9999px, 58px, 0);
    -webkit-transform: skew(0.91deg);
    transform: skew(0.91deg);
  }
}

@-webkit-keyframes glitch-anim2 {
  0% {
    clip: rect(97px, 9999px, 84px, 0);
    -webkit-transform: skew(0.55deg);
    transform: skew(0.55deg);
  }

  5% {
    clip: rect(82px, 9999px, 21px, 0);
    -webkit-transform: skew(0.04deg);
    transform: skew(0.04deg);
  }

  10% {
    clip: rect(51px, 9999px, 99px, 0);
    -webkit-transform: skew(0.93deg);
    transform: skew(0.93deg);
  }

  15% {
    clip: rect(42px, 9999px, 97px, 0);
    -webkit-transform: skew(0.03deg);
    transform: skew(0.03deg);
  }

  20% {
    clip: rect(27px, 9999px, 25px, 0);
    -webkit-transform: skew(0.86deg);
    transform: skew(0.86deg);
  }

  25% {
    clip: rect(69px, 9999px, 5px, 0);
    -webkit-transform: skew(0.95deg);
    transform: skew(0.95deg);
  }

  30% {
    clip: rect(38px, 9999px, 67px, 0);
    -webkit-transform: skew(0.33deg);
    transform: skew(0.33deg);
  }

  35% {
    clip: rect(8px, 9999px, 90px, 0);
    -webkit-transform: skew(0.67deg);
    transform: skew(0.67deg);
  }

  40% {
    clip: rect(34px, 9999px, 31px, 0);
    -webkit-transform: skew(0.33deg);
    transform: skew(0.33deg);
  }

  45% {
    clip: rect(1px, 9999px, 25px, 0);
    -webkit-transform: skew(0.71deg);
    transform: skew(0.71deg);
  }

  50% {
    clip: rect(45px, 9999px, 40px, 0);
    -webkit-transform: skew(0.38deg);
    transform: skew(0.38deg);
  }

  55% {
    clip: rect(84px, 9999px, 96px, 0);
    -webkit-transform: skew(0.3deg);
    transform: skew(0.3deg);
  }

  60% {
    clip: rect(68px, 9999px, 59px, 0);
    -webkit-transform: skew(0.35deg);
    transform: skew(0.35deg);
  }

  65% {
    clip: rect(93px, 9999px, 48px, 0);
    -webkit-transform: skew(0.25deg);
    transform: skew(0.25deg);
  }

  70% {
    clip: rect(19px, 9999px, 40px, 0);
    -webkit-transform: skew(0.97deg);
    transform: skew(0.97deg);
  }

  75% {
    clip: rect(76px, 9999px, 56px, 0);
    -webkit-transform: skew(0.79deg);
    transform: skew(0.79deg);
  }

  80% {
    clip: rect(22px, 9999px, 82px, 0);
    -webkit-transform: skew(0.48deg);
    transform: skew(0.48deg);
  }

  85% {
    clip: rect(30px, 9999px, 63px, 0);
    -webkit-transform: skew(0.91deg);
    transform: skew(0.91deg);
  }

  90% {
    clip: rect(68px, 9999px, 44px, 0);
    -webkit-transform: skew(0.4deg);
    transform: skew(0.4deg);
  }

  95% {
    clip: rect(12px, 9999px, 36px, 0);
    -webkit-transform: skew(0.61deg);
    transform: skew(0.61deg);
  }

  100% {
    clip: rect(24px, 9999px, 5px, 0);
    -webkit-transform: skew(0.96deg);
    transform: skew(0.96deg);
  }
}

@keyframes glitch-anim2 {
  0% {
    clip: rect(97px, 9999px, 84px, 0);
    -webkit-transform: skew(0.55deg);
    transform: skew(0.55deg);
  }

  5% {
    clip: rect(82px, 9999px, 21px, 0);
    -webkit-transform: skew(0.04deg);
    transform: skew(0.04deg);
  }

  10% {
    clip: rect(51px, 9999px, 99px, 0);
    -webkit-transform: skew(0.93deg);
    transform: skew(0.93deg);
  }

  15% {
    clip: rect(42px, 9999px, 97px, 0);
    -webkit-transform: skew(0.03deg);
    transform: skew(0.03deg);
  }

  20% {
    clip: rect(27px, 9999px, 25px, 0);
    -webkit-transform: skew(0.86deg);
    transform: skew(0.86deg);
  }

  25% {
    clip: rect(69px, 9999px, 5px, 0);
    -webkit-transform: skew(0.95deg);
    transform: skew(0.95deg);
  }

  30% {
    clip: rect(38px, 9999px, 67px, 0);
    -webkit-transform: skew(0.33deg);
    transform: skew(0.33deg);
  }

  35% {
    clip: rect(8px, 9999px, 90px, 0);
    -webkit-transform: skew(0.67deg);
    transform: skew(0.67deg);
  }

  40% {
    clip: rect(34px, 9999px, 31px, 0);
    -webkit-transform: skew(0.33deg);
    transform: skew(0.33deg);
  }

  45% {
    clip: rect(1px, 9999px, 25px, 0);
    -webkit-transform: skew(0.71deg);
    transform: skew(0.71deg);
  }

  50% {
    clip: rect(45px, 9999px, 40px, 0);
    -webkit-transform: skew(0.38deg);
    transform: skew(0.38deg);
  }

  55% {
    clip: rect(84px, 9999px, 96px, 0);
    -webkit-transform: skew(0.3deg);
    transform: skew(0.3deg);
  }

  60% {
    clip: rect(68px, 9999px, 59px, 0);
    -webkit-transform: skew(0.35deg);
    transform: skew(0.35deg);
  }

  65% {
    clip: rect(93px, 9999px, 48px, 0);
    -webkit-transform: skew(0.25deg);
    transform: skew(0.25deg);
  }

  70% {
    clip: rect(19px, 9999px, 40px, 0);
    -webkit-transform: skew(0.97deg);
    transform: skew(0.97deg);
  }

  75% {
    clip: rect(76px, 9999px, 56px, 0);
    -webkit-transform: skew(0.79deg);
    transform: skew(0.79deg);
  }

  80% {
    clip: rect(22px, 9999px, 82px, 0);
    -webkit-transform: skew(0.48deg);
    transform: skew(0.48deg);
  }

  85% {
    clip: rect(30px, 9999px, 63px, 0);
    -webkit-transform: skew(0.91deg);
    transform: skew(0.91deg);
  }

  90% {
    clip: rect(68px, 9999px, 44px, 0);
    -webkit-transform: skew(0.4deg);
    transform: skew(0.4deg);
  }

  95% {
    clip: rect(12px, 9999px, 36px, 0);
    -webkit-transform: skew(0.61deg);
    transform: skew(0.61deg);
  }

  100% {
    clip: rect(24px, 9999px, 5px, 0);
    -webkit-transform: skew(0.96deg);
    transform: skew(0.96deg);
  }
}

@-webkit-keyframes glitch-skew {
  0% {
    -webkit-transform: skew(3deg);
    transform: skew(3deg);
  }

  10% {
    -webkit-transform: skew(2deg);
    transform: skew(2deg);
  }

  20% {
    -webkit-transform: skew(0deg);
    transform: skew(0deg);
  }

  30% {
    -webkit-transform: skew(0deg);
    transform: skew(0deg);
  }

  40% {
    -webkit-transform: skew(2deg);
    transform: skew(2deg);
  }

  50% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  60% {
    -webkit-transform: skew(-3deg);
    transform: skew(-3deg);
  }

  70% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  80% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  90% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  100% {
    -webkit-transform: skew(-3deg);
    transform: skew(-3deg);
  }
}

@keyframes glitch-skew {
  0% {
    -webkit-transform: skew(3deg);
    transform: skew(3deg);
  }

  10% {
    -webkit-transform: skew(2deg);
    transform: skew(2deg);
  }

  20% {
    -webkit-transform: skew(0deg);
    transform: skew(0deg);
  }

  30% {
    -webkit-transform: skew(0deg);
    transform: skew(0deg);
  }

  40% {
    -webkit-transform: skew(2deg);
    transform: skew(2deg);
  }

  50% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  60% {
    -webkit-transform: skew(-3deg);
    transform: skew(-3deg);
  }

  70% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  80% {
    -webkit-transform: skew(-1deg);
    transform: skew(-1deg);
  }

  90% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  100% {
    -webkit-transform: skew(-3deg);
    transform: skew(-3deg);
  }
}

/***************************

images

***************************/
.mil-image-frame {
  position: relative;
  overflow: hidden;
}

.mil-image-frame>img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.mil-image-frame.mil-horizontal {
  padding-bottom: 65%;
}

.mil-image-frame.mil-vertical {
  padding-bottom: 140%;
}

.mil-image-frame.mil-square {
  padding-bottom: 100%;
}

.mil-image-frame.mil-fw {
  padding-bottom: 50%;
}

.mil-image-frame .mil-zoom-btn {
  opacity: 0;
  -webkit-transform: translateY(15px);
  transform: translateY(15px);
  position: absolute;
  top: 30px;
  right: 30px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-image-frame .mil-zoom-btn:hover {
  background-color: rgb(255, 255, 255);
}

.mil-image-frame .mil-zoom-btn img {
  height: 17px;
  width: 17px;
}

.mil-image-frame:hover .mil-zoom-btn {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  z-index: 2;
}

/***************************

page transitions

***************************/
.mil-frame {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: 0.6s;
  transition: 0.6s;
}

.mil-curtain {
  position: fixed;
  pointer-events: none;
  z-index: 4;
  background-color: rgb(0, 0, 0);
  opacity: 0;
  width: 100%;
  height: 100vh;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}

.mil-main-transition {
  -webkit-transition: 0.6s;
  transition: 0.6s;
  margin-top: 0;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.mil-main-transition .mil-animation-frame {
  opacity: 1;
  margin-top: 0;
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.mil-main-transition .mil-lines-place {
  opacity: 1;
  margin-top: 0;
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

html.is-animating .mil-frame {
  opacity: 0;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

@media screen and (max-width: 1200px) {
  html.is-animating .mil-frame {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}

html.is-animating .mil-curtain {
  opacity: 1;
  pointer-events: all;
}

html.is-animating .mil-main-transition {
  margin-top: 0.1px;
}

html.is-animating .mil-main-transition .mil-animation-frame {
  opacity: 0;
  margin-top: -90px;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

html.is-animating .mil-main-transition .mil-lines-place {
  opacity: 0;
  margin-top: 90px;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

html.is-animating .mil-menu-frame {
  opacity: 0;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}


/* =========================================================
   JMR — MUSIC PLAYER STYLE BACK TO TOP
   Jaysim Music Records
   Artists • Music • Stories
========================================================= */

.jmr-mobile-back-top {
  position: fixed;

  right: 20px;
  bottom: 20px;

  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #FEBF18;
  color: #000;

  border: none;
  border-radius: 14px;

  text-decoration: none;

  z-index: 99999;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transform:
    translateY(25px) scale(.8);

  box-shadow:
    0 8px 0 rgba(0, 0, 0, .12);

  transition:
    opacity .35s ease,
    visibility .35s ease,
    transform .4s cubic-bezier(.16, 1, .3, 1),
    background-color .25s ease,
    box-shadow .25s ease;
}


/* =========================================================
   SMALL LABEL
========================================================= */

.jmr-mobile-back-top::before {
  content: "JMR";

  position: absolute;

  top: -9px;
  right: -5px;

  padding: 3px 6px;

  background: #000;
  color: #FEBF18;

  font-family: Arial, sans-serif;
  font-size: 7px;
  font-weight: 800;

  letter-spacing: 1.5px;

  border-radius: 3px;

  line-height: 1;

  transform: rotate(8deg);

  transition:
    transform .3s ease,
    background-color .25s ease,
    color .25s ease;
}


/* =========================================================
   ARROW
========================================================= */

.jmr-mobile-back-top svg {
  width: 23px;
  height: 23px;

  display: block;

  fill: none;

  stroke: #000;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;

  transition:
    transform .3s cubic-bezier(.16, 1, .3, 1),
    stroke .25s ease;
}


/* =========================================================
   VISIBLE
========================================================= */

.jmr-mobile-back-top.jmr-visible {
  opacity: 1;

  visibility: visible;

  pointer-events: auto;

  transform:
    translateY(0) scale(1);
}


/* =========================================================
   HOVER
========================================================= */

.jmr-mobile-back-top:hover {
  background: #000;

  box-shadow:
    0 8px 0 rgba(254, 191, 24, .9);

  transform:
    translateY(-4px) scale(1.04);
}


.jmr-mobile-back-top:hover::before {
  background: #FEBF18;
  color: #000;

  transform: rotate(-4deg);
}


.jmr-mobile-back-top:hover svg {
  stroke: #FEBF18;

  transform: translateY(-5px);
}


/* =========================================================
   ACTIVE
========================================================= */

.jmr-mobile-back-top:active {
  transform:
    translateY(3px) scale(.96);

  box-shadow:
    0 3px 0 rgba(0, 0, 0, .2);
}


/* =========================================================
   FOCUS
========================================================= */

.jmr-mobile-back-top:focus-visible {
  outline: 2px solid #FEBF18;
  outline-offset: 4px;
}


/* =========================================================
   TABLET + MOBILE
========================================================= */

@media screen and (max-width: 1200px) {

  .jmr-mobile-back-top {
    display: flex;
  }

}


/* =========================================================
   DESKTOP
========================================================= */

@media screen and (min-width: 1201px) {

  .jmr-mobile-back-top {
    display: none !important;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media screen and (max-width: 576px) {

  .jmr-mobile-back-top {
    right: 17px;
    bottom: 17px;

    width: 49px;
    height: 49px;

    border-radius: 12px;
  }

  .jmr-mobile-back-top::before {
    top: -8px;
    right: -4px;

    font-size: 6px;

    padding: 3px 5px;
  }

  .jmr-mobile-back-top svg {
    width: 20px;
    height: 20px;
  }

}


/* =========================================================
   SMALL PHONES
========================================================= */

@media screen and (max-width: 380px) {

  .jmr-mobile-back-top {
    right: 14px;
    bottom: 14px;

    width: 45px;
    height: 45px;

    border-radius: 10px;
  }

  .jmr-mobile-back-top::before {
    font-size: 5px;
    letter-spacing: 1px;
  }

  .jmr-mobile-back-top svg {
    width: 18px;
    height: 18px;
  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

  .jmr-mobile-back-top,
  .jmr-mobile-back-top::before,
  .jmr-mobile-back-top svg {
    transition: none !important;
  }

}

/* =========================================================
   LOGOS
   ========================================================= */

.mil-logo-white,
.mil-logo-black {
  transition:
    opacity 0.35s ease,
    visibility 0.35s ease;
}


/* WHITE LOGO */

.mil-logo-white {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}


/* BLACK LOGO */

.mil-logo-black {
  opacity: 0;
  visibility: hidden;
  z-index: 1;
}


/* ACTIVE */

.mil-logo-white.jmr-active,
.mil-logo-black.jmr-active {
  opacity: 1;
  visibility: visible;
}


/* INACTIVE */

.mil-logo-white.jmr-inactive,
.mil-logo-black.jmr-inactive {
  opacity: 0;
  visibility: hidden;
}

/* =========================================================
   MENU COLOR
   ========================================================= */

.mil-menu-btn.jmr-menu-white {
  color: #fff !important;
}

.mil-menu-btn.jmr-menu-black {
  color: #000 !important;
}


/* The bars inherit the menu button color */

.mil-menu-btn span,
.mil-menu-btn span::before,
.mil-menu-btn span::after {
  background-color: currentColor;
  transition:
    background-color 0.35s ease,
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1),
    opacity 0.25s ease;
}

/* =========================================================
   JMR HEADER COLOR SYSTEM
   ========================================================= */

/*
 * The entire fixed frame gets one color.
 *
 * JavaScript changes:
 *
 * .jmr-header-white
 * .jmr-header-black
 *
 * Nothing is inverted.
 */


/* =========================================================
   HEADER WHITE STATE
   ========================================================= */

.mil-frame.jmr-header-white {

  color: #ffffff !important;
}


/* =========================================================
   HEADER BLACK STATE
   ========================================================= */

.mil-frame.jmr-header-black {

  color: #000000 !important;
}


/* =========================================================
   HEADER ELEMENTS
   ========================================================= */

.mil-frame.jmr-header-white .jmr-header-element {

  color: #ffffff !important;
}


.mil-frame.jmr-header-black .jmr-header-element {

  color: #000000 !important;
}


/* =========================================================
   CURRENT PAGE
   ========================================================= */

.mil-frame .mil-current-page {

  color: inherit !important;
}


/* =========================================================
   BACK TO TOP
   ========================================================= */

.mil-frame .mil-back-to-top {

  color: inherit !important;
}


/* =========================================================
   LINKS
   ========================================================= */

.mil-frame .mil-link,
.mil-frame .mil-link span {

  color: inherit !important;
}


/*
 * Some themes use .mil-dark to force black.
 *
 * Override that ONLY inside the fixed JMR frame.
 */

.mil-frame .mil-dark {

  color: inherit !important;
}


/* =========================================================
   ARROW / ICONS
   ========================================================= */

.mil-frame .mil-arrow-place,
.mil-frame .mil-arrow-place::before,
.mil-frame .mil-arrow-place::after {

  color: inherit !important;
}


/*
 * SVG ICONS
 */

.mil-frame svg {

  color: inherit !important;

  fill: currentColor;
}


/*
 * SVG strokes
 */

.mil-frame svg path,
.mil-frame svg line,
.mil-frame svg polyline,
.mil-frame svg polygon,
.mil-frame svg circle {

  stroke: currentColor;
}


/* =========================================================
   GENERIC HEADER ICONS
   ========================================================= */

.mil-frame i,
.mil-frame [class*="icon"],
.mil-frame [class*="arrow"],
.mil-frame [class*="link"] {

  color: inherit;
}


/* =========================================================
   MENU BUTTON
   ========================================================= */

.mil-frame .mil-menu-btn {

  color: inherit !important;
}


/*
 * Menu bars use currentColor.
 */

.mil-frame .mil-menu-btn span,
.mil-frame .mil-menu-btn span::before,
.mil-frame .mil-menu-btn span::after {

  background-color: currentColor !important;
}


/* =========================================================
   MENU BUTTON COLOR STATES
   ========================================================= */

.mil-frame .mil-menu-btn.jmr-menu-white {

  color: #ffffff !important;
}


.mil-frame .mil-menu-btn.jmr-menu-black {

  color: #000000 !important;
}


/* =========================================================
   LOGO
   ========================================================= */

.mil-frame .mil-logo {

  color: inherit;
}


/*
 * IMPORTANT:
 * Never apply invert() to the logo.
 */

.mil-frame .mil-header-logo {

  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}


/* =========================================================
   REMOVE THEME COLOR OVERRIDES
   ========================================================= */

.mil-frame .mil-link.mil-dark,
.mil-frame .mil-link.mil-dark span {

  color: inherit !important;
}


/* =========================================================
   SMOOTH COLOR TRANSITION
   ========================================================= */

.mil-frame .jmr-header-element,
.mil-frame .mil-link,
.mil-frame .mil-link span,
.mil-frame .mil-current-page,
.mil-frame .mil-menu-btn {

  transition:
    color 0.35s ease,
    background-color 0.35s ease,
    border-color 0.35s ease;
}

/* =========================================================
   JMR FRAME
   INDEPENDENT TOP + BOTTOM COLOR SYSTEM
   ========================================================= */


/* =========================================================
   MAIN FRAME
   ========================================================= */

.mil-frame {
  position: fixed;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  padding: 50px 60px 60px;

  z-index: 9999;

  pointer-events: none;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  box-sizing: border-box;
}


/* =========================================================
   TOP FRAME
   ========================================================= */

.mil-frame-top {
  position: relative;

  width: 100%;
  height: 65px;

  display: flex;

  justify-content: space-between;
  align-items: center;

  box-sizing: border-box;

  pointer-events: none;

  /*
     * The color is controlled by JavaScript.
     */
  color: #fff;

  transition:
    color 0.35s ease;
}


/* =========================================================
   TOP FRAME COLOR STATES
   ========================================================= */

/*
 * DARK BACKGROUND
 * White logo + white menu
 */

.mil-frame-top.jmr-top-dark {
  color: #fff;
}


/*
 * LIGHT BACKGROUND
 * Black logo + black menu
 */

.mil-frame-top.jmr-top-light {
  color: #000;
}


/* =========================================================
   LOGO CONTAINER
   ========================================================= */

.mil-logo {
  position: relative;

  display: inline-flex !important;

  align-items: center;
  justify-content: center;

  width: 65px !important;
  height: 65px !important;

  margin: 0 !important;
  padding: 0 !important;

  flex-shrink: 0;

  font-size: 0 !important;
  line-height: 0 !important;

  text-decoration: none !important;

  color: inherit !important;

  pointer-events: all;

  overflow: visible;
}


/* =========================================================
   LOGO IMAGES
   ========================================================= */

.mil-header-logo {
  position: absolute !important;

  top: 50%;
  left: 50%;

  display: block !important;

  width: 65px !important;
  height: 65px !important;

  min-width: 65px !important;
  min-height: 65px !important;

  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  object-fit: contain !important;

  /*
     * IMPORTANT:
     * Prevent .mil-dark-bg from visually inverting
     * the logo.
     */

  filter: none !important;
  -webkit-filter: none !important;

  mix-blend-mode: normal !important;

  /*
     * Smooth switching.
     */

  transform:
    translate(-50%, -50%) translateZ(0);

  -webkit-transform:
    translate(-50%, -50%) translateZ(0);

  transition:
    opacity 0.35s ease,
    visibility 0.35s ease;

  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  will-change: opacity;
}


/* =========================================================
   WHITE LOGO
   ========================================================= */

.mil-logo-white {
  opacity: 1;
  visibility: visible;

  z-index: 2;
}


/* =========================================================
   BLACK LOGO
   ========================================================= */

.mil-logo-black {
  opacity: 0;
  visibility: hidden;

  z-index: 1;
}


/* =========================================================
   LOGO STATE: TOP DARK
   ========================================================= */

.mil-frame-top.jmr-top-dark .mil-logo-white {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 2;
}

.mil-frame-top.jmr-top-dark .mil-logo-black {
  opacity: 0 !important;
  visibility: hidden !important;
  z-index: 1;
}


/* =========================================================
   LOGO STATE: TOP LIGHT
   ========================================================= */

.mil-frame-top.jmr-top-light .mil-logo-white {
  opacity: 0 !important;
  visibility: hidden !important;
  z-index: 1;
}

.mil-frame-top.jmr-top-light .mil-logo-black {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 2;
}


/* =========================================================
   MENU BUTTON
   ========================================================= */

.mil-menu-btn {
  position: relative;

  width: 32px;
  height: 28px;

  padding: 0;
  margin: 0;

  pointer-events: all;

  z-index: 20;

  cursor: pointer;

  display: flex;

  justify-content: center;
  align-items: center;

  color: inherit;

  /*
     * IMPORTANT:
     * The button inherits the color from
     * .mil-frame-top.
     */

  transition:
    color 0.35s ease,
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1);
}


/* =========================================================
   MENU LINES
   ========================================================= */

.mil-menu-btn span,
.mil-menu-btn span::before,
.mil-menu-btn span::after {
  content: "";

  position: absolute;

  display: block;

  height: 2.5px;

  background-color: currentColor !important;

  border-radius: 0;

  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  transition:
    background-color 0.35s ease,
    transform 0.4s cubic-bezier(0, 0, 0.3642, 1),
    opacity 0.25s ease,
    width 0.3s ease;
}


/*
 * Main line
 */

.mil-menu-btn span {
  position: relative;

  width: 28px;
}


/*
 * Top + bottom lines
 */

.mil-menu-btn span::before,
.mil-menu-btn span::after {
  left: 0;

  width: 28px;
}


/*
 * Top line
 */

.mil-menu-btn span::before {
  top: -9px;
}


/*
 * Bottom line
 */

.mil-menu-btn span::after {
  top: 9px;

  width: 18px;
}


/* =========================================================
   MENU BUTTON — DARK BACKGROUND
   ========================================================= */

.mil-frame-top.jmr-top-dark .mil-menu-btn {
  color: #fff !important;
}


/* =========================================================
   MENU BUTTON — LIGHT BACKGROUND
   ========================================================= */

.mil-frame-top.jmr-top-light .mil-menu-btn {
  color: #000 !important;
}


/* =========================================================
   EXPLICIT MENU COLORS
   ========================================================= */

.mil-menu-btn.jmr-menu-white {
  color: #fff !important;
}

.mil-menu-btn.jmr-menu-black {
  color: #000 !important;
}


/* =========================================================
   ACTIVE MENU BUTTON
   THREE LINES → X
   ========================================================= */

.mil-menu-btn.mil-active span {
  transform: rotate(45deg);
}


/*
 * Middle/top line becomes one diagonal
 */

.mil-menu-btn.mil-active span::before {
  transform:
    translateY(9px) rotate(-90deg);
}


/*
 * Hide third line
 */

.mil-menu-btn.mil-active span::after {
  opacity: 0;

  transform:
    translateY(-9px) rotate(-90deg);
}


/* =========================================================
   FRAME BOTTOM
   ========================================================= */

.mil-frame-bottom {
  position: relative;

  width: 100%;

  display: flex;

  justify-content: space-between;
  align-items: flex-end;

  pointer-events: none;

  /*
     * Bottom has its OWN color.
     * It does not inherit the top state.
     */

  color: #000;

  transition:
    color 0.35s ease;
}


/* =========================================================
   BOTTOM DARK
   ========================================================= */

.mil-frame-bottom.jmr-bottom-dark {
  color: #fff !important;
}


/* =========================================================
   BOTTOM LIGHT
   ========================================================= */

.mil-frame-bottom.jmr-bottom-light {
  color: #000 !important;
}


/* =========================================================
   CURRENT PAGE
   ========================================================= */

.mil-frame-bottom .mil-current-page {
  pointer-events: none;

  width: 300px;

  font-weight: 500;

  text-transform: uppercase;

  letter-spacing: 2px;

  font-size: 12px;

  color: inherit !important;

  transition:
    color 0.35s ease;

  transform:
    rotate(-90deg) translateX(138px) translateY(-138px);
}


/* =========================================================
   BACK TO TOP
   ========================================================= */

.mil-frame-bottom .mil-back-to-top {
  width: 300px;

  pointer-events: all;

  transform:
    rotate(-90deg) translateX(130px) translateY(130px);
}


/* =========================================================
   BACK TO TOP LINK
   ========================================================= */

.mil-frame-bottom .mil-link,
.mil-frame-bottom .mil-link span {
  color: inherit !important;

  transition:
    color 0.35s ease;
}


/*
 * Override theme's .mil-dark class.
 */

.mil-frame-bottom .mil-link.mil-dark {
  color: inherit !important;
}


/* =========================================================
   ARROW / ICONS
   ========================================================= */

.mil-frame-bottom .mil-arrow-place,
.mil-frame-bottom .mil-arrow-place::before,
.mil-frame-bottom .mil-arrow-place::after {
  color: inherit;
}


/*
 * If theme uses borders/backgrounds for arrows,
 * make them follow currentColor.
 */

.mil-frame-bottom .mil-arrow-place::before,
.mil-frame-bottom .mil-arrow-place::after {
  border-color: currentColor;
  background-color: currentColor;
}


/* =========================================================
   DARK BACKGROUND — ALL BOTTOM ELEMENTS
   ========================================================= */

.mil-frame-bottom.jmr-bottom-dark,
.mil-frame-bottom.jmr-bottom-dark .mil-current-page,
.mil-frame-bottom.jmr-bottom-dark .mil-link,
.mil-frame-bottom.jmr-bottom-dark .mil-link span,
.mil-frame-bottom.jmr-bottom-dark i,
.mil-frame-bottom.jmr-bottom-dark svg {
  color: #fff !important;
}


/* =========================================================
   LIGHT BACKGROUND — ALL BOTTOM ELEMENTS
   ========================================================= */

.mil-frame-bottom.jmr-bottom-light,
.mil-frame-bottom.jmr-bottom-light .mil-current-page,
.mil-frame-bottom.jmr-bottom-light .mil-link,
.mil-frame-bottom.jmr-bottom-light .mil-link span,
.mil-frame-bottom.jmr-bottom-light i,
.mil-frame-bottom.jmr-bottom-light svg {
  color: #000 !important;
}


/* =========================================================
   SVG ICONS
   ========================================================= */

.mil-frame-bottom svg {
  fill: currentColor;
  stroke: currentColor;

  transition:
    fill 0.35s ease,
    stroke 0.35s ease;
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media screen and (max-width: 1200px) {

  .mil-frame {
    padding: 0;

    height: 90px;

    z-index: 9999;
  }


  /* =====================================================
       MOBILE TOP
       ===================================================== */

  .mil-frame-top {
    width: 100%;

    height: 90px;

    padding: 0 30px;

    box-sizing: border-box;

    /*
         * Fixed mobile header background.
         */

    background-color: rgba(0, 0, 0, 0.95);

    border-bottom:
      1px solid rgba(255, 255, 255, 0.1);

    /*
         * No inversion.
         */

    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);

    /*
         * MOBILE ALWAYS WHITE.
         */

    color: #fff !important;
  }


  /*
     * Force mobile white logo.
     */

  .mil-frame-top .mil-logo-white {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 2;
  }


  /*
     * Force mobile black logo off.
     */

  .mil-frame-top .mil-logo-black {
    opacity: 0 !important;
    visibility: hidden !important;
    z-index: 1;
  }


  /*
     * Mobile menu always white.
     */

  .mil-frame-top .mil-menu-btn {
    color: #fff !important;
  }


  .mil-frame-top .mil-menu-btn span,
  .mil-frame-top .mil-menu-btn span::before,
  .mil-frame-top .mil-menu-btn span::after {
    background-color: #fff !important;
  }


  /*
     * Mobile logo size.
     */

  .mil-frame-top .mil-logo {
    width: 55px !important;
    height: 55px !important;
  }


  .mil-frame-top .mil-header-logo {
    width: 55px !important;
    height: 55px !important;

    min-width: 55px !important;
    min-height: 55px !important;
  }


  /*
     * Bottom frame is hidden on mobile.
     */

  .mil-frame-bottom {
    display: none;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media screen and (max-width: 992px) {

  .mil-menu-btn {
    transform: scale(0.85);
  }

}

/* =========================================================
   BACKGROUNDS
   ========================================================= */

/* -------------------------------------------
   DARK BACKGROUND
------------------------------------------- */

.mil-dark-bg {
  position: relative;
  background-color: #000;
}


/*
 * IMPORTANT:
 * Do NOT use backdrop-filter: invert(100%).
 *
 * The header/logo is controlled separately by
 * JavaScript using the white and black logo files.
 *
 * This prevents the dark section from physically
 * inverting the fixed header.
 */

.mil-dark-bg::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  pointer-events: none;

  /*
     * Keep this layer visually neutral.
     */
  background: transparent;

  z-index: 1;
}


/* -------------------------------------------
   DARK SECTION CONTENT
------------------------------------------- */

.mil-dark-bg .mi-invert-fix {
  position: relative;

  height: 100%;

  pointer-events: none;

  z-index: 2;
}


/*
 * Allow normal interaction with content.
 */

.mil-dark-bg .mi-invert-fix .container {
  pointer-events: all;
}


/* -------------------------------------------
   SOFT / LIGHT BACKGROUND
------------------------------------------- */

.mil-soft-bg {
  background-color: rgb(242, 242, 242);
}

/* =========================================================
   JMR HEADER COLOR SYSTEM
   ========================================================= */

/*
 * The entire fixed frame gets one color.
 *
 * JavaScript changes:
 *
 * .jmr-header-white
 * .jmr-header-black
 *
 * Nothing is inverted.
 */


/* =========================================================
   HEADER WHITE STATE
   ========================================================= */

.mil-frame.jmr-header-white {

  color: #ffffff !important;
}


/* =========================================================
   HEADER BLACK STATE
   ========================================================= */

.mil-frame.jmr-header-black {

  color: #000000 !important;
}


/* =========================================================
   HEADER ELEMENTS
   ========================================================= */

.mil-frame.jmr-header-white .jmr-header-element {

  color: #ffffff !important;
}


.mil-frame.jmr-header-black .jmr-header-element {

  color: #000000 !important;
}


/* =========================================================
   CURRENT PAGE
   ========================================================= */

.mil-frame .mil-current-page {

  color: inherit !important;
}


/* =========================================================
   BACK TO TOP
   ========================================================= */

.mil-frame .mil-back-to-top {

  color: inherit !important;
}


/* =========================================================
   LINKS
   ========================================================= */

.mil-frame .mil-link,
.mil-frame .mil-link span {

  color: inherit !important;
}


/*
 * Some themes use .mil-dark to force black.
 *
 * Override that ONLY inside the fixed JMR frame.
 */

.mil-frame .mil-dark {

  color: inherit !important;
}


/* =========================================================
   ARROW / ICONS
   ========================================================= */

.mil-frame .mil-arrow-place,
.mil-frame .mil-arrow-place::before,
.mil-frame .mil-arrow-place::after {

  color: inherit !important;
}


/*
 * SVG ICONS
 */

.mil-frame svg {

  color: inherit !important;

  fill: currentColor;
}


/*
 * SVG strokes
 */

.mil-frame svg path,
.mil-frame svg line,
.mil-frame svg polyline,
.mil-frame svg polygon,
.mil-frame svg circle {

  stroke: currentColor;
}


/* =========================================================
   GENERIC HEADER ICONS
   ========================================================= */

.mil-frame i,
.mil-frame [class*="icon"],
.mil-frame [class*="arrow"],
.mil-frame [class*="link"] {

  color: inherit;
}


/* =========================================================
   MENU BUTTON
   ========================================================= */

.mil-frame .mil-menu-btn {

  color: inherit !important;
}


/*
 * Menu bars use currentColor.
 */

.mil-frame .mil-menu-btn span,
.mil-frame .mil-menu-btn span::before,
.mil-frame .mil-menu-btn span::after {

  background-color: currentColor !important;
}


/* =========================================================
   MENU BUTTON COLOR STATES
   ========================================================= */

.mil-frame .mil-menu-btn.jmr-menu-white {

  color: #ffffff !important;
}


.mil-frame .mil-menu-btn.jmr-menu-black {

  color: #000000 !important;
}


/* =========================================================
   LOGO
   ========================================================= */

.mil-frame .mil-logo {

  color: inherit;
}


/*
 * IMPORTANT:
 * Never apply invert() to the logo.
 */

.mil-frame .mil-header-logo {

  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}


/* =========================================================
   REMOVE THEME COLOR OVERRIDES
   ========================================================= */

.mil-frame .mil-link.mil-dark,
.mil-frame .mil-link.mil-dark span {

  color: inherit !important;
}


/* =========================================================
   SMOOTH COLOR TRANSITION
   ========================================================= */

.mil-frame .jmr-header-element,
.mil-frame .mil-link,
.mil-frame .mil-link span,
.mil-frame .mil-current-page,
.mil-frame .mil-menu-btn {

  transition:
    color 0.35s ease,
    background-color 0.35s ease,
    border-color 0.35s ease;
}

/* =====================================================
   RELEASES HERO
====================================================== */

.jmr-releases-hero {
  position: relative;
  overflow: hidden;
  min-height: 760px;
  background:
    linear-gradient(90deg,
      rgba(0, 0, 0, .96) 0%,
      rgba(0, 0, 0, .82) 42%,
      rgba(0, 0, 0, .35) 75%,
      rgba(0, 0, 0, .75) 100%),
    #050505;
}


/* =====================================================
   AMBIENT LIGHT
====================================================== */

.jmr-release-glow {
  position: absolute;

  width: 520px;
  height: 520px;

  top: -180px;
  right: 8%;

  border-radius: 50%;

  background:
    radial-gradient(circle,
      rgba(255, 255, 255, .12),
      rgba(255, 255, 255, 0) 70%);

  filter: blur(30px);

  pointer-events: none;
}


/* =====================================================
   HERO IMAGE
====================================================== */

.jmr-release-hero-image {
  position: absolute;

  top: 0;
  right: 0;

  width: 58%;
  height: 100%;

  overflow: hidden;

  pointer-events: none;
}

.jmr-release-hero-image::after {
  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(90deg,
      #050505 0%,
      rgba(5, 5, 5, .72) 20%,
      rgba(5, 5, 5, .10) 65%,
      rgba(5, 5, 5, .45) 100%);
}

.jmr-release-hero-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  opacity: .72;

  transform: scale(1.04);

  transition:
    transform 1.2s ease,
    opacity .8s ease;
}


/* subtle movement when hovering hero */

.jmr-releases-hero:hover .jmr-release-hero-image img {
  transform: scale(1.08);
  opacity: .82;
}


/* =====================================================
   HERO COPY
====================================================== */

.jmr-release-hero-copy {
  position: relative;
  z-index: 2;

  max-width: 760px;

  padding-top: 40px;
}

.jmr-release-kicker {
  display: inline-flex;
  align-items: center;

  gap: 12px;

  margin-bottom: 24px;

  color: rgba(255, 255, 255, .55);

  font-size: 11px;
  font-weight: 600;

  letter-spacing: 3px;
  text-transform: uppercase;
}

.jmr-release-kicker::before {
  content: "";

  width: 28px;
  height: 1px;

  background: rgba(255, 255, 255, .5);
}


.jmr-release-hero h1 {
  margin-bottom: 30px;

  font-size: clamp(60px, 7vw, 108px);

  line-height: .91;

  letter-spacing: -4px;
}

.jmr-release-hero h1 .mil-thin {
  opacity: .72;
}


.jmr-release-hero-copy>p {
  max-width: 540px;

  margin-bottom: 42px;

  font-size: 16px;

  line-height: 1.8;

  color: rgba(255, 255, 255, .62);
}


/* =====================================================
   ACTIONS
====================================================== */

.jmr-release-actions {
  display: flex;
  align-items: center;

  gap: 30px;

  flex-wrap: wrap;
}


.jmr-release-scroll {
  display: inline-flex;

  align-items: center;

  gap: 12px;

  color: rgba(255, 255, 255, .75);

  font-size: 12px;

  text-transform: uppercase;

  letter-spacing: 1.5px;

  transition:
    color .3s ease,
    transform .3s ease;
}

.jmr-release-scroll:hover {
  color: #fff;

  transform: translateX(4px);
}


.jmr-release-scroll-icon {
  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 255, 255, .25);

  border-radius: 50%;

  transition:
    background .3s ease,
    border-color .3s ease;
}

.jmr-release-scroll:hover .jmr-release-scroll-icon {
  background: #fff;
  border-color: #fff;

  color: #000;
}


/* =====================================================
   FEATURED RELEASE
====================================================== */

.jmr-release-featured {
  position: absolute;

  right: 15px;
  bottom: 70px;

  z-index: 3;

  width: 330px;

  display: flex;

  align-items: center;

  gap: 16px;

  padding: 12px;

  background: rgba(10, 10, 10, .72);

  border: 1px solid rgba(255, 255, 255, .12);

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  transition:
    transform .4s ease,
    background .4s ease;
}

.jmr-release-featured:hover {
  transform: translateY(-6px);

  background: rgba(20, 20, 20, .86);
}


.jmr-release-featured-image {
  position: relative;

  width: 72px;
  height: 72px;

  flex-shrink: 0;

  overflow: hidden;
}


.jmr-release-featured-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform .5s ease;
}

.jmr-release-featured:hover img {
  transform: scale(1.08);
}


.jmr-release-play {
  position: absolute;

  inset: 0;

  display: flex;

  align-items: center;
  justify-content: center;

  background: rgba(0, 0, 0, .25);

  color: #fff;

  font-size: 13px;
}


.jmr-release-featured-info {
  min-width: 0;
}

.jmr-release-featured-info>span {
  display: block;

  margin-bottom: 6px;

  font-size: 9px;

  letter-spacing: 2px;

  color: rgba(255, 255, 255, .45);
}


.jmr-release-featured-info h4 {
  margin: 0 0 8px;

  color: #fff;

  font-size: 15px;

  font-weight: 500;
}


.jmr-release-featured-info a {
  color: rgba(255, 255, 255, .6);

  font-size: 11px;

  transition: color .3s ease;
}

.jmr-release-featured-info a:hover {
  color: #fff;
}

.jmr-release-featured-info a i {
  margin-left: 6px;
}


/* =====================================================
   SCROLL INDICATOR
====================================================== */

.jmr-release-scroll-indicator {
  position: absolute;

  left: 15px;
  bottom: 35px;

  z-index: 4;

  display: flex;

  align-items: center;

  gap: 14px;

  color: rgba(255, 255, 255, .38);

  font-size: 9px;

  letter-spacing: 2px;

  transition: color .3s ease;
}

.jmr-release-scroll-indicator:hover {
  color: #fff;
}

.jmr-release-scroll-indicator i {
  font-size: 11px;

  animation:
    jmrReleaseScroll 1.8s ease-in-out infinite;
}


@keyframes jmrReleaseScroll {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(5px);
  }

}


/* =====================================================
   MOBILE
====================================================== */

@media (max-width: 991px) {

  .jmr-releases-hero {
    min-height: 700px;
  }

  .jmr-release-hero-image {
    width: 100%;
    opacity: .55;
  }

  .jmr-release-hero-image::after {
    background:
      linear-gradient(180deg,
        rgba(0, 0, 0, .55),
        #050505 82%);
  }

  .jmr-release-hero-copy {
    padding-top: 20px;
  }

  .jmr-release-featured {
    position: relative;

    right: auto;
    bottom: auto;

    margin-top: 55px;

    width: 100%;
    max-width: 360px;
  }

  .jmr-release-scroll-indicator {
    display: none;
  }

}


@media (max-width: 575px) {

  .jmr-release-hero h1 {
    font-size: 54px;
    letter-spacing: -2.5px;
  }

  .jmr-release-hero-copy>p {
    font-size: 14px;
    line-height: 1.7;
  }

  .jmr-release-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
  }

}

/* =====================================================
   JMR RELEASES
   Editorial release catalogue
====================================================== */

#releases {
  position: relative;
  overflow: hidden;
}


/* =====================================================
   SECTION INTRO
====================================================== */

#releases .mil-suptitle {
  position: relative;

  display: inline-flex;
  align-items: center;

  gap: 12px;

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 3px;
  text-transform: uppercase;

  color: rgba(0, 0, 0, .5);
}

#releases .mil-suptitle::before {
  content: "";

  width: 28px;
  height: 1px;

  background: currentColor;

  opacity: .5;
}


#releases .mil-h2 {
  max-width: 720px;

  margin: 0;

  letter-spacing: -2px;

  line-height: 1.02;
}

#releases .mil-h2 .mil-thin {
  opacity: .55;
}


#releases .row>.col-lg-4>p {
  max-width: 430px;

  margin: 0 0 5px auto;

  color: rgba(0, 0, 0, .58);

  line-height: 1.75;
}


/* =====================================================
   RELEASE ITEM
====================================================== */

#releases .mil-portfolio-item {
  position: relative;

  display: block;

  text-decoration: none;

  color: inherit;
}


/* =====================================================
   COVER FRAME
====================================================== */

#releases .mil-cover-frame {
  position: relative;

  overflow: hidden;

  background: #111;
}


/*
   Slightly different proportions create
   a more editorial catalogue layout.
*/

#releases .col-lg-6 .mil-cover-frame {
  aspect-ratio: 1.15 / 1;
}

#releases .col-lg-5 .mil-cover-frame {
  aspect-ratio: 1 / 1.08;
}

#releases .col-lg-12 .mil-cover-frame {
  aspect-ratio: 2 / .95;
}


#releases .mil-cover {
  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;
}


/* =====================================================
   RELEASE IMAGE
====================================================== */

#releases .mil-cover img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  transform: scale(1.01);

  transition:
    transform 1s cubic-bezier(.2, .65, .25, 1),
    filter .7s ease;
}


/* subtle dark overlay */

#releases .mil-cover::after {
  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(180deg,
      rgba(0, 0, 0, 0) 55%,
      rgba(0, 0, 0, .18) 100%);

  opacity: .5;

  pointer-events: none;

  transition: opacity .6s ease;
}


/* =====================================================
   HOVER
====================================================== */

#releases .mil-portfolio-item:hover .mil-cover img {
  transform: scale(1.07);
  filter: brightness(.88);
}

#releases .mil-portfolio-item:hover .mil-cover::after {
  opacity: .8;
}


/* =====================================================
   RELEASE INFORMATION
====================================================== */

#releases .mil-descr {
  padding-top: 22px;
}


#releases .mil-labels {
  display: flex;

  align-items: center;

  gap: 18px;
}


/* metadata */

#releases .mil-label {
  font-size: 10px;

  letter-spacing: 1.7px;

  line-height: 1;

  text-transform: uppercase;

  color: rgba(0, 0, 0, .42);
}


/* release type */

#releases .mil-label.mil-accent {
  color: #111;

  font-weight: 600;
}


/* little divider between metadata */

#releases .mil-labels .mil-label+.mil-label {
  position: relative;
}

#releases .mil-labels .mil-label+.mil-label::before {
  content: "";

  position: absolute;

  left: -10px;
  top: 50%;

  width: 3px;
  height: 3px;

  border-radius: 50%;

  background: rgba(0, 0, 0, .25);

  transform: translateY(-50%);
}


/* =====================================================
   RELEASE TITLE
====================================================== */

#releases .mil-descr h4 {
  margin: 0;

  font-size: clamp(22px, 2.1vw, 32px);

  font-weight: 500;

  letter-spacing: -.8px;

  line-height: 1.1;

  transition:
    transform .4s ease,
    color .4s ease;
}


#releases .mil-portfolio-item:hover .mil-descr h4 {
  transform: translateX(5px);
}


/* =====================================================
   ARTIST NAME
====================================================== */

#releases .mil-descr p {
  margin: 0;

  font-size: 12px;

  letter-spacing: 1.2px;

  text-transform: uppercase;

  color: rgba(0, 0, 0, .45);
}


/* =====================================================
   FEATURED RELEASE
====================================================== */

#releases .col-lg-12 .mil-descr h4 {
  font-size: clamp(28px, 3vw, 46px);

  letter-spacing: -1.3px;
}


/* Featured image gets a little more presence */

#releases .col-lg-12 .mil-cover img {
  transform: scale(1.015);
}

#releases .col-lg-12 .mil-portfolio-item:hover .mil-cover img {
  transform: scale(1.055);
}


/* =====================================================
   RELEASE NUMBER / VISUAL DETAIL
====================================================== */

#releases .mil-cover-frame::before {
  content: "";

  position: absolute;

  z-index: 2;

  top: 18px;
  left: 18px;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #fff;

  opacity: .85;

  mix-blend-mode: difference;

  pointer-events: none;
}


/* =====================================================
   IMAGE LOADING / SAFETY
====================================================== */

#releases .mil-cover img {
  max-width: none;

  min-width: 100%;
  min-height: 100%;
}


/* =====================================================
   CTA
====================================================== */

#releases .mil-center {
  position: relative;
}

#releases .mil-button {
  transition:
    transform .35s ease,
    background-color .35s ease;
}

#releases .mil-button:hover {
  transform: translateY(-3px);
}


/* =====================================================
   LARGE SCREENS
====================================================== */

@media (min-width: 1200px) {

  #releases .mil-portfolio-item {
    transition:
      transform .5s cubic-bezier(.2, .65, .25, 1);
  }

  /*
       Creates a little asymmetry without
       disturbing the Bootstrap layout.
    */

  #releases .col-lg-5 .mil-portfolio-item {
    margin-top: 90px;
  }

  #releases .col-lg-12 .mil-portfolio-item {
    margin-top: 20px;
  }

}


/* =====================================================
   TABLET
====================================================== */

@media (max-width: 991px) {

  #releases .row>.col-lg-4>p {
    margin: 25px 0 0;

    max-width: 600px;
  }


  #releases .mil-h2 {
    letter-spacing: -1.5px;
  }


  #releases .col-lg-5 .mil-portfolio-item {
    margin-top: 0;
  }


  #releases .col-lg-6 .mil-cover-frame,
  #releases .col-lg-5 .mil-cover-frame {
    aspect-ratio: 1 / 1;
  }


  #releases .col-lg-12 .mil-cover-frame {
    aspect-ratio: 1.5 / 1;
  }

}


/* =====================================================
   MOBILE
====================================================== */

@media (max-width: 575px) {

  #releases {
    overflow: hidden;
  }


  #releases .mil-h2 {
    font-size: 42px;

    letter-spacing: -1.5px;
  }


  #releases .mil-descr {
    padding-top: 17px;
  }


  #releases .mil-descr h4 {
    font-size: 24px;

    letter-spacing: -.5px;
  }


  #releases .col-lg-12 .mil-descr h4 {
    font-size: 28px;
  }


  #releases .mil-cover-frame,
  #releases .col-lg-6 .mil-cover-frame,
  #releases .col-lg-5 .mil-cover-frame,
  #releases .col-lg-12 .mil-cover-frame {
    aspect-ratio: 1 / 1;
  }


  #releases .mil-labels {
    gap: 15px;
  }


  #releases .mil-label {
    font-size: 9px;
    letter-spacing: 1.3px;
  }


  #releases .mil-descr p {
    font-size: 10px;
    letter-spacing: 1px;
  }


  #releases .mil-mb-90 {
    margin-bottom: 65px;
  }

}

/* =========================================================
   JMR SIGNED ARTIST HERO
   ========================================================= */

.jmr-artist-hero {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background: #0b0b0b;
}


/* =========================================================
   AMBIENT BACKGROUND
   ========================================================= */

.jmr-artist-glow {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background:
    radial-gradient(circle at 75% 45%,
      rgba(254, 191, 24, 0.18) 0%,
      rgba(254, 191, 24, 0.07) 25%,
      transparent 55%),
    radial-gradient(circle at 20% 80%,
      rgba(255, 255, 255, 0.04) 0%,
      transparent 40%);

  opacity: 0.9;
}


/* =========================================================
   HERO IMAGE
   ========================================================= */

.jmr-artist-hero-image {
  position: absolute;
  top: 0;
  right: 0;

  width: 58%;
  height: 100%;

  z-index: 1;
  overflow: hidden;
}


.jmr-artist-hero-image::before {
  content: "";
  position: absolute;
  inset: 0;

  z-index: 2;
  pointer-events: none;

  background:
    linear-gradient(90deg,
      #0b0b0b 0%,
      rgba(11, 11, 11, 0.92) 12%,
      rgba(11, 11, 11, 0.55) 35%,
      rgba(11, 11, 11, 0.08) 70%,
      transparent 100%);
}


.jmr-artist-hero-image::after {
  content: "";
  position: absolute;
  inset: 0;

  z-index: 2;
  pointer-events: none;

  background:
    linear-gradient(180deg,
      rgba(11, 11, 11, 0.35) 0%,
      transparent 30%,
      transparent 70%,
      rgba(11, 11, 11, 0.8) 100%);
}


.jmr-artist-hero-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  display: block;

  filter:
    brightness(0.82) contrast(1.08) saturate(0.92);

  transform: scale(1.02);

  transition:
    transform 1.2s ease,
    filter 0.8s ease;
}


.jmr-artist-hero:hover .jmr-artist-hero-image img {
  transform: scale(1.05);

  filter:
    brightness(0.88) contrast(1.08) saturate(1);
}


/* =========================================================
   HERO CONTENT
   ========================================================= */

.jmr-artist-hero .mil-banner-content {
  position: relative;
  z-index: 5;

  min-height: 100vh;

  display: flex;
  align-items: center;

  padding-top: 120px;
  padding-bottom: 100px;
}


.jmr-artist-hero .container {
  position: relative;
  z-index: 5;
}


/* =========================================================
   BREADCRUMBS
   ========================================================= */

.jmr-artist-hero .mil-breadcrumbs {
  position: relative;
  z-index: 10;

  margin-bottom: 45px;
}


.jmr-artist-hero .mil-breadcrumbs li:last-child {
  color: #FEBF18 !important;
}


/* =========================================================
   HERO COPY
   ========================================================= */

.jmr-artist-hero-copy {
  position: relative;

  max-width: 720px;

  z-index: 5;
}


.jmr-artist-eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 22px;

  color: #FEBF18;

  font-family: inherit;
  font-size: 11px;
  font-weight: 600;

  letter-spacing: 0.28em;
  text-transform: uppercase;

  opacity: 0.95;
}


.jmr-artist-eyebrow::before {
  content: "";

  width: 34px;
  height: 1px;

  margin-right: 14px;

  background: #FEBF18;
}


.jmr-artist-hero-copy h1 {
  margin: 0 0 28px;

  font-size: clamp(58px, 7vw, 108px);
  line-height: 0.92;

  letter-spacing: -0.045em;

  text-transform: uppercase;
}


.jmr-artist-hero-copy h1 .mil-thin {
  color: #FEBF18;
  font-weight: 300;
}


.jmr-artist-hero-copy p {
  max-width: 570px;

  margin: 0 0 35px;

  color: rgba(255, 255, 255, 0.68);

  font-size: 16px;
  line-height: 1.75;
}


/* =========================================================
   ACTIONS
   ========================================================= */

.jmr-artist-actions {
  display: flex;
  align-items: center;

  gap: 28px;

  margin-top: 10px;
}


.jmr-artist-actions .mil-button {
  position: relative;

  min-width: 185px;

  border-color: #FEBF18;

  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}


.jmr-artist-actions .mil-button:hover {
  background: #FEBF18;
  color: #0b0b0b;

  transform: translateY(-2px);
}


/* Explore music link */

.jmr-artist-scroll {
  display: inline-flex;
  align-items: center;

  gap: 12px;

  color: rgba(255, 255, 255, 0.82);

  font-size: 12px;
  font-weight: 500;

  letter-spacing: 0.08em;
  text-transform: uppercase;

  text-decoration: none;

  transition: color 0.3s ease;
}


.jmr-artist-scroll:hover {
  color: #FEBF18;
}


.jmr-artist-scroll-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(254, 191, 24, 0.65);
  border-radius: 50%;

  color: #FEBF18;

  font-size: 11px;

  transition:
    background-color 0.3s ease,
    transform 0.3s ease;
}


.jmr-artist-scroll:hover .jmr-artist-scroll-icon {
  background: #FEBF18;
  color: #0b0b0b;

  transform: scale(1.08);
}


/* =========================================================
   ARTIST FEATURED CARD
   ========================================================= */

.jmr-artist-featured {
  position: absolute;

  right: 0;
  bottom: 105px;

  width: 390px;

  display: flex;
  align-items: stretch;

  background: rgba(15, 15, 15, 0.78);

  border: 1px solid rgba(255, 255, 255, 0.10);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  z-index: 10;

  overflow: hidden;

  box-shadow:
    0 25px 70px rgba(0, 0, 0, 0.45);

  transition:
    transform 0.4s ease,
    border-color 0.4s ease;
}


.jmr-artist-featured:hover {
  transform: translateY(-6px);

  border-color: rgba(254, 191, 24, 0.4);
}


/* Featured image */

.jmr-artist-featured-image {
  position: relative;

  width: 125px;
  min-width: 125px;

  height: 145px;

  overflow: hidden;
}


.jmr-artist-featured-image img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  display: block;

  transition: transform 0.5s ease;
}


.jmr-artist-featured:hover .jmr-artist-featured-image img {
  transform: scale(1.07);
}


/* Featured information */

.jmr-artist-featured-info {
  flex: 1;

  padding: 20px 22px;
}


.jmr-artist-featured-info>span {
  display: block;

  margin-bottom: 8px;

  color: #FEBF18;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.2em;

  text-transform: uppercase;
}


.jmr-artist-featured-info h4 {
  margin: 0 0 7px;

  color: #fff;

  font-size: 19px;
  font-weight: 500;

  line-height: 1.2;
}


.jmr-artist-featured-info p {
  margin: 0 0 10px;

  color: rgba(255, 255, 255, 0.52);

  font-size: 11px;
  line-height: 1.5;
}


.jmr-artist-featured-info a {
  display: inline-flex;
  align-items: center;

  gap: 8px;

  color: #fff;

  font-size: 10px;
  font-weight: 500;

  letter-spacing: 0.08em;

  text-transform: uppercase;
  text-decoration: none;

  transition: color 0.3s ease;
}


.jmr-artist-featured-info a i {
  color: #FEBF18;

  transition: transform 0.3s ease;
}


.jmr-artist-featured-info a:hover {
  color: #FEBF18;
}


.jmr-artist-featured-info a:hover i {
  transform: translateX(4px);
}


/* =========================================================
   SCROLL INDICATOR
   ========================================================= */

.jmr-artist-scroll-indicator {
  position: absolute;

  left: 0;
  bottom: 42px;

  display: inline-flex;
  align-items: center;

  gap: 15px;

  color: rgba(255, 255, 255, 0.45);

  font-size: 9px;
  font-weight: 500;

  letter-spacing: 0.22em;

  text-decoration: none;

  z-index: 10;

  transition: color 0.3s ease;
}


.jmr-artist-scroll-indicator i {
  color: #FEBF18;

  font-size: 12px;

  animation: jmrArtistScroll 1.8s infinite ease-in-out;
}


.jmr-artist-scroll-indicator:hover {
  color: #fff;
}


@keyframes jmrArtistScroll {

  0%,
  100% {
    transform: translateY(0);
    opacity: 0.55;
  }

  50% {
    transform: translateY(6px);
    opacity: 1;
  }

}


/* =========================================================
   SUBTLE HERO OVERLAY
   ========================================================= */

.jmr-artist-hero::after {
  content: "";

  position: absolute;
  inset: 0;

  z-index: 3;

  pointer-events: none;

  background:
    linear-gradient(90deg,
      rgba(11, 11, 11, 0.35),
      transparent 55%);

  opacity: 0.7;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 1199px) {

  .jmr-artist-hero-image {
    width: 62%;
  }


  .jmr-artist-featured {
    right: 20px;
    width: 350px;
  }


  .jmr-artist-hero-copy {
    max-width: 620px;
  }

}


/* =========================================================
   MOBILE / TABLET
   ========================================================= */

@media screen and (max-width: 991px) {

  .jmr-artist-hero {
    min-height: auto;
  }


  .jmr-artist-hero .mil-banner-content {
    min-height: 850px;

    align-items: flex-start;

    padding-top: 150px;
    padding-bottom: 130px;
  }


  .jmr-artist-hero-image {
    width: 100%;
    height: 100%;

    opacity: 0.75;
  }


  .jmr-artist-hero-image::before {
    background:
      linear-gradient(180deg,
        #0b0b0b 0%,
        rgba(11, 11, 11, 0.72) 30%,
        rgba(11, 11, 11, 0.35) 55%,
        rgba(11, 11, 11, 0.92) 100%);
  }


  .jmr-artist-hero-image::after {
    background:
      linear-gradient(180deg,
        rgba(11, 11, 11, 0.35),
        transparent 35%,
        rgba(11, 11, 11, 0.8) 100%);
  }


  .jmr-artist-hero-copy {
    max-width: 650px;
  }


  .jmr-artist-hero-copy h1 {
    font-size: clamp(58px, 11vw, 90px);
  }


  .jmr-artist-featured {
    position: relative;

    right: auto;
    bottom: auto;

    width: 100%;
    max-width: 390px;

    margin-top: 70px;
  }


  .jmr-artist-scroll-indicator {
    bottom: 30px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 575px) {

  .jmr-artist-hero .mil-banner-content {
    min-height: 820px;

    padding-top: 125px;
    padding-bottom: 100px;
  }


  .jmr-artist-hero .mil-breadcrumbs {
    margin-bottom: 38px;
  }


  .jmr-artist-eyebrow {
    font-size: 9px;

    letter-spacing: 0.20em;
  }


  .jmr-artist-eyebrow::before {
    width: 22px;
    margin-right: 10px;
  }


  .jmr-artist-hero-copy h1 {
    margin-bottom: 22px;

    font-size: clamp(48px, 15vw, 70px);

    letter-spacing: -0.04em;
  }


  .jmr-artist-hero-copy p {
    max-width: 100%;

    font-size: 14px;
    line-height: 1.7;

    margin-bottom: 28px;
  }


  .jmr-artist-actions {
    flex-direction: column;
    align-items: flex-start;

    gap: 20px;
  }


  .jmr-artist-actions .mil-button {
    min-width: 175px;
  }


  .jmr-artist-featured {
    max-width: 100%;

    margin-top: 55px;
  }


  .jmr-artist-featured-image {
    width: 105px;
    min-width: 105px;

    height: 125px;
  }


  .jmr-artist-featured-info {
    padding: 17px 16px;
  }


  .jmr-artist-featured-info h4 {
    font-size: 17px;
  }


  .jmr-artist-featured-info p {
    font-size: 10px;
  }


  .jmr-artist-scroll-indicator {
    left: 15px;
    bottom: 25px;

    font-size: 8px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .jmr-artist-hero-image img,
  .jmr-artist-featured,
  .jmr-artist-featured-image img,
  .jmr-artist-scroll-indicator i {
    animation: none !important;
    transition: none !important;
  }

}

/* =========================================
   BAWA ALA - ARTIST STORY
   ========================================= */

#artist-story {
  position: relative;
}

/* -----------------------------------------
   Artist Information
   ----------------------------------------- */

#artist-story .mil-info {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 50px;
  padding: 35px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  font-size: 14px;
  line-height: 1.5;
  color: #777;
}

#artist-story .mil-info>div {
  white-space: nowrap;
}

#artist-story .mil-info .mil-dark {
  color: #111;
  font-weight: 500;
}


/* -----------------------------------------
   Artist Gallery
   ----------------------------------------- */

#artist-story .mil-2-slider {
  width: 100%;
  overflow: hidden;
}

#artist-story .mil-2-slider .swiper-slide {
  height: auto;
}

#artist-story .mil-image-frame {
  position: relative;
  overflow: hidden;
  background: #eee;
}

#artist-story .mil-image-frame img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}


/* Gallery images */

#artist-story .mil-square {
  aspect-ratio: 1 / 1;
}

#artist-story .mil-square>img {
  transition: transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1);
}

#artist-story .mil-square:hover>img {
  transform: scale(1.05);
}


/* -----------------------------------------
   Zoom Button
   ----------------------------------------- */

#artist-story .mil-zoom-btn {
  position: absolute;
  right: 20px;
  bottom: 20px;

  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: rgba(255, 255, 255, 0.95);
  border-radius: 50%;

  opacity: 0;
  transform: translateY(10px);

  transition:
    opacity 0.3s ease,
    transform 0.3s ease,
    background 0.3s ease;
}

#artist-story .mil-image-frame:hover .mil-zoom-btn {
  opacity: 1;
  transform: translateY(0);
}

#artist-story .mil-zoom-btn:hover {
  background: #111;
}

#artist-story .mil-zoom-btn img {
  width: 18px;
  height: 18px;
  transition: filter 0.3s ease;
}

#artist-story .mil-zoom-btn:hover img {
  filter: brightness(0) invert(1);
}


/* -----------------------------------------
   Story Sections
   ----------------------------------------- */

#artist-story .row {
  position: relative;
}

#artist-story h3 {
  margin: 0;
  color: #111;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

#artist-story p {
  margin: 0;
  color: #666;
  font-size: 16px;
  line-height: 1.8;
}

#artist-story p+p {
  margin-top: 25px;
}


/* -----------------------------------------
   Section Number / Visual Accent
   ----------------------------------------- */

#artist-story .story-section {
  position: relative;
}

#artist-story .story-section::before {
  content: "";
  position: absolute;
  left: -30px;
  top: 8px;

  width: 4px;
  height: 45px;

  background: #111;
}


/* -----------------------------------------
   Featured Image
   ----------------------------------------- */

#artist-story .mil-horizontal {
  position: relative;
  overflow: hidden;
}

#artist-story .mil-horizontal>img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;

  transition: transform 0.8s cubic-bezier(0.2, 0.65, 0.3, 1);
}

#artist-story .mil-horizontal:hover>img {
  transform: scale(1.025);
}


/* -----------------------------------------
   JMR Connection
   ----------------------------------------- */

#artist-story .jmr-story {
  padding-top: 20px;
}

#artist-story .jmr-story strong {
  color: #111;
  font-weight: 600;
}


/* -----------------------------------------
   Artistic Vision
   ----------------------------------------- */

#artist-story .artist-vision {
  padding-bottom: 80px;
}

#artist-story .artist-vision p:last-child {
  color: #111;
  font-size: 18px;
  line-height: 1.75;
}


/* -----------------------------------------
   Artist Navigation
   ----------------------------------------- */

#artist-story .mil-works-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding-top: 40px;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}

#artist-story .mil-works-nav a {
  transition: opacity 0.3s ease;
}

#artist-story .mil-works-nav a:hover {
  opacity: 0.55;
}


/* -----------------------------------------
   Responsive - Tablet
   ----------------------------------------- */

@media (max-width: 991px) {

  #artist-story .mil-info {
    gap: 15px 30px;
  }

  #artist-story .row {
    margin-bottom: 0;
  }

  #artist-story h3 {
    margin-bottom: 30px;
  }

  #artist-story p {
    font-size: 15px;
    line-height: 1.75;
  }

  #artist-story .mil-zoom-btn {
    opacity: 1;
    transform: none;

    width: 42px;
    height: 42px;

    right: 15px;
    bottom: 15px;
  }

}


/* -----------------------------------------
   Responsive - Mobile
   ----------------------------------------- */

@media (max-width: 767px) {

  #artist-story .mil-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px 20px;

    padding: 25px 0;
  }

  #artist-story .mil-info>div {
    white-space: normal;
    font-size: 13px;
  }

  #artist-story .mil-p-120-0 {
    padding-top: 70px;
  }

  #artist-story .mil-p-120-120 {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  #artist-story h3 {
    font-size: 28px;
    line-height: 1.2;
    margin-bottom: 30px;
  }

  #artist-story p {
    font-size: 15px;
    line-height: 1.7;
  }

  #artist-story p+p {
    margin-top: 20px;
  }

  #artist-story .mil-horizontal {
    min-height: 300px;
  }

  #artist-story .mil-works-nav {
    gap: 20px;
  }

  #artist-story .mil-works-nav a {
    font-size: 13px;
  }

}


/* -----------------------------------------
   Small Mobile
   ----------------------------------------- */

@media (max-width: 480px) {

  #artist-story .mil-info {
    grid-template-columns: 1fr;
  }

  #artist-story h3 {
    font-size: 25px;
  }

  #artist-story .mil-works-nav {
    flex-direction: column;
    align-items: flex-start;
  }

  #artist-story .mil-works-nav a:nth-child(2) {
    align-self: center;
  }

  #artist-story .mil-works-nav a:last-child {
    align-self: flex-end;
  }

}

/* =========================================
   BAWA ALA SOCIAL NAVIGATION
   ========================================= */

.bawa-social-nav {
  width: 100%;
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}


/* Social icons wrapper behavior */

.bawa-social-icon {
  width: 46px;
  height: 46px;

  min-width: 46px;
  min-height: 46px;

  display: flex !important;
  align-items: center;
  justify-content: center;

  padding: 0 !important;
  margin: 0 !important;

  border-radius: 50%;

  background: #f5f5f5;

  text-decoration: none;

  font-size: 17px;
  line-height: 1;

  transition: all 0.3s ease;
}


/* Brand colors */

.bawa-social-icon.instagram {
  color: #E1306C;
}

.bawa-social-icon.tiktok {
  color: #000;
}

.bawa-social-icon.x-twitter {
  color: #000;
}

.bawa-social-icon.facebook {
  color: #1877F2;
}


/* Hover */

.bawa-social-icon:hover {
  transform: translateY(-3px);
  background: #111;
}

.bawa-social-icon.instagram:hover {
  color: #E1306C;
}

.bawa-social-icon.tiktok:hover,
.bawa-social-icon.x-twitter:hover {
  color: #fff;
}

.bawa-social-icon.facebook:hover {
  color: #fff;
  background: #1877F2;
}


/* Release */

.bawa-release-link {
  margin-left: auto !important;

  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  gap: 10px;

  white-space: nowrap;

  padding: 12px 0 !important;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 991px) {

  .bawa-social-nav {
    gap: 15px;
  }

  .bawa-social-icon {
    width: 44px;
    height: 44px;

    min-width: 44px;
    min-height: 44px;
  }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

  .bawa-social-nav {
    width: 100%;

    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 20px !important;

    padding: 0 !important;

    margin: 0 !important;
  }


  /* -------------------------------------
       Social icon row
       ------------------------------------- */

  .bawa-social-nav .bawa-social-icon {
    width: 44px;
    height: 44px;

    min-width: 44px;
    min-height: 44px;

    flex: 0 0 44px;

    margin: 0 !important;
  }


  /* Put icons beside each other */

  .bawa-social-nav .bawa-social-icon:first-child {
    margin-left: 0 !important;
  }


  /*
       The four icons are grouped visually
       using flex-wrap.
    */

  .bawa-social-icon {
    display: inline-flex !important;
  }


  /* -------------------------------------
       Release button
       ------------------------------------- */

  .bawa-release-link {
    width: 100% !important;

    max-width: 320px;

    margin: 5px 0 0 !important;

    padding: 13px 20px !important;

    display: flex !important;

    align-items: center;
    justify-content: center;

    border: 1px solid #ddd;
    border-radius: 50px;

    box-sizing: border-box;

    font-size: 13px;
  }

}


/* =========================================
   SMALL PHONES
   ========================================= */

@media (max-width: 400px) {

  .bawa-social-nav {
    gap: 16px !important;
  }

  .bawa-social-nav .bawa-social-icon {
    width: 42px;
    height: 42px;

    min-width: 42px;
    min-height: 42px;

    flex-basis: 42px;
  }

  .bawa-release-link {
    max-width: 290px;

    padding: 12px 16px !important;
  }

}

@media (max-width: 767px) {

  .bawa-social-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
  }

  .bawa-social-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
  }

  .bawa-release-link {
    width: 100% !important;
    max-width: 320px;
    margin: 0 !important;
  }

}