/* cores */
.root {
  --primary-color: #F23041; 
  --secondary-color: #D9D9D9; 
  --accent-color: #F8F8F8; 
  --background-color: #F2F2F2; 
  --text-color: #F8F8F8; 
}

/* body */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Josefin Sans', poppins;
  background-color: #f5f5f5;
  color: #212121;
}

.montserrat-regular {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
/* fim body */


/* menu */
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.1px 50px;
  background: #212121;
  color: #fff;
}

.logo {
  font-size: -0.10rem;
  font-weight: bold;
}

.logo img {
  height: 100px;
  padding: 10px;
}

nav ul {
  list-style: none;
  display: flex;
  gap: 30px;
}

nav a {
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  transition: 0.3s;
  font-size: 1.08rem;
   transition: color 0.3s;
}

nav a[aria-current="page"] {
  color: #e63946 !important;
  font-weight: 600;
}

nav a:hover,
nav a.active {
  color: #e63946 !important; /* Vermelho destaque */
  transition: color 0.2s;

}

.icons {
  display: flex;
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
/* fim menu */


/* CTA */
.hero {
  display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 150px;
      background: url('../img_/banner.jpg') no-repeat center center/cover;
      clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
}

.hero-text{
  padding: 20px;
  border-radius: 10px;
  max-width: 600px;
  margin-left: 50px;
}

.hero-text h1 {
  font-size: 3.1rem;
  margin-bottom: 35px;
  color: #fff;
  text-align: left;
}


.hero-text p {
  font-size: 1.2rem;
  margin-bottom: 30px;
  color: #fff;
  font-weight: bold-medium;
}

button{
    background-color: #d62828;
    border: none;
    padding: 12px 25px;
    font-size: 14px;
    border-radius: 5px;
    text-decoration: none;
    align-items: left;
    font-family: 'Josefin Sans', sans-serif;
}

button, .order-now {
      color: #fff;
      border: none;
      padding: 12px 25px;
      font-size: 14px;
      border-radius: 5px;
      text-decoration: none;
      align-items: left;
      font-family: 'Josefin Sans', sans-serif;
    
}

button:hover, .order-now:hover {
      background-color: #d84545;
      transition: 0.3s;
}
/* Fim CTA */


/* cardapio */
.container-cardapio {
    max-width: 900px;
    margin: 0 auto;
}

.titulo {
    font-family: 'Josefin Sans';
    text-align: center;
    font-size: 2.5rem;
    color: #070707;
    margin-bottom: 40px;
    font-weight: 400px;
    margin-top: 40px;
}

.cards{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    padding: 20px 0;
}

.card {
    background: #CFCCCC;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: all ease 0.3s;
}

.card:hover{
  transform: scale(1.05);
}

.card-image {
    width: 100%;
    height: 200px;
    overflow: hidden;
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card-content {
    padding: 25px;
    text-align: center;
    background-color: #CFCCCC;
}

.card-titulo{
    font-family: 'Josefin Sans';
    font-size: 1.5rem;
    color: #070707;
    font-weight: 500;
    margin: 0;
}
/* fim cardapio */


/* Sobre Nos */
.parent{
  display: flex;
  justify-content: space-around;
  text-align: left;
  gap: 20px;
}

#sobreNos{
  background-color: #E6E6E6;
  height: 700px;
  padding: 50px;
}

.texto{
  display: flex;
  flex-direction: column;
  flex: 1;
  max-width: 600px;
  gap: 20px;
}


.texto h2 {
  font-size: 50px;
  margin-bottom: 16px;
  margin-top: 30px;
}

.texto p {
  margin-bottom: 24px;
  text-align: left;
  font-size: 25px;
}

.texto button{
  max-width: 155px;
}

.images{
  position: relative;
  width: 900px;
}

.images img{
  border-radius: 20px;
}

#sushiImg{
  position: absolute;
  top: 0px;
  left: 0px;
  height: 250px;
  z-index: 2;
  transition: all ease 0.3s;
}
#sushiImg:hover{
  transform: scale(1.05);
}
#fishImg{
  position: absolute;
  top: 30px;
  left: 350px;
  height: 380px;
  width: 430px;

  z-index: 1;
  transition: all ease 0.3s;
}
#fishImg:hover{
 transform: scale(1.05);
}
#japaImg{
  position: absolute;
  top: 360px;
  left: 150px;
  height: 250px;
  transition: all ease 0.3s;
}
#japaImg:hover{
 transform: scale(1.05);
}
/* fim Sobre Nos */

/* contato */
.container-contato{
  max-width: 600px;
  width: 100%;
  padding: 0 20px;
  text-align: center;
}

#contato{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
}
/* fim contato */

/* FOOTER */
.footer {
  background: #1c1c1c;
  color: #f0f0f0;
  font-family: 'Josefin Sans', sans-serif;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    max-width: 1520px;
    margin: auto;
    padding: 40px 20px;
    gap: 100px;
    
}
/* Logo footer */
.footer-logo img {
    max-width: 150px;
    margin-bottom: 15px; 
    display: block; 
    margin-left: 0%;
    margin-bottom: 15px; 

}

/*colunas */
.footer-col {
  flex: 1px;
  margin: 1px;
  min-width: 220px;
  padding: 20px;
}

.footer h2 {
  font-size: 22px;
  margin-bottom: 15px;
  font-family: 'Josefin Sans', sans-serif;
}

.footer h3 {
    margin-bottom: 10px;
    font-size: 18px;
    font-family: 'Josefin Sans', sans-serif;
    gap: 20px;
}

.footer p {
  margin: 15px 0;
  line-height: 1.5;
  font-style: bold medium;
}

.footer ul {
    list-style: none;
    padding: 0;
    margin: 25px 0;
    gap: 10px;
    
}

.footer ul li {
  margin: 15px 0;
}

.footer ul li a {
  color: #f0f0f0;
  text-decoration: none;
  transition: 0.3s;
}

.footer ul li a:hover {
  color: #ff4c4c;
}


/* Redes sociais */
.social-icons {
  margin-top: 10px;
    
}

.social-icons a {
  color: #f0f0f0;
  margin-right: 12px;
  font-size: 30px;
  transition: 0.3s;
}

.social-icons a:hover {
  color: #ff4c4c;
}

/* linha separadora */
.footer-bottom {
  border-top: 1px solid #444;
  text-align: center;
  padding: 15px 20px;
  font-size: 14px;
  color: #aaa;
}

@media (max-width: 1400px) {
  #images-container{
    display: none !important; 
  }
}
@media (max-width: 768px) {

  .hero-text, .hero{
    width: 100%;
    margin: 0;
    padding: 25px;
  }
 
  .hero-text h1 {
  font-size: 2.1rem;
  color: #fff;
  text-align: center;
}
 
  .images-container {
    position: relative;
    height: 300px;
    margin-top: 30px;
  }

  #Cardapio{
    padding: 25px;
  }

  .texto h2 {
  font-size: 2.5rem;
  margin-bottom: 16px;
  margin-top: 30px;
}

.texto p {
  margin-bottom: 1.2rem;
  text-align: left;
  font-size: 20px;
}


}

