<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />

    <link
      href="https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900"
      rel="stylesheet"
    />

    <link rel="stylesheet" href="css/icon-font.css" />
    <link rel="stylesheet" href="css/icon-font.css" />
    <link rel="stylesheet" href="css/style.css" />
    <link rel="shortcut icon" type="image/png" href="img/favicon.png" />

    <title>Nettflix Bootcamp</title>
    <script src="https://code.jquery.com/jquery-3.6.3.js" integrity="sha256-nQLuAZGRRcILA+6dMBOvcRh5Pe310sBpanc6+QBmyVM=" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/owl.carousel.min.js">
    </script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.carousel.min.css">
  </head>
  <body>
    <div class="navigation">
      <input type="checkbox" class="navigation__checkbox" id="navi-toggle" />
      <label for="navi-toggle" class="navigation__button"><span class="navigation__icon">&nbsp;</span></label>

      <div class="navigation__background">&nbsp;</div>

      <nav class="navigation__nav">
        <ul class="navigation__list">
          <li class="navigation__item">
            <a href="#about" class="navigation__link link1">Project1</a>
          </li>
          <li class="navigation__item">
            <a href="#features" class="navigation__link link2">Project2</a>
          </li>
          <li class="navigation__item">
            <a href="#tours" class="navigation__link link3">Project3</a>
          </li>
         
          
        </ul>
      </nav>
    </div>
    
    <header class="header">
      <div class="header__logo-box">
        <img src="https://bryan-tineo-portafolio2.netlify.app/images/bryanmax9_icon.png" alt="logo" class="header__logo" />
      </div>

      <div class="header__text-box">
        <h1 class="heading-primary">
          <span class="heading-primary--main">Netflix Advanced Bootcamp</span>
          <span class="heading-primary--sub">Bryan Tineo</span>
        </h1>

        
      </div>
    </header>

    <main>
      <section class="section-about" id="about">
        <div class="u-center-text">
          <h2 class="heading-secondary u-margin-bottom-big" id="about-sec">
            Section About
          </h2>
        </div>

        <div class="row">
          <div class="col-1-of-2">
            <h3 class="heading-tertiary u-margin-bottom-small">
              Description
            </h3>
            <p class="paragraph">
              The 12 Week Advanced Netflix Pathways Bootcamp for Software Engineering (Java) is a comprehensive program designed to enhance the software engineering skills of individuals. The bootcamp focuses on Java programming, covering essential topics such as object-oriented programming, data structures, algorithms, and database design, using real-world projects aligned with Netflix's engineering practices.
            </p>
            

            <p class="paragraph">
              The highly interactive and immersive curriculum includes lectures, coding sessions, mentorship, and challenging projects, providing participants with hands-on experience and feedback. Suitable for those with prior programming experience, the program results in a deep understanding of Java and its applications, as well as the confidence to tackle complex engineering problems. Upon completion, participants receive a certificate showcasing their expertise and making them highly competitive in the job market.
            </p>

            <a href="https://github.com/bryanmax9/Bryan_Tineo_AllNetflixChallenges" class="btn-text">Github repository of Netflix Challenges &rarr;</a>
          </div>
          <div class="col-1-of-2">
            <div class="composition">
              <img
                src="https://www.crn.com/resources/027e-1737ab2a5482-5b472a146614-1000/java-logo.jpeg"
                alt="Java"
                class="composition__photo composition__photo--p1"
              /><img
                src="https://developers.redhat.com/sites/default/files/styles/article_feature/public/blog/2014/05/homepage-docker-logo.png?itok=zx0e-vcP"
                alt="Docker"
                class="composition__photo composition__photo--p2"
              /><img
                src="https://repository-images.githubusercontent.com/259018719/0663e880-8a02-11ea-9c75-44ca9a90cc1f"
                alt="Spring-Framework"
                class="composition__photo composition__photo--p3"
              />
            </div>
          </div>
        </div>
      </section>
      <section class="gallery gallery__frame">
        <figure class="gallery__item gallery__item--1 ">
          <img src="https://i.imgur.com/CVpBrBE.jpeg" alt="Gallery image 1"  class="gallery__img ">
        </figure>
        <figure class="gallery__item gallery__item--2 ">
          <img src="https://i.imgur.com/ADDEJ7T.jpeg" alt="Gallery image 2"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--3">
          <img src ="https://i.imgur.com/K7V2qTn.jpeg"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--4">
          <img src="https://i.imgur.com/4GMweKL.jpeg" alt="Gallery image 4"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--5">
          <img src="https://i.imgur.com/AMk9i9c.jpeg" alt="Gallery image 5"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--6">
          <img src="https://i.imgur.com/HxGEnZ6.jpeg"   alt="Gallery image 6"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--7">
          <img src="https://i.imgur.com/z2gbsFu.jpeg"  alt="Gallery image 7"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--8">
          <img src="https://i.imgur.com/l3cUTtW.jpeg" alt="Gallery image 8"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--9">
          <img src="https://i.imgur.com/XWK2vJ6.jpeg" alt="Gallery image 9"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--10">
          <img src="https://i.imgur.com/XAo6ao2.jpeg" alt="Gallery image 10"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--11">
          <img src="https://i.imgur.com/3yGiBt6.jpeg"  alt="Gallery image 11"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--12">
          <img src="https://i.imgur.com/yYiENgF.jpeg" alt="Gallery image 12"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--13">
          <img src="https://i.imgur.com/KniJzML.jpeg" alt="Gallery image 13"  class="gallery__img">
        </figure>
        <figure class="gallery__item gallery__item--14 frame">
          <img src="https://i.imgur.com/Al8XIaO.jpeg" alt="Gallery image 14"  class="gallery__img">
        </figure>
        
        
        
      </section>
      
      <section class="section-stories" id="story">
        <div class="bg-video">
          <video class="bg-video__content" autoplay muted loop>
            <source src="https://drive.google.com/uc?export=download&id=1okc_HHf-5lGcIxw7HKsibiGNj1wAMYZw" type="video/mp4" />
            <source src="https://drive.google.com/uc?export=download&id=1C6ABdiNjumaKZVO6ytFBn1QNLcmboLPR" type="video/webm" />
            Your browser is not supported for this videos!sorry😥
          </video>
        </div>
        <div class="u-center-text">
          <h2 class="heading-secondary u-margin-bottom-big">
            About Me
          </h2>
        </div>

        <div class="row">
          <div class="story">
            <figure class="story__shape">
              <img
                src="https://media.licdn.com/dms/image/D5603AQGuExkmqpb6BQ/profile-displayphoto-shrink_200_200/0/1665378322144?e=1681344000&v=beta&t=aA_aaXMC_CUIhWCx7twMwTZNmpzQqfMm1y73e949FGs"
                alt="Bryan Tineo-Developer"
                class="story__img"
              />
              <figcaption class="story__caption">Bryan</figcaption>
            </figure>
            <div class="story__text">
              <h3 class="heading-tertiary u-margin-bottom-small">
                Bryan Tineo
              </h3>
              <p>
                I am a motivated and capable person looking for new opportunities in Web Development, Software Development, and IT support.
              </p>
            </div>
          </div>
        </div>

        <div class="row">
          <div class="story">
            <figure class="story__shape">
              <img
                src="https://bryan-tineo-portafolio2.netlify.app/images/bryanmax9_icon.png"
                alt="Acttive Worm"
                class="story__img"
              />
              <figcaption class="story__caption">Bryan Logo</figcaption>
            </figure>
            <div class="story__text">
              <h3 class="heading-tertiary u-margin-bottom-small">
                Active worm
              </h3>
              <p>
                Web and App Developers. We are active learners, learning 24/7. Our Goal is creating Amazing Products. 
              </p>
            </div>
          </div>
        </div>

        <div class="u-center-text u-margin-top-huge">
          <a href="https://bryan-tineo-portafolio2.netlify.app/" class="btn-text">Portfolio page &rarr;</a>
        </div>
      </section>
      
      <section class="section-projects" id="projects">
        <div class="slider owl-carousel">
          <div class="card">
          <div class="img"><img src="https://i.ytimg.com/vi/WSaS17CSS4c/maxresdefault.jpg" alt=""></div>
            <div class="content">
              <div class="title">Magic 8 Ball</div>
              <div class="sub-title">Answer Questions</div>
              <p>
                The original Magic 8 Ball is a toy used for fortune-telling or seeking advice. It has 20 answers, which are revealed by turning it over to see a message through a window.

In the context of an API, a Magic 8 Ball API would allow you to make a request, such as asking a question, and receive a random answer in the form of a text message or code. The response would simulate the experience of using a physical Magic 8 Ball toy.
              </p>
              <div class="btn">
                <a href="#">Go to page</a>
              </div>
              
            </div>
        </div>
          <div class="card">
          <div class="img"><img src="https://www.garyfox.co/wp-content/uploads/2019/10/best-top-inspirational-quotes-1024x536.png" alt=""></div>
            <div class="content">
              <div class="title">Quotes</div>
              <div class="sub-title">Random Quotes Generator</div>
              <p>
                A "Random Quote API" is an application programming interface (API) that provides access to a database of quotes and returns a random quote to the user. Quotes can be from famous personalities, writers, historical figures, or even fictional characters.
              </p>
              <div class="btn">
                <a href="#">Go to page</a>
              </div>
              
            </div>
        </div>
          <div class="card">
          <div class="img"><img src="https://i.pinimg.com/originals/6b/84/14/6b84142ef4022b699a3085b3420bad54.jpg" alt=""></div>
            <div class="content">
              <div class="title">Definition</div>
              <div class="sub-title">Random word with definition</div>
              <p>
                A "Random Word with its Respective Definition API" is an application programming interface (API) that provides access to a database of words and their definitions, and returns a random word with its definition to the user. When a request is made to the API, it selects a random word from its database along with its definition, and returns it to the caller in the form of a text string or a JSON object. The API can be configured to return words based on different categories, such as nouns, verbs, adjectives, or specific subjects, like geography or science.
              </p>
              <div class="btn">
                <a href="#">Go to page</a>
              </div>
              
            </div>
        </div>
        </div>
        
      </section>
    </main>

<footer class="footer">
      <div class="footer__logo-box">
        <img src="https://bryan-tineo-portafolio2.netlify.app/images/bryanmax9_icon.png" alt="Full logo" class="footer__logo" />
      </div>
      <div class="row">
        <div class="col-1-of-2">
          <div class="footer__navigation">
            <ul class="footer__list">
              <li class="footer__item">
                <a href="https://www.linkedin.com/in/bryan-tineo/" class="footer__link">Company</a>
              </li>
              <li class="footer__item">
                <a href="https://www.linkedin.com/in/bryan-tineo/" class="footer__link">Contact</a>
              </li>
              <li class="footer__item">
                <a href="https://www.linkedin.com/in/bryan-tineo/" class="footer__link">Carrers</a>
              </li>
              <li class="footer__item">
                <a href="https://www.linkedin.com/in/bryan-tineo/" class="footer__link">Privacy policy</a>
              </li>
              <li class="footer__item">
                <a href="https://www.linkedin.com/in/bryan-tineo/" class="footer__link">Terms</a>
              </li>
            </ul>
          </div>
        </div>
        <div class="col-1-of-2">
          <p class="footer__copyright">
            Built by <a href="https://bryantineo.hashnode.dev/" class="footer__link">Bryan Tineo</a> for
            my Bootcamp at Neflix. Copyright &copy; by Bryan Tineo.
          </p>
        </div>
      </div>
    </footer>
    <script>
      $(".slider").owlCarousel({
        loop: true,
        autoplay: true,
        autoplayTimeout: 2500,//2000ms = 2.5s
        autoplayHoverPause: true,
      });
    </script>

  </body>
</html>
//Mixins
@mixin clearfix {
  &::after {
    content: "";
    display: table;
    clear: both;
  }
}

@mixin absCenter {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

// Media Query Manager
/* 
0 - 600px: Phone
600 - 900:px Tablet portrait
900 - 1200px: Tablet landscape
[1200 - 1800] is where our normal styles apply
1800px + : Big Desktop

$breakpoint argument choices:
- phone
- tab-port
- tab-land
- big-desktop

ORDER: Base + typography > general layout + grid > page layout > components
1em = 16px
*/

@mixin respond($breakpoint) {
  @if $breakpoint == phone {
    //600px /16 = 37.5
    @media only screen and (max-width: 37.5em) {
      @content;
    }
  }

  @if $breakpoint == tab-port {
    //900px /16= 56.25
    @media only screen and (max-width: 56.25em) {
      @content;
    }
  }

  @if $breakpoint == tab-land {
    //1200px /16= 75
    @media only screen and (max-width: 75em) {
      @content;
    }
  }

  @if $breakpoint == big-desktop {
    //1800px /16=112.5
    @media only screen and (min-width: 112.5em) {
      @content;
    }
  }
}


//Variables

// COLORS
$color-penguin-light: #b2ebf2;
$color-penguin-dark: #4dd0e1;

$color-primary: #d966ff;
$color-primary-light: #ff5f5f;
$color-primary-middle: #ff5f5f;
$color-primary-dark: #ff2e2e;

$color-secondary-light: #ffb900;
$color-secondary-dark: #ff7730;

$color-tertiary-light: #2998ff;
$color-tertiary-dark: #5643fa;

$color-grey-light-1: #f7f7f7;
$color-grey-light-2: #eee;

$color-grey-dark: #777;
$color-grey-dark-2: #999;
$color-grey-dark-3: #333;

$color-white: #fff;
$color-black: #000;

// FONT
$default-font-size: 1.6rem;

// GRID
$grid-width: 114rem;
$gutter-vertical: 8rem;
$gutter-vertical-small: 6rem;
$gutter-horizontal: 6rem;

//Animations

@keyframes moveInLeft {
  0% {
    opacity: 0;
    transform: translateX(-10rem); /* rotate(0deg); */
  }

  /* 60% {
    transform: rotate(180deg);
  } */

  80% {
    /* it will move to the right 10px more */
    transform: translateX(1rem);
  }

  100% {
    opacity: 1;
    /* trabslate 0 will make the element be in the initial position*/
    transform: translate(0);
  }
}

@keyframes moveInRight {
  0% {
    opacity: 0;
    transform: translateX(10rem);
  }

  80% {
    /* it will move to the right 10px more */
    transform: translateX(-1rem);
  }

  100% {
    opacity: 1;
    /* trabslate 0 will make the element be in the initial position*/
    transform: translate(0);
  }
}

@keyframes moveInBottom {
  0% {
    opacity: 0;
    transform: translateY(3rem);
  }

  100% {
    opacity: 1;
    /* trabslate 0 will make the element be in the initial position*/
    transform: translate(0);
  }
}

//Base

*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

html {
  //Smooth scrolling
  scroll-behavior: smooth;
  -webkit-scroll-behavior: smooth;
  
  
  // This defines what 1rem means
  font-size: 62.5%; //1rem = 10px/16px =62.5%

  @include respond(tab-land) {
    // width < 1200?
    font-size: 56.25%; //1rem = 9px, 9/16 = 50%
  }

  @include respond(tab-port) {
    // width < 900?
    font-size: 50%; //1rem = 8px, 8/16 = 50%
  }

  @include respond(big-desktop) {
    font-size: 75%; //1 rem = 12px, 12/16 =75%
  }
}

body {
  box-sizing: border-box;
  padding: 3rem;
  
  @include respond(tab-port){
    padding: 0;
  }
}

::selection {
  background-color: $color-primary;
  color: $color-white;
}

//Typography
body {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  /* font-size: 16px; */
  line-height: 1.7;
  color: $color-grey-dark;
  
}

.heading-primary {
  color: $color-white;
  text-transform: uppercase;

  backface-visibility: hidden;
  margin-bottom: 6rem;
  
  
  
  &--main {
    display: block;
    font-size: 6rem;
    font-weight: 400;
    letter-spacing: 3.5rem;

    animation-name: moveInLeft;
    animation-duration: 1s;

    /* ease in will enter slow and end fast, while, ease out will go fast and then slow down */
    animation-timing-function: ease-out;
    
    @include respond(phone){
      letter-spacing: 1rem;
      font-family: 6rem;
    
  }

    /* animation will execute 3 times */
    /* animation-iteration-count: 3; */

    /* delays animation for 3 seconds*/
    /* animation-delay: 3s; */
  }

  &--sub {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 1.75rem;
    animation: moveInRight 1s ease-out;
    
    @include respond(phone){
      letter-spacing: .5rem;
    
  }
    
  }
}

.heading-secondary {
  font-size: 3.5rem;
  text-transform: uppercase;
  font-weight: 700;
  display: inline-block;
  background-image: linear-gradient(
    to right,
    #e60000, #990000,
    #330000
  );

  //after creating the gradient of two colors, we can use does colors to color the text by using webkit on the text and color transparent

  -webkit-background-clip: text;
  color: transparent;
  letter-spacing: 0.2rem;
  transition: all 0.2s;
  
  @include respond(tab-port){
      font-size: 3rem;
  }
  
  @include respond(phone){
      font-size: 2.5rem;
  }

  &:hover {
    // the skew y will move the text de costado. Mientras que skew x va a mover las letras para un lado
    transform: skewY(2deg) skewX(15deg) scale(1.1);
    text-shadow: 0.5rem 1rem 2rem rgba($color-black, 0.2);
  }
}

.heading-tertiary {
  font-size: $default-font-size;
  font-weight: 700;
  text-transform: uppercase;
}

.paragraph {
  font-size: $default-font-size;

  &:not(:last-child) {
    margin-bottom: 3rem;
  }
}

//Utilities


.u-center-text {
  text-align: center !important;
}

.u-margin-bottom-big {
  margin-bottom: 8rem !important;

  @include respond(tab-port) {
    margin-bottom: 5rem !important;
  }
}
.u-margin-bottom-medium {
  margin-bottom: 4rem !important;

  @include respond(tab-port) {
    margin-bottom: 3rem !important;
  }
}
.u-margin-bottom-small {
  margin-bottom: 1.5rem !important;
}

.u-margin-top-big {
  margin-top: 8rem !important;
}
.u-margin-top-huge {
  margin-top: 10rem !important;
}

//Bg-video
.bg-video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
  opacity: 0.75;
  overflow: hidden;

  &__content {
    height: 100%;
    width: 100%;
    // object fit cover will allow the parent cover the parent of the content
    object-fit: cover;
  }
}

//Button
.btn {
  // the "&" alone means the btn, so everythong inside will be applied to the btn even if it is not an anchor element
  &,
  &:link,
  &:visited {
    text-transform: uppercase;
    text-decoration: none;
    padding: 1.5rem 4rem;
    display: inline-block;
    border-radius: 10rem;
    transition: all 0.2s;
    position: relative;
    font-size: $default-font-size;

    //Change for the button element
    border: none;
    cursor: pointer;
  }

  &:hover {
    transform: translateY(-3px);
    box-shadow: 0 1rem 2rem rgba($color-black, 0.2);

    &::after {
      transform: scaleX(1.4) scaleY(1.6);
      opacity: 0;
    }
  }

  &:active,
  &:focus {
    outline: none;
    transform: translateY(-1px);
    box-shadow: 0 0.5rem 1rem rgba($color-black, 0.2);
  }

  &--white {
    background-color: $color-white;
    color: $color-grey-dark;

    &::after {
      background-color: $color-white;
    }
  }

  &--green {
    background-color: $color-primary;
    color: $color-white;

    &::after {
      background-color: $color-primary;
    }
  }

  &::after {
    content: "";
    display: inline-block;
    height: 100%;
    width: 100%;
    border-radius: 10rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: all 0.4s;
  }

  &--animated {
    animation: moveInBottom 0.5s ease-out 0.75s;
    animation-fill-mode: backwards;
  }
}

.btn-text {
  &:link,
  &:visited {
    font-size: $default-font-size;
    color: red;
    display: inline-block;
    text-decoration: none;
    border-bottom: 1px solid red;
    padding: 3px;
    transition: all 0.2s;
  }

  &:hover {
    background-color: red;
    color: $color-white;
    box-shadow: 0 1rem 2rem rgba($color-black, 0.15);
    transform: translateY(-2px);
  }

  &:active {
    box-shadow: 0 0.5rem 1rem rgba($color-black, 0.15);
    transform: translateY(0);
  }
}

//Composition

.composition {
  position: relative;

  &__photo {
    width: 55%;
    box-shadow: 0 1.5rem 4rem rgba($color-black, 0.4);
    border-radius: 2px;
    position: absolute;
    z-index: 10;
    transition: all 0.2s;
    outline-offset: 2rem;
    
    @include respond(tab-port) {
      float: left;
      position: relative;

      //width is the same for each image
      width: 33.33333%;

      box-shadow: 0 1.5rem 3rem rgba($color-black, 0.2);
    }

    &--p1 {
      left: 0;
      top: -2rem;
      
      @include respond(tab-port) {
        top: 0;
        transform: scale(1.2);
      }
    }

    &--p2 {
      right: 0;
      top: 2rem;
      
      @include respond(tab-port) {
        top: -1rem;
        transform: scale(1.3);
        z-index: 100;
      }
    }

    &--p3 {
      left: 20%;
      top: 10rem;
      
      @include respond(tab-port) {
        top: 1rem;
        left: 0;

        transform: scale(1.1);
      }
    }

    &:hover {
      outline: 1.5rem solid $color-primary;
      transform: scale(1.05) translateY(-0.5rem);
      box-shadow: 0 2.5rem 4rem rgba($color-black, 0.5);
      z-index: 20;
    }
  }

  // make all the images that aren't hovered to shrink
  &:hover &__photo:not(:hover) {
    transform: scale(0.95);
  }
  //composition:hover composition__photo:not(:hover) {
}




//Story

.story {
  width: 75%;
  margin: 0 auto;
  box-shadow: 0 3rem 6rem rgba($color-black, 0.1);
  background-color: rgba($color-white, 0.6);
  border-radius: 3px;
  padding: 6rem;
  padding-left: 9rem;
  font-size: $default-font-size;
  // with transfor -12degrees will make the whole element with their childs to diagonally move
  transform: skewX(-12deg);
  
  @include respond(tab-port) {
    width: 100%;
    padding: 4rem;
    padding-left: 7rem;
  }

  @include respond(phone) {
    transform: skew(0);
  }

  &__shape {
    width: 15rem;
    height: 15rem;
    float: left;
    -webkit-shape-outside: circle(50% at 50% 50%);
    // radius of the circle in this cas 50% will be radius=7.5
    // then, at 50% 50% means at the center horizontally and vertically
    shape-outside: circle(50% at 50% 50%);

    //clipath will create the circle shape in the element
    -webkit-clip-path: circle(50% at 50% 50%);
    clip-path: circle(50% at 50% 50%);
    // to give space between the figure of the image andd the text, we use transform
    //Since we are putting diagonally the whole element, we skew the image in order to make it to not look distorted
    transform: translateX(-3rem) skewX(12deg);
    position: relative;
    
    @include respond(phone) {
      transform: translateX(-3rem) skewX(0);
    }
  }

  &__img {
    height: 100%;
    // we move with translateX the image to the center. Scale will set the initial scale of the image
    transform: translateX(-4rem) scale(1.4);
    backface-visibility: hidden;
    transition: all 0.5s;
  }

  &__text {
    //Since we are skewing diagonally the whole element, we skew the text to is not distorted
    transform: skewX(12deg);
    
    @include respond(phone) {
      transform: skewX(0);
    }
  }

  &__caption {
    // Make caption be infront of image
    position: absolute;
    //center caption
    top: 50%;
    left: 50%;
    // We translate the image some percentage down so it can be animated moving up
    transform: translate(-50%, 40%);
    color: $color-white;
    text-transform: uppercase;
    font-size: 1.7rem;
    text-align: center;
    // opacity will start with 0 so the letters cant be seen until hovered
    opacity: 0;
    transition: all 0.5s;
    // for the text appearing when hovered in order to make it to not chacke we use backface hidden
    backface-visibility: hidden;
  }

  // when is hovered then we want to change the caption
  &:hover &__caption {
    //opacity 1 so when hovered the text appears
    opacity: 1;
    // move to the center when hovered
    transform: translate(-50%, -50%);
  }

  //As soon as we hover the image
  &:hover &__img {
    // the image will stay in the center with translateX, while the scale will make the image look far
    transform: translateX(-4rem) scale(1);
    //Also, we want the image to be blured and a darker
    //brightness will make the image darker. If brightness is less then 100% it will become darker

    filter: blur(3px) brightness(80%);
  }
}

//Footer
.footer {
  background-color: black;
  padding: 10rem 0;
  font-size: 1.4rem;
  color: $color-grey-light-1;
  
  @include respond(tab-port) {
    padding: 8rem 0;
  }

  &__logo-box {
    //inline image works as inline text, so text align center will align the image
    text-align: center;
    margin-bottom: 8rem;
    
    @include respond(tab-port) {
      margin-bottom: 6rem;
    }
  }

  &__logo {
    width: 15rem;
    height: auto;
  }

  &__navigation {
    border-top: 1px solid $color-grey-dark;
    padding-top: 2rem;
    // inline-block dosent ocuppy 100% of its available width only what the content needs
    display: inline-block;
    
    @include respond(tab-port) {
      width: 100%;
      text-align: center;
  }
  }

  &__list {
    list-style: none;
  }

  &__item {
    display: inline-block;

    &:not(:last-child) {
      margin-right: 1.5rem;
    }
  }

  &__link {
    &:link,
    &:visited {
      color: $color-grey-light-1;
      background-color: $color-grey-dark-3;
      text-decoration: none;
      text-transform: uppercase;
      display: inline-block;
      transition: all 0.2s;
    }

    &:hover,
    &:active {
      color: #b30000;
      box-shadow: 0 1rem 2rem rgba($color-black, 0.4);
      transform: rotate(5deg) scale(1.3);
    }
  }

  &__copyright {
    border-top: 1px solid $color-grey-dark;
    padding-top: 2rem;
    width: 80%;
    float: right;
    
    @include respond(tab-port) {
      width: 100%;
      float: none;
  }
  }
}

// GRID
.row {
  // 114rem
  max-width: $grid-width;
  //center row in the viewport
  margin: 0 auto;

  //.row:not(:last-child)
  &:not(:last-child) {
    // put margin in the bottom of all rows except the last row(last child)
    margin-bottom: $gutter-vertical;
    @include respond(tab-port){
      margin-bottom: $gutter-vertical-small;
    }
    
    @include respond(tab-port){
      max-width: 50rem;
      padding: 0 3rem;
    }
  }

  @include clearfix;

  // It will select all of the elements in which the class attribute starts with "col-". If you change ^ with * it will mean every class that contains col-. If you use $, means any class that ends with col-

  [class^="col-"] {
    float: left;

    &:not(:last-child) {
      margin-right: $gutter-horizontal;
      
      @include respond(tab-port){
        margin-right: 0;
        margin-bottom: $gutter-vertical-small;

    }
    }
    
    @include respond(tab-port){
      width: 100% !important;
    }
  }

  .col-1-of-2 {
    width: calc((100% - #{$gutter-horizontal}) / 2);
  }

  .col-1-of-3 {
    width: calc((100% - 2 * #{$gutter-horizontal}) / 3);
  }

  .col-2-of-3 {
    width: calc(
      2 * ((100% - 2 * #{$gutter-horizontal}) / 3) + #{gutter-horizontal}
    );
  }

  .col-1-of-4 {
    width: calc((100% - 3 * #{$gutter-horizontal}) / 4);
  }

  .col-2-of-4 {
    width: calc(
      2 * ((100% - 3 * #{$gutter-horizontal}) / 4) + #{$gutter-horizontal}
    );
  }

  .col-3-of-4 {
    width: calc(
      3 * ((100% - 3 * #{$gutter-horizontal}) / 4) + 2 * #{$gutter-horizontal}
    );
  }
}

//Header

.header {
  height: 95vh;
  background-image: linear-gradient(
      to right bottom,
      rgba(255, 0, 0, 0.8),
      rgb(0, 0, 25, 0.8)
    ),
    url(https://variety.com/wp-content/uploads/2020/05/netflix-logo.png);
  background-size: cover;
  background-position: top;
  position: relative;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 75vh, 0 100%);
  /* clip path each coordinate is a corner of the image, so we are selecting in which position each corner will stay */
  clip-path: polygon(0 0, 100% 0, 100% 75vh, 0 100%);
  
  @include respond(phone){
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 85vh, 0 100%);
    clip-path: polygon(0 0, 100% 0, 100% 85vh, 0 100%);
  }
  
  &__logo-box {
    position: absolute;
    top: 4rem;
    left: 4rem;
  }

  &__logo {
    height: 3.5rem;
  }

  &__text-box {
    position: absolute;
    top: 40%;
    left: 50%;
    /* background-color: red; */
    transform: translate(-50%, -50%);

    text-align: center;
  }
}


//Navigation

.navigation {
  &__checkbox {
    // Since we dont want the checkbox to be seen, we set display none so it dosent appear on the website
    display: none;
  }

  &__button {
    //making the white circle menu
    background-color: $color-white;
    height: 7rem;
    width: 7rem;
    position: fixed;
    top: 6rem;
    right: 6rem;
    border-radius: 50%;
    z-index: 2000;
    //shadow to the circle button menu so it is depicted when moving through the page
    box-shadow: 0 1rem 3rem rgba($color-black, 0.1);
    text-align: center;
    cursor: pointer;
    
    @include respond(tab-port){
      top: 4rem;
      right: 4rem;
    }
    
    @include respond(phone){
      top: 3.5rem;
      right: 3.5rem;
    }
  }

  &__background {
    //making the circle with color in the back
    height: 6rem;
    width: 6rem;
    border-radius: 50%;
    //putting the button in the right corner
    position: fixed; // same as position absolute, but this is moved using the top right property
    top: 6.5rem;
    right: 6.5rem;
    //The linear gradient goes from one side to the other one. while the radio gradient starts in the middle of the element and goes from there in all directions
    background-image: radial-gradient(
      $color-primary-light,
      $color-primary-dark
    );

    z-index: 1000;
    //transition on the background
    // check: https://easings.net/ in order to chose the ease of the transition

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
    
    @include respond(tab-port){
      top: 4.5rem;
      right: 4.5rem;
    }
    
    @include respond(phone){
      top: 3.5rem;
      right: 3.5rem;
    }

    //As Soon the navigation is open, we are scaling the entire backround
    //transform: scale(80);
  }

  &__nav {
    // the navigation will occuppy 100% of the view port's width and height (ocuppy the whole page when menu button clicked)
    height: 100vh;

    //While the navigation open even when scroolling we want it in the same place
    position: fixed;
    top: 0;
    //instead of right: 0; we set to left: 0; so we can have an animation from the left(the links coming and hiding from the left side)
    left: 0;
    z-index: 1500;

    // to hide the navigation links we cant use opacity 0 since the links will still work even when the content is hided
    // Therefore, we can convine opacity with the width
    //So, by making the width of the elements to 0 we will hide the link
    opacity: 0;
    width: 0;

    //transition of the navigation to animate the opacity
    //if we only put transition: opacity 0.8s; then the elements inside the navigation will hide in a weird way when clicked
    //So we use all instead of opacity
    // The cubic will define the transition animation
    // check: https://easings.net/# for more transitions
    transition: all 0.8s cubic-bezier(0.68, -0.6, 0.32, 1.6);
  }

  &__list {
    //navigation list
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    list-style: none;
    text-align: center;
    // we are setting the width of the links so when it hides when clicked the navigation button so it dosent hide in a weird way
    width: 100%;
  }

  &__item {
    //selection the box of each link
    margin: 1rem;
  }

  &__link {
    &:link,
    &:visited {
      // we need to always set inline-block in order for the padding and the tranform trnslate works
      display: inline-block;
      font-size: 3rem;
      font-weight: 300;
      padding: 1rem 2rem;
      color: $color-white;
      text-decoration: none;
      text-transform: uppercase;

      // give color animation to the link
      background-image: linear-gradient(
        120deg,
        transparent 0%,
        transparent 50%,
        $color-white 50%
      );

      // As we increase the background size from 100% , the white color of the link will slowly disappear and the transparent color will cover the whole link button
      //Therefore, at 220% it will be all transparent, so when hovered is changed to 100% in order to make it white
      background-size: 220%;
      transition: all 0.4s;

      span {
        margin-right: 1rem;
        display: inline-block;
      }
    }

    &:hover,
    &:active {
      background-position: 100%;
      color: $color-primary;
      transform: translateX(1rem);
    }
  }

  //using the checkbox hack so when clicked the menu then the navigation appears
  // Functionality
  &__checkbox:checked ~ &__background {
    // when the label is checked(the menu button), then the navigation appears
    // the background of the navigation first scales
    transform: scale(80);
  }

  &__checkbox:checked ~ &__nav {
    // Since we used opacity 0 and width 0 to hide the links of the navigation
    opacity: 1;
    width: 100%;
  }

  //Icon
  &__icon {
    position: relative;
    // After making the text align in the button in order for the icon to show in the middle
    // we must move the icon inside using margin top
    margin-top: 3.5rem; //with this is in the center of the element

    &,
    &::before,
    &::after {
      width: 3rem;
      height: 2px;
      background-color: $color-grey-dark-3;
      display: inline-block;
    }

    // For the before and after to appear in the page, they need to have their content property defined

    &::before,
    &::after {
      content: "";
      position: absolute;
      left: 0;
      transition: all 0.2s;
    }

    // One on the top and one on the bottom
    &::before {
      top: -0.8rem;
      //transform-origin: right; // this will rotate the line to the right
    }
    &::after {
      top: 0.8rem;
    }
  }

  //When hovered, make the lines in the menu move apart

  &__button:hover &__icon::before {
    top: -1rem;
  }

  &__button:hover &__icon::after {
    top: 1rem;
  }

  //When the checkbox is selected, hten we select it brother which is the button, so then we select the button's child which is the icon.

  &__checkbox:checked + &__button &__icon {
    //When the button is clicked the middle line of the menu dissapears using backgroundcolor transprent
    background-color: transparent;
  }

  //After disappearing the middle line ( this: |||  ,to this: | |)
  //then we rotate the before and after(rotate the remaining lines to form an X shape)
  //Rotating them in opposite directions will create the effect of creating an X shape
  &__checkbox:checked + &__button &__icon::before {
    //since there is a padding between the lines (looks like this: | | )
    // So, whit top 0 for both will make the lines be next to each other (like this: ||)
    top: 0;
    //before we set: transform: rotate(45deg);. However, in order to make a better effect we substracted 180 - 45= 135deg to create a better animation
    transform: rotate(135deg);
  }

  &__checkbox:checked + &__button &__icon::after {
    top: 0;
    transform: rotate(-135deg);
  }
}










//Home
.section-about {
  background-color: $color-grey-light-1;
  padding: 25rem 0;
  margin-top: -20vh;
  
  @include respond(tab-port) {
    padding: 20rem 0;
  }
}

.section-features {
  padding: 20rem 0;
  background-image: linear-gradient(
      to right bottom,
      rgba(255, 0, 0, 0.8),
      rgb(0, 0, 111, 0.8)
    ),
    url("https://cdn.vox-cdn.com/thumbor/N2TuTRw5FX-6KU9NJVVAVtNTKjY=/1400x0/filters:no_upscale()/cdn.vox-cdn.com/uploads/chorus_asset/file/7164879/Big%20League%20Map.jpg");
  background-size: cover;

  // transform skewY will aloww us to put the element diagonally
  transform: skewY(-7deg);
  margin-top: -10rem;

  //Direct child selector(selecting all direct childs of the section feature)
  & > * {
    transform: skewY(7deg);
  }
  
  @include respond(tab-port){
    padding: 10rem 0;
  }
}

.section-tours {
  background-color: $color-grey-light-1;
  padding: 25rem 0 15rem 0;
  margin-top: -10rem;
  
  @include respond(tab-port) {
    padding: 20rem 0 10rem 0;
  }
}

.section-stories {
  position: relative;
  padding: 15rem 0;
  
  @include respond(tab-port) {
    padding: 10rem 0;
  }
}

.section-book {
  padding: 15rem 0;
  background-image: linear-gradient(
    to right bottom,
    $color-penguin-light,
    $color-penguin-dark
  );
  
  @include respond(tab-port) {
    padding: 10rem 0;
  }
  
}

.book {
  // in linear gradient instade of using from left to right we can use 90degrees
  // the 90 degrees will allow us to make the colors go from left to right(rotated)
  // at the right of each color we indicate in which percent we want the color to be
  // In this case the white will be from 0%-50%, while transparent 50%-100%.
  // This will create an effect that separates this two colors
  background-image: linear-gradient(
      105deg,
      rgba($color-white, 0.9) 0%,
      rgba($color-white, 0.9) 50%,
      transparent 50%
    ),
    url("https://cdn.vox-cdn.com/thumbor/HBBA62_GWFtU5xaSwg2-O1DqNtA=/0x0:1920x1080/1200x800/filters:focal(1107x375:1413x681)/cdn.vox-cdn.com/uploads/chorus_image/image/65548570/pengu.0.jpg");
  //background size 100% is the same as cover
  background-size: 100%;
  border-radius: 3px;
  box-shadow: 0 1.5rem 4rem rgba($color-black, 0.2);

  @include respond(tab-land) {
    background-image: linear-gradient(
      105deg,
      rgba($color-white, 0.9) 0%,
      rgba($color-white, 0.9) 50%,
      transparent 65%
    ),
    url("https://cdn.vox-cdn.com/thumbor/HBBA62_GWFtU5xaSwg2-O1DqNtA=/0x0:1920x1080/1200x800/filters:focal(1107x375:1413x681)/cdn.vox-cdn.com/uploads/chorus_image/image/65548570/pengu.0.jpg");
    
    background-size: cover;
  }
  
  @include respond(tab-port) {
    background-image: linear-gradient(
      to right,
      rgba($color-white, 0.9) 0%,
      rgba($color-white, 0.9) 100%),
    url("https://cdn.vox-cdn.com/thumbor/HBBA62_GWFtU5xaSwg2-O1DqNtA=/0x0:1920x1080/1200x800/filters:focal(1107x375:1413x681)/cdn.vox-cdn.com/uploads/chorus_image/image/65548570/pengu.0.jpg");
   
  }

  &__form {
    // Ocuppy half of the entire box
    width: 50%;
    padding: 6rem;
    
    @include respond(tab-land) {
      width: 65%;
    }

    @include respond(tab-port) {
      width: 100%;
    }
  }
}





//Section about (Aca cuento de que se trata la pagina)

.composition {
  position: relative;

  &__photo {
    width: 55%;
    box-shadow: 0 1.5rem 4rem rgba($color-black, 0.4);
    border-radius: 2px;
    position: absolute;
    z-index: 10;
    transition: all 0.2s;
    outline-offset: 2rem;
    
    @include respond(tab-port) {
      float: left;
      position: relative;

      //width is the same for each image
      width: 33.33333%;

      box-shadow: 0 1.5rem 3rem rgba($color-black, 0.2);
    }

    &--p1 {
      left: 0;
      top: -2rem;
      
      @include respond(tab-port) {
        top: 0;
        transform: scale(1.2);
      }
    }

    &--p2 {
      right: 0;
      top: 2rem;
      
      @include respond(tab-port) {
        top: -1rem;
        transform: scale(1.3);
        z-index: 100;
      }
    }

    &--p3 {
      left: 20%;
      top: 10rem;
      
      @include respond(tab-port) {
        top: 1rem;
        left: 0;

        transform: scale(1.1);
      }
    }

    &:hover {
      outline: 1.5rem solid red;
      transform: scale(1.05) translateY(-0.5rem);
      box-shadow: 0 2.5rem 4rem rgba($color-black, 0.5);
      z-index: 20;
    }
  }

  // make all the images that aren't hovered to shrink
  &:hover &__photo:not(:hover) {
    transform: scale(0.95);
  }
  //composition:hover composition__photo:not(:hover) {
}
.section-stories {
  position: relative;
  padding: 15rem 0;
  
  @include respond(tab-port) {
    padding: 10rem 0;
  }
}


//Slider
.slider{
  max-width: 1150px;

  display: flex;
  
}

.slider .card{
  background: #fff;
  flex:1;
  margin: 0 10px;
  
  
}

.slider .card .img img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  
  
}
.section-projects{
  display:  grid;
  height: 100%;
  place-items: center;
  text-align: center;
  background: #f2f2f2;
}
.slider .card .content{
  padding: 10px 20px;
  
}

.card .content .title{
  font-size: 25px;
  font-weight: 600;
  
}
.card .content .sub-title{
  font-size: 20px;
  font-weight: 600;
  color: #e74c3c;
  line-height: 20px;
}

.card .content p{
  text-align:justify;
  margin: 10px 0;
  
}
.card .content .btn{
  display: block;
  text-align: left;
  margin: 10px 0;
  background-color: red;
  
  
}
.card .content .btn a{
  text-decoration:None;
  background: red;
  color:#fff;
  border:none;
  outline: none;
  font-size: 17px;
  padding: 5px 8px;
  border-radius: 5px;
  
  cursor: pointer;
  transition: 0.2s;
}

.card .content .btn button:hover{
  transform: scale(0.9);
  
  
}

.section-projects {
  overflow: hidden;
  padding: 15rem 0;
  background-image: linear-gradient(
    to right bottom,
    #990000,
    #330000
  );
  
  @include respond(tab-port) {
    padding: 10rem 0;
  }
  
}
//GALLERY

.gallery {
  background-color: white;
  grid-column: full-start / full-end;
  
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  //We use vw (viewport width) in order for the grid height to not change when the viewport shrinks
  grid-template-rows: repeat(7, 5vw);
  
  grid-gap: 1.5rem;
  padding: 1.5rem;
  
  &__item {
    
    &--1 {
      grid-row: 1 /  3;
      grid-column: 1 / 3;
    }
    
    &--2 {
      grid-row: 1 / 4;
      grid-column: 3 / 6;
    }
    
    &--3 {
      grid-row: 1 / 3;
      grid-column: 6 / 7;
    }
    
    &--4 {
      grid-row: 1 / 3;
      grid-column: 7 / 9;
    }
    
    &--5 {
      grid-row: 3 / 6;
      grid-column: 1 / 3;
    }
    
    &--6 {
      grid-row: 4 / 6;
      grid-column: 3 / 5;
    }
    
    &--7 {
      grid-row: 4 / 5;
      grid-column: 5 / 6;
    }
    
    &--8 {
      grid-row: 3 / 5;
      grid-column: 6 / 8;
    }
    
    &--9 {
      grid-row: 3 / 6;
      grid-column: 8 / 9;
    }
    
    &--10 {
      grid-row: 6 / 8;
      grid-column: 1 / 2;
    }
    
    &--11{
      grid-row: 6 / 8;
      grid-column: 2 / 4;
    }
    
    &--12 {
      grid-row: 6 / 8;
      grid-column: 4 / 5;
    }
    
    &--13 {
      grid-row: 5 / 8;
      grid-column: 5 / 8;
    }
    
    &--14 {
      grid-row: 6 / 8;
      grid-column: 8 / 9;
    }
    
  }
  
  &__img {
    //we put 100% for the width of the images in order for the images dont ocuppy the whole grid and only a grid cell.
    width: 100%;
    height: 100%;
    // object fit is in order for the image not to overflow, but for object fit to work we have to manually se the width and height of the image
    object-fit: cover;
    display: block;
  }
  
  
}
View Compiled
/* This js code will allow the navigation scroll and close de the navigation tab when clicked a link */

const link1 = document.querySelector(".link1");
const link2 = document.querySelector(".link2");
const link3 = document.querySelector(".link3");


const cajita = document.querySelector(".navigation__checkbox");

link1.addEventListener("click", function (event) {
  cajita.checked = false;
});

link2.addEventListener("click", function (event) {
  cajita.checked = false;
});

link3.addEventListener("click", function (event) {
  cajita.checked = false;
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.