/* page-base.css — Seoul Loft Apartments
   Shared base styles loaded on every page.
   Extracted from css/main.css (split 2026-09-10)
   Includes: :root tokens, trust-bar, fonts, sprite, typography,
             btns, form, filter-nav, preloader, header, hero, modal,
             map, footer, floating-chat, and all responsive media.
   ------------------------------------------------------------------ */

/* === :root tokens + trust-bar + animations === */
/* 1. Global */
/* 1.1 Libs */
/*!
 * Bootstrap Grid v5.0.0-beta3 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */

 /* ==========================================================
   SLA COLOR TOKENS (add at TOP of main.css)
   - Change --sla-accent once to recolor the entire template
   - Current template accent is var(--sla-accent) (orange)
========================================================== */
:root{
  --sla-bg: #F4F0EB;
  --sla-text: #27272F;
  --sla-muted: #6B7280;
  --sla-line: #D8D2C8;

  /* Primary accent (Soft Sage Green) */
  --sla-accent: #6F8577;

  /* Promo / highlight only (use sparingly) */
  --sla-promo: #C76B3E;
  
  /* ==========================================================
    SPACING TOKENS (added 2026-09-Agent)
    - 160px: default section rhythm desktop (from 220px)
    - 100px: default section rhythm mobile
    - 80px: between items inside a section (from 228px etc.)
    - 40px: between paragraphs, list items
  ========================================================== */
  --space-section: 160px 0;
  --space-section-mobile: 100px 0;
  --space-section-tight: 100px 0;
  --space-section-tight-mobile: 64px 0;
  --space-block: 80px;
  --space-block-mobile: 48px;
  --space-item: 40px;
  --space-item-mobile: 24px;

  /* ==========================================================
    TYPOGRAPHY TOKENS (added 2026-09-Agent)
  ========================================================== */
  --font-h1: 72px;
  --font-h2: 48px;
  --font-h3: 32px;
  --font-h4: 24px;
  --font-h5: 18px;
  --font-h6: 16px;
  --font-body: 15px;

  --font-h1-mobile: 48px;
  --font-h2-mobile: 36px;
  --font-h3-mobile: 26px;
  --font-h4-mobile: 20px;
  --font-h5-mobile: 16px;
  --font-h6-mobile: 14px;

  --lh-heading-lg: 1.1;   /* h1, h2 */
  --lh-heading-md: 1.2;   /* h3, h4 */
  --lh-heading-sm: 1.5;   /* h5, h6 */
}

/* ==========================================================
   Trust Bar (Refined)
========================================================== */
.trust-bar {
  padding: 1.6rem 0;
  background-color: var(--sla-line);
  background-image: linear-gradient(90deg, #DCD5CC, #D8D2C8);
  overflow: hidden; /* Contains animations */
}

.trust-bar__grid {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.5rem;
}

.trust-bar__stat {
  text-align: center;
  opacity: 0;
  animation: fadeInUp 0.6s ease-out forwards;
}

.trust-bar__figure {
  display: block;
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--sla-text);
  line-height: 1.2;
}

.trust-bar__label {
  display: block;
  font-size: 0.7rem;
  font-weight: 500;
  color: var(--sla-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.trust-bar__star {
  color: #F5A623;
  font-size: 1em; /* Matches figure size */
  vertical-align: baseline;
  margin-left: 2px;
}

.trust-bar__divider {
  width: 1px;
  height: 35px;
  background-color: rgba(0, 0, 0, 0.1);
  opacity: 0;
  animation: fadeIn 0.5s ease-out 0.5s forwards;
}

/* Staggered Animation Delays */
.trust-bar__stat:nth-of-type(1) { animation-delay: 0.2s; }
.trust-bar__stat:nth-of-type(2) { animation-delay: 0.4s; }
.trust-bar__stat:nth-of-type(3) { animation-delay: 0.6s; }

/* Responsive Stacking for Mobile */
@media (max-width: 767px) {
  .trust-bar__grid {
    flex-direction: column;
    gap: 1.5rem;
  }
  .trust-bar__divider {
    display: none; /* Hide dividers on mobile */
  }
  .trust-bar__figure {
    font-size: 1.5rem;
  }
}

/* Keyframe Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}




/* === Site CSS: fonts, sprite, typography, btns, form, filter, preloader, header, hero, modal, map === */
  /* 1.2 Fonts */
  @font-face {
    font-family: "SFProText-Bold";
    font-display: swap;
    src: url("../fonts/SFProText-Bold.woff") format("woff"), url("../fonts/SFProText-Bold.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProText-Medium";
    font-display: swap;
    src: url("../fonts/SFProText-Medium.woff") format("woff"), url("../fonts/SFProText-Medium.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProText-Regular";
    font-display: swap;
    src: url("../fonts/SFProText-Regular.woff") format("woff"), url("../fonts/SFProText-Regular.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProText-Semibold";
    font-display: swap;
    src: url("../fonts/SFProText-Semibold.woff") format("woff"), url("../fonts/SFProText-Semibold.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProDisplay-MediumItalic";
    font-display: swap;
    src: url("../fonts/SFProDisplay-MediumItalic.woff") format("woff"), url("../fonts/SFProDisplay-MediumItalic.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProDisplay-Regular";
    font-display: swap;
    src: url("../fonts/SFProDisplay-Regular.woff") format("woff"), url("../fonts/SFProDisplay-Regular.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProDisplay-Semibold";
    font-display: swap;
    src: url("../fonts/SFProDisplay-Semibold.woff") format("woff"), url("../fonts/SFProDisplay-Semibold.woff2") format("woff2");
  }
  
  @font-face {
    font-family: "SFProDisplay-Bold";
    font-display: swap;
    src: url("../fonts/SFProDisplay-Bold.woff") format("woff"), url("../fonts/SFProDisplay-Bold.woff2") format("woff2");
  }
  
  /* 1.3 Sprite */
  .svg-image-arrow, .svg-image-arrow-b, .svg-image-arrow-down, .svg-image-arrow-link, .svg-image-btn-arrow, .svg-image-btn-arrow-d, .svg-image-facebook, .svg-image-instagram, .svg-image-news-arrow, .svg-image-news-arrow-wh, .svg-image-play, .svg-image-play-black, .svg-image-quote, .svg-image-search, .svg-image-search-wh, .svg-image-twitter {
    background: url("../images/sprites/main.svg") no-repeat;
  }
  
  .svg-image-arrow {
    background-position: 99.03846153846153% 76.47058823529412%;
    background-size: 1400% auto;
    width: 8px;
  }
  
  .svg-image-arrow:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 112.5%;
  }
  
  .svg-image-arrow-dims {
    width: 8px;
    height: 9px;
  }
  
  .svg-image-arrow-b {
    background-position: 40.449438202247194% 52.23880597014925%;
    background-size: 486.95652% auto;
    width: 23px;
  }
  
  .svg-image-arrow-b:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 43.47826%;
  }
  
  .svg-image-arrow-b-dims {
    width: 23px;
    height: 10px;
  }
  
  .svg-image-arrow-down {
    background-position: 79.7872340425532% 0;
    background-size: 622.22222% auto;
    width: 18px;
  }
  
  .svg-image-arrow-down:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 183.33333%;
  }
  
  .svg-image-arrow-down-dims {
    width: 18px;
    height: 33px;
  }
  
  .svg-image-arrow-link {
    background-position: 44.827586206896555% 26.865671641791046%;
    background-size: 448% auto;
    width: 25px;
  }
  
  .svg-image-arrow-link:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 40%;
  }
  
  .svg-image-arrow-link-dims {
    width: 25px;
    height: 10px;
  }
  
  .svg-image-btn-arrow {
    background-position: 51.31578947368421% 0;
    background-size: 311.11111% auto;
    width: 36px;
  }
  
  .svg-image-btn-arrow:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 50%;
  }
  
  .svg-image-btn-arrow-dims {
    width: 36px;
    height: 18px;
  }
  
  .svg-image-btn-arrow-d {
    background-position: 0 59.32203389830509%;
    background-size: 311.11111% auto;
    width: 36px;
  }
  
  .svg-image-btn-arrow-d:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 50%;
  }
  
  .svg-image-btn-arrow-d-dims {
    width: 36px;
    height: 18px;
  }
  
  .svg-image-facebook {
    background-position: 22.22222222222222% 94.64285714285714%;
    background-size: 509.09091% auto;
    width: 22px;
  }
  
  .svg-image-facebook:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 95.45455%;
  }
  
  .svg-image-facebook-dims {
    width: 22px;
    height: 21px;
  }
  
  .svg-image-instagram {
    background-position: 46.666666666666664% 92.98245614035088%;
    background-size: 509.09091% auto;
    width: 22px;
  }
  
  .svg-image-instagram:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 90.90909%;
  }
  
  .svg-image-instagram-dims {
    width: 22px;
    height: 20px;
  }
  
  .svg-image-news-arrow {
    background-position: 91.17647058823529% 77.61194029850746%;
    background-size: 1120% auto;
    width: 10px;
  }
  
  .svg-image-news-arrow:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 100%;
  }
  
  .svg-image-news-arrow-dims {
    width: 10px;
    height: 10px;
  }
  
  .svg-image-news-arrow-wh {
    background-position: 91.17647058823529% 92.53731343283582%;
    background-size: 1120% auto;
    width: 10px;
  }
  
  .svg-image-news-arrow-wh:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 100%;
  }
  
  .svg-image-news-arrow-wh-dims {
    width: 10px;
    height: 10px;
  }
  
  .svg-image-play {
    background-position: 100% 0;
    background-size: 589.47368% auto;
    width: 19px;
  }
  
  .svg-image-play:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 105.26316%;
  }
  
  .svg-image-play-dims {
    width: 19px;
    height: 20px;
  }
  
  .svg-image-play-black {
    background-position: 0 100%;
    background-size: 560% auto;
    width: 20px;
  }
  
  .svg-image-play-black:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 120%;
  }
  
  .svg-image-play-black-dims {
    width: 20px;
    height: 24px;
  }
  
  .svg-image-quote {
    background-position: 0 0;
    background-size: 287.17949% auto;
    width: 39px;
  }
  
  .svg-image-quote:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 89.74359%;
  }
  
  .svg-image-quote-dims {
    width: 39px;
    height: 35px;
  }
  
  .svg-image-search {
    background-position: 96.875% 32.78688524590164%;
    background-size: 700% auto;
    width: 16px;
  }
  
  .svg-image-search:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 100%;
  }
  
  .svg-image-search-dims {
    width: 16px;
    height: 16px;
  }
  
  .svg-image-search-wh {
    background-position: 96.875% 59.01639344262295%;
    background-size: 700% auto;
    width: 16px;
  }
  
  .svg-image-search-wh:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 100%;
  }
  
  .svg-image-search-wh-dims {
    width: 16px;
    height: 16px;
  }
  
  .svg-image-twitter {
    background-position: 71.11111111111111% 89.83050847457628%;
    background-size: 509.09091% auto;
    width: 22px;
  }
  
  .svg-image-twitter:before {
    content: "";
    display: block;
    font-size: 0;
    line-height: 0;
    padding-top: 81.81818%;
  }
  
  .svg-image-twitter-dims {
    width: 22px;
    height: 18px;
  }
  
  .image-by-height {
    width: auto;
  }
  
  .image-by-height:before {
    content: none;
  }
  
  .image-by-height > svg {
    height: inherit;
  }
  
  .image-by-height > img {
    height: inherit !important;
    vertical-align: top !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
    max-height: none !important;
    border: 0 !important;
    opacity: 0 !important;
  }
  
  * {
    box-sizing: border-box;
  }
  
  html, body {
    overflow-x: hidden;
  }
  
  body {
    background: #FFF;
    font-family: "SFProText-Regular", sans-serif, "Helvetica", Arial, sans-serif;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
  }
  
  html ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
  }
  
  html ::-webkit-scrollbar-button {
    display: none;
  }
  
  html ::-webkit-scrollbar-track-piece {
    background-color: #ffffff;
  }
  
  html ::-webkit-scrollbar-thumb {
    background-color: var(--sla-accent);
    border-radius: none;
  }
  
  html ::-webkit-scrollbar-corner {
    background-color: #999;
  }
  
  html ::-webkit-resizer {
    background-color: #666;
  }
  
  html.dark ::-webkit-scrollbar-track-piece {
    background-color: #000000;
  }
  
  .wrap {
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  
  .section {
    padding: var(--space-section);
  }
  
  @media (max-width: 767px) {
    .section {
      padding: var(--space-section-mobile);
    }
  }
  
  .section--gray {
    background: #F9F9F9;
  }
  
  .section--tight {
    padding: var(--space-section-tight);
  }
  
  @media (max-width: 767px) {
    .section--tight {
      padding: var(--space-section-tight-mobile);
    }
  }
  
  /* 1.4 Typography */
  h1, h2, h3, h4, h5, h6, p {
    margin: 0;
  }
  
  h1 {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: var(--font-h1);
    line-height: var(--lh-heading-lg);
    color: #ffffff;
  }
  
  h1 span {
    color: var(--sla-accent);
  }

  h2 {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: var(--font-h2);
    line-height: var(--lh-heading-lg);
    color: #000000;
  }

  h3 {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: var(--font-h3);
    line-height: var(--lh-heading-md);
    color: #000000;
  }

  h4 {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: var(--font-h4);
    line-height: var(--lh-heading-md);
    color: #000000;
  }

  h5 {
    font-family: "SFProText-Medium", sans-serif;
    font-size: var(--font-h5);
    line-height: var(--lh-heading-sm);
    color: #000000;
  }

  h6 {
    font-family: "SFProText-Semibold", sans-serif;
    font-size: var(--font-h6);
    line-height: var(--lh-heading-sm);
    color: #000000;
  }

  @media (max-width: 767px) {
    h1 { font-size: var(--font-h1-mobile); }
    h2 { font-size: var(--font-h2-mobile); }
    h3 { font-size: var(--font-h3-mobile); }
    h4 { font-size: var(--font-h4-mobile); }
    h5 { font-size: var(--font-h5-mobile); }
    h6 { font-size: var(--font-h6-mobile); }
  }
  
  ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  
  .title {
    display: inline-block;
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 23px;
    line-height: 38px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
  }
  
  .title-line {
    height: 1px;
    background: #000000;
    position: absolute;
    bottom: 10px;
    right: 0;
  }
  
  .title-line-r {
    left: 0;
    width: 200%;
  }
  
  .title-wrap {
    display: inline-block;
    position: relative;
  }
  
  .title-wrap-r {
    display: block;
  }
  
  /* 1.5 Btns */
  .btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: var(--sla-accent);
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #000000;
    padding: 15px;
    max-width: 233px;
    width: 100%;
    text-decoration: none;
    transition: all 0.3s ease-out;
    border: 1px solid var(--sla-accent);
    cursor: pointer;
  }
  
  .btn:hover {
    background: transparent;
    color: var(--sla-accent);
  }
  
  /* Button variants extracted from index.html inline styles */
  .btn-primary {
    background-color: var(--sla-accent);
    color: #ffffff;
    border-color: var(--sla-accent);
  }
  
  .btn-primary:hover {
    background-color: #ffffff;
    color: #000000;
    border-color: #ffffff;
  }
  
  .btn-outline {
    background-color: transparent;
    color: #ffffff;
    border: 1px solid #ffffff;
  }
  
  .btn-outline:hover {
    background-color: #ffffff;
    color: #000000;
  }
  
  /* Reserve Dropdown Custom Styles */
  .nav-dropdown--reserve {
    top: -10px;
    left: 24px;
    transform: none;
    padding: 0;
    background: transparent;
    box-shadow: none;
    min-width: 0;
    width: fit-content;
  }
  
  .nav-dropdown--reserve .dropdown-list {
    width: 100%;
  }
  
  .nav-dropdown--reserve .dropdown-list__item {
    margin-bottom: 1px;
    background: #FFFFFF;
    border: 1px solid #d8d3c9;
    width: 100%;
  }
  
  .nav-dropdown--reserve .dropdown-list__link {
    padding: 8px 12px;
    display: block;
    color: #111111;
    text-align: left;
    font-weight: 700;
    font-size: 10px;
    letter-spacing: 0.05em;
    white-space: nowrap;
  }

  /* 1.6 Form */
  .form-control {
    height: 50px;
    padding: 16px 18px;
    width: 100%;
    background: #ffffff;
    border: 1px solid #000000;
    border-radius: 0;
    box-shadow: none;
  }
  
  .form-control:focus-visible {
    outline: none;
  }
  
  .form-button {
    border: 0;
    outline: 0;
    background: #ffffff;
    cursor: pointer;
    border-radius: 0;
  }
  
  input[type="submit"] {
    border-radius: 0;
    -webkit-appearance: none;
  }
  
  .inner-title {
    color: #000000;
    max-width: 555px;
    width: 100%;
    font-size: 57px;
    line-height: 60px;
  }
  
  .inner-title-wrap {
    position: relative;
    margin-bottom: 65px;
  }
  
  .inner-title-wrap:after {
    content: '';
    height: 1px;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 10px;
  }
  
  /* 1.7 Filter btns */
  .inner-navbar {
    margin-bottom: 40px;
  }
  
  .inner-nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    overflow: auto;
    padding-bottom: 16px;
  }
  
  .inner-nav__item {
    margin-right: 42px;
  }
  
  .inner-nav__item:last-child {
    margin-right: 0;
  }
  
  .inner-nav__link {
    font-size: 15px;
    line-height: 18px;
    color: #000000;
    text-decoration: none;
    transition: all 0.3s ease-out;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  
  .inner-nav__link:hover {
    color: var(--sla-accent);
  }
  
  .inner-nav__link.mixitup-control-active {
    color: var(--sla-accent);
  }
  
  .inner-title-wrap .container {
    position: relative;
  }
  
  .inner-btns {
    position: absolute;
    right: 15px;
    bottom: 0;
    z-index: 1;
  }
  
  .inner-btn {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 24px;
    line-height: 38px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
    text-decoration: none;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  
  .inner-btn-arrow {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: 10px;
    width: 21px;
    height: 21px;
    margin-bottom: 2px;
    border-radius: 50%;
    background: var(--sla-accent);
    transition: all 0.3s ease-out;
  }
  
  .inner-btn-arrow i {
    margin-left: 2px;
  }
  
  .inner-btn:hover .inner-btn-arrow {
    -webkit-transform: translateX(5px);
            transform: translateX(5px);
  }
  
  /* 1.8 Preloader */
  .preloader {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
  }
  
  .preloader__spinner {
    position: relative;
    width: 50px;
    height: 50px;
    -webkit-align-self: center;
        -ms-flex-item-align: center;
            align-self: center;
  }
  
  .preloader__double-bounce {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 50px;
    height: 50px;
    -webkit-animation: bounce 2s infinite ease-in-out;
            animation: bounce 2s infinite ease-in-out;
    opacity: 0.6;
    border-radius: 50%;
    background-color: var(--sla-accent);
  }
  
  .preloader__double-bounce--delay {
    -webkit-animation-delay: -1s;
            animation-delay: -1s;
  }
  
  @-webkit-keyframes bounce {
    0%,
    100% {
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    50% {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  
  @keyframes bounce {
    0%,
    100% {
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    50% {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  
  [class^=svg-image-] {
    display: inline-block;
    vertical-align: middle;
  }
  
  /* 2. Header */
  .header {
    padding: 37px 0 28px;
    background: transparent;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 20;
    /* 2.1. Header - Fixed */
    /* 2.2. Header - Logo */
    /* 2.3. Header - Social */
    /* 2.4. Header - Navbar */
  }
  
  .header.fixed {
    position: fixed;
    background: #ffffff;
    padding: 30px 0 30px;
  }
  
  .header.fixed .header-logo {
    top: -10px;
    left: 60px;
  }
  
  .header.fixed .header-logo-main, .header.fixed .header-logo-small {
    color: #000000;
  }
  
  .header.fixed .header-logo-main {
    font-size: 25px;
    line-height: 30px;
  }
  
  .header.fixed .header-logo-small {
    margin-top: -2px;
  }
  
  .header.fixed .nav-link {
    color: #000000;
  }
  
  .header.fixed .nav-link:hover {
    color: var(--sla-accent);
  }
  
  .header.fixed .header-social__link svg path {
    fill: #000000;
  }
  
  .header.fixed .header-social__link:hover svg path {
    fill: var(--sla-accent);
  }
  
  .header.fixed .header-phone {
    right: 68px;
  }
  
  .header.fixed .header-phone__link {
    color: #000000;
  }
  
  .header.fixed .header-phone__link:hover {
    color: var(--sla-accent);
  }
  
  .header-cnt {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
  }
  
  .header-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-right: 130px;
    padding-left: 5px;
  }
  
  .header-logo {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    top: -12px;
    left: 60px;
    margin: auto;
  }
  
  .header-logo-main {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 32px;
    line-height: 38px;
    color: #ffffff;
  }
  
  .header-logo-small {
    font-family: "SFProText-Regular", sans-serif;
    font-size: 13px;
    line-height: 16px;
    color: #ffffff;
    margin-top: -5px;
  }
  
  .header-nav {
    margin-right: 40px;
  }
  
  .header-nav-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .header-social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 27px;
  }
  
  .header-social__item {
    margin-right: 33px;
  }
  
  .header-social__item:last-child {
    margin-right: 0;
  }
  
  .header-social__link {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  
  .header-social__link svg path {
    transition: all 0.3s ease-out;
  }
  
  .header-social__link:hover svg path {
    fill: var(--sla-accent);
  }
  
  .header-phone {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 72px;
    margin: auto;
  }
  
  .header-phone__link {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 17px;
    line-height: 25px;
    color: #ffffff;
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .header-phone__link:hover {
    color: var(--sla-accent);
  }
  
  .header-phone .header-social {
    display: none;
  }
  
  .header .nav-item {
    margin-right: 45px;
    position: relative;
  }
  
  .header .nav-item:last-child {
    margin-right: 0;
  }
  
  .header .nav-item.active .nav-link {
    color: var(--sla-accent);
  }
  
  .header .nav-link {
    font-family: "SFProText-Medium", sans-serif;
    font-size: 14px;
    line-height: 19px;
    text-transform: uppercase;
    color: #ffffff;
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .header .nav-link:hover {
    color: var(--sla-accent);
  }
  
  .header--black .header-logo-main, .header--black .header-logo-small {
    color: #000000;
  }
  
  .header--black .nav-link {
    color: #000000;
  }
  
  .header--black .nav-link:hover {
    color: var(--sla-accent);
  }
  
  .header--black .header-social__link svg path {
    fill: #000000;
  }
  
  .header--black .header-social__link:hover svg path {
    fill: var(--sla-accent);
  }
  
  .header--black .header-phone__link {
    color: #000000;
  }
  
  .header--black .header-phone__link:hover {
    color: var(--sla-accent);
  }
  
  .header--black .header-burger-line {
    background: #000000;
  }
  
  .header-lang, .header-contacts {
    display: none;
  }
  
  /* 2.5. Header - Burger */
  .header-burger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    display: none;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    z-index: 100;
  }
  
  .header-burger-inner {
    width: 30px;
    height: 30px;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  
  .header-burger-line {
    display: block;
    background: #ffffff;
    width: 30px;
    height: 3px;
    transition: all 0.3s ease-out;
    margin: 5px 0;
  }
  
  .header-burger.clicked .header-burger-line {
    background: var(--sla-accent);
  }
  
  .header-burger.clicked .header-burger-line:nth-child(2) {
    opacity: 0;
    -webkit-transform: translateX(10px);
            transform: translateX(10px);
  }
  
  .header-burger.clicked .header-burger-line:nth-child(1) {
    -webkit-transform: rotate(45deg) translateY(7px) translateX(5px);
            transform: rotate(45deg) translateY(7px) translateX(5px);
  }
  
  .header-burger.clicked .header-burger-line:nth-child(3) {
    -webkit-transform: rotate(-45deg) translateY(-7px) translateX(5px);
            transform: rotate(-45deg) translateY(-7px) translateX(5px);
  }
  
  /* 2.6. Header - Dropdown */
  .dropdown {
    position: relative;
  }
  
  .dropdown:after {
    content: '';
    height: 0;
    width: 100%;
    background: transparent;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -35px;
  }
  
  .dropdown:hover:after {
    height: 35px;
  }
  
  .dropdown:hover .dropdown-menu {
    opacity: 1;
    pointer-events: auto;
  }
  
  .dropdown-menu {
    position: absolute;
    margin-top: 35px;
    background: #ffffff;
    padding: 30px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    margin-left: -30px;
  }
  
  .dropdown-menu__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  
  .dropdown-menu__inner .dropdown-list {
    margin-right: 35px;
  }
  
  .dropdown-menu__inner .dropdown-list:last-child {
    margin-right: 0;
  }
  
  .dropdown-list__item {
    margin-bottom: 20px;
  }
  
  .dropdown-list__item:last-child {
    margin-bottom: 0;
  }
  
  .dropdown-list__item.active .dropdown-list__link {
    color: var(--sla-accent);
  }
  
  .dropdown-list__link {
    font-family: "SFProText-Medium", sans-serif;
    font-size: 14px;
    line-height: 19px;
    text-transform: uppercase;
    color: #000000;
    transition: all 0.3s ease-out;
    text-decoration: none;
    white-space: nowrap;
  }
  
  .dropdown-list__link:hover {
    color: var(--sla-accent);
  }
  
  /* 5. Main */
  .main {
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  
  /* 5.1 Main - Hero */

.hero--subpage {
  height: 180px;
  background: #6F8475;
}

/* Page-scoped override: Monthly Apartment Rentals hero strip height */
.page-monthly-apartments .hero.hero--subpage {
  height: 180px;
  min-height: 180px;
}
@media (max-width: 767px) {
  .page-monthly-apartments .hero.hero--subpage {
    height: 140px;
    min-height: 140px;
  }
}

/* Page-scoped override: Apartments hero strip (Kakai) */
.page-apartments .hero.hero--subpage {
  height: 180px;
  min-height: 180px;
  background: #6F8475;
}
@media (max-width: 767px) {
  .page-apartments .hero.hero--subpage {
    height: 140px;
    min-height: 140px;
  }
}

/* 
.hero--subpage {
  height: 220px;
  background-image: url("room.jpg");
  background-size: cover;
  background-position: center;
}
*/



  .hero {
    min-height: 100vh;
    background-size: cover;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    overflow: hidden;
  }
  
  .hero .container-fluid {
    position: relative;
    z-index: 5;
  }
  
  .hero:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
  }
  
  .hero-cnt {
    position: relative;
    height: 100%;
    z-index: 5;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 160px 40px 80px 0;
  }
  
  @media (max-width: 767px) {
    .hero-cnt {
      padding: 120px 15px 80px 0;
    }
  }
  
  .hero-descr {
    font-family: "SFProText-Regular", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
    max-width: 420px;
    width: 100%;
    padding-top: 10px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
  }
  
  .hero-title {
    max-width: 535px;
    width: 100%;
    margin-bottom: 205px;
  }
  
  .hero-items {
    margin-top: 25px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  .hero-items--tight {
    margin-top: 10px;
  }
  
  .hero-btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 93px;
    height: 93px;
    border-radius: 50%;
    border: 2px solid #ffffff;
    transition: all 0.3s ease-out;
  }
  
  .hero-btn i {
    transition: all 0.3s ease-out;
    transition-delay: .15s;
  }
  
  .hero-btn:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    background: var(--sla-accent);
    border-color: var(--sla-accent);
  }
  
  .hero-btn:hover i {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  
  .hero--interior {
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  
  .hero--interior:after {
    content: none;
  }
  
  .hero--interior .swiper-pagination.swiper-pagination-bullets {
    bottom: 36px;
    left: 52px;
    right: inherit;
    text-align: left;
  }
  
  .hero--interior .swiper-pagination-bullets .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ffffff;
    margin: 0 9px;
    opacity: 1;
    transition: all 0.3s ease-out;
  }
  
  .hero--interior .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--sla-accent);
  }
  
  .hero--interior .swiper-button-next, .hero--interior .swiper-button-prev {
    width: 23px;
    height: 43px;
  }
  
  .hero--interior .swiper-button-next:after, .hero--interior .swiper-button-prev:after {
    content: none;
  }
  
  .hero--interior .swiper-button-next svg line, .hero--interior .swiper-button-prev svg line {
    transition: all 0.3s ease-out;
    stroke: #ffffff;
  }
  
  .hero--interior .swiper-button-next:hover svg line, .hero--interior .swiper-button-prev:hover svg line {
    stroke: var(--sla-accent);
  }
  
  .hero--interior .swiper-button-prev {
    left: 65px;
  }
  
  .hero--interior .swiper-button-next {
    left: 120px;
    right: inherit;
  }
  
  .hero--interior .swiper-button-next {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  
  .hero-slider {
    position: relative;
    z-index: 1;
    width: 100%;
  }
  
  .hero-slide {
    background-size: cover;
    background-position: center;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
  }
  
  .hero-slide:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 100%;
  }
  
  .hero-slide-1:after {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  }
  
  .hero-slide-2:after {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
  }
  
  .hero-slide-3:after {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.23), rgba(0, 0, 0, 0.23));
  }
  
  .hero-slide__cnt {
    padding-top: 110px;
    position: relative;
    z-index: 2;
  }
  
  .hero-slide__title {
    font-size: 90px;
    line-height: 80px;
    color: #ffffff;
    font-family: "SFProDisplay-Semibold", sans-serif;
    margin-bottom: 80px;
  }
  
  .hero-slide__info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .hero-slide__btn {
    margin-right: 83px;
  }
  
  .hero-slide__descr {
    font-size: 15px;
    line-height: 21px;
    color: #ffffff;
    max-width: 330px;
    width: 100%;
  }
  
  .hero-inner {
    padding-bottom: 81px;
    position: relative;
    z-index: 1;
  }
  
  .hero-inner .hero-title {
    font-size: 75px;
    line-height: 75px;
    max-width: none;
    margin-bottom: 32px;
  }
  
  .hero-inner .hero-descr {
    margin-bottom: 204px;
    font-size: 18px;
    line-height: 25px;
    color: #F9F9F9;
  }
  
  .hero-inner .hero-btn:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  
  .hero-inner .hero-btn:hover i {
    -webkit-transform: scale(1) translateY(10px);
            transform: scale(1) translateY(10px);
  }
  
  .hero-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-position: center;
    background-size: cover;
  }

  .hero-bg--video {
    overflow: hidden;
  }

  .hero-bg__placeholder {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-position: center;
    background-size: cover;
    z-index: 1;
    transition: opacity 0.5s ease-out;
  }

  .hero-bg__placeholder.hidden {
    opacity: 0;
    pointer-events: none;
  }

  .hero-bg__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 2;
  }
  
  .hero-demo {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  
  .hero-demo .hero-inner {
    padding: 200px 0;
  }
  
  .hero-demo .hero-descr {
    margin-bottom: 0;
  }
  
  .hero-demo .hero-btn {
    position: absolute;
    bottom: 80px;
    right: inherit;
    z-index: 2;
  }
  
  /* 5.2 Main - Modal */
  .mfp-iframe-holder .mfp-content {
    max-width: calc(100% - 80px);
  }
  
  /* 5.3 Main - Create */
  .create-items {
    margin-bottom: 228px;
  }
  
  .create-items:last-child {
    margin-bottom: 0;
  }
  
  .create-items--center {
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .create-items--reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  
  .create-items--reverse .create-item__img {
    margin-left: 0;
  }
  
  .create-items--reverse .create-item__info {
    padding-left: 10px;
    padding-top: 3px;
  }
  
  .create-item .title-wrap {
    margin-bottom: 170px;
  }
  
  .create-item__title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 57px;
    line-height: 60px;
    color: #000000;
    margin-bottom: 122px;
  }
  
  .create-item__title span {
    color: var(--sla-accent);
  }
  
  .create-item__descr {
    font-family: "SFProText-Regular", sans-serif;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    max-width: 395px;
    width: 100%;
  }
  
  .create-item__img img {
    max-width: 100%;
  }
  
  /* 5.4 Main - Service */
  .service {
    padding: 162px 0;
  }
  
  .service-title-wrap {
    width: calc(50% - 50px);
    margin-right: 50px;
  }
  
  .service-items {
    padding-top: 5px;
  }
  
  .service-item {
    border-bottom: 1px solid #000000;
  }
  
  .service-item__title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 15px;
    line-height: 39px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #000000;
  }
  
  .service-item__toggle {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1px 4px 1px 0;
    cursor: pointer;
  }
  
  .service-item__toggle.active .service-item__arrow {
    background: var(--sla-accent);
    border-color: var(--sla-accent);
  }
  
  .service-item__toggle.active .service-item__arrow-icon svg {
    -webkit-transform: rotate(180deg) translateY(2px);
            transform: rotate(180deg) translateY(2px);
  }
  
  .service-item__toggle.active .service-item__arrow-icon svg path {
    fill: #ffffff;
  }
  
  .service-item__arrow {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 25px;
    height: 25px;
    border: 1px solid #000000;
    border-radius: 50%;
    transition: all 0.3s ease-out;
  }
  
  .service-item__arrow svg {
    transition: all 0.3s ease-out;
  }
  
  .service-item__arrow svg path {
    transition: all 0.3s ease-out;
  }
  
  .service-item__cnt {
    padding: 40px 0 38px;
    display: none;
    border-top: 1px solid #000000;
  }
  
  .service-item__cnt.active {
    display: block;
  }
  
  .service-item__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
  }
  
  .service-item__links {
    width: 25%;
  }
  
  .service-item__descr {
    width: 75%;
    padding-left: 15px;
    font-family: "SFProText-Regular", sans-serif;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
  }
  
  .service-item__link {
    font-family: "SFProText-Regular", sans-serif;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 15px;
    line-height: 21px;
    color: var(--sla-accent);
    text-decoration: none;
  }
  
  .service-item__link i {
    margin-left: 13px;
    transition: all 0.3s ease-out;
  }
  
  .service-item__link:hover i {
    margin-left: 20px;
  }
  
  /* 5.5 Main - Project */
  .project {
    padding-top: 230px;
  }
  
  .project .swiper-button-next, .project .swiper-button-prev {
    top: -113px;
    left: inherit;
    width: 18px;
    height: 33px;
  }
  
  .project .swiper-button-next:after, .project .swiper-button-prev:after {
    content: none;
  }
  
  .project .swiper-button-next svg line, .project .swiper-button-prev svg line {
    transition: all 0.3s ease-out;
  }
  
  .project .swiper-button-next:hover svg line, .project .swiper-button-prev:hover svg line {
    stroke: var(--sla-accent);
  }
  
  .project .swiper-button-next {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  
  .project .swiper-container {
    overflow: visible;
  }
  
  .project-title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 57px;
    line-height: 60px;
    color: #000000;
    margin-bottom: 90px;
  }
  
  .project-slide {
    position: relative;
    overflow: hidden;
  }
  
  .project-slide:hover .project-slide__hover {
    opacity: 1;
    visibility: visible;
  }
  
  .project-slide__hover {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #F9F9F9;
    border: 1px solid #000000;
    padding: 45px 38px;
    opacity: 0;
    visibility: hidden;
    transition: opacity .6s ease-out;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  .project-slide__img img {
    max-width: 100%;
    width: 100%;
  }
  
  .project-slide__title {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 23px;
    line-height: 30px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
    padding-bottom: 17px;
    border-bottom: 1px solid #000000;
    margin-bottom: 56px;
    width: 100%;
  }
  
  .project-slide__descr {
    font-family: "SFProText-Regular", sans-serif;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    max-width: 330px;
    width: 100%;
  }
  
  .project-slide__info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  
  .project-slide__btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: var(--sla-accent);
    width: 88px;
    height: 88px;
    border-radius: 50%;
    transition: all 0.3s ease-out;
  }
  
  .project-slide__btn i {
    transition: all 0.3s ease-out;
    transition-delay: .15s;
  }
  
  .project-slide__btn:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  
  .project-slide__btn:hover i {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  
  /* 5.7 Main - News */
  .news {
    padding: 163px 0;
  }
  
  .news-cnt {
    margin: 0 -71px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  
  .news-info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: calc(50% - 142px);
    margin: 0 71px;
  }
  
  .news-info .news-img {
    display: none;
    position: static;
    padding-top: 0;
  }
  
  .news-info .news-img img {
    position: static;
    width: 100%;
    opacity: 1;
  }
  
  .news-img-wrap {
    width: calc(50% - 142px);
    margin: 0 71px;
    position: relative;
  }
  
  .news-img {
    position: absolute;
    padding-top: 100%;
    top: 0;
    left: 0;
    right: 0;
  }
  
  .news-img:first-child {
    position: relative;
  }
  
  .news-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    -o-object-fit: cover;
       object-fit: cover;
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  
  .news-img.active img {
    opacity: 1;
  }
  
  .news-title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 57px;
    line-height: 60px;
    color: #000000;
    margin-bottom: 30px;
  }
  
  .news-list {
    width: 100%;
    margin-bottom: 4px;
  }
  
  .news-list__item {
    border-bottom: 1px solid #000000;
  }
  
  .news-list__link {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 15px;
    line-height: 41px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #000000;
    text-decoration: none;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    transition: all 0.3s ease-out;
  }
  
  .news-list__link.active {
    color: var(--sla-accent);
  }
  
  .news-list__link.active .news-list__arrow {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  
  .news-list__arrow {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 1px solid #000000;
    opacity: 0;
    -webkit-transform: translateX(-10px);
            transform: translateX(-10px);
    transition: all 0.3s ease-out;
  }
  
  .news-page .footer {
    border-top: 0;
  }
  
  .news-p {
    padding: 272px 0 0;
  }
  
  .news-p-tag {
    position: absolute;
    margin-top: 6px;
    font-family: "SFProText-Bold", sans-serif;
    font-size: 15px;
    line-height: 19px;
    text-transform: uppercase;
    color: var(--sla-accent);
  }
  
  .news-p .inner-title-wrap {
    margin-bottom: 75px;
  }
  
  .news-grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: -30px;
  }
  
  .news-grid__item {
    width: calc(33.333% - 60px);
    margin: 30px;
    position: relative;
    overflow: hidden;
  }
  
  .news-grid__item:hover .news-hover {
    opacity: 1;
    visibility: visible;
  }
  
  .news-item__img {
    padding-top: 94.5%;
    position: relative;
  }
  
  .news-item__img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  
  .news-hover {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: var(--sla-accent);
    border: 1px solid #000000;
    padding: 46px 39px 37px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-out;
  }
  
  .news-hover__info {
    width: 100%;
  }
  
  .news-hover__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-bottom: 16px;
    border-bottom: 1px solid #000000;
    margin-bottom: 57px;
  }
  
  .news-hover__title {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 23px;
    line-height: 30px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
  }
  
  .news-hover__tag {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 13px;
    line-height: 32px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
  }
  
  .news-hover__descr {
    max-width: 330px;
    font-size: 15px;
    line-height: 21px;
  }
  
  .news-hover__btn {
    font-size: 18px;
    line-height: 25px;
    color: #000000;
    text-decoration: none;
  }
  
  .news-hover__btn i {
    margin-left: 10px;
    transition: all 0.3s ease-out;
  }
  
  .news-hover__btn:hover i {
    margin-left: 15px;
  }
  
  .news-listing {
    margin: -30px 70px -30px -30px;
  }
  
  .news-listing__item {
    position: relative;
  }
  
  .news-listing__item:hover .news-hover {
    opacity: 1;
    visibility: visible;
  }
  
  .news-listing__item .news-hover {
    max-width: 434px;
    left: inherit;
    padding: 46px 0 31px 39px;
  }
  
  .news-listing__item .news-hover__header {
    margin-bottom: 20px;
  }
  
  .news-listing__img {
    position: relative;
    padding-top: 39%;
  }
  
  .news-listing__img img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  
  /* 5.8 Main - Partners */
  .partners {
    padding: 136px 0;
  }
  
  .partners-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  /* 5.9 Main - Rooms */
  .room {
    padding: 0;
  }
  
  .room-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  
  .room-item {
    width: 33.333%;
    position: relative;
    overflow: hidden;
  }
  
  .room-item.grid-item {
    padding: 0;
  }
  
  .room-item:hover .room-item__cnt {
    opacity: 1;
    visibility: visible;
  }
  
  .room-item--long .room-item__img {
    padding-top: 44.5%;
  }
  
  .room-item__img {
    position: relative;
    padding-top: 89%;
  }
  
  .room-item__img img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 100%;
  }
  
  .room-item__cnt {
    padding: 45px 39px;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: auto;
    background: #F9F9F9;
    opacity: 0;
    transition: all 0.3s ease-out;
    visibility: hidden;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  .room-item__title {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 23px;
    line-height: 30px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #000000;
    padding-bottom: 15px;
    border-bottom: 1px solid #000000;
    margin-bottom: 57px;
    width: 100%;
  }
  
  .room-item__descr {
    max-width: 330px;
    width: 100%;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
  }
  
  .room-item__btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: var(--sla-accent);
    width: 88px;
    height: 88px;
    border-radius: 50%;
    transition: all 0.3s ease-out;
  }
  
  .room-item__btn i {
    transition: all 0.3s ease-out;
    transition-delay: .15s;
  }
  
  .room-item__btn:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  
  .room-item__btn:hover i {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  
  .room-item__info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  
  /* 5.10 Main - Team */
  .team {
    padding: 0;
  }
  
  .team .title-wrap {
    margin-bottom: 125px;
  }
  
  .team-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  
  .team-item {
    width: 25%;
    position: relative;
    overflow: hidden;
  }
  
  .team-item:hover .team-item__cnt {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    visibility: visible;
  }
  
  .team-item__img {
    position: relative;
    padding-top: 115%;
  }
  
  .team-item__img img {
    position: absolute;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 100%;
  }
  
  .team-item__cnt {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    background: #F9F9F9;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 52px 40px 39px;
    opacity: 0;
    -webkit-transform: translateY(-20%);
            transform: translateY(-20%);
    visibility: hidden;
    transition: all 0.3s ease-out;
  }
  
  .team-item__title {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 25px;
    line-height: 25px;
    text-transform: uppercase;
    color: var(--sla-accent);
    margin-bottom: 57px;
  }
  
  .team-item__descr {
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    max-width: 330px;
    width: 100%;
  }
  
  .team-item__social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .team-item__social-item {
    margin-right: 34px;
  }
  
  .team-item__social-item:last-child {
    margin-right: 0;
  }
  
  .team-item__social-link svg path {
    transition: all 0.3s ease-out;
  }
  
  .team-item__social-link:hover svg path {
    fill: var(--sla-accent);
  }
  
  /* 5.11 Main - Interior */
  .interior .news {
    padding: 220px 0 0;
  }
  
  /* 5.12 Main - Trends */
  .trends-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 150px;
  }
  
  .trends-items:last-child {
    margin-bottom: 0;
  }
  
  .trends-item {
    width: 50%;
  }
  
  .trends-title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 57px;
    line-height: 60px;
    color: #000000;
    margin-bottom: 122px;
  }
  
  .trends-title span {
    color: var(--sla-accent);
  }
  
  .trends-descr {
    max-width: 395px;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
  }
  
  .trends-cnt {
    background: #F9F9F9;
    padding: 24px 0 85px 45px;
  }
  
  .trends-cnt__subtitle {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 220px;
    line-height: 220px;
    letter-spacing: 0.03em;
    color: var(--sla-accent);
    margin-bottom: 8px;
  }
  
  .trends-cnt .title-wrap {
    margin-bottom: 82px;
    padding-left: 5px;
  }
  
  .trends-cnt__descr {
    max-width: 331px;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    margin-right: 47px;
    padding-left: 5px;
  }
  
  .trends-video {
    padding-left: 150px;
  }
  
  .trends-video .title-wrap {
    margin-bottom: 187px;
  }
  
  .trends-btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 109px;
    height: 109px;
    border-radius: 50%;
    border: 2px solid #000000;
    transition: all 0.3s ease-out;
  }
  
  .trends-btn i {
    transition: all 0.3s ease-out;
    transition-delay: .15s;
  }
  
  .trends-btn:hover {
    border-color: var(--sla-accent);
    background: var(--sla-accent);
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  
  .trends-btn:hover i {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  
  .trends-img img {
    width: 100%;
  }
  
  /* 5.13 Main - About us */
  .about-page .team {
    padding-top: 260px;
  }
  
  .about-page .partners {
    padding: 215px 0 193px;
  }
  
  /* 5.14 Main - Philosophy */
  .philosophy {
    padding-top: 272px;
    padding-bottom: 190px;
  }
  
  .philosophy-img {
    position: relative;
    padding-top: 40%;
  }
  
  .philosophy-img img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    width: 100%;
    height: 100%;
  }
  
  .philosophy-cnt {
    padding-top: 190px;
  }
  
  .philosophy-cnt .title-wrap {
    margin-bottom: 235px;
    padding-top: 8px;
  }
  
  .philosophy-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 250px;
  }
  
  .philosophy-items:last-child {
    margin-bottom: 0;
  }
  
  .philosophy-item {
    width: 50%;
  }
  
  .philosophy-descr {
    font-family: "SFProText-Medium", sans-serif;
    font-size: 15px;
    line-height: 23px;
    color: #000000;
    max-width: 395px;
    width: 100%;
  }
  
  .philosophy-info {
    padding: 63px 0 85px 50px;
  }
  
  .philosophy-info--gray {
    background: #F9F9F9;
  }
  
  .philosophy-info__subtitle {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 110px;
    line-height: 90px;
    color: var(--sla-accent);
    margin-bottom: 43px;
  }
  
  .philosophy-info .title-wrap {
    margin-left: 4px;
    margin-bottom: 82px;
  }
  
  .philosophy-info__descr {
    max-width: 330px;
    width: 100%;
    margin-right: 45px;
    margin-left: 4px;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
  }
  
  /* 5.15 Main - Video */
  .video__cnt {
    background-size: cover;
    background-repeat: no-repeat;
    padding-top: 53%;
    width: 100%;
    position: relative;
  }
  
  .video__cnt iframe {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: 100%;
    width: 100%;
  }
  
  .video__play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 109px;
    height: 109px;
    border-radius: 50%;
    background-color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease-out;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  
  .video__play.hidden {
    display: none;
  }
  
  .video__play i {
    transition: all 0.3s ease-out;
    transition-delay: .15s;
  }
  
  .video__play:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    background: var(--sla-accent);
  }
  
  .video__play:hover i {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  
  .video-wrap {
    position: relative;
    z-index: 1;
    width: calc(100vw/2 - 60px);
  }
  
  /* 5.16 Main - Error page */
  .error {
    padding: 260px 0 195px;
  }
  
  .error-cnt {
    max-width: 585px;
    width: 100%;
    margin: auto;
    padding: 0 15px;
  }
  
  .error-info {
    background: #F9F9F9;
    padding: 67px 0 67px 50px;
    margin-bottom: 54px;
  }
  
  .error-title {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 110px;
    line-height: 90px;
    color: var(--sla-accent);
    margin-bottom: 52px;
  }
  
  .error .title-wrap {
    margin-left: 10px;
    margin-bottom: 82px;
  }
  
  .error .title {
    font-family: "SFProDisplay-Bold", sans-serif;
    letter-spacing: 1.2px;
  }
  
  .error-descr {
    font-size: 16px;
    line-height: 26px;
    color: #000000;
    max-width: 304px;
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: 45px;
  }
  
  .error-descr a {
    color: var(--sla-accent);
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .error-descr a:hover {
    text-decoration: underline;
  }
  
  .error .form-control {
    padding: 16px 60px 16px 24px;
    height: 50px;
    width: 100%;
  }
  
  .error .form-group {
    position: relative;
  }
  
  .error .form-button {
    position: absolute;
    width: 56px;
    height: calc(100% - 4px);
    background: #ffffff;
    top: 0;
    bottom: 0;
    right: 1px;
    margin: auto;
  }
  
  /* 5.17 Main - Contact */
  .contact {
    padding: 270px 0 200px;
  }
  
  .contact-map {
    margin-bottom: 233px;
  }
  
  .contact-title-wrap {
    margin-bottom: 65px;
  }
  
  .contact-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  
  .contact-item {
    width: 50%;
  }
  
  .contact-cnt .title-wrap {
    margin-bottom: 115px;
  }
  
  .contact-info {
    padding-top: 15px;
  }
  
  .contact-info__phone {
    margin-bottom: 120px;
  }
  
  .contact-info__phone-link {
    font-family: "SFProText-Bold", sans-serif;
    font-size: 32px;
    line-height: 21px;
    text-align: center;
    color: #000000;
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .contact-info__phone-link:hover {
    color: var(--sla-accent);
  }
  
  .contact-info__addr {
    max-width: 332px;
    width: 100%;
    margin-bottom: 70px;
  }
  
  .contact-info__addr-link {
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .contact-info__addr-link span {
    color: var(--sla-accent);
  }
  
  .contact-info__addr-link:hover {
    color: var(--sla-accent);
  }
  
  .contact-info__title {
    font-family: "SFProText-Bold", sans-serif;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
  }
  
  .contact-info__title a {
    font-family: "SFProText-Regular", sans-serif;
    color: #000000;
    text-decoration: none;
    transition: all 0.3s ease-out;
  }
  
  .contact-info__title a:hover {
    color: var(--sla-accent);
  }
  
  .contact-info__item {
    margin-bottom: 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .contact-info__item:last-child {
    margin-bottom: 0;
  }
  
  .contact-info__social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 20px;
  }
  
  .contact-info__social-item {
    margin-right: 20px;
  }
  
  .contact-info__social-item:last-child {
    margin-right: 0;
  }
  
  .contact-info__social-link svg path {
    transition: all 0.3s ease-out;
  }
  
  .contact-info__social-link:hover svg path {
    fill: var(--sla-accent);
  }
  
  .contact-form__title {
    font-family: "SFProDisplay-Bold", sans-serif;
    font-size: 38px;
    line-height: 50px;
    color: #000000;
    margin-bottom: 60px;
  }
  
  .contact-form__title span {
    color: var(--sla-accent);
  }
  
  .contact-form .form-group {
    margin-bottom: 30px;
  }
  
  .contact-form .form-group:last-child {
    margin-bottom: 0;
  }
  
  .contact-form .form-group-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 -15px 30px;
  }
  
  .contact-form .form-group-items .form-group {
    width: calc(50% - 30px);
    margin: 0 15px;
  }
  
  .contact-form textarea.form-control {
    height: 174px;
  }
  
  .contact-form__btn {
    color: #ffffff;
  }
  
  /* 5.18 Main - Map */
  .map {
    height: 797px;
  }
  

/* === Footer + Media Queries === */
  /* 3. Footer */
  .footer {
    padding: 115px 60px 90px;
    border-top: 1px solid #000000;
    /* 3.1. Footer - Logo */
    /* 3.2. Footer - Copyright */
    /* 3.3. Footer - List */
    /* 3.4. Footer - Social */
  }
  
  .footer--tight {
    padding-top: 20px;
  }
  
  .footer-items {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  
  .footer-logo {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  
  .footer-logo-main {
    font-family: "SFProDisplay-Semibold", sans-serif;
    font-size: 32px;
    line-height: 38px;
    color: #000000;
  }
  
  .footer-logo-small {
    font-family: "SFProText-Regular", sans-serif;
    font-size: 13px;
    line-height: 16px;
    color: #000000;
    margin-top: -5px;
  }
  
  .footer .copyright {
    font-family: "SFProDisplay-Regular", sans-serif;
    font-size: 15px;
    line-height: 140%;
  }
  
  .footer-list__item {
    margin-bottom: 10px;
  }
  
  .footer-list__item:last-child {
    margin-bottom: 0;
  }
  
  .footer-list__item.active .footer-list__link {
    color: var(--sla-accent);
  }
  
  .footer-list__link {
    font-family: "SFProDisplay-Regular", sans-serif;
    font-size: 15px;
    line-height: 140%;
    text-decoration: none;
    color: #000000;
    transition: all 0.3s ease-out;
  }
  
  .footer-list__link:hover {
    color: var(--sla-accent);
  }
  
  .footer-social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  .footer-social__item {
    margin-right: 30px;
  }
  
  .footer-social__item:last-child {
    margin-right: 0;
  }
  
  .footer-social__link svg path {
    transition: all 0.3s ease-out;
  }
  
  .footer-social__link:hover svg path {
    fill: var(--sla-accent);
  }

  .footer-note {
  margin-top: 12px;
  font-size: 13px;
  opacity: 0.75;
  max-width: 260px;
}


/* FOOTER QR CODE CSS */

.footer-qr {
  margin-top: 24px;
}

.footer-qr-title {
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 14px;
}

.footer-qr-grid {
  display: flex;
  gap: 22px;
  align-items: flex-start;
}

.footer-qr-item {
  text-align: center;
}

.footer-qr-item img {
  width: 150px;
  height: 150px;
  border-radius: 18px;
  background: #fff;
  padding: 10px;
  transition: transform 0.15s ease;
}

/* nice hover on desktop */
.footer-qr-item img:hover {
  transform: scale(1.03);
}

.footer-qr-item span {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  opacity: 0.85;
}

/* MOBILE: slightly smaller but still tappable */
@media (max-width: 768px) {
  .footer-qr-grid {
    justify-content: center;
  }

  .footer-qr-item img {
    width: 120px;
    height: 120px;
  }
}



  
  @media only screen and (max-width: 1820px) {
    .header-logo {
      left: 30px;
    }
  }
  
  @media only screen and (max-width: 1740px) {
    .planing-step__item-img {
      position: static;
      text-align: right;
      margin-top: 50px;
    }
    .header {
      padding: 24px 40px 20px 40px;
    }
    .header.fixed {
      padding: 15px 40px 15px 40px;
    }
    .header.fixed .header-burger-line {
      background: #000000;
    }
    .header-logo {
      position: static;
      margin-left: 0;
    }
    .header-phone {
      position: static;
      white-space: nowrap;
    }
    .header-nav-list {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      margin-bottom: 30px;
    }
    .header .nav-item {
      margin-right: 0;
      margin-bottom: 37px;
    }
    .header .nav-item:last-child {
      margin-bottom: 0;
    }
    .header .nav-link {
      color: #000000;
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 0.02em;
      text-transform: capitalize;
    }
    .header .dropdown-menu {
      position: relative;
      display: none;
      visibility: visible;
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0);
      transition: none;
    }
    .header .dropdown:hover .dropdown-menu {
      visibility: visible;
      opacity: 1;
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
    .header-inner {
      position: fixed;
      z-index: 50;
      background: #ffffff;
      width: 100%;
      max-width: 504px;
      min-height: 100%;
      right: 0;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      top: 0;
      bottom: 0;
      margin: auto;
      padding: 40px 65px;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      opacity: 0;
      -webkit-transform: translateX(50%);
              transform: translateX(50%);
      visibility: hidden;
      overflow-y: auto;
    }
    .header-inner.anime {
      transition: all 0.3s ease-out;
    }
    .header-inner.active {
      opacity: 1;
      -webkit-transform: translateX(0);
              transform: translateX(0);
      visibility: visible;
    }
    .header-contacts {
      display: block;
    }
    .header-contacts__link {
      font-size: 14px;
      line-height: 150%;
      color: #000000;
      margin-bottom: 20px;
      display: block;
      text-decoration: none;
    }
    .header-contacts__link:hover {
      color: var(--sla-accent);
    }
    .header-contacts__copyright {
      display: block;
      font-size: 14px;
      line-height: 150%;
      text-align: left;
      margin: 0;
      color: #000000;
    }
    .header-contacts .social {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      position: static;
      margin-bottom: 40px;
    }
    .header-phone {
      margin: 0 30px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
    }
    .header-phone .header-social {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 0;
      margin-right: 100px;
    }
    .header-phone .header-social__link svg path {
      fill: #ffffff;
    }
    .header-phone .header-social__link:hover svg path {
      fill: var(--sla-accent);
    }
    .header-lang {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 60px;
    }
    .header-lang__item {
      margin-right: 20px;
    }
    .header-lang__item:last-child {
      margin-right: 0;
    }
    .header-lang__item.active .header-lang__link {
      color: var(--sla-accent);
    }
    .header-lang__link {
      font-family: "SFProDisplay-Regular", sans-serif;
      font-size: 14px;
      line-height: 140%;
      text-decoration: none;
      color: #000000;
      transition: all 0.3s ease-out;
    }
    .header-lang__link:hover {
      color: var(--sla-accent);
    }
    .header-burger {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
    }
    .header-social {
      margin-bottom: 20px;
    }
    .header-social__link svg path {
      fill: #000000;
    }
    .header-social__link:hover svg path {
      fill: var(--sla-accent);
    }
    .dark .header-inner {
      background: #242424;
    }
    .dark .header-lang__link {
      color: #ffffff;
    }
    .dark .header-lang__link:hover {
      color: var(--sla-accent);
    }
    .dark .dropdown-menu {
      background: transparent;
    }
    .dark .dropdown-list__link {
      color: #ffffff;
    }
    .dark .dropdown-list__link:hover {
      color: var(--sla-accent);
    }
    .dark .header-contacts__link {
      color: #ffffff;
    }
    .dark .header-contacts__link:hover {
      color: var(--sla-accent);
    }
    .dark .header-contacts__copyright {
      color: #ffffff;
    }
    .dark .header-burger.clicked .header-burger-line {
      background: #ffffff;
    }
    .dark .header-burger .header-burger-line {
      background: #ffffff;
    }
  }
  
  @media only screen and (max-width: 1600px) {
    .grid-item {
      width: calc(50% - 60px);
      padding: 0;
      margin: 30px;
    }
    .grid-item--width2 {
      width: calc(100% - 60px);
    }
    .room-item.grid-item {
      margin: 0;
      width: 50%;
    }
    .room-item.grid-item--width2 {
      width: 100%;
    }
  }
  
  @media only screen and (max-width: 1440px) {
    .hero .swiper-button-next, .hero .swiper-button-prev {
      display: none;
    }
    .grid-wrap {
      margin: -15px;
    }
    .grid-item {
      padding: 15px;
    }
  }
  
  @media only screen and (max-width: 1340px) {
    .hero-title {
      margin-bottom: 100px;
    }
    .hero-cnt {
      width: 100%;
    }
  }
  
  @media only screen and (max-width: 1200px) {
    .header {
      padding: 20px 15px;
    }
    .header.fixed {
      padding: 15px;
    }
    .header-phone {
      display: none;
    }
    .dark .header.fixed {
      padding: 15px;
    }
    .create-item {
      margin-bottom: 100px;
    }
    .create-item:last-child {
      margin-bottom: 0;
    }
    .create-item__img {
      margin-left: 0;
    }
    .create-item__img img {
      max-width: 100%;
    }
    .create-items--reverse .create-item__info {
      padding-left: 15px;
    }
    .service-title-wrap {
      margin-bottom: 100px;
    }
    .room {
      padding: 0;
    }
    .room-item__cnt {
      padding: 20px;
    }
    .room-item__title {
      margin-bottom: 20px;
    }
    .room-item__descr {
      font-size: 12px;
      line-height: 16px;
    }
    .room-item__btn {
      width: 75px;
      height: 75px;
    }
    .dark .room-item__descr:after {
      background: linear-gradient(to top, rgba(36, 36, 36, 0.4) 0%, rgba(36, 36, 36, 0) 100%);
    }
    .philosophy {
      padding: 150px 0;
    }
    .philosophy-cnt {
      padding-top: 150px;
    }
    .philosophy-cnt .title-wrap {
      margin-bottom: 100px;
    }
    .philosophy-items {
      margin-bottom: 150px;
    }
    .video__play {
      width: 75px;
      height: 75px;
    }
    .video__play i {
      margin-left: 5px;
    }
    .about-page .team {
      padding-top: 150px;
    }
    .about-page .partners {
      padding: 150px 0;
    }
    .project-slide__hover {
      overflow: auto;
    }
    .project-slide__info {
      margin-bottom: 20px;
    }
    .project-slide__title {
      margin-bottom: 30px;
      font-size: 20px;
      line-height: 27px;
      padding-bottom: 10px;
    }
    .project-slide__btn {
      width: 75px;
      height: 75px;
    }
    .details-page .planing-step {
      padding-bottom: 100px;
    }
    .details-page .planing-step__items--end .planing-step__descr {
      margin-bottom: 0;
    }
    .details-page .planing-items {
      margin: 0 -30px 70px;
    }
    .details-page .planing-item {
      margin: 0 30px 60px;
    }
    .news-hover {
      overflow: auto;
    }
    .news-hover__info {
      margin-bottom: 20px;
    }
    .news-hover__tag {
      position: absolute;
      left: 0;
      bottom: -30px;
    }
    .news-hover__header {
      position: relative;
    }
    .news-hover__title {
      font-size: 20px;
      line-height: 27px;
    }
    .news-hover__descr {
      font-size: 12px;
      line-height: 16px;
    }
    .news-hover__btn {
      width: 75px;
      height: 75px;
    }
    .news-listing {
      margin-right: 0;
    }
    .news-listing__item {
      margin-bottom: 30px;
    }
    .news-listing__item .news-hover {
      max-width: 50%;
    }
    .news-listing__item .news-hover__tag {
      position: static;
    }
    .single-img img {
      max-width: 100%;
    }
    .single-block {
      padding-top: 100px;
    }
    .single-block:first-child {
      padding-top: 100px;
    }
    .single .title-wrap {
      margin-bottom: 100px;
    }
    .single-txt--strong {
      margin-bottom: 100px;
    }
    .single .blog-share .title-wrap, .single .blog-tag .title-wrap {
      margin-bottom: 0;
    }
    .news-grid, .portfolio-grid {
      margin: -15px;
    }
    .news-grid__item, .portfolio-grid__item {
      width: calc(50% - 30px);
      margin: 15px;
    }
    .team-item {
      width: 50%;
    }
    .grid-wrap {
      margin: -15px;
    }
    .grid-item {
      width: calc(50% - 30px);
      padding: 0;
      margin: 15px;
    }
    .grid-item--width2 {
      width: calc(100% - 30px);
    }
  }
  
  @media only screen and (max-width: 1024px) {
    .title-wrap {
      position: relative;
      display: inline-block;
    }
    .title-line {
      width: 100% !important;
      margin: auto !important;
      position: absolute;
      left: 0;
      right: 0;
    }
    .pages--main {
      padding: 150px 30px;
    }
    .pages--main .pages-item {
      margin: 15px;
      width: calc(50% - 30px);
    }
    .pages--inner {
      padding: 150px 30px;
    }
    .pages--inner .pages-item {
      margin: 15px;
      width: calc(33.333% - 30px);
    }
    .pages--inner .pages-link {
      margin-bottom: 30px;
    }
    .pages--inner .pages-link:last-child {
      margin-bottom: 0;
    }
    .pages-items {
      margin: -15px;
    }
    .pages-link:hover {
      -webkit-transform: translateY(-15px);
              transform: translateY(-15px);
    }
    .hero-inner .hero-descr {
      margin-bottom: 75px;
    }
    .hero-inner .hero-title {
      font-size: 65px;
      line-height: 65px;
    }
    .hero-title {
      font-size: 65px;
      line-height: 65px;
    }
    .footer {
      padding: 50px 15px;
    }
    .footer-items {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
    }
    .footer-item {
      margin-bottom: 50px;
    }
    .footer-item:last-child {
      margin-bottom: 0;
    }
    .footer-list__link {
      font-size: 15px;
    }
    .footer .copyright {
      font-size: 15px;
    }
    .trends {
      padding: 100px 0 0;
    }
    .trends-items {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 100px;
    }
    .trends-items:last-child {
      margin-bottom: 0;
    }
    .trends-title {
      margin-bottom: 50px;
    }
    .trends-item {
      margin-bottom: 50px;
      width: 100%;
    }
    .trends-item:last-child {
      margin-bottom: 0;
    }
    .trends-img img {
      max-width: 100%;
      width: 100% !important;
    }
    .trends-video {
      padding-left: 0;
    }
    .trends-video .title-wrap {
      margin-bottom: 50px;
    }
    .philosophy-items {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 100px;
    }
    .philosophy-items:last-child {
      margin-bottom: 0;
    }
    .philosophy-item {
      margin-bottom: 100px;
      width: 100%;
    }
    .philosophy-item:last-child {
      margin-bottom: 0;
    }
    .video-wrap {
      width: 100%;
    }
    .planing-img {
      margin-bottom: 150px;
    }
    .planing-items {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      margin: 0 -30px 70px;
      counter-reset: title;
    }
    .planing-item {
      width: calc(50% - 60px);
      margin: 0 30px 60px;
    }
    .planing-step {
      padding-bottom: 100px;
    }
    .planing-step--mb {
      margin-bottom: 0;
    }
    .planing-step__items {
      margin: 0;
    }
    .planing-step__items--reverse .planing-step__item:nth-child(1) {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
      margin-bottom: 0;
    }
    .planing-step__items--reverse .planing-step__item:nth-child(2) {
      margin-bottom: 50px;
    }
    .planing-step__items--styled .planing-step__item:first-child {
      padding-bottom: 0;
      margin-bottom: 100px;
    }
    .planing-step__items--styled .planing-step__item:last-child {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
    }
    .planing-step__items--styled .planing-step__item:last-child .planing-step__descr {
      padding: 0 50px;
    }
    .planing-step__item {
      width: 100%;
      margin: 0 0 50px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
    }
    .planing-step__item:last-child {
      margin: 0;
    }
    .planing-step__item-img {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
      margin-bottom: 50px;
      text-align: left;
      margin-top: 0;
    }
    .planing-step__item-img img {
      max-width: 100%;
    }
    .planing-step__item .planing-step__descr {
      -webkit-order: 3;
          -ms-flex-order: 3;
              order: 3;
      margin-bottom: 0;
    }
    .planing-step__img .long-img {
      max-width: 100%;
      width: 100% !important;
      margin-left: 0 !important;
    }
    .planing-step__img img {
      max-width: 100%;
    }
    .planing-step__title {
      margin-left: 40px;
      margin-bottom: 50px;
    }
    .planing-step__info {
      padding-left: 0;
    }
    .planing-step__info-img {
      margin-left: 0;
    }
    .project-slide__hover {
      padding: 30px;
    }
    .details .planing-step__title {
      margin-left: 0;
    }
    .single-txt--strong {
      padding: 0;
    }
  }
  
  @media only screen and (max-width: 991px) {
    .section {
      padding: var(--space-section-mobile);
    }
    .hero-inner {
      padding: 140px 0 100px;
    }
    .hero-cnt {
      padding: 140px 20px 80px 0;
    }
    .create .title-wrap {
      margin-bottom: 50px;
    }
    .create-item {
      width: 100%;
      margin-bottom: 50px;
    }
    .create-item:last-child {
      margin-bottom: 0;
    }
    .create-item__title {
      font-size: 47px;
      line-height: 50px;
      margin-bottom: 50px;
    }
    .create-items {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      margin-bottom: 100px;
    }
    .create-items--reverse .create-item__info {
      margin-left: 0;
      padding-top: 0;
    }
    .service-cnt {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .service-items {
      width: 100%;
    }
    .service-item {
      width: 100%;
    }
    .service-item__descr {
      max-width: 395px;
    }
    .service-item__inner {
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
    }
    .service-title-wrap {
      width: 100%;
      margin-bottom: 50px;
      margin-right: 0;
    }
    .news-title {
      margin-bottom: 50px;
    }
    .news-cnt {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      margin: 0;
    }
    .news-img {
      display: none;
    }
    .news-info {
      width: 100%;
      margin: 0;
    }
    .news-info .news-img {
      display: block;
      width: 100%;
      margin: 0 0 50px;
    }
    .news-info .news-img img {
      width: 100%;
      max-width: 100%;
    }
    .room {
      padding: 0;
    }
    .trends, .team {
      padding: 100px 0 0;
    }
    .contact-cnt .title-wrap {
      margin-bottom: 50px;
    }
    .contact-items {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .contact-item {
      width: 100%;
      margin-bottom: 50px;
    }
    .contact-item:last-child {
      margin-bottom: 0;
    }
    .contact-info {
      padding: 0;
    }
    .contact-info__phone {
      margin-bottom: 50px;
    }
    .contact-info__addr {
      margin-bottom: 50px;
    }
    .contact-form {
      max-width: 740px;
    }
    .contact-map {
      margin-bottom: 100px;
    }
    .contact .map {
      height: 500px;
    }
    .grid-wrap {
      margin: -10px;
    }
    .grid-item {
      padding: 10px;
    }
    .project-slide__hover {
      padding: 20px;
    }
    .project-slide__title {
      font-size: 18px;
      line-height: 26px;
      margin-bottom: 15px;
    }
    .project-slide__btn {
      width: 50px;
      height: 50px;
    }
    .project-slide__btn i {
      width: 25px;
    }
    .news-hover {
      padding: 20px;
    }
    .news-hover__title {
      font-size: 18px;
      line-height: 26px;
    }
  }
  
  @media only screen and (max-width: 768px) {
    .sla-card__actions-row {
      flex-direction: column;
      width: 100%;
    }
    .sla-btn {
      width: 100%;
    }
    .hero {
      align-items: center;
      justify-content: center;
    }
    .section {
      padding: var(--space-section-mobile);
    }
    h1 {
      font-size: 42px;
      line-height: 48px;
    }
    .hero-title {
      font-size: 42px;
      line-height: 48px;
    }
    .pages .title-wrap {
      margin-bottom: 60px;
    }
    .pages--main {
      padding: 100px 30px;
    }
    .pages--main .pages-items {
      margin: -15px 0;
    }
    .pages--main .pages-item {
      width: 100%;
      margin: 15px 0;
    }
    .pages--inner {
      padding: 100px 30px;
    }
    .pages--inner .pages-items {
      margin: -10px;
    }
    .pages--inner .pages-item {
      width: calc(50% - 20px);
      margin: 10px;
    }
    .pages--inner .pages-link {
      margin-bottom: 15px;
      text-align: center;
    }
    .pages--inner .pages-link picture {
      margin-bottom: 20px;
    }
    .pages--inner .pages-link:last-child {
      margin-bottom: 0;
    }
    .hero-title {
      margin-bottom: 28px;
    }
    .hero-items {
      margin-top: 0;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
    }
    .hero-btns {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
    }
    .hero-descr {
      padding-top: 0;
      margin-bottom: 36px;
    }
    .hero-cnt {
      padding: 120px 15px 80px 0;
    }
    .hero-slide {
      background-position: right;
    }
    .hero-slide__info {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
    }
    .hero-slide__btn {
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
    }
    .hero-slide__descr {
      margin-bottom: 50px;
    }
    .partners-items {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .partners-item {
      width: calc(50% - 20px);
      margin: 10px;
    }
    .partners-item img {
      max-width: 100%;
    }
    .testimonials .swiper-container {
      padding-top: 140px;
      padding-bottom: 83px;
    }
    .testimonials .swiper-button-next, .testimonials .swiper-button-prev {
      bottom: 0;
      top: inherit;
    }
    .project {
      padding: 100px 0 0;
    }
    .project .swiper-container {
      padding-bottom: 83px;
    }
    .project .swiper-button-next, .project .swiper-button-prev {
      bottom: 0;
      top: inherit;
    }
    .project-title {
      margin-bottom: 50px;
    }
    .project-slide__hover {
      padding: 20px;
    }
    .project-slide__btn {
      width: 75px;
      height: 75px;
    }
    .news-hover {
      padding: 20px;
    }
    .room {
      padding: 0;
    }
    .room-item.grid-item {
      margin: 0;
      width: 100%;
    }
    .room-item--long .room-item__img {
      padding-top: 89%;
    }
    .room-item__cnt {
      padding: 20px;
    }
    .team {
      padding: 100px 0 0;
    }
    .team-item {
      width: 100%;
    }
    .interior .news {
      padding: 100px 0 0;
    }
    .contact-form__title {
      font-size: 34px;
      line-height: 42px;
      margin-bottom: 50px;
    }
    .contact .form-group-items {
      margin: 0 -5px;
    }
    .contact .form-group-items .form-group {
      margin: 0 5px 20px;
      width: calc(50% - 10px);
    }
    .philosophy-cnt {
      padding-top: 100px;
    }
    .philosophy .title-wrap {
      margin-bottom: 50px;
    }
    .philosophy-item {
      margin-bottom: 50px;
    }
    .philosophy-item:last-child {
      margin-bottom: 0;
    }
    .philosophy-info {
      padding: 30px 10px 30px;
    }
    .philosophy-info__descr {
      text-align: right;
    }
    .about-page .team {
      padding-top: 100px;
    }
    .about-page .team .title-wrap {
      margin-bottom: 50px;
    }
    .about-page .partners {
      padding: 100px 0;
    }
    .planing-img {
      margin-bottom: 100px;
    }
    .planing-items {
      margin: 0;
      margin-bottom: 100px;
    }
    .planing-item {
      width: 100%;
      margin: 0 0 50px;
    }
    .planing-item:last-child {
      margin: 0;
    }
    .planing-step__title {
      font-size: 47px;
      line-height: 50px;
    }
    .planing-step__info {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 50px;
    }
    .planing-step__info .planing-step__descr {
      padding: 0;
    }
    .planing-step__info .planing-step__descr, .planing-step__info .planing-step__title {
      width: 100%;
    }
    .planing-step__items--styled .planing-step__item:last-child {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
    }
    .planing-step__items--styled .planing-step__item:last-child .planing-step__descr {
      padding: 0 15px;
    }
    .error-info {
      padding: 40px 0 40px 30px;
      margin-bottom: 50px;
    }
    .soon {
      padding: 50px 0;
    }
    .soon-logo {
      margin-bottom: 50px;
    }
    .soon-descr {
      margin: 0 auto 100px;
    }
    .soon-timer__num {
      font-size: 54px;
      line-height: 15px;
    }
    .grid-wrap {
      margin: -15px;
    }
    .grid-item {
      width: calc(100% - 30px);
      padding: 0;
    }
    .grid-item--width2 {
      width: calc(100% - 30px);
    }
    .inner-btns {
      bottom: -30px;
      left: 15px;
      right: inherit;
    }
    .details-page .planing-items {
      margin: 0 0 100px;
    }
    .details-page .planing-item {
      margin: 0 0 50px;
    }
    .details-page .planing-item:last-child {
      margin: 0;
    }
    .details-page .planing-step:last-child {
      padding-bottom: 0;
    }
    .news-listing__img {
      padding-top: 50%;
    }
    .news-listing__item .news-hover {
      max-width: 100%;
    }
    .single {
      padding-bottom: 0;
    }
    .single .title-wrap {
      margin-bottom: 50px;
    }
    .single-txt {
      margin-bottom: 50px;
    }
    .single-txt--strong {
      margin-bottom: 50px;
    }
    .single-title {
      margin-bottom: 50px;
    }
    .single-figure {
      margin-bottom: 100px;
      padding: 106px 40px 40px;
    }
    .single-gallery {
      margin: 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .single-gallery__item {
      width: 100%;
      margin: 0 0 30px;
    }
    .single-gallery__item:last-child {
      margin: 0;
    }
    .single-img img {
      max-width: 100%;
      width: 100%;
    }
    .single-subtitle {
      margin-bottom: 50px;
    }
    .blog-tag {
      margin-bottom: 50px;
    }
    .related {
      padding: 100px 0;
    }
    .related .swiper-container {
      padding-bottom: 83px;
    }
    .related .swiper-button-next, .related .swiper-button-prev {
      top: inherit;
      bottom: 0;
    }
    .related-title {
      font-size: 47px;
      line-height: 50px;
      margin-bottom: 50px;
    }
    .comment {
      padding: 100px 0;
    }
    .comment .title-wrap {
      margin-bottom: 50px;
    }
    .comment-items {
      margin-bottom: 50px;
    }
    .comment-item {
      margin-bottom: 50px;
    }
    .comment-item__inner {
      margin-bottom: 50px;
    }
    .comment-item .comment-items {
      padding-left: 50px;
    }
    .comment-cnt {
      margin-bottom: 100px;
    }
    .comment .contact-form .title-wrap {
      margin-bottom: 50px;
    }
    .comment .contact-form .form-group-items {
      margin: 0 -5px;
    }
    .comment .contact-form .form-group-items .form-group {
      margin: 0 5px 20px;
      width: calc(50% - 10px);
    }
    .portfolio-grid, .news-grid {
      margin: -15px;
    }
    .portfolio-grid__item, .news-grid__item {
      width: calc(100% - 30px);
      margin: 15px;
    }
  }
  
  @media only screen and (max-width: 475px) {
    .room-item {
      width: 100%;
    }
    .header-inner {
      padding: 40px;
    }
    .project-slide__hover {
      padding: 25px;
    }
    .project-slide__descr {
      font-size: 12px;
      line-height: 16px;
    }
    .news-hover {
      padding: 30px;
    }
    .news-hover__descr {
      display: block;
      height: auto;
    }
    .news-hover__descr:after {
      content: none;
    }
    .news-grid {
      margin: -10px;
    }
    .news-grid__item {
      width: 100%;
      margin: 10px;
    }
    .news-listing__img {
      padding-top: 89%;
    }
    .news-listing__item .news-hover {
      padding: 30px;
    }
  }
  
  @media only screen and (max-width: 350px) {
    .hero-inner .hero-title {
      font-size: 35px;
      line-height: 35px;
    }
    .hero-btn {
      width: 75px;
      height: 75px;
    }
    .hero-title {
      font-size: 35px;
      line-height: 35px;
    }
    .contact-info__phone-link {
      font-size: 24px;
      line-height: 30px;
    }
    .contact .form-group-items {
      margin: 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .contact .form-group-items .form-group {
      margin: 0 0 20px;
      width: 100%;
    }
    .dropdown-menu {
      padding: 0 30px;
    }
    .dropdown-menu__inner {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .dropdown-menu__inner .dropdown-list {
      margin: 0 0 20px;
    }
    .dropdown-menu__inner .dropdown-list:last-child {
      margin: 0;
    }
    .comment .contact-form .form-group-items {
      margin: 0;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
    }
    .comment .contact-form .form-group-items .form-group {
      margin: 0 0 20px;
      width: 100%;
    }
    .room-item__btn {
      width: 55px;
      height: 55px;
    }
    .room-item__title {
      font-size: 20px;
      line-height: 27px;
      padding-bottom: 5px;
    }
  }

.sla-card__actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 14px;
}

.sla-card__actions-row {
  display: flex;
  gap: 10px;
}

.sla-card__actions-row .sla-btn {
  flex: 1;
}

.sla-card__details-link {
  display: block;
  text-align: center;
  margin-top: 4px;
  font-size: 13px;
  color: var(--sla-muted);
  text-decoration: none;
  font-weight: 500;
}

.sla-card__details-link:hover {
  text-decoration: underline;
}
  
  /*# sourceMappingURL=maps/main.css.map */
  
