@font-face {
  font-family: 'Gotham Bold';
  src: url("../fonts/GothaProBol.otf");
  font-weight: Bold;
}
@font-face {
  font-family: 'Gotham Regular';
  src: url("../fonts/GothaProReg.otf");
  font-weight: normal;
}

@font-face {
  font-family: 'Gotham Light';
  src: url("../fonts/GothaProLig.otf");
  font-weight: 300;
}

@font-face {
  font-family: 'Gotham Medium';
  src: url("../fonts/GothaProMed.otf");
  font-weight: Medium;
}
body {
	margin: 0;
	padding: 0;
	width: 100%;
	background: white;
	font-family: Gotham Bold;
}
.navbar {
	position: fixed;
	margin: 0;
	top: 0px;
	width: 100%;
	height: 83px;
	background: #E41E11;
	z-index: 9999999999;
	box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.2);
	font-family: Gotham Bold;
}
.navbar .logo img {
	height: 70px;
	position: absolute;
	left: 3vw;
	top: 0.6vh;
}
.navlinks a {
	font-size: 22px;
    text-decoration: none;
    color: white;
	padding-inline: 90px;
	background-color: #E41E11;
	display: flex;
    align-items: center; /* Vertically centers the text */
    height: 100%;        /* Forces the background to be exactly 83px */
    box-sizing: border-box; 
}
.navlinks {
	list-style: none;
    position: absolute;
    right: 0px;
    margin: 0;
    display: flex; /* Use flex instead of floats */
    height: 100%;  /* Fill the 83px navbar */
}
.navlinks li {
	display: flex;
    height: 100%;
}
.navlinks a:hover {
	background-color: #9a180f;
}
.video-section {
    position: relative;
    top: 80px;
    width: 100%;
   height: auto;
    overflow: hidden;
    line-height: 0; /* Removes white gap under video */
}
.bg-video {
    width: 100%;
    height: auto;
    display: block;
    filter: brightness(150%);
}
.video-overlay {
    position: absolute;
    top: 45%; /* Locked 100px from bottom */
    left: 10%;    /* Locked 50px from left */
    width: 100%;
    height: 100%;
    min-height: 100vh; /* Prevents video from being shorter than screen */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
    z-index: 10;
}
.video-overlay h1 {
    color: white;
    font-family: 'Gotham Light', sans-serif;
    font-size: clamp(20px, 3vw, 45px); /* Scales with page */
    margin: 0;
    padding-top: 20px;
	padding-bottom: 20px;
    letter-spacing: 0.09px;
    line-height: 1.1;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.8);
    position: relative;
    top: 0; /* Resetting your absolute positioning from before */
}
.view-project-btn {
    background-color: #ee3224;
    color: white;
    padding: 30px;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
    text-decoration: none;
    font-family: 'Gotham Bold', sans-serif;
    text-transform: uppercase;
    border-radius: 7px;
    transition: background 0.3s ease, transform 0.2s ease;
    font-size: clamp(12px, 1.5vw, 19px);
    display: inline-block;
}
.view-project-btn:hover {
    background-color: white;
    color: #ee3224;
    transform: translateY(-3px);
}
.redletter {
	color: #ee3224;
	font-family: Gotham Bold;
}

.highlight {
	color: #ee3224;
	font-family: Gotham Bold;
}
.text-with-bar {
	position: relative;
	display: inline-block;
	padding-top: 20px;
	font-family: Gotham Bold;
	font-size: 98px;
}
.text-with-bar::before {
	content: "";
	position: absolute;
	top: 0;
	left: 8.5px;
	width: 40px;
	height: 15px;
	background-color: #ee3224;
}
.Work {
	width: 100%;
	max-width: none;
	background-color: white;
	position: relative;
	z-index: 10;
	margin-left: 0;
	margin-right: 0;
	padding: 100px 5vw 0px 30vw;;
	box-sizing: border-box;
	margin-bottom: 0px;
	
}
.view-projects a{
	display: flex;
	color: black;
	justify-content: right;
	font-family: Gotham Bold;
	margin-top: 50px;
	font-size: clamp(20px, 3vw, 30px); /* Fluid typography */
	text-decoration-color: rgb(203, 203, 203);
	text-decoration-thickness: 3px;
	text-underline-offset: 10px
}
.view-projects a:hover{
	color: #ee3224;
}
.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  gap: 15px; 
  width: 100%;
}
.grid-container img {
	position: relative;
	left: 0.3vw;
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	transition: filter 0.3s ease;
	cursor: pointer;
}
.grid-container img:hover {
	filter: brightness(50%);
	transform: scale(1.03);
}
.overlay-text{
position: absolute;
    transform: translate( 2%, -180%); /* Centers exactly over the image */
    font-family: 'Gotham Bold', sans-serif;
    color: white;
    font-size: clamp(10px, 3vw, 20px); /* Fluid typography */
    text-transform: uppercase;
    text-align: center;
    width: 100%;       /* Keeps text from touching the box edges */
    pointer-events: none;
	text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7); 
}

.call-to-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 150px 20px;
  background-color: white;
  box-shadow: 0px 15px 10px -10px rgba(0, 0, 0, 0.2);
  margin-bottom: 200px;
  margin-top: 0px;
}

.call-to-action a {
  display: inline-block;
  background-color: black;
  color: white;
  text-decoration: none;
  font-family: 'Gotham Regular', sans-serif;
  padding: 20px 50px;
  border-radius: 7px;
  font-size: 18px;
  transition: transform 0.3s ease, background-color 0.3s ease;
}

.call-to-action h4 {
  font-family: Gotham Medium;
   font-size: clamp(30px, 3vw, 40px);
}
.call-to-action a:hover {
  background-color: #ee3224;
  transform: translateY(-3px);
}
section.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background-color: #ee3224;
  z-index: -10;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
}

section.footer .logo img {
  width: 250px;
  margin-bottom: 10px;
}

section.footer ul {
  list-style: none;
  display: flex;
  gap: 40px;
  padding: 0px;
}

section.footer ul li a {
  color: white;
  text-decoration: none;
  font-family: Gotham Bold;
  font-size: 0.9rem;
  font-weight: 500;
  display: flex;
}

section.footer a:hover {
  color: black;
}

.menu-checkbox {
  display: none !important;
  visibility: hidden;
  pointer-events: none;
  position: absolute;
}
.call-to-action {
  margin-top: -1px; /* Pulls the section up slightly to overlap the gap */
  position: relative;
  z-index: 11;
}

@keyframes Scale-fade {
	from {
		opacity: 0;
		scale: 0.8;
	}

	to {
		opacity: 1;
		scale: 1;
	}
}
@keyframes slide-in {
	from {
		opacity: 0;
		transform: translate(-100px);
	}

	to {
		opacity: 1;
		transform: translate(0px);
	}
}
@keyframes Fade-in {
	from {
		opacity: 0;
		transform: translateY(200px);
	}

	to {
		opacity: 1;
		transform: translateY(0px);
	}
}
.block {
	animation: Scale-fade ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 30%;
}
.Work h1 {
	animation: slide-in ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 50%;
}
.menu-checkbox {
	display: none !important;
	visibility: hidden;
	pointer-events: none;
	position: absolute;
}
.mobile-only {
    display: none !important;
}

@media screen and (max-width:1870px) {
.video-overlay {   
    top: 50%; /* Locked 100px from bottom */
}
}
@media screen and (max-width: 1018px) {
		.mobile-only {
    display: block !important; /* Show the link on mobile */
}
	.menu-checkbox {
		display: none !important;
		visibility: hidden;
		pointer-events: none;
		position: absolute;
	}
	.menu-checkbox {
		display: none !important;
	}
	.hamburger {
		display: flex !important;
		flex-direction: column;
		justify-content: space-between;
		width: 30px;
		height: 20px;
		position: fixed;
		right: 5vw;
		top: 30px;
		z-index: 1000000001;
		cursor: pointer;
	}
	.hamburger span {
		display: block;
		height: 3px;
		width: 100%;
		background-color: white;
		border-radius: 3px;
		transition: 0.3s ease;
	}


	.navbar nav {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 470px;
		background-color: #E41E11;
		z-index: 1000000000;
		padding-top: 100px;
	}
	.menu-checkbox:checked~nav {
		display: block !important;
	}
	.menu-checkbox:checked+.hamburger span:nth-child(1) {
		transform: translateY(9px) rotate(45deg);
	}
	.menu-checkbox:checked+.hamburger span:nth-child(2) {
		opacity: 0;
	}
	.menu-checkbox:checked+.hamburger span:nth-child(3) {
		transform: translateY(-9px) rotate(-45deg);
	}
	.navbar nav {
		background-color: rgba(0, 0, 0, 0.5);
		backdrop-filter: blur(6px);
	}
	.navbar {
		z-index: 1000000000 !important;
		height: 100px;
	}
	.navbar .logo {
		display: block;
		position: absolute;
		z-index: 1000000005 !important;
		height: 9000px;
		width: auto;
		top: 10px;
	}
	.navlinks {
		display: flex !important;
		flex-direction: column;
		align-items: center !important;
		position: relative !important;
		right: auto !important;
		top: auto !important;
		width: 100% !important;
		padding: 0 !important;
	}
	.navlinks li {
		width: 100%;
		float: none !important;
	}
	.navlinks a {
		display: block !important;
		width: 100% !important;
		padding: 15px 0 !important;
		font-size: 24px !important;
		text-align: center !important;
		background-color: transparent !important;
	}
	.navlinks a:hover {
		color: white !important;
		background-color: #E41E11 !important;
	}
}
@media screen and (min-width: 761px) and (max-width: 1018px) {
	.video-section {
    width: 100%;
   height: 70vh;
}
.bg-video {
    width: 100%;
    height: auto;
    display: block;
    filter: brightness(150%);
}
.video-overlay {
    position: absolute;
    top: 35%; /* Locked 100px from bottom */
}

.view-project-btn {
    
    padding: 20px;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}
	.grid-container {
		grid-template-columns: repeat(2,2fr) !important;
		gap: 15px;
	}
	.text-with-bar {
		font-size: 48px !important;
	}
	.text-with-bar::before {
		width: 30px;
		height: 10px;
	}
	 .view-projects a{
	display: flex;
	font-size: 3.5vw;
	text-decoration-color: rgb(203, 203, 203);
	text-decoration-thickness: 3px;
	text-underline-offset: 10px
}
.Work{
	padding-left: 50px;
	padding-right: 50px;
}
}

@media screen and (min-width: 499px) and (max-width: 760px) {
.video-section {
width: 100%;
height: 70vh;
}
.bg-video {
    width: 100%;
    height: auto;
    display: block;
    filter: brightness(150%);
}
.video-overlay {
    position: absolute;
    top: 18%; /* Locked 100px from bottom */
}

.view-project-btn {
    
    padding: 20px;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}
	.grid-container {
		grid-template-columns: repeat(1,1fr) !important;
		gap: 15px;
	}
	.text-with-bar {
		font-size: 48px !important;
	}
	.text-with-bar::before {
		width: 30px;
		height: 10px;
	}
.Work{
	padding-left: 20px;
	padding-right: 20px;
}

}

@media screen and (min-width: 0px) and (max-width: 500px) {
	.Work{
	padding-left: 20px;
	padding-right: 20px;
}
.video-section {
    width: 100%;
   height: 30vh;
}
.bg-video {
width: 100%;
        height: 100%;
        /* This zooms the video to fill the 70vh height from the center */
        object-fit: cover; 
        object-position: center;
}
.video-overlay {
    position: absolute;
    top: 30%; /* Locked 100px from bottom */
}

.view-project-btn {
    
    padding: 20px;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}
	.grid-container {
		grid-template-columns: repeat(1,1fr) !important;
		gap: 15px;
	}
	.text-with-bar {
		font-size: 48px !important;
	}
	.text-with-bar::before {
		width: 30px;
		height: 10px;
	}
	 .view-projects a{
	display: flex;
	font-size: 3.5vw;
	text-decoration-color: rgb(203, 203, 203);
	text-decoration-thickness: 3px;
	text-underline-offset: 10px
}
}

@media screen and (max-height: 950px) and (max-width: 875px){
.video-section {
    width: 100%;
   height: 50vh;
}
.video-overlay {
    position: absolute;
    top: 30%; /* Locked 100px from bottom */
}
 .view-projects a{
	display: flex;
	font-size: 3vh;
	text-decoration-color: rgb(203, 203, 203);
	text-decoration-thickness: 3px;
	text-underline-offset: 10px
}
section.footer ul li a {
font-size: 12px;
}
.overlay-text{
font-size: clamp(15px, 4vw, 20px); /* Fluid typography */
transform: translate(2%, -200%); /* Centers exactly over the image */
}

}
