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

}

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

}

@font-face {
  font-family: 'Gotham Medium';
  src: url("../fonts/GothaProMed.otf");
  font-weight: Medium;
  font-display: swap;

}
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;
}
.main{
display: flex;
    flex-direction: column; /* Stack children vertically */
    justify-content: center;
    align-items: center;
    position: relative;     /* Becomes the anchor for the watermark */
    min-height: 60vh;       /* Gives the section some height */
    overflow: hidden;       /* Keeps the large watermark from causing scrollbars */
  	padding-bottom: 240px;
	margin: 0;
	top: 10vh;
	background-color: white;
}
.background-watermark{
	position: absolute;     /* Pulls it out of the layout flow */
    top: 40vh;
    left: 35%;
    transform: translate(-50%, -50%); /* Perfectly centers it */
    width: 20vw;
	 min-width: 600px;             /* Adjust size as needed */
    opacity: 0.3;           /* Makes it a subtle watermark */
	padding: 0;
	margin: 0;
}
.description{
	position: relative;
    z-index: 2;             /* Sits on top of the watermark */
    text-align: left;
    max-width: 10000px;
	left: 35%;
	top: 1vh;
}
.description h2{
	width: 40%;
	font-size: clamp(40px, 6vw, 60px);
	font-family: Gotham Bold; 
}
.description h3{
	width: 40%;
	font-size: clamp(30px, 2vw, 40px);
	font-family: Gotham Bold; 
}
.description p{
	width: 40%;
	line-height: 130%;
	font-size: clamp(15px, 1.5vw, 20px);
	font-family: Gotham Regular; 
	
}
.highlight {
	color: #E41E11;
	font-family: Gotham Bold;
}
.Work {
	width: 100%;
	max-width: none;
	background-color: white;
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 20px;
	box-sizing: border-box;

}
.work-text {
  position: relative;
  display: flex;
  font-family: Gotham Bold;
  font-size: clamp(40px, 6vw, 90px);
  margin: 0;
  padding-left: 2%;
  padding-right: 2%;
  padding-bottom: 2%;
  top: 0;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  gap: 15px; 
  justify-content: center;
  margin-bottom: 20px;
  padding-right: 2%;
	padding-left: 2%;
  padding-bottom: 0px;
}
.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.01);
}
.view-projects a{
	display: flex;
	color: black;
	justify-content: right;
	padding-top: 20px;
	font-family: Gotham Bold;
	margin-top: 0px;
	font-size: clamp(20px, 3vw, 30px); /* Fluid typography */
	text-decoration-color: rgb(203, 203, 203);
	text-decoration-thickness: 3px;
	text-underline-offset: 10px;
	padding-bottom: 0px;
	  padding-right: 2%;
	padding-left: 2%;
	
}
.view-projects a:hover{
	color: #E41E11;
}
.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;
}
.call-to-action a {
    display: inline-block;
    background-color: black;
    color: white;
    text-decoration: none;
    font-family: 'Gotham Regular', sans-serif;
    padding: 20px 50px;        /* Controls button size */
    border-radius: 7px;       /* Makes it a pill shape */
    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);
}

/* Hover Effect */
.call-to-action a:hover {
    background-color: #E41E11;    /* Slightly lighter black on hover */
    transform: translateY(-3px); /* Subtle lift effect */
}

section.footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 200px;
	background-color: #E41E11;
	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;
}
@keyframes Scale-fade {
	from {
		opacity: 0;
		scale: 0.8;
	}

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

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

	to {
		opacity: 1;
		transform: translateY(0px);
	}
}
.grid-container .block {
  position: relative;
  overflow: hidden; /* This ensures nothing (like the text or zoom effects) spills out */
}

.grid-container .block {
  position: relative;
  overflow: hidden;
  display: block; /* Ensures the link/div takes up full space */
}

/* 2. The Text: Positioned at the bottom center */
.overlay-text {
  position: absolute;
  
  /* Horizontal Centering */
  left: 50%;
  transform: translateX(-50%); /* Only shifts on the X-axis to stay centered */
  
  /* Vertical Placement */
  bottom: 15px; /* Adjust this number to move text higher or lower from the edge */
  
  /* Sizing and Behavior */
  width: 90%; 
  text-align: center;
  pointer-events: none;
  z-index: 10;

  /* Your existing Typography */
  font-family: 'Gotham Bold', sans-serif;
  color: white;
  font-size: clamp(10px, 1.5vw, 34px); /* Slightly smaller often looks better for bottom captions */
  text-transform: uppercase;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
}
.lightbox {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 20000000000;
  justify-content: center;
  align-items: center;
}

.lightbox.active {
  display: flex !important;
}

.menu-checkbox {
	display: none !important;
	visibility: hidden;
	pointer-events: none;
	position: absolute;
}

.grid-container img{
	animation: Fade-in ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 40%;
}
.Work h1{
animation: slide-in ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 40%;
}
.call-to-action a{
	animation: Fade-in ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 40%;
}
.call-to-action h4{
	animation: Fade-in ease-in-out forwards;
	animation-timeline: view();
	animation-range: entry 0% cover 40%;
}
.mobile-only {
    display: none !important;
}

@media screen and (max-width:1044px) {
	.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: 370px;
		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 !important;
		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;
	}
	.call-to-action{
		padding: 40px;
	}
	

}

@media screen and (max-width:500px) {
	.call-to-action a{
	animation: none;
}
.call-to-action h4{
animation: none;
}
.Work h1{
	animation: none;
}
.overlay-text{
	opacity: 0;
}
.grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr); 
  gap: 15px; 
}
.description{
	left: 25px;
	right: 25px;
	top: 2vh;
}
.description h2{
	width: 90%;
	font-size: clamp(40px, 6vw, 60px);
	font-family: Gotham Bold; 
}
.description h3{
	width: 90%;
	font-size: clamp(30px, 2vw, 40px);
	font-family: Gotham Bold; 
}
.description p{
	width: 90%;
	line-height: 130%;
	font-size: clamp(15px, 1.5vw, 20px);
	font-family: Gotham Regular; 
	
}
}