.elementor-26015 .elementor-element.elementor-element-58c0ecf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-34px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-26015 .elementor-element.elementor-element-6af3bd5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-26015 .elementor-element.elementor-element-83a65bc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-26015 .elementor-element.elementor-element-0b0bbb5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-26015 .elementor-element.elementor-element-61f2828{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-26015 .elementor-element.elementor-element-58c0ecf{--content-width:1300px;}.elementor-26015 .elementor-element.elementor-element-6af3bd5{--content-width:1300px;}.elementor-26015 .elementor-element.elementor-element-83a65bc{--content-width:1300px;}.elementor-26015 .elementor-element.elementor-element-0b0bbb5{--content-width:1300px;}.elementor-26015 .elementor-element.elementor-element-61f2828{--content-width:1300px;}}/* Start custom CSS for html, class: .elementor-element-d729e69 *//* =========================================
   FIROOZEH HOSTEL
   HERO SECTION
========================================= */

.vc-firoozeh-hero {
  width: 100%;
  padding: 85px 30px 95px;
  background: #fff;
  color: #393d43;
  box-sizing: border-box;
}

.vc-firoozeh-hero-inner {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(390px, 0.82fr);

  gap: 85px;
  align-items: center;

  box-sizing: border-box;
}


/* =========================================
   CONTENT
========================================= */

.vc-firoozeh-hero-content {
  max-width: 680px;
}

.vc-firoozeh-hero-eyebrow {
  display: inline-block;

  margin-bottom: 20px;

  font-size: 12px;
  line-height: 1;
  letter-spacing: 3px;
  font-weight: 700;

  color: #bd1d27;
}

.vc-firoozeh-hero h1 {
  margin: 0 0 25px;

  font-size: clamp(34px, 4vw, 50px);
  line-height: 1.35;
  font-weight: 700;

  color: #393d43;
}

.vc-firoozeh-hero-intro {
  max-width: 650px;

  margin: 0;

  font-size: 15.5px;
  line-height: 2.15;

  color: #64686c;
}


/* =========================================
   PROJECT DETAILS
========================================= */

.vc-firoozeh-hero-details {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  margin-top: 38px;

  border-top: 1px solid #dedbd8;
  border-right: 1px solid #dedbd8;

  box-sizing: border-box;
}

.vc-firoozeh-hero-detail {
  min-height: 105px;

  display: flex;
  align-items: flex-start;

  gap: 17px;

  padding: 22px 20px;

  border-left: 1px solid #dedbd8;
  border-bottom: 1px solid #dedbd8;

  background: #fff;

  box-sizing: border-box;
}

.vc-firoozeh-hero-detail > span {
  padding-top: 2px;

  font-size: 10px;
  line-height: 1;

  font-weight: 700;
  letter-spacing: 1px;

  color: #bd1d27;
}

.vc-firoozeh-hero-detail small {
  display: block;

  margin-bottom: 8px;

  font-size: 9px;
  line-height: 1;

  letter-spacing: 2px;
  font-weight: 700;

  color: #929497;
}

.vc-firoozeh-hero-detail strong {
  display: block;

  font-size: 14px;
  line-height: 1.7;

  font-weight: 600;

  color: #393d43;
}


/* =========================================
   BUTTON
========================================= */

.vc-firoozeh-hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;

  margin-top: 30px;

  padding: 14px 24px;

  background: #393d43;

  color: #fff !important;

  text-decoration: none !important;

  font-size: 13px;
  font-weight: 700;

  transition:
    background .25s ease,
    transform .25s ease;
}

.vc-firoozeh-hero-btn span {
  font-size: 17px;
  line-height: 1;

  transition: transform .25s ease;
}

.vc-firoozeh-hero-btn:hover {
  background: #bd1d27;
  color: #fff !important;

  transform: translateY(-2px);
}

.vc-firoozeh-hero-btn:hover span {
  transform: translateX(-4px);
}


/* =========================================
   IMAGE
========================================= */

.vc-firoozeh-hero-media {
  position: relative;

  width: 100%;
  aspect-ratio: 1 / 1;

  overflow: hidden;

  background: #eee;

  border-radius: 20px;

  box-sizing: border-box;
}

.vc-firoozeh-hero-media img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform .6s ease;
}

.vc-firoozeh-hero-media:hover img {
  transform: scale(1.025);
}


/* =========================================
   IMAGE CAPTION
========================================= */

.vc-firoozeh-hero-caption {
  position: absolute;

  left: 20px;
  bottom: 18px;

  padding: 8px 12px;

  background: rgba(255, 255, 255, .92);

  font-size: 9px;
  line-height: 1;

  letter-spacing: 2px;
  text-transform: uppercase;

  color: #393d43;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

  .vc-firoozeh-hero {
    padding: 70px 25px 80px;
  }

  .vc-firoozeh-hero-inner {
    grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr);
    gap: 55px;
  }

  .vc-firoozeh-hero-content {
    max-width: 100%;
  }

  .vc-firoozeh-hero h1 {
    font-size: 40px;
  }

}


/* =========================================
   TABLET / MOBILE
========================================= */

@media (max-width: 800px) {

  .vc-firoozeh-hero {
    padding: 65px 25px 75px;
  }

  .vc-firoozeh-hero-inner {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .vc-firoozeh-hero-content {
    max-width: 100%;
  }

  .vc-firoozeh-hero-media {
    max-width: 600px;
    margin: 0 auto;
    order: 2;
  }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

  .vc-firoozeh-hero {
    padding: 55px 18px 65px;
  }

  .vc-firoozeh-hero-inner {
    gap: 38px;
  }

  .vc-firoozeh-hero-eyebrow {
    margin-bottom: 16px;

    font-size: 10px;
    letter-spacing: 2.5px;
  }

  .vc-firoozeh-hero h1 {
    margin-bottom: 20px;

    font-size: 31px;
    line-height: 1.45;
  }

  .vc-firoozeh-hero-intro {
    font-size: 14px;
    line-height: 2;
  }

  .vc-firoozeh-hero-details {
    margin-top: 30px;
  }

  .vc-firoozeh-hero-detail {
    min-height: 100px;

    padding: 19px 15px;

    gap: 11px;
  }

  .vc-firoozeh-hero-detail small {
    font-size: 8px;
    letter-spacing: 1.5px;
  }

  .vc-firoozeh-hero-detail strong {
    font-size: 12.5px;
  }

  .vc-firoozeh-hero-btn {
    width: 100%;
    margin-top: 25px;
  }

  .vc-firoozeh-hero-media {
    border-radius: 15px;
  }

  .vc-firoozeh-hero-caption {
    left: 13px;
    bottom: 13px;

    font-size: 8px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-62f8051 *//* =========================================
    FIROOZEH HOSTEL
    PROJECT INTRO
 ========================================= */

.vc-firoozeh-intro {

    width: 100%;

    padding: 100px 30px;

    background: #f7f6f4;

    box-sizing: border-box;

    direction: rtl;
}


/* =========================================
   1300px CONTENT CONTAINER
========================================= */

.vc-firoozeh-intro-inner {

    width: 100%;

    max-width: 1300px;

    margin: 0 auto;

    box-sizing: border-box;
}


/* =========================================
   TEXT CONTENT
========================================= */

.vc-firoozeh-intro-content {

    width: 100%;

    max-width: 900px;

    margin-right: auto;
    margin-left: auto;

    text-align: right;
}

.vc-firoozeh-intro-eyebrow {

    display: inline-block;

    margin-bottom: 16px;

    color: #bd1d27;

    font-size: 10px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: 2.5px;

    direction: ltr;
}

.vc-firoozeh-intro-content h2 {

    margin: 0 0 24px;

    color: #393d43;

    font-size: 31px;

    line-height: 1.6;

    font-weight: 700;
}

.vc-firoozeh-intro-content p {

    margin: 0 0 17px;

    color: #64686c;

    font-size: 15px;

    line-height: 2.2;
}

.vc-firoozeh-intro-content p:last-child {

    margin-bottom: 0;
}


/* =========================================
   VIDEO
========================================= */

.vc-firoozeh-intro-video {

    width: 100%;

    margin-top: 55px;
}

.vc-firoozeh-intro-video-frame {

    position: relative;

    width: 100%;

    overflow: hidden;

    border-radius: 22px;

    background: #161616;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .12);
}

.vc-firoozeh-intro-video-frame video {

    display: block;

    width: 100%;

    height: auto;

    aspect-ratio: 16 / 9;

    object-fit: cover;

    background: #111;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .vc-firoozeh-intro {

        padding: 80px 25px;
    }

    .vc-firoozeh-intro-content {

        max-width: 100%;
    }

    .vc-firoozeh-intro-content h2 {

        font-size: 27px;
    }

    .vc-firoozeh-intro-content p {

        font-size: 14px;

        line-height: 2.15;
    }

    .vc-firoozeh-intro-video {

        margin-top: 45px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .vc-firoozeh-intro {

        padding: 60px 18px 65px;
    }

    .vc-firoozeh-intro-eyebrow {

        margin-bottom: 13px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .vc-firoozeh-intro-content h2 {

        margin-bottom: 18px;

        font-size: 24px;

        line-height: 1.65;
    }

    .vc-firoozeh-intro-content p {

        margin-bottom: 15px;

        font-size: 14px;

        line-height: 2.1;
    }

    .vc-firoozeh-intro-video {

        margin-top: 35px;
    }

    .vc-firoozeh-intro-video-frame {

        border-radius: 15px;
    }

    .vc-firoozeh-intro-video-frame video {

        aspect-ratio: 16 / 9;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b00dc5e *//* =========================================
   FIROOZEH HOSTEL
   MATERIAL DETAILS
========================================= */

.vc-firoozeh-details {

    width: 100%;

    padding: 100px 30px;

    background: #ffffff;

    box-sizing: border-box;

    direction: rtl;
}


/* =========================================
   1300px CONTAINER
========================================= */

.vc-firoozeh-details-inner {

    width: 100%;

    max-width: 1300px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 180px minmax(0, 1fr);

    gap: 80px;

    box-sizing: border-box;
}


/* =========================================
   LABEL
========================================= */

.vc-firoozeh-details-label {

    position: relative;

    padding-top: 8px;

    color: #999;

    font-size: 9px;

    line-height: 1.5;

    font-weight: 700;

    letter-spacing: 2px;

    direction: ltr;
}

.vc-firoozeh-details-label::before {

    content: "";

    display: block;

    width: 38px;

    height: 2px;

    margin-bottom: 14px;

    background: #bd1d27;
}


/* =========================================
   CONTENT
========================================= */

.vc-firoozeh-details-content {

    max-width: 850px;

    position: relative;
}

.vc-firoozeh-details-content::before {

    content: "";

    position: absolute;

    right: -35px;

    top: 3px;

    width: 3px;

    height: 75px;

    background: #1f8a78;

    border-radius: 5px;
}

.vc-firoozeh-details-content h2 {

    margin: 0 0 28px;

    color: #393d43;

    font-size: 30px;

    line-height: 1.65;

    font-weight: 700;
}


/* =========================================
   TEXT
========================================= */

.vc-firoozeh-details-text {

    max-width: 790px;
}

.vc-firoozeh-details-text p {

    margin: 0 0 18px;

    color: #64686c;

    font-size: 15px;

    line-height: 2.25;
}

.vc-firoozeh-details-text p:last-child {

    margin-bottom: 0;
}


/* =========================================
   PRODUCT LINK
========================================= */

.vc-firoozeh-details-link {

    display: flex;

    align-items: center;

    gap: 25px;

    margin-top: 38px;

    padding-top: 22px;

    border-top: 1px solid #e5e2df;
}

.vc-firoozeh-details-link span {

    color: #999;

    font-size: 11px;

    white-space: nowrap;
}

.vc-firoozeh-details-link a {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #393d43 !important;

    font-size: 13px;

    font-weight: 700;

    text-decoration: none !important;

    transition: color .25s ease;
}

.vc-firoozeh-details-link a b {

    font-size: 17px;

    font-weight: 400;

    transition: transform .25s ease;
}

.vc-firoozeh-details-link a:hover {

    color: #bd1d27 !important;
}

.vc-firoozeh-details-link a:hover b {

    transform: translateX(-5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .vc-firoozeh-details {

        padding: 80px 25px;
    }

    .vc-firoozeh-details-inner {

        grid-template-columns: 140px minmax(0, 1fr);

        gap: 45px;
    }

    .vc-firoozeh-details-content h2 {

        font-size: 27px;
    }

    .vc-firoozeh-details-text p {

        font-size: 14px;

        line-height: 2.15;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 650px) {

    .vc-firoozeh-details {

        padding: 65px 18px;
    }

    .vc-firoozeh-details-inner {

        display: block;
    }

    .vc-firoozeh-details-label {

        margin-bottom: 25px;
    }

    .vc-firoozeh-details-content {

        max-width: 100%;
    }

    .vc-firoozeh-details-content::before {

        right: -10px;

        top: 1px;

        height: 55px;
    }

    .vc-firoozeh-details-content h2 {

        margin-bottom: 20px;

        padding-right: 10px;

        font-size: 24px;

        line-height: 1.65;
    }

    .vc-firoozeh-details-text {

        padding-right: 0;
    }

    .vc-firoozeh-details-text p {

        font-size: 14px;

        line-height: 2.1;
    }

    .vc-firoozeh-details-link {

        align-items: flex-start;

        flex-direction: column;

        gap: 12px;

        margin-top: 30px;

        padding-top: 19px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a02d361 *//* =========================================
   FIROOZEH HOSTEL
   COLOR & ARCHITECTURE
========================================= */

.vc-firoozeh-color {

    width: 100%;

    padding: 105px 30px;

    background: #f3f2ef;

    box-sizing: border-box;

    direction: rtl;
}


/* =========================================
   MAIN CONTAINER
========================================= */

.vc-firoozeh-color-inner {

    width: 100%;

    max-width: 1300px;

    margin: 0 auto;

    box-sizing: border-box;
}


/* =========================================
   CONTENT
========================================= */

.vc-firoozeh-color-content {

    width: 100%;

    max-width: 850px;

    margin: 0 auto;

    text-align: center;
}

.vc-firoozeh-color-eyebrow {

    display: inline-block;

    margin-bottom: 16px;

    color: #bd1d27;

    font-size: 9px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: 2.5px;

    direction: ltr;
}

.vc-firoozeh-color-content h2 {

    margin: 0 0 25px;

    color: #393d43;

    font-size: 30px;

    line-height: 1.65;

    font-weight: 700;
}

.vc-firoozeh-color-content p {

    margin: 0 0 15px;

    color: #64686c;

    font-size: 15px;

    line-height: 2.2;
}

.vc-firoozeh-color-content p:last-child {

    margin-bottom: 0;
}


/* =========================================
   VIDEO
========================================= */

.vc-firoozeh-color-video {

    width: 100%;

    max-width: 1080px;

    margin: 58px auto 0;
}

.vc-firoozeh-color-video-frame {

    width: 100%;

    overflow: hidden;

    border-radius: 22px;

    background: #171717;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .11);
}

.vc-firoozeh-color-video-frame video {

    display: block;

    width: 100%;

    height: auto;

    aspect-ratio: 16 / 9;

    object-fit: cover;

    background: #111;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .vc-firoozeh-color {

        padding: 80px 25px;
    }

    .vc-firoozeh-color-content {

        max-width: 760px;
    }

    .vc-firoozeh-color-content h2 {

        font-size: 27px;
    }

    .vc-firoozeh-color-content p {

        font-size: 14px;

        line-height: 2.15;
    }

    .vc-firoozeh-color-video {

        max-width: 900px;

        margin-top: 45px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .vc-firoozeh-color {

        padding: 65px 18px 70px;
    }

    .vc-firoozeh-color-eyebrow {

        font-size: 8px;

        letter-spacing: 2px;

        margin-bottom: 13px;
    }

    .vc-firoozeh-color-content {

        text-align: right;
    }

    .vc-firoozeh-color-content h2 {

        margin-bottom: 19px;

        font-size: 23px;

        line-height: 1.65;
    }

    .vc-firoozeh-color-content p {

        margin-bottom: 14px;

        font-size: 14px;

        line-height: 2.1;
    }

    .vc-firoozeh-color-video {

        margin-top: 35px;
    }

    .vc-firoozeh-color-video-frame {

        border-radius: 16px;
    }

    .vc-firoozeh-color-video-frame video {

        aspect-ratio: 16 / 9;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0913791 *//* =========================================
   FIROOZEH HOSTEL
   FINAL RESULT
========================================= */

.vc-firoozeh-final {

    width: 100%;

    padding: 110px 30px;

    background: #ffffff;

    box-sizing: border-box;

    direction: rtl;
}


/* =========================================
   CONTAINER
========================================= */

.vc-firoozeh-final-inner {

    width: 100%;

    max-width: 1300px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: minmax(0, 1fr) 420px;

    align-items: center;

    gap: 90px;

    box-sizing: border-box;
}


/* =========================================
   CONTENT
========================================= */

.vc-firoozeh-final-content {

    max-width: 650px;
}


.vc-firoozeh-final-eyebrow {

    display: inline-block;

    margin-bottom: 15px;

    color: #bd1d27;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;

    direction: ltr;
}


.vc-firoozeh-final-content h2 {

    margin: 0 0 25px;

    color: #393d43;

    font-size: 30px;

    line-height: 1.65;

    font-weight: 700;
}


.vc-firoozeh-final-content p {

    margin: 0 0 18px;

    color: #64686c;

    font-size: 15px;

    line-height: 2.25;
}


.vc-firoozeh-final-content p:last-child {

    margin-bottom: 0;
}


/* =========================================
   IMAGE
   Full square image — NO CROP
========================================= */

.vc-firoozeh-final-image {

    width: 100%;

    overflow: hidden;

    border-radius: 22px;

    background: #f3f2ef;

    box-sizing: border-box;
}


.vc-firoozeh-final-image img {

    display: block;

    width: 100%;

    height: auto;

    max-width: 100%;

    object-fit: contain;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .vc-firoozeh-final {

        padding: 80px 25px;
    }

    .vc-firoozeh-final-inner {

        grid-template-columns: 1fr;

        gap: 45px;
    }

    .vc-firoozeh-final-content {

        max-width: 100%;
    }

    .vc-firoozeh-final-content h2 {

        font-size: 27px;
    }

    .vc-firoozeh-final-image {

        width: min(100%, 500px);

        margin: 0 auto;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .vc-firoozeh-final {

        padding: 65px 18px;
    }

    .vc-firoozeh-final-inner {

        gap: 32px;
    }

    .vc-firoozeh-final-eyebrow {

        margin-bottom: 13px;

        font-size: 9px;

        letter-spacing: 2px;
    }

    .vc-firoozeh-final-content h2 {

        margin-bottom: 20px;

        font-size: 23px;

        line-height: 1.65;
    }

    .vc-firoozeh-final-content p {

        margin-bottom: 15px;

        font-size: 14px;

        line-height: 2.1;
    }

    .vc-firoozeh-final-image {

        width: 100%;

        border-radius: 16px;
    }

    .vc-firoozeh-final-image img {

        width: 100%;

        height: auto;

        object-fit: contain;
    }

}/* End custom CSS */