/* ========================
UIkit bootstrap-ecommerce.com
===================== */
/* ==================== INCLUDE FONTS ======================= */
@import url("../fonts/roboto/font.css");
html {
  font-size: 15px; }

/* ================== HELPERS  =================== */
a:hover {
  text-decoration: none; }

  strong{
    color: #315ebf;
}

.img-wrap {
  text-align: center;
  display: block; }
  .img-wrap img {
    max-width: 100%; }

.icon-wrap {
  text-align: center; }
.zoom-in {
  -webkit-transition: -webkit-transform ease .3s;
  transition: -webkit-transform ease .3s;
  transition: transform ease .3s;
  transition: transform ease .3s, -webkit-transform ease .3s; }

.zoom-wrap:hover .zoom-in {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: -webkit-transform ease .3s;
  transition: -webkit-transform ease .3s;
  transition: transform ease .3s;
  transition: transform ease .3s, -webkit-transform ease .3s; }

/* =================  DEFINED VARIABLES =================== */
.icon-xs, .icon-sm, .icon-md, .icon-lg {
  display: inline-block;
  text-align: center; }

.icon-xs {
  width: 32px;
  height: 32px;
  line-height: 32px;
  font-size: 16px; }

.icon-sm {
  width: 42px;
  height: 42px;
  line-height: 42px;
  font-size: 22px; }

.icon-md {
  width: 60px;
  height: 60px;
  line-height: 60px;
  font-size: 32px; }

.icon-lg {
  width: 80px;
  height: 80px;
  line-height: 80px;
  font-size: 42px; }

.img-xs, .img-sm, .img-md, .img-lg {
  -o-object-fit: cover;
     object-fit: cover; }

.img-xs {
  width: 40px;
  height: 40px; }

.img-sm {
  width: 80px;
  height: 80px; }

.img-md {
  width: 160px;
  height: 160px; }

.img-lg {
  width: 400px;
  height: 300px; }

.center-xy {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.center-y {
  top: 50%;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.center-x {
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }

.center {
  margin-left: auto;
  margin-right: auto; }

.overflow-h {
  overflow: hidden; }

.flip-h {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1); }

.card-body-lg {
  padding: 2rem; }

.shadow-in {
  -webkit-box-shadow: inset 0 2px 4px rgba(51, 51, 51, 0.4);
          box-shadow: inset 0 2px 4px rgba(51, 51, 51, 0.4); }

.vh-100 {
  height: 100vh; }

.vh-90 {
  height: 90vh; }

.vh-80 {
  height: 80vh; }

.vh-70 {
  height: 70vh; }

.vh-60 {
  height: 60vh; }

.vh-50 {
  height: 50vh; }

[class*="hover-"] {
  -webkit-transition: .5s;
  transition: .5s; }

.hover-shadow:hover {
  -webkit-box-shadow: 0 4px 15px rgba(51, 51, 51, 0.5);
          box-shadow: 0 4px 15px rgba(51, 51, 51, 0.5);
  -webkit-transition: .5s;
  transition: .5s; }

.hover-bg:hover {
  background: #007bff;
  /* For browsers that do not support gradients */
  /* For Safari 5.1 to 6.0 */
  /* For Opera 11.1 to 12.0 */
  /* For Firefox 3.6 to 15 */
  background: -webkit-gradient(linear, left top, right bottom, from(#007bff), to(#007bff));
  background: linear-gradient(to bottom right, #007bff, #007bff);
  /* Standard syntax */
  -webkit-transition: .5s;
  transition: .5s; }

.hover-zoom:hover {
  -webkit-transition: .5s;
  transition: .5s;
  -webkit-transform: scaleX(1);
          transform: scaleX(1); }

/* ========== input with icon ==========  */
.input-icon {
  position: relative; }
  .input-icon i + input, .input-icon i + select {
    padding-left: 36px; }
  .input-icon i {
    position: absolute;
    color: #ccc;
    z-index: 9;
    left: 7px;
    top: 4px;
    width: 24px;
    text-align: center;
    padding: 7px 0; }

.form-inline .form-control-sm[type="number"] {
  max-width: 100px; }

/* ========== borders ========== */
.border {
  border: 1px solid #dee2e6; }

.border-left-white {
  border-left: 1px solid rgba(255, 255, 255, 0.3); }

.border-right-white {
  border-right: 1px solid rgba(255, 255, 255, 0.3); }

.border-top-white {
  border-top: 1px solid rgba(255, 255, 255, 0.3); }

.border-bottom-white {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

.circle {
  border-radius: 100%; }

.round {
  border-radius: 200px; }

/* ============== spacing ============== */
.padding-y {
  padding-top: 32px;
  padding-bottom: 32px; 
  background-color: #f8f8f8;}

.padding-top {
  padding-top: 32px; }

.padding-bottom {
  padding-bottom: 32px; }

.padding-y-lg {
  padding-top: 60px;
  padding-bottom: 50px; }

.padding-top-lg {
  padding-top: 60px; }

.padding-bottom-lg {
  padding-bottom: 60px; }

.padding-y-sm {
  padding-top: 16px;
  padding-bottom: 16px; }

.padding-top-sm {
  padding-top: 16px; }

.padding-bottom-sm {
  padding-bottom: 16px; }

.nopadding {
  padding: 0px; }

.p0 {
  padding: 0px; }

.p5 {
  padding: 5px; }

.p7 {
  padding: 7px; }

.p10 {
  padding: 10px; }

.p15 {
  padding: 15px; }

.p20 {
  padding: 20px; }

.p30 {
  padding: 30px; }

.p40 {
  padding: 40px; }

.p50 {
  padding: 50px; }

.p60 {
  padding: 60px; }

.nomargin {
  margin: 0px; }

.m0 {
  margin: 0px; }

.m5 {
  margin: 5px; }

.m7 {
  margin: 7px; }

.m10 {
  margin: 10px; }

.m15 {
  margin: 15px; }

.m30 {
  margin: 30px; }

.m40 {
  margin: 40px; }

.m50 {
  margin: 50px; }

.m60 {
  margin: 60px; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

var {
  font-style: normal; }

figure {
  margin-bottom: 0; }

.form-noborder input, .form-noborder select, .form-noborder .btn {
  border: none; }
.form-noborder select.form-control-lg:not([size]):not([multiple]) {
  height: 2.875rem; }

/* all clearfix */
article:after,
.form-group:after {
  display: block;
  clear: both;
  content: ""; }

.border-cols:not(:last-child) {
  border-bottom: 1px solid #dee2e6; }

.border-cols > [class*="col-"] {
  overflow: hidden;
  border-color: #dee2e6;
  border-width: 0 0 0 1px;
  border-style: solid; }

/* -------------------- small grid gutter --------------------- */
.row-sm {
  margin-right: -7px;
  margin-left: -7px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.row-sm > [class^="col"] {
  padding-left: 7px;
  padding-right: 7px; }

.bg-white {
  background-color: #fff !important; }

.bg-white-50 {
  background-color: rgba(255, 255, 255, 0.5); }

.bg-dark-50 {
  background-color: rgba(0, 0, 0, 0.5); }

.bg-grad-primary {
  background: #3395ff;
  /* For browsers that do not support gradients */
  /* For Safari 5.1 to 6.0 */
  /* For Opera 11.1 to 12.0 */
  /* For Firefox 3.6 to 15 */
  background: -webkit-gradient(linear, left top, right bottom, from(#0062cc), to(#3395ff));
  background: linear-gradient(to bottom right, #0062cc, #3395ff);
  /* Standard syntax */ }

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

.bg2 {
  background-color: #eceded !important; }

.bg-purple {
  background-color: #6f42c1; }

.bg-orange {
  background-color: #fd7e14; }

.bg-green {
  background-color: #28a745; }

.bg-blue {
  background-color: #007bff; }

.bg-pattern {
  background-image: url(../images/banners/bg-pattern.svg), linear-gradient(135deg, #007bff, #0062cc);
  background-size: cover, auto;
  background-repeat: no-repeat, repeat;
  background-position: 0px 0px, 50% 50%; }

.bg-img {
  overflow: hidden;
  background-color: #ddd;
  background-image: linear-gradient(135deg, rgba(51, 149, 255, 0.8), rgba(0, 98, 204, 0.9)), url("../images/banners/bg-cpu.jpg");
  background-position: 0px 0px, 50% 50%;
  background-size: auto  cover; }

.overlay-grad {
  position: relative; }
  .overlay-grad:before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: .6;
    -webkit-transition: .5s;
    transition: .5s;
    background: #6c757d;
    /* For browsers that do not support gradients */
    /* For Safari 5.1 to 6.0 */
    /* For Opera 11.1 to 12.0 */
    /* For Firefox 3.6 to 15 */
    background: -webkit-gradient(linear, left top, right bottom, from(#007bff), to(#6c757d));
    background: linear-gradient(to bottom right, #007bff, #6c757d);
    /* Standard syntax */ }
  .overlay-grad:hover:before {
    opacity: .9; }

/* --------------------- titles ---------------------- */
.section-heading {
  margin-bottom: 20px;
  margin-top: 10px; }

.title-section {
  padding-right: 15px; }

.title-text {
  margin-top: 45px;
  margin-bottom: 20px; }

.title-category {
  margin: 0;
  padding: 1rem 1rem; }

.title-bg {
  padding: 7px 15px;
  color: #fff; }

.font-title {
  font-family: "Roboto", sans-serif; }

.text-lg {
  font-size: 125%; }

.word-limit {
  height: 40px;
  line-height: 20px; }

/* ==================  title element ================ */
.heading-line {
  position: relative; }
  .heading-line .title-section {
    position: relative;
    display: inline-block;
    padding-right: 15px;
    background-color: inherit;
    z-index: 2; }

.heading-line::before {
  top: 43%;
  border-top-style: solid;
  content: "";
  position: absolute;
  left: auto;
  right: 0;
  width: 100%;
  height: 0;
  border: 3px solid #E9EAEF;
  overflow: hidden; }

.b {
  font-weight: 600; }

.white {
  color: #fff; }

.black, .dark {
  color: #000; }

/* ==================  title helpers ================ */
.rtl {
  direction: rtl; }

.ltr {
  direction: ltr; }

.lh-sm {
  line-height: 1.2; }

.lh-lg {
  line-height: 1.6; }

/*!
 * grid for 24 of 1
 * made by bootstrap-ecommerce.com
*/

.top-space {
    margin-top: 150px; }

.section-content {
    margin-top: 60px; }

.col-1-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 4.1666666667%;
          flex: 0 0 4.1666666667%;
  max-width: 4.1666666667%; }

.col-2-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 8.3333333333%;
          flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%; }

.col-3-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 12.5%;
          flex: 0 0 12.5%;
  max-width: 12.5%; }

.col-4-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.6666666667%;
          flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%; }

.col-5-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20.8333333333%;
          flex: 0 0 20.8333333333%;
  max-width: 20.8333333333%; }

.col-6-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%; }

.col-7-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 29.1666666667%;
          flex: 0 0 29.1666666667%;
  max-width: 29.1666666667%; }

.col-8-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.3333333333%;
          flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%; }

.col-9-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 37.5%;
          flex: 0 0 37.5%;
  max-width: 37.5%; }

.col-10-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 41.6666666667%;
          flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%; }

.col-11-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 45.8333333333%;
          flex: 0 0 45.8333333333%;
  max-width: 45.8333333333%; }

.col-12-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%; }

.col-13-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 54.1666666667%;
          flex: 0 0 54.1666666667%;
  max-width: 54.1666666667%; }

.col-14-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 58.3333333333%;
          flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%; }

.col-15-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 62.5%;
          flex: 0 0 62.5%;
  max-width: 62.5%; }

.col-16-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.6666666667%;
          flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%; }

.col-17-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 70.8333333333%;
          flex: 0 0 70.8333333333%;
  max-width: 70.8333333333%; }

.col-18-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%; }

.col-19-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 79.1666666667%;
          flex: 0 0 79.1666666667%;
  max-width: 79.1666666667%; }

.col-20-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 83.3333333333%;
          flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%; }

.col-21-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 87.5%;
          flex: 0 0 87.5%;
  max-width: 87.5%; }

.col-22-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 91.6666666667%;
          flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%; }

.col-23-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 95.8333333333%;
          flex: 0 0 95.8333333333%;
  max-width: 95.8333333333%; }

.col-24, .col-24-24 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%; }

.offset-1-24 {
  margin-left: 4.1666666667%; }

.offset-2-24 {
  margin-left: 8.3333333333%; }

.offset-3-24 {
  margin-left: 12.5%; }

.offset-4-24 {
  margin-left: 16.6666666667%; }

.offset-5-24 {
  margin-left: 20.8333333333%; }

.offset-6-24 {
  margin-left: 25%; }

.offset-7-24 {
  margin-left: 29.1666666667%; }

.offset-8-24 {
  margin-left: 33.3333333333%; }

.offset-9-24 {
  margin-left: 37.5%; }

.offset-10-24 {
  margin-left: 41.6666666667%; }

.offset-11-24 {
  margin-left: 45.8333333333%; }

.offset-12-24 {
  margin-left: 50%; }

.offset-13-24 {
  margin-left: 54.1666666667%; }

.offset-14-24 {
  margin-left: 58.3333333333%; }

.offset-15-24 {
  margin-left: 62.5%; }

.offset-16-24 {
  margin-left: 66.6666666667%; }

.offset-17-24 {
  margin-left: 70.8333333333%; }

.offset-18-24 {
  margin-left: 75%; }

.offset-19-24 {
  margin-left: 79.1666666667%; }

.offset-20-24 {
  margin-left: 83.3333333333%; }

.offset-21-24 {
  margin-left: 87.5%; }

.offset-22-24 {
  margin-left: 91.6666666667%; }

.offset-23-24 {
  margin-left: 95.8333333333%; }

@media (min-width: 500px) {
  .top-space {
    margin-top: 110px; }
}

@media (min-width: 576px) {
  .top-space {
    margin-top: 110px; }

  .section-content {
    margin-top: 60px; }

  .col-sm-1-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 4.1666666667%;
            flex: 0 0 4.1666666667%;
    max-width: 4.1666666667%; }

  .col-sm-2-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.3333333333%;
            flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }

  .col-sm-3-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

  .col-sm-4-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.6666666667%;
            flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }

  .col-sm-5-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20.8333333333%;
            flex: 0 0 20.8333333333%;
    max-width: 20.8333333333%; }

  .col-sm-6-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

  .col-sm-7-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 29.1666666667%;
            flex: 0 0 29.1666666667%;
    max-width: 29.1666666667%; }

  .col-sm-8-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333333333%;
            flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }

  .col-sm-9-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 37.5%;
            flex: 0 0 37.5%;
    max-width: 37.5%; }

  .col-sm-10-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.6666666667%;
            flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }

  .col-sm-11-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45.8333333333%;
            flex: 0 0 45.8333333333%;
    max-width: 45.8333333333%; }

  .col-sm-12-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

  .col-sm-13-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 54.1666666667%;
            flex: 0 0 54.1666666667%;
    max-width: 54.1666666667%; }

  .col-sm-14-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.3333333333%;
            flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }

  .col-sm-15-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 62.5%;
            flex: 0 0 62.5%;
    max-width: 62.5%; }

  .col-sm-16-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.6666666667%;
            flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }

  .col-sm-17-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 70.8333333333%;
            flex: 0 0 70.8333333333%;
    max-width: 70.8333333333%; }

  .col-sm-18-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }

  .col-sm-19-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 79.1666666667%;
            flex: 0 0 79.1666666667%;
    max-width: 79.1666666667%; }

  .col-sm-20-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.3333333333%;
            flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }

  .col-sm-21-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 87.5%;
            flex: 0 0 87.5%;
    max-width: 87.5%; }

  .col-sm-22-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.6666666667%;
            flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }

  .col-sm-23-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 95.8333333333%;
            flex: 0 0 95.8333333333%;
    max-width: 95.8333333333%; }

  .col-sm-24, .col-sm-24-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

  .offset-sm-1-24 {
    margin-left: 4.1666666667%; }

  .offset-sm-2-24 {
    margin-left: 8.3333333333%; }

  .offset-sm-3-24 {
    margin-left: 12.5%; }

  .offset-sm-4-24 {
    margin-left: 16.6666666667%; }

  .offset-sm-5-24 {
    margin-left: 20.8333333333%; }

  .offset-sm-6-24 {
    margin-left: 25%; }

  .offset-sm-7-24 {
    margin-left: 29.1666666667%; }

  .offset-sm-8-24 {
    margin-left: 33.3333333333%; }

  .offset-sm-9-24 {
    margin-left: 37.5%; }

  .offset-sm-10-24 {
    margin-left: 41.6666666667%; }

  .offset-sm-11-24 {
    margin-left: 45.8333333333%; }

  .offset-sm-12-24 {
    margin-left: 50%; }

  .offset-sm-13-24 {
    margin-left: 54.1666666667%; }

  .offset-sm-14-24 {
    margin-left: 58.3333333333%; }

  .offset-sm-15-24 {
    margin-left: 62.5%; }

  .offset-sm-16-24 {
    margin-left: 66.6666666667%; }

  .offset-sm-17-24 {
    margin-left: 70.8333333333%; }

  .offset-sm-18-24 {
    margin-left: 75%; }

  .offset-sm-19-24 {
    margin-left: 79.1666666667%; }

  .offset-sm-20-24 {
    margin-left: 83.3333333333%; }

  .offset-sm-21-24 {
    margin-left: 87.5%; }

  .offset-sm-22-24 {
    margin-left: 91.6666666667%; }

  .offset-sm-23-24 {
    margin-left: 95.8333333333%; } }
@media (min-width: 768px) {
  .top-space {
    margin-top: 110px; }

  .section-content {
    margin-top: 80px; }
  
  .col-md-1-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 4.1666666667%;
            flex: 0 0 4.1666666667%;
    max-width: 4.1666666667%; }

  .col-md-2-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.3333333333%;
            flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }

  .col-md-3-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

  .col-md-4-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.6666666667%;
            flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }

  .col-md-5-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20.8333333333%;
            flex: 0 0 20.8333333333%;
    max-width: 20.8333333333%; }

  .col-md-6-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

  .col-md-7-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 29.1666666667%;
            flex: 0 0 29.1666666667%;
    max-width: 29.1666666667%; }

  .col-md-8-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333333333%;
            flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }

  .col-md-9-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 37.5%;
            flex: 0 0 37.5%;
    max-width: 37.5%; }

  .col-md-10-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.6666666667%;
            flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }

  .col-md-11-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45.8333333333%;
            flex: 0 0 45.8333333333%;
    max-width: 45.8333333333%; }

  .col-md-12-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

  .col-md-13-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 54.1666666667%;
            flex: 0 0 54.1666666667%;
    max-width: 54.1666666667%; }

  .col-md-14-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.3333333333%;
            flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }

  .col-md-15-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 62.5%;
            flex: 0 0 62.5%;
    max-width: 62.5%; }

  .col-md-16-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.6666666667%;
            flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }

  .col-md-17-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 70.8333333333%;
            flex: 0 0 70.8333333333%;
    max-width: 70.8333333333%; }

  .col-md-18-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }

  .col-md-19-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 79.1666666667%;
            flex: 0 0 79.1666666667%;
    max-width: 79.1666666667%; }

  .col-md-20-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.3333333333%;
            flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }

  .col-md-21-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 87.5%;
            flex: 0 0 87.5%;
    max-width: 87.5%; }

  .col-md-22-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.6666666667%;
            flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }

  .col-md-23-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 95.8333333333%;
            flex: 0 0 95.8333333333%;
    max-width: 95.8333333333%; }

  .col-md-24, .col-md-24-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

  .offset-md-1-24 {
    margin-left: 4.1666666667%; }

  .offset-md-2-24 {
    margin-left: 8.3333333333%; }

  .offset-md-3-24 {
    margin-left: 12.5%; }

  .offset-md-4-24 {
    margin-left: 16.6666666667%; }

  .offset-md-5-24 {
    margin-left: 20.8333333333%; }

  .offset-md-6-24 {
    margin-left: 25%; }

  .offset-md-7-24 {
    margin-left: 29.1666666667%; }

  .offset-md-8-24 {
    margin-left: 33.3333333333%; }

  .offset-md-9-24 {
    margin-left: 37.5%; }

  .offset-md-10-24 {
    margin-left: 41.6666666667%; }

  .offset-md-11-24 {
    margin-left: 45.8333333333%; }

  .offset-md-12-24 {
    margin-left: 50%; }

  .offset-md-13-24 {
    margin-left: 54.1666666667%; }

  .offset-md-14-24 {
    margin-left: 58.3333333333%; }

  .offset-md-15-24 {
    margin-left: 62.5%; }

  .offset-md-16-24 {
    margin-left: 66.6666666667%; }

  .offset-md-17-24 {
    margin-left: 70.8333333333%; }

  .offset-md-18-24 {
    margin-left: 75%; }

  .offset-md-19-24 {
    margin-left: 79.1666666667%; }

  .offset-md-20-24 {
    margin-left: 83.3333333333%; }

  .offset-md-21-24 {
    margin-left: 87.5%; }

  .offset-md-22-24 {
    margin-left: 91.6666666667%; }

  .offset-md-23-24 {
    margin-left: 95.8333333333%; } }
@media (min-width: 992px) {

  .section-content {
    margin-top: 100px; }

  .col-lg-1-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 4.1666666667%;
            flex: 0 0 4.1666666667%;
    max-width: 4.1666666667%; }

  .col-lg-2-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.3333333333%;
            flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }

  .col-lg-3-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

  .col-lg-4-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.6666666667%;
            flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }

  .col-lg-5-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20.8333333333%;
            flex: 0 0 20.8333333333%;
    max-width: 20.8333333333%; }

  .col-lg-6-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

  .col-lg-7-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 29.1666666667%;
            flex: 0 0 29.1666666667%;
    max-width: 29.1666666667%; }

  .col-lg-8-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333333333%;
            flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }

  .col-lg-9-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 37.5%;
            flex: 0 0 37.5%;
    max-width: 37.5%; }

  .col-lg-10-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.6666666667%;
            flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }

  .col-lg-11-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45.8333333333%;
            flex: 0 0 45.8333333333%;
    max-width: 45.8333333333%; }

  .col-lg-12-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

  .col-lg-13-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 54.1666666667%;
            flex: 0 0 54.1666666667%;
    max-width: 54.1666666667%; }

  .col-lg-14-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.3333333333%;
            flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }

  .col-lg-15-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 62.5%;
            flex: 0 0 62.5%;
    max-width: 62.5%; }

  .col-lg-16-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.6666666667%;
            flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }

  .col-lg-17-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 70.8333333333%;
            flex: 0 0 70.8333333333%;
    max-width: 70.8333333333%; }

  .col-lg-18-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }

  .col-lg-19-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 79.1666666667%;
            flex: 0 0 79.1666666667%;
    max-width: 79.1666666667%; }

  .col-lg-20-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.3333333333%;
            flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }

  .col-lg-21-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 87.5%;
            flex: 0 0 87.5%;
    max-width: 87.5%; }

  .col-lg-22-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.6666666667%;
            flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }

  .col-lg-23-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 95.8333333333%;
            flex: 0 0 95.8333333333%;
    max-width: 95.8333333333%; }

  .col-lg-24, .col-lg-24-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

  .offset-lg-1-24 {
    margin-left: 4.1666666667%; }

  .offset-lg-2-24 {
    margin-left: 8.3333333333%; }

  .offset-lg-3-24 {
    margin-left: 12.5%; }

  .offset-lg-4-24 {
    margin-left: 16.6666666667%; }

  .offset-lg-5-24 {
    margin-left: 20.8333333333%; }

  .offset-lg-6-24 {
    margin-left: 25%; }

  .offset-lg-7-24 {
    margin-left: 29.1666666667%; }

  .offset-lg-8-24 {
    margin-left: 33.3333333333%; }

  .offset-lg-9-24 {
    margin-left: 37.5%; }

  .offset-lg-10-24 {
    margin-left: 41.6666666667%; }

  .offset-lg-11-24 {
    margin-left: 45.8333333333%; }

  .offset-lg-12-24 {
    margin-left: 50%; }

  .offset-lg-13-24 {
    margin-left: 54.1666666667%; }

  .offset-lg-14-24 {
    margin-left: 58.3333333333%; }

  .offset-lg-15-24 {
    margin-left: 62.5%; }

  .offset-lg-16-24 {
    margin-left: 66.6666666667%; }

  .offset-lg-17-24 {
    margin-left: 70.8333333333%; }

  .offset-lg-18-24 {
    margin-left: 75%; }

  .offset-lg-19-24 {
    margin-left: 79.1666666667%; }

  .offset-lg-20-24 {
    margin-left: 83.3333333333%; }

  .offset-lg-21-24 {
    margin-left: 87.5%; }

  .offset-lg-22-24 {
    margin-left: 91.6666666667%; }

  .offset-lg-23-24 {
    margin-left: 95.8333333333%; } }
@media (min-width: 1200px) {
  .top-space {
    margin-top: 110px; }

  .col-xl-1-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 4.1666666667%;
            flex: 0 0 4.1666666667%;
    max-width: 4.1666666667%; }

  .col-xl-2-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.3333333333%;
            flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }

  .col-xl-3-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

  .col-xl-4-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.6666666667%;
            flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }

  .col-xl-5-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20.8333333333%;
            flex: 0 0 20.8333333333%;
    max-width: 20.8333333333%; }

  .col-xl-6-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

  .col-xl-7-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 29.1666666667%;
            flex: 0 0 29.1666666667%;
    max-width: 29.1666666667%; }

  .col-xl-8-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.3333333333%;
            flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }

  .col-xl-9-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 37.5%;
            flex: 0 0 37.5%;
    max-width: 37.5%; }

  .col-xl-10-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.6666666667%;
            flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }

  .col-xl-11-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45.8333333333%;
            flex: 0 0 45.8333333333%;
    max-width: 45.8333333333%; }

  .col-xl-12-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

  .col-xl-13-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 54.1666666667%;
            flex: 0 0 54.1666666667%;
    max-width: 54.1666666667%; }

  .col-xl-14-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.3333333333%;
            flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }

  .col-xl-15-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 62.5%;
            flex: 0 0 62.5%;
    max-width: 62.5%; }

  .col-xl-16-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.6666666667%;
            flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }

  .col-xl-17-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 70.8333333333%;
            flex: 0 0 70.8333333333%;
    max-width: 70.8333333333%; }

  .col-xl-18-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }

  .col-xl-19-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 79.1666666667%;
            flex: 0 0 79.1666666667%;
    max-width: 79.1666666667%; }

  .col-xl-20-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.3333333333%;
            flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }

  .col-xl-21-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 87.5%;
            flex: 0 0 87.5%;
    max-width: 87.5%; }

  .col-xl-22-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.6666666667%;
            flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }

  .col-xl-23-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 95.8333333333%;
            flex: 0 0 95.8333333333%;
    max-width: 95.8333333333%; }

  .col-xl-24, .col-xl-24-24 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

  .offset-xl-1-24 {
    margin-left: 4.1666666667%; }

  .offset-xl-2-24 {
    margin-left: 8.3333333333%; }

  .offset-xl-3-24 {
    margin-left: 12.5%; }

  .offset-xl-4-24 {
    margin-left: 16.6666666667%; }

  .offset-xl-5-24 {
    margin-left: 20.8333333333%; }

  .offset-xl-6-24 {
    margin-left: 25%; }

  .offset-xl-7-24 {
    margin-left: 29.1666666667%; }

  .offset-xl-8-24 {
    margin-left: 33.3333333333%; }

  .offset-xl-9-24 {
    margin-left: 37.5%; }

  .offset-xl-10-24 {
    margin-left: 41.6666666667%; }

  .offset-xl-11-24 {
    margin-left: 45.8333333333%; }

  .offset-xl-12-24 {
    margin-left: 50%; }

  .offset-xl-13-24 {
    margin-left: 54.1666666667%; }

  .offset-xl-14-24 {
    margin-left: 58.3333333333%; }

  .offset-xl-15-24 {
    margin-left: 62.5%; }

  .offset-xl-16-24 {
    margin-left: 66.6666666667%; }

  .offset-xl-17-24 {
    margin-left: 70.8333333333%; }

  .offset-xl-18-24 {
    margin-left: 75%; }

  .offset-xl-19-24 {
    margin-left: 79.1666666667%; }

  .offset-xl-20-24 {
    margin-left: 83.3333333333%; }

  .offset-xl-21-24 {
    margin-left: 87.5%; }

  .offset-xl-22-24 {
    margin-left: 91.6666666667%; }

  .offset-xl-23-24 {
    margin-left: 95.8333333333%; } }
/* by default 24 grid cols full width */
[class^="col-"][class*="-24"] {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

/* nogutter for 24 grid cols */
.no-gutters > [class*="col-"] {
  padding-right: 0 !important;
  padding-left: 0 !important; }

/* ================== SECTIONS =================== */
.navbar-top {
  padding: 0; }

.navbar-landing {
  -webkit-transition: .5s;
  transition: .5s;
  padding-top: 15px;
  padding-bottom: 15px;
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%; }

.navbar-landing.fixed-top {
  -webkit-transition: .5s;
  transition: .5s;
  padding-top: 7px;
  padding-bottom: 7px; }

/* ================== header main ==================  */
.header-main {
  padding-top: 1rem;
  padding-bottom: 1rem; }

.brand-wrap .logo, .navbar-brand .logo {
  margin-right: 7px;
  max-height: 42px;
  display: inline-block; }
.brand-wrap .logo-text, .navbar-brand .logo-text {
  margin: 0;
  display: inline-block;
  font-size: 22px;
  vertical-align: middle; }

.header-main {
  position: relative; }

.widget-header {
  margin-left: 7px;
  margin-right: 7px;
  display: inline-block;
  position: relative; }
  .widget-header form {
    min-width: 280px; }
  .widget-header .title {
    display: block; }
  .widget-header .notify {
    position: absolute;
    top: -3px;
    right: -10px; }

/* desktop only */
/* desktop only .end */
/* ================ SECTION-FOOTER ==================  */
.site-footer {
  background-image: url('/frontend/img/footer_bg.png');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  color: #bbb;
  padding-top: 40px;
  font-size: 15px; 
}

.site-footer a {
  color: #bbb; }

.site-footer a:hover {
  color: #fff; } 

.footer-top {
  padding-bottom: 30px;  border-bottom: 1px solid #444; }

.section-footer ul {
  list-style: none;
  padding-left: 0; }

.section-footer ul li {
  margin-bottom: 10px; }  

.section-footer ul a {
  color: inherit; }

.footer-top .title {
  font-weight: 600; }

.footer-bottom {
  padding: 15px 0; }

/* Social Icons */
/* Container to hold the icons and align them */
.social-icons-footer {
    display: flex;
    gap: 15px; /* Space between the circles */
    list-style: none;
    margin-top: 15px;
}

/* Style for the wrapper (the circle) */
.social-icon-footer {
    /* Define the size of the circle */
    width: 32px; 
    height: 32px;
    
    /* Make it a circle */
    border-radius: 50%;
    
    /* Set the colors */
    background-color: #bbb; /* White circle background */
    color: #333; /* Black icon color */
    
    /* Center the Font Awesome icon perfectly inside the circle using Flexbox */
    display: flex;
    justify-content: center; 
    align-items: center;
    
    /* Remove default link underline */
    text-decoration: none;
}

/* Style for the icon itself */
.social-icon-footer i {
    color: #333;
    font-size: 20px; /* Adjusts icon size */
}

.social-icon-footer:hover {
    background-color: #fff; /* Darker circle on hover */
    color: #333; /* White icon on hover */
}

/* ================== PAGES =================== */
/* ================ PAGES HEADER ================== */
.section-pagetop {
  /*padding: 45px 0;*/
  background-repeat: no-repeat;
  /*background-image: url('/frontend/img/unsplash.jpg');*/
  background-size: cover;
 }
  .section-pagetop .title-page {
    color: rgba(17, 16, 16, 0.884);
    text-transform: uppercase;
    text-align: center; }

/* ================== PAGE DETAILS ==================  */
.gallery-wrap .img-big-wrap {
  margin-bottom: 10px;
  text-align: center;
  overflow: hidden;
  background-color: #fff; }
  .gallery-wrap .img-big-wrap a {
    text-align: center;
    display: block; }
  .gallery-wrap .img-big-wrap img {
    height: 450px;
    width: auto;
    display: inline-block;
    cursor: -webkit-zoom-in;
    cursor: zoom-in; }
.gallery-wrap .img-small-wrap {
  text-align: center; }
  .gallery-wrap .img-small-wrap .item-gallery {
    width: 60px;
    height: 60px;
    border: 1px solid #ddd;
    margin: 7px 2px;
    display: inline-block;
    overflow: hidden; }
  .gallery-wrap .img-small-wrap img {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 4px;
    cursor: -webkit-zoom-in;
    cursor: zoom-in; }
    .gallery-wrap .img-small-wrap img:hover {
      -webkit-filter: brightness(1.1);
              filter: brightness(1.1);
      cursor: -webkit-zoom-in;
      cursor: zoom-in; }

/* ================== COMPONENTS =================== */
.owl-prev, .owl-next {
  z-index: 9;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute; }

.owl-prev {
  left: -30px;
  content: "<"; }

.owl-next {
  right: -30px;
  content: ">"; }

/* slider main */
.slider-main .owl-prev, .slider-main .owl-next {
  padding: 18px 7px;
  color: #FFF;
  background-color: rgba(0, 0, 0, 0.4); }
.slider-main .owl-nav [class*='owl-']:hover {
  background: #869791;
  color: #FFF; }
.slider-main .owl-prev {
  left: 0; }
.slider-main .owl-next {
  right: 0; }
.slider-main .item-slide {
  height: 325px; }
  .slider-main .item-slide img {
    min-width: 100%;
    min-height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

/* slide items  */
.slide-items .owl-prev, .slide-items .owl-next {
  top: 42%; }

.btn-facebook {
  background-color: #405D9D;
  color: #fff; }
  .btn-facebook:hover {
    color: #fff; }

.btn-instagram {
  background-color: #E52D27;
  color: #fff; }
  .btn-instagram:hover {
    color: #fff; }

.btn-youtube {
  background-color: #C8046C;
  color: #fff; }
  .btn-youtube:hover {
    color: #fff; }

.btn-twitter {
  background-color: #42AEEC;
  color: #fff; }
  .btn-twitter:hover {
    color: #fff; }

.itembox .icon-wrap {
  margin-bottom: 15px;
  margin-top: 7px; }
.itembox img {
  max-width: 100%; }

.itemside {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%; }
  .itemside .text-wrap {
    padding-left: 15px;
    padding-right: 7px; }
  .itemside .img-wrap {
    position: relative;
    border-radius: 0.25rem 0 0 0.25rem; }
  .itemside img {
    -o-object-fit: contain;
       object-fit: contain; }
  .itemside p, .itemside .title {
    margin-bottom: 0.5rem; }
  .itemside .img-bg {
    -o-object-fit: contain;
       object-fit: contain;
    position: absolute;
    right: 0;
    bottom: 0;
    max-height: 100px;
    bottom: 0;
    z-index: 0; }
  .itemside .card-body {
    position: relative;
    z-index: 3; }

.items-bordered-wrap .itemside:not(:last-child) {
  border-bottom: 1px solid #dee2e6;
  padding-bottom: 10px;
  margin-bottom: 10px; }

.itemlist {
  padding: 20px;
  border-bottom: 1px solid #eee; }

.list-inline {
  margin-bottom: 0; }

.list-inline-item {
  vertical-align: middle; }

/* --------- description list --------*/
[class*="dlist-"] {
  margin-bottom: 5px; }
  [class*="dlist-"] dd {
    margin-bottom: 0; }

.dlist-inline dt, .dlist-inline dd {
  display: inline-block; }

.dlist-align dt {
  width: 90px;
  float: left;
  word-wrap: break-word; }
.dlist-align dd {
  margin-left: 120px;
  vertical-align: baseline; }

/* -------------------- list.row--------------------- */
ul.row, ul.row-sm {
  list-style: none;
  padding: 0;
  margin-bottom: 0; }

/* ================= lists ================= */
[class*="list-"] li:after {
  visibility: hidden;
  display: block;
  content: "";
  overflow: hidden;
  height: 0;
  clear: both; }

.list-lg li {
  margin-bottom: 10px; }

.list-icon {
  list-style: none;
  padding: 0; }
  .list-icon li {
    margin-bottom: 10px; }
  .list-icon img {
    width: 30px;
    vertical-align: middle;
    margin-right: 15px; }
  .list-icon .icon {
    width: 22px;
    margin-right: 15px;
    vertical-align: middle;
    font-size: 20px;
    text-align: center; }
  .list-icon span {
    vertical-align: middle; }

.list-bullet {
  list-style: none;
  padding: 0; }

.list-bullet li {
  margin-bottom: 7px;
  position: relative;
  padding-left: 15px; }

.list-bullet li::before {
  content: " ";
  position: absolute;
  top: 45%;
  left: 0;
  width: 7px;
  height: 7px;
  margin: 0px 10px 0px 0px;
  background: #6c757d;
  border-radius: 7px; }

.list-check > li {
  list-style: none;
  position: relative; }
.list-check > li::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  color: #6c757d;
  position: absolute;
  top: 0px;
  left: 0;
  content: "\f00c";
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  display: inline-block; }

.list-icon {
  list-style: none;
  padding: 0; }
  .list-icon li {
    position: relative;
    padding-left: 30px; }
  .list-icon .icon {
    position: absolute;
    top: 3px;
    left: 0;
    font-size: 13px; }

.card-product {
  margin-bottom: 1rem;
  /* btn-overlay-bottom */ }
  .card-product:after {
    content: "";
    display: table;
    clear: both;
    visibility: hidden; }
  .card-product .img-wrap {
    /*border-radius: 0.2rem 0.2rem 0 0;*/
    overflow: hidden;
    position: relative;
    height: 300px;
    text-align: center; 
    background-color: #f8f8f8; }
    .card-product .img-wrap img {
      max-height: 100%;
      max-width: 100%;
      width: auto;
      display: inline-block;
      -o-object-fit: cover;
         object-fit: cover; }
  .card-product .info-wrap {
    overflow: hidden;
    padding: 15px;
    border-top: 1px solid #eee; }
  .card-product .brand-wrap {
    overflow: hidden;
    padding: 15px; 
    font-size: 0.8em;}
  .card-product .action-wrap {
    padding-top: 4px;
    margin-top: 4px; }
  .card-product .bottom-wrap {
    padding: 15px;
    /*border-top: 1px solid #eee;*/ }
  .card-product .title {
    margin-top: 0; }
  .card-product .btn-overlay {
    -webkit-transition: .5s;
    transition: .5s;
    opacity: 0;
    left: 0;
    bottom: 0;
    color: #fff;
    width: 100%;
    padding: 5px 0;
    font-size: 12px;
    text-align: center;
    position: absolute;
    text-transform: uppercase;
    background: rgba(0, 0, 0, 0.5); }
  .card-product:hover .btn-overlay {
    opacity: 1; }
  .card-product:hover {
    -webkit-box-shadow: 0 4px 15px rgba(153, 153, 153, 0.3);
            box-shadow: 0 4px 15px rgba(153, 153, 153, 0.3);
    -webkit-transition: .5s;
    transition: .5s; }

.promotion {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 0px 8px;
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    text-transform: uppercase;
    background-color: #555555;
    border-radius: 5px;
    z-index: 10; }

.promotion-cart {
    padding: 0px 8px;
    font-size: 14px;
    font-weight: 400;
    color: #fff;
    text-transform: uppercase;
    background-color: #555555;
    width: fit-content;
    border-radius: 5px;
    z-index: 10; }

.card-sm .img-wrap {
  height: 180px; }

.card-banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  background-color: #fff;
  background-size: cover;
  border-radius: 0.25rem; }
  .card-banner .card-body {
    background-size: cover;
    position: relative;
    z-index: 10; }
  .card-banner .img-bg {
    position: absolute;
    right: 0;
    bottom: 0;
    mix-blend-mode: multiply;
    max-width: 100%; }
  .card-banner .overlay {
    background-color: rgba(0, 0, 0, 0.65);
    z-index: 10;
    padding: 1.25rem;
    color: #fff; }
  .card-banner .overlay.bottom {
    bottom: 0;
    left: 0;
    position: absolute;
    width: 100%; }
  .card-banner .overlay.top {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%; }
  .card-banner .overlay-cover {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    width: 100%; }
  .card-banner .overlay.left {
    top: 0;
    left: 0;
    bottom: 0;
    position: absolute; }
  .card-banner .text-bottom {
    position: absolute;
    left: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    padding: 7px 20px;
    padding-top: 30px;
    border-radius: 0 0 0.25rem 0.25rem;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.8)));
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    color: #fff; }

.product-title{
  font-size: 3em;
  font-weight: 600;
  max-height: 2.6em; /* Limit to two lines */
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* Number of lines to show */
  -webkit-box-orient: vertical; }

.banner-size-lg {
  height: 350px; }

.card .img-wrap {
  overflow: hidden; }

.icontext {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .icontext .icon-wrap {
    position: relative; }
  .icontext .text-wrap {
    line-height: 1.2;
    padding-left: 10px; }
  .icontext small, .icontext .title {
    display: block; }

.price-new, .price {
  margin-right: 5px; }

.price-old {
  color: #999; }

.notify {
  position: absolute;
  top: -4px;
  right: -10px;
  display: inline-block;
  padding: .25em .6em;
  font-size: 75%;
  line-height: 1;
  text-align: center;
  border-radius: 3rem;
  color: #fff;
  background-color: #dc3545; }

.icon-action {
  margin-top: 5px;
  float: right;
  font-size: 80%; }

.list-group .list-group-item {
  padding-bottom: .5rem; }
.list-group .title {
  margin-top: 5px;
  margin-bottom: 12px; }

.card-header .title {
  margin-bottom: 0;
  line-height: 1.5; }

.card-group-item {
  border-bottom: 1px solid #dee2e6; }
  .card-group-item .card-header {
    border-bottom: 0;
    background-color: #f9f9f9; }
  .card-group-item:last-child {
    border-bottom: 0; }

    .star-rating {
  font-size: 24px;
}

.filled-star {
  color: black;
}

.empty-star {
  color: #ddd;
}

.half-star {
  position: relative;
  display: inline-block;
  color: #ddd; /* The color of the empty star */
}

.half-star::before {
  content: '★'; /* The character for a full star */
  position: absolute;
  left: 0;
  top: 0;
  width: 50%; /* Only fill up half of the star */
  overflow: hidden;
  color: black; /* The color of the filled part */
}
/* ====================== shopping-cart ==================== */
.shopping-cart-wrap img {
  max-width: 100px; }
.shopping-cart-wrap thead th {
  border-top: 0;
  border-bottom: 0; }
.shopping-cart-wrap .price {
  color: #007bff;
  font-size: 18px;
  font-weight: bold;
  margin-right: 5px;
  display: block; }

/* ================  Basket  ================== */

.cart-drawer {
    position: fixed;
    top: 0;
    right: 0;
    width: 380px; /* Width of the slide-out panel */
    height: 100%;
    max-height: 100vh;
    background-color: white;
    box-shadow: -4px 0 15px rgba(0, 0, 0, 0.15);
    z-index: 1050; /* Ensure it's above other content */
    padding: 20px;
    box-sizing: border-box;
    overflow-y: auto;

    /* --- Key Animation Properties --- */
    transform: translateX(100%); /* Hides the panel by pushing it 100% of its width to the right */
    transition: transform 0.3s ease-out; /* Smooth slide effect */
}

/* State when the drawer is open */
.cart-drawer.open {
    transform: translateX(0); /* Slides the panel into view */
}

/* --- Backdrop Styles --- */
.cart-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1040;
    
    /* Initially hidden and non-interactive */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-out;
}

/* State when the backdrop is active */
.cart-backdrop.open {
    opacity: 1;
    visibility: visible;
}

/* --- Example Content Styles (for visual fidelity) --- */
.cart-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.close-btn {
    border: none;
    background: none;
    font-size: 24px;
    cursor: pointer;
}
.cart-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
    background-color: #f8f8f8;
    box-sizing: border-box;
}
.checkout-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px;
    background-color: #007bff;
    color: white;
    text-decoration: none;
    border-radius: 4px;
}

/* ====================== block ==================== */
.box {
  padding: 1rem 1.2rem;
  display: block;
  background: #fff;
  border-radius: 0.2rem;
  -webkit-box-shadow: 0 1px 3px rgba(51, 51, 51, 0.1);
          box-shadow: 0 1px 3px rgba(51, 51, 51, 0.1); }

/* --------- media element --------*/
.media .img-wrap {
  margin-right: 1rem; }

/* =================  ELEMENTS FOR PRODUCT =================== */
.badge-new {
  top: 7px;
  left: 7px;
  position: absolute;
  display: block;
  z-index: 10;
  padding: 2px 7px;
  font-size: 12px;
  background-color: #ef5f5f;
  color: #fff;
  border-radius: 4px; }

.badge-offer {
  display: block;
  position: absolute;
  top: 0px;
  right: 15px;
  z-index: 2; }
  .badge-offer b {
    background: #ef5f5f;
    padding: 4px;
    font-family: 'Bebas';
    font-weight: normal;
    text-align: center;
    color: #fff;
    font-size: 16px;
    display: inline-block;
    height: 36px;
    width: 50px;
    position: relative; }
  .badge-offer b:after {
    border-top: 7px solid #ef5f5f;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    content: "";
    height: 0;
    left: 0;
    position: absolute;
    top: 36px;
    width: 0; }

/* ================= RATINGS ============== */
.label-rating {
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle; }

.stars-simple {
  margin-bottom: 7px; }
  .stars-simple i {
    color: orange; }
  .stars-simple small {
    color: #999;
    margin-left: 5px; }

/* rating-list */
.rating-stars {
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  line-height: 1;
  white-space: nowrap;
  clear: both; }
  .rating-stars i {
    font-size: 14px;
    color: #ccc;
    display: inline; }
  .rating-stars li {
    display: block;
    text-overflow: clip;
    white-space: nowrap;
    z-index: 1; }
  .rating-stars li.stars-active {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden; }
    .rating-stars li.stars-active i {
      color: orange; }

.divider-text {
  position: relative;
  text-align: center;
  margin-top: 15px;
  margin-bottom: 15px; }
  .divider-text:after {
    content: "";
    position: absolute;
    width: 100%;
    border-bottom: 1px solid #ddd;
    top: 55%;
    left: 0;
    z-index: 1; }
  .divider-text span {
    background-color: #fff;
    padding: 7px;
    font-size: 12px;
    position: relative;
    z-index: 2; }

.menu-category {
  margin: 0;
  padding: 0; }
  .menu-category li {
    position: relative;
    display: block;
    border-bottom: 1px solid #dee2e6; }
  .menu-category > li > a {
    display: block;
    padding: 10px 15px; }
  .menu-category .submenu {
    display: none;
    margin: 0;
    padding: 0;
    -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.2);
            box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.2);
    z-index: 20;
    position: absolute;
    left: 100%;
    top: 0;
    width: 250px;
    background: #fff; }
    .menu-category .submenu li {
      list-style: none; }
    .menu-category .submenu li a {
      padding: 7px 15px;
      display: block; }
  .menu-category li:hover {
    background: #f8f8f8;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
  .menu-category li:hover .submenu {
    display: block;
    margin-left: 0px; }

/*# sourceMappingURL=ui.css.map */

.category-banner{
  height: 400px;
  background-size: cover;
  background-position: center;
  position: relative;
  /*border-radius: 0.25rem;*/
  overflow: hidden;
  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;
  color: #111;
  text-align: left;
}

.category-banner-text{
  height: 400px;
  overflow: hidden;
  color: #111;
  text-align: left;
  padding: 20px;
}

.category-banner-text h3{
  font-size: 2.5em;
  font-weight: 600;
}

.category-banner-text p{
  margin-top: 20px;
  max-width: 500px;
}

/* ================= FLOATING LABEL INPUTS used in Checkout Form ================= */
/* Container must be positioned relative to hold the absolute label */
.input-float-container {
    position: relative;
    width: 100%;
    margin-bottom: 0px;
}

/* Base input styling (minimal border, large padding) */
.input-float-container input {
    width: 100%;
    padding: 40px 10px 18px 10px; /* Large top padding to make room for the label */
    border: 1px solid #ccc;
    border-radius: 2px;
    font-size: 1em;
    box-sizing: border-box;
    outline: none;
}

/* Base Textarea Styling */
.textarea-float-container textarea {
    width: 100%;
    /* 🔑 CHANGE 1: Increase overall padding, especially top, and set a min-height */
    padding: 25px 10px 10px 10px; 
    min-height: 80px; 
    resize: vertical; /* Allow vertical resizing, common for textareas */
    
    border: 1px solid #ccc;
    border-radius: 2px;
    font-size: 1em;
    box-sizing: border-box;
    outline: none;
}

.radio-float-container{
    width: 100%;
    padding: 20px 10px 10px 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 2px;
    font-size: 1em;
    box-sizing: border-box;
    outline: none;
}

/* Label Styling */
.input-float-container label {
    position: absolute;
    /* 🔑 CHANGE 2: Adjust default vertical alignment (top value) */
    top: 20px; /* Position the label nicely near the top */
    left: 10px;
    
    /* Remove transform: translateY(-50%) as it's no longer vertically centered */
    color: #999;
    pointer-events: none;
    transition: 0.2s ease-out;
}

/* Label Styling */
.textarea-float-container label {
    position: absolute;
    /* 🔑 CHANGE 2: Adjust default vertical alignment (top value) */
    top: 20px; /* Position the label nicely near the top */
    left: 15px;
    
    /* Remove transform: translateY(-50%) as it's no longer vertically centered */
    color: #999;
    pointer-events: none;
    transition: 0.2s ease-out;
}

/* Label Styling */
.radio-float-container label {
    padding-left: 15px;
}

/* ----------------------------------------------------
   The Floating Effect
   1. When input is focused, AND
   2. When input has content (checked via JS below)
   ---------------------------------------------------- */

.input-float-container input:focus + label,
.input-float-container.has-content label {
    top: 5px; /* Slide the label up */
    font-size: 0.8em; /* Shrink the label text */
    /*color: #5558ff; *//* Change color for highlight */
    transform: translateY(0);
}

/* ----------------------------------------------------
   The Floating Effect
   ---------------------------------------------------- */

.textarea-float-container textarea:focus + label,
.textarea-float-container.has-content label {
    /* 🔑 CHANGE 3: Slide position remains high, but slightly less than default top */
    top: 5px; /* Move the label slightly above its original position */
    font-size: 0.8em; 
    /*color: #5558ff; */
    /* The transform property is no longer needed here */
}

.hr_checkout {
    border-top: 1px solid #555;
}

/* ================== Basket =================== */
.basket-container {
    padding: 10px 0;
}

/* --- Header and Messaging --- */
.basket-header h1 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px;
    padding-left: 0;
}

.basket-message {
    font-size: 14px;
    color: #555;
    margin-bottom: 25px;
}

/* --- Product List --- */
.product-list {
    border-top: 1px solid #eee;
}

.product-item {
    display: flex;
    align-items: flex-start; /* Align content to the top */
    padding: 15px 0;
    border-bottom: 1px solid #eee;
}

/* --- Product Image --- */
.product-image-area {
    width: 80px;
    flex-shrink: 0; /* Prevents image area from shrinking */
    margin-right: 15px;
    text-align: center; /* Center the image vertically */
}

.product-image {
    width: auto;
    height: auto;
    display: inline-block;
    border-radius: 4px;
    height: 80px;
}

/* --- Product Details (Center Column) --- */
.product-details {
    flex-grow: 1; /* Takes up available space */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.product-info {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px; /* Space between info and actions */
}

.brand {
    font-size: 11px;
    color: #777;
    font-weight: 500;
    text-transform: uppercase;
}

.name {
    font-size: 14px;
    font-weight: 600;
    color: #222;
    line-height: 1.3;
}

.size {
    font-size: 12px;
    color: #777;
    margin-top: 2px;
}

/* --- Badges (Buy 1 Free 1, 50% OFF) --- */
.badge {
    display: inline-block;
    padding: 3px 6px;
    border-radius: 3px;
    font-size: 9px;
    font-weight: 700;
    margin-top: 5px;
    align-self: flex-start; /* Align badge to the left */
}

.badge-primary { /* BUY 1 FREE 1 */
    background-color: #f1fbe0;
    color: #8cc34b; /* Green-like text */
}

.badge-secondary { /* Free item label */
    background-color: #eee;
    color: #555;
}

.badge-discount { /* 50% OFF */
    background-color: #f9e2e2;
    color: #d9534f; /* Red-like text */
}

/* --- Actions (Quantity and Delete) --- */
.product-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.quantity-control {
    display: flex;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
    height: 28px;
    line-height: 28px;
    font-size: 12px;
}

.qty-btn {
    background: none;
    border: none;
    padding: 0 8px;
    cursor: pointer;
    font-weight: bold;
    color: #555;
    transition: background-color 0.1s;
}

.qty-btn:hover {
    background-color: #f0f0f0;
}

.qty-value {
    padding: 0 10px;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    background-color: #fff;
    font-weight: 500;
}

.delete-link {
    font-size: 12px;
    color: #999;
    text-decoration: none;
}

/* --- Product Pricing (Right Column) --- */
.product-pricing {
    width: 65px;
    text-align: right;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.product-quantity {
    position: absolute;
    /*top: -5px;*/
    left: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #888;
    color: #fff;
    font-size: 0.7em;
    font-weight: bold;
    z-index: 10; /* Ensure quantity sits above the image */
}

.product-quantity-success {
    position: absolute;
    /*top: -5px;*/
    left: 160px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #888;
    color: #fff;
    font-size: 0.7em;
    font-weight: bold;
    z-index: 10; /* Ensure quantity sits above the image */
}


.price {
    font-size: 15px;
    font-weight: 600;
}

.price-free {
    font-size: 15px;
    font-weight: 600;
    color: #8cc34b; /* Green for "Free" */
}

.price-old-line-through {
    font-size: 12px;
    color: #aaa;
    text-decoration: line-through;
    margin-bottom: -5px; /* Pulls discounted price up slightly */
}

.price-discounted {
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.delete-link {
    text-align: right;
    margin-right: 3px;
}

/* --- Summary and Checkout --- */
.basket-summary {
    padding-top: 25px;
}

.summary-row {
    display: flex;
    justify-content: space-between;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 5px;
}

.summary-value {
    color: #222;
}

.total-row {
    display: flex;
    justify-content: space-between;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 15px;
    margin-top: 15px;
}

.total-value {
    color: #222;
}

.delivery-info {
    font-size: 12px;
    color: #777;
    margin-top: 0;
    margin-bottom: 25px;
}

.checkout-button {
    width: 100%;
    background-color: #000;
    color: #fff;
    border: none;
    padding: 5px 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 4px;
    transition: background-color 0.2s;
}

.checkout-button:hover {
    background-color: #333;
}

.contact-title {
    font-size: 2.5em;
    font-weight: 600;
    margin-bottom: 10px;
}

.related-product-title{
    font-size: 2.5em;
    font-weight: 600;
}

/* ================== Attribute options =================== */
/* Basic Container and Typography */
.product-attribute {
  display: flex ;
}

.attribute-selector {
  border: none;
  padding: 0;
  margin: 0;
}

.attribute-label {
  width: -webkit-fill-available;
  flex-basis: 20%;
  display: flex;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  padding: 0;
}

.attribute-options {
  flex-basis: 80%;
  display: flex;
  flex-direction: column;
}

/* Style the Option Box */
.option-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 15px;
  margin-bottom: 10px;
  border: 1px solid #ccc; /* Light grey border */
  border-radius: 4px;
  cursor: pointer;
  transition: border-color 0.2s;
  font-weight: bold;
}

/* Style the SELECTED state */
.option-box:has(input:checked) {
  border-color: #000;
  border-width: 2px;
}

/* Style the Radio Input */
.option-box input[type="radio"] {
  /* Hide default appearance */
  appearance: none;
  -webkit-appearance: none;
  
  /* Custom circle styling (outer ring) */
  width: 16px;
  height: 16px;
  border: 1px solid #333;
  border-radius: 50%;
  margin-right: 10px;
  flex-shrink: 0; /* Prevents it from shrinking */
  position: relative;
}

/* Style the custom DOT when selected */
.option-box input[type="radio"]:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background-color: #333;
  border-radius: 50%;
}

.attribute-value {
  margin-right: auto; /* Pushes price to the right */
}

/*===================  Home Page  ================== */
.split-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    /*margin-bottom: 30px;*/
}

.split-content {
    /* ... existing styling ... */
    height: 500px;
    background-size: cover;
    background-position: left;
    position: relative;
    /*border-radius: 0.25rem;*/
    top: 40px;
    /*padding-left: 10px;*/
    padding-right: 10px;
    color: #111;
    text-align: left;
    max-width: 300px;

    /* KEY: Ensures text content is on top of the image (z-index: 1) */
    z-index: 2; 
}

.split-content h3{
    font-size: 1.8em;
}

.split-content h2{
    font-size: 2.5em;
    font-weight: 600;
    margin-top: -20px;
}

.split-content h4{
    font-size: 1.2em;
}

.split-content p{
    margin-top: 20px;
    max-width: 350px;
    font-size: 0.8em;
}

.split-content a{
    margin-top: 20px;
    color: #111;
    border-bottom: 1px solid #111;
}


.split-left {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    max-height: 500px;
    
    /* KEY: Must be relative to position the absolute image inside it */
    position: relative; 
    
    background-color: #f8f8f8; /* Still useful as a fallback/color overlay */
}

.split-right {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    /*max-height: 500px;*/
    
    /* KEY: Must be relative to position the absolute image inside it */
    position: relative; 
    
    background-color: #f5f1ec; /* Still useful as a fallback/color overlay */
}

/* Ensure the link text is also clearly visible */
.explore-link {
    color: white;
    border-bottom: 2px solid white;
}

.split-image {
    /* KEY 1: Absolute positioning to take it out of the normal flow */
    position: absolute;
    bottom: 0;
    right: 0;
    /*height: 500px;*/

    /* KEY 2: Simulates background-size: cover; */
    object-fit: cover; 
    
    /* KEY 3: Ensures the image is behind the text */
    z-index: 1; 
}

.split-image img{
    bottom: 0;
    right: 0;
    max-height: 500px;
}

.split-image-right {
    /* KEY 1: Absolute positioning to take it out of the normal flow */
    /*position: absolute;*/
    bottom: 0;
    right: 0;
    max-height: 500px;
    margin-left: 30px;

    /* KEY 2: Simulates background-size: cover; */
    object-fit: cover; 
    
    /* KEY 3: Ensures the image is behind the text */
    z-index: 1; 
}

.split-image img{
    bottom: 0;
    right: 0;
    max-height: 500px;
}

/*===================  Section 3 on Home Page  ================== */
.section-product{
  /*height: 500px;*/
  display: flex; 
  justify-content: center; 
  align-items: center;
}

/* --- Team Members Grid --- */
/*.section-product {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}*/

.section-product-card {
    flex-basis: 100%; /* Makes each card take up one-third of the space */
    background-color: #fff;
    display: flex;
    flex-direction: column;
}

/* --- Responsiveness (Optional but recommended) --- */
@media (max-width: 1200px) {
    .section-product {
        flex-wrap: wrap; /* Wrap cards to next line on smaller screens */
    }

    .section-product-card {
        /*flex-basis: 48%;*/ /* Two cards per row */
        margin-bottom: 20px;
    }

}

@media (max-width: 768px) {
    .section-product {
        flex-direction: wrap; /* Stack cards vertically on mobile */
    }

    .section-product-card {
        flex-basis: 100%; 
        margin-bottom: 20px;
        padding-right: 0px;
        padding-left: 0px;
    }

    .split-section{
        flex-direction: column;
        /*margin-bottom: 50px;*/
    }
    .split-left {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        
        /* KEY: Must be relative to position the absolute image inside it */
        position: relative; 
        
        background-color: #f8f8f8; /* Still useful as a fallback/color overlay */
    }

    .split-right {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        
        /* KEY: Must be relative to position the absolute image inside it */
        position: relative; 
        
        background-color: #f5f1ec; /* Still useful as a fallback/color overlay */
    }

    .split-image-right{
      margin-left: 0px;
    }
}

.section-product-text{
    /* ... existing styling ... */
    background-size: cover;
    background-position: left;
    position: absolute;
    /*border-radius: 0.25rem;*/
    /*top: 320px;*/
    bottom: 30px;
    left: 50px;
    color: #111;
    text-align: left;
    max-width: 500px;

    /* KEY: Ensures text content is on top of the image (z-index: 1) */
    z-index: 2; 
}

.section-product-text h2{
    font-size: 2.2em;
    font-weight: 600;
    margin-top: 20px;
    color: white;
}

.section-product-text h3{
    margin-top: 0px;
    max-width: 500px;
    font-size: 1.5em;
    color: white;
}

.section-product-text p{
    margin-top: 0px;
    max-width: 500px;
    font-size: 0.8em;
    color: white;
}

/*=================== Home Products ===================*/
.home-product h2{
    font-size: 2.5em;
    font-weight: 600;
    margin-top: -20px;
}

.home-product p{
    margin-top: 20px;
    font-size: 0.8em;
}

/*================== About Us ========================*/
.section-about{
  text-align: center;
}

.section-about h2{
    font-size: 2.5em;
    font-weight: 600;
    margin-top: 10px;
}

.section-about h3{
    margin-top: 0px;
    font-size: 1.2em;
}

/*========================= Value section in About Us ========================*/
.values-section {
    display: grid;
    /* Defines the column sizes: e.g., 2 parts for text, 1 part for image */
    grid-template-columns: 2fr 1fr; 
    
    /* Set a max width and center the content on the page */
    margin: 50px auto; 
    padding: 0px 20px 0px 20px;
    background-color: #f5f5f5; /* A very light off-white background */
}

.value-section-title {
    font-size: 2.5em;
    font-weight: 600;
    margin-top: 40px;
    margin-bottom: 40px;
    grid-column: 1 / -1; /* Make the title span all columns in the inner grid */
}

.values-grid {
    display: grid;
    /* Create two equal columns for the value points */
    grid-template-columns: 1fr 1fr; 
    gap: 30px; /* Space between the value items */
}

.value-title {
    font-weight: 400;
    font-size: 1.1em;
    margin-bottom: 5px;
}

.value-description {
    font-size: 0.8em;
    line-height: 1.5;
    padding-left: 15px;
}

.image-content {
    /* Ensures the image aligns to the top of its column */
    align-self: start; 
    /* Ensures the image content container takes up 100% of its grid cell */
    width: 100%; 
}

.hero-image {
    width: 100%;
    height: 100%; 
    /* The key to making the image fill its container without distortion */
    object-fit: cover; 
    display: block; /* Removes any extra space below the image */
}

/* --- 2. PARTNERS SECTION STYLES --- */

.partners-section {
    /*padding: 60px 80px;*/
    background-color: #fff; 
}

.partners-header {
    margin-bottom: 40px;
}

.partners-header p {
    font-size: 1em;
    color: #666;
}

/* CSS GRID for the 3x3 Layout */
.partners-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); 
    gap: 30px; 
}

.partner-item {
    display: flex;
    flex-direction: column;
}

/* *** STYLING FOR THE IMG ELEMENT *** */
.brand-image {
    width: 100%;
    height: 300px; /* Set a fixed height for the image area */
    object-fit: cover; /* This makes the image cover the area without distortion, similar to background-size: cover */
    margin-bottom: 15px;
    /* Optional: Ensure the image is treated as a block element */
    display: block; 
}


.partner-item h3 {
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: 5px;
}

.partner-item p {
    font-size: 1em;
    color: #333;
    line-height: 1.4;
}

/* --- RESPONSIVENESS (Unchanged) --- */

@media (max-width: 1024px) {
    .partners-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .partners-section {
        padding: 40px 20px;
    }
    .partners-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1920px) {
    .silder-div-img {
        height: 591px;
        overflow: hidden;
    }
}

@media (max-width: 1200px) {
    .silder-div-img {
        height: 490px;
        overflow: hidden;
    }
}

@media (max-width: 992px) {
    .silder-div-img {
        height: 404px;
        overflow: hidden;
    }
}

@media (max-width: 768px) {
    .silder-div-img {
        height: 314px;
        overflow: hidden;
    }
}

/*===================  History  ===================*/

.timeline-page-container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}

/* Header Styles */
.header-section {
    padding: 20px 0 40px 0;
}

.main-title {
    font-size: 2.5em;
    font-weight: 600;
    margin-bottom: 5px;
}

.subtitle {
    font-size: 16px;
    font-weight: 400;
    margin: 5px 0 0 0;
    color: #555;
}

/* --- Timeline Navigation Styling --- */
.timeline-nav {
    position: relative;
    padding: 30px 0 10px 0;
}

/* The fixed gray line */
.timeline-line {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background-color: #ccc;
    transform: translateY(-50%);
    z-index: 1;
}

/* Container for year numbers */
.timeline-years {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}

.year-item {
    font-size: 16px;
    color: #555;
    cursor: pointer;
    transition: color 0.3s;
    position: relative;
    /* Centers the text over the vertical position of the line */
    top: -25px; 
    width: 100%;
    text-align: center;
}

/* Styling for the active year box (2025 in the image) */
.active_year {
    color: #000;
}

/*.year-box {
    padding: 5px 10px;
    font-size: 14px;
    background-color: #fff;
    font-weight: 700;
}*/

/* The thick black line segment (active bar) */
.timeline-active-bar {
    position: absolute;
    top: 50%;
    height: 3px;
    background-color: #000;
    z-index: 2;
    transform: translateY(-50%);
    /* These values will be set by JavaScript */
    left: 49.5%; /* Example starting position for 2025 */
    width: 25%;  /* Example starting width for 2025 */
    transition: left 0.5s ease, width 0.5s ease;
}

.content-item {
    display: none; /* Hide all content items by default */
    justify-content: space-between;
    align-items: flex-start;
    gap: 5%;
}

.content-item.active_year {
    display: flex; /* Show the active content item */
}

.left-content {
    flex-basis: 40%; /* Space for the large year */
    text-align: left;
}

.right-content {
    flex-basis: 55%; /* Space for the text details */
    padding-top: 15px;
}

.content-title {
    font-size: 12px;
    font-weight: 700;
    margin: 0 0 20px 0;
    color: #777;
}

.content-text {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 10px;
}

.content-subtext {
    font-size: 14px;
    color: #777;
    margin-top: 20px;
}


@media (max-width: 1920px) {
    .large-year {
        font-family: 'Montserrat', sans-serif;
        font-size: 140px;
        font-weight: 800;
        color: #000;
        margin: 0;
        line-height: 1;
    }
}

@media (max-width: 1200px) {
    .large-year {
        font-family: 'Montserrat', sans-serif;
        font-size: 120px;
        font-weight: 800;
        color: #000;
        margin: 0;
        line-height: 1;
    }
}

@media (max-width: 992px) {
    .large-year {
        font-family: 'Montserrat', sans-serif;
        font-size: 100px;
        font-weight: 800;
        color: #000;
        margin: 0;
        line-height: 1;
    }
}

@media (max-width: 768px) {
    .large-year {
        font-family: 'Montserrat', sans-serif;
        font-size: 60px;
        font-weight: 800;
        color: #000;
        margin: 0;
        line-height: 1;
    }
}

/* ====================== Our Team ==================== */
/* --- Global Styles & Typography --- */


/* Header Styles */
.header-section {
    padding: 20px 0 40px 0;
}

/* --- Team Members Grid --- */
.team-members-grid {
    display: flex;
    gap: 20px; /* Space between the cards */
    justify-content: space-between;
}

.member-card {
    flex-basis: 100%; /* Makes each card take up one-third of the space */
    background-color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow if needed, though the image implies a clean look */
    display: flex;
    flex-direction: column;
}

/* Photo Area Styling */
.member-photo-area {
    width: 100%;
    /* Use the padding hack to maintain a 1:1 aspect ratio for the photo area */
    padding-top: 100%; 
    position: relative;
    overflow: hidden;
    /* Sets the dark background color visible in the photo */
    background-color: #333; 
    aspect-ratio: 1 / 1.5;
}

.member-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Key: Maintain the aspect ratio and cover the container */
    object-fit: cover; 
    object-position: center top; /* Centers the focus for headshots */
    display: block;
}

/* Details Section Styling */
.member-details {
    padding: 20px;
    background-color: #000; /* Black background for the text area */
    color: #fff; /* White text color */
    height: 100%; /* Ensures details section takes remaining height */
}

.member-quote {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 25px;
    font-style: italic;
}

.separator-line {
    width: 100%;
    height: 1px;
    background-color: #fff;
    margin: 15px 0;
}

.member-name {
    font-size: 14px;
    font-weight: 800; /* Very bold look */
    margin: 0;
    line-height: 1.4;
}

.member-title-location {
    font-size: 12px;
    font-weight: 400;
    margin: 0;
    color: #ccc; /* Slightly lighter color for secondary text */
}

/* --- Responsiveness (Optional but recommended) --- */
@media (max-width: 900px) {
    .team-members-grid {
        flex-wrap: wrap; /* Wrap cards to next line on smaller screens */
    }

    .member-card {
        flex-basis: 48%; /* Two cards per row */
        margin-bottom: 20px;
    }
}

@media (max-width: 600px) {
    .team-members-grid {
        flex-direction: wrap; /* Stack cards vertically on mobile */
    }

    .member-card {
        flex-basis: 100%; 
        margin-bottom: 20px;
    }
}

/* --- Overlay Details Styling: KEY CHANGES HERE --- */
.member-details-overlay {
    position: absolute;
    bottom: 0; /* Align to the bottom of the photo area */
    left: 0;
    right: 0;
    color: #fff;
    padding: 25px 20px 20px 20px;
    z-index: 10; /* Ensures the text is on top of the image */
    
    /* Creates the semi-transparent black fade-in effect from the bottom */
    background: linear-gradient(
        to top, 
        rgba(0, 0, 0, 0.9) 0%, /* Solid black at the very bottom */
        rgba(0, 0, 0, 0.7) 40%, /* Fade-out to transparent */
        rgba(0, 0, 0, 0) 100%
    );
}

/* =================  Slide show in Product page =================== */
.slideshow-container {
  position: relative;
  margin: auto;
  overflow: hidden;
}

/* Hide slides by default */
.mySlides {
  display: none;
  position: relative;
}

/* Image styling */
.mySlides img {
  display: block;
  object-fit: cover;
  /*aspect-ratio: 16 / 9;*/ /* Adjust this to match your preferred height */
}

/* The "CENDER" text overlay */
.overlay-text {
  color: #ffffff;
  font-size: 60px;
  font-weight: 800;
  position: absolute;
  top: 20px;
  right: 40px;
  font-family: sans-serif;
  letter-spacing: 2px;
}

/* Dot navigation container */
.dot-container {
  text-align: center;
  position: absolute;
  bottom: 20px;
  width: 100%;
}

.dot {
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 0 5px;
  background-color: #717171;
  border-radius: 50%;
  display: inline-block;
  /*transition: background-color 0.6s ease;*/
}

.active, .dot:hover {
  background-color: #bbb;
}

/* Fading animation */
.fading {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}
