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

Name: Treto
Version: 1.0
Developer: MillerDigitalDesign
Author:	bslthemes (https://bslthemes.com)

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

1. common
    - main
    - typography
    - button
    - fields
    - spaces
2. components
    - frame
    - page
    - pagination
    - top panel
    - social panel
    - footer
    - menu button
    - banner
    - about
    - skills
    - iconbox
    - experience
    - reviews
    - blog
    - price
    - call to action
    - comments
    - portfolio
    - contact

------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
/* -------------------------------------------

main

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

::-webkit-scrollbar {
  width: 0.25rem;
}

::-webkit-scrollbar-track {
  background: rgba(51, 51, 51, 0.18);
}

::-webkit-scrollbar-thumb {
  background: #4DB6AC;
}

.container-full {
  width: 100%;
}

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

typography

------------------------------------------- */
body {
  font-family: "Jost", sans-serif;
  font-size: 1.125rem; /* 18px -> 1.125rem */
  line-height: 170%;
  color: #333333;
  background-color: #F5F5F5;
  overscroll-behavior: none;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
body:after {
  content: "";
  position: fixed;
  pointer-events: none;
  z-index: 999999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url(../img/bg.png);
  opacity: 0.06;
}

p {
  color: #333333;
}

h1 {
  line-height: 100%;
  font-size: 4.444rem; /* 80px -> 4.444rem */
  text-shadow: 0.278rem 0.278rem 0px rgba(51, 51, 51, 0.18); /* 5px -> 0.278rem */
}
@media screen and (max-width: 992px) {
  h1 {
    font-size: 2.222rem; /* 40px -> 2.222rem */
  }
}

h2 {
  line-height: 100%;
  font-size: 3.222rem; /* 58px -> 3.222rem */
  text-shadow: 0.278rem 0.278rem 0px rgba(51, 51, 51, 0.18);
}
@media screen and (max-width: 1400px) {
  h2 {
    font-size: 2.667rem; /* 48px -> 2.667rem */
  }
}
@media screen and (max-width: 992px) {
  h2 {
    font-size: 1.778rem; /* 32px -> 1.778rem */
  }
}

h3 {
  line-height: 100%;
  font-size: 2.222rem; /* 40px -> 2.222rem */
  text-shadow: 0.278rem 0.278rem 0px rgba(51, 51, 51, 0.18);
}
@media screen and (max-width: 1400px) {
  h3 {
    font-size: 1.667rem; /* 30px -> 1.667rem */
  }
}
@media screen and (max-width: 992px) {
  h3 {
    font-size: 1.222rem; /* 22px -> 1.222rem */
  }
}

h4 {
  line-height: 100%;
  font-size: 1.222rem; /* 22px -> 1.222rem */
}

.mil-text-sm {
  font-size: 0.778rem !important; /* 14px -> 0.778rem */
}

.mil-text-lg {
  font-size: 1.125rem !important; /* 18px -> 1.125rem */
}

.mil-text-xl {
  font-size: 1.111rem !important; /* 20px -> 1.111rem */
}

.mil-up {
  text-transform: uppercase;
}

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

.mil-text-right-adapt {
  text-align: right;
}
@media screen and (max-width: 1200px) {
  .mil-text-right-adapt {
    text-align: left;
  }
}

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

.mil-text-center-adapt {
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .mil-text-center-adapt {
    text-align: left;
  }
}

.mil-upper {
  font-size: 0.889rem; /* 16px -> 0.889rem */
  line-height: 100%;
  text-transform: uppercase;
  font-weight: 600;
  color: #333333;
}
.mil-upper i {
  margin-right: 0.556rem; /* 10px -> 0.556rem */
  font-size: 1.556rem; /* 28px -> 1.556rem */
  display: inline;
  vertical-align: middle;
}
.mil-upper.mil-upper-sm {
  font-size: 0.778rem; /* 14px -> 0.778rem */
}

.mil-accent {
  color: #4DB6AC;
}

.mil-dark {
  color: #333333;
}

.mil-left-offset {
  padding-left: 3.333rem; /* 60px -> 3.333rem */
}
@media screen and (max-width: 1200px) {
  .mil-left-offset {
    padding: 0;
  }
}

.mil-left-offset-xsm {
  padding-left: 0.833rem; /* 15px -> 0.833rem */
}
@media screen and (max-width: 1200px) {
  .mil-left-offset-xsm {
    padding: 0;
  }
}

.mil-left-offset-sm {
  padding-left: 1.667rem; /* 30px -> 1.667rem */
}
@media screen and (max-width: 1200px) {
  .mil-left-offset-sm {
    padding: 0;
  }
}

.mil-left-offset-md {
  padding-left: 6.667rem; /* 120px -> 6.667rem */
}
@media screen and (max-width: 1200px) {
  .mil-left-offset-md {
    padding: 0;
  }
}

.mil-left-offset-lg {
  padding-left: 14.444rem; /* 260px -> 14.444rem */
}
@media screen and (max-width: 992px) {
  .mil-left-offset-lg {
    padding: 0;
  }
}

.mil-flex {
  display: flex;
}

.mil-text-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.mil-icon-row {
  display: flex;
  align-items: center;
}

.mil-text-list li {
  list-style-type: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 0.556rem; /* 10px -> 0.556rem */
  color: #333333;
}
.mil-text-list li:before {
  content: "";
  display: block;
  width: 0.444rem; /* 8px -> 0.444rem */
  height: 0.444rem; /* 8px -> 0.444rem */
  border-radius: 50%;
  background-color: #4DB6AC;
  margin-right: 0.833rem; /* 15px -> 0.833rem */
}

blockquote {
  font-style: italic;
  color: #333333;
  display: flex;
  align-items: flex-start;
}
blockquote:before {
  content: '"';
  display: block;
  transform: translateY(0.389rem); /* 7px -> 0.389rem */
  margin-right: 1.667rem; /* 30px -> 1.667rem */
  font-size: 2rem; /* 36px -> 2rem */
  font-weight: 600;
  color: #4DB6AC;
}

label.error {
  color: red;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  position: relative;
  top: -0.833rem; /* -15px -> -0.833rem */
  line-height: 0;
}

label label.error {
  top: 0.278rem; /* 5px -> 0.278rem */
}

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

button

------------------------------------------- */
.mil-buttons-frame {
  display: flex;
}
.mil-buttons-frame .mil-button {
  margin-right: 0.833rem; /* 15px -> 0.833rem */
}
.mil-buttons-frame .mil-button:last-child {
  margin-right: 0;
}
@media screen and (max-width: 1200px) {
  .mil-buttons-frame {
    justify-content: center;
  }
}
@media screen and (max-width: 992px) {
  .mil-buttons-frame {
    flex-direction: column;
  }
  .mil-buttons-frame .mil-button {
    margin-right: 0;
    margin-bottom: 0.833rem; /* 15px -> 0.833rem */
  }
  .mil-buttons-frame .mil-button:last-child {
    margin-right: 0;
    margin-bottom: 0;
  }
}

.mil-button {
  white-space: nowrap;
  width: auto;
  display: inline-flex;
  background-color: #4DB6AC;
  height: 3.333rem; /* 60px -> 3.333rem */
  padding: 0 2.222rem; /* 40px -> 2.222rem */
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  text-decoration: none;
  border: solid 0.111rem #4DB6AC; /* 2px -> 0.111rem */
  color: #F5F5F5;
  box-shadow: 0.389rem 0.389rem 0px 0px rgba(77, 182, 172, 0.18); /* 7px -> 0.389rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  cursor: pointer;
}
.mil-button.mil-type-2 {
  border-color: #333333;
  background-color: #F5F5F5;
  color: #333333;
  box-shadow: 0.389rem 0.389rem 0px 0px rgba(51, 51, 51, 0.18);
}
.mil-button.mil-type-2:hover {
  box-shadow: 0px 0px 0px 0px rgba(51, 51, 51, 0.18);
}
.mil-button:hover {
  box-shadow: 0px 0px 0px 0px rgba(77, 182, 172, 0.18);
}

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

fields

------------------------------------------- */
label {
  display: block;
  margin-bottom: 0.833rem; /* 15px -> 0.833rem */
}

input {
  height: 3.333rem; /* 60px -> 3.333rem */
  width: 100%;
  border: 0.056rem solid #e0e0e0; /* 1px -> 0.056rem */
  background-color: #f7f7f7;
  padding: 0 1.667rem; /* 30px -> 1.667rem */
  font-family: "Jost", sans-serif;
  font-size: 0.889rem; /* 16px -> 0.889rem */
  color: #333333;
  transition: all 0.3s ease;
}
input:focus {
  outline: none;
  border-color: #4DB6AC;
  background-color: #fff;
  box-shadow: 0 0 0 0.111rem rgba(77, 182, 172, 0.2); /* 2px -> 0.111rem */
}

textarea {
  padding: 0.833rem 1.667rem; /* 15px 30px -> 0.833rem 1.667rem */
  height: 6.667rem; /* 120px -> 6.667rem */
  width: 100%;
  border: 0.056rem solid #e0e0e0; /* 1px -> 0.056rem */
  background-color: #f7f7f7;
  font-family: "Jost", sans-serif;
  font-size: 0.889rem; /* 16px -> 0.889rem */
  color: #333333;
  resize: none;
  transition: all 0.3s ease;
}
textarea:focus {
  outline: none;
  border-color: #4DB6AC;
  background-color: #fff;
  box-shadow: 0 0 0 0.111rem rgba(77, 182, 172, 0.2); /* 2px -> 0.111rem */
}

.mil-checkbox {
  padding-left: 2.222rem; /* 40px -> 2.222rem */
  display: block;
  position: relative;
  cursor: pointer;
  user-select: none;
  margin-bottom: 0;
}
.mil-checkbox a {
  color: #4DB6AC;
}

.mil-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.mil-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.389rem; /* 25px -> 1.389rem */
  width: 1.389rem; /* 25px -> 1.389rem */
  background-color: #f3f3f3;
}

.mil-checkbox input:checked ~ .mil-checkmark {
  background-color: #4DB6AC;
}

.mil-checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.mil-checkbox input:checked ~ .mil-checkmark:after {
  display: block;
}

.mil-checkbox .mil-checkmark:after {
  left: 0.556rem; /* 10px -> 0.556rem */
  top: 0.333rem; /* 6px -> 0.333rem */
  width: 0.278rem; /* 5px -> 0.278rem */
  height: 0.556rem; /* 10px -> 0.556rem */
  border: solid rgb(255, 255, 255);
  border-width: 0 0.111rem 0.111rem 0; /* 2px -> 0.111rem */
  transform: rotate(45deg) scale(1.2);
}

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

spaces

------------------------------------------- */
.mil-mb-10 {
  margin-bottom: 0.556rem; /* 10px -> 0.556rem */
}

.mil-mb-15 {
  margin-bottom: 0.833rem; /* 15px -> 0.833rem */
}

.mil-mb-20 {
  margin-bottom: 1.111rem; /* 20px -> 1.111rem */
}

.mil-mb-30 {
  margin-bottom: 1.667rem; /* 30px -> 1.667rem */
}

.mil-mb-40 {
  margin-bottom: 2.222rem; /* 40px -> 2.222rem */
}

.mil-mb-45 {
  margin-bottom: 2.5rem; /* 45px -> 2.5rem */
}

.mil-mb-60 {
  margin-bottom: 3.333rem; /* 60px -> 3.333rem */
}

.mil-mb-90 {
  margin-bottom: 5rem; /* 90px -> 5rem */
}

.mil-op-space-90 {
  padding-top: 1.667rem; /* 30px -> 1.667rem */
}
@media screen and (max-width: 1200px) {
  .mil-op-space-90 {
    padding-top: 0;
    padding-bottom: 5rem; /* 90px -> 5rem */
  }
}

.mil-op-space-60 {
  padding-top: 1.667rem; /* 30px -> 1.667rem */
}
@media screen and (max-width: 1200px) {
  .mil-op-space-60 {
    padding-top: 0;
    padding-bottom: 3.333rem; /* 60px -> 3.333rem */
  }
}

.mil-op-space-30 {
  padding-top: 3.333rem; /* 60px -> 3.333rem */
}
@media screen and (max-width: 1200px) {
  .mil-op-space-30 {
    padding-top: 0;
    padding-bottom: 1.667rem; /* 30px -> 1.667rem */
  }
}

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

frame

------------------------------------------- */
.mil-frame {
  margin: 0.556rem; /* 10px -> 0.556rem */
  pointer-events: none;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  width: calc(100% - 1.111rem); /* 20px -> 1.111rem */
  height: calc(100% - 1.111rem); /* 20px -> 1.111rem */
}
.mil-frame:before, .mil-frame:after {
  content: "";
  position: absolute;
  left: 0.389rem; /* 7px -> 0.389rem */
  right: -0.389rem; /* -7px -> -0.389rem */
  top: 0.389rem; /* 7px -> 0.389rem */
  bottom: -0.389rem; /* -7px -> -0.389rem */
  border: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-frame:after {
  border: 0.111rem solid #010101; /* 2px -> 0.111rem */
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 1200px) {
  .mil-frame {
    margin: 0 0.556rem; /* 10px -> 0.556rem */
    height: 100%;
  }
}
@media screen and (min-width: 1600px) {
  .mil-frame {
    margin: 0.833rem; /* 15px -> 0.833rem */
    width: calc(100% - 1.667rem); /* 30px -> 1.667rem */
    height: calc(100% - 1.667rem); /* 30px -> 1.667rem */
  }
}

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

page

------------------------------------------- */
.mil-onepage {
  width: 100%;
}
.mil-onepage .mil-section {
  position: relative;
  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-onepage .mil-section .container, .mil-onepage .mil-section .no-gutters {
  -webkit-transform: translateY(5rem) scale(0.95); /* 90px -> 5rem */
  transform: translateY(5rem) scale(0.95);
  opacity: 0;
  -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-onepage .mil-section.mil-active .container, .mil-onepage .mil-section.mil-active .no-gutters {
  opacity: 1;
  -webkit-transform: translateY(0) scale(1);
  transform: translateY(0) scale(1);
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
@media screen and (max-width: 1200px) {
  .mil-onepage .mil-section {
    height: auto;
  }
  .mil-onepage .mil-section .container {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.mil-custom-scroll {
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .mil-custom-scroll {
    overflow: scroll;
  }
}

.mil-page {
  position: relative;
  margin: 1.111rem; /* 20px -> 1.111rem */
}
@media screen and (max-width: 1200px) {
  .mil-page {
    margin: 0;
  }
}

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

pagination

------------------------------------------- */
.mil-pagination {
  position: fixed;
  top: 50%;
  right: 2.778rem; /* 50px -> 2.778rem */
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mil-pagination::before {
  content: "";
  position: absolute;
  left: 50%;
  width: 0.056rem; /* 1px -> 0.056rem */
  height: 100%;
  background: rgba(51, 51, 51, 0.18);
  margin-left: -0.028rem; /* -0.5px -> -0.028rem */
}
.mil-pagination .mil-dot {
  display: flex;
  align-items: center;
  position: relative;
  width: 0.833rem; /* 15px -> 0.833rem */
  height: 0.833rem; /* 15px -> 0.833rem */
  margin-bottom: 0.833rem; /* 15px -> 0.833rem */
  cursor: pointer;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-pagination .mil-dot:last-child {
  margin-bottom: 0;
}
.mil-pagination .mil-dot.mil-active {
  opacity: 1;
}
.mil-pagination .mil-dot.mil-active::after {
  border-color: #4DB6AC;
  background: #F5F5F5;
}
.mil-pagination .mil-dot:before {
  content: attr(data-name);
  display: block;
  padding-right: 1.111rem; /* 20px -> 1.111rem */
  position: absolute;
  left: -5.556rem; /* -100px -> -5.556rem */
  width: 5.556rem; /* 100px -> 5.556rem */
  opacity: 0;
  text-align: right;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  line-height: 100%;
  text-transform: uppercase;
  font-weight: 600;
  color: #333333;
  transform: translateX(-0.556rem) scale(0.9); /* -10px -> -0.556rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-pagination .mil-dot:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #F5F5F5;
  border: 0.222rem solid rgba(51, 51, 51, 0.18); /* 4px -> 0.222rem */
  transform: rotate(45deg);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-pagination .mil-dot:hover:before {
  opacity: 1;
  transform: translateX(0) scale(1);
}
.mil-pagination .mil-dot:hover:after {
  border-color: #4DB6AC;
  background: #F5F5F5;
}
.mil-pagination.mil-pagination-left {
  right: auto;
  left: 2.778rem; /* 50px -> 2.778rem */
}
.mil-pagination.mil-pagination-left .mil-dot:before {
  left: auto;
  right: -5.556rem; /* -100px -> -5.556rem */
  padding-left: 1.111rem; /* 20px -> 1.111rem */
  padding-right: 0;
  text-align: left;
}
@media screen and (max-width: 1200px) {
  .mil-pagination {
    opacity: 0;
    pointer-events: none;
  }
}

.mil-bg-item {
  opacity: 0.35;
  width: 18.889rem; /* 340px -> 18.889rem */
  height: 23.333rem; /* 420px -> 23.333rem */
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  transform: rotate(30deg);
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
}
.mil-bg-item:before {
  content: "";
  width: 5.556rem; /* 100px -> 5.556rem */
  height: 8.333rem; /* 150px -> 8.333rem */
  border-radius: 50%;
  position: absolute;
  left: -5.556rem; /* -100px -> -5.556rem */
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
}
.mil-bg-item.mil-bg-item-large {
  width: 22.222rem; /* 400px -> 22.222rem */
  height: 25.556rem; /* 460px -> 25.556rem */
}
.mil-bg-item.mil-bg-item-large::before {
  display: none;
}
@media screen and (max-width: 1200px) {
  .mil-bg-item {
    display: none;
  }
}

.mil-bg-title-boxed {
  opacity: 0.35;
  width: 100%;
  height: 8.333rem; /* 150px -> 8.333rem */
  position: absolute;
  z-index: -1;
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
}
.mil-bg-title-boxed:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 13.889rem; /* 150% of 100px (approx) -> 13.889rem */
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
}
@media screen and (max-width: 1200px) {
  .mil-bg-title-boxed {
    display: none;
  }
}

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

top panel

------------------------------------------- */
.mil-top-panel {
  pointer-events: all;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 4.444rem; /* 80px -> 4.444rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  transition-delay: 0s;
}
.mil-top-panel.mil-tp-inner {
  background: #F5F5F5;
}
.mil-top-panel.mil-tp-inner::before, .mil-top-panel.mil-tp-inner::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1.111rem; /* -20px -> -1.111rem */
  height: 1.111rem; /* 20px -> 1.111rem */
  background: #F5F5F5;
  z-index: -1;
}
.mil-top-panel.mil-tp-inner::after {
  top: auto;
  bottom: -1.111rem; /* -20px -> -1.111rem */
}
.mil-top-panel.mil-active {
  transition-delay: 0.6s;
}
.mil-top-panel .mil-tp-frame {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.mil-top-panel .mil-logo {
  position: relative;
  margin-top: 0.111rem; /* 2px -> 0.111rem */
  padding: 0 2.222rem; /* 40px -> 2.222rem */
  width: 10rem; /* 180px -> 10rem (approx) */
  height: 4.444rem; /* 80px -> 4.444rem */
  display: block;
  display: flex;
  align-items: center;
}
.mil-top-panel .mil-logo img {
  width: 100%;
}
.mil-top-panel nav {
  position: relative;
  border-bottom: solid 0.111rem #010101; /* 2px -> 0.111rem */
  padding: 0 2.222rem 0 1.667rem; /* 40px 30px -> 2.222rem 1.667rem */
}
.mil-top-panel nav::after {
  content: "";
  position: absolute;
  left: 0.389rem; /* 7px -> 0.389rem */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  right: -0.278rem; /* -5px -> -0.278rem */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-top-panel nav ul {
  display: flex;
}
.mil-top-panel nav ul li {
  position: relative;
  height: 4.444rem; /* 80px -> 4.444rem */
  list-style-type: none;
  margin-right: 2.222rem; /* 40px -> 2.222rem */
  display: flex;
  align-items: center;
}
.mil-top-panel nav ul li:last-child {
  margin-right: 0;
}
.mil-top-panel nav ul li a {
  text-decoration: none;
  color: inherit;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-top-panel nav ul li a:hover {
  color: #4DB6AC;
}
.mil-top-panel nav ul li.mil-active > a {
  color: #4DB6AC;
}
.mil-top-panel nav ul li.mil-active:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: calc(50% - 0.056rem); /* 1px -> 0.056rem */
  width: 0.111rem; /* 2px -> 0.111rem */
  height: 0.556rem; /* 10px -> 0.556rem */
  background-color: #010101;
}
.mil-top-panel nav ul li ul {
  pointer-events: none;
  transform: scale(0.9) translateY(-0.278rem); /* -5px -> -0.278rem */
  opacity: 0;
  position: absolute;
  top: 4.444rem; /* 80px -> 4.444rem */
  left: -1.778rem; /* -32px -> -1.778rem */
  padding: 1.667rem; /* 30px -> 1.667rem */
  display: flex;
  flex-direction: column;
  border: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  background-color: #F5F5F5;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-top-panel nav ul li ul li {
  margin: 0;
  height: auto;
  margin-bottom: 0.833rem; /* 15px -> 0.833rem */
}
.mil-top-panel nav ul li ul li:last-child {
  margin-bottom: 0;
}
.mil-top-panel nav ul li:hover ul {
  pointer-events: all;
  opacity: 1;
  transform: scale(1) translateY(0);
}
.mil-top-panel .mil-social {
  position: relative;
  padding: 0 2.222rem; /* 40px -> 2.222rem */
  border-bottom: solid 0.111rem #010101; /* 2px -> 0.111rem */
}
.mil-top-panel .mil-social::after {
  content: "";
  position: absolute;
  left: 0.5rem; /* 9px -> 0.5rem (approx) */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  right: -0.278rem; /* -5px -> -0.278rem */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-top-panel .mil-social ul {
  display: flex;
}
.mil-top-panel .mil-social ul li {
  list-style-type: none;
  margin-right: 1.389rem; /* 25px -> 1.389rem */
  height: 4.444rem; /* 80px -> 4.444rem */
  display: flex;
  align-items: center;
}
.mil-top-panel .mil-social ul li:last-child {
  margin-right: 0;
}
.mil-top-panel .mil-social ul li a {
  text-decoration: none;
  color: #333333;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  line-height: 0;
}
.mil-top-panel .mil-social ul li a svg {
  width: 1.111rem; /* 20px -> 1.111rem */
}
.mil-top-panel .mil-social ul li a:hover {
  color: #4DB6AC;
}
@media screen and (max-width: 1200px) {
  .mil-top-panel .mil-social {
    display: none;
  }
}
.mil-top-panel.mil-tp-2 .mil-tp-frame {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 1200px) {
  .mil-top-panel.mil-tp-2 .mil-tp-frame {
    justify-content: space-between;
  }
}
.mil-top-panel.mil-tp-2 .mil-logo {
  border-bottom: solid 0.111rem #010101; /* 2px -> 0.111rem */
  border-right: solid 0.111rem #010101; /* 2px -> 0.111rem */
}
.mil-top-panel.mil-tp-2 .mil-logo::before, .mil-top-panel.mil-tp-2 .mil-logo::after {
  content: "";
  position: absolute;
  left: 0.5rem; /* 9px -> 0.5rem (approx) */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  border-bottom: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-top-panel.mil-tp-2 .mil-logo::after {
  left: auto;
  top: 8px;
  bottom: -7px;
  border-right: solid 2px rgba(51, 51, 51, 0.18);
  border-bottom: none;
}
.mil-top-panel.mil-tp-2 .mil-logo img {
  width: 100%;
}
.mil-top-panel.mil-tp-2 nav {
  padding-left: 40px;
  padding-right: 40px;
  border-top: none;
}
@media screen and (max-width: 1200px) {
  .mil-top-panel {
    background-color: #F5F5F5;
  }
  .mil-top-panel.mil-active {
    background-color: #F5F5F5;
    box-shadow: 0 20px 20px 0 #F5F5F5;
    box-shadow: none;
  }
  .mil-top-panel nav {
    opacity: 0;
    pointer-events: none;
    padding: 30px 0;
    border: none;
    position: absolute;
    background-color: #F5F5F5;
    top: 90px;
    width: 100%;
    border-bottom: solid 2px rgba(51, 51, 51, 0.18);
    transform: scale(0.9) translateY(-5px);
    transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
  }
  .mil-top-panel nav.mil-active {
    opacity: 1;
    pointer-events: all;
    transform: scale(1) translateY(0);
  }
  .mil-top-panel nav ul {
    flex-direction: column;
  }
  .mil-top-panel nav ul li {
    flex-direction: column;
    height: auto;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .mil-top-panel nav ul li:last-child {
    margin-bottom: 0;
  }
  .mil-top-panel nav ul li.mil-active > a {
    color: #4DB6AC;
  }
  .mil-top-panel nav ul li.mil-active:after {
    display: none;
  }
  .mil-top-panel nav ul li ul {
    border: none;
    background-color: #f3f3f3;
    padding: 0;
    position: static;
    width: 100%;
    max-height: 0;
  }
  .mil-top-panel nav ul li ul li:first-child {
    margin-top: 30px;
  }
  .mil-top-panel nav ul li ul li:last-child {
    margin-bottom: 30px;
  }
  .mil-top-panel nav ul li:hover ul {
    max-height: 400px;
    margin-top: 15px;
  }
}

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

social panel

------------------------------------------- */
.mil-social-panel {
  pointer-events: all;
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  height: 4.444rem; /* 80px -> 4.444rem */
  padding: 0 1.667rem; /* 30px -> 1.667rem */
  border-top: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-social-panel::after {
  content: "";
  position: absolute;
  left: 0.389rem; /* 7px -> 0.389rem */
  top: 0.278rem; /* 5px -> 0.278rem */
  right: -0.278rem; /* -5px -> -0.278rem */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-social-panel ul {
  display: flex;
}
.mil-social-panel ul li {
  list-style-type: none;
  margin-right: 2.222rem; /* 40px -> 2.222rem */
}
.mil-social-panel ul li:last-child {
  margin-right: 0;
}
.mil-social-panel ul li a {
  font-size: 0.778rem; /* 14px -> 0.778rem */
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  color: #333333;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-social-panel ul li a:hover {
  color: #4DB6AC;
}
@media screen and (max-width: 992px) {
  .mil-social-panel {
    display: none;
  }
}

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

footer

------------------------------------------- */
.mil-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 4.444rem; /* 80px -> 4.444rem */
  display: flex;
  align-items: center;
  padding: 0 1.667rem; /* 30px -> 1.667rem */
  pointer-events: all;
  border-top: 0.111rem solid #333333; /* 2px -> 0.111rem */
}
.mil-footer::before {
  content: "";
  position: absolute;
  left: 0.5rem; /* 9px -> 0.5rem (approx) */
  top: 0.278rem; /* 5px -> 0.278rem */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
@media screen and (max-width: 1200px) {
  .mil-footer {
    display: none;
  }
}

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

menu button

------------------------------------------- */
.mil-menu-btn {
  margin-right: 1.667rem; /* 30px -> 1.667rem */
  background-color: #F5F5F5;
  padding: 1.389rem 0.833rem; /* 25px 15px -> 1.389rem 0.833rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
  height: 1.333rem; /* 24px -> 1.333rem */
  cursor: pointer;
  display: none;
  justify-content: center;
  align-items: center;
  box-shadow: 0.333rem 0.333rem 0 0 rgba(51, 51, 51, 0.18); /* 6px -> 0.333rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
@media screen and (max-width: 1200px) {
  .mil-menu-btn {
    display: flex;
  }
}
.mil-menu-btn span, .mil-menu-btn span:after, .mil-menu-btn span:before {
  content: "";
  display: block;
  width: 1.333rem; /* 24px -> 1.333rem */
  height: 0.111rem; /* 2px -> 0.111rem */
  background: #333333;
  backface-visibility: hidden;
  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: -0.444rem; /* -8px -> -0.444rem */
}
.mil-menu-btn span:after {
  top: 0.444rem; /* 8px -> 0.444rem */
}
.mil-menu-btn.mil-active span {
  transform: rotate(45deg);
}
.mil-menu-btn.mil-active span:before {
  transform: translate(0px, 0.444rem) rotate(-90deg); /* 8px -> 0.444rem */
}
.mil-menu-btn.mil-active span:after {
  width: 1.333rem; /* 24px -> 1.333rem */
  transform: translate(0px, -0.444rem) rotate(-90deg); /* -8px -> -0.444rem */
}

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

banner

------------------------------------------- */
.mil-top-banner {
  padding-top: 11.111rem; /* 200px -> 11.111rem */
  padding-bottom: 5.556rem; /* 100px -> 5.556rem */
}
@media screen and (max-width: 1200px) {
  .mil-top-banner {
    padding-top: 9.444rem; /* 170px -> 9.444rem */
    padding-bottom: 3.333rem; /* 60px -> 3.333rem */
  }
  .mil-top-banner p br {
    display: none;
  }
}

.mil-banner {
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .mil-banner {
    padding-top: 5rem; /* 90px -> 5rem */
    margin-bottom: 3.333rem; /* 60px -> 3.333rem */
  }
}
.mil-banner .mil-banner-image {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  vertical-align: top;
}
@media screen and (max-width: 1200px) {
  .mil-banner .mil-banner-image {
    height: 60vh;
  }
}
.mil-banner .mil-banner-text {
  position: relative;
  text-align: left;
  padding: 0 20% 0 10%;
}
@media screen and (max-width: 1200px) {
  .mil-banner .mil-banner-text {
    padding: 3.333rem 1.667rem; /* 60px 30px -> 3.333rem 1.667rem */
    text-align: center;
  }
}
.mil-banner .mil-short {
  max-width: 42.5rem; /* 680px -> 42.5rem */
}
@media screen and (max-width: 1200px) {
  .mil-banner .mil-short {
    max-width: 100%;
  }
}
.mil-banner.mil-banner-right .mil-banner-text {
  position: relative;
  text-align: left;
  padding: 0 10% 0 20%;
}
@media screen and (max-width: 1200px) {
  .mil-banner.mil-banner-right .mil-banner-text {
    padding: 3.333rem 1.667rem; /* 60px 30px -> 3.333rem 1.667rem */
    text-align: center;
  }
}

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

about

------------------------------------------- */
.mil-about-person {
  width: 100%;
  position: relative;
  line-height: 0;
}
.mil-about-person:after {
  content: "";
  position: absolute;
  left: 0.667rem; /* 12px -> 0.667rem */
  top: 0.667rem; /* 12px -> 0.667rem */
  right: -0.667rem; /* -12px -> -0.667rem */
  bottom: -0.667rem; /* -12px -> -0.667rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
}
.mil-about-person .mil-avatar {
  width: 100%;
  object-fit: cover;
  object-position: center;
  margin-right: 3.333rem; /* 60px -> 3.333rem */
}
@media screen and (max-width: 1200px) {
  .mil-about-person {
    display: none;
  }
}

.mil-about-person-2 .mil-avatar {
  width: 8.889rem; /* 160px -> 8.889rem */
  height: 8.889rem; /* 160px -> 8.889rem */
  object-fit: cover;
  object-position: top;
  border-radius: 50%;
}
@media screen and (max-width: 1200px) {
  .mil-about-person-2 .mil-avatar {
    width: 6.667rem; /* 120px -> 6.667rem */
    height: 6.667rem; /* 120px -> 6.667rem */
  }
}

.mil-signature {
  width: 6.667rem; /* 120px -> 6.667rem */
}

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

skills

------------------------------------------- */
.mil-progress-inline {
  width: calc(100% - 5rem); /* 90px -> 5rem */
}

.mil-progress-track {
  border-bottom: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  padding: 0.278rem 0; /* 5px -> 0.278rem */
  margin-left: 0.389rem; /* 7px -> 0.389rem */
}
.mil-progress-track .mil-progress {
  position: relative;
  left: -0.389rem; /* -7px -> -0.389rem */
  height: 0.556rem; /* 10px -> 0.556rem */
  border-bottom: solid 0.111rem #4DB6AC; /* 2px -> 0.111rem */
  border-right: solid 0.111rem #4DB6AC; /* 2px -> 0.111rem */
}
.mil-progress-track .mil-progress .mil-upper {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -1.611rem); /* -29px -> -1.611rem */
  line-height: 1.111rem; /* 20px -> 1.111rem */
}

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

iconbox

------------------------------------------- */
.mil-icon-box {
  display: flex;
}
.mil-icon-box a {
  text-decoration: none;
  color: #333333;
}
.mil-icon-box .mil-text-icon {
  position: relative;
  width: 3.889rem; /* 70px -> 3.889rem */
  height: 3.889rem; /* 70px -> 3.889rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.778rem; /* 32px -> 1.778rem */
  padding-bottom: 0.278rem; /* 5px -> 0.278rem */
}
.mil-icon-box .mil-text-icon::before, .mil-icon-box .mil-text-icon::after {
  content: "";
  position: absolute;
  left: -0.556rem; /* -10px -> -0.556rem */
  top: -0.556rem; /* -10px -> -0.556rem */
  background: #e7e7e7;
  width: 100%;
  height: 100%;
  z-index: -2;
}
.mil-icon-box .mil-text-icon::after {
  z-index: -1;
  top: -2.222rem; /* -40px -> -2.222rem */
  left: auto;
  right: -1.111rem; /* -20px -> -1.111rem */
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
  opacity: 0.3;
}
.mil-icon-box .mil-text-icon.no-textured::after {
  display: none;
}
.mil-icon-box .mil-box-text {
  width: calc(100% - 3.889rem); /* 70px -> 3.889rem */
  padding-left: 2.222rem; /* 40px -> 2.222rem */
  padding-top: 0.278rem; /* 5px -> 0.278rem */
}
.mil-icon-box.mil-type-2 .mil-box-text {
  width: 100%;
  padding: 0;
}

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

experience

------------------------------------------- */
.swiper-container {
  overflow: hidden;
  padding-top: 0 !important;
}

.mil-timeline-nav,
.mil-reviews-nav {
  position: relative;
  padding: 3.333rem 0 3.333rem 3.333rem; /* 60px 0 60px 60px -> 3.333rem 0 3.333rem 3.333rem */
  border-left: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-timeline-nav::after,
.mil-reviews-nav::after {
  content: "";
  position: absolute;
  top: 0.389rem; /* 7px -> 0.389rem */
  bottom: -0.278rem; /* -5px -> -0.278rem */
  left: 0.278rem; /* 5px -> 0.278rem */
  border-left: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
@media screen and (max-width: 1200px) {
  .mil-timeline-nav,
  .mil-reviews-nav {
    margin-top: 1.667rem; /* 30px -> 1.667rem */
    border: none;
    border-top: solid 0.111rem #333333; /* 2px -> 0.111rem */
    padding: 0;
    padding-top: 1.667rem; /* 30px -> 1.667rem */
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .mil-timeline-nav::after,
  .mil-reviews-nav::after {
    display: none;
  }
  .mil-timeline-nav .mil-timeline-pagination,
  .mil-reviews-nav .mil-timeline-pagination {
    text-align: right;
  }
  .mil-timeline-nav .mil-reviews-pagination,
  .mil-reviews-nav .mil-reviews-pagination {
    text-align: right;
  }
}

.mil-timeline-nav-2 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.mil-timeline-nav-2 .mil-timeline-2-pagination {
  width: auto;
  margin-right: 1.667rem; /* 30px -> 1.667rem */
}
@media screen and (max-width: 1200px) {
  .mil-timeline-nav-2 {
    justify-content: flex-start;
  }
}

.mil-divider {
  position: relative;
  background-color: #333333;
  height: 0.111rem; /* 2px -> 0.111rem */
  width: 100%;
}
.mil-divider::after {
  content: "";
  position: absolute;
  left: 0.389rem; /* 7px -> 0.389rem */
  top: 0.389rem; /* 7px -> 0.389rem */
  right: -0.278rem; /* -5px -> -0.278rem */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}

.mil-slider-nav {
  display: flex;
}
.mil-slider-nav .mil-prev, .mil-slider-nav .mil-next {
  cursor: pointer;
  width: 3.333rem; /* 60px -> 3.333rem */
  height: 3.333rem; /* 60px -> 3.333rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
  display: flex;
  color: #333333;
  justify-content: center;
  align-items: center;
  box-shadow: 0.333rem 0.333rem 0 0 rgba(51, 51, 51, 0.18); /* 6px -> 0.333rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-slider-nav .mil-prev.swiper-button-disabled, .mil-slider-nav .mil-next.swiper-button-disabled {
  opacity: 0.2;
}
.mil-slider-nav .mil-prev:hover, .mil-slider-nav .mil-next:hover {
  box-shadow: 0px 0px 0 0 rgba(51, 51, 51, 0.18);
}
.mil-slider-nav .mil-prev {
  margin-right: 0.833rem; /* 15px -> 0.833rem */
}
.mil-slider-nav .mil-prev svg {
  transform: rotate(180deg);
}

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

reviews

------------------------------------------- */
.mil-client {
  width: 100%;
  padding-bottom: 100%;
  position: relative;
}
.mil-client::after {
  content: "";
  position: absolute;
  left: 0.667rem; /* 12px -> 0.667rem */
  top: 0.667rem; /* 12px -> 0.667rem */
  right: -0.667rem; /* -12px -> -0.667rem */
  bottom: -0.667rem; /* -12px -> -0.667rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
}
.mil-client img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
@media screen and (max-width: 1200px) {
  .mil-client {
    width: 120px;
    padding-bottom: 120px;
    margin-bottom: 40px;
  }
}

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

blog

------------------------------------------- */
.mil-blog-card {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.mil-blog-card .mil-cover {
  width: 30%;
  padding-bottom: 30%;
  position: relative;
}
.mil-blog-card .mil-cover::after {
  content: "";
  position: absolute;
  left: 0.667rem; /* 12px -> 0.667rem */
  top: 0.667rem; /* 12px -> 0.667rem */
  right: -0.667rem; /* -12px -> -0.667rem */
  bottom: -0.667rem; /* -12px -> -0.667rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
  pointer-events: none;
  transform: scale(1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-blog-card .mil-cover img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-blog-card .mil-cover .mil-date {
  transform: rotate(-90deg);
  position: absolute;
  bottom: 5rem; /* 90px -> 5rem */
  left: -1.111rem; /* -20px -> -1.111rem */
  color: #333333;
  background-color: #F5F5F5;
  padding: 0.222rem 0.333rem; /* 4px 6px -> 0.222rem 0.333rem */
}
.mil-blog-card .mil-title {
  padding: 4.167rem; /* 75px -> 4.167rem */
  width: 40%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.mil-blog-card .mil-card-text {
  padding-top: 6.111rem; /* 110px -> 6.111rem */
  width: 30%;
  align-self: stretch;
}
@media screen and (max-width: 992px) {
  .mil-blog-card .mil-title {
    width: 100%;
    padding: 2.778rem 0 1.667rem; /* 50px 0px 30px -> 2.778rem 0 1.667rem */
  }
  .mil-blog-card .mil-card-text {
    width: 100%;
    padding-top: 0;
  }
}
.mil-blog-card:hover .mil-cover::after {
  transform: scale(0.96);
}
.mil-blog-card:hover .mil-cover img {
  transform: scale(0.93);
}
@media screen and (max-width: 768px) {
  .mil-blog-card .mil-cover {
    padding-bottom: 100%;
  }
}

.mil-filter {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.mil-filter::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 70%;
  border-bottom: 0.111rem solid #333333; /* 2px -> 0.111rem */
}
.mil-filter::after {
  content: "";
  position: absolute;
  top: 0.389rem; /* 7px -> 0.389rem */
  right: -0.278rem; /* -5px -> -0.278rem */
  width: 70%;
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-filter ul {
  padding-left: 1.667rem; /* 30px -> 1.667rem */
  display: flex;
  justify-content: flex-end;
}
.mil-filter ul li {
  position: relative;
  list-style-type: none;
  margin-right: 2.222rem; /* 40px -> 2.222rem */
  height: 4.444rem; /* 80px -> 4.444rem */
  display: flex;
  align-items: center;
}
.mil-filter ul li:last-child {
  margin-right: 1.667rem; /* 30px -> 1.667rem */
}
.mil-filter ul li a {
  text-decoration: none;
  color: inherit;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  line-height: 100%;
  text-transform: uppercase;
  font-weight: 600;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-filter ul li a.mil-current::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: calc(50% - 0.056rem); /* 1px -> 0.056rem */
  width: 0.111rem; /* 2px -> 0.111rem */
  height: 0.833rem; /* 15px -> 0.833rem */
  background-color: #333333;
}
@media screen and (max-width: 768px) {
  .mil-filter {
    margin: 0 0.667rem; /* 12px -> 0.667rem */
  }
  .mil-filter::before {
    width: 100%;
  }
  .mil-filter::after {
    left: 0.389rem; /* 7px -> 0.389rem */
    right: -0.389rem; /* -7px -> -0.389rem */
    width: auto;
  }
  .mil-filter ul {
    padding: 1.667rem 0; /* 30px -> 1.667rem */
    flex-direction: column;
    width: 100%;
  }
  .mil-filter ul li {
    height: auto;
    margin: 0;
    margin-bottom: 0.833rem; /* 15px -> 0.833rem */
  }
  .mil-filter ul li:last-child {
    margin: 0;
  }
}

.mil-pagination-panel {
  position: relative;
  padding: 5rem 0 3.333rem; /* 90px 0 60px -> 5rem 0 3.333rem */
  border-top: solid 0.111rem #333333; /* 2px -> 0.111rem */
  display: flex;
  justify-content: space-between;
}
.mil-pagination-panel::before {
  content: "";
  position: absolute;
  top: 0.278rem; /* 5px -> 0.278rem */
  right: -0.278rem; /* -5px -> -0.278rem */
  left: 0.278rem; /* 5px -> 0.278rem */
  border-bottom: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
}
.mil-pagination-panel .mil-pagination-numbers li {
  list-style-type: none;
  margin-right: 0.833rem; /* 15px -> 0.833rem */
}
.mil-pagination-panel .mil-pagination-numbers li a {
  text-decoration: none;
  cursor: pointer;
  width: 3.333rem; /* 60px -> 3.333rem */
  height: 3.333rem; /* 60px -> 3.333rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
  font-weight: 600;
  font-size: 0.778rem; /* 14px -> 0.778rem */
  color: #333333;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0.333rem 0.333rem 0 0 rgba(51, 51, 51, 0.18); /* 6px -> 0.333rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
@media screen and (max-width: 767px) {
  .mil-pagination-panel {
    flex-direction: column;
    align-items: center;
  }
  .mil-pagination-panel .mil-pagination-numbers {
    margin-bottom: 0.833rem; /* 15px -> 0.833rem */
  }
}

.mil-publication {
  padding-top: 10.278rem; /* 185px -> 10.278rem */
  padding-bottom: 5rem; /* 90px -> 5rem */
}
@media screen and (max-width: 1200px) {
  .mil-publication {
    padding-top: 9.444rem; /* 170px -> 9.444rem */
  }
}

.mil-post-cover {
  position: relative;
  padding-bottom: 60%;
}
.mil-post-cover::after {
  content: "";
  position: absolute;
  left: 0.667rem; /* 12px -> 0.667rem */
  top: 0.667rem; /* 12px -> 0.667rem */
  right: -0.667rem; /* -12px -> -0.667rem */
  bottom: -0.667rem; /* -12px -> -0.667rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
  pointer-events: none;
  transform: scale(1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}

.mil-tags {
  display: flex;
  flex-wrap: wrap;
  margin-left: 2.222rem; /* 40px -> 2.222rem */
}
.mil-tags li {
  list-style-type: none;
  margin-right: 2.222rem; /* 40px -> 2.222rem */
  margin-bottom: 0.833rem; /* 15px -> 0.833rem */
}
.mil-tags li a {
  text-decoration: none;
  color: inherit;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-tags li a:hover {
  color: #4DB6AC;
}

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

price

------------------------------------------- */
.mil-price-card {
  position: relative;
  width: 100%;
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-price-card::before, .mil-price-card::after {
  content: "";
  position: absolute;
  top: 0.556rem; /* 10px -> 0.556rem */
  right: 0.556rem; /* 10px -> 0.556rem */
  width: 3.889rem; /* 70px -> 3.889rem */
  height: 3.889rem; /* 70px -> 3.889rem */
  z-index: -1;
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
  opacity: 0.3;
  pointer-events: none;
}
.mil-price-card::after {
  top: auto;
  bottom: 0.556rem; /* 10px -> 0.556rem */
  right: auto;
  left: 0.556rem; /* 10px -> 0.556rem */
}
.mil-price-card .mil-card-head {
  position: relative;
  padding: 1.667rem; /* 30px -> 1.667rem */
  border-bottom: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-price-card .mil-card-head::before {
  content: "";
  position: absolute;
  left: 0.278rem; /* 5px -> 0.278rem */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  top: 0.278rem; /* 5px -> 0.278rem */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  border: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  pointer-events: none;
}
.mil-price-card .mil-card-head .mil-label {
  position: absolute;
  top: 1.389rem; /* 25px -> 1.389rem */
  right: 1.667rem; /* 30px -> 1.667rem */
  color: #F5F5F5;
  background-color: #4DB6AC;
  padding: 0.222rem 0.333rem; /* 4px 6px -> 0.222rem 0.333rem */
}
.mil-price-card .mil-card-head sup {
  font-size: 0.778rem; /* 14px -> 0.778rem */
  line-height: 1.111rem; /* 20px -> 1.111rem */
  display: inline-block;
  vertical-align: top;
}
.mil-price-card .mil-proces-body {
  position: relative;
  padding: 1.667rem; /* 30px -> 1.667rem */
}
.mil-price-card .mil-proces-body::before {
  content: "";
  position: absolute;
  left: 0.278rem; /* 5px -> 0.278rem */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  top: 0.389rem; /* 7px -> 0.389rem */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  border: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  border-top: none;
  pointer-events: none;
}
.mil-price-card .mil-proces-body ul {
  margin-bottom: 1.667rem; /* 30px -> 1.667rem */
}
.mil-price-card .mil-proces-body ul li {
  list-style-type: none;
  padding: 0.556rem 0; /* 10px -> 0.556rem */
  border-bottom: 0.056rem solid rgba(51, 51, 51, 0.18); /* 1px -> 0.056rem */
}

.mil-call-to-action {
  margin-top: 1.667rem; /* 30px -> 1.667rem */
  padding: 5rem 0; /* 90px -> 5rem */
  background-color: #f8f8f8;
}

.mil-comment {
  list-style-type: none;
}
.mil-comment .mil-comment-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.667rem; /* 30px -> 1.667rem */
}
.mil-comment .mil-comment-head .mil-author {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.mil-comment .mil-comment-head .mil-author .mil-avatar {
  position: relative;
  width: 4.444rem; /* 80px -> 4.444rem */
  height: 4.444rem; /* 80px -> 4.444rem */
  margin-right: 1.667rem; /* 30px -> 1.667rem */
}
.mil-comment .mil-comment-head .mil-author .mil-avatar::after {
  content: "";
  position: absolute;
  left: 0.389rem; /* 7px -> 0.389rem */
  top: 0.389rem; /* 7px -> 0.389rem */
  right: -0.389rem; /* -7px -> -0.389rem */
  bottom: -0.389rem; /* -7px -> -0.389rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
  pointer-events: none;
  transform: scale(1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-comment .mil-comment-head .mil-reply {
  cursor: pointer;
  width: 2.222rem; /* 40px -> 2.222rem */
  height: 2.222rem; /* 40px -> 2.222rem */
  border: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  display: flex;
  color: #333333;
  justify-content: center;
  align-items: center;
  box-shadow: 0.333rem 0.333rem 0 0 rgba(51, 51, 51, 0.18); /* 6px -> 0.333rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-comment .mil-comment-head .mil-reply svg {
  width: 1rem; /* 18px -> 1rem */
}
.mil-comment ul {
  padding-left: 3.333rem; /* 60px -> 3.333rem */
  margin-top: 1.667rem; /* 30px -> 1.667rem */
}
.mil-comment ul .mil-comment:before {
  content: "";
  display: block;
  width: 0.833rem; /* 15px -> 0.833rem */
  height: 2.5rem; /* 45px -> 2.5rem */
  border-left: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  border-bottom: solid 0.111rem rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  position: absolute;
  top: 0;
  left: -1.778rem; /* -32px -> -1.778rem */
}

.mil-comment-form {
  position: relative;
  padding: 1.667rem; /* 30px -> 1.667rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-comment-form::before {
  content: "";
  position: absolute;
  left: 0.278rem; /* 5px -> 0.278rem */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  top: 0.278rem; /* 5px -> 0.278rem */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  border: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  pointer-events: none;
}
.mil-comment-form::after {
  content: "";
  position: absolute;
  top: 0.556rem; /* 10px -> 0.556rem */
  right: 0.556rem; /* 10px -> 0.556rem */
  width: 3.889rem; /* 70px -> 3.889rem */
  height: 3.889rem; /* 70px -> 3.889rem */
  z-index: -1;
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
  opacity: 0.3;
  pointer-events: none;
}

.mil-contact {
  padding-bottom: 6.667rem; /* 120px -> 6.667rem */
}

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

portfolio

------------------------------------------- */
.mil-portfolio-grid {
  margin-left: -1.667rem; /* -30px -> -1.667rem */
  margin-right: -1.667rem; /* -30px -> -1.667rem */
}
.mil-portfolio-grid .grid-sizer, .mil-portfolio-grid .mil-grid-item {
  width: 33.333%;
  padding: 0 1.667rem; /* 30px -> 1.667rem */
}
.mil-portfolio-grid .mil-grid-item.mil-50 {
  width: 50%;
}
.mil-portfolio-grid .mil-grid-item.mil-25 {
  width: 25%;
}
@media screen and (max-width: 992px) {
  .mil-portfolio-grid .grid-sizer, .mil-portfolio-grid .mil-grid-item {
    width: 100%;
  }
}

.mil-portfolio-item {
  display: block;
  cursor: pointer;
  color: inherit;
  text-decoration: none;
}
.mil-portfolio-item .mil-cover {
  position: relative;
}
.mil-portfolio-item .mil-cover::after {
  content: "";
  position: absolute;
  left: 0.667rem; /* 12px -> 0.667rem */
  top: 0.667rem; /* 12px -> 0.667rem */
  right: -0.667rem; /* -12px -> -0.667rem */
  bottom: -0.667rem; /* -12px -> -0.667rem */
  border: 0.111rem solid #333333; /* 2px -> 0.111rem */
  pointer-events: none;
  transform: scale(1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-portfolio-item .mil-cover img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1);
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-portfolio-item .mil-cover .mil-hover-link {
  opacity: 0;
  position: absolute;
  top: calc(50% - 1.667rem); /* 30px -> 1.667rem */
  left: calc(50% - 1.667rem); /* 30px -> 1.667rem */
  background-color: #F5F5F5;
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
  width: 3.333rem; /* 60px -> 3.333rem */
  height: 3.333rem; /* 60px -> 3.333rem */
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0.333rem 0.333rem 0 0 rgba(51, 51, 51, 0.18); /* 6px -> 0.333rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-portfolio-item .mil-cover .mil-hover-link svg, .mil-portfolio-item .mil-cover .mil-hover-link i {
  opacity: 0;
  stroke: #333333;
  transform: translateY(0.556rem) scale(0.6); /* 10px -> 0.556rem */
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-portfolio-item .mil-cover .mil-hover-link:hover {
  box-shadow: 0 0 0 0 rgba(51, 51, 51, 0.18);
}
.mil-portfolio-item.mil-square-item {
  width: 100%;
}
.mil-portfolio-item.mil-square-item .mil-cover {
  padding-bottom: 100%;
}
.mil-portfolio-item.mil-long-item {
  width: 100%;
}
.mil-portfolio-item.mil-long-item .mil-cover {
  padding-bottom: 140%;
}
.mil-portfolio-item .mil-project-descr {
  padding-top: 1.944rem; /* 35px -> 1.944rem */
  text-align: center;
}
.mil-portfolio-item:hover .mil-cover::after {
  transform: scale(0.96);
}
.mil-portfolio-item:hover .mil-cover img {
  transform: scale(0.93);
}
.mil-portfolio-item:hover .mil-cover .mil-hover-link {
  opacity: 1;
}
.mil-portfolio-item:hover .mil-cover .mil-hover-link svg, .mil-portfolio-item:hover .mil-cover .mil-hover-link i {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.mil-project-img {
  width: 100%;
  position: relative;
}
.mil-project-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.mil-project-img.mil-square {
  padding-bottom: 65%;
}
.mil-project-img.mil-long {
  padding-bottom: calc(130% + 1.667rem); /* 30px -> 1.667rem */
}

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

contact

------------------------------------------- */
.mil-contact-card {
  position: relative;
  padding: 1.667rem; /* 30px -> 1.667rem */
  border: solid 0.111rem #333333; /* 2px -> 0.111rem */
}
.mil-contact-card::before {
  content: "";
  position: absolute;
  left: 0.278rem; /* 5px -> 0.278rem */
  right: -0.5rem; /* -9px -> -0.5rem (approx) */
  top: 0.278rem; /* 5px -> 0.278rem */
  bottom: -0.5rem; /* -9px -> -0.5rem (approx) */
  border: 0.111rem solid rgba(51, 51, 51, 0.18); /* 2px -> 0.111rem */
  pointer-events: none;
}
.mil-contact-card::after {
  content: "";
  position: absolute;
  top: 0.556rem; /* 10px -> 0.556rem */
  right: 0.556rem; /* 10px -> 0.556rem */
  width: 3.889rem; /* 70px -> 3.889rem */
  height: 3.889rem; /* 70px -> 3.889rem */
  z-index: -1;
  --dot-size: 0.111rem; /* 2px -> 0.111rem */
  --dot-space: 0.556rem; /* 10px -> 0.556rem */
  background: linear-gradient(90deg, #F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), linear-gradient(#F5F5F5 calc(var(--dot-space) - var(--dot-size)), transparent 1%) center/var(--dot-space) var(--dot-space), #333333;
  opacity: 0.3;
  pointer-events: none;
}
.mil-contact-card a {
  text-decoration: none;
  color: inherit;
  transition: 0.4s cubic-bezier(0, 0, 0.3642, 1);
}
.mil-contact-card a:hover {
  color: #4DB6AC;
}

/* Final 9-Element Arc Illustration Styles */
.mil-banner-illustration {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  /* Add padding to prevent overlap with side pagination */
  padding-right: 3.333rem; /* 60px -> 3.333rem */
}

.mil-illustration-container.mil-9-element-arc-layout {
  position: relative;
  width: 37.5rem; /* 600px -> 37.5rem */
  height: 28.125rem; /* 450px -> 28.125rem */
  margin: 0 auto;
}

.mil-bg-grid {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background-image: radial-gradient(circle at 0.063rem 0.063rem, rgba(0, 0, 0, 0.1) 0.063rem, transparent 0); /* 1px -> 0.063rem */
  background-size: 1.25rem 1.25rem; /* 20px -> 1.25rem */
  opacity: 0.6;
  z-index: 0;
}

.mil-tech-layer {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 0.111rem solid #4DB6AC; /* 2px -> 0.111rem */
  border-radius: 50%;
  background-color: #F5F5F5;
  box-shadow: 0 0.313rem 1.25rem rgba(0,0,0,0.05); /* 5px 20px -> 0.313rem 1.25rem */
  transition: all 0.3s ease-in-out;
  z-index: 2;
}

.mil-tech-layer:hover {
  transform: scale(1.05) translateY(-0.188rem); /* -3px -> -0.188rem */
  box-shadow: 0 0.625rem 1.875rem rgba(77, 182, 172, 0.15); /* 10px 30px -> 0.625rem 1.875rem */
}

.mil-tech-icon { font-size: 1.5rem; color: #4DB6AC; margin-bottom: 0.313rem; } /* 24px -> 1.5rem, 5px -> 0.313rem */
.mil-tech-label { font-size: 0.75rem; font-weight: 500; color: #333333; text-align: center; line-height: 1.2; } /* 12px -> 0.75rem */

/* Positioning the 9 elements in a 3-tier arc layout */
.mil-oracle-db  { top: 1.25rem; left: 7.5rem; width: 6.875rem; height: 6.875rem; } /* 20px 120px 110px -> 1.25rem 7.5rem 6.875rem */
.mil-weblogic   { top: 1.25rem; right: 7.5rem; width: 6.875rem; height: 6.875rem; } /* 20px 120px 110px -> 1.25rem 7.5rem 6.875rem */
.mil-ccb        { top: 11.25rem; left: 0; width: 5.625rem; height: 5.625rem; } /* 180px 90px -> 11.25rem 5.625rem */
.mil-oua        { top: 10.313rem; left: 7.5rem; width: 5.625rem; height: 5.625rem; } /* 165px 120px 90px -> 10.313rem 7.5rem 5.625rem */
.mil-c2m-center { top: 10.625rem; left: calc(50% - 3.438rem); width: 6.875rem; height: 6.875rem; } /* 170px 55px 110px -> 10.625rem 3.438rem 6.875rem */
.mil-mdm        { top: 11.25rem; right: 0; width: 5.625rem; height: 5.625rem; } /* 180px 90px -> 11.25rem 5.625rem */
.mil-uta        { top: 10.313rem; right: 7.5rem; width: 5.625rem; height: 5.625rem; } /* 165px 120px 90px -> 10.313rem 7.5rem 5.625rem */
.mil-dm         { top: 20.625rem; left: 7.5rem; width: 6.25rem; height: 6.25rem; } /* 330px 120px 100px -> 20.625rem 7.5rem 6.25rem */
.mil-soa        { top: 20.625rem; right: 7.5rem; width: 6.25rem; height: 6.25rem; } /* 330px 120px 100px -> 20.625rem 7.5rem 6.25rem */
.mil-c2m-center .mil-tech-icon { font-size: 1.875rem; } /* 30px -> 1.875rem */

/* SVG Connector Lines */
.mil-connectors { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.mil-connector {
    fill: none;
    stroke: rgba(77, 182, 172, 0.3);
    stroke-width: 0.125rem; /* 2px -> 0.125rem */
    stroke-linecap: round;
    stroke-dasharray: 0.313rem, 0.625rem; /* 5px, 10px -> 0.313rem, 0.625rem */
    animation: dash 2s linear infinite;
}

@keyframes dash {
    to {
        stroke-dashoffset: -0.938rem; /* -15px -> -0.938rem */
    }
}

.mil-professional-stats {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-top: 3.75rem; /* 60px -> 3.75rem */
}

.mil-stat-item {
  text-align: center;
  cursor: default;
  padding: 0 0.313rem; /* 5px -> 0.313rem */
  width: 19%;
  position: relative;
}

.mil-stat-item:hover .mil-stat-number {
    color: #333333;
}

.mil-stat-number { 
    font-size: 2.375rem; /* 38px -> 2.375rem */
    font-weight: 700; 
    color: #4DB6AC; 
    line-height: 1; 
    transition: all .3s ease-in-out;
}
.mil-stat-label { font-size: 0.688rem; font-weight: 600; color: #555; text-transform: uppercase; letter-spacing: 0.063rem; line-height: 1.4; margin-top: 0.313rem; } /* 11px 1px 5px -> 0.688rem 0.063rem 0.313rem */

@media screen and (max-width: 1200px) {
  .mil-illustration-container.mil-9-element-arc-layout { transform: scale(0.9); margin-top: -1.25rem; } /* -20px -> -1.25rem */
}

@media screen and (max-width: 992px) {
  .mil-illustration-container.mil-9-element-arc-layout { transform: scale(0.7); margin-top: -3.125rem; margin-bottom: -1.875rem; } /* -50px -30px -> -3.125rem -1.875rem */
  .mil-professional-stats { max-width: 100%; flex-wrap: wrap; justify-content: center; gap: 0.938rem 0.313rem; margin-top: 2.5rem; } /* 15px 5px 40px -> 0.938rem 0.313rem 2.5rem */
  .mil-stat-item { width: 32%; }
  .mil-stat-number { font-size: 2.125rem; } /* 34px -> 2.125rem */
  .mil-stat-label { font-size: 0.625rem; } /* 10px -> 0.625rem */
}

@media screen and (max-width: 768px) {
  .mil-banner-illustration { padding: 1.25rem 0; } /* 20px -> 1.25rem */
  .mil-illustration-container.mil-9-element-arc-layout { transform: scale(0.5); height: 15.625rem; margin-top: -5rem; margin-bottom: 1.25rem;} /* 250px -80px 20px -> 15.625rem -5rem 1.25rem */
  .mil-professional-stats { flex-direction: row; gap: 0.625rem 0.313rem; align-items: flex-start; margin-top: 0; justify-content: center; } /* 10px 5px -> 0.625rem 0.313rem */
  .mil-stat-item { width: 45%; }
}

.mil-c2m-center:hover {
    transform: scale(1.1);
}

.mil-pagination .mil-dot[data-no-text="true"]:before {
    content: none;
}

/*----------------- Project Tags -----------------*/
.mil-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.625rem; /* 10px -> 0.625rem */
    margin-top: 1.25rem; /* 20px -> 1.25rem */
}

.mil-project-tag {
    background-color: rgba(77, 182, 172, 0.1);
    color: #4DB6AC;
    padding: 0.313rem 0.938rem; /* 5px 15px -> 0.313rem 0.938rem */
    border-radius: 1.875rem; /* 30px -> 1.875rem */
    font-size: 0.75rem; /* 12px -> 0.75rem */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.031rem; /* 0.5px -> 0.031rem */
    display: inline-block;
}

/*----------------- Tool Card Layout -----------------*/
.mil-tool-card {
    display: flex;
    gap: 3.125rem; /* 50px -> 3.125rem */
    align-items: flex-start;
}

.mil-tool-description {
    flex: 1;
    min-width: 0;
    padding-bottom: 1.875rem; /* 30px -> 1.875rem */
}

.mil-tool-image-slider-container {
    flex: 1.4;
    min-width: 0;
    border-radius: 0.625rem; /* 10px -> 0.625rem */
    overflow: hidden;
    box-shadow: 0 0.313rem 1.563rem rgba(0, 0, 0, 0.1); /* 5px 25px -> 0.313rem 1.563rem */
    position: relative;
}

.mil-tool-image-slider-container .swiper-container {
    padding-bottom: 1.875rem; /* 30px -> 1.875rem */
}

.mil-tool-image-slider-container img {
    width: 100%;
    height: auto;
    display: block;
    max-height: 25rem; /* 400px -> 25rem */
    object-fit: contain;
}

/* Nested Swiper Pagination */
.mil-tool-image-slider-container .swiper-pagination {
    bottom: 0.5rem !important; /* 8px -> 0.5rem */
}

.mil-tool-image-slider-container .swiper-pagination-bullet {
    background-color: #fff;
    opacity: 0.7;
    width: 0.5rem; /* 8px -> 0.5rem */
    height: 0.5rem; /* 8px -> 0.5rem */
    transition: all .3s ease-in-out;
}

.mil-tool-image-slider-container .swiper-pagination-bullet-active {
    background-color: #4DB6AC;
    opacity: 1;
    width: 0.75rem; /* 12px -> 0.75rem */
    border-radius: 0.313rem; /* 5px -> 0.313rem */
}

@media screen and (max-width: 992px) {
  .mil-tool-card {
    flex-direction: column;
  }
  .mil-tool-image-slider-container {
    max-width: 100%;
    width: 100%;
    margin-top: 1.875rem; /* 30px -> 1.875rem */
  }
}

/* Ensure the tool card aligns items to the top */
.mil-tool-card {
    align-items: flex-start !important;
}

/* Remove any top margin from the slider container */
.mil-tool-image-slider-container {
    margin-top: 0 !important;
    align-self: flex-start !important;
}

/* Top-align Swiper elements inside the slider */
.mil-tool-image-slider-container .swiper-container,
.mil-tool-image-slider-container .swiper-wrapper,
.mil-tool-image-slider-container .swiper-slide {
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

/* Capsule-shaped slider dots for tool image slider */
.mil-tool-image-slider-container .swiper-pagination-bullet {
    border-radius: 0.75rem !important; /* 12px -> 0.75rem */
    width: 1.5rem !important; /* 24px -> 1.5rem */
    height: 0.5rem !important; /* 8px -> 0.5rem */
    background: #4DB6AC !important;
    opacity: 0.4 !important;
    transition: all 0.3s;
}
.mil-tool-image-slider-container .swiper-pagination-bullet-active {
    opacity: 1 !important;
    background: #4DB6AC !important;
    width: 2.25rem !important; /* 36px -> 2.25rem */
}
/* Add more space below the slider */
.mil-tool-image-slider-container .swiper-container {
    padding-bottom: 3rem !important; /* 48px -> 3rem */
}

/* Make slider images fully rounded (pill/oval) */
.mil-tool-image-slider-container img {
    border-radius: 2rem !important; /* 32px -> 2rem */
}

/* Position slider nav buttons outside the image, vertically centered */
.mil-tool-image-slider-container {
    position: relative;
}
.mil-tool-image-slider-container .mil-slider-nav {
    position: absolute;
    top: 50%;
    left: -3rem; /* -48px -> -3rem */
    right: -3rem; /* -48px -> -3rem */
    width: calc(100% + 6rem); /* 96px -> 6rem */
    display: flex;
    justify-content: space-between;
    align-items: center;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 2;
}
.mil-tool-image-slider-container .mil-slider-nav .mil-prev,
.mil-tool-image-slider-container .mil-slider-nav .mil-next {
    pointer-events: auto;
}

/* Make the background of the slider image area transparent */
.mil-tool-image-slider-container {
    background: transparent !important;
    box-shadow: none !important;
}

/* Fix overlap: add top margin to job title heading in experience section */
.mil-upper.mil-text-lg {
    margin-top: 1.5rem; /* 24px -> 1.5rem */
}

/* Consistent horizontal line for section headings */
.mil-section-line {
  border: none;
  border-top: 0.188rem solid #333333; /* 3px -> 0.188rem */
  width: 3.75rem; /* 60px -> 3.75rem */
  margin: 0 0 2rem 0; /* 32px -> 2rem */
}

#tools .mil-timeline-nav-2 {
    margin-top: 0 !important;
}

#tools .container {
    padding-top: 0;
}
#tools .mil-divider {
    margin-bottom: 3rem; /* 48px -> 3rem */
}

.privacy-scroll-area {
    max-height: calc(100vh - 11.25rem); /* 180px -> 11.25rem */
    overflow-y: auto;
    padding-bottom: 2rem; /* 32px -> 2rem */
}

/*----------------------------------------------------------
------------------- TOAST NOTIFICATIONS -------------------
----------------------------------------------------------*/
.mil-toast {
    position: fixed;
    top: 1.25rem; /* 20px -> 1.25rem */
    right: 1.25rem; /* 20px -> 1.25rem */
    padding: 0.938rem 1.25rem; /* 15px 20px -> 0.938rem 1.25rem */
    border-radius: 0.5rem; /* 8px -> 0.5rem */
    color: white;
    font-weight: 500;
    z-index: 9999;
    transform: translateX(25rem); /* 400px -> 25rem */
    transition: transform 0.3s ease-in-out;
    max-width: 21.875rem; /* 350px -> 21.875rem */
    box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,0.15); /* 4px 12px -> 0.25rem 0.75rem */
}

.mil-toast.show {
    transform: translateX(0);
}

.mil-toast.success {
    background: linear-gradient(135deg, #28a745, #20c997);
}

.mil-toast.error {
    background: linear-gradient(135deg, #dc3545, #e74c3c);
}

.mil-toast .mil-toast-close {
    position: absolute;
    top: 0.5rem; /* 8px -> 0.5rem */
    right: 0.625rem; /* 10px -> 0.625rem */
    background: none;
    border: none;
    color: white;
    font-size: 1.125rem; /* 18px -> 1.125rem */
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.mil-toast .mil-toast-close:hover {
    opacity: 1;
}

