.elementor-1334 .elementor-element.elementor-element-64fe20c{--display:flex;--min-height:48vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--overlay-opacity:0.08;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1334 .elementor-element.elementor-element-64fe20c:not(.elementor-motion-effects-element-type-background), .elementor-1334 .elementor-element.elementor-element-64fe20c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1334 .elementor-element.elementor-element-64fe20c::before, .elementor-1334 .elementor-element.elementor-element-64fe20c > .elementor-background-video-container::before, .elementor-1334 .elementor-element.elementor-element-64fe20c > .e-con-inner > .elementor-background-video-container::before, .elementor-1334 .elementor-element.elementor-element-64fe20c > .elementor-background-slideshow::before, .elementor-1334 .elementor-element.elementor-element-64fe20c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1334 .elementor-element.elementor-element-64fe20c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-54d354f );--background-overlay:'';}.elementor-1334 .elementor-element.elementor-element-64fe20c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1334 .elementor-element.elementor-element-94af5cb{--display:flex;--min-height:0vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--overlay-opacity:0.32;--overlay-mix-blend-mode:darken;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1334 .elementor-element.elementor-element-94af5cb:not(.elementor-motion-effects-element-type-background), .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;background-image:url("https://rmcontractingny.com/wp-content/uploads/2026/01/7Y3A3592_Original.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1334 .elementor-element.elementor-element-94af5cb::before, .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-background-video-container::before, .elementor-1334 .elementor-element.elementor-element-94af5cb > .e-con-inner > .elementor-background-video-container::before, .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-background-slideshow::before, .elementor-1334 .elementor-element.elementor-element-94af5cb > .e-con-inner > .elementor-background-slideshow::before, .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#0F0F0F4D;--background-overlay:'';}.elementor-1334 .elementor-element.elementor-element-fca2595{--display:flex;--min-height:38vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1334 .elementor-element.elementor-element-ed3424e{--display:flex;--min-height:0vh;--justify-content:center;}.elementor-1334 .elementor-element.elementor-element-9ffc015 .elementor-heading-title{font-size:clamp(2.6rem, 5.2vw, 6rem);font-weight:400;color:#FFFFFF;}.elementor-1334 .elementor-element.elementor-element-5166b6e{--display:flex;--min-height:0vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-1334 .elementor-element.elementor-element-9e97f95{--display:flex;--min-height:21vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0;--padding-bottom:0;--padding-left:var(--site-gutter);--padding-right:var(--site-gutter);}.elementor-1334 .elementor-element.elementor-element-60b9ece{padding:0px 0px 0px 0px;columns:1;color:#5F6368;}.elementor-1334 .elementor-element.elementor-element-3193f0c{--spacer-size:55px;}.elementor-1334 .elementor-element.elementor-element-ae344c0{--display:flex;}.elementor-1334 .elementor-element.elementor-element-7bc3cf2{--divider-border-style:solid;--divider-color:var( --e-global-color-dde575a );--divider-border-width:1px;}.elementor-1334 .elementor-element.elementor-element-7bc3cf2 .elementor-divider-separator{width:100%;}.elementor-1334 .elementor-element.elementor-element-7bc3cf2 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1334 .elementor-element.elementor-element-10be02e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-1334 .elementor-element.elementor-element-8b22bf8{--display:flex;}.elementor-1334 .elementor-element.elementor-element-bf74c9a .elementor-heading-title{font-weight:normal;}.elementor-1334 .elementor-element.elementor-element-fee6598{--spacer-size:50px;}.elementor-1334 .elementor-element.elementor-element-18c80b3 a{color:#000000;}.elementor-1334 .elementor-element.elementor-element-18c80b3 a:hover, .elementor-1334 .elementor-element.elementor-element-18c80b3 a:focus{color:var( --e-global-color-07fc1a6 );}.elementor-1334 .elementor-element.elementor-element-9746fb4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1334 .elementor-element.elementor-element-ba29d13{--display:flex;}@media(min-width:768px){.elementor-1334 .elementor-element.elementor-element-64fe20c{--width:100%;}.elementor-1334 .elementor-element.elementor-element-ed3424e{--width:54%;}.elementor-1334 .elementor-element.elementor-element-9e97f95{--width:52%;}.elementor-1334 .elementor-element.elementor-element-8b22bf8{--width:50%;}.elementor-1334 .elementor-element.elementor-element-9746fb4{--width:50%;}}@media(max-width:1024px){.elementor-1334 .elementor-element.elementor-element-94af5cb:not(.elementor-motion-effects-element-type-background), .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center left;background-size:cover;}.elementor-1334 .elementor-element.elementor-element-9e97f95{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-1334 .elementor-element.elementor-element-3193f0c{--spacer-size:0px;}}@media(max-width:767px){.elementor-1334 .elementor-element.elementor-element-94af5cb:not(.elementor-motion-effects-element-type-background), .elementor-1334 .elementor-element.elementor-element-94af5cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center left;background-repeat:no-repeat;background-size:cover;}.elementor-1334 .elementor-element.elementor-element-fca2595{--min-height:61vh;}.elementor-1334 .elementor-element.elementor-element-ed3424e{--min-height:0vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-1334 .elementor-element.elementor-element-5166b6e{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-1334 .elementor-element.elementor-element-9e97f95{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1334 .elementor-element.elementor-element-60b9ece{padding:0px 0px 25px 0px;}.elementor-1334 .elementor-element.elementor-element-3193f0c{--spacer-size:0px;}}/* Start custom CSS for container, class: .elementor-element-64fe20c */.hero-pin{
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  z-index: 1;
}

/* This creates the “cover the hero” effect without hiding your content */
.reveal-section{
  position: relative;
  z-index: 10;
  background: #fff;

  /* overlap the hero */
  margin-top: -100vh;

  /* IMPORTANT: do NOT pad the content down */
  padding-top: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-bf74c9a */.services-title::after{
  content:"";
  display:block;
  width:36px;
  height:2px;
  background:#FF4D1C;
  margin-top:14px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-10be02e *//* RM – Anchor animation only (no typography) */
.rm-anchor-h .elementor-heading-title,
.rm-anchor-h h1, .rm-anchor-h h2, .rm-anchor-h h3, .rm-anchor-h h4, .rm-anchor-h h5, .rm-anchor-h h6{
  position: relative;
  display: block;
  overflow: hidden;
  padding-left: 18px; /* space for bar (remove if you want no offset) */
}

.rm-anchor-bar{
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 4px;
  height: 0.9em;
  background: #FF4D1C;
  border-radius: 2px;
  transform-origin: top;
  transform: scaleY(0);
  pointer-events: none;
}

.rm-anchor-inner{
  display: inline-block;
  will-change: transform;
}

.rm-anchor-p{
  overflow: hidden;
}

.rm-anchor-p-inner{
  display: inline-block;
  will-change: transform, opacity;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5166b6e *//* ================================
   PROCESS / SERVICES (TIMELINE UI)
   Uses your classes:
   .process-services-list
   .process-service-item
================================== */

.process-services-list{
  position: relative;
  padding-left: 44px; /* room for the rail + dot */
}

/* Left vertical rail (light) */
.process-services-list::before{
  content:"";
  position:absolute;
  left: 14px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: rgba(0,0,0,0.12);
  border-radius: 2px;
}

/* Progress rail (orange) – animated via GSAP by scaling */
.process-services-list::after{
  content:"";
  position:absolute;
  left: 14px;
  top: 6px;
  height: calc(100% - 12px);
  width: 2px;
  background: #FF4D1C;
  border-radius: 2px;
  transform-origin: top;
  transform: scaleY(0);
  will-change: transform;
}

/* Each service row */
.process-service-item{
  position: relative;
  padding: 22px 0 22px 0;
  cursor: default;
}

/* Divider under each item */
.process-service-item{
  border-bottom: 1px solid rgba(0,0,0,0.10);
}
.process-service-item:last-child{
  border-bottom: 0;
}

/* Make sure the text stays above any decorative lines */
.process-service-item > *{
  position: relative;
  z-index: 2;
}

/* The dot next to each item */
.process-service-item::before{
  content:"";
  position:absolute;
  left: -36px;           /* aligns dot near the rail */
  top: 50%;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: rgba(0,0,0,0.18);
  transform: translateY(-50%);
}

/* Active dot */
.process-service-item.is-active::before{
  background: #FF4D1C;
  box-shadow: 0 0 0 8px rgba(255,77,28,0.12);
}

/* Active underline (BELOW text, not through it) */
.process-service-item::after{
  content:"";
  position:absolute;
  left: 0;
  right: 0;
  bottom: -1px;          /* sits on the divider line */
  height: 2px;
  background: #FF4D1C;
  transform-origin: left;
  transform: scaleX(0);
  opacity: 0;
  z-index: 1;            /* behind the text */
}

/* When active, show the underline */
.process-service-item.is-active::after{
  opacity: 1;
}

/* Optional: subtle text emphasis when active */
.process-service-item.is-active{
  color: #111;
}

/* Mobile spacing */
@media (max-width: 767px){
  .process-services-list{ padding-left: 36px; }
  .process-service-item::before{ left: -30px; }
}/* End custom CSS */