@charset "utf-8";

/*common css start*/
@media (prefers-reduced-motion:no-preference) {
    :root { scroll-behavior: initial !important; }
}
*:focus { outline: none; }
body {letter-spacing: -0.3px; margin: 0px; padding: 0px; background-color: #E5E5E4; color: #4A4A4A; font-family: "Google Sans", sans-serif; font-size: 24px; font-style: normal; font-weight: 400; line-height: 36px; }
a { -o-transition: all 0.3s ease; transition: all 0.3s ease; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -ms-transition: all 0.3s ease; }
p { margin-bottom: 25px; }
a { color: #FE000C; cursor: pointer; text-decoration: none; outline: none; }
a:hover { color: #000000; text-decoration: none; }
ul, li { list-style: none; margin: 0px; padding: 0px; }
img { border: 0; vertical-align: top; height: auto; max-width: 100%; }
.left-padding { padding-left: calc(((100% - 1512px) - 24px) / 2); }
.right-padding { padding-right: calc(((100% - 1512px) - 24px) / 2); }
.mob .row [class*="col-"]:first-child { margin-top: -50px; }

/*heading css*/
h1, h2, h3, h4, h5, h6, .th1, .th2, .th3, .th4, .th5, .th6, .t30 { color: #4E5C5A; font-weight: 400; line-height: 1.2; margin: 0px; padding: 0px; font-family: "Marcellus", serif; }
h1, .th1, h2 { font-size: 100px; line-height: 1.08; letter-spacing: -3px; margin-bottom: 30px; }
h3, .th3 { font-size: 70px; line-height: 1.2; margin-bottom: 20px; }
h4, .th4 { font-size: 30px; margin-bottom: 20px; }
h5, .th5 { font-size: 24px; margin-bottom: 20px; }
h6, .th6 { font-size: 18px; margin-bottom: 20px; }

/*extra heading & text*/
.t300 { font-size: 300px; line-height: 0.8; }
.t200 { font-size: 200px; line-height: 0.8; }
.t150 { font-size: 150px; line-height: 1.2; }
.t50 { font-size: 50px; line-height: 1.1; }
.t40 { font-size: 40px; line-height: 1.2; }
.t36 { font-size: 36px; line-height: 1.2; letter-spacing: -1px; }
.t30 { font-size: 30px; line-height: 1.2; }
.t24 { font-size: 24px; line-height: 1.2; }
.tlspace { letter-spacing: 0px; }
.twhite { color: #fff; }
.tfonthead { font-family: "Marcellus", serif; }
.headcolor { color: #4E5C5A; }

/*font-weight*/
.fwr { font-weight: 400; }
.fwm { font-weight: 500; }
.fws { font-weight: 600; }
.fwb { font-weight: 700; }
.fw-italic { font-style: italic; }

/*button start*/
ins { text-decoration: none; }
button { border: none; }
button:focus { outline: none; }
.btn-theme-white { font-family: "Marcellus", serif; color: #fff; display: inline-flex; align-items: center; font-size: 24px; font-weight: 400; outline: 0px; position: relative; transition: all .3s ease-out; line-height: 1; }
.btn-theme-white:hover { color: #fff; }
.btn-theme-white span { position: relative; transform: translateX(0); transition: all 0.3s ease; }
.btn-theme-white::before { content: ''; transform: scale(1); position: relative; top: 0px; background-image: url(../images/btn-arrow-white.svg); background-repeat: no-repeat; background-position: center; transition: all .3s ease-out; width: 50px; height: 50px; border: 1px solid #ffffff; margin-right: 20px; }
.btn-theme-white span::after { content: ''; background-color: #ffffff; bottom: -10px; left: 0; position: absolute; transition: all .3s ease-out; width: 100%; height: 1px; transform-origin: right; }
.btn-theme, .nextbtn { font-family: "Marcellus", serif; color: #4E5C5A; display: inline-flex; align-items: center; font-size: 24px; font-weight: 400; outline: 0px; position: relative; transition: all .3s ease-out; line-height: 1; }
.btn-theme:hover, .nextbtn:hover { color: #4E5C5A; }
.btn-theme span, .nextbtn span { position: relative; transform: translateX(0); transition: all 0.3s ease; }
.btn-theme::before, .nextbtn::after { content: ''; transform: scale(1); position: relative; top: 0px; background-image: url(../images/btn-arrow-green.svg); background-repeat: no-repeat; background-position: center; transition: all .3s ease-out; width: 50px; height: 50px; border: 1px solid #4E5C5A; margin-right: 20px; }
.btn-theme span::after, .nextbtn span::after { content: ''; background-color: #4E5C5A; bottom: -10px; left: 0; position: absolute; transition: all .3s ease-out; width: 100%; height: 1px; transform-origin: right; }
.btn-arrow { position: relative; transition: all .3s ease-out; width: 50px; height: 50px; background-color: #E5E5E4; border: 1px solid #979591; display: inline-flex; align-items: center; justify-content: center; }
.btn-arrow::before { content: ''; width: 12px; height: 12px; background-image: url(../images/btn-arrow-green.svg); background-repeat: no-repeat; background-position: center; }
.btn-arrow:hover { background-color: #4E5C5A; border-color: #4E5C5A; }
.btn-arrow:hover::before { background-image: url(../images/btn-arrow-white.svg); }
.nextbtn::after {margin-left: 20px;margin-right: 0px;}
.btn-outline{font-family: "Marcellus", serif; color: #4E5C5A;border:1px solid #4E5C5A; display: inline-flex; align-items: center; font-size: 24px; font-weight: 400; outline: 0px; position: relative; transition: all .3s ease-out; line-height: 1;padding: 30px 0px;justify-content: center;overflow: hidden; }
.btn-outline:hover{background-color: #4E5C5A;color: #fff;}
.btn-outline span{display: inline-block;vertical-align: top;transform: translateY(0px);transition: all 0.5s ease;}
.btn-outline:hover span{transform: translateY(-100px);}
.btn-outline::after{content: ''; width: 20px; height: 20px;background-size: 20px; background-image: url(../images/btn-arrow-white.svg); background-repeat: no-repeat; background-position: center;position: absolute;top: 50%;transform: translateY(100px);transition: all 0.5s ease;}
.btn-outline:hover::after{transform: translateY(-50%);}
/*bullet*/
.bullet-list ul li:before { content: "";position: absolute; top: 7px; left: 0px; height: 12px; width: 12px; background: url(../images/btn-arrow-green.svg) no-repeat center; }
.bullet-list ul li { position: relative; padding-left: 25px; margin-bottom: 10px; line-height: 1.1; }

/*margin-top*/
.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }
.mt-30 { margin-top: 30px; }
.mt-50 { margin-top: 50px; }
.mt-70 { margin-top: 70px; }
.mt-100 { margin-top: 100px; }

/*margin-bottom*/
.mb-0 { margin-bottom: 0px; }
.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
.mb-25 { margin-bottom: 25px; }
.mb-30 { margin-bottom: 30px; }
.mb-40 { margin-bottom: 40px; }
.mb-50 { margin-bottom: 50px; }
.mb-60 { margin-bottom: 60px; }
.mb-70 { margin-bottom: 70px; }
.mb-80 { margin-bottom: 80px; }
.mb-90 { margin-bottom: 90px; }
.mb-100 { margin-bottom: 100px; }
.mb-150 { margin-bottom: 150px; }
.mb-200 { margin-bottom: 200px; }
.mb-250 { margin-bottom: 250px; }
.mb-300 { margin-bottom: 300px; }

/*padding-top*/
.pt-10 { padding-top: 10px; }
.pt-15 { padding-top: 15px; }
.pt-30 { padding-top: 30px; }
.pt-50 { padding-top: 50px; }
.pt-100 { padding-top: 100px; }
.pt-300 { padding-top: 300px; }

/*padding-bottom*/
.pb-10 { padding-bottom: 10px; }
.pb-15 { padding-bottom: 15px; }
.pb-20 { padding-bottom: 20px; }
.pb-25 { padding-bottom: 25px; }
.pb-30 { padding-bottom: 30px; }
.pb-40 { padding-bottom: 40px; }
.pb-50 { padding-bottom: 50px; }
.pb-70 { padding-bottom: 70px; }
.pb-80 { padding-bottom: 80px; }
.pb-90 { padding-bottom: 90px; }
.pb-100 { padding-bottom: 100px; }
.pb-300 { padding-bottom: 300px; }

/*form start*/
input[type="submit"], input[type="button"], button[type="submit"], button[type="button"] { outline: none; }
label { display: inline-block; max-width: 100%; }
textarea { resize: none; height: 110px; border-radius: 20px; }
.form-control { border-radius: 0px; display: block; width: 100%; height: auto; padding: 0px 0px 15px; font-size: 24px; line-height: 1; color: #999999; border: 0px; border-bottom: 1px solid #C0C0C0; box-shadow: none; background-color: transparent; font-weight: 400; text-overflow: ellipsis; }
.form-control:focus, .input-text:focus { color: #4E5C5A; border-color: #4E5C5A; background-color: transparent; outline: 0; box-shadow: none; }
.form-control::-webkit-input-placeholder { color: #C0C0C0; font-weight: 400; }
.form-control::-moz-placeholder { color: #C0C0C0; opacity: 1; font-weight: 400; }
.form-control::-ms-input-placeholder { color: #C0C0C0; font-weight: 400; }
.form-control:focus::-webkit-input-placeholder { color: #4E5C5A; font-weight: 400; }
.form-control:focus::-moz-placeholder { color: #4E5C5A; opacity: 1; font-weight: 400; }
.form-control:focus::-ms-input-placeholder { color: #4E5C5A; font-weight: 400; }
textarea.form-control, textarea { height: 100px; }
select.form-control, select { line-height: 1.2; background-image: url(../images/arrow-select.svg); background-repeat: no-repeat; background-position: calc(100% - 12px) 50%; }
.form-group { margin-bottom: 20px; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-results-button, input[type="search"]::-webkit-search-results-decoration { -webkit-appearance: none; }
input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { appearance: none; -moz-appearance: textfield; -webkit-appearance: none; }
input[type="date"]::-webkit-inner-spin-button { display: none; }
input[type="date"]::-webkit-calendar-picker-indicator { color: rgba(0, 0, 0, 0); opacity: 1; background-image: none; background: transparent; }
input[type="radio"], input[type="checkbox"] { cursor: pointer; }
.form-group { margin-bottom: 20px; z-index: 1; }
.form-check-input[type=checkbox] { border-radius: 0px; }
.form-check-input { margin-top: 8px; border-radius: 0px; border-color: #000; }
.form-check-input:focus { border-color: #000; box-shadow: none; }
.form-check-input:checked:focus { border-color: #0d6efd; }
.wpcf7-spinner { position: absolute; margin-top: 10px; }
.wpcf7 form.sent .wpcf7-response-output { line-height: 24px; background: #dff0d8; border: 1px solid #c3e6cb; margin: 20px 0 0; padding: 7px 12px; color: #155724; position: relative; z-index: 1; border-radius: 5px; font-size: 16px; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output { line-height: 24px; background: #f8d7da; border: 1px solid #f5c6cb; margin: 20px 0 0; padding: 7px 15px; color: #721c24; position: relative; z-index: 1; border-radius: 5px; font-size: 16px; }
span.wpcf7-not-valid-tip { color: #ed1c24; position: relative; text-align: left; font-size: 14px; }
.wpcf7-response-output { max-width: 1256px; width: 100%; margin: 0 auto; }

/*vc plugin css start*/
.vc_row { margin: 0px !important }
.vc_column_container>.vc_column-inner { padding: 0px !important }

/*img-scale*/
.img-scale { overflow: hidden; }
.img-scale img { transition: all 0.3s ease; transform: scale(1); }
.img-scale:hover img { transition: all 0.3s ease; transform: scale(1.1); }
.borderal { border: 1px solid #000000 }
.border-radius-20 { border-radius: 20px; }
section.d-inline-block { vertical-align: top; }
.lastmbnone :last-child { margin-bottom: 0px; }
.txt-black { color: #000000; }
.themetrblue { background-color: #4E5C5A; color: #fff; }
.themetrblue h1, .themetrblue h2, .themetrblue h3, .themetrblue h4, .themetrblue h5 { color: #fff; }
.h-spacer { height: 100vh; }
.split-word, .split-line { display: inline-block; vertical-align: top; }
.split-line, .split-text, .split-word { overflow: hidden; line-height: 1.2; }
.leftclipmask { overflow: hidden; clip-path: inset(0 80% 0 0); }
.rightclipmask { overflow: hidden; clip-path: inset(0 0 0 80%); }
.centerclipmask { overflow: hidden; clip-path: inset(0 40% 0 40%); }
.leftclipmask img, .rightclipmask img, .centerclipmask img { transform: scale(1.2); transform-origin: left; }
.centerclipmask img { transform-origin: center; }
.lefttopvector { position: absolute; left: 0px; top: 0px; }
.righttopvector { position: absolute; right: 0px; top: 0px; }
.leftbottomvector { position: absolute; left: 0px; bottom: 0px; }
.rightbottomvector { position: absolute; bottom: 0px; right: 0px; }
.revector { transform: rotate(180deg); }
.t200 .split-line, .t200 .split-text, .t200 .split-word { line-height: 1; }
/*common css End*/

/*header-css-start*/
.black-overlay, .menu-overlay-desk { z-index: 50; background-color: rgba(0, 0, 0, 0.5); content: ''; position: fixed; right: 0px; height: 100%; width: 100%; top: 0px; display: none; }
.mainheader { width: 100%; position: fixed; top: 0; transition: all 0.3s ease; z-index: 50; }
header .logo { padding: 30px 0; transition: all 0.5s ease; }
header .logo a { display: inline-block; position: relative; }
.mainheader .logo img { width: 185px; transition: all 0.5s ease; }
.mainheader.sticky .logo img { width: 130px; }
.mainheader.sticky .logo { padding: 15px 0px; }
.mainheader.sticky { background-color: #E5E5E4; }
.mainheader .closeBtn { display: none; }
.innerlogo { opacity: 0; }
.innerlogo { position: absolute; top: 0px; left: 0px; opacity: 0; }
.innerheader .hmlogo, .mainheader.sticky .hmlogo { opacity: 0; }
.innerheader .innerlogo, .mainheader.sticky .innerlogo { opacity: 1; }
.navmenu > ul { margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; }
.navmenu > ul > li { position: relative; list-style: none; margin: 0px 25px 0px; transition: all 0.3s ease; font-family: "Marcellus", serif; }
.navmenu > ul > li:last-child { display: none; }
.navmenu > ul > li > a { color: #fff; display: block; font-size: 24px; font-weight: 400; text-transform: capitalize; padding: 0px 0px 5px; position: relative; }
.navmenu > ul > li > a:after { position: absolute; bottom: 10px; height: 1px; width: 0%; background-color: #fff; content: ""; left: 0px; bottom: 0px; transition: all 0.3s ease; }
.navmenu > ul > li > a:hover:after, .navmenu > ul > li.current-menu-item > a::after { width: 100%; }
.navmenu > ul > li.current-menu-item > a { color: #fff; }
.submenu-toggle { text-align: center; overflow: hidden; padding: 8px; vertical-align: top; line-height: 0; cursor: pointer; position: absolute; right: 0; top: 0; }
.navmenu > ul > li ul { display: none; }
.navmenu > ul > li > ul > li > a { font-size: 16px; color: #222222; }
.navmenu > ul > li:last-child { margin-right: 0; }
.mainheader.sticky .navmenu > ul > li > a, .innerheader .navmenu > ul > li > a { color: #4E5C5A; }
.mainheader.sticky .navmenu > ul > li > a:after, .innerheader .navmenu > ul > li > a::after { background-color: #4E5C5A; }
.closeBtn { line-height: 1; z-index: 5; position: absolute; top: 20px; right: 20px; width: 20px; height: 20px; border: none; background-color: transparent; padding: 0; transform: rotate(45deg); display: inline-flex; align-items: center; justify-content: center; }
.closeBtn::after { background-color: #fff; width: 100%; height: 2px; content: ''; display: inline-block; vertical-align: middle; transition: all 1.5s cubic-bezier(0.075, 0.82, 0.165, 1); }
.closeBtn::before { background-color: #fff; height: 100%; width: 2px; position: absolute; top: 0; content: ''; transition: all 1.5s cubic-bezier(0.075, 0.82, 0.165, 1); }
.navbtn { margin-left: 30px; line-height: 1; padding: 12px; background-color: transparent; width: 50px; height: 50px; border: 1px solid #CBC9C5; display: none; flex-wrap: wrap; align-items: center; justify-content: end; }
.icnline { background-color: #CBC9C5; position: relative; transition: all 0.3s ease; width: 24px; height: 2px; margin-bottom: 0px; vertical-align: middle; line-height: 1; }
.icnline:last-child { margin-bottom: 0px; width: 16px; }
.navbtn:hover .icnline:nth-child(2) { width: 16px; }
.navbtn:hover .icnline:last-child { width: 24px; }
.submenu-arrow-icon { background-image: url(../images/menu-arrow-normal.svg); background-size: 20px; background-position: center; background-repeat: no-repeat; width: 30px; height: 20px; display: inline-block; transition: all 0.3s ease; }
.submenu-arrow-up { transform: rotate(-180deg); }
.rightcnthed { margin-left: 50px; }
.mainheader.sticky .btn-theme-white, .innerheader .btn-theme-white { color: #4E5C5A; }
.mainheader.sticky .btn-theme-white::before, .innerheader .btn-theme-white::before { border-color: #4E5C5A; background-image: url(../images/btn-arrow-green.svg); }
.mainheader.sticky .btn-theme-white:hover::before, .innerheader .btn-theme-white:hover::before { background-color: #4E5C5A; }
.mainheader.sticky .btn-theme-white span::after, .innerheader .btn-theme-white span::after { background-color: #4E5C5A; }
/*header-css-end*/

/* textamimation effects start */
.texthoreffect .split-char { transform: translateX(250px) scaleX(1.5); transform-origin: right; }
.textUpffect .split-char { transform: translateY(150px) scaleX(1.5); }
.fadeUpElem, .loadFadeup, .fadeUpStep { transform: translateY(100px); opacity: 0; }
.loadtextUpffect .split-char{transform: translateY(100px);}
.ClipDown{overflow:hidden;clip-path:polygon(0 0%,100% 0%,100% 0,0 0);}
.ClipDown img{transform:scale(1.3);}
/* textamimation effects start */

/* homepage css start */
.pageoverlayeffects { position: fixed; height: 100%; top: 0px; left: 0px; width: 100%; z-index: 51; background-color: #4E5C5A; }
.pagewhiteload { background-color: #fff; width: 100%; height: 100%; position: absolute; top: 0px; left: 0px; transform: scale(0); opacity: 0; }
.pagelogo { position: absolute; top: 50%; left: 50%; overflow: hidden; transform: translate(-50%, -50%); width: 100%; max-width: 400px; }
.ndlogo, .textlinelogo { transform: translateY(150px); }
.pclogo { transform: translateY(-150px); }
.bordeboxcol { border: 1px solid #979591; padding: 50px; }
.hero-home-banner { height: min-content; padding-top: 200px; padding-bottom: 300px; }
.maintitle { position: relative; bottom: 0px; width: 100%; padding-bottom: 50px; }
.maintitle h1 { line-height: 1; }
.hero-title-1 .split-char { transform: translateX(-250px) scaleX(1.5); transform-origin: left; }
.hero-title-2 .split-char { transform: translateX(250px) scaleX(1.5); transform-origin: right; }
.subtext .split-word { transform: translateY(100px); }
.bannerimg img, .bannerimg video { display: inline-block; vertical-align: top; }
.bannerimg { text-align: right; display: inline-block; width: 100%; vertical-align: top; position: relative; top: -350px; }
.bannerimg .h-spacer { height: 80vh; }
.subtext { margin-top: 100px; margin-bottom: 100px; }
.maskimgvid { display: inline-block; width: 50%; overflow: hidden; transform: translateY(100px); opacity: 0; position: sticky; top: 10vh; min-height: 850px; }
.hero-home-banner .btn-theme-white { transform: translateY(50px); opacity: 0; z-index: 20; }
.textelementbg p { margin-bottom: 50px; }
.proapelement p { margin-right: -10px; position: relative; right: -50px; }
.proapelement h3 { transform: rotate(-90deg); font-size: 50px; margin-bottom: 0px; letter-spacing: -2px; }
.prodtitle { display: flex; justify-content: center; align-items: center; flex-direction: column; }
.prodesck { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; }
.prodesck .btn-theme { margin-left: 50px; }
.approchrow .split-word { margin-right: -15px; }
.approchrow h2 { letter-spacing: 0px; }
.titisticky { position: sticky; top: 70px; padding-bottom: 450px; }
.proapelement { margin-bottom: 50px; position: sticky; top: 30vh; }
.approcmain { margin-top: -450px; }
.approcmain .h-spacer { height: 10vh; }
.textitemscol { will-change: transform; transform-origin: 50%; width: 100%; top: 0px; transform: translateY(0); }
.textLineWrapper { width: 100%; position: relative; height: 20vh; margin-bottom: 100px; }
.textWrapper .textLineWrapper:last-child { margin-bottom: 0px; }
.theflowsection { height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.theflowswrap { position: relative; width: 100%; height: 100%; }
.theflowtop, .theflowbottom { height: 50%; width: 100%; display: flex; justify-content: center; pointer-events: none; }
.theflowtop { align-items: flex-end; }
.theflowbottom { align-items: flex-start; }
.theflowsection h2 { font-size: 150px; margin: 0; line-height: 1; text-align: center; position: relative; z-index: 2; margin-bottom: 20px; }
.theflowcenter { position: absolute; top: 50%; left: 0; width: 100%; height: 100%; transform: translateY(-50%); display: flex; justify-content: center; align-items: center; overflow: hidden; }
.theflowcenterimg { width: 100%; height: 100%; overflow: hidden; }
.imgvidelem { clip-path: inset(var(--top) var(--right) var(--bottom) var(--left)); height: 100%; width: 100%; object-fit: cover; }
.theflowcenterimg { clip-path: inset(0 0 0 0); }
.theflowsection { position: sticky; top: 0; }
.fakeheight { height: 200vh }
.projectimgrow { padding: 90px 50px; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; clip-path: inset(0% 0% 0% 100%);}
.protitle { width: 30%; padding-right: 30px; padding-top: 100px; }
.projectright { width: 70%; }
.prodslider .slick-arrow { top: auto; bottom: 0px; transform: none; width: 70px; height: 70px; }
.prodslider .slick-prev { left: -180px; }
.prodslider .slick-next { left: -90px; }
.prodslider .slick-next::before { background-size: 24px; width: 24px; height: 24px; }
.prodslider .slick-prev::before { background-size: 24px; width: 24px; height: 24px; }
.slimgcap { position: absolute; bottom: 0px; right: 0px; padding: 30px 50px; background: rgba(0, 0, 0, 0.3); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); overflow: hidden; color: #fff; }
.slimgcap h3 { color: #fff; margin-bottom: 10px; font-size: 50px; }
.prodslider .btn-arrow { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 70px; height: 70px; opacity: 0; margin-top: 20px; }
.prodslider a::before { content: ''; background-color: rgba(78, 92, 90, 0.8); position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; opacity: 0; transition: all 0.3s ease; }
/* homepage css end */

/* footer start */
address { margin-bottom: 0px; }
.mainfooter { vertical-align: top; color: #98A8A6; padding: 150px 0px 0px; }
.mainfooter a { color: #98A8A6; }
.mainfooter .row { align-items: flex-start; }
.colfooter { margin-bottom: 200px; }
.footerlink ul li { margin-bottom: 24px; }
.footerlink ul li a { font-size: 24px; position: relative; color: #98A8A6; line-height: 1; padding: 0px 0px 5px; }
.footerlink ul li a:hover { color: #fff; }
.footerlink ul li a:after { position: absolute; bottom: 10px; height: 1px; width: 0%; background-color: #fff; content: ""; left: 0px; bottom: 0px; transition: all 0.3s ease; }
.footerlink ul li a:hover:after { width: 100%; }
.cotactinfo a, .copyright a { position: relative; }
.cotactinfo a:hover, .copyright a:hover { color: #fff; }
.cotactinfo { display: flex; align-items: flex-start; margin-bottom: 20px; }
.cotactinfo i { flex-shrink: 0; margin-right: 20px; font-style: normal; color: #fff; }
.socialicon { display: flex; flex-wrap: wrap; margin-top: 50px; }
.socialicon a { width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border: 1px solid #809390; margin-right: 20px; }
.socialicon a svg { fill: #809390; width: 20px; height: 20px; }
.socialicon a:hover { background-color: #fff; border-color: #fff; }
.socialicon a:hover svg { fill: #4E5C5A; }
.copyright { font-size: 20px; margin-top: 20px; }
.thankyoupage { padding: 250px 0px; }
.mainfooter .btn-theme-white { font-size: 100px; color: #ffffff; }
.mainfooter .btn-theme-white::before { background-size: 24px; background-image: url(../images/btn-arrow-white.svg); width: 100px; height: 100px; }

/* footer end */
.pagetopoffset { padding-top: 250px; }

/* blog listing start */
.hover-zoom img{transform: scale(1);transition: all 0.3s ease;}
.hover-zoom:hover img{transform: scale(1.1);}
.blog-box{margin-bottom: 100px;}
.blog-box h4 a{color: #4E5C5A;}
.datecol{font-size: 18px;color: #444444;margin-bottom: 5px;}
.datecol a{color: #4E5C5A;}
.blogimgcol {margin-bottom: 30px;}
.blogimgcol a{display: block;overflow: hidden;}
.pipesign{margin: 0px 3px;}
.blogListmain .row:nth-child(even) .blog-box:first-child{margin-top: 100px;}
.blogListmain .row:nth-child(even) .blog-box:first-child .blogimg {min-height: 616px;display: flex;}
.blogListmain .row:nth-child(even) .blog-box:first-child .blogimg img{object-fit: cover;}
.loadmorebtn { width: 100%; text-align: center; display: inline-block; margin-bottom: 150px; }
.paginav {color: #444444; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap;align-items:center; }
.paginav a, .paginav span { text-decoration: none; margin: 0px; margin-right: 10px; text-align: center; font-size: 20px; width: 50px; height: 50px; line-height: 50px; color: #fff; }
.paginav span.arrow-previous, .paginav span.arrow-next { position: relative; display: inline-flex; align-items: center; justify-content: center; margin-right: 0px; }
.paginav a { border: 1px solid #444444; }
.paginav span.current, .paginav a:hover { border-color: #4E5C5A; background-color: #4E5C5A; }
.arrow-previous::before, .arrow-next::before { height: 15px; width: 17px; content: ''; transition: all 0.3s ease; display: inline-block; }
.arrow-previous::before { background: url(../images/blog-prev-arrow.svg) center center no-repeat; }
.arrow-next::before { background: url(../images/blog-next-arrow.svg) center center no-repeat; }
.paginav a:hover .arrow-previous::before { background-image: url(../images/blog-prev-arrow-white.svg); }
.paginav a:hover .arrow-next::before { background-image: url(../images/blog-next-arrow-white.svg); }
.blogtitledetail{padding-left: 12px;}
.blogdatsticky{position: sticky;top: 120px;margin-bottom: 30px;padding-left: 12px;}
.blogdetailrow .datecol{ font-family: "Marcellus", serif;font-size: 30px; color: #4E5C5A;}
.blogdetailrow .datecol span{display: block;}
.blogdetailcontent{padding-right: 200px;}
.blogdetailcontent p { margin-bottom: 30px; }
.blogdetailcontent h2, .blogdetailcontent h3, .blogdetailcontent h4, .blogdetailcontent h5 { margin-bottom: 20px;letter-spacing: -2px; }
.blogdetailcontent h2 { font-size: 70px; }
.blogdetailcontent h3 { font-size: 50px; }
.blogdetailcontent h4 { font-size: 36px; }
.blogdetailcontent h5 { font-size: 30px; }
.blogdetailcontent ul { margin-bottom: 30px;}
.blogdetailcontent ul li ul { margin-top: 15px; }
.blogdetailcontent ul li, .blogdetailcontent ol li { margin-bottom: 5px; }
.blogdetailcontent ol>li:last-child { margin-bottom: 0px }
.blogdetailcontent ol { margin-bottom: 20px; counter-reset: item; display: inline-block; width: 100%; padding-left: 0px; }
.blogdetailcontent ol li { margin-bottom: 5px; }
.blogdetailcontent ol ol, .blogdetailcontent ol li ul { padding-left: 20px; margin: 15px 0px 10px; }
.blogdetailcontent ol li::before { content: counters(item, ".") ". "; counter-increment: item; }
.blogdetailcontent ol li ul li::before { content: ''; }
.blogdetailcontent img { margin: 20px 0px; display: inline-block; }
.blogdetailnav { display: inline-flex; justify-content: space-between; width: 100%; margin-top: 50px; border-top: 1px solid #979591; padding-top: 30px; }
.othercasestudy .row [class*="col-"] h4 { margin-bottom: 0px; }
.categoryrow {display: flex;justify-content: space-between;}
.categorybtn{width: 35%;text-align: right;margin-bottom: 50px;}
.category-list{width: 65%;}
.category-list ul{font-family: "Marcellus", serif;display: none;margin-bottom: 100px;}
.category-list ul li{display: inline-block;vertical-align: top;margin-right: 15px;margin-left: -3px;overflow: hidden;padding: 15px 0px 10px}
.category-list ul li a{font-size: 50px;color: #cacaca;transform: translateY(50px);transition: all 0.3s ease 0.1s;display: inline-block;}
.category-list ul li a:hover{color: #4E5C5A;}
.category-list ul li:before {content: '/';font-size: 50px;color: #cacaca;margin-right: 15px;transform: translateY(50px);transition: all 0.3s ease 0.1s;display: inline-block;}
.category-list ul li:first-child:before{content: ''}
.category-list ul li sup{font-family: "Google Sans", sans-serif;margin-left: 5px;}
ul.catOpen li a, ul.catOpen li:before{transform: translateY(0px);}
.otherbloglist .blog-box { margin-bottom: 0px; }
/* blog listing end*/

.viewport { position: sticky; top: 0; left: 0; height: 100vh; perspective: 1000px; pointer-events: none; z-index: 40; overflow: hidden; }
.item { position: absolute; width: 550px; height: 450px; left: 50%; top: 50%; margin-left: -200px; margin-top: -150px; will-change: transform, opacity; display: flex; align-items: center; justify-content: center; }
.item img { width: 100%; height: 100%; object-fit: contain }
.item:last-child { margin-top: 0px; }
.scroll-container { height: 150vh; }
.scene { position: absolute; width: 100%; height: 100%; transform-style: preserve-3d; }
.Maincontent { z-index: 0; position: relative; }
.OpenMenu { overflow: hidden; }
.centertitlelast { position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; opacity: 0; text-align: center; background-color: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; flex-direction: column; }
.centertitlelast  h2 { color: #ffffff; }

/* project page css */
.projectcatimg .btn-arrow { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 70px; height: 70px; opacity: 0; }
.projectcatimg a::before, .prjlistimg::before { content: ''; background-color: rgba(78, 92, 90, 0.8); position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; opacity: 0; transition: all 0.3s ease; }
.protitlecat{transform: scale(0.8) translateY(200px);display: inline-block;}
.projectcatimg {clip-path: inset(20%);}
.projectlistsection{padding: 0px 100px;}
.projectlistsection .row { margin: 0px -25px; }
.projectlistsection .row [class*="col-"] {padding: 0px 25px; margin-bottom: 100px; }
.projectlistsection .row:nth-child(odd)  {align-items: flex-end;}
.projectlistsection .row:nth-child(even)  {flex-direction: row-reverse;}
.prjlistimg{margin-bottom: 20px;}
.projectlistsection .btn-arrow { z-index: 2; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 70px; height: 70px;opacity: 0;margin-top: 20px; }
.prjlistimg::before{z-index: 1;}
.colParallax{transform: translateY(100px);}
.prjlistimg, .projectdetailimg{clip-path: inset(30%);}
.projectdetailimg img, .projectdetailimg video{transform: scale(1.2);}
.prjimgitem {margin-right: 24px; display: inline-block; overflow: hidden;vertical-align: top;}
.prjslider{margin: 0px -12px;}
.prjslider .slick-dots{text-align: left;padding-left: 15px;}
.prjslider  .prjlistimg {clip-path: inherit;}
.prjslider .slick-slide{padding: 0px 12px;}
.prjslider .btn-arrow{position: absolute;top: 50%;left: 50%;margin-top: 20px;transform: translate(-50%,-50%);opacity: 0;z-index: 1;}
.prjslider .slick-arrow{top: -100px;transform: translateY(0px); }
.prjslider .slick-next{right: 12px;}
.prjslider .slick-prev{left: auto;right: 80px;}
.prjimgitem img{display: inline-block;object-fit: cover;max-width: 744px;max-height: 650px;}
.btncatmarqee a{margin-right: 24px;min-width: 360px;}
.btncatmarqee { display: flex;width: max-content;animation: scrollCol 20s linear infinite; -webkit-animation: scrollCol 20s linear infinite; will-change: transform; transform: translateZ(0);flex-shrink: 0;}
@media only screen and (min-width:1200px) {
    .navmenu > ul > li:hover > ul, .navmenu > ul > li > ul li:hover > ul { display: inline-block; }
    .navmenu > ul > li ul { position: absolute; top: 100%; min-width: 250px; padding-top: 18px; margin-left: 0; display: none; box-shadow: 0 5px 10px -4px rgba(0, 0, 0, 0.2); -webkit-animation-name: fadeInUp; animation-name: fadeInUp; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; -webkit-animation-fill-mode: both; animation-fill-mode: both }
    .navmenu > ul > li > ul li { position: relative; line-height: 1.1; padding: 0 15px; background-color: #E5E5E4; }
    .navmenu > ul > li > ul li a { position: relative; line-height: 1.1; padding: 15px 0; display: block; font-size: 20px; border-bottom: 1px solid #97ADAA; color: #4A4A4A; }
    .navmenu > ul > li ul li ul { top: 0; left: 100%; z-index: 1; }
    .navmenu > ul > li > ul li a:hover, .navmenu > ul > li ul li.current-menu-item > a { color: #4E5C5A; }
    .navmenu > ul > li.menu-item-has-children { position: relative; padding-right: 23px; }
    .navmenu > ul > li.menu-item-has-children::before { content: ''; background-image: url(../images/menu-arrow-normal.svg); background-repeat: no-repeat; background-position: center; width: 20px; height: 20px; position: absolute; top: 10px; right: 0; }
    .sticky.mainheader .navmenu > ul > li.menu-item-has-children::before, .innerheader.mainheader .navmenu > ul > li.menu-item-has-children::before { background-image: url(../images/menu-arrow-inner.svg); }
    .navmenu > ul > li > ul li:last-child a { border: none; }
    .btn-theme-white:hover::before { transform: scale(0.1); background-color: #fff; }
    .btn-theme-white:hover span::after { transform: scaleX(0); }
    .btn-theme-white:hover span { transform: translateX(-30px); }
    .closeBtn:hover::after, .closeBtn:hover::before { background-color: #fff; }
    .btn-theme:hover::before, .nextbtn:hover::after { transform: scale(0.1); background-color: #4E5C5A; }
    .btn-theme:hover span::after, .nextbtn:hover span:after { transform: scaleX(0); }
    .btn-theme:hover span { transform: translateX(-30px); }
    .nextbtn:hover span{transform: translateX(30px);}
    .prodslider .btn-arrow:hover, .projectcatimg .btn-arrow:hover, .projectlistsection .btn-arrow:hover { background-color: transparent; border-color: #fff; }
    .prodslider a:hover::before, .projectcatimg a:hover::before, .projectlistsection a:hover .prjlistimg::before , .prjslider a:hover .prjlistimg::before { opacity: 1; }
    .prodslider a:hover .btn-arrow, .projectcatimg a:hover .btn-arrow, .projectlistsection a:hover .btn-arrow, .prjslider a:hover .btn-arrow{ opacity: 1; margin-top: 0px; }
    .stickyHorizontalrow .h-spacer{height: 300vh;}
     .stickymainwrapper {width: 100%;display: inline-flex;position: relative;flex-wrap: wrap;}
    .stickyhrwrapper{ position: sticky;top: 150px;align-items: flex-start;overflow: hidden;display: flex;}
    .imghorizontal {will-change: transform; position: relative; padding-left: 12px; flex-wrap: nowrap; width: max-content; flex-shrink: 0; }
    .stickyHorizontalrow{align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; position: relative; width: 100%; }


    .prjimgitem:last-child{margin-right: 190px;}

}

/*rameshcssstart*/
.topoffset { margin-top: 250px; }
.contactinfo-address { display: flex; flex-wrap: wrap; }
.contactinfo-address-left { width: 75%; padding-right: 30px; }
.contactinfo-address-right { width: 25%; }
.btn-theme-submit input[type="submit"] { font-family: "Marcellus", serif; background-color: transparent; border: none; padding: 0px; padding-bottom: 10px; color: #4E5C5A; font-size: 24px; font-weight: 400; line-height: 1; letter-spacing: 0.48px; transition: all 0.3s ease-in; }
.btn-theme-submit { border: none; display: inline-flex; align-items: center; outline: 0px; position: relative; -o-transition: all 0.5s ease; transition: all 0.5s ease; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -ms-transition: all 0.5s ease; line-height: 1; }
.btn-theme-submit:before, .btn-theme-submit:after { content: ''; background-color: #4E5C5A; height: 1px; left: 0px; width: 100%; position: absolute; bottom: 0px; -webkit-transition: all 0.3s ease-in; -o-transition: all 0.3s ease-in; transition: all 0.3s ease-in; }
.btn-theme-submit:before { transform: scaleX(1); transform-origin: left top; transition-delay: 0.2s; }
.btn-theme-submit:after { transform: scaleX(0); transform-origin: right top; background-color: #4E5C5A; }
.btn-theme-submit:hover::before { transform: scaleX(0); transition-delay: 0.2s; }
.btn-theme-submit:hover:after { transform: scaleX(1); transition-delay: 0.3s; }
.contactinfo-address-left { display: flex; }
.contactinfo-address-left span, .contactinfo-num span { padding-right: 20px; }
.contactinfo-num a { color: #444444; }
.contactinfo-num a:hover { color: #4E5C5A; }
.imagezoomtrigger { position: relative; }
.imagezoomtriggerwrap { align-items: center; will-change: clip-path; contain: layout style paint; }
.imagezoomtriggerwrap img { width: 100%; height: 100%; object-fit: cover; display: block; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-perspective: 1000; perspective: 1000; }
.imagezoomtriggerwrap { will-change: clip-path; transform: translateZ(0); }
.contactinfo-num { display: flex; }
.contactinfo-num p:last-child { margin-left: 40px; }
.contactinforsticky {position: sticky; top: 15vh;}
.abt-elevating-left-img { margin-left: -104px; }
.abt-elevating-right-img { margin-right: -195px; }
a.bottom-line { position: relative; display: inline-block; }
a.bottom-line::after { content: ""; position: absolute; left: 0; bottom: -10px; width: 100%; height: 1px; background: #4E5C5A; transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease; }
a.bottom-line:hover::after { transform: scaleX(1); }
.hoverarrow .btn-arrow { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 70px; height: 70px; opacity: 0; }
.hoverarrow:hover .btn-arrow { opacity: 1; }
.teamrowcol { display: flex; flex-wrap: wrap; margin: 0px -12px; }
.teamcard { width: 50%; padding: 0px 12px; }
.teamname { margin-top: 30px; }

/*rameshcssend*/

