.elementor-22878 .elementor-element.elementor-element-184a08a{--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;}.elementor-22878 .elementor-element.elementor-element-a7c95f8{--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;}.elementor-22878 .elementor-element.elementor-element-ca8c6f3{--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;}.elementor-22878 .elementor-element.elementor-element-d20b419{--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;--padding-top:3%;--padding-bottom:3%;--padding-left:1%;--padding-right:1%;}.elementor-22878 .elementor-element.elementor-element-c176225{--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;}.elementor-22878 .elementor-element.elementor-element-1100491{--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;}.elementor-22878 .elementor-element.elementor-element-5b4aac7{--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;}.elementor-22878 .elementor-element.elementor-element-a632443{--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;}@media(max-width:767px){.elementor-22878 .elementor-element.elementor-element-e2906d3 > .elementor-widget-container{padding:9px 9px 9px 9px;}}@media(min-width:768px){.elementor-22878 .elementor-element.elementor-element-184a08a{--width:100%;}.elementor-22878 .elementor-element.elementor-element-ca8c6f3{--width:94%;}.elementor-22878 .elementor-element.elementor-element-d20b419{--width:94%;}.elementor-22878 .elementor-element.elementor-element-c176225{--width:94%;}.elementor-22878 .elementor-element.elementor-element-1100491{--width:100%;}.elementor-22878 .elementor-element.elementor-element-5b4aac7{--width:94%;}}/* Start custom CSS for html, class: .elementor-element-c388e93 */.vc-project-hero{

padding:55px 32px;

background:#fff;

}

.vc-project-wrapper{

display:flex;

align-items:center;

gap:70px;

width:100%;

}

.vc-project-image{

flex:0 0 38%;

}

.vc-project-image img{

width:100%;

height:620px;

object-fit:cover;

display:block;

border-radius:10px;

border:1px solid #ececec;

box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.vc-project-content{

flex:1;

}

.vc-label{

display:inline-block;

padding:8px 16px;

background:#f8f8f8;

color:#bb1e28;

border-radius:40px;

font-size:13px;

font-weight:700;

margin-bottom:18px;

}

.vc-project-content h1{

font-size:42px;

line-height:1.35;

margin:0;

color:#0a0a0a;

font-weight:800;

}

.vc-project-content p{

margin:28px 0;

font-size:17px;

line-height:2;

color:#49494a;

max-width:720px;

}

.vc-info{

display:flex;

gap:18px;

margin-bottom:35px;

flex-wrap:wrap;

}

.vc-info div{

padding-left:22px;

border-left:2px solid #ececec;

}

.vc-info div:last-child{

border:none;

padding-left:0;

}

.vc-info small{

display:block;

font-size:13px;

color:#888;

margin-bottom:6px;

}

.vc-info strong{

font-size:16px;

color:#0a0a0a;

}

.vc-buttons{

display:flex;

gap:14px;

flex-wrap:wrap;

}

.btn-main,
.btn-second{

padding:13px 24px;

border-radius:10px;

text-decoration:none;

font-size:15px;

font-weight:700;

transition:.25s;

}

.btn-main{

background:#bb1e28;

color:#fff;

}

.btn-main:hover{

background:#981821;

color:#fff;

}

.btn-second{

background:#0a0a0a;

color:#fff;

}

.btn-second:hover{

background:#343434;

color:#fff;

}

@media(max-width:991px){

.vc-project-wrapper{

flex-direction:column;

gap:35px;

}

.vc-project-image{

width:100%;

}

.vc-project-image img{

height:auto;

max-height:650px;

}

.vc-project-content{

width:100%;

}

.vc-project-content h1{

font-size:32px;

}

.vc-info{

flex-direction:column;

gap:15px;

}

.vc-info div{

border:none;

padding:0;

}

}

@media(max-width:576px){

.vc-project-hero{

padding:40px 18px;

}

.vc-project-content h1{

font-size:28px;

}

.vc-project-content p{

font-size:15px;

}

.vc-buttons{

flex-direction:column;

}

.btn-main,
.btn-second{

text-align:center;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14e1206 */.vc-gallery{

padding:20px 5px;

background:#fff;

}

.vc-section-title{

text-align:center;

max-width:720px;

margin:0 auto 3px;

}

.vc-section-title span{

display:inline-block;

padding:7px 18px;

background:#f5f5f5;

border-radius:50px;

font-size:13px;

font-weight:700;

color:#bb1e28;

margin-bottom:16px;

}

.vc-section-title h2{

margin:0 0 15px;

font-size:36px;

font-weight:800;

color:#0a0a0a;

}

.vc-section-title p{

margin:0;

font-size:16px;

line-height:2;

color:#666;

}



.vc-gallery-grid{

grid-template-columns:1fr;

}

.gallery-item img{

height:auto;

}

.vc-section-title h2{

font-size:28px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b3b01c9 */.vc-project-specs{

padding:70px 30px;

background:#fff;

}

.vc-specs-title{

text-align:center;

max-width:720px;

margin:0 auto 45px;

}

.vc-specs-title span{

display:inline-block;

padding:7px 18px;

background:#f5f5f5;

border-radius:50px;

font-size:13px;

font-weight:700;

color:#bb1e28;

margin-bottom:16px;

}

.vc-specs-title h2{

font-size:32px;

margin:0 0 15px;

font-weight:800;

color:#0a0a0a;

}

.vc-specs-title p{

margin:0;

font-size:16px;

line-height:2;

color:#666;

}

.vc-specs-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}

.spec-item{

background:#fafafa;

border:1px solid #ececec;

border-radius:16px;

padding:22px;

transition:.3s;

}

.spec-item:hover{

border-color:#bb1e28;

transform:translateY(-3px);

box-shadow:0 10px 25px rgba(0,0,0,.06);

}

.spec-item .label{

display:block;

font-size:13px;

font-weight:700;

color:#888;

margin-bottom:10px;

}

.spec-item strong{

display:block;

font-size:18px;

font-weight:800;

color:#0a0a0a;

line-height:1.7;

}

@media(max-width:992px){

.vc-specs-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.vc-project-specs{

padding:50px 18px;

}

.vc-specs-grid{

grid-template-columns:1fr;

}

.vc-specs-title h2{

font-size:28px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3f9490c */.vc-case-study{

padding:70px 30px;

background:#fff;

}

.vc-case-container{

display:grid;

grid-template-columns:2fr 1fr;

gap:40px;

align-items:start;

max-width:1400px;

margin:auto;

}

.vc-case-label{

display:inline-block;

padding:7px 18px;

background:#f4f4f4;

border-radius:40px;

font-size:13px;

font-weight:700;

color:#bb1e28;

margin-bottom:18px;

}

.vc-case-content h2{

margin:0 0 20px;

font-size:36px;

font-weight:800;

color:#0a0a0a;

}

.vc-case-content p{

font-size:16px;

line-height:2.1;

color:#555;

margin-bottom:18px;

}

.vc-case-box{

background:#fafafa;

border:1px solid #ececec;

border-radius:18px;

padding:30px;

position:sticky;

top:30px;

}

.vc-case-box h3{

margin:0 0 22px;

font-size:22px;

font-weight:800;

color:#0a0a0a;

}

.vc-case-box ul{

padding:0;

margin:0;

list-style:none;

}

.vc-case-box li{

position:relative;

padding-right:28px;

margin-bottom:18px;

line-height:1.9;

color:#444;

font-size:15px;

}

.vc-case-box li:before{

content:"✓";

position:absolute;

right:0;

top:0;

font-weight:700;

color:#bb1e28;

}

@media(max-width:991px){

.vc-case-container{

grid-template-columns:1fr;

}

.vc-case-box{

position:relative;

top:auto;

}

}

@media(max-width:576px){

.vc-case-study{

padding:50px 18px;

}

.vc-case-content h2{

font-size:28px;

}

.vc-case-content p{

font-size:15px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-165054d */.vc-video-section{

padding:80px 30px;

background:#fafafa;

}

.vc-video-title{

max-width:760px;

margin:auto;

text-align:center;

margin-bottom:45px;

}

.vc-video-title span{

display:inline-block;

padding:7px 18px;

background:#fff;

border-radius:40px;

font-size:13px;

font-weight:700;

color:#bb1e28;

margin-bottom:16px;

}

.vc-video-title h2{

font-size:36px;

font-weight:800;

margin:0 0 18px;

color:#0a0a0a;

}

.vc-video-title p{

font-size:16px;

line-height:2;

color:#666;

margin:0;

}

.vc-video-wrapper{

max-width:1100px;

margin:auto;

overflow:hidden;

border-radius:20px;

box-shadow:0 18px 40px rgba(0,0,0,.08);

background:#000;

}

.vc-video-wrapper video{

display:block;

width:100%;

height:auto;

}

@media(max-width:768px){

.vc-video-section{

padding:60px 18px;

}

.vc-video-title h2{

font-size:28px;

}

.vc-video-title p{

font-size:15px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3608c12 */.vc-product-showcase{

padding:50px 0;

background:#fff;

}

.vc-container{

width:100% !important;

max-width:1300px !important;

margin:0 auto !important;

padding-inline:17px !important;

box-sizing:border-box;

}

.vc-product-grid{

display:grid;

grid-template-columns:420px 1fr;

gap:70px;

align-items:center;

}

.vc-product-image img{

width:100%;

display:block;

border-radius:18px;

box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.vc-badge{

display:inline-block;

padding:7px 16px;

border-radius:40px;

background:#f5f5f5;

color:#bb1e28;

font-size:13px;

font-weight:700;

margin-bottom:18px;

}

.vc-product-content h2{

font-size:30px;

line-height:1.5;

margin-bottom:22px;

color:#0a0a0a;

font-weight:800;

}

.vc-product-content p{

font-size:16px;

line-height:2.15;

color:#555;

margin-bottom:28px;

}

.vc-product-content ul{

margin:0;

padding:0;

list-style:none;

display:grid;

grid-template-columns:repeat(2,minmax(200px,1fr));

gap:14px 26px;

margin-bottom:35px;

}

.vc-product-content ul li{

position:relative;

padding-right:26px;

font-size:15px;

color:#444;

line-height:1.9;

}

.vc-product-content ul li:before{

content:"✓";

position:absolute;

right:0;

top:0;

color:#bb1e28;

font-weight:700;

}

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:14px 30px;

background:#bb1e28;

color:#fff;

border-radius:10px;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.btn-primary:hover{

background:#971821;

color:#f1f1f1;

}

@media(max-width:992px){

.vc-product-grid{

grid-template-columns:1fr;

gap:40px;

}

.vc-product-image{

max-width:420px;

margin:auto;

}

}

@media(max-width:768px){

.vc-product-showcase{

padding:60px 0;

}

.vc-product-content h2{

font-size:30px;

}

.vc-product-content ul{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9e8f944 */.vc-contact-section{

position:relative;

padding:60px 0;

overflow:hidden;

background:#fff;

}

.vc-contact-bg{

position:absolute;

width:420px;

height:420px;

border-radius:50%;

filter:blur(110px);

opacity:.08;

pointer-events:none;

}

.bg-one{

background:#bb1e28;

top:-120px;

left:-120px;

}

.bg-two{

background:#0a0a0a;

bottom:-160px;

right:-160px;

}

.vc-contact-box{

position:relative;

max-width:900px;

margin:auto;

text-align:center;

padding:55px 45px;

border:1px solid #ededed;

border-radius:22px;

background:#fff;

box-shadow:0 15px 45px rgba(0,0,0,.05);

}

.vc-contact-subtitle{

display:inline-block;

padding:8px 18px;

border-radius:30px;

background:#f7f7f7;

color:#bb1e28;

font-size:13px;

font-weight:700;

margin-bottom:18px;

}

.vc-contact-box h2{

margin:0 0 22px;

font-size:38px;

font-weight:800;

color:#0a0a0a;

line-height:1.5;

}

.vc-contact-box p{

max-width:700px;

margin:0 auto 40px;

font-size:16px;

line-height:2.1;

color:#555;

}

.vc-contact-items{

display:flex;

justify-content:center;

gap:35px;

flex-wrap:wrap;

}

.vc-contact-item{

display:flex;

align-items:center;

gap:18px;

padding:22px 28px;

border:1px solid #ececec;

border-radius:16px;

min-width:290px;

transition:.35s;

background:#fff;

}

.vc-contact-item:hover{

transform:translateY(-4px);

box-shadow:0 12px 35px rgba(0,0,0,.06);

}

.vc-contact-item .icon{

width:58px;

height:58px;

border-radius:50%;

background:#bb1e28;

display:flex;

align-items:center;

justify-content:center;

font-size:24px;

color:#fff;

flex-shrink:0;

}

.vc-contact-item small{

display:block;

font-size:13px;

color:#888;

margin-bottom:6px;

text-align:right;

}

.vc-contact-item a{

font-size:20px;

font-weight:700;

text-decoration:none;

color:#0a0a0a;

}

.vc-contact-item a:hover{

color:#bb1e28;

}

@media(max-width:768px){

.vc-contact-section{

padding:60px 0;

}

.vc-contact-box{

padding:35px 22px;

}

.vc-contact-box h2{

font-size:30px;

}

.vc-contact-item{

min-width:100%;

justify-content:flex-start;

}

}/* End custom CSS */