/* header */
    .header .container, .header .container-lg, .header .container-md, .header .container-sm, .header .container-xl {
       /* max-width: 1200px;*/
    }
.header {
    display: block;
    width: 100%;
    position: relative;
    z-index: 99;
    padding: 8px 0px;
	background: #fff;
	box-shadow: 0px 2px 9px #ccc;
}
.v-center
{
	align-items: center;
}
.logo img {
    width: 127px;
}
.header .item-left {
    flex: 0 0 40%;
}
.header .logo a{
	    position: absolute;
        top: -33px;
    left: 43px;
	
}
.header .item-center {
    flex: 0 0 52%;
}
.header .item-right {
    flex: 0 0 8%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.single-column-menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
}
.header .menu > ul > li {
    display: inline-block;
    line-height: 65px;
    margin-left: 60px;
}
.header .menu > ul > li:first-child{
    margin: 0;
}
.header .menu > ul > li:nth-child(2) {
    margin-left: 40px;
}
.header .menu > ul > li > a {
    font-size: 16px;
    font-weight: 500;
    color: #040A30;
    position: relative;
    text-transform: capitalize;
    transition: color 0.3s ease;
    text-decoration: none;
}
.header .menu > ul > li .sub-menu{
	position: absolute;
	z-index: 500;
	background-color:#ffffff;
	box-shadow: -2px 2px 70px -25px rgba(0,0,0,0.3); 
	padding: 0px 0px;
	transition: all 0.5s ease;
	margin-top:25px;
	opacity:0;
	visibility: hidden;
}
@media(min-width: 992px){
	.menu-main .active a{
	position: relative;
}
.menu-main .active > a{
	color: #D52228!important;
}
.menu-main .active > a::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    bottom: -25px;
    left: 0;
    background: linear-gradient(45deg, #d52228, #d52228);
}
.header .menu > ul > li.menu-item-has-children:hover .sub-menu{
	margin-top: 0;
	visibility: visible;
	opacity: 1;
}
}

.header .menu > ul > li .sub-menu > ul > li{
	line-height: 1;
}
.header .menu > ul > li .sub-menu > ul > li > a {
    display: inline-block;
    padding: 15px 20px;
    font-size: 15px;
    font-weight: 500;
    color: #040A30;
    transition: color 0.3s ease;
    text-decoration: none;
    text-transform: capitalize;
    width: 100%;
    border-bottom: 1px dashed #d5222817;
}
.header .menu > ul > li .single-column-menu{
	min-width: 280px;
	max-width: 350px;
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li{
   line-height: 1;
   display: block; 
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a {
	padding:10px 0;
	display: inline-block;
	font-size: 15px;
	color:#555555;
	transition: color 0.3s ease;
}
.header .menu > ul > li .sub-menu.mega-menu{ 
    left: 50%;
    transform: translateX(-50%);	
}

.header .menu > ul > li .sub-menu.mega-menu-column-4{
  max-width: 1100px;
  width: 100%; 	
  display: flex;
  flex-wrap: wrap;
  padding:20px 15px;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item{
  flex:0 0 25%;
  padding:0 15px;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item .title{
	font-size: 16px;
	color:#D52228;
	font-weight: 500;
	line-height: 1;
	padding:10px 0;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center .title{
	text-align: center;
}
.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item img{
	max-width: 100%;
	width: 100%;
	vertical-align: middle;
	margin-top: 10px;
	height: 300px;
	object-fit: cover;
}
.header .menu > ul > li .sub-menu > ul > li > a:hover{
    background: #D52228;
    color: #fff;
}
.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a:hover,
.header .item-right a:hover,
.header .menu > ul > li:hover > a{
	color:#D52228;
}
/* banner section */
.banner-section{
  background-image: url('../img/banner.html');
  background-size: cover;
  background-position: center;
  height: 700px;
  width: 100%;
  display: block;
}
.mobile-menu-head,
.mobile-menu-trigger{
	display: none;
}
.hide_menu {
    display:none !important;
}
/*responsive*/
@media(max-width: 991px){
	.banner {
    display: none;
}
	.header .item-left {
    display: flex;
}
.menu-main .active a::after{
	display: none;
}
	.header .item-center{
		order:3;
		flex:0 0 100%;
	}
	.v-center{
		justify-content: space-between;
	}
	.header .mobile-menu-trigger{
		display: flex;
		height: 30px;
		width: 30px;
		margin-left: 15px;
		cursor: pointer;
		align-items: center;
		justify-content: center;
	}
	.header .mobile-menu-trigger span{
		display: block;
		height: 2px;
		background-color: #333333;
		width: 24px;
		position: relative;
	}
	.header .mobile-menu-trigger span:before,
	.header .mobile-menu-trigger span:after{
		content: '';
		position: absolute;
		left:0;
		width: 100%;
		height: 100%;
		background-color: #333333;
	}
	.header .mobile-menu-trigger span:before{
		top:-6px;
	}
	.header .mobile-menu-trigger span:after{
		top:6px;
	}
	.header .item-right{
		align-items: center;
	}

	.header .menu{
		position: fixed;
		width: 320px;
		background-color:#ffffff;
		left:0;
		top:0;
		height: 100%;
		overflow: hidden;
		transform: translate(-100%);
		transition: all 0.5s ease;
		z-index: 1099;
	}
	.header .menu.active{
	   transform: translate(0%);	
	}
	.header .menu > ul > li{
		line-height: 1;
		margin:0;
		display: block;
	}
	.header .menu > ul > li:nth-child(2) {
    margin-left: 0;
}
.hide_menu {
    display: block !important;
}
	.header .menu > ul > li > a{
		line-height: 50px;
		height: 50px;
		padding:0 50px 0 15px;
		display: block;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	.header .menu > ul > li > a i{
		position: absolute;
		height: 50px;
		width: 50px;
		top:0;
		right: 0;
		text-align: center;
		line-height: 50px;
		transform: rotate(-90deg);
	}
	.header .menu .mobile-menu-head{
		display: flex;
		height: 50px;
		border-bottom: 1px solid rgba(0,0,0,0.1);
		justify-content: space-between;
		align-items: center;
		position: relative;
		z-index: 501;
		position: sticky;
		background-color: #ffffff;
		top:0;
	}
	.header .menu .mobile-menu-head .go-back{
		height: 50px;
		width: 50px;
		border-right: 1px solid rgba(0,0,0,0.1);
		cursor: pointer;
		line-height: 50px;
		text-align: center;
		color:#000000;
		font-size: 16px;
		display: none;
	}
	.header .menu .mobile-menu-head.active .go-back{
		display: block;
	}
	.header .menu .mobile-menu-head .current-menu-title{
		font-size: 15px;
		font-weight: 500;
		color:#000000;
	}
	.header .menu .mobile-menu-head .mobile-menu-close{
	    height: 50px;
		width: 50px;
		border-left: 1px solid rgba(0,0,0,0.1);
		cursor: pointer;
		line-height: 50px;
		text-align: center;
		color:#000000;	
		font-size: 25px;
	}
	.header .menu .menu-main{
		height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
	}
	.header .menu > ul > li .sub-menu.mega-menu,
	.header .menu > ul > li .sub-menu{
		visibility: visible;
		opacity: 1;
		position: absolute;
		box-shadow: none;
		margin:0;
		padding:15px 0;
		top:0;
		left:0;
		width: 100%;
		height: 100%;
		padding-top: 65px;
		max-width: none;
		min-width: auto;
		display: none;
		transform: translateX(0%);
		overflow-y: auto;
	}
.header .menu > ul > li .sub-menu.active{
	display: block;
}
@keyframes slideLeft{
	0%{
		opacity:0;
		transform: translateX(100%);
	}
	100%{
	    opacity:1;
		transform: translateX(0%);	
	}
}
@keyframes slideRight{
	0%{
		opacity:1;
		transform: translateX(0%);
	}
	100%{
	    opacity:0;
		transform: translateX(100%);	
	}
}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item img{
		margin-top:0;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center .title{
		margin-bottom: 20px;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item.text-center:last-child .title{
		margin-bottom:0px;
	}
	.header .menu > ul > li .sub-menu.mega-menu-column-4 > .list-item{
		flex: 0 0 100%;
        padding: 0px;
	}
	.header .menu > ul > li .sub-menu > ul > li > a,
	.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul > li > a{
		display: block;
	}
	.header .menu > ul > li .sub-menu > ul > li > a {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
	.header .menu > ul > li .sub-menu.mega-menu > .list-item > ul {
		margin-bottom: 15px;
	}
	.menu-overlay{
		position: fixed;
		background-color: rgba(0,0,0,0.5);
		left:0;
		top:0;
		width: 100%;
		height: 100%;
		z-index: 1098;
		visibility: hidden;
		opacity:0;
		transition: all 0.5s ease;
	}
	.menu-overlay.active{
	  visibility: visible;
	  opacity:1;	
	}
}


.menu-main {
    padding: 0;
    margin: 0;
    list-style: none;
}
.logo {
        position: absolute;
    }
.menu-item-has-children i {
    position: absolute;
    top: 2px;
    right: -20px;
    font-size: 13px;
}

.hamburger {
    position: unset;
    left: 30px;
    top: 30px;
    display: flex;
    height: 14px;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 1;
    margin-right: 15px;
}
.hamburger__icon {
  display: inline-block;
  height: 2px;
  width: 22px;
  background: #040A30;
  border-radius: 2px;
}

.sidebar {
    height: 100vh;
    width: 370px;
    background: #0E3A73;
    position: fixed;
    top: 0;
    left: 0;
    padding: 0 40px;
    display: flex;
    flex-direction: column;
    transform: translatex(-100%);
    transition: transform 0.4s ease-in-out;
    z-index: 9999;
	    box-shadow: rgb(0 0 0 / 43%) 0px 4px 12px;
}
.sidebar__close {
    position: absolute;
    top: 50%;
    right: -30px;
    background: #fff;
    height: 60px;
    width: 60px;
    border-radius: 50%;
    /* box-shadow: 0 0 20px 20px rgb(0 0 0 / 10%); */
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translatex(-100%);
    cursor: pointer;
    transition: transform 0.4s ease-in-out 0.2s;
    border: 1px solid #010a8d0f;
}
.sidebar__close::before, .sidebar__close::after {
  content: "";
  height: 2px;
  background: #898989;
  width: 24px;
  display: block;
  position: absolute;
}
.sidebar__close::after {
  transform: rotate(90deg);
}
.sidebar__menu {
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: space-around;
  font-size: 36px;
  margin-top: 80px;
  margin-bottom: 80px;
  color: #898989;
}
.sidebar__menu a {
    color: rgb(255 255 255);
    text-decoration: none;
    transform: translatex(-80%);
    transition: transform 0.4s ease-in-out;
    font-size: 38px;
}
.sidebar__menu a:hover{
	color: #fff!important;
}
.sidebar__menu a::before {
    content: "";
    height: 1px;
    background: #ffffff;
    width: 120px;
    position: absolute;
    bottom: -2px;
    left: 0;
    transform: translatex(-50%);
    opacity: 0;
    transition: transform 0.4s ease-in-out, opacity 0.4s linear;
}
.sidebar__menu a:hover::before {
  transform: translatex(0);
  opacity: 1;
}
.sidebar__menu a:nth-child(1) {
  transition-delay: 0.05s;
}
.sidebar__menu a:nth-child(2) {
  transition-delay: 0.1s;
}
.sidebar__menu a:nth-child(3) {
  transition-delay: 0.15s;
}
.sidebar__menu a:nth-child(4) {
  transition-delay: 0.2s;
}
.sidebar__menu a:nth-child(5) {
  transition-delay: 0.25s;
}
.sidebar__menu a:nth-child(6) {
  transition-delay: 0.30s;
}
.sidebar__social {
    display: flex;
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
}
.sidebar__social a {
    display: flex;
    align-items: center;
    color: #ffffffa1;
    text-decoration: none;
    text-transform: capitalize;
    font-size: 14px;
    gap: 10px;
    margin-right: 20px;
}
.sidebar__social a:hover{
	color: #fff!important;
}
.sidebar__social a span {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    color: #2744a0;
    font-size: 19px;
}
.menu-control {
  display: none;
}
.menu-control:checked + .sidebar {
  transform: translatex(0);
}
.menu-control:checked + .sidebar .sidebar__close {
  transform: translatex(0) rotate(45deg);
}
.menu-control:checked + .sidebar .sidebar__menu a {
  transform: translatex(0);
}

/* request a quote */
    .rq_popup .modal-dialog {
        max-width: 1050px;
    }
.request_quote_wrap {
    display: flex;
    align-items: center;
}
.rq_left {
    width: 40%;
    height: 450px;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
.rq_left video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.rq_title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: #15151596;
    padding: 50px 40px;
    height: 100%;
    display: flex;
    align-items: center;
	z-index:99;
}
.rq_title h2 {
    color: #fff;
    line-height: 45px;
	width: 220px;
}
.rq_title p {
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
	width: 220px;
}
.rq_popup .btn-close {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 20px;
    height: 20px;
    background: #D52228;
    opacity: 1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
	font-size: 24px;
	color: #fff;
}
.btn-close:focus-visible {
    outline: navajowhite;
}
.rq_popup .modal-content {
    border: 0;
    border-radius: 20px;
    background: #F8F9F7;
}

.rq_input_wrap label {
    color: #040A30;
    font-size: 16px;
    display: flex;
    margin-bottom: 10px;
    text-transform: capitalize;
}
.rq_input {
    background: #fff;
    border: 1px solid #D522282E;
    width: 100%;
    padding: 10px 20px;
    border-radius: 50px;
    outline: none;
    box-shadow: none;
}
.rq_input::placeholder{
  text-transform: capitalize;
  color: #3B41478F;
  font-size: 15px;
}
.rq_input_wrap {
    margin-bottom: 15px;
}
.rq_input_wrap textarea {
    height: 100px;
    border-radius: 20px;
    resize: none;
}
.rq_submit {
    background: #D52228;
    border: 0;
    color: #fff;
    padding: 10px 50px;
    border-radius: 50px;
    font-size: 16px;
}
.rq_right {
    width: 60%;
    padding: 0px 50px;
}


.wrap {
    max-width: 1200px;
    margin: 0 auto;
    /*padding: 0 32px;*/
}
.reveal.in {
    opacity: 1;
    transform: translateY(0);
}
.story-grid {
    display: grid;
    grid-template-columns: 1.3fr 0.9fr;
    gap: 70px;
    align-items: start;
}
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s ease, transform 0.7s ease;
}
.eyebrow {
    color: var(--ember-bright);
    font-size: 12.5px;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.story-grid h2 {
    font-size: clamp(30px, 4vw, 42px);
    margin-bottom: 26px;
    font-family: 'Oswald', sans-serif;
}
.story-grid p {
    margin-bottom: 18px;
    color: var(--off-white);
}
.story-grid p.dim {
    color: #666;
}

.hero {
    padding: 130px 0 70px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #e9e9e9;
}
.hero.sub-banner
{
	padding: 125px 0 65px;
	border-bottom: 1px solid #e9e9e9;
	background: repeating-linear-gradient(115deg, rgba(255, 255, 255, 0.025) 0px, rgba(255, 255, 255, 0.025) 1px, transparent 1px, transparent 5px), linear-gradient(160deg, #ededed 0%, #ffffff 65%, #ffffff 100%);
}
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    /*background-image: repeating-linear-gradient(115deg, rgba(212, 89, 10, 0.05) 0px, rgba(212, 89, 10, 0.05) 2px, transparent 2px, transparent 34px);*/
    background: repeating-linear-gradient(115deg, rgb(255 242 234 / 5%) 0px, rgb(7 6 6 / 5%) 2px, #00000008 2px, #ffffff00 34px);
    pointer-events: none;
}
.hero h1 {
    font-size: clamp(44px, 8vw, 92px);
    line-height: 0.98;
    color: #D52228;
    /*max-width: 900px;*/
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
}
.hero h1 span {
    color: transparent;
    -webkit-text-stroke: 1.5px #D52228;
}
.hero-sub {
    max-width: 640px;
    margin-top: 34px;
    color: var(--muted);
    font-size: 19px;
}
.active-menu
{
	 background: #D52228;
    color: #fff !important;
}

.hero-rebar-bottom {
    margin-top: 56px;
        max-width: 280px;
}

.directors {
    margin-top: 30px;
    list-style: none;
    padding: 0;
}
.directors li {
    display: flex;
    align-items: baseline;
    gap: 14px;
    padding: 14px 0;
    border-top: 1px solid #ccc;
    font-family: 'Oswald', sans-serif;
    font-size: 17px;
    letter-spacing: 0.01em;
}
.directors li .idx {
    font-family: 'JetBrains Mono', monospace;
    font-size: 20px;
    color: #d6262c;
}
.directors li:last-child {
    border-bottom: 1px solid #ccc;
}
.plate {
    background: #fbfbfb;
    border: 1px solid #ccc;
    padding: 38px 34px;
    position: relative;
}
.plate::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 22px 22px 0;
    border-color: transparent #d52228  transparent transparent;
}
.stamp-year {
    font-family: 'Oswald', sans-serif;
    font-size: 64px;
    font-weight: 700;
    color: #D52228;
    line-height: 1;
}
.stamp-label {
    font-size: 13px;
    color: #666;
    margin-top: 10px;
    letter-spacing: 0.1em;
}
.founder-note {
    margin-top: 30px;
    padding-top: 26px;
    border-top: 1px solid #ccc;
}
.founder-note .tag {
    font-size: 11px;
    color: #D52228;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    display: block;
    margin-bottom: 8px;
}
.founder-note .name {
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    color: var(--off-white);
    text-transform: none;
    letter-spacing: 0.01em;
}
.founder-note p
{
	    color: #999;
    font-size: 14.5px;
    margin-top: 8px;
}
section {
    padding: 110px 0;
    position: relative;
}
.rebar.dim {
        background-image: repeating-linear-gradient(115deg, #999 0px, #999 3px, transparent 2px, transparent 12px);
    height: 6px;
}

.philosophy-intro {
    max-width: 760px;
    font-size: 20px;
}
.dim
{
	color: #666;
}
.why h2
{

    font-size: clamp(30px, 4vw, 42px);
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
}

.pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
      
}
.pillar img
{
	width: 45px;
    margin-bottom: 10px;
}
.pillar {
   /* background: #fff6f6;
    padding: 40px 32px;*/
        text-align: center;
        border-radius: 13px;
    background: #fff6f6;
    padding: 28px 0;
}
.pillar .rebar {
    margin-bottom: 22px;
    width: 44px;
}
.rebar {
    height: 10px;
    width: 100%;
    background-image: repeating-linear-gradient(115deg, #D52228 0px, #D52228 3px, transparent 3px, transparent 13px);
    opacity: 0.9;
}
.pillar h3 {
    font-size: 16px;
    margin-bottom: 0px;
    font-family: 'Oswald', sans-serif;
}

.quality {
    background: #F8F9F7;
    border-top: 1px solid #ebebeb;
    border-bottom: 1px solid #ebebeb;
}
.quality-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
    margin-bottom: 30px;
    flex-wrap: wrap-reverse;
}
.quality-head h2 {
    font-size: clamp(30px, 4vw, 42px);
    max-width: 480px;
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    line-height: 1.25;
}
.quality-head p {
    max-width: 580px;
}

.spec-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #d52228;
    border: 1px solid #d52228;
}
.spec {
    background: #fff6f6;
    padding: 34px 26px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 14px 100%, 0 calc(100% - 14px));
}
.spec .mono {
    font-size: 11px;
    color: var(--ember-bright);
    display: block;
    margin-bottom: 16px;
}
.spec h3 {
    font-size: 20px;
    margin-bottom: 10px;
    letter-spacing: 0.01em;
        font-family: 'Oswald', sans-serif;
}
.spec p {
    color: var(--muted);
    font-size: 14.5px;
}

.m-0
{
	margin: 0;
}
.mt-2
{
	margin-top: 20px;
}
.mt-3
{
	margin-top: 30px;
}

.why {
    background: #F8F9F7;
    border-top: 1px solid #d7d7d7;
}
.why-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border: 1px solid #d7d7d7;
}
.why-grid > .why-item:nth-child(odd) {
    border-right: 1px solid #d7d7d7;
}
.why-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 28px 30px;
    border-bottom: 1px solid #d7d7d7;
}
.why-item .check {
    font-family: 'JetBrains Mono', monospace;
    color: #d52228;
    font-size: 18px;
    line-height: 1.4;
    flex-shrink: 0;
}
.why-item p {
    font-size: 16px;
    margin: 0;
}
.why-grid > .why-item:nth-child(5)
{
	    border-bottom: none;
}
.why-grid > .why-item:last-child
{
	    border-bottom: none;
}

.approach-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 70px;
}
.eyebrow {
    color: var(--ember-bright);
    font-size: 12.5px;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.eyebrow::before {
    content: "";
    width: 28px;
    height: 2px;
    background: var(--ember-bright);
    display: inline-block;
}
.approach-grid h2 {
    font-size: clamp(30px, 4vw, 42px);
    font-family: 'Oswald', sans-serif;
        text-transform: uppercase;
}
.approach-list {
    list-style: none;
}
.approach-list li {
    display: flex;
    gap: 20px;
    padding: 14px 0;
    border-top: 1px solid #ccc;
}
.approach-list li:last-child {
    border-bottom: 1px solid #ccc;
}
.rebar-v {
    width: 6px;
    align-self: stretch;
    background-image: repeating-linear-gradient(25deg, #D52228 0px, #D52228 7px, transparent 7px, transparent 12px);
    flex-shrink: 0;
}
.approach-list p {
    color: var(--off-white);
    padding: 6px 0;
    margin-bottom: 0;
}


.quote-section {
    text-align: center;
    padding: 140px 0;
}

.quote-section .lead {
    max-width: 790px;
    margin: 0 auto 25px;
    color: var(--muted);
    font-size: 18px;
}

.quote-section blockquote {
    font-family: 'Oswald', sans-serif;
    font-size: clamp(30px, 5.5vw, 58px);
    line-height: 1.15;
    color: var(--off-white);
    max-width: 840px;
    margin: 0 auto;
    font-weight: 500;
}
.quote-section .eyebrow {
    justify-content: center;
}
.quote-tags {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 40px;
    flex-wrap: wrap;
}
.quote-tags span {
    text-transform: uppercase;
    color: #fff;
    background: #D52228;
    padding: 8px 16px;
        border-radius: 100px;
}
.quote-section blockquote em {
    font-style: normal;
    color: #D52228;
}
.quote-section .small_title
{
	margin-bottom: 20px !important;
	margin: auto;
	padding: 6px 23px;
}
.red
{
	color: #D52228 !important;
}
.product-inner
{
	background: #F8F9F7;
}
.product-inner h3.p_head
{
	font-family: 'Oswald', sans-serif;
}

.logo:after
{
	height: 105px;
    width: 210px;
    background: #ffffff;
    display: inline-block;
    margin: 0 1em 1em 0;
    border-bottom-left-radius: 150px;
    border-bottom-right-radius: 150px;
    position: absolute;
    content: "";
    z-index: -1;
}


.banner-slider {
    position: relative;
    width: 100%;
    height: 556px;
    overflow: hidden;
}

.slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(60px);
    transition: all 1s ease;
}

.slide.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.slide img {
    width: 100%;
   /* height: 100%;
    object-fit: cover;*/
    /*animation: zoomImage 6s ease-in-out infinite;*/
}

/* Dark overlay */
.slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.15);
}

/* Content */
.banner-content {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
    color: #fff;
    max-width: 600px;
}

.banner-content h1 {
    font-size: 52px;
    margin-bottom: 15px;
    animation: textSlide 1s ease forwards;
}

.banner-content p {
    font-size: 20px;
    margin-bottom: 25px;
}

.banner-btn {
    display: inline-block;
    padding: 12px 28px;
    background: #fff;
    color: #222;
    text-decoration: none;
    border-radius: 5px;
    font-weight: 600;
}

/* Image Zoom */
@keyframes zoomImage {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.08);
    }
}

/* Text Animation */
@keyframes textSlide {
    from {
        opacity: 0;
        transform: translateY(40px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Dots */
.slider-dots {
    position: absolute;
    z-index: 5;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255,255,255,0.5);
    cursor: pointer;
    transition: 0.3s;
}

.dot.active {
    width: 35px;
    border-radius: 20px;
    background: #fff;
}

@media (min-width: 1920px) and (max-width: 2560px)  
{
  .banner-slider {
    position: relative;
    width: 100%;
    height: 783px !important;
    overflow: hidden;
}
}