body {
  padding-top: 60px; /*compensa a altura do header fixo*/
  background-color: #ececec;
}

.clear {
  clear: both;
}

button:hover {
  cursor: pointer;
}

.hidden {
  display: none;
}

/*----------------------MAIN--------------------*/

main {
  width: 100%;
  height: fit-content;
  padding: 30px 0 20px 0;
}

.main-sub-section {
  width: calc(100% - 50px);
  height: fit-content;
  margin-bottom: 30px;
  margin-left: 25px;
}

.section-title {
  width: 100%;
}

.section-title-text {
  color: #563ab1;
  margin-left: 30px;
  margin-bottom: 3px;
}

.section-title-text span {
  font-weight: bold;
  font-size: 25px;
}

.section-title-line {
  width: 100%;
  height: 0.4px;
  background-color: #4b3c7c;
  border-radius: 100%;
  margin-bottom: 5px;
}

.carousel {
  display: flex;
  align-items: center;
  overflow: hidden;
  width: 100%;
}

.scroll-button {
  width: 50px;
  height: 200px;
  border-radius: 20px;
  z-index: 997;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  background: #d6d6d6;
  flex-shrink: 0;
  transition: none;
}

.scroll-button span {
  z-index: 998;
  margin-top: 1px;
}

.scroll-button:hover {
  background-color: #b4b4b4;
}

.section-blocks-container {
  display: flex;
  gap: 50px;
  flex-direction: row;
  width: fit-content;
  height: fit-content;
  padding: 10px;
  scroll-behavior: smooth;
  overflow-x: auto;
}

.section-blocks-container::-webkit-scrollbar {
  display: none;
}

.carousel a {
  text-decoration: none;
  color: #fff;
}

/*-------------------------BLOCOS DE PROJETO---------------------------*/

.project-block {
  width: 350px;
  height: 200px;
  flex-shrink: 0;
  border: 0px solid #000000;
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.project-block:hover .project-footer {
  background-color: #e0e0e0;
}

.project-img {
  border-radius: 15px 15px 0 0;
  width: 100%;
  height: 150px;
  align-self: center;
}

.project-img img {
  height: 100%;
  width: 100%;
  border-radius: 15px 15px 0 0;
}

.project-footer {
  width: 100%;
  height: 50px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  background-color: #fff;
  border-radius: 0 0 15px 15px;
}

.project-footer .project-name {
  margin-left: 15px;
  margin-top: 15px;
  color: #323232;
  font-weight: bold;
}

.project-footer button {
  width: 15px;
  background: none;
  display: inline-flex;
  justify-content: center;
  border: none;
}

.project-footer button span {
  margin-top: 18px;
  margin-right: 15px;
  color: #323232;
}

/* ------- DARK MODE: PÁGINA PRINCIPAL ------- */
body.dark-mode {
  background-color: #1e1e1e;
  color: #f0f0f0;
}

body.dark-mode .section-title-text {
  color: #c3b1f3;
}

body.dark-mode .section-title-line {
  background-color: #715ebc;
}

body.dark-mode .scroll-button {
  background: #2e2e2e;
  color: #f0f0f0;
}

body.dark-mode .project-block {
  background-color: #2c2c2c;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
}

body.dark-mode .project-block:hover .project-footer {
  background-color: #3a3a3a;
}

body.dark-mode .project-footer {
  background-color: #2c2c2c;
}

body.dark-mode .project-footer .project-name {
  color: #f0f0f0;
}

body.dark-mode .project-footer button span {
  color: #f0f0f0;
}

/* Garantindo contraste em elementos clicáveis */
body.dark-mode a {
  color: #d0bfff;
}
