.elementor-2151 .elementor-element.elementor-element-c3a56e9{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;position:relative;}.elementor-2151 .elementor-element.elementor-element-1c7ba67{width:100%;max-width:100%;}/* Start custom CSS for html, class: .elementor-element-1c7ba67 *//* ===== Animation Container ===== */
#animationContainer {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: calc(100vh - 150px);
  display: flex;
  justify-content: center;
  align-items: center;
  background: white;
  z-index: 10;
  transition: opacity 1s ease;
  pointer-events: auto; /* default on */
}

#logo {
  position: absolute;
  max-width: 400px;
  max-height: 400px;
  opacity: 1;
  transition: opacity 1s ease-out;
}

#croppedLogo {
  position: absolute;
  max-width: 200px;
  max-height: 200px;
  opacity: 0;
  transform: scale(1);
  z-index: 20;
  pointer-events: none; /* ✅ allows hover to pass through */
}

#flash {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: calc(100vh - 150px);
  background: white;
  opacity: 0;
  pointer-events: none;
  z-index: 1000;
}

.fade-out { opacity: 0 !important; }
.expand { animation: expandAnimation 2s ease-out forwards; }
.flash-effect { animation: flashAnimation 0.5s ease-out forwards; }
.final-position { animation: finalPositionAnimation 1s ease-out forwards; }

@keyframes expandAnimation {
  0% { transform: scale(1); opacity: 1; }
  100% { transform: scale(60); opacity: 1; }
}
@keyframes flashAnimation {
  0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes finalPositionAnimation {
  0% { transform: scale(60); opacity: 1; }
  100% { transform: scale(1.2); opacity: 0.8; }
}

/* ===== Radial Container ===== */
/*#radialContainer {*/
/*  position: absolute;*/
/*  top: 0; left: 0;*/
/*  width: 100vw;*/
/*  height: 100vh;*/
/*  background: #111;*/
/*  z-index: 1;*/
/*  opacity: 0;*/
/*  transition: opacity 1s ease;*/
/*}*/

#radialContainer {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #111;
    z-index: 1;
    opacity: 0;
    transition: opacity 1s ease;
    overflow: hidden;
}

svg {
  width: 100vw;
  height: calc(100vh - 150px);
  display: block;
  pointer-events: auto;
}

/* ===== Wedges ===== */
.wedge {
  cursor: pointer;
  transform-origin: center;
  transition: filter 0.35s ease, transform 0.3s ease;
  pointer-events: auto;
}
a.construction-service:hover .wedge {
    fill: #c8c9d3cc;
}
a.project-service:hover .wedge {
    fill: #c38f41;
}
a.staffing-service:hover .wedge {
    fill: #6d97cf;
}

/* ===== Circle + Boxes ===== */
circle {
  stroke: rgba(255,255,255,0.4);
  stroke-width: 0;
  fill: none;
  pointer-events: none;
}

.textbox {
  fill: none;
  stroke: white;
  stroke-width: 5;
  opacity: 0;
 }

.box-text {
  color: white;
  font-weight: 700;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden;
  overflow-y: hidden;
  height: 100%;
  width: 100%;
  padding: 0.2em 0.1em;
  line-height: 1.2;
  pointer-events: auto; /* allow mouse hover + clicks */
  background: transparent;
}/* End custom CSS */