.elementor-1612 .elementor-element.elementor-element-184ba46c{--display:flex;--min-height:100vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.6;--padding-top:0px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-184ba46c:not(.elementor-motion-effects-element-type-background), .elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#18100B;}.elementor-1612 .elementor-element.elementor-element-184ba46c::before, .elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-background-video-container::before, .elementor-1612 .elementor-element.elementor-element-184ba46c > .e-con-inner > .elementor-background-video-container::before, .elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-background-slideshow::before, .elementor-1612 .elementor-element.elementor-element-184ba46c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#18100B;--background-overlay:'';}.elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-shape-bottom .elementor-shape-fill, .elementor-1612 .elementor-element.elementor-element-184ba46c > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#000000;}.elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-shape-bottom svg, .elementor-1612 .elementor-element.elementor-element-184ba46c > .e-con-inner > .elementor-shape-bottom svg{width:calc(120% + 1.3px);height:180px;}.elementor-1612 .elementor-element.elementor-element-9077695{margin:157px 0px calc(var(--kit-widget-spacing, 0px) + -244px) 0px;padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-9077695.elementor-element{--align-self:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1612 .elementor-element.elementor-element-7e4479f{margin:237px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 60px 0px 60px;text-align:center;}.elementor-1612 .elementor-element.elementor-element-7e4479f.elementor-element{--align-self:center;}.elementor-1612 .elementor-element.elementor-element-7e4479f .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:66px;font-weight:600;color:#FFFFFF;}.elementor-1612 .elementor-element.elementor-element-6ebf951{margin:74px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1612 .elementor-element.elementor-element-6ebf951.elementor-element{--align-self:center;}.elementor-1612 .elementor-element.elementor-element-5b08c69d{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-3bf4208f{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:23px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-8eba4a1 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1612 .elementor-element.elementor-element-56fbb1d9{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-25eee367{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-5cdfd3d{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-1b8221cc{width:100%;max-width:100%;}.elementor-1612 .elementor-element.elementor-element-1b8221cc.elementor-element{--align-self:center;}.elementor-1612 .elementor-element.elementor-element-1a55b053{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1612 .elementor-element.elementor-element-79716f66{--display:flex;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-1612 .elementor-element.elementor-element-9077695.elementor-element{--align-self:center;}.elementor-1612 .elementor-element.elementor-element-7e4479f .elementor-heading-title{font-size:30px;}}/* Start custom CSS for html, class: .elementor-element-9077695 *//* Container to center everything */
.badgeWrapper {
    position: relative;
    width: 200px;
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 80px auto 20px auto;
}

/* The SVG setup (Rotates) */
.curvedTextSvg {
    position: absolute;
    width: 100%;
    height: 100%;
    animation: rotateBadge 10s linear infinite;
    fill: #FFFFFF;
    font-size: 12px; /* Reduced slightly to prevent clipping */
    font-weight: 700;
    text-transform: uppercase;
    overflow: visible; /* Prevents text from being cut off */
}

/* Alignment for the text path */
.curvedText {
    dominant-baseline: middle;
    letter-spacing: 1.5px; /* Slightly reduced spacing to fit the circle */
}

/* The Badge image (Static) */
.staticBadge {
    position: absolute;
    width: 45%; /* Slightly smaller so it doesn't overlap text */
    height: auto;
    z-index: 2;
}

/* The rotation animation */
@keyframes rotateBadge {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6ebf951 *//* Button container settings */
.alamcoBtn {
    position: relative;
    background-color: #C04A36;
    color: #FFFFFF;
    padding: 18px 35px;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    border: none;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
}

/* Ensure text stays white on hover */
.alamcoBtn:hover {
    color: #FFFFFF;
}

/* The circular background element */
.alamcoBtn::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300%;
    padding-top: 300%;
    background-color: #D15A45; /* Lighter red */
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.6s ease-out;
    z-index: -1;
}

/* Trigger the expansion on hover */
.alamcoBtn:hover::before {
    transform: translate(-50%, -50%) scale(1);
}

/* Keep text and arrow on top */
.alamcoBtn span, 
.alamcoBtn .arrowContainer {
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* Divider styling */
.alamcoBtn .divider {
    margin: 0 15px;
    opacity: 0.5;
    font-weight: 300;
}

/* Single arrow slide effect */
.alamcoBtn:hover .arrowContainer {
    transform: translateX(10px);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-184ba46c */.elementor-1612 .elementor-element.elementor-element-184ba46c > .elementor-shape-bottom .elementor-shape-fill, .elementor-1612 .elementor-element.elementor-element-184ba46c > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill {
    fill: #18100b;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3bf4208f *//* Forces the images to be equal height and cover the area */
.elementor-1612 .elementor-element.elementor-element-3bf4208f img {
    height: 350px !important; /* Adjust this to whatever height you like */
    object-fit: cover !important;
}

/* Forces the card containers to match height */
.elementor-1612 .elementor-element.elementor-element-3bf4208f .elementor-column {
    display: flex;
    flex-direction: column;
}/* End custom CSS */
/* Start custom CSS for floens-process, class: .elementor-element-78c62e8a *//* Target only the image inside the process step */
.work-process__image__inner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important; /* This forces the image to fill the circle */
    object-position: center !important; /* Keeps the main subject centered */
}

/* Ensure the inner wrapper stays a perfect circle */
.work-process__image__inner {
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important; /* Crops the image so it doesn't spill out */
    border-radius: 50% !important; /* Ensures it stays a circle */
}/* End custom CSS */
/* Start custom CSS for floens-project, class: .elementor-element-11bbe8ec *//* Force the background images to be visible by default */
.projects-three__grid .projects-three__card__bg {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    transform: none !important;
}

/* Kill the orange hue/overlay completely */
.projects-three__grid .projects-three__card__content::after, 
.projects-three__grid .projects-three__card .overlay,
.projects-three__grid .projects-three__card__bg::after {
    background-color: transparent !important;
    opacity: 0 !important;
    display: none !important;
}

/* Force the content and text to always show */
.projects-three__grid .projects-three__card__content {
    background-color: transparent !important;
    opacity: 1 !important;
}
/* Force the background to be visible at all times */
.projects-three__card .projects-three__card__bg {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    transform: scale(1) !important;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Ensure the card container itself doesn't hide anything */
.projects-three__card {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Kill any transition that attempts to hide it */
.projects-three__card__bg {
    transition: none !important;
}
/* Add a dark overlay to the cards */
.projects-three__card {
    position: relative !important;
}

.projects-three__card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* 0.5 is the darkness level. Change to 0.7 for darker, 0.3 for lighter */
    background-color: rgba(0, 0, 0, 0.5) !important; 
    pointer-events: none; /* Ensures clicks pass through to the link */
    z-index: 1;
}

/* Ensure the text content sits on top of the overlay */
.projects-three__card__content {
    position: relative !important;
    z-index: 2 !important;
}/* End custom CSS */
/* Start custom CSS for floens-gallery, class: .elementor-element-1b8221cc *//* Forces the images to be equal height and cover the area */
.elementor-1612 .elementor-element.elementor-element-1b8221cc img {
    height: 350px !important; /* Adjust this to whatever height you like */
    object-fit: cover !important;
}

/* Forces the card containers to match height */
.elementor-1612 .elementor-element.elementor-element-1b8221cc .elementor-column {
    display: flex;
    flex-direction: column;
}

/* Force the gallery section to span the full browser width */
.gallery-slide .container-fluid {
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
}

.gallery-slide__carousel {
    width: 100%;
}

/* Force the specific gallery container to be full width */
.gallery-slide .container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Ensure the carousel wrapper expands to fill the new container size */
.gallery-slide__carousel {
    width: 100% !important;
}

/* Optional: If there is extra spacing inside the gallery inner wrapper */
.gallery-slide__inner {
    width: 100% !important;
}/* End custom CSS */