/* ============================================================
   INSTRUCTIONS FOR IMPLEMENTATION
   ============================================================
   This file replaces main.css entirely.
   Changes from the previous version:
   1. REMOVED: .installation-process / .process-timeline / .process-step
      and all sub-rules (~170 lines of dead CSS — the homepage no longer
      uses this section, it uses .csc-process instead).
   2. REMOVED: .faq-section / .faq-container / .faq-item / .faq-question
      / .faq-answer / .faq-cta and sub-rules (~180 lines of dead CSS —
      the homepage now uses .csc-faq instead).
   3. KEPT: All other existing rules unchanged.
   4. ADDED: Modern Enhancements section at the bottom.
   ============================================================ */

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  /* MODERN: smooth anchor scrolling */
  scroll-behavior: smooth;
}
body { margin: 0; }
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary { display: block; }
audio,canvas,progress,video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden],template { display: none; }
a { background-color: transparent; }
a:active,a:hover { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b,strong { font-weight: bold; }
dfn { font-style: italic; }
h1 { font-size: 2em; margin: 0.67em 0; }
mark { background: #ff0; color: #000; }
small { font-size: 80%; }
sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border: 0; }
svg:not(:root) { overflow: hidden; }
figure { margin: 1em 40px; }
hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; }
pre { overflow: auto; }
code,kbd,pre,samp { font-family: monospace, monospace; font-size: 1em; }
button,input,optgroup,select,textarea { color: inherit; font: inherit; margin: 0; }
button { overflow: visible; }
button,select { text-transform: none; }
button,html input[type=button],input[type=reset],input[type=submit] { -webkit-appearance: button; cursor: pointer; }
button[disabled],html input[disabled] { cursor: default; }
button::-moz-focus-inner,input::-moz-focus-inner { border: 0; padding: 0; }
input { line-height: normal; }
input[type=checkbox],input[type=radio] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; }
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button { height: auto; }
input[type=search] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration { -webkit-appearance: none; }
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend { border: 0; padding: 0; }
textarea { overflow: auto; }
optgroup { font-weight: bold; }
table { border-collapse: collapse; border-spacing: 0; }
td,th { padding: 0; }

.clearfix:after { content: ""; display: block; clear: both; }
.ellipsis { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }

html { -webkit-box-sizing: border-box; box-sizing: border-box; }
*,*:before,*:after { -webkit-box-sizing: inherit; box-sizing: inherit; }
* { max-height: 1000000px; }

body {
  color: #515465;
  background: #fff;
  font: 16px/1.5 "Montserrat","Arial","Helvetica Neue","Helvetica",sans-serif;
  min-width: 360px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
}
@media (max-width: 767px) { body { font-size: 14px; } }

img { max-width: 100%; height: auto; vertical-align: top; }
.gm-style img { max-width: none; }

.btn-red {
  color: #000;
  padding: 11px 23px;
  font-size: 14px;
  background: #fff;
  font-weight: 600;
  border-radius: 35px;
  min-width: 120px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
  text-align: center;
  border: 1px solid #000;
  transition: all 0.3s ease;
}
.btn-red:hover { background: #000; color: #fff; }

.btn {
  color: #fff;
  padding: 11px 23px;
  font-size: 14px;
  background: #d23540;
  font-weight: 600;
  border-radius: 35px;
  min-width: 120px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
  text-align: center;
  border: 1px solid #d23540;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.btn:hover { background: #fff; color: #d23540; }
/* Keyboard focus ring for accessibility */
.btn:focus-visible,
.btn-red:focus-visible {
  outline: 3px solid #d23540;
  outline-offset: 3px;
}

h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6,.h {
  font-family: inherit;
  font-weight: 700;
  margin: 0 0 0.5em;
  color: #515465;
  line-height: 1.2;
}
h1,.h1 { font-size: 48px; }
h2,.h2 { font-size: 30px; text-transform: uppercase; letter-spacing: 0.05rem; }
@media (max-width: 1199px) { h2,.h2 { font-size: 28px; letter-spacing: normal; } }
@media (max-width: 1023px) { h2,.h2 { font-size: 25px; } }
@media (max-width: 767px) { h2,.h2 { font-size: 22px; } }
h3,.h3 { font-size: 24px; }
h4,.h4 { font-size: 21px; }
h5,.h5 { font-size: 17px; }
h6,.h6 { font-size: 16px; }
p { margin: 0 0 25px; }
a { color: #d23540; text-decoration: none; }
a:hover,a:focus { text-decoration: none; }
form,fieldset { margin: 0; padding: 0; border-style: none; }

input[type=text],input[type=tel],input[type=email],input[type=search],
input[type=password],textarea,.text-input {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  -webkit-box-sizing: border-box; box-sizing: border-box;
  border: 1px solid #f8f8f8;
  padding: 17px 25px;
  outline: none;
  color: #000;
  line-height: 1.5;
  background: #f8f8f8;
}
@media (max-width: 767px) {
  input[type=text],input[type=tel],input[type=email],input[type=search],
  input[type=password],textarea,.text-input { padding: 12px 20px; }
}
input[type=text]:focus,input[type=tel]:focus,input[type=email]:focus,
input[type=search]:focus,input[type=password]:focus,textarea:focus,.text-input:focus {
  border-color: #dedede;
}
input[type=text]::-webkit-input-placeholder,input[type=tel]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,input[type=search]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,textarea::-webkit-input-placeholder,
.text-input::-webkit-input-placeholder { color: #515465; }
input[type=text]::-moz-placeholder,input[type=tel]::-moz-placeholder,
input[type=email]::-moz-placeholder,input[type=search]::-moz-placeholder,
input[type=password]::-moz-placeholder,textarea::-moz-placeholder,
.text-input::-moz-placeholder { opacity: 1; color: #515465; }
input[type=text]:-moz-placeholder,input[type=tel]:-moz-placeholder,
input[type=email]:-moz-placeholder,input[type=search]:-moz-placeholder,
input[type=password]:-moz-placeholder,textarea:-moz-placeholder,
.text-input:-moz-placeholder { color: #515465; }
input[type=text]:-ms-input-placeholder,input[type=tel]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,input[type=search]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,textarea:-ms-input-placeholder,
.text-input:-ms-input-placeholder { color: #515465; }
input[type=text].placeholder,input[type=tel].placeholder,input[type=email].placeholder,
input[type=search].placeholder,input[type=password].placeholder,textarea.placeholder,
.text-input.placeholder { color: #515465; }
select { -webkit-border-radius: 0; }
textarea { resize: vertical; vertical-align: top; }
button,input[type=button],input[type=reset],input[type=file],input[type=submit] { cursor: pointer; }

/* ============================================================
   HEADER
   ============================================================ */
.header {
  padding: 8px 0;
  width: 100%;
  z-index: 5;
  position: fixed;
  box-shadow: 0 0 5px 1px #212529;
  background: #fff;
}
.header .container-large {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  position: relative;
}
.header .container-large .navbar-btn {
  position: absolute; top: 22px; right: 20px;
  display: none; z-index: 99; font-size: 25px; cursor: pointer;
}
@media (max-width: 1199px) { .header .container-large .navbar-btn { display: block; } }
@media (max-width: 767px) { .header .container-large .navbar-btn { top: 15px; font-size: 20px; } }
.header .navbar-btn .bar i,
.header .navbar-btn .close i { display: none !important; }
.header .navbar-btn .close {
  display: none;
  width: 24px;
  height: 24px;
  position: relative;
}
.header .active .navbar-btn .close { display: block; }
.header .navbar-btn .close::before,
.header .navbar-btn .close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 22px;
  height: 2px;
  background-color: #515465;
  border-radius: 1px;
}
.header .navbar-btn .close::before { transform: translate(-50%, -50%) rotate(45deg); }
.header .navbar-btn .close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.header .navbar-btn .bar {
  display: block;
  width: 24px;
  height: 18px;
  position: relative;
}
.header .navbar-btn .bar::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  background-color: #515465;
  border-radius: 1px;
  box-shadow: 0 8px 0 #515465, 0 16px 0 #515465;
}
.header .active .navbar-btn .bar { display: none; }
.header .logo { max-width: 150px; }
@media (max-width: 767px) { .header .logo { max-width: 110px; } }
.header .logo a { display: block; }
.header .logo img { width: 100%; }
.header .active .navbar {
  -webkit-transform: translateX(0); transform: translateX(0);
  opacity: 1; visibility: visible; pointer-events: auto;
}
@media (max-width: 1199px) {
  .header .navbar {
    width: 100%; background-color: #f2f2f2;
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
    -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
    -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    position: absolute; top: 100%; overflow: auto; left: 0;
    -webkit-transform: translateX(100%); transform: translateX(100%);
    -webkit-transition: all 0.5s linear; transition: all 0.5s linear;
    opacity: 0; visibility: hidden; pointer-events: none; z-index: 5;
  }
}
@media (max-width: 1598px) { .header .btn { padding: 7px 10px; } }
.header .menu {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  list-style: none; font-size: 14px; margin: 0; padding: 0;
}
@media (max-width: 1199px) {
  .header .menu {
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
    -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
    -webkit-box-align: center; -ms-flex-align: center; align-items: center;
    width: 100%;
  }
}
.header .menu li { padding: 0 10px; position: relative; }
@media (max-width: 1598px) { .header .menu li { padding: 0 7px; } }
@media (max-width: 1199px) { .header .menu li { padding: 0 10px; width: 100%; text-align: center; } }
.header .menu li::before {
  content: ""; position: absolute; top: 5px; right: 0;
  height: 14px; width: 2px; background-color: #515465;
}
@media (max-width: 1598px) { .header .menu li::before { width: 1px; top: 3px; } }
@media (max-width: 1199px) { .header .menu li::before { height: 12px; } }
.header .menu li:last-child::before { display: none; }
@media (max-width: 1199px) {
  .header .menu li { margin-bottom: 15px; }
  .header .menu li::before { display: none; }
}
.header .menu li:hover .sub-menu { opacity: 1; visibility: visible; }
@media (max-width: 1199px) { .header .menu li:hover .sub-menu { display: block; } }
.header .menu li:hover > a { color: #d23540; }
.header .menu li:hover > a:before { width: 100%; }
.header .menu a {
  text-decoration: none; color: #515465; font-size: 16px;
  font-weight: 500; position: relative;
}
@media (max-width: 1598px) { .header .menu a { font-size: 13px; } }
@media (max-width: 1199px) { .header .menu a { font-size: 16px; } }
.header .menu a:before {
  content: ""; position: absolute; left: 0; bottom: 0; display: block;
  width: 0%; height: 2px;
  -webkit-transition: all 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 300ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
  background-color: #d23540;
}
.header .menu a:hover:before { width: 100%; }
.header .menu a:hover { color: #d23540; }
.header .sub-menu {
  padding: 0; margin: 0; list-style: none;
  position: absolute; left: 0; background: #f8f8f8;
  border-radius: 10px; top: 100%; padding: 10px;
  min-width: 250px; opacity: 0; visibility: hidden;
  -webkit-transition: all 0.4s ease; transition: all 0.4s ease;
  z-index: 9999;
  box-shadow: 0 8px 24px rgba(0,0,0,0.10);
}
@media (max-width: 1199px) {
  .header .sub-menu {
    opacity: 1; visibility: visible; display: none;
    position: static; margin: 15px 0 0; z-index: 9999;
  }
}
.header .sub-menu li { padding: 0 0 8px; margin: 0; }
.header .sub-menu li:before { display: none; }
.header .menu-bar {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
}
@media (max-width: 1199px) {
  .header .menu-bar {
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
    padding: 25px 0;
  }
}
.header .contact-area-block {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
}
@media (max-width: 1199px) { .header .contact-area-block { margin-bottom: 10px; } }
.header .contact-number {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  padding: 0 0 0 84px;
}
@media (max-width: 1598px) { .header .contact-number { padding-left: 20px; } }
@media (max-width: 1199px) {
  .header .contact-number {
    padding: 0;
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
    gap: 15px;
  }
}
.header .tele-phone {
  background: #d23540; padding: 4px 6px;
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
}
.header .tele-phone-number { padding: 0 28px 0 8px; }
@media (max-width: 1598px) { .header .tele-phone-number { padding: 0 20px 0 5px; } }
.header .tele-phone-number a { font-size: 16px; color: #515465; font-weight: 500; }
@media (max-width: 1598px) { .header .tele-phone-number a { font-size: 14px; } }
@media (max-width: 1199px) { .header .tele-phone-number a { font-size: 16px; } }

/* ============================================================
   WEB BANNER (inner pages)
   ============================================================ */
.web-banner {
  background-size: cover; background-repeat: no-repeat;
  background-position: 50%, 50%; width: 100%;
  max-height: 330px; padding: 108px 0 60px;
}
@media (max-width: 1199px) { .web-banner { padding: 40px 0; } }
@media (max-width: 767px) { .web-banner { padding: 30px 0; } }
.web-banner .container {
  width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  position: relative;
}
.web-banner .banner-heading { color: #fff; max-width: 540px; }
.web-banner .banner-heading h1 { color: #fff; margin-bottom: 40px; position: relative; font-size: 30px; }
@media (max-width: 767px) { .web-banner .banner-heading h1 { margin-bottom: 20px; font-size: 22px; } }
.web-banner .banner-heading h1::before {
  content: ""; position: absolute; bottom: -25px; left: 0;
  width: 55px; height: 5px; background: #d23540;
}
@media (max-width: 767px) { .web-banner .banner-heading h1::before { bottom: -10px; width: 40px; height: 3px; } }
.web-banner .banner-heading p { font-size: 18px; }
@media (max-width: 767px) { .web-banner .banner-heading p { font-size: 14px; } }
.web-banner .flake-banner-heading p { font-size: 18px; }
@media (max-width: 767px) { .web-banner .flake-banner-heading p { font-size: 13px; } }
.web-banner .page-links {
  position: absolute; bottom: -28px; right: -10px;
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  list-style: none; font-size: 16px; margin: 0; padding: 0;
}
@media (max-width: 767px) { .web-banner .page-links { right: 10px; font-size: 14px; bottom: -20px; } }
.web-banner .page-links li {
  padding: 0 20px; position: relative;
  -webkit-transition: all 0.5s ease; transition: all 0.5s ease;
}
@media (max-width: 767px) { .web-banner .page-links li { padding: 0 8px; } }
.web-banner .page-links li::before {
  content: ""; position: absolute; top: 7px; right: 0;
  height: 12px; width: 1px; background-color: #fff;
}
@media (max-width: 767px) { .web-banner .page-links li::before { top: 5px; } }
.web-banner .page-links li:last-child::before { display: none; }
.web-banner .page-links li :hover { color: #d23540; }
.web-banner .page-links a { color: #fff; }

.salon-floor-banner .web-banner { padding: 135px 0 70px; }
@media (max-width: 1199px) { .salon-floor-banner .web-banner { padding: 40px 0; } }
@media (max-width: 767px) { .salon-floor-banner .web-banner { padding: 30px 0; } }
@media (max-width: 767px) {
  .salon-floor-banner .floor-page-links { font-size: 12px; }
  .salon-floor-banner .floor-page-links li { padding: 0 10px; }
  .salon-floor-banner .floor-page-links li::before { content: ""; top: 5px; height: 8px; }
}
.flake-banner .banner-heading { max-width: 560px; }
.flake-banner .banner-heading p { line-height: 20px; }

/* ============================================================
   ABOUT CATEGORIES
   ============================================================ */
.about-categories { padding: 80px 0 100px; }
@media (max-width: 767px) { .about-categories { padding: 40px 0; } }
.about-categories .category-text { text-align: center; margin-bottom: 40px; }
.about-categories .category-heading { position: relative; }
.about-categories .category-heading h2 { font-size: 30px; font-weight: 700; margin-bottom: 55px; }
@media (max-width: 767px) { .about-categories .category-heading h2 { font-size: 20px; margin-bottom: 30px; } }
.about-categories .category-heading::before {
  content: ""; position: absolute; bottom: -36px; left: 50%;
  -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
  width: 140px; height: 7px; background: #d23540;
}
@media (max-width: 767px) { .about-categories .category-heading::before { width: 100px; bottom: -20px; } }
.about-categories .categories-area-block { margin: 0 -10px 82px; }
@media (max-width: 767px) { .about-categories .categories-area-block { margin: 0 -10px 40px; } }
.about-categories .categories-area { width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.about-categories .category-section { padding: 0 15px; width: 50%; margin-bottom: 30px; }
@media (max-width: 1023px) { .about-categories .category-section { width: 100%; } }
.about-categories .category-section.about-contact .category-block { background: #d23540; color: #fff; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
@media (min-width: 1024px) { .about-categories .category-section.about-contact .category-block { padding: 25px 38px; } }
.about-categories .category-section.about-contact .category-block .category-block-heading { padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,0.35); }
.about-categories .category-block {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -ms-flex-preferred-size: 0; flex-basis: 0;
  -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1;
  height: 100%; background: #fff; padding: 40px 38px 10px;
  -webkit-box-shadow: 0px 4px 54px 0px rgba(169,169,169,0.18); box-shadow: 0px 4px 54px 0px rgba(169,169,169,0.18);
  color: #515465;
  -webkit-transition: all 0.4s ease; transition: all 0.4s ease;
}
@media (max-width: 1023px) { .about-categories .category-block { padding: 15px 20px 15px; } }
@media (max-width: 767px) { .about-categories .category-block { -ms-flex-wrap: wrap; flex-wrap: wrap; text-align: center; } }
.about-categories .category-icon { min-width: 96px; padding: 0 32px 0 0; }
@media (max-width: 767px) { .about-categories .category-icon { padding: 0; margin: 0 auto 15px; } }
.about-categories .category-block-text .category-block-heading { margin-bottom: 6px; font-weight: 700; font-size: 19px; display: block; }
@media (max-width: 1023px) { .about-categories .category-block-text .category-block-heading { font-size: 16px; } }
.about-categories .category-block-text p { font-size: 16px; margin: 0; }
@media (max-width: 1023px) { .about-categories .category-block-text p { font-size: 14px; } }

/* ============================================================
   ABOUT US SECTIONS
   ============================================================ */
.about-us-section { padding: 50px 0 0; }
@media (max-width: 1023px) { .about-us-section { padding: 0; } }
.about-us-section .section { padding: 40px 0 0 0; }
.sec-about-us-section .section { padding: 40px 0 100px; }
@media (max-width: 1023px) { .sec-about-us-section .section { padding: 40px 0; } }
.sec-about-us-section .subtitle { display: block; font-weight: 400; font-size: 17px; line-height: 16px; }
.about-two-block { margin-bottom: 42px; }
.about-two-block h3 { position: relative; margin: 0; font-size: 30px; font-weight: 700; text-transform: uppercase; }
@media (max-width: 767px) { .about-two-block h3 { font-size: 20px; } }
.about-two-block h3::before { content: ""; position: absolute; bottom: -40px; left: 0; width: 120px; height: 5px; background: #d23540; }
.about-two-block .heading-title { font-size: 16px; }
@media (max-width: 767px) { .about-two-block .heading-title { font-size: 14px; } }
.important-message { font-size: 24px; font-weight: 400; display: block; padding: 0 35px 0 0; color: #515465; }
@media (max-width: 767px) { .important-message { padding: 0; font-size: 17px; line-height: 21px; } }
.images-blocks { margin: 0 -20px; }

/* ============================================================
   TWO BLOCK IMAGE
   ============================================================ */
.two-block-image { width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.two-block-image .first-block-image { width: 50%; padding: 0 20px; }
@media (max-width: 1023px) { .two-block-image .first-block-image { width: 100%; margin-bottom: 20px; } }
.two-block-image .block-image { background-size: cover; background-repeat: no-repeat; background-position: 50%, 50%; min-height: 500px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 165px 60px 30px; color: #fff; text-align: center; }
@media (max-width: 767px) { .two-block-image .block-image { padding: 50px 25px 30px; min-height: 350px; } }
.two-block-image .block-image-second { padding: 165px 60px 30px; }
@media (max-width: 767px) { .two-block-image .block-image-second { padding: 80px 25px 30px; } }
.two-block-image .block-image-heading { margin-bottom: 52px; }
@media (max-width: 767px) { .two-block-image .block-image-heading { margin-bottom: 20px; } }
.two-block-image h2 { position: relative; color: #fff; margin: 0; font-size: 30px; font-weight: 700; text-transform: uppercase; }
@media (max-width: 767px) { .two-block-image h2 { font-size: 22px; } }
.two-block-image h2::before { content: ""; position: absolute; bottom: -30px; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 135px; height: 5px; background: #fff; }
@media (max-width: 767px) { .two-block-image h2::before { bottom: -15px; width: 100px; height: 5px; } .two-block-image p { font-size: 14px; margin-bottom: 0; } }

/* ============================================================
   VIDEO BLOCK
   ============================================================ */
.video-block { background-size: cover; background-repeat: no-repeat; background-position: 50%, 50%; width: 100%; min-height: 655px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 20px 0; }
@media (max-width: 1199px) { .video-block { min-height: 450px; } }
@media (max-width: 1023px) { .video-block { min-height: 350px; } }
@media (max-width: 767px) { .video-block { min-height: 250px; } }
.video-block .video-start { cursor: pointer; }
@media (max-width: 1023px) { .video-block .video-start { width: 80px; } }
@media (max-width: 767px) { .video-block .video-start { width: 60px; } }

/* ============================================================
   OFFERS BLOCK
   ============================================================ */
.offers-block { background: #f8f8f8; padding: 115px 0 65px; overflow: hidden; }
@media (max-width: 1498px) { .offers-block { padding: 115px 0 25px; } }
@media (max-width: 767px) { .offers-block { padding: 40px 0; } }
.offers-block .container { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.offers-block .offers-details { width: 50%; z-index: 2; position: relative; }
@media (max-width: 1023px) { .offers-block .offers-details { width: 100%; } }
.offers-block .offers-heading { display: inline-block; }
.offers-block .offers-heading p { margin-bottom: 33px; }
.offers-block h2 { position: relative; color: #515465; margin: 0; font-size: 30px; font-weight: 700; text-transform: uppercase; margin-bottom: 55px; }
@media (max-width: 767px) { .offers-block h2 { font-size: 22px; margin-bottom: 30px; } }
.offers-block h2::before { content: ""; position: absolute; bottom: -27px; left: 0; width: 138px; height: 5px; background: #d23540; }
@media (max-width: 767px) { .offers-block h2::before { bottom: -15px; width: 100px; } }
.offers-block .offers-image { width: 50%; margin: 0 0 -80px 0; }
@media (max-width: 1023px) { .offers-block .offers-image { width: 100%; margin: 0 0 20px 0; } }
.offers-list { list-style: none; margin: 0 0 30px 0; padding: 0; }
.offers-list li { font-size: 18px; font-weight: 700; color: #515465; margin-bottom: 10px; }
.offers-list li img { margin: 0 10px 0 0; }

/* ============================================================
   CONSULTATION BLOCK
   ============================================================ */
.consultation-block { padding: 88px 0px; }
@media (max-width: 1023px) { .consultation-block { padding: 0px; } }
.consultation-block .consultation-area { background: #d23540; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 12px 90px; margin-bottom: 60px; }
@media (max-width: 1023px) { .consultation-block .consultation-area { margin-bottom: 40px; padding: 12px 60px; } }
@media (max-width: 767px) { .consultation-block .consultation-area { display: block; padding: 15px 30px; text-align: center; } }
.consultation-block .consultation-img { max-width: 276px; width: 100%; padding: 0 60px 0 0; }
@media (max-width: 1199px) { .consultation-block .consultation-img { max-width: 175px; } }
@media (max-width: 1023px) { .consultation-block .consultation-img { padding: 0 20px 0 0; } }
@media (max-width: 767px) { .consultation-block .consultation-img { max-width: 120px; padding: 0; display: inline-block; margin-bottom: 20px; } }
.consultation-block .consultation-img img { width: 100%; }
.consultation-block .consultation-heading { margin-bottom: 15px; }
.consultation-block .consultation-heading h2 { color: #fff; margin: 0; }
.consultation-block .consultation-text { color: #fff; padding: 0; }
.consultation-block .consultation-text h2 { color: #fff; }
@media (max-width: 767px) { .consultation-block .consultation-text h2 { font-size: 18px; } }
.consultation-block .consultation-text p { font-size: 19px; line-height: 30px; margin: 0; }
@media (max-width: 1023px) { .consultation-block .consultation-text p { font-size: 16px; line-height: 19px; } }
@media (max-width: 767px) { .consultation-block .consultation-text p { font-size: 14px; line-height: 19px; } }

/* ============================================================
   FLOOR SECTION
   ============================================================ */
.floor-section { padding: 62px 58px; background: #fff; -webkit-box-shadow: 0px 4px 54px 0px rgba(169,169,169,0.18); box-shadow: 0px 4px 54px 0px rgba(169,169,169,0.18); display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
@media (max-width: 1199px) { .floor-section { display: block; text-align: center; } }
@media (max-width: 767px) { .floor-section { padding: 30px; } }
.floor-section .floor-heading { max-width: 380px; }
@media (max-width: 1199px) { .floor-section .floor-heading { margin: 0 auto 30px; width: 100%; } }
.floor-section .floor-heading h2 { position: relative; color: #515465; margin: 0; font-size: 30px; font-weight: 700; text-transform: uppercase; }
@media (max-width: 1199px) { .floor-section .floor-heading h2 { font-size: 22px; } }
@media (max-width: 1023px) { .floor-section .floor-heading h2 { margin-bottom: 40px; } }
@media (max-width: 767px) { .floor-section .floor-heading h2 { margin-bottom: 30px; font-size: 16px; } }
.floor-section .floor-heading h2::before { content: ""; position: absolute; bottom: -17px; left: 0; width: 138px; height: 5px; background: #d23540; }
@media (max-width: 1199px) { .floor-section .floor-heading h2::before { left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } }
@media (max-width: 767px) { .floor-section .floor-heading h2::before { width: 100px; } }
.floor-section .floors { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: right; -ms-flex-pack: right; justify-content: right; }
.floor-section .floors a { background-color: #d23540; padding: 16px 30px; color: #fff; font-size: 19px; font-weight: 700; border-radius: 50px; display: inline-block; border: 1px solid #d23540; margin: 0 6px; transition: all 0.3s ease; }
@media (max-width: 1199px) { .floor-section .floors a { padding: 10px 22px; font-size: 14px; } }
@media (max-width: 767px) { .floor-section .floors a { padding: 12px 20px; font-size: 15px; font-weight: 500; margin-bottom: 10px; } }
.floor-section .floors a:hover { background: transparent; color: #d23540; }

/* ============================================================
   RESIDENTIAL BLOCK
   ============================================================ */
@media (min-width: 375px) { .residential-block { padding: 40px 0; } }
@media (min-width: 1024px) { .residential-block { padding: 40px 0 123px; } }
.residential-block .article-post { padding: 10px 0; }
@media (min-width: 375px) { .residential-block .article-post .textbox { width: 100%; } }
@media (min-width: 1024px) { .residential-block .article-post .textbox { width: 49%; } }
.residential-block .article-post .image-holder { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.residential-block .article-post .video-start { position: absolute; top: 50%; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; }
@media (min-width: 1024px) { .residential-block .article-post:nth-child(even) { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } }
.bg-free { padding: 110px 0 60px; }
@media (max-width: 1023px) { .bg-free { padding: 200px 0 40px; } }
.free-consulation { padding: 140px 0 60px; }
@media (max-width: 1023px) { .free-consulation { padding: 200px 0 40px; } }
.free-consulation .consultation-text { padding-top: 30px; }
@media (max-width: 1199px) { .free-consulation .consultation-text { padding-top: 0; } }
.free-consulation h2 { color: #fff; font-size: 31px; line-height: 1.1; margin: 0 0 10px; }
@media (max-width: 1199px) { .free-consulation h2 { font-size: 18px; } }
@media (max-width: 767px) { .free-consulation h2 { font-size: 16px; } }
.free-consulation .consultation-floors { padding: 18px 59px; }
.free-consulation .consultation-floors .floor-heading { width: 40%; }
@media (max-width: 1024px) { .free-consulation .consultation-floors .floor-heading { width: 100%; } }
.free-consulation .consultation-floors .floors { width: 50%; }
.floors-list { list-style: none; margin: 0; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 54%; }
@media (max-width: 1199px) { .floors-list { width: 100%; } }
.floors-list li { padding: 5px 5px; }
.floors-list a { display: inline-block; background-color: #d23540; color: #fff; font-size: 18px; font-weight: 600; border-radius: 20px; padding: 10px 25px; -webkit-transition: all 0.4s ease; transition: all 0.4s ease; }
@media (max-width: 1200px) { .floors-list a { font-size: 20px; } }
@media (max-width: 1024px) { .floors-list a { font-size: 14px; } }
.floors-list a:hover { background-color: #c22b36; }
.residential-section .section-header { margin-bottom: 69px; }
@media (max-width: 767px) { .residential-section .section-header { margin-bottom: 20px; } }

/* ============================================================
   COATING BLOCK (consolidated — was duplicated)
   ============================================================ */
.coating-block {
  color: #fff;
  background-size: cover; background-repeat: no-repeat; background-position: 50%, 50%;
  width: 100%; padding: 20px 0;
}
@media (min-width: 375px) { .coating-block { padding: 30px 0 0; } }
@media (min-width: 1024px) { .coating-block { padding: 107px 0 0; } }
.coating-block .section-header { margin-bottom: 69px; }
.coating-block h2 { color: #fff; margin-bottom: 40px; position: relative; max-width: 610px; }
.coating-block h2::before { content: ""; position: absolute; bottom: -36px; left: 0; width: 135px; height: 9px; background: #fff; }
@media (max-width: 767px) { .coating-block h2::before { height: 5px; bottom: -20px; } }
@media (min-width: 1024px) { .coating-block .two-block { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-right: calc((100vw - 990px) / -2); } }
@media (min-width: 1200px) { .coating-block .two-block { margin-right: calc((100vw - 1170px) / -2); } }
.coating-block .left-col { width: 100%; padding: 0 0 30px 0; }
@media (min-width: 1024px) { .coating-block .left-col { width: 33.3%; padding: 219px 40px 59px 0; } }
.coating-block .left-col p { font-weight: 700; }
.coating-block .right-col { width: 100%; background: #d23540; position: relative; padding: 11px 17px 50px 15px; margin-bottom: -150px; }
@media (min-width: 1024px) { .coating-block .right-col { width: 70%; padding: 30px 60px 20px 30px; } }
.coating-block .right-col .text-area { width: 100%; }
@media (min-width: 1024px) { .coating-block .right-col .text-area { width: 70%; } }
.coating-block .right-col .image-area { position: absolute; bottom: 0; right: 20px; width: 30%; }
.coating-block .caption-wrap { margin: 0 0 -280px 0; }
@media (max-width: 1023px) { .coating-block .caption-wrap { margin: 0 0 -130px 0; } }

/* ============================================================
   OPTIONAL BLOCK (consolidated — was duplicated)
   ============================================================ */
.optional-block { padding: 188px 0 0; }
@media (min-width: 768px) { .optional-block { padding: 188px 0 125px; } }
@media (min-width: 1024px) { .optional-block .floors-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 -10px; } }
.optional-block .col { text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; height: 100%; -ms-flex-preferred-size: 0; flex-basis: 0; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; margin: 0 0 30px; }
@media (min-width: 1024px) { .optional-block .col { width: 50%; padding: 0 10px; margin: 0; } }
.optional-block .bg-floor { background: #f8f8f8; padding: 22px 39px 0; }
@media (min-width: 1024px) { .optional-block .bg-floor { min-height: 386px; padding-top: 40px; } }
@media (max-width: 767px) { .optional-block .bg-floor { padding-left: 15px; padding-right: 15px; min-height: inherit; } }
.optional-block .text-floor { background: #f8f8f8; }
.optional-block h2 { position: relative; text-align: center; padding: 0 0 10px; margin: 0 0 50px; }
.optional-block h2::before { content: ""; position: absolute; bottom: -25px; left: 50%; width: 132px; height: 5px; background: #d23540; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.optional-block p { margin: 0 0 64px; }
@media (max-width: 767px) { .optional-block p { margin: 0 0 30px; } }
.optional-block p:first-child { margin: 0 0 100px; }
.optional-block img { width: 100%; }

/* ============================================================
   COATING LISTS
   ============================================================ */
.coating-lists { list-style: none; margin: 0; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 12px; line-height: 1; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.coating-lists .advantages { display: block; }
@media (min-width: 768px) { .coating-lists { font-size: 16px; } }
.coating-lists li { padding: 0 0 20px 25px; width: 50%; position: relative; font-weight: 500; }
.coating-lists .icon-tick { position: absolute; top: 3px; left: 0; font-size: 12px; }

/* ============================================================
   FORM BLOCK
   ============================================================ */
@media (min-width: 375px) { .section.form-block { padding: 25px 0 0; } }
@media (min-width: 768px) { .section.form-block { padding: 60px 0 0; } }
@media (min-width: 1024px) { .section.form-block { padding: 92px 0 25px; } }

/* ============================================================
   CONTACT MAIN
   ============================================================ */
.contact-main { padding: 130px 15px 105px 15px; margin: 0 auto; }
@media (max-width: 1023px) { .contact-main { padding-left: 0; padding-right: 0; } }
@media (max-width: 767px) { .contact-main { padding: 44px 0; } }
.contact-main .contact-holder { padding: 40px 30px 60px 30px; background-color: #F8F8F8; }
@media (max-width: 1023px) { .contact-main .contact-holder { padding: 20px 0; } }

/* ============================================================
   TWO COLS (contact form context)
   ============================================================ */
.two-cols { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
@media (max-width: 1023px) { .two-cols { display: block; } }
.two-cols .input-detail { width: 60%; padding: 0 20px; }
@media (max-width: 767px) { .two-cols .input-detail { padding: 0 15px; } }
@media (max-width: 1023px) { .two-cols .input-detail { width: 100%; margin: 0 0 30px 0; } }
.two-cols .input-detail h2 { color: #515465; position: relative; margin: 0 0 64px 0; text-align: center; font-size: 30px; }
@media (max-width: 479px) { .two-cols .input-detail h2 { font-size: 18px; } }
.two-cols .input-detail h2::after { background-color: #D23540; width: 137px; height: 10px; position: absolute; content: ""; bottom: -27px; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.two-cols .input-detail .text-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; display: -webkit-box; display: -ms-flexbox; display: flex; }
.two-cols .field { margin: 0 0 25px 0; }
.two-cols .field input { width: 100%; border: none; outline: none; height: 53px; padding: 0 30px; }
@media (max-width: 479px) { .two-cols .field input { padding: 0 10px; } }
.two-cols .field input::placeholder { font-size: 16px; color: #515465; }
.two-cols .submit-btn { color: #fff; background-color: #D23540; padding: 10px 15px; text-align: center; display: block; margin: 38px auto 0 auto; border-radius: 25px; width: 123px; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; border: 2px solid #D23540; }
.two-cols .submit-btn:hover { color: #D23540; background-color: #fff; }

/* ============================================================
   CONTACT AREA
   ============================================================ */
.contact-area { padding: 5px 24px; width: 40%; }
@media (max-width: 1023px) { .contact-area { width: 100%; } }
@media (max-width: 767px) { .contact-area { padding: 0 15px; } }
.contact-area .contact-detail { background-color: #D23540; text-align: center; padding: 60px 70px 32px 70px; }
@media (max-width: 1023px) { .contact-area .contact-detail { display: block; } }
@media (max-width: 767px) { .contact-area .contact-detail { padding: 32px 26px; } }
.contact-area .contact-detail h2 { color: #fff; font-size: 18px; margin: 0 0 15px; }
.contact-area .contact-detail .inner-contact { overflow: hidden; }
.timer p { color: #fff; font-size: 16px; margin: 0 0 56px; }
@media (max-width: 479px) { .timer p { margin: 0 0 18px; } }
.timer span { display: block; }
.detail-section { margin: 0 0 30px; }
.detail-section p { color: #fff; font-size: 16px; margin: 0 0 4px; }
.detail-section .address p { margin: 0 0 50px 0; }
@media (max-width: 479px) { .detail-section .address p { margin: 0; } }
.follow-section h2 { margin: 0 0 15px; }
.follow-section .social-networks { display: -webkit-box; display: -ms-flexbox; display: flex; padding: 0; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0; }
.follow-section .social-networks li { list-style: none; }
.follow-section .social-networks a { color: #D23540; width: 35px; height: 35px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background-color: #fff; text-align: center; margin: 0 10px; border-radius: 30px; border: 1px solid #fff; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; font-size: 20px; }
.follow-section .social-networks a:hover { background-color: #D23540; color: #fff; }
.widget-square { position: relative; margin: 0 auto 20px; width: 40px; height: 10px; padding: 0 15px; }
.widget-square::after,.widget-square::before { position: absolute; top: 50%; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); left: 100%; bottom: 0; width: 9999px; height: 1px; background-color: rgba(255,255,255,0.25); content: ""; }
.widget-square::before { left: auto; right: 100%; }
.widget-square .square { width: 10px; height: 10px; background-color: #fff; -webkit-transform: rotate(50deg); transform: rotate(50deg); display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto; }
.image-holder .map-banner img { width: 100%; }

/* ============================================================
   FOOTER
   ============================================================ */
.footer { background: #515465; padding: 63px 0 50px 0; }
.footer .four-cols { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
@media (max-width: 1199px) { .footer .four-cols { -ms-flex-wrap: wrap; flex-wrap: wrap; } }
.footer .four-cols .logo-section { width: 35%; }
@media (max-width: 1199px) { .footer .four-cols .logo-section { width: 100%; margin: 0 0 50px; } }
@media (max-width: 767px) { .footer .four-cols .logo-section { width: 100%; margin: 0 0 10px; } }
.footer .four-cols .logo-section .footer-logo { display: block; }
.footer .four-cols .logo-section p { margin: 0 0 30px 0; padding: 0 40px 0 0; line-height: 1.7; }
@media (max-width: 1199px) { .footer .four-cols .logo-section p { padding: 0; } }
.footer .four-cols .contact-section { width: 25%; padding: 68px 70px 0 0; }
@media (max-width: 1199px) { .footer .four-cols .contact-section { width: 33.333%; padding: 0; } }
@media (max-width: 767px) { .footer .four-cols .contact-section { width: 48%; } }
@media (max-width: 479px) { .footer .four-cols .contact-section { width: 100%; padding: 30px 0 0 0; } }
.footer .four-cols .location { position: relative; border-bottom: 1px solid rgba(255,255,255,0.25); padding: 0 0 12px 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
.footer .four-cols .location .text { color: #fff; margin: -3px 0 0 0; font-size: 14px; list-style: none; padding: 0 0 0 10px; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; font-style: normal; display: block; }
.footer .four-cols .location .text:hover { color: #D23540; }
.footer .four-cols .location i { color: #D23540; font-size: 20px; }
.footer .four-cols .location .map { display: -webkit-box; display: -ms-flexbox; display: flex; }
.footer .four-cols .number { display: -webkit-box; display: -ms-flexbox; display: flex; border-bottom: 1px solid rgba(255,255,255,0.25); padding: 12px 0 12px 0; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
@media (max-width: 767px) { .footer .four-cols .number { padding: 10px 0; } }
.footer .four-cols .number .text { color: #fff; margin: 0; font-size: 14px; list-style: none; padding: 0 0 0 10px; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.footer .four-cols .number .text:hover { color: #D23540; }
.footer .four-cols .number i { color: #D23540; font-size: 20px; }
.footer .four-cols .number .call { display: -webkit-box; display: -ms-flexbox; display: flex; }
.footer .four-cols .gmail { display: -webkit-box; display: -ms-flexbox; display: flex; position: relative; padding: 12px 0 12px 0; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
@media (max-width: 767px) { .footer .four-cols .gmail { padding: 10px 0; } }
.footer .four-cols .gmail .text { color: #fff; margin: 0; font-size: 14px; list-style: none; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.footer .four-cols .gmail .text:hover { color: #D23540; }
.footer .four-cols .gmail i { color: #D23540; font-size: 22px; margin-right: 10px; }
.footer .four-cols .gmail .inbox-mail { display: -webkit-box; display: -ms-flexbox; display: flex; }
.footer .four-cols .gmail .inbox-mail:hover { color: #D23540; }
.footer .four-cols .input-section { width: 22%; padding: 70px 0 0 0; }
@media (max-width: 1199px) { .footer .four-cols .input-section { width: 33.333%; padding: 0; } }
@media (max-width: 767px) { .footer .four-cols .input-section { width: 100%; padding: 30px 0 0 0; } }
.footer .four-cols .input-section input { background-color: transparent; border: 1px solid rgba(255,255,255,0.35); outline: none; width: 100%; color: #fff; padding: 10px 15px; margin: 0 0 15px; height: 50px; font-size: 14px; }
.footer .four-cols .input-section input::placeholder { color: #fff; }
.footer .four-cols .border-less .btn { border: none; }
.footer .four-cols .footer-logo { width: 100%; margin: 0 0 26px 0; display: block; }
.footer .four-cols .footer-logo a { display: block; }
.footer .four-cols .footer-logo img { max-width: 50%; height: auto; }
.footer .four-cols .social-icons { display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0; padding: 0; }
.footer .four-cols .social-icons li { list-style: none; }
.footer .four-cols .social-icons a { color: #515465; background-color: #fff; margin: 0 5px; font-size: 15px; height: 25px; width: 26px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; border: 1px solid #fff; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; text-align: center; }
.footer .four-cols .social-icons a:hover { background-color: #515465; color: #fff; }
.footer .four-cols .social-icons a svg,
.follow-section .social-networks a svg { width: 1em; height: 1em; flex-shrink: 0; display: block; }
.footer .four-cols h2 { font-size: 18px; color: #FFFFFF; margin: 0 0 26px; }
@media (max-width: 767px) { .footer .four-cols h2 { margin: 0 0 10px; } }
.footer .four-cols p { color: #fff; margin: 0; font-size: 14px; }
.footer .four-cols li { color: #fff; }
.footer .four-cols .service-section { width: 18%; padding: 70px 0 0 0; }
@media (max-width: 1199px) { .footer .four-cols .service-section { width: 33.333%; padding: 0 0 0 8%; } }
@media (max-width: 1023px) { .footer .four-cols .service-section { padding-left: 5%; } }
@media (max-width: 767px) { .footer .four-cols .service-section { width: 45%; } }
@media (max-width: 479px) { .footer .four-cols .service-section { width: 100%; padding: 30px 0 0 0; } }
.footer .four-cols .service-section ul { list-style: none; padding: 0; margin: 0; }
.footer .four-cols .service-section li { list-style: none; padding: 0 0 12px; }
.footer .four-cols .service-section a { color: #fff; font-size: 15px; display: block; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; display: inline-block; }
.footer .four-cols .service-section a:hover { color: #D23540; }
.bottom-text { background: #414351; padding: 20px 0; }
.bottom-text p { margin: 0; text-align: center; color: #fff; font-size: 14px; letter-spacing: 1.1px; }

/* ============================================================
   VARIOUS PAGE-SPECIFIC SECTIONS (inner pages)
   ============================================================ */
.flake-section { padding: 52px 0 0; }
@media (max-width: 1023px) { .flake-section { padding: 40px 0 0; } }
@media (max-width: 767px) { .flake-section { padding: 10px 0 0; } }
.different-concreates { padding: 35px 0; }
@media (max-width: 767px) { .different-concreates { padding: 10px 0; } }
.different-concreates .concreates-image-detail { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -10px; }
.different-concreates .concrete-img-name { width: 25%; padding: 0 10px; margin-bottom: 56px; }
@media (max-width: 1023px) { .different-concreates .concrete-img-name { margin-bottom: 30px; } }
@media (max-width: 767px) { .different-concreates .concrete-img-name { width: 50%; } }
.different-concreates .concrete-img { width: 100%; }
.different-concreates .concrete-img img { width: 100%; display: block; }
.different-concreates .rapids-name { width: 100%; background: #f8f8f8; padding: 14px; }
.different-concreates .rapids-name h2 { font-size: 18px; font-weight: 800; margin: 0; text-align: center; text-transform: capitalize; }
@media (max-width: 1023px) { .different-concreates .rapids-name h2 { font-size: 16px; } }
@media (max-width: 767px) { .different-concreates .rapids-name h2 { font-size: 14px; } }
.flake-consultation-block .consultation-block { padding: 8px 0 40px; }
.service-area-banner .banner-heading { max-width: 620px; }
.service-area-banner .banner-heading p { line-height: 20px; }
.service-area-banner .banner-heading h2 { margin-bottom: 30px; }
.service-area-banner .banner-heading h2::before { bottom: -18px; left: 0; width: 56px; }
.searvice-section .section { padding: 92px 0 20px; }
@media (max-width: 1023px) { .searvice-section .section { padding: 40px 0 20px; } }
.service-cities { padding: 30px 0 100px; }
@media (max-width: 1023px) { .service-cities { padding: 30px 0 40px; } }
.service-cities .service-cities-details { text-align: center; margin-bottom: 60px; }
@media (max-width: 1023px) { .service-cities .service-cities-details { margin-bottom: 30px; } }
.service-cities .service-cities-details p { margin: 0; }
.service-team-imgs { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -15px; }
.service-team-imgs .team-img { width: 50%; padding: 0 15px; }
@media (max-width: 767px) { .service-team-imgs .team-img { width: 100%; margin-bottom: 20px; } }
.service-team-imgs .team-img img { display: block; width: 100%; }
.floor-salon-coating .salon-floor-coating { padding: 70px 0 110px; }
@media (max-width: 1023px) { .floor-salon-coating .salon-floor-coating { padding: 40px 0; } }
.salon-right-col li { padding: 0 0 20px 34px; }
.salon-right-col .image-area { right: 57px; }
.coating-salon-floor .salon-bottom-coating { padding: 165px 0 70px; }
@media (max-width: 1023px) { .coating-salon-floor .salon-bottom-coating { padding: 194px 0 20px; } }
.floor-consultation-block .consultation-block { padding: 40px 0 88px; }
@media (max-width: 1023px) { .floor-consultation-block .consultation-block { padding: 40px 0 40px; } }
.salon-coating-block .coating-block .left-col { width: 100%; padding: 0 0 59px 0; }
@media (min-width: 1024px) { .salon-coating-block .coating-block .left-col { width: 33.3%; padding: 95px 40px 59px 0; } }
.salon-coating-block .coating-block .right-col { padding: 50px 60px 40px 30px; }

/* ============================================================
   FLOOR COATING (consolidated — was duplicated)
   ============================================================ */
.floor-coating { padding: 70px 0; }
@media (max-width: 768px) { .floor-coating { padding: 30px 0 0; } }
.floor-coating .floor-coating-heading { max-width: 700px; margin: 0 auto; }
.floor-coating .floor-coating-heading h2 { margin-bottom: 70px; position: relative; text-align: center; }
@media (max-width: 767px) { .floor-coating .floor-coating-heading h2 { font-size: 16px; margin-bottom: 30px; } }
.floor-coating .floor-coating-heading h2::before { content: ""; position: absolute; bottom: -37px; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 140px; height: 6px; background: #d23540; }
@media (max-width: 767px) { .floor-coating .floor-coating-heading h2::before { content: ""; bottom: -15px; width: 100px; height: 4px; } }
.floor-coating .floor-coating-blocks { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 -22px; }
@media (max-width: 767px) { .floor-coating .floor-coating-blocks { margin: 0 -20px; } }
.floor-coating .image-block { width: 50%; position: relative; padding: 0 26px 0 40px; }
@media (max-width: 1023px) { .floor-coating .image-block { width: 100%; margin-bottom: 30px; padding: 0 20px; } }
.floor-coating .image-block img { display: block; width: 100%; }
.floor-coating .image-content { width: 67%; padding: 35px; background: #fff; position: absolute; bottom: -35px; right: 0; z-index: 1; }
@media (max-width: 1199px) { .floor-coating .image-content { padding: 20px 26px 45px 20px; bottom: 0; } }
@media (max-width: 767px) { .floor-coating .image-content { content: ""; bottom: -13px; padding: 10px; margin: 0 15px; } }
.floor-coating .image-section { width: 67%; padding: 35px; background: #fff; position: absolute; bottom: -35px; left: 0; z-index: 1; }
@media (max-width: 1199px) { .floor-coating .image-section { padding: 20px; bottom: 0; } }
@media (max-width: 767px) { .floor-coating .image-section { content: ""; bottom: -13px; padding: 10px; margin: 0 15px; } }
.floor-coating .image-content .salon-text-box { padding: 15px 12px 15px 35px; }
.floor-coating .text-box { background: #f8f8f8; padding: 15px 30px 15px 35px; }
@media (max-width: 1199px) { .floor-coating .text-box { padding: 15px 20px; } }
@media (max-width: 767px) { .floor-coating .text-box { padding: 10px; } }
.floor-coating .text-clrful { font-weight: 500; }
.floor-coating .text-box-area { display: block; font-weight: 600; font-size: 16px; }
@media (max-width: 767px) { .floor-coating .text-box-area { font-size: 13px; } }
.floor-coating .text-block { width: 50%; padding: 0 20px; }
@media (max-width: 1023px) { .floor-coating .text-block { width: 100%; } }
.floor-coating .text-block .title-area { display: block; margin: 0 0 10px; font-weight: 700; }
@media (max-width: 768px) { .floor-coating .text-block .title-area { font-size: 12px; } }
.floor-coating-reverse { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
.floor-coating-reverse .image-content { left: 0; }
.floor-coating-reverse .text-box { padding: 10px 30px; }
.floor-btns .floors a { margin-bottom: 20px; }
.salon-coating-lists { display: block; }
.salon-coating-lists li { width: 100%; }
.floor-coating.basement-coating .floor-coating-heading,
.floor-coating.basement-area .floor-coating-heading { max-width: 1100px; }
.floor-coating.basement-area { padding: 170px 0 120px; }
@media (max-width: 1200px) { .floor-coating.basement-area { padding: 170px 0 30px; } }
@media (max-width: 768px) { .floor-coating.basement-area { padding: 170px 0 0; } }
.basement-lists { list-style: none; margin: 0; padding: 0; }
.basement-lists li { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 0 0 20px; font-weight: 500; }
.basement-lists .img-tick { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background: #d23540; border-radius: 100%; padding: 4px; width: 30px; height: 30px; margin-right: 10px; color: #fff; }
.basement-lists a { display: inline-block; color: #515465; font-size: 21px; line-height: 1; }
.coating-lists.lists-basement { display: block; }
.coating-lists.lists-basement li { width: 100%; }
.floors-list { width: 60%; -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; }
@media (max-width: 1199px) { .floors-list { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; width: 100%; } }
.floors-list a { font-size: 19px; border-radius: 30px; }
@media (max-width: 1023px) { .floors-list a { font-size: 14px; } }

/* ============================================================
   FORM ELEMENTS
   ============================================================ */
.jcf-select { padding: 0 24px; width: 100%; position: relative; }
.field { position: relative; }
.chevron { position: absolute; right: 30px; top: 50%; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); pointer-events: none; cursor: pointer; }
.jcf-unselectable { width: 100%; outline: none; color: #515465; -webkit-box-sizing: border-box; box-sizing: border-box; display: -webkit-box; display: -ms-flexbox; display: flex; height: 58px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background: #fff; }
@media (max-width: 767px) { .jcf-unselectable { height: 46px; } }
.jcf-select-drop-content { width: 100%; padding: 10px 0; }
.jcf-list-content ul { list-style: none; margin: 0; padding: 5px 0; background: #fff; overflow: hidden; }
.jcf-list-content ul li { padding: 7px 24px; -webkit-transition: all 0.4s ease; transition: all 0.4s ease; }
.jcf-list-content ul li .jcf-option { display: block; }
.jcf-list-content ul li:hover { background-color: #d23540; color: #fff; }
.field-form .section { padding: 91px 0 68px 0; }
@media (max-width: 767px) { .field-form .section { padding: 40px 0 20px; } }
.field-form .section .form-text { letter-spacing: 0.5px; padding: 9px 0 0 0; }
.field-form .section .field-top { margin: 0 0 6px 0; }
.field-form .section .section-header h2 { margin: 0 0 22px 0; }
.field-form .section .quote-form input { padding: 17px 30px; }
.field-form .section .form-footer { padding: 16px 0 0 0; letter-spacing: 0.5px; }
.text-clrful { color: #d23540; display: inline-block; }
.concreate-product-items { padding: 77px 0 20px; }
.concreate-floors-list a { font-size: 16px; font-weight: 600; padding: 12px 25px; border-radius: 30px; }
.concreate-consultation .consultation-floors { padding: 60px; }
.concreate-consultation .concreate-floor-heading { color: #515465; }
.concreate-consultation .free-consultation { padding: 10px 0 70px; }
.concreate-consultation .concreate-floor-section { padding: 40px 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.concreate-floor-coating .floor-coating { padding: 70px 0 10px; }

/* ============================================================
   TRANSITIONS
   ============================================================ */
a,button,input[type=submit] { -webkit-transition: all 0.25s ease-in-out; transition: all 0.25s ease-in-out; }

/* ============================================================
   LAYOUT
   ============================================================ */
#wrapper { width: 100%; position: relative; overflow: hidden; }
.container { max-width: 1200px; padding-left: 15px; padding-right: 15px; margin-left: auto; margin-right: auto; }
.container-large { max-width: 1755px; padding-left: 15px; padding-right: 15px; margin-left: auto; margin-right: auto; }
.bg-gray { background: #f8f8f8; }
.bg-gray input[type=text],.bg-gray input[type=tel],.bg-gray input[type=email],.bg-gray input[type=search],.bg-gray input[type=password],.bg-gray textarea,.bg-gray .text-input { background: #fff; }

/* ============================================================
   SECTION STYLES
   ============================================================ */
.section { padding: 30px 0; }
@media (min-width: 768px) { .section { padding: 40px 0; } }
.section .section-header { overflow: hidden; text-align: center; }
.section .section-header h2 { position: relative; padding-bottom: 20px; margin: 0 0 22px 0; }
@media (min-width: 768px) { .section .section-header h2 { padding-bottom: 30px; margin: 0 0 30px; } }
@media (max-width: 767px) { .section .section-header h2 { font-size: 18px; } }
.section .section-header h2:before { width: 60px; height: 4px; position: absolute; left: 50%; bottom: 0; content: ""; -webkit-transform: translateX(-50%); transform: translateX(-50%); background: #d23540; border-radius: 2px; }
@media (max-width: 767px) { .section .section-header h2:before { width: 40px; height: 3px; } }
.section .section-header h2 + p { margin-top: -5px; }
.section .section-header.align-left { text-align: left; }
.section .section-header.align-left h2:before { left: 0; -webkit-transform: none; transform: none; }
@media (max-width: 767px) { .section.bg-gray { padding-top: 35px; padding-bottom: 35px; } }

/* Quote Block */
.quote-block { padding: 30px 0 35px; }
@media (min-width: 768px) { .quote-block { padding: 45px 0; } }
.quote-form { overflow: hidden; padding: 0 15px; }
@media (min-width: 768px) { .quote-form { padding: 0 20px; } }
@media (min-width: 1024px) { .quote-form { padding: 0 70px; } }
.quote-form .quote-form-holder { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; margin: 0 -7px; }
@media (min-width: 768px) { .quote-form .quote-form-holder { margin: 0 -10px; } }
.quote-form .field { padding: 7px; width: 100%; }
@media (min-width: 768px) { .quote-form .field { padding: 10px; width: 50%; } }
@media (min-width: 1024px) { .quote-form .field { width: 33.333%; } }
.quote-form .text-input { width: 100%; }
.quote-form .form-footer { overflow: hidden; text-align: center; padding-top: 20px; }
.quote-form .form-footer p { margin: 0 0 30px; }

/* Section Articles */
.section-articles .articles-holder { overflow: hidden; margin: -30px 0; }
.article-post { padding: 30px 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.article-post .image-holder { width: 100%; margin: 0 0 25px; }
@media (min-width: 1024px) { .article-post .image-holder { width: 46.2%; margin: 0; } }
.article-post .image-holder img { width: 100%; height: auto; display: block; }
.article-post .textbox { width: 100%; }
@media (min-width: 1024px) { .article-post .textbox { width: 51%; } }
@media (min-width: 1200px) { .article-post .textbox { width: 48%; } }
@media (min-width: 1024px) { .article-post:nth-child(even) { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } }

/* Stats */
.stats-list { list-style: none; padding: 0; margin: -7px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
@media (min-width: 1024px) { .stats-list { margin: -10px; } }
@media (min-width: 1200px) { .stats-list { margin: -15px; } }
.stats-list li { width: 50%; padding: 7px; }
@media (min-width: 1024px) { .stats-list li { padding: 10px; width: 25%; } }
@media (min-width: 1200px) { .stats-list li { padding: 15px; } }
.stats-box { height: 100%; background: #fff; text-align: center; padding: 20px 15px 15px; -webkit-box-shadow: 0 4px 54px rgba(169,169,169,0.18); box-shadow: 0 4px 54px rgba(169,169,169,0.18); transition: transform 0.3s ease, box-shadow 0.3s ease; }
@media (min-width: 480px) { .stats-box { padding: 30px 15px; } }
@media (min-width: 1200px) { .stats-box { padding: 30px 20px; } }
.stats-box:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(0,0,0,0.12); }
.stats-box .icon-holder { overflow: hidden; width: 45px; height: 40px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0 auto 15px; }
@media (min-width: 480px) { .stats-box .icon-holder { width: 70px; height: 64px; margin-bottom: 25px; } }
.stats-box .icon-holder img { width: auto; display: block; height: 40px; }
@media (min-width: 480px) { .stats-box .icon-holder img { height: 64px; } }
.stats-box .h2 { text-transform: none; display: block; margin: 0 0 8px; }
@media (max-width: 767px) { .stats-box .h2 { font-size: 18px; } }
.stats-box .subtitle { display: block; font-weight: 400; }
@media (max-width: 767px) { .stats-box .subtitle { font-size: 14px; } }

/* Section Services */
.section-services { margin: 15px 0; }
@media (min-width: 768px) { .section-services { padding: 50px 0; margin: 30px 0; } }
@media (min-width: 1024px) { .section-services { margin: 45px 0; } }
@media (min-width: 1200px) { .section-services { padding: 75px 0; } }

/* Services Block */
@media (min-width: 768px) { .services-block { display: -webkit-box; display: -ms-flexbox; display: flex; padding-top: 10px; } }
.services-block .tab-content { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; padding-left: 2.2%; }
@media (min-width: 1200px) { .services-block .tab-content { padding-left: 3%; } }
@media (max-width: 767px) { .services-block .tab-content { padding-left: 0; } }

/* Services Tabset */
.services-tabset { list-style: none; padding: 0; margin: 0 -5px 15px; -ms-flex-negative: 0; flex-shrink: 0; font-size: 14px; line-height: 1.2; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; }
@media (min-width: 768px) { .services-tabset { padding: 0; margin: -10px 0; width: 40%; display: block; line-height: 1.5; } }
@media (min-width: 1024px) { .services-tabset { width: 27.8%; } }
@media (min-width: 1200px) { .services-tabset { margin: -15px 0; font-size: 16px; } }
.services-tabset li { padding: 10px 5px 0; width: 100%; }
@media (min-width: 768px) { .services-tabset li { padding: 10px 0; width: 100%; } }
@media (min-width: 1200px) { .services-tabset li { padding: 15px 0; } }
@media (max-width: 767px) { .services-tabset li:last-child:nth-child(odd) { width: 100%; } }
.services-tabset li a { display: block; color: #515465; height: 50px; padding: 5px 10px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background: #fff; position: relative; transition: all 0.25s ease; }
@media (min-width: 768px) { .services-tabset li a { padding: 10px 20px; height: 65px; } }
@media (min-width: 1200px) { .services-tabset li a { padding: 10px 30px; height: 70px; } }
.services-tabset li a:after { width: 10px; height: 10px; border: 2px solid #fff; border-left: 0; border-bottom: 0; content: ""; position: absolute; right: 30px; top: 50%; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); display: none; opacity: 0; visibility: hidden; -webkit-transition: 0.3s; transition: 0.3s; }
@media (min-width: 768px) { .services-tabset li a:after { right: 20px; display: block; } }
@media (min-width: 1200px) { .services-tabset li a:after { right: 30px; } }
.services-tabset li a:hover { color: #fff; background: #d23540; }
.services-tabset li a:hover:after { opacity: 1; visibility: visible; }
.services-tabset li.active a { color: #fff; font-weight: 700; background: #d23540; }
.services-tabset li.active a:after { opacity: 1; visibility: visible; }

.service-box { opacity: 0; -webkit-transition: opacity 0.35s ease; transition: opacity 0.35s ease; }
@media (min-width: 1024px) { .service-box { display: -webkit-box; display: -ms-flexbox; display: flex; } }
.service-box .image-holder { width: 100%; margin: 0 0 15px; }
@media (min-width: 1024px) { .service-box .image-holder { -ms-flex-negative: 0; flex-shrink: 0; width: 54%; margin: 0; } }
.service-box .image-holder img { width: 100%; height: auto; display: block; }
@media (min-width: 1024px) { .service-box .textbox { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; padding-left: 3%; } }
@media (min-width: 1200px) { .service-box .textbox { padding-left: 5%; line-height: 1.675; letter-spacing: 0.005rem; } }
.service-box .textbox p:last-child { margin: 0; }
.service-box.active { opacity: 1; }
.js-tab-hidden { display: block !important; left: -9999px !important; position: absolute !important; top: -9999px !important; }

/* Why Us Block */
@media (min-width: 1024px) { .whyus-block { display: -webkit-box; display: -ms-flexbox; display: flex; } }
@media (min-width: 1024px) { .whyus-block .info-column { width: 55%; } }
.whyus-block .images-column { display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 -7px; }
@media (min-width: 1024px) { .whyus-block .images-column { padding-left: 15px; width: 45%; display: block; margin: 0; } }
@media (min-width: 1200px) { .whyus-block .images-column { padding-left: 25px; } }
.whyus-block .images-column .image-holder { overflow: hidden; padding: 0 7px; width: 50%; }
@media (min-width: 1024px) { .whyus-block .images-column .image-holder { width: 100%; padding: 0; margin: 0 0 22px; } }

.info-box { padding: 10px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background: #f8f8f8; margin: 0 0 12px; border-left: 3px solid transparent; transition: border-color 0.3s ease, box-shadow 0.3s ease, background 0.3s ease; border-radius: 0 4px 4px 0; }
@media (min-width: 1024px) { .info-box { padding: 12px; margin: 0 0 10px; } }
@media (min-width: 1200px) { .info-box { padding: 17px 15px; margin: 0 0 12px; } }
.info-box:hover { border-left-color: #d23540; background: #fff; box-shadow: 0 4px 20px rgba(0,0,0,0.07); }
.info-box .icon-holder { width: 82px; height: 82px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; background: #fff; -ms-flex-negative: 0; flex-shrink: 0; margin: 0 10px 0 0; border-radius: 8px; }
@media (min-width: 1024px) { .info-box .icon-holder { margin: 0 12px 0 0; } }
@media (min-width: 1200px) { .info-box .icon-holder { margin: 0 15px 0 0; } }
.info-box .icon-holder img { width: auto; height: 50px; }
.info-box .textbox { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; font-size: 14px; line-height: 1.25; }
@media (min-width: 1200px) { .info-box .textbox { padding-right: 45px; } }
.info-box .textbox .h6 { margin: 0 0 10px; }
@media (min-width: 1200px) { .info-box .textbox .h6 { margin: 0 0 14px; } }
.info-box .textbox p:last-child { margin: 0; }

/* contact-form */
#contactForm .field input { background-color: rgb(255,255,255); }

/* Mobile sticky text-block */
@media only screen and (max-width: 600px) {
  .floor-coating .text-block { width: 100%; position: sticky; animation: fadeIn 0.10s ease-in-out; }
  @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
}

/* ============================================================
   CSC FAQ (epoxy-coatings page and similar)
   ============================================================ */
.csc-faq-section {
  --csc-accent: var(--e-global-color-primary, #d23540);
  --csc-border: rgba(0,0,0,.14);
  --csc-soft: rgba(0,0,0,.04);
  padding: 64px 0;
}
.csc-faq-container { width: min(1100px, calc(100% - 40px)); margin: 0 auto; }
.csc-faq-grid { display: grid; grid-template-columns: 1fr; gap: 28px; align-items: start; }
@media (min-width: 980px) { .csc-faq-grid { grid-template-columns: 0.9fr 1.1fr; gap: 40px; } }
.csc-faq-title { margin: 0 0 10px; line-height: 1.15; }
.csc-faq-subtitle { margin: 0 0 18px; color: rgba(0,0,0,.70); }
.csc-faq-links { list-style: none; padding: 0; margin: 0 0 18px; border-left: 3px solid #d23540; padding-left: 14px; }
.csc-faq-links li { margin: 10px 0; }
.csc-faq-links a { color: inherit; text-decoration: none; border-bottom: 1px solid transparent; }
.csc-faq-links a:hover { border-bottom-color: #d23540; }
.csc-faq-cta { display: flex; flex-direction: column; gap: 10px; margin: 18px 0 10px; }
.csc-faq-btn { display: inline-flex; justify-content: center; align-items: center; padding: 12px 16px; border-radius: 10px; background: #d23540; color: #fff; text-decoration: none; font-weight: 700; letter-spacing: .2px; width: fit-content; }
.csc-faq-btn:hover { filter: brightness(0.95); }
.csc-faq-phone { color: inherit; text-decoration: none; font-weight: 600; }
.csc-faq-note { margin: 14px 0 0; color: rgba(0,0,0,.70); font-size: 0.95em; }
.csc-faq-accordion { border: 1px solid rgba(0,0,0,.14); border-radius: 14px; overflow: hidden; background: rgba(255,255,255,.02); }
.csc-faq-item + .csc-faq-item { border-top: 1px solid rgba(0,0,0,.14); }
.csc-faq-q { width: 100%; text-align: left; padding: 16px 16px; background: transparent; border: 0; cursor: pointer; font: inherit; font-weight: 700; display: flex; gap: 12px; align-items: center; justify-content: space-between; }
.csc-faq-q:focus-visible { outline: 3px solid color-mix(in srgb, #d23540 45%, transparent); outline-offset: -3px; }
.csc-faq-icon { flex: 0 0 auto; width: 22px; height: 22px; border-radius: 999px; border: 1px solid rgba(0,0,0,.14); position: relative; background: rgba(0,0,0,.04); }
.csc-faq-icon::before,.csc-faq-icon::after { content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 2px; background: rgba(0,0,0,.75); transform: translate(-50%, -50%); }
.csc-faq-icon::after { width: 2px; height: 11px; }
.csc-faq-item.is-open .csc-faq-icon::after { display: none; }
.csc-faq-a { padding: 0 16px 16px; }
.csc-faq-a p { margin: 10px 0 0; color: rgba(0,0,0,.82); }
.csc-faq-a ul { margin: 10px 0 0 18px; }
.csc-faq-a a { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb, #d23540 55%, transparent); }

/* ============================================================
   FLAKE PREVIEW SECTION
   ============================================================ */
.flake-preview-section { padding: 60px 0; background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); }
.flake-preview-section .section-header { text-align: center; margin-bottom: 40px; }
.flake-preview-section .section-header h2 { font-size: 32px; font-weight: 700; color: #222; margin-bottom: 15px; }
.flake-preview-section .section-header p { font-size: 16px; color: #666; max-width: 600px; margin: 0 auto; }
.flake-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.flake-card { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 5px 15px rgba(0,0,0,0.08); transition: transform 0.3s ease; }
.flake-card:hover { transform: translateY(-5px); }
.flake-card .flake-images { position: relative; height: 180px; }
.flake-card .flake-images img { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; transition: opacity 0.3s ease; }
.flake-card .flake-images img.hover-img { opacity: 0; }
.flake-card:hover .flake-images img.hover-img { opacity: 1; }
.flake-card h4 { padding: 15px; text-align: center; font-size: 16px; font-weight: 600; color: #222; background: #fff; margin: 0; }
.view-all-link { text-align: center; margin-top: 30px; }
.view-all-link a { display: inline-flex; align-items: center; color: #d23540; font-weight: 600; font-size: 16px; text-decoration: none; transition: color 0.3s ease; }
.view-all-link a i { margin-left: 8px; transition: transform 0.3s ease; }
.view-all-link a:hover { color: #a82832; }
.view-all-link a:hover i { transform: translateX(5px); }
@media (max-width: 992px) { .flake-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) { .flake-preview-section { padding: 40px 0; } .flake-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; } .flake-card .flake-images { height: 150px; } .flake-card h4 { padding: 12px; font-size: 14px; } .flake-preview-section .section-header h2 { font-size: 26px; } .flake-preview-section .section-header p { font-size: 14px; padding: 0 15px; } }
@media (max-width: 480px) { .flake-card .flake-images { height: 120px; } .flake-card h4 { padding: 10px; font-size: 13px; } }

/* ============================================================
   MOBILE STICKY CTA
   ============================================================ */
.mobile-sticky-cta { display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; padding: 12px 16px; padding-bottom: max(12px, env(safe-area-inset-bottom)); background: #1a1a1a; box-shadow: 0 -4px 20px rgba(0,0,0,0.25); gap: 12px; flex-direction: row; justify-content: center; align-items: center; }
@media (max-width: 1023px) { .mobile-sticky-cta { display: flex; } }
.mobile-sticky-cta .mobile-sticky-btn { flex: 1; max-width: 200px; padding: 14px 20px; font-family: Montserrat, sans-serif; font-weight: 600; font-size: 16px; text-align: center; text-decoration: none; border: none; border-radius: 8px; cursor: pointer; transition: background 0.2s, transform 0.1s; }
.mobile-sticky-cta .mobile-sticky-btn:active { transform: scale(0.98); }
.mobile-sticky-cta .mobile-sticky-quote { background: #d23540; color: #fff; }
.mobile-sticky-cta .mobile-sticky-quote:hover { background: #b82d37; color: #fff; }
.mobile-sticky-cta .mobile-sticky-call { background: #fff; color: #1a1a1a; border: 2px solid #fff; }
.mobile-sticky-cta .mobile-sticky-call:hover { background: #f0f0f0; color: #1a1a1a; }

/* ============================================================
   GOOGLE REVIEWS SECTION
   ============================================================ */
.google-reviews { background-color: #f8f8f8; }
.google-reviews .two-cols { display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 -20px; padding: 125px 0 150px 0; }
@media (max-width: 1199px) { .google-reviews .two-cols { padding: 80px 0; } }
@media (max-width: 1023px) { .google-reviews .two-cols { display: block; padding: 40px 0; } }
.google-reviews .text-holder { width: 50%; padding: 0 20px; }
@media (max-width: 1199px) { .google-reviews .text-holder { margin: 0 0 150px 0; } }
@media (max-width: 1023px) { .google-reviews .text-holder { width: 100%; margin: 0 0 100px 0; } }
@media (max-width: 767px) { .google-reviews .text-holder { margin: 0 0 50px 0; } }
.google-reviews .text-holder h2 { color: #515465; margin: 0 0 50px 0; position: relative; }
.google-reviews .text-holder h2::before { width: 60px; height: 4px; position: absolute; left: 70px; bottom: -30px; content: ""; -webkit-transform: translateX(-50%); transform: translateX(-50%); background: #d23540; border-radius: 2px; }
.google-reviews .text-holder p { margin: 0 0 75px; }
@media (max-width: 1199px) { .google-reviews .text-holder p { margin: 0 0 25px 0; } }
.google-reviews .text-holder span { color: #d23540; }
.google-reviews .slider-holder { width: 670px; z-index: 1; position: relative; margin: 0 0 0 115px; }
@media (max-width: 1199px) { .google-reviews .slider-holder { margin: 0; } }
@media (max-width: 1023px) { .google-reviews .slider-holder { margin: 0; width: 100%; } }
.google-reviews .slider-holder .slider { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-transition: -webkit-transform 0.3s ease-in-out; transition: transform 0.3s ease-in-out; padding: 0 0 0 25px; margin: -15px; width: calc(100% + 30px); }
@media (max-width: 1199px) { .google-reviews .slider-holder .slider { padding-left: 35px; } }
@media (max-width: 767px) { .google-reviews .slider-holder .slider { padding: 0 0 0 35px; margin: 0 0 0 -15px; width: calc(100% + 15px); } }
.google-reviews .slider-holder .slider h2 { font-size: 18px; margin: 0 0 18px 0; }
@media (max-width: 1023px) { .google-reviews .slider-holder .slider h2 { font-size: 15px; } }
@media (max-width: 479px) { .google-reviews .slider-holder .slider h2 { font-size: 10px; margin: 0 0 10px; } }
.google-reviews .slider-holder .slider h2::before { display: none; }
.google-reviews .slider-holder .slider p { font-size: 14px; margin: 0 0 65px 0; position: relative; line-height: 1.7; }
@media (max-width: 767px) { .google-reviews .slider-holder .slider p { line-height: 1.3; margin: 0 0 40px; } }
.google-reviews .slider-holder .slider p:before { width: 25px; height: 2px; position: absolute; left: 16px; bottom: -33px; content: ""; -webkit-transform: translateX(-50%); transform: translateX(-50%); background: #d23540; }
@media (max-width: 1023px) { .google-reviews .slider-holder .slider p { margin: 0 0 48px; } }
.google-reviews .slider-holder .slider i { font-size: 30px; margin-bottom: 5px; }
.google-reviews .slider-holder .slick-dots { position: absolute; left: -95px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); padding: 0; margin: 0; }
@media (max-width: 1199px) { .google-reviews .slider-holder .slick-dots { left: 15px; } }
.google-reviews .slider-holder .slick-dots li { margin: 0 0 30px 0; background-color: #fff; width: 16px; height: 16px; border: 2px solid #e9e9e9; list-style: none; cursor: pointer; }
@media (max-width: 767px) { .google-reviews .slider-holder .slick-dots li { height: 8px; width: 8px; } }
.google-reviews .slider-holder .slick-dots li button { display: none; }
.google-reviews .slider-holder .slick-dots li:hover { background-color: #d23540; }
.google-reviews .slider-holder .slick-dots .slick-active { background-color: #d23540; }
.google-reviews .slider-holder .slide { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; background-color: #fff; -webkit-box-shadow: 0 0 15px rgba(0,0,0,0.1); box-shadow: 0 0 15px rgba(0,0,0,0.1); position: relative; z-index: 1; padding: 44px 55px 50px 27px; margin: 15px; border-top: 3px solid #d23540; }
@media (max-width: 1023px) { .google-reviews .slider-holder .slide { padding: 30px 18px; } }
@media (max-width: 767px) { .google-reviews .slider-holder .slide { padding: 24px 14px; margin: 0; } }
.google-reviews .slider-holder .slide .star { margin: 0 -5px; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; }
.google-reviews .slider-holder .slide li { list-style: none; padding: 0 5px; }
.google-reviews .slider-holder .slide a { display: block; color: #d23540; }
.google-reviews .slider-holder .slide i { font-size: 15px; }
@media (max-width: 767px) { .google-reviews .slider-holder .slide i { font-size: 12px; } }
.google-reviews .slider-holder .slide .align-left { display: block; font-size: 18px; color: #515465; }
@media (max-width: 767px) { .google-reviews .slider-holder .slide .align-left { font-size: 14px; } }
.google-reviews .slider-holder .slide .align-left::before { display: none; }
.google-reviews .slider-holder .slide .multi-area { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.google-reviews .slider-holder .slide-dot { position: absolute; width: 173px; height: 113px; bottom: -50px; left: 0; z-index: -1; }
.google-reviews .slider-holder img { width: 100%; }
.google-reviews .image-holder { width: 50%; padding: 0 20px; }
@media (max-width: 1199px) { .google-reviews .image-holder { width: 100%; } }
.google-reviews .image-holder img { width: 100%; }

/* ============================================================
   PROJECTS SECTION
   ============================================================ */
.project { padding: 30px 0; }
.project .section-header { margin-bottom: 25px; }
.project .section-header p { margin: 0; }
.slider { width: 100%; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-transition: -webkit-transform 0.5s ease-in-out; transition: transform 0.5s ease-in-out; padding: 20px 0; }
.index-slider-area .slick-slider { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.slider-area .slider-btn { background: #515465; color: #fff; border: none; margin: 0 10px; padding: 12px 10px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; display: inherit; }
@media (min-width: 1499px) { .slider-area .slider-btn { width: 65px; height: 65px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); padding: 18px; } }
@media (max-width: 1023px) { .slider-area .slider-btn { display: none !important; } }
.slider-area .slider-btn:hover { background: #d23540; }
@media (min-width: 1499px) { .slider-area .slider-btn.slick-prev { left: -140px; } }
.slider-area .slider-btn.slick-next { left: auto; }
@media (min-width: 1499px) { .slider-area .slider-btn.slick-next { right: -140px; } }
.slider-area .slick-dots { position: absolute; left: 50%; bottom: -20px; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); padding: 0; margin: 0; display: -webkit-box; display: -ms-flexbox; display: flex; cursor: pointer; visibility: hidden; }
@media (max-width: 1023px) { .slider-area .slick-dots { visibility: visible; } }
.slider-area .slick-dots li { margin: 0 5px; background: #cccccc; width: 8px; height: 8px; list-style: none; }
.slider-area .slick-dots li button { display: none; }
.slider-area .slick-dots .slick-active { background-color: #515465; }
.project-area { display: -webkit-box !important; display: -ms-flexbox !important; display: flex !important; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }
.project-area .project-col { width: 25%; background: #3d4055; }
@media (max-width: 1199px) { .project-area .project-col { width: 50%; } }
@media (max-width: 767px) { .project-area .project-col { width: 100%; } }
.project-area .project-col:last-child { width: 50%; }
@media (max-width: 1199px) { .project-area .project-col:last-child { width: 100%; min-height: 300px; } }
@media (max-width: 767px) { .project-area .project-col:last-child { min-height: 200px; } }
.project-area .content { padding: 22px; color: #fff; position: relative; }
@media (max-width: 1199px) { .project-area .content { padding: 45px 22px; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } }
@media (max-width: 767px) { .project-area .content { padding: 22px; } }
.project-area .content .project-details { border-bottom: 1px solid rgba(255,255,255,0.2); margin-bottom: 10px; }
.project-area .content h2 { color: #fff; font-size: 16px; font-weight: 600; margin: 0 0 5px; }
.project-area .content p { font-size: 14px; margin: 0 0 5px; color: rgba(255,255,255,0.85); }
.project-area .content .project-name { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.project-area .content .project-name .name { font-size: 14px; font-weight: 700; display: inline-block; margin: 0 5px 0 0; color: rgba(255,255,255,0.7); }
.project-area .content .project-name h3 { color: #fff; font-size: 15px; font-weight: 600; margin: 0; }
.project-area .content .project-name h4 { color: #fff; font-size: 14px; font-weight: 400; margin: 0; }
.project-area .content .project-name a { color: #f5a623; font-weight: 600; font-size: 13px; transition: color 0.2s ease; }
.project-area .content .project-name a:hover { color: #fff; }
.project-area .content .project-name a .name { color: #f5a623; }
.project-area .project-col-img { width: 100%; position: relative; }
.project-area .project-col-img:last-child { width: 100%; height: 100%; background-repeat: no-repeat; background-size: cover; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.project-area .project-col-img img { display: block; width: 100%; }
.project-area .project-video-play { cursor: pointer; }
.project-area .project-video-play img { width: 100%; display: block; }
.project-area .project-article { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-flow: row wrap; flex-flow: row wrap; width: 50%; }
@media (max-width: 767px) { .project-area .project-article { width: 100%; } }
.project-area .project-article:nth-child(even) { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
.project-area .project-article:nth-child(even) .content:after { left: auto; right: 100%; -webkit-transform: rotate(180deg); transform: rotate(180deg); }
.project-area .project-article .project-col { width: 50%; }
.project-area .project-article .project-col:only-child { width: 100%; }
@media (max-width: 1199px) { .project-area .project-article .content { padding: 22px; } }
@media (max-width: 1023px) { .project-area .project-article .content { padding: 10px; } }
.project-area .project-article .content:after { position: absolute; left: 100%; top: 25px; content: ""; z-index: 1; border-style: solid; border-width: 10px 0 10px 10px; border-color: transparent transparent transparent #3d4055; }
@media (max-width: 479px) { .project-area .project-article .content h2,.project-area .project-article .content .name,.project-area .project-article .content h3 { font-size: 14px; } }
@media (max-width: 479px) { .project-area .project-article .content p { font-size: 11px; } }
.project-area .project-article .project-col-img img { height: 100%; -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; }
@media (min-width: 768px) { .project-area .project-article.reverse { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } }
@media (min-width: 768px) { .project-area .project-article.reverse .content:after { left: auto; right: 100%; -webkit-transform: rotate(180deg); transform: rotate(180deg); } }

/* ============================================================
   INDEX BANNER
   ============================================================ */
.index-banner { padding: 80px 0 20px 0; }
.index-banner-area { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.index-banner-concreate { width: 22%; padding: 0 15px; margin: 0 -10px; }
@media (max-width: 1023px) { .index-banner-concreate { width: 25%; } }
@media (max-width: 767px) { .index-banner-concreate { display: none; } }
.index-banner-concreate:first-child,.index-banner-concreate:last-child { width: 13%; padding: 0 10px; }
@media (max-width: 1023px) { .index-banner-concreate:first-child,.index-banner-concreate:last-child { display: none; } }
.index-banner-concreate:first-child img,.index-banner-concreate:last-child img { width: 100%; display: block; }
.index-banner-concreate img { width: 100%; height: 100%; display: block; -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; }
.index-banner-column { background: linear-gradient(160deg, #ffffff 60%, #f9f4f4 100%); width: 30%; padding: 75px 25px 0; position: relative; }
@media (min-width: 1700px) { .index-banner-column { padding: 110px 35px 0; } }
@media (max-width: 1498px) { .index-banner-column { padding: 30px 25px 0; } }
@media (max-width: 1199px) { .index-banner-column { padding: 30px 10px 0; } }
@media (max-width: 1023px) { .index-banner-column { width: 50%; } }
@media (max-width: 767px) { .index-banner-column { width: 100%; padding: 30px 20px 40px; background: #fff; } }
.index-banner-column .pagingInfo { position: absolute; right: 15px; bottom: 10px; font-size: 32px; line-height: 1; font-weight: 600; color: #d23540; }
@media (max-width: 1498px) { .index-banner-column .pagingInfo { font-size: 24px; } }
@media (max-width: 1023px) { .index-banner-column .pagingInfo { bottom: -10px; font-size: 20px; } }
@media (max-width: 767px) { .index-banner-column .pagingInfo { bottom: 0; } }
.index-banner-column .pagingInfo .current-slides { font-size: 43px; padding-right: 3px; }
@media (max-width: 1498px) { .index-banner-column .pagingInfo .current-slides { font-size: 32px; } }
@media (max-width: 1023px) { .index-banner-column .pagingInfo .current-slides { font-size: 24px; } }
.index-banner-column .pagingInfo .total-slides { color: #4a4847; padding-left: 3px; }
.index-banner-slider { height: 100%; }
.index-banner-slider:not(.slick-initialized) > .banner-slider:not(:first-child) { display: none; }
.slider-area:not(.slick-initialized) > .project-area:not(:first-child) { display: none; }
.slider:not(.slick-initialized) > .slide:not(:first-child) { display: none; }
.index-banner-slider .slick-dots { position: absolute; left: 0; bottom: 10px; padding: 0; margin: 0 -10px; display: -webkit-box; display: -ms-flexbox; display: flex; cursor: pointer; }
@media (max-width: 1023px) { .index-banner-slider .slick-dots { bottom: -10px; } }
@media (max-width: 767px) { .index-banner-slider .slick-dots { bottom: -40px; } }
.index-banner-slider .slick-dots li { margin: 0 10px; background: #cccccc; width: 10px; height: 10px; list-style: none; border-radius: 50%; }
.index-banner-slider .slick-dots li button { display: none; }
.index-banner-slider .slick-dots .slick-active { background-color: #D23540; }
.banner-slider-heading { position: relative; }
.banner-slider-heading::after { content: ""; position: absolute; bottom: -10px; left: 0; width: 60%; height: 2px; background: #ececec; border-radius: 1px; }
@media (min-width: 1599px) { .banner-slider-heading::after { width: 375px; height: 3px; } }
@media (min-width: 1800px) { .banner-slider-heading::after { width: 415px; height: 5px; } }
.banner-slider-heading .slider-heading-title { color: #515465; font-size: 25px; font-weight: 800; display: block; }
@media (min-width: 1599px) { .banner-slider-heading .slider-heading-title { font-size: 27px; } }
@media (min-width: 1800px) { .banner-slider-heading .slider-heading-title { font-size: 30px; } }
@media (max-width: 1498px) { .banner-slider-heading .slider-heading-title { font-size: 16px; } }
@media (max-width: 767px) { .banner-slider-heading .slider-heading-title { font-size: 20px; } }
.banner-slider-heading h2 { font-size: 35px; color: #d23540; margin-bottom: 20px; font-weight: 800; }
@media (min-width: 1599px) { .banner-slider-heading h2 { font-size: 42px; } }
@media (min-width: 1800px) { .banner-slider-heading h2 { font-size: 48px; } }
@media (max-width: 1498px) { .banner-slider-heading h2 { font-size: 28px; } }
@media (max-width: 1023px) { .banner-slider-heading h2 { font-size: 22px; } }
@media (max-width: 767px) { .banner-slider-heading h2 { font-size: 28px; } }
.banner-slider-text p { font-size: 18px; font-weight: 600; }
@media (max-width: 1498px) { .banner-slider-text p { font-size: 16px; } }
@media (max-width: 1023px) { .banner-slider-text p { font-size: 14px; margin-bottom: 10px; } }
@media (max-width: 767px) { .banner-slider-text p { font-size: 16px; } }
.banner-slider-text .contact-banner-slider { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 30px; }
@media (max-width: 1498px) { .banner-slider-text .contact-banner-slider { margin-bottom: 15px; } }
.banner-slider-text .contact-slider-number { padding: 0 0 0 20px; }
.banner-slider-text .contact-title { display: block; font-size: 24px; font-weight: 700; }
@media (max-width: 1498px) { .banner-slider-text .contact-title { font-size: 12px; } }
.banner-slider-text .contact-number-banner { font-size: 24px; font-weight: 700; color: #d23540; }
@media (max-width: 1498px) { .banner-slider-text .contact-number-banner { font-size: 16px; } }
@media (max-width: 1498px) { .banner-slider-text .banner-slider-img { max-width: 40px; max-height: 40px; } }

/* ============================================================
   PRODUCT ITEMS / BEAUTY LIES
   ============================================================ */
.product-items { padding: 77px 0; }
@media (max-width: 767px) { .product-items { padding: 30px 0; } }
.product-items .product-item-holder { display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 -15px; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.product-items .pro-image { padding: 0 15px; width: 25%; margin: 0 0 20px 0; }
.product-items .pro-image img { width: 100%; }
.coating-bg-banner { margin: 0 0 100px 0; }
.beauty-lies { text-align: center; padding: 10px 0; }
.beauty-lies h2 { color: #515465; position: relative; margin: 0 0 72px; }
.beauty-lies h2::before { width: 60px; height: 4px; position: absolute; left: 50%; bottom: -30px; content: ""; -webkit-transform: translateX(-50%); transform: translateX(-50%); background: #d23540; border-radius: 2px; }
@media (max-width: 767px) { .beauty-lies h2 { font-size: 18px; margin: 0 0 32px; } .beauty-lies h2::before { width: 40px; height: 3px; bottom: -15px; } }
.beauty-lies .two-cols { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin: 0 -10px; }
@media (max-width: 767px) { .beauty-lies .two-cols { -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0; } }
.beauty-lies .image-holder { background-color: #FFF; width: 46%; padding: 10px 2px 10px 3px; }
@media (max-width: 767px) { .beauty-lies .image-holder { width: 100%; margin: 0 0 30px; } }
.beauty-lies .image-holder img { width: 100%; }
.beauty-lies .text-holder { width: 50%; padding: 0 15px; text-align: left; }
@media (max-width: 767px) { .beauty-lies .text-holder { width: 100%; padding: 0; } }
.beauty-lies .text-holder h3 { margin: 0 0 23px; color: #515465; }
@media (max-width: 767px) { .beauty-lies .text-holder h3 { font-size: 18px; margin: 0 0 15px; } }

/* ============================================================
   ADVANTAGES
   ============================================================ */
.advantages h3 { color: #fff; margin: 0 0 30px 0; font-size: 16px; }
.advantages ul { list-style: none; margin: 0; padding: 0; font-size: 12px; line-height: 1; -ms-flex-wrap: wrap; flex-wrap: wrap; font-weight: 500; }
@media (min-width: 768px) { .advantages ul { font-size: 18px; } }
.advantages li { padding: 0 0 20px 32px; width: 80%; position: relative; font-size: 16px; }
@media (max-width: 767px) { .advantages li { width: 100%; } }
.advantages .icon-tick { position: absolute; top: 3px; left: 0; font-size: 12px; }

/* ============================================================
   ================================================================
   MODERN ENHANCEMENTS 2025
   All additions below this line are new — they improve visual
   quality, conversion rate and page performance.
   ================================================================
   ============================================================ */

/* ----------------------------------------------------------
   1. HERO: subtle left-border accent on the slider column
      to visually separate it from the floor image columns.
   ---------------------------------------------------------- */
.index-banner-column::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 0;
  width: 3px;
  height: 60px;
  background: #d23540;
  border-radius: 2px;
}
@media (max-width: 767px) {
  .index-banner-column::before { display: none; }
}

/* ----------------------------------------------------------
   2. TRUST BAR: increase height and visual weight.
      Visitors scan this strip for quick credibility signals.
   ---------------------------------------------------------- */
.trust-bar {
  background: #fff;
  border-bottom: 2px solid #f0f0f0;
  border-top: 2px solid #f0f0f0;
  padding: 12px 0;
}

/* ----------------------------------------------------------
   3. SECTION HEADER underlines: thinner + rounded ends.
      The original 8px height was very blunt and dated.
      All section h2::before pseudo-elements now use 4px
      with border-radius for a more refined look.
   ---------------------------------------------------------- */
.section .section-header h2:before,
.about-two-block h3::before,
.two-block-image h2::before,
.offers-block h2::before,
.floor-section .floor-heading h2::before,
.floor-coating .floor-coating-heading h2::before,
.coating-block h2::before,
.chicago-section h2::before,
.about-snippet-text h2::before,
.google-reviews .text-holder h2::before {
  border-radius: 2px;
}

/* ----------------------------------------------------------
   4. PROJECT TILES: soften the dark background.
      #515465 → slightly deeper #3d4055 + subtle top accent.
      This makes the project cards feel more intentional.
   ---------------------------------------------------------- */
.project-area .project-col {
  background: #3d4055;
  position: relative;
}
.project-area .project-col::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: #d23540;
}
.project-area .project-article .content:after {
  border-color: transparent transparent transparent #3d4055;
}
@media (min-width: 768px) {
  .project-area .project-article.reverse .content:after {
    border-color: transparent #3d4055 transparent transparent;
  }
}
.project-area .project-article:nth-child(even) .content:after {
  border-color: transparent #3d4055 transparent transparent;
}

/* ----------------------------------------------------------
   5. REVIEW SLIDES: top accent border for visual anchoring.
      Already added inline above — this rule ensures it
      applies even if the inline version is removed.
   ---------------------------------------------------------- */
.google-reviews .slider-holder .slide {
  border-top: 3px solid #d23540;
}

/* ----------------------------------------------------------
   6. STATS BOXES: hover lift already added above.
      Additional: red counter text for visual accent.
   ---------------------------------------------------------- */
.stats-box .h2 {
  color: #d23540;
}

/* ----------------------------------------------------------
   7. INFO BOXES: left accent already added above.
      Additional: icon holder background on hover.
   ---------------------------------------------------------- */
.info-box:hover .icon-holder {
  background: #fff5f5;
}

/* ----------------------------------------------------------
   8. CHICAGO REASON CARDS (new section): hover lift.
   ---------------------------------------------------------- */
.chicago-reason-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.chicago-reason-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.1);
}

/* ----------------------------------------------------------
   9. SERVICE AREAS GRID (new section): subtle hover state.
   ---------------------------------------------------------- */
.service-areas-grid a {
  transition: all 0.25s ease;
}
.service-areas-grid a:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(210,53,64,0.12);
}

/* ----------------------------------------------------------
   10. BRANCH RATING PILLS (new in reviews section):
       hover state already in inline styles — this ensures
       they render correctly when inline styles are moved.
   ---------------------------------------------------------- */
.branch-rating-pill {
  transition: all 0.25s ease;
}
.branch-rating-pill:hover {
  transform: translateY(-2px);
}

/* ----------------------------------------------------------
   11. PROCESS STEPS (new section): subtle hover lift.
   ---------------------------------------------------------- */
.csc-process-step {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.csc-process-step:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.09);
}

/* ----------------------------------------------------------
   12. FAQ ITEMS: improved hover + open state border.
   ---------------------------------------------------------- */
.csc-faq-item {
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.csc-faq-item:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}
.csc-faq-item:has(.csc-faq-question[aria-expanded="true"]) {
  border-color: #d23540;
  box-shadow: 0 4px 20px rgba(210,53,64,0.10);
}

/* ----------------------------------------------------------
   13. CREDENTIAL BADGES (new in about section):
       Gentle hover state.
   ---------------------------------------------------------- */
.credential-badge {
  transition: background 0.2s ease, box-shadow 0.2s ease;
}
.credential-badge:hover {
  background: #fff5f5;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

/* ----------------------------------------------------------
   14. FOOTER: very subtle top border for section separation.
   ---------------------------------------------------------- */
.footer {
  border-top: 4px solid #d23540;
}

/* ----------------------------------------------------------
   15. MOBILE: add bottom padding to all sections to
       compensate for the sticky CTA bar.
       Prevents content being hidden behind the fixed bar.
   ---------------------------------------------------------- */
@media (max-width: 1023px) {
  .footer {
    padding-bottom: 90px;
  }
}

/* ----------------------------------------------------------
   16. SERVICES TAB: active tab gets a left highlight bar
       to improve visual connection between tab + content.
   ---------------------------------------------------------- */
.services-tabset li.active a {
  border-left: 4px solid #fff;
  padding-left: 26px;
}
@media (max-width: 767px) {
  .services-tabset li.active a {
    border-left: none;
    padding-left: 10px;
  }
}

/* ----------------------------------------------------------
   17. ABOUT SNIPPET IMAGE: subtle shadow for depth.
   ---------------------------------------------------------- */
.about-snippet-image img {
  box-shadow: 0 16px 48px rgba(0,0,0,0.12);
}

/* ----------------------------------------------------------
   18. INDEX BANNER SLIDER DOTS: rounded dots.
   ---------------------------------------------------------- */
.index-banner-slider .slick-dots li {
  border-radius: 50%;
  transition: background 0.3s ease, transform 0.3s ease;
}
.index-banner-slider .slick-dots .slick-active {
  transform: scale(1.3);
}

/* ----------------------------------------------------------
   19. SKIP LINK: accessibility improvement.
       Visible only when focused via keyboard.
   ---------------------------------------------------------- */
.skip-link {
  position: absolute;
  top: -100px;
  left: 15px;
  background: #d23540;
  color: #fff;
  padding: 8px 16px;
  border-radius: 0 0 6px 6px;
  font-weight: 600;
  font-size: 14px;
  z-index: 10000;
  transition: top 0.2s ease;
}
.skip-link:focus {
  top: 0;
}

/* ----------------------------------------------------------
   20. PRINT STYLES: hide non-essential UI for print.
   ---------------------------------------------------------- */
@media print {
  .header,
  .mobile-sticky-cta,
  .trust-bar,
  .slider-area .slider-btn,
  .index-banner-slider .slick-dots {
    display: none !important;
  }
  body {
    font-size: 12pt;
    color: #000;
  }
  a { color: #000; }
}
