@charset "utf-8";

/*
   New Perspectives on HTML5 and CSS3, 8th Edition
   Assignment 1
   
   Author: Aaron Ng
   Date: 12 May 2024    
   Filename: Zero Hunger Txt.css

*/
/* Set Defaut*/
* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: 'Poppins', sans-serif;
}
html {
   scroll-behavior: smooth;
   max-width: 1920px; /* Width Resolution of 1920px */
}
:root {
   --themeGreen: #2cd737;
}
/* Home Page GIF */
.gif-container {
   position: absolute;
   z-index: -1;
}
/* Menu Icon */
#menu-icon {
   font-size: 35px;
   color: white;
   z-index: 1001;
   cursor: pointer;
   margin-left: 75px;
   display: none;
}
/* Body */

body {
   background: linear-gradient(to right, #FFD700 0%, #FFFF00 50%, #FFD700 100%);
}
header.sticky {
   background: rgba(0, 100, 0, 0.3);
   border-bottom: 2px solid rgba(0, 100, 0, 0.3);
   padding: 12px 15%;
}
/* Main Goal Section */ 
.sectionTitle {
   width: 300px;
   border-bottom: 3px solid var(--themeGreen);
   text-align: center;
   font-size: 2rem;
   font-weight: 200;
   margin: 0 auto 50px;
   position: relative;
   padding: 10px 0;
   text-transform: uppercase;
}
.objective img {
   max-width: 530px;
   height: auto;
   width: 100%;
   border-radius: 8px;
   animation: color-mix 1s linear infinite alternate;
   box-shadow: 0 10px 20px 0 currentColor;
}
.objective {
   translate: 0 910px;
   text-align: center;
   height: 100vh;
}
.split{
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   align-items: center;
   gap: 1.5rem;
}

.sectionTitle::after {
   display: inline-block;
   content: "";
   height: 15px;
   width: 15px;
   background-color: var(--themeGreen);
   position: absolute;
   left: calc(50% - 10px);
   top: calc(75% - 7px);
   transform: rotate(45deg) translate(50%, 50%);
   border: 3px solid #FFFF00;
}
.objective-text span {
   color: var(--themeGreen);
}

.objective-text h2{
   font-size: 3rem;
   line-height: 1;
}

.objective-text p {
   color:  black;
   font-size: 1.1rem;
   line-height: 1.8;
   padding: 30px;
   margin-bottom: 2rem;
}
/* Rainbow box-shadow */
@keyframes color-mix {
   0% { color: red }
   100% { color: blue }
}
/* Image Slider Section */
.section {
   margin: 0;
   padding: 0;
   height: 250vh;
   justify-content: center;
   display: flex;
}
.st {
	animation-name: fade-zoom;
	animation-duration: 2s;
}
@keyframes fade-zoom {
	0% {
		opacity: 0;
		transform: scale(0);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
.slider {
   width: 1000px;
   height: 775px;
   border-radius: 20px;
   overflow: hidden;
   margin: 0;
   translate: 0 950px;
   animation: color-mix 1s linear infinite alternate;
   box-shadow: 0 6px 16px 0 currentColor;
}
.slider h1 {
   font-size: 50px;
   color: green;
   text-align: center;
}
.slide{
   width: 500%;
   height: 500px;
   display: flex;
}
.slide input {
   display: none;
}
.st {
   width: 20%;
   transition: 2s;
}
.st img{
   width: 1000px;
   height: 700px;
   border-radius: 30px;
}
.nav-m {
   position: absolute;
   width: 800px;
   margin-top: 170px;
   margin-left: 100px;
   justify-content: center;
   display: flex;
}
.m-btn {
   border: 2px solid #23e3c2;
   padding: 10px;
   border-radius: 5px;
   cursor: pointer;
   transition: 1s;
}
.m-btn:not(:last-child) {
   margin-right: 20px;
}
.m-btn:hover {
   background-color: #23e3c2;
}
#radio1:checked ~.first {
   margin-left: 0;
}
#radio2:checked ~.first {
   margin-left: -20%;
}
#radio3:checked ~.first {
   margin-left: -40%;
}
#radio4:checked ~.first {
   margin-left: -60%;
}

.nav-auto {
   position: absolute;
   width: 800px;
   margin-top: 640px;
   margin-left: 430px;
   display: flex;
}
.nav-auto div{
   border: 2px solid #23e3c2;
   padding: 5px;
   border-radius: 10px;
   transition: 1s;
}
.nav-auto div:not(:last-child) {
   margin-right: 30px;
   justify-content: center;
}
#radio1:checked ~ .nav-auto .a-b1 {
   background-color: #23e3c2;
}
#radio2:checked ~ .nav-auto .a-b2 {
   background-color: #23e3c2;
}
#radio3:checked ~ .nav-auto .a-b3 {
   background-color: #23e3c2;
}
#radio4:checked ~ .nav-auto .a-b4 {
   background-color: #23e3c2;
}

/* Footer Section */
footer {
   background-color: #0a250f;
   color: yellow;
   padding: 50px 0;
   font-size: 14px;
}
footer .container {
   display: grid;
   grid-template-columns: 1fr 1fr;
   grid-gap: 50px;

}

footer .title {
   font-size: 20px;
   font-weight: 600;
   text-transform: uppercase;
   border-bottom: 2px solid;
   margin-bottom: 30px;
   padding: 0 0 5px 0;
}

footer p {
   margin-bottom: 10px;
}


footer .newsLetterContainer img {
   width: 120px;
   height: 120px;
   margin-bottom: 11px;
}

footer .newsLetterContainer input {
   background-color: transparent;
   border: 1px solid yellow;
   outline: none;
   padding: 10px 15px;
   width: 100%;
   margin-top: 10px;
   color: yellow;
   border-radius: 30px;
}
footer .connectContainer p a {
   text-decoration: none;
   color: yellow;
   display: inline-block;
   transition: background-color 0.3s;
}
footer .connectContainer p a:hover {
   text-decoration: underline;
   background-color: #218838;
}
/* Navigation Bar */
.header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   padding: 20px 160px;
   background: rgba(0, 100, 0, 0.3);
   backdrop-filter: blur(10px);
   display: flex;
   justify-content: space-between;
   align-items: center;
   z-index: 100;
   border-radius: 30px;
   text-align: center;
   border-bottom: 2px solid rgba(0, 100, 0, 0.3);
}
.header span {
   position: absolute;
   top: 0;
   left: -100%;
   width: 100%;
   height: 100%;
   background: linear-gradient(90deg, transparent,
   rgba(0, 100, 0, 0.5), transparent);
   transition: 0.5s;
}
.header:hover span:nth-of-type(1) {
   left: 100%;
}
.Logo {
   font-size: 48px;
   text-decoration: none;
   font-weight: 700;
   background: linear-gradient(to right, #FFD700 0%, #FFFF00 50%, #FFD700 100%);
   -webkit-background-clip: text;
   background-clip: text;
   color: transparent;
   position: relative;
   display: inline-block;
}
.navbar a {
   position: relative;
   font-size: 25px;
   background: linear-gradient(to right, #FFD700 0%, #FFFF00 50%, #FFD700 100%);
   -webkit-background-clip: text;
   background-clip: text;
   color: transparent;
   font-weight: 500;
   text-decoration: none;
   margin-left: 40px;
   transition: 0.3s;
}

/* Company Logo in middle of webpage */
.logo-container {
   translate: 0 230px;
   text-align: center;
}
.logo-container h1 {
   font-size: 80px;
   color: transparent;
   background: linear-gradient(to right, #8B8000 0%, #FFFF00 50%, #9a8612 100%);
   -webkit-background-clip: text;
   background-clip: text;
   font-weight: 600;
}
.logo-container h1 a:link {
   text-decoration: none;
}
 
.logo-container h1 a:visited {
   text-decoration: none;
   color: transparent;
   background: linear-gradient(to right, #8B8000 0%, #FFFF00 50%, #9a8612 100%);
   -webkit-background-clip: text;
   background-clip: text;
}
 
.logo-container h1 a {
   color: transparent;
   background: linear-gradient(to right, #8B8000 0%, #FFFF00 50%, #9a8612 100%);
   -webkit-background-clip: text;
   background-clip: text;
   -moz-transition: all 0.2s ease-in;
   -o-transition: all 0.2s ease-in;
   -webkit-transition: all 0.2s ease-in;
   transition: all 0.2s ease-in;
}
 
.logo-container h1 a:hover {
   color: #fdec6e;
   text-shadow:0px 0px 30px	#008000;
   -moz-transition: all 0.2s ease-in;
   -o-transition: all 0.2s ease-in;
   -webkit-transition: all 0.2s ease-in;
   transition: all 0.2s ease-in;
}
/* Yellow Shadow */
@-moz-keyframes yellow {
   0%, 100% {
     -moz-box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5);
     box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5); }
 
   50% {
     -moz-box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0);
     box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0); } }
 
 @-webkit-keyframes yellow {
   0%, 100% {
     -webkit-box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5);
     box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5); }
 
   50% {
     -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0);
     box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0); } }
 
 @-o-keyframes yellow {
   0%, 100% {
     box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5); }
 
   50% {
     box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0); } }
 
 @keyframes yellow {
   0%, 100% {
     box-shadow: 1px 0px 19px 4px #fff503, inset 0px 0px 10px rgba(255, 255, 255, 0.5); }
 
   50% {
     box-shadow: 0px 0px 0px 0px rgba(255, 245, 3, 0), inset 0px 0px 0px rgba(255, 255, 255, 0); } }
/* Button */
.button {
   text-align: center;
   padding: 10px 30px;
   text-decoration: none;
   color: #000;
   font-weight: bold;
   -webkit-border-radius: 15px;
   -moz-border-radius: 15px 0;
   border-radius: 15px 0;
   margin-right: 20px; 
}
/* Yellow Background */
.yellow {
   text-shadow: 0px 1px 0px #faffc7;
   background-image: -webkit-linear-gradient(top, #fff966, #f3fd80);
   background-image: -moz-linear-gradient(top, #fff966, #f3fd80);
   background-image: -o-linear-gradient(top, #fff966, #f3fd80);
   background-image: linear-gradient(to bottom, #fff966, #f3fd80);
   -webkit-animation: yellow 2s infinite;
   -moz-animation: yellow 2s infinite;
   -o-animation: yellow 2s infinite;
   animation: yellow 2s infinite; 
}
.logo-container .welcome {
   font-family: sans-serif;
   text-transform: uppercase;
   display: block;
}

.logo-container {
   text-align: center;
   position: absolute;
   left: 50%;
   top: 20%;
   transform: translate(-50%,-50%); 
   width: 100%;
}

.welcome {
   font-size: 60px;
   font-weight: 700;
   letter-spacing: 8px;
   margin-bottom: 20px;
   position: relative;
   animation: text 3s 1;
}

@keyframes text {
   0%{
       color: #000;
       margin-bottom: -40px;
   }

   30%{
       letter-spacing: 25px;
       margin-bottom: 40px;
   }

   85%{
       letter-spacing: 8px;
       margin-bottom: 0px;
   }
}

.logo2 {
   width: 160px;
   height: auto; /* Ensures the logo scales correctly */
}
/* Navigation Bar Animation */
.navbar a:hover {
   color: #0ef;
}
.navbar span {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: -1;
   border-bottom: 4px solid #0ef;
   border-radius: 15px;
   transform: scale(0) translateY(50px) translateX(-4px);
   opacity: 0;
   transition: 0.5s;
}
.navbar a:hover span:nth-child(5) {
   transform: scale(1) translateY(5px) translateX(-4px);;
   opacity: 1;
}
.navbar a:hover {
   color: #0ef;
   background: #2196f3;
   box-shadow: 0 0 10px #2196f3, 0 0 40px #2196f3, 0 0 80px #2196f3;
   transition-delay: 0.5s;
   border-radius: 10px;
}


.navbar a span {
   position: absolute;
   display: block;
}




.navbar a span:nth-child(1) {
   top: 0;
   left: -100%;
   width: 100%;
   height: 2px;
   background: linear-gradient(90deg, transparent, #2196f3);
}



.navbar a:hover span:nth-child(1) {
   left: 100%;
   transition: 0.5s;
}


.navbar a span:nth-child(3) {
   bottom: 0;
   right: -100%;
   width: 100%;
   height: 2px;
   background: linear-gradient(270deg, transparent, #2196f3);
}

.navbar a:hover span:nth-child(3) {
   right: 100%;
   transition: 1s;
   transition-delay: 0.5s;
}



.navbar a span:nth-child(2) {
   top: -100%;
   right: 0;
   width: 2px;
   height: 100%;
   background: linear-gradient(180deg, transparent, #2196f3);
}

.navbar a:hover span:nth-child(2) {
   top: 100%;
   transition: 1s;
   transition-delay: 0.25s;
}
/* Screen Resolutions */
@media (max-width: 1480px) {
   header {
      padding: 12px 2.5%;
      transition: .1s;
   }
   header.sticky {
      padding: 10px 2.5%;
      transition: .1s;
   }
   .split{
      display: grid;
      grid-template-columns: repeat(1, 1fr);
   }

   section {
      padding: 110px 3% 60px;
   }
   .end {
      padding: 15px 3%;
   }
   .slider {
      translate: 0 1400px;
   }
   .section {
      height: 314vh;
      justify-content: center;
      display: flex;
   }
}
@media (max-width: 840px) {
   #menu-icon {
      display: block;
   }
   .navbar {
      position: absolute;
      top: -1000px;
      right: 0;
      left: 0;
      display: flex;
      flex-direction: column;
      background: rgba(0, 100, 0, 0.3);
      backdrop-filter: blur(10px);
      text-align: left;
      transition: all .45s ease;
      border-bottom: 2px solid rgba(0, 100, 0, 0.3);
   }
   .section {
      height: 340vh;
      justify-content: center;
      display: flex;
   }
   .slider {
      translate: 0 1600px;
   }
   .navbar a {
      display: block;
      font-size: 20px;
      margin: 17px;
      transform: all .45s ease;
   }
   .navbar a:hover {
      color: var(--main-color);
   }
   .navbar a:active {
      color: var(--text-color);
   }
   .navbar.open {
      top: 100%;
   }
}