/* ==========================================================================
   ALLSTYLES.CSS — Ordered with Section Markers (no rule reordering)
   ------------------------------------------------------------------
   0. Theme tokens (variables)
   1. Base / Reset
   2. Typography
   3. Layout helpers
   4. Header & Navbar
   5. Sections (Landing etc.)
   6. Forms (CF7/CF7MLS)
   7. Components (Buttons, Gallery, Accordion, Progress)
   8. Footer (legacy overrides)
   9. Footer (new .rh-footer) — placeholder
  10. Page-specific rules
  11. Plugin overrides (Popup Maker, Elementor)
  12. Utilities
  13. Media queries
   NOTE: To preserve cascade and avoid regressions, the original rule order
         is retained below. Future refactors can safely move blocks between
         sections using these markers as guides.
   ========================================================================== */

   :root{
    --clr-bg:#f7f8fa;
    --clr-text:#383738;
    --clr-accent:#72aee6;
    --clr-muted:#71768b;
    --radius:8px;
    --ff-base:Roboto, sans-serif;
    --ff-alt:'Oswald', sans-serif;
    --radius:8px;
    --shadow:0 6px 18px rgba(0,0,0,.08);
  }

  .elementor-widget-image img,
img.wp-image,
figure img{
  display:block;
  width:100%;
  height:auto;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  object-fit:cover; /* если заданы фиксированные области */
}
/* Унификация карточек/блоков, если требуется строго равная высота */
.media-rect-3x2 img{ aspect-ratio:3/2; }
.media-rect-1x1 img{ aspect-ratio:1/1; }
  
  /* === 1. Base / Reset, 2. Typography, 3. Layout helpers, 4+. Existing rules preserved === */
  .headermenu{display:none!important;}
  .dnone {
      display:none!important;
  
  }
  body * {
      font-family: Roboto, sans-serif;
  }
  body .container-fluid {
      padding:0;
  }
  body h2 {
      font-size: 45px;
      font-weight: 400 !important;
      text-transform: uppercase;
      line-height: 1.25em !important;
      letter-spacing: 3px;
      font-family: 'Oswald', sans-serif !important;
  }
  .navbar .navbar-collapse {
       background: transparent!important;
  }
  .img_mobile {display:none;}
  .img_pc {display:block;}
  .headertext, .headertelephon {    
      font-size: 20px;
          line-height: 20px;	
      color: #383738;
      font-weight: 600;
      font-family: 'Oswald', sans-serif;
      text-transform: uppercase;
  }
  .headertext_outer {    
  display: flex;
      width: max-content;
      gap: 20px;
      justify-content: center;
      align-items: center;
  }
  .headertelephon, .headermenu a {    
      font-size: 14px;	
      font-family: 'Oswald', sans-serif;
          text-transform: uppercase;
      font-weight: 500;
      color: #72aee6;
  }
  .headermenu #menu-onepage-menu {   
   display: flex;
      flex-direction: row;
      gap: 20px;
          margin-bottom: 0;
  }
  .header_mobile {display:none;}
  .headerbutton a {  
      font-size: 14px;	
      font-family: 'Oswald', sans-serif;
          padding: 6px 15px;
      border-radius: 100px;
      color: #fff !important;   
      background: #383738;
  }
  /*.elementor-section-wrap > */
  nav.navbar.navbar-expand-md > .container {max-width: unset !important;   padding: 0 32px;}
  .bunimg {padding: 50px 0;}
  /*страница qr*/
  body.page-id-591 footer, body.page-id-591 .main-footer-bg {display: none!important;}
  body.page-id-591 {overflow: hidden;}
  /* стили для лендинга */
  body .logo {
      width: auto;
      display: flex!important;
  }
  .navbar-brand {
      margin-right: 0!important; 
  }
  body .navbar {
      height: 70px;
  }
  body .navbar-toggler {
      display:none!important;
  }
  body .blog-home.section-padding {
      padding:0;
  }
  body.logged-in nav.navbar {
       display: block!important; 
           top: 15px !important;
  }
  body.logged-in nav.navbar.nav-scroll {
      top: -68px!important;
  }
  
  body .navbar {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      z-index: 1000;
      background-color: #ffffff;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
      transition: all 0.3s ease;
  }
  body .navbar.nav-scroll {
      position: fixed;
          border-color: transparent;
  }
  body .nav-scroll {
       background: #fff!important; 
      /*backdrop-filter: blur(10px) saturate(170%);*/
  }
  body .logo-wrapper .logo {
      max-width: 50px;
  }
  body .navbar.navbar-expand-md .container .logo-wrapper, .rh-footer .logo-wrapper {   
      padding: 0;/*justify-content: center;*/
      gap: 10px;
  }
  
  .rh-footer .headertext{
    color:#fff;
  }
  .rh-footer .logo img {
      filter: brightness(0) invert(1);
  }
  @media (max-width:640px){
    .rh-footer .headertext{font-size:16px; line-height:16px}
    .rh-footer .logo img{max-height:40px}
  }
  body .headertelephon {display: flex;    align-items: center; cursor:pointer;padding-bottom: 1px;}
  body .headertelephon a {    font-family: 'Oswald', sans-serif;}
  body .headertelephon .phoneicon:before {
   content: '';
      width: 22px;
      height: 22px;
      background-size: 22px;
      background-image: url(/wp-includes/images/callback_hover.svg);
      background-repeat: no-repeat;
      margin-right: 7px;
      margin-top: 6px;
      display: inline-flex;
  }
  body .logo img{
      max-height: 50px;
  }
  body {
      background-color: #fff!important;
  }
  body h1, body h2, body h3, body h4, body h5, body h6, body p, body .section-title, body .section-subtitle, body .projects-tagline, body .testimonials .item-box p {
      color: #383738;}
  .etc_button {
      display: flex;
      gap: 15px;}
  .etc_button a {color: #FFFFFF;
      border: solid 1px #383738;
      border-radius: 100px;
      font-size: 16px;
      font-weight: 600;
      background-color: #383738;
      padding: 5px 25px;}
  .etc_button .bg_layout_light {color: #383738;
      background-color: transparent;}
  .etc_blurb_content {      margin: 20px 0 0 0;
    display: flex;
          gap: 15px;
      align-items: center;}
      .nopadding>.elementor-column-gap-default>.elementor-column>.elementor-element-populated {  padding: 0px;}
  .etc_blurb_content img {    width: 25px;}
  .etc_blurb_description {font-weight: 600;}
  body .main-footer .bottom-footer p a:hover {
      color: #72aee6;
  }
  body .main-footer .bottom-footer .container .social li:hover, body .butn-dark a {
      background: #72aee6;
  }
  body input[type="password"], body input[type="email"], body input[type="text"], body input[type="file"], body textarea {
      border: 1px solid #ccc;
      border-radius: 12px;
      padding:10px;
  }
  .formstyle { width: fit-content; margin: 0 auto;}
  .services {    
      display: flex;
      flex-direction: column;
      display: -ms-flexbox;
  }
  .services h3 {
      color: #FFFFFF !important;
  }
  .servicesin {
      display: -ms-flexbox;
      justify-content: center;
      display: flex;
      flex-wrap: wrap;
      width: 100%;
      gap: 30px;
      margin-top: 30px;
  }
  .servicesin a {
  min-width:24%;       
     border-radius: 10px;display:block;
          position: relative;
          cursor:pointer;
              overflow: hidden;
  }
  .servicesin .block {
  font-weight: 600;
      font-size: 20px; padding: 30px;
      color: #383738;
          background-size: 150%;
          min-height: 290px;
          background-repeat:no-repeat;
              background-position: center center;}
  .block.tilebathroom{    background-image: url(/wp-includes/images/tile_bathroom.webp);}
  .block.prefabbathroom{    background-image: url(/wp-includes/images/prefab_bathroom.webp);}
  .block.wallpanelbathroom{    background-image: url(/wp-includes/images/wall_panel_bathroom.webp);}
  .block.walk-intub{    background-image: url(/wp-includes/images/walk_in_tub.webp);}
  
  .servicesin{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:50px;
    align-items:stretch; 
  }
  .servicesin a{
    display:block;
    height:100%;
    text-decoration:none;
  }
  
  .servicesin .block{
    position:relative;
    overflow:hidden;
    isolation:isolate;
  
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    text-align:left;
    height:100%;                 
    min-height:340px;            
    padding:36px 28px 28px 34px;
    border-radius:14px;
    background-repeat:no-repeat;
    background-size:cover;       
    background-position:right center; 
    color:#ffffff!important;
    font-weight:800;
    font-size:clamp(30px, 2.6vw, 44px);
    line-height:1.02;
    letter-spacing:-0.7px;
    text-shadow:0 8px 30px rgba(0,0,0,.55);
    transition:none;
    transform:none;
  }
  .servicesin .block::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    background:linear-gradient(
      90deg,
      rgba(0,0,0,.86) 0%,
      rgba(0,0,0,.70) 42%,
      rgba(0,0,0,.28) 66%,
      rgba(0,0,0,0.00) 84%
    );
  }
  .servicesin .block > *{
    position:relative;
    z-index:1;
  }
  .servicesin .block .block__sub{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    margin-top:14px;
    max-width:32ch;
    font-weight:500;
    font-size:clamp(14px, 1.1vw, 18px);
    line-height:1.35;
    letter-spacing:-0.1px;
    color:rgba(255,255,255,.88);
    text-shadow:0 6px 22px rgba(0,0,0,.55);
  }
  
  @media (min-width:1100px){
    .servicesin .block{
      background-size:cover;
      background-position:right center;
    }
  }
  
  @media (max-width: 1100px){
    .servicesin{
      grid-template-columns:repeat(2, minmax(0, 1fr));
    }
  }
  
  @media (max-width: 900px){
    .servicesin{
      grid-template-columns:2fr;
    }
  }
  
  @media (max-width: 480px){
    .servicesin .block{
      min-height:270px;
      padding:24px 18px 18px 22px;
      font-size:clamp(24px, 8vw, 36px);
      letter-spacing:-0.5px;
      background-size:cover;
      background-position:right center;
      /*padding-right:110px;*/
    }
  
    .servicesin .block::before{
      background:linear-gradient(
        90deg,
        rgba(0,0,0,.88) 0%,
        rgba(0,0,0,.72) 52%,
        rgba(0,0,0,.22) 78%,
        rgba(0,0,0,0.00) 92%
      );
    }
  
    .servicesin .block .block__sub{
      margin-top:10px;
      max-width:34ch;
      font-size:15px;
      -webkit-line-clamp:3;
      display: none;
    }
  }
  /**стили для лендинга */
  #wpcf7-f448-p17-o1.wpcf7.js {
      padding: 0;
  }
  .cf7mls-btns .cf7mls_next.action-button, .cf7mls-btns .cf7mls_back.action-button {
      margin: 0px!important;
      border-radius: 999px !important;
  }
  .wpcf7-form .fieldset-cf7mls .cf7mls-btns {
      min-height: 50px!important;
  }
  
  .separator.my-4 {
       margin-top: 0px!important;
      margin-bottom: 10px !important;
  }
  .fieldset-cf7mls-wrapper .secure > p {    margin-bottom: 0;}
  .outercol.forminstshower.rightcol > p {    margin-bottom: 0;}
  fieldset.fieldset-cf7mls > p {display:none;}
  .navbar.navbar-expand-md .collapse.navbar-collapse {flex-grow: 0;}
  
  .shagimg{
      width:100%;
      height:auto;
      display:block;
      border-radius:8px!important; 
    }
    .img_pc .shagimg{ aspect-ratio: 1024 / 683; }
    .img_mobile .shagimg{ aspect-ratio: 767 / 403; }
  
  .titleform {    
      font-size: 36px;
      line-height: 1.3;
      font-weight: 600;
      text-align: center;
      padding: 40px 10% 20px 10%;
      color: #383738;
  }
  fieldset.fieldset-cf7mls {	
      display: grid;
      grid-template-areas:
          "first secon secon secon"
          "first thi thi thi"
          "first five five five";
      gap: 10px;
          grid-template-columns: 3fr 1fr 1fr 1fr; 
          /*grid-template-rows: 450px 50px 100px;*/
  }
  .outercol.leftcol {
          grid-area: first;
              margin-right: 10px;
  }
  .outercol.rightcol {
      grid-area: secon;
      align-items: center;
  }
  /*.outercol.secure {
          grid-area: for;
  }*/
  /*fieldset.fieldset-cf7mls[data-cf7mls-order="0"] {   
      display: flex;
      flex-direction: column;}*/
  .fieldset-cf7mls > .outerfirst.forminstshower {
      order: 1;
      text-align: center;
  }
  .fieldset-cf7mls > .outerfirst.forminstshower p {	
      text-align: center;
  }
  
  .wpcf7-list-item {
      margin: 0 10px 0 10px;
  }
  .cf7mls-btns.cf7mls-btns-last-step {
      margin-left: 23px;
  }
  .fieldset-cf7mls > .finishbutton{
      grid-area: thi;
      
      margin-right: 23px;
  }
  form.cf7mls input.wpcf7-form-control.wpcf7-submit {
      margin: 0px!important;
  }
  .finishbutton input {}
  .fieldset-cf7mls > .secure {
          order: 4;
           grid-area: five;
               display: flex;
      flex-direction: column;
      justify-content: end;
      padding: 15px;}
  .fieldset-cf7mls > .cf7mls-btns {
          order: 2;
          gap: 15px;
          grid-area: thi;}
          
  fieldset.fieldset-cf7mls[data-cf7mls-order="1"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="2"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="3"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="4"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="5"] > .cf7mls-btns {   
      display: flex;
      justify-content: space-between;
   /*   padding: 0 12.5%;*/
      padding: 0 23px;
  }
  .outercol.forminstshower.rightcol {    
      flex-direction: column;
      display: flex;
      gap: 15px;
  }
  .outercol.forminstshower.rightcol p {
      text-align:center;
  }
  .outercol.forminstshower.rightcol .wpcf7-form-control-wrap {
          width: 100%;
  }
  
  @media(min-width:1450px){
      .outercol.leftcol img {    
        height: 600px;
          width: 100%; 
          object-fit: cover;
      }
  }
  .progressbar {  
      max-width: 226px;
    position: relative;
      width: 100%;
      height: 6px;
      background: #f5fafb;
      border-radius: 10px;
      opacity: 1;
      -webkit-transition: all .4s linear;
      transition: all .4s linear;
      -webkit-box-shadow: inset 1px -1px 4px rgba(0, 0, 0, .1);
      box-shadow: inset 1px -1px 4px rgba(0, 0, 0, .1);
  }
  .stepProgress__value {    
      width: 30%;
      background: #72aee6 !important;
      height: 6px;
      border-radius: 10px;
  }
  
  .secure__lock {
      width: 14px;
      height: 16px;
      padding: 1px;
      position: relative;
      top: -2px;
      margin-right: 2px;}
  .separator {
      width: 100%;
      height: 1px;
  }
  .background-lightGrey2 {
      background-color: #dee5eb;
  }
  .secure {
      display: block;
      font-size: 15px;
      line-height: 1.35;
      text-align: center;
  }
  .fieldset-cf7mls-wrapper {
      background: #fff;
      padding: 20px 0px 0px 0px;
      border-radius: 8px;
  }
  
  .fieldset-cf7mls-wrapper p {
      color:#383738;
  }
  .fieldset-cf7mls-wrapper .shagtitle {
      color: #383738;
      font-size: 36px;
      line-height: 1.3;
      font-weight: 400;
      margin-bottom: 20px;
      font-family: 'Oswald', sans-serif !important;
      letter-spacing: 3px;
      text-transform: uppercase;
  }
  
  .fieldset-cf7mls-wrapper .shagsubtitle {
      color:#383738;
      font-size: 26px;
      margin-bottom: 40px;
      
  }
  .fieldset-cf7mls-wrapper .secure p {
      font-size: 15px;
      color: #71768b;
          font-weight: 300;
              font-family: Roboto, sans-serif;
  }
  .fieldset-cf7mls-wrapper p:first-child {
          text-align: center;
  }
  .forminstshower input[type="password"], .forminstshower input[type="email"], .forminstshower input[type="text"], .forminstshower input[type="file"], .forminstshower textarea {
      border: 1px solid #252525;
      padding: 10px;
      border-radius: 8px;
          max-width: 350px;
      width: 350px;
  }
  .forminstshower .wpcf7-form-control .wpcf7-list-item-label {	-webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 8px;
      border-radius: 8px;
      padding: 8px;
      -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
      box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
          border-top: 8px solid #e5edf4;
  }
  .outercol.forminstshower .wpcf7-form-control label {
      width: 100%;
  }	
  .outercol.forminstshower .wpcf7-form-control .wpcf7-list-item-label {
      width: 350px;
  }
  .forminstshower .wpcf7-form-control .wpcf7-list-item-label:hover, .forminstshower input[type="radio"]:checked + .wpcf7-list-item-label {
      border-color:  #72aee6;
  }
  .forminstshower input[type="checkbox"], .forminstshower input[type="radio"] {
      z-index: -1;
      opacity: 0;
      position: absolute;
  }
  .wpcf7-list-item-label {
      display: block;
      position: relative;
      cursor: pointer;
      text-align: center;
      font-size: 1.125rem;color:#383738;
      margin-bottom: 10px;
  }
  .outercol .wpcf7-list-item-label {
      display: inline-block;
  }
  .outercol .imgdescr {
      display: flex;
      flex-direction: column;
  }
  .forminstshower .wpcf7-form-control .wpcf7-list-item-label::before {
      content: " ";
      display: inline-flex;  
      width: 15px;
      height: 15px;
      margin-right: 10px;
      border-radius: 50%;
      border: 2px solid #d1d7dc;
      background: #fff;
      cursor: pointer;
      -webkit-transition: all .3s ease-out;
      transition: all .3s ease-out;
  }
  .forminstshower.outercol input[type="radio"]:checked + .wpcf7-list-item-label:before {
      border: 6px solid #72aee6;
      align-items: center;
      display: inline-block;
      width: auto;
      height: auto;
  }
  
  .forminstshower.outerfirst .wpcf7-form-control .wpcf7-list-item-label::before {
      background-image: url(/wp-includes/images/calc/ground-floor.svg);
      content: "";
      background-position: center center;
      background-repeat: no-repeat;
      top: 2px;
      width: 100%;
      height: 120px;
      margin-right: 0px;
      min-width: 120px;
      border-radius: 20px;
      border: none; 
      display: block;
      filter: grayscale(0);
      -webkit-transition: all .3s ease-in-out;
      transition: all .3s ease-in-out;
  }
  .forminstshower.outerfirst .wpcf7-form-control .wpcf7-list-item:first-child .wpcf7-list-item-label::before {
      background-image: url(/wp-includes/images/calc/ground-floor.svg);
  }
  .forminstshower.outerfirst .wpcf7-form-control .wpcf7-list-item:nth-child(2) .wpcf7-list-item-label::before {
      background-image: url(/wp-includes/images/calc/upstairs.svg);
  }
  .forminstshower.outerfirst .wpcf7-form-control .wpcf7-list-item:nth-child(3) .wpcf7-list-item-label::before {
      background-image: url(/wp-includes/images/calc/basement.svg);
  }
  .forminstshower.outerfirst .wpcf7-form-control .wpcf7-list-item:nth-child(4) .wpcf7-list-item-label::before {
      background-image: url(/wp-includes/images/calc/other.svg);
  }
  .wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
      content: " ";
  }
  .cf7mls-btns {    
      display: flex;
      justify-content: center;}
  .cf7mls-btns button.action-button, .finishbutton input {
      font-family: 'Oswald', sans-serif;
      text-transform: uppercase;
      font-weight: 300!important;
      letter-spacing: 2px;
      background: #72aee6;
      color: #fff;
      padding: 0px 24px;
      margin: 0;
      position: relative;
      font-size: 15px;
      border-radius: 0!important;
      height: 50px;
  }
  body input[type="submit"], body input[type="reset"], body input[type="button"], body button {
      background: #72aee6;
  }
  body .wpcf7 form .wpcf7-response-output{    
      /*position: absolute;*/
      top: 46%;
      background-color: #fff;
      left: 40%;
  /*	display:none!important;*/
  }
  body .wpcf7 form.sent .wpcf7-response-output {
      position: absolute;
      top: -60px;
      background-color: #fff;
      width: 100%;
      left: -15px;
      height: 100%;
      display: flex!important;
      justify-content: center;
      align-items: center;
          text-align: center;
      font-size: 30px;
      color: #383738;
       border-color: #72aee6;
       border-radius: 10px;
  }
  .main-footer-bg .main-footer-bg-overlay  {    background-image: linear-gradient(0deg, #f7f8fa 3%, rgba(255, 255, 255, 0.5) 40%, rgba(255, 255, 255, 0.85) 100%) !important;}
  .progress-wrap svg.progress-circle path {
      stroke: #72aee6 !important;
  }
  .progress-wrap::after {
      color: #72aee6 !important;
  }
  .elementor-widget-accordion .elementor-accordion-title {
      display: inline !important;
  }
  body #gallery-1 {
      padding: 10px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
  }
  body #gallery-1 img {
      border: 2px solid #fff;
  }
  body #gallery-1 >br {display:none;}
  body #gallery-1.gallery-columns-6 .gallery-item {
              width: calc(20% - 8px);
                      max-width: 20%;
  margin-top: 0px;
  }
  .elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title {color: #333333!important;}
  .elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title {
      color: #72aee6!important;
  }
  .main-footer .call-action .contact-info > div, .main-footer .call-action .contact-info > p {
      font-weight: 600;
      font-family: 'Didact Gothic', sans-serif;
  }
  
      body nav.navbar.nav-scroll {
          box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.5);
      }
      .columns {    display: flex;
          gап: 8px;
      }
      .column p {margin:0;}
      .maxwidth, .maxwidth span {width:100%;}
      .biginput {max-height: 120px;}
      .pum-content .wpcf7-not-valid-tip {
          position: absolute;
          right: 5px;
              top: 0;
      }
      .wpcf7 form.invalid .wpcf7-response-output {position: absolute;
      /* right: 5px; */
      left: 35px;
      top: 20px;
      /* color: red; */
      color: #dc3232;
      font-size: 1em;
      font-weight: normal;
      /* font-weight: 400; */
      border-color: transparent !important;
      background-color: transparent;}
      .pum-content.popmake-content p {
          color:#fff;
          text-align: center;
      }
      .pum-content.popmake-content .wpcf7-spinner {   
          position: absolute;
          left: calc(50% - 36px);
          bottom: 0;
      }
      #popmake-1548.pum-container.popmake .pum-title {
          text-align: center;
          font-weight:700;}
      .pum-content.popmake-content .secure p {    color: rgba(255, 255, 255, 0.47);}
      .pum-content.popmake-content .wpcf7-submit {    
          border-radius: 12px;
          width: 100%;
          color: #fff;
          font-weight: 700;
          letter-spacing: 1px;
          padding: 5px;
          margin-top: 15px;
      }
  /*styling*/
  /*
  html.pum-open.pum-open-overlay.pum-open-scrollable .pum-overlay.pum-active{
          overflow-y: hidden !important;
  }*/
  html.pum-open,
  html.pum-open body{ overflow: hidden !important; }
  
  /* Адаптив */
  
  .rh-footer__inner{/*max-width:1200px;*/margin:0 auto;padding:48px calc( 5vw + 10px );}
  .rh-footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;place-items: center;}
  
  .rh-sep{opacity:.5}
  
  @media(max-width:1200px){
      .fieldset-cf7mls-wrapper {
      display: flex;
      justify-content: center;
  }
      .fieldset-cf7mls-wrapper .fieldset-cf7mls {
  
      max-width: 767px;
      }
      .forminstshower input[type="password"], .forminstshower input[type="email"], .forminstshower input[type="text"], .forminstshower input[type="file"], .forminstshower textarea {
          max-width: 100%;
          width: 100%;
      }
      .outercol.leftcol {
          margin-right: 0px;
      }
      .outercol.forminstshower.rightcol label, .outercol.forminstshower.rightcol p {
          display: block;
          width: 100%;
      }
      .outercol.forminstshower.rightcol br {
          display: none;
      }
      .cf7mls-btns.cf7mls-btns-last-step {
          margin-left: 1px;
      }
      .fieldset-cf7mls > .finishbutton {
          margin-right: 1px;
      }
      fieldset.fieldset-cf7mls[data-cf7mls-order="1"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="2"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="3"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="4"] > .cf7mls-btns, fieldset.fieldset-cf7mls[data-cf7mls-order="5"] > .cf7mls-btns {
      padding: 0 1px;
  }
  .fieldset-cf7mls > .secure {
      padding: 10px 1px;
          margin: 0 !important;
  }
  .fieldset-cf7mls-wrapper .shagtitle {
          font-size: 23px;
      }
      .titleform {
          font-size: 23px;
          padding: 10px 10% 10px 10%;
      }
      .forminstshower .wpcf7-form-control .wpcf7-list-item-label {
          padding: 12px 10px 10px;
      }
      .outercol.forminstshower .wpcf7-form-control .wpcf7-list-item-label {
          width: 100%;
      }
      .img_mobile {display:flex;}
      .img_pc {display:none;}
      form.cf7mls .finishbutton input.wpcf7-form-control.wpcf7-submit {
          padding: 13px 9px;
                  width: 100px;
      }
      fieldset.fieldset-cf7mls {	
          grid-template-areas:
              "first first first first"
              "secon secon secon secon"
              "thi thi thi thi"
              "five five five five";
          }
      .outercol.leftcol {
              max-height: 400px;
      }}
  @media(max-width:1024px){
  .rh-footer__top {
  grid-template-columns: 1fr 2fr;}
  }
  @media screen and (max-width: 991px) {
          .rh-footer__top {
          grid-template-columns: 0.7fr 2fr;
      }
  
      .navbar-toggler .ti-menu:before {
          content: "\e646";
      }
      .navbar-toggler[aria-expanded="false"] .ti-menu:before {
          content: "\e68e";
      }
      
      .navbar .container, .nav-scroll .logo-wrapper {
          background: transparent !important;
      }
      .headertext {
      font-size: 14px;}
  }
  @media(max-width:768px) {
      .rh-footer__top {
          grid-template-columns: 1fr;
      }
      .rh-footer .logo-wrapper, .rh-social {
      justify-content: center;}
      .rh-sep {
      opacity: 0;
  }
  .rh-footer .rh-copy >span:first-child{    width: 100%;}
  .rh-footer .rh-copy {
       text-align: center;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
  }
  .servicesin {
     width: 100%;}
     .elementor-section-wrap > section.elementor-section.elementor-section-boxed > .elementor-container {
   padding: 20px; 
  }
  nav.navbar.navbar-expand-md > .container {
      padding: 0 32px;
      display: none;
  }
  .rh-footer__inner {
          padding: 32px 32px 20px 32px;
      }
      body.logged-in nav.navbar {
       top: 0px!important;
      }
      #navbar {position:absolute;   
      top: 110px;
      left: 0;
      width: 100%;
      background: #f7f8fa !important;
      color: #fff;}
      .dropdown-menu, .sub-menu, .dropdown-menu .dropdown-item, .sub-menu .dropdown-item {
          background: #f7f8fa !important;
      }
      .dropdown-menu .dropdown-item, .sub-menu .dropdown-item {
          padding: 0!important;
      }
      .dropdown-menu .dropdown-item a {
          font-family: 'Oswald', sans-serif;
      text-transform: uppercase;
      font-weight: 300;}
      .headerbutton, .headermenu #menu-onepage-menu, body .headertelephon {display:none;}
      .headertext {
      font-size: 22px;}
      .navbar button:active, .navbar button:focus, .navbar button:hover {
          background: transparent!important;
          border-color: transparent !important;
      }
      .navbar .navbar-toggler-icon {
          color: #383738!important;
      }
      .header_mobile {display:flex;        
          margin-top: 0px;
          width: 100%;}
      .header_mobile > div {
          width: 50%;
          justify-content: center;
          display: flex;
      }
      .header_mobile > div > a {
          letter-spacing: 4.2px;
          font-size: 16px;
          font-weight: 700;
          padding: 16px 0;
      }
      .tel_mob {background: #fff; border: 1px solid #dee5eb;
          color: #383738;}
      .getaquote_mob {background: #72aee6; color: #fff;}
      body .navbar-toggler {
          display:flex!important;
      }
  }
  @media(min-width:768px) {
      body .navbar-expand-md .navbar-collapse {
          display:  none !important;
      }
  }
  @media(max-width:767px) {
    .servicesin a.service-card{
        height: clamp(110px, 34vw, 160px);
      }
      body #gallery-1.gallery-columns-6 .gallery-item {
          width: calc(50% - 5px);
          margin-top: 0px;
          max-width: 50%;
      }
      body .navbar {background: transparent;  height: auto;}
      body .navbar.navbar-expand-md .container .logo-wrapper {
                  float: none;
                    width: auto;
          display: flex;
      /*	padding-bottom: 9px;*/
          margin-top: 0px;
      }
      body .logo img {
          max-height: 30px;
      }
      body .navbar .logo {
          width: auto;
      }
      /*.fieldset-cf7mls-wrapper {
          padding: 10px;
      }*/
      
      .navbar .logo-wrapper {
          justify-content: center;
          margin-top: 15px;
      }
  /*
      .headertext {
          justify-content: center;
          display: flex;
      }*/
      .headertelephon {
          justify-content: center;
          max-height: 30px;
      }
      .navbar.navbar-expand-md .container {    justify-content: space-between;}
      
      
      .nopadding {
              margin-bottom:  15px;
      }
  }
  @media(max-width:640px){
    .rh-footer__cols{grid-template-columns:1fr}
    .rh-btn{height:42px}
  }
  .rh-social{display:flex;gap:20%;list-style:none;margin:16px 0 0;padding-left: 0rem;width: 200px;}
  @media(max-width:520px) {
	  .rh-footer__top {
   /* display: block;*/        place-items: stretch;
        justify-items: stretch;
	  }
      .rh-footer__cols {
      flex-wrap: wrap;
      gap: 20px;}
      .rh-footer__col {
      width: 100%;
          text-align: center;        display: flex;
        flex-wrap: wrap;
        justify-content: center;        gap: 15px;}
    .rh-footer__col div, .rh-footer__col h4{ justify-content: center;
    display: flex;
    flex-wrap: wrap;
  flex-grow: 1;}
      .rh-footer__col a {justify-self: center;  }       .rh-footer__col a.vsplcontactform { display: inline-flex;
        margin-left: auto;
        margin-right: auto;
        align-self: center;}
   
      .servicesin a {width:100%;}
      .rh-social {    width: auto;gap: 40px;}
  }
  @media(max-width:400px) {
      .etc_button a {
      padding: 5px 15px;
      }
  }
  
  /* === 9. Footer (new .rh-footer) ======================================= */
  
  .rh-footer{
    --rh-muted:#9aa3b2;
    --rh-brand:#34d399;
    --rh-ring:rgba(255,255,255,.15);
    background:#0b0f1a;
    color:#fff;
  }
  .rh-footer a{color:#fff;text-decoration:none}
  .rh-footer a:hover{opacity:.9;}
  .rh-footer__brand{display:flex;flex-direction:column;gap:16px}
  .rh-footer__logo{font-weight:700;font-size:22px}
  
  /* Соцсети */
  .rh-ic{width:40px;height:40px;display:inline-flex;border-radius:999px;align-items:center;justify-content:center;background:var(--rh-ring)}
  
  /* Кнопки */
  .rh-btn{width: 200px;display:flex;align-items:center;justify-content:center;height:44px;padding:0 18px;border-radius:999px;border:1px solid transparent;transition:.2s}
  .rh-btn--primary{background:var(--rh-brand);color:#0b2318;font-weight:700}
  .rh-btn--ghost{border-color:var(--rh-ring)}
  .vsplcontactform.pum-trigger.rh-btn{cursor:pointer;background: #72aee6;}
  
  /* Колонки */
  .rh-footer__cols{display: flex; justify-content: space-between;}
  .rh-footer__col{min-width:0}
  .rh-footer__title{font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--rh-muted);margin:6px 0 12px}
  .rh-list{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-family:Roboto, sans-serif;}
  
  /* Контакты — перенос строк для tel/mail + отступ у кнопки */
  .rh-address a{display:block;margin-bottom:6px}
  .rh-address div {justify-content: center;
  display: flex;}
  
  /* Низ футера */
  .rh-footer__bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:36px;padding-top:20px}
  .rh-copy{display:flex;gap:10px;flex-wrap:wrap;color:var(--rh-muted);font-size:14px}
  
  /* === Footer parity tweaks vs rosslehomes.com =========================== */
  .rh-footer .rh-footer__title{
    font-size:13px; letter-spacing:.06em; text-transform:uppercase;
    margin:4px 0 10px; opacity:.9
  }
  .rh-footer .rh-list a{display:inline-block; line-height:1.5; opacity:.95}
  .rh-footer .rh-list a:hover{opacity:1; text-decoration:underline}
  .rh-footer .rh-btn--primary{min-width:170px; height:46px; font-weight:700; box-shadow:0 0 0 0 rgba(0,0,0,0)}
  .rh-footer .rh-btn--primary:hover{filter:saturate(1.1) brightness(1.02)}
  .rh-footer .rh-copy{font-size:13px; opacity:.9}
  .rh-footer .rh-copy a{opacity:.95}
  .rh-footer .rh-copy a:hover{text-decoration:underline; opacity:1}
  
  /* Соцкнопки «кружочки» */
  .rh-footer .rh-social .rh-ic{width:40px; height:40px; border-radius:50%; background:rgba(255,255,255,.12)}
  .rh-footer .rh-social .rh-ic:hover{background:rgba(255,255,255,.18)}
  
  /* --- Hotfix: скрыть наследие старого футера, чтобы не перекрывал контент --- */
  .main-footer,
  .main-footer-bg,
  .main-footer-bg *{
    display:none!important;
    position:static!important;
    height:auto!important;
    width:auto!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .rh-footer{position:relative; z-index:0; clear:both}
  .rh-footer__inner{margin-top:0!important}