.bg-color {
  background-color: #fbf2ed;
}

.bg-pink {
  background-color: #a49393;
}

.btn-custom {
  padding: 0.75rem 1rem;
  border-radius: 5px;
  font-size: 1rem;
}
.btn-custom:hover {
  box-shadow: 1px 1px 5px;
}

.btn-custom-brown {
  background-color: #67595E;
  color: #ffffff;
  box-shadow: 0px 0px 5px 0px;
}
.btn-custom-brown:hover {
  color: #67595E;
  background-color: #ffffff;
  border: 0.5px solid #67595E;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.btn-custom-brown-outline {
  color: #67595E;
  background-color: transparent;
  border: 1px solid #67595E;
  box-shadow: 0px 0px 5px 0px;
}
.btn-custom-brown-outline:hover {
  color: #ffffff;
  background-color: #67595E;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.btn-custom.btn-disabled {
  background-color: gray;
  color: #484848;
  cursor: default;
  pointer-events: none;
}

@font-face {
  font-family: "Lora";
  src: url("../font/Lora/Lora-VariableFont_wght.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Raleway";
  src: url("../font/Raleway/Raleway-VariableFont_wght.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Nothing You Could Do";
  src: url("../font/Nothing_You_Could_Do/NothingYouCouldDo-Regular.ttf");
  font-display: swap;
}
body {
  font-family: "Lora";
  font-size: 16px;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Raleway";
}

p {
  font-size: 1.2rem;
}

p.review {
  font-family: "Nothing You Could Do";
}

h2.text-center {
  text-decoration: underline;
}

nav .navbar_container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
nav .navbar_container a.brand_nav img {
  max-width: 150px;
}
nav .navbar_container .hamburger_menu {
  display: none;
  border: 0;
  background-color: transparent;
  font-size: 1.5rem;
}
nav .navbar_container .container_link_nav .nav_items {
  display: flex;
  gap: 1rem;
}
nav .navbar_container .container_link_nav .nav_items li a {
  display: block;
  padding: 1rem;
  font-size: 1.1rem;
}
nav .navbar_container .container_link_nav .nav_items li a.active {
  color: #6c757d;
}
@media screen and (max-width: 767px) {
  nav .navbar_container a.brand_nav img {
    max-width: 100px;
  }
  nav .navbar_container .hamburger_menu {
    display: block;
  }
  nav .navbar_container .show {
    display: block;
  }
  nav .navbar_container .container_link_nav {
    transition: all 0.4s ease-in-out;
    flex-basis: 100%;
    flex-grow: 1;
    text-align: center;
  }
  nav .navbar_container .container_link_nav:not(.show) {
    opacity: 0;
    transform: translateY(-1000%);
    position: absolute;
  }
  nav .navbar_container .container_link_nav.show {
    transform: translateY(0);
    opacity: 1;
    transition: all 0.4s ease-in-out;
    position: relative;
  }
  nav .navbar_container .container_link_nav.show .nav_items {
    flex-direction: column;
  }
}

main {
  margin-top: 150px;
}
@media screen and (max-width: 767px) {
  main {
    margin-top: 100px;
  }
}

a {
  text-decoration: none;
  color: #000;
  transition: all 0.4s;
}
a:hover {
  color: #000;
  text-decoration: underline;
  transition: all 0.4s;
}

ul,
li {
  list-style: none;
  padding: 0;
  margin: 0;
}

.first-description {
  font-size: 1.3rem;
}

#link-instagram-container #link-instagram {
  height: 50px;
  width: 50px;
  font-size: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: -webkit-linear-gradient(#feda75, #fa7e1e, #d62976, #962fbf, #4f5bd5);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: all 0.4s ease-in-out;
}
#link-instagram-container #link-instagram:hover {
  font-size: 2.5rem;
  transition: all 0.4s ease-in-out;
}
#link-instagram-container #link-matrimonio {
  font-size: 1.2rem;
  transition: all 0.4s ease-in-out;
  font-weight: bold;
}
#link-instagram-container #link-matrimonio:hover {
  text-decoration: underline;
  font-size: 1.4rem;
  transition: all 0.4s ease-in-out;
}

.btn:first-child:focus,
.btn:first-child:active {
  border-color: transparent;
}

.custom_card {
  position: relative;
  overflow: hidden;
  border-radius: 5%;
  transition: all 0.4s;
  background-color: white;
  padding: 0 2rem;
}
.custom_card .custom_card_image {
  min-height: 350px;
  max-height: 350px;
  overflow: hidden;
}
.custom_card .custom_card_image img {
  transition: all 0.4s;
  filter: blur(1px);
  height: 100%;
  max-width: 100%;
}
.custom_card .custom_card_description {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.custom_card .custom_card_description p {
  text-align: center;
  margin: 0;
}

.alert {
  transition: all 0.4s;
}
.alert.hide {
  height: 0;
  transition: all 0.4s;
}

.info {
  min-height: 50px;
}

header {
  background-color: #fbf2ed;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  transition: all 0.3s;
}
header.scroll {
  box-shadow: 1px 1px 20px 3px #a49393;
  transition: all 0.3s;
}
header #lang-dropdown button {
  background: transparent;
  color: #67595E;
  border: none;
}
header #lang-dropdown .dropdown-menu {
  background-color: #fbf2ed;
  min-width: 80px !important;
}
header #lang-dropdown .dropdown-menu .dropdown-item {
  cursor: pointer;
}
header #lang-dropdown .lang-flag-header {
  width: 25px;
  height: 25px;
  border-radius: 50%;
}

.loading-main-container {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: fixed;
  z-index: 99999;
  background: #fbf2ed;
}
.loading-main-container .loading-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.loading-main-container .loading-wrapper .loading-image-container {
  border-radius: 50%;
  position: relative;
}
.loading-main-container .loading-wrapper .loading-image-container .spinner-custom {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 50%;
  border-top: 4px solid #67595E;
  animation: spin 2s infinite linear;
}
.loading-main-container .loading-wrapper .loading-image-container img {
  width: 200px;
}
.loading-main-container .loading-wrapper .loading-image-container.hide {
  transform: scale(1.5);
  transition: all 0.4s ease-in;
}
.loading-main-container.hide-loading {
  transition: all 0.8s ease-in-out;
  transform: translateY(-200%);
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.container-carosello {
  width: 100%;
  height: 500px;
  text-align: center;
  overflow: hidden;
  position: relative;
}
.container-carosello .carosello {
  position: absolute;
  width: 200px;
  height: 250px;
  top: 10%;
  left: calc(50% - 100px);
  transform-style: preserve-3d;
  transform: perspective(1000px);
  transition: all 0.3s;
}
.container-carosello .carosello .carosello-item {
  position: absolute;
  inset: 0 0 0 0;
  transform: rotateY(calc((var(--position) - 1) * 360 / var(--quantity) * 1deg)) translateZ(350px);
  top: 10%;
}
.container-carosello .carosello .carosello-item img {
  width: 100%;
  height: auto;
  object-fit: cover;
  box-shadow: 1px 1px 10px;
}

/* Animazione di rotazione continua */
@keyframes autoRun {
  0% {
    transform: perspective(1000px) rotateX(0deg) rotateY(0deg);
  }
  100% {
    transform: perspective(1000px) rotateX(0deg) rotateY(360deg);
  }
}
#servizi .block-services-section {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 2rem 0;
}
#servizi .block-services-section .items-block-service {
  display: flex;
  gap: 2rem;
}
#servizi .block-services-section .items-block-service > div {
  padding: 0 2rem;
}
#servizi .block-services-section .items-block-service .item-block-service-image img {
  width: 100%;
  object-fit: cover;
  border-radius: 5px;
}
#servizi .block-services-section .items-block-service .item-block-service-description ul li {
  padding: 1rem 0;
}
#servizi .block-services-section .items-block-service:nth-child(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  #servizi .block-services-section .items-block-service:nth-child(odd) {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  #servizi .block-services-section .items-block-service {
    flex-direction: column;
  }
}

#newsletter img {
  width: 200px;
}
#newsletter p {
  font-size: 1rem;
}

#reviews > div {
  border-top: 0.5px solid;
  padding: 2rem;
}
#reviews h2 {
  text-align: center;
}
#reviews .container-reviews {
  display: flex;
  justify-content: space-around;
  padding: 2rem 0;
}
#reviews .container-reviews > * {
  min-height: 250px;
  width: 30%;
  flex: 0 0 auto;
}
@media screen and (max-width: 767px) {
  #reviews .container-reviews > * {
    width: 100%;
  }
}
#reviews .container-reviews .card-review {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  gap: 1rem;
  padding: 2rem;
  border-radius: 25px;
  background-color: #ffffff;
  box-shadow: 0px 0px 10px 0px #a49393;
}
#reviews .container-reviews .card-review .review-rating {
  color: #67595E;
}
#reviews .container-reviews .card-review .review-text {
  flex-grow: 1;
}
@media screen and (max-width: 767px) {
  #reviews .container-reviews {
    flex-direction: column;
    gap: 2rem;
  }
}

footer {
  background-color: #fbf2ed;
}
footer .upper-footer {
  padding: 1rem;
}
footer .upper-footer img {
  width: 250px;
}
footer .upper-footer .link-iubenda a {
  text-decoration: underline;
  margin: auto;
}
footer .upper-footer .button-container-footer {
  height: 100%;
  display: flex;
  justify-content: center;
  padding: 2rem 0;
  gap: 3rem;
}
footer .upper-footer .button-container-footer .button-container {
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-direction: column;
}
footer .upper-footer .button-container-footer .button-container a {
  text-align: center;
  width: 175px;
}
footer .upper-footer > div:last-child {
  padding: 2rem;
}
footer .footer-copiright {
  padding: 1rem;
  text-align: center;
}

.custom-modal-container {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  overflow: scroll;
  display: none;
}
.custom-modal-container .modal-container {
  width: 35%;
  background: #fbf2ed;
  border-radius: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -30%);
}
.custom-modal-container .modal-container .custom-modal .custom-modal-header {
  padding: 1rem 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 0.5px solid;
}
.custom-modal-container .modal-container .custom-modal .custom-modal-header .custom-modal-title {
  margin: 0;
}
.custom-modal-container .modal-container .custom-modal .custom-modal-body {
  padding: 1rem 2rem;
}
.custom-modal-container .modal-container .custom-modal .custom-modal-body .input-group > .form-select {
  flex: 0 0 auto;
  width: 100px;
}
.custom-modal-container .modal-container .custom-modal .custom-modal-footer {
  border-top: 0.5px solid;
  padding: 1rem 2rem;
}
@media screen and (max-width: 767px) {
  .custom-modal-container .modal-container {
    width: 90%;
  }
}
.custom-modal-container.show {
  display: block;
}

.page-portfolio .main-content {
  padding: 2rem 0;
}
.page-portfolio .main-content .portfolio-block {
  position: relative;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio {
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio .menu-portfolio {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio .menu-portfolio li a {
  padding: 1rem 2rem;
  cursor: pointer;
  display: inline-block;
  text-align: center;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio .menu-portfolio li a.active {
  background-color: #67595E;
  transition: all 0.4s;
  color: #ffffff;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio .menu-portfolio li a:hover {
  background-color: #a49393;
  transition: all 0.4s;
  color: #ffffff;
}
.page-portfolio .main-content .portfolio-block .nav-portfolio .menu-portfolio li:not(:last-child) {
  border-right: 1px solid;
}
.page-portfolio .main-content .portfolio-block .content-portfolio {
  padding: 2rem 0;
  position: relative;
  overflow: hidden;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio {
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
  height: 0;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio.active {
  opacity: 1;
  visibility: visible;
  height: auto;
  transition: all 0.4s ease;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row {
  align-items: center;
  padding: 2rem;
  position: relative;
  justify-content: space-around;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row .linea-bottom-left {
  height: auto;
  width: 60%;
  padding: 10rem;
  position: absolute;
  top: 75%;
  left: 25%;
  z-index: -1;
  border-left: 10px solid #67595E;
  border-bottom: 10px solid #67595E;
}
@media screen and (max-width: 991px) {
  .page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row .linea-bottom-left {
    top: 55%;
  }
}
@media screen and (max-width: 767px) {
  .page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row .linea-bottom-left {
    display: none;
  }
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row > div:first-child {
  text-align: center;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row:nth-child(even) {
  flex-direction: row-reverse;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row:nth-child(even) .linea-bottom-left {
  border-right: 10px solid #67595E;
  border-bottom: 10px solid #67595E;
  right: 25%;
  left: unset;
  border-left: 0;
}
@media screen and (max-width: 767px) {
  .page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row:nth-child(even) {
    flex-direction: column-reverse;
  }
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row:not(:last-child) {
  margin-bottom: 5rem;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row:last-child .linea-bottom-left {
  border: 0;
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row .portfolio-description {
  border-left: 10px solid #67595E;
  border-bottom: 5px solid #a49393;
}
@media screen and (max-width: 767px) {
  .page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio .row {
    flex-direction: column-reverse;
    margin-bottom: 1rem !important;
    gap: 2rem;
  }
}
.page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio img {
  width: 100%;
  border-radius: 5px;
  min-height: 250px;
}
@media screen and (max-width: 767px) {
  .page-portfolio .main-content .portfolio-block .content-portfolio .section-portfolio img {
    width: 100%;
  }
}

#about-me .custom-container-about-me {
  display: flex;
  gap: 2rem;
  flex-direction: row;
}
#about-me .custom-container-about-me > div:last-child {
  text-align: center;
}
#about-me .custom-container-about-me > div:last-child img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  #about-me .custom-container-about-me {
    flex-direction: column-reverse;
  }
  #about-me .custom-container-about-me > div:first-child h4 {
    font-size: 1.1rem;
  }
  #about-me .custom-container-about-me > div:first-child p {
    font-size: 1rem;
  }
}

body#links-page {
  background-color: #fbf2ed;
}
body#links-page main {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  body#links-page main {
    margin-top: 50px;
  }
}
body#links-page main .linktree-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}
body#links-page main .linktree-container .personal-image-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
body#links-page main .linktree-container .personal-image-block .image-container {
  width: 220px;
  height: 220px;
  border-radius: 50%;
  border: 1px solid #67595E;
  overflow: hidden;
  background: white;
}
body#links-page main .linktree-container .personal-image-block .image-container img {
  width: 100%;
}
body#links-page main .linktree-container .personal-image-block .links-block {
  width: 50%;
  height: 100%;
  display: flex;
  margin: auto;
  justify-content: center;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container {
  width: 100%;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container ul {
  width: 100%;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container ul li a.btn-custom {
  width: 100%;
  display: block;
}
body#links-page main .linktree-container .personal-image-block .links-block {
  width: 50%;
  height: 100%;
  display: flex;
  margin: auto;
  justify-content: center;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container {
  width: 100%;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container ul {
  width: 100%;
}
body#links-page main .linktree-container .personal-image-block .links-block .links-container ul li a.btn-custom {
  width: 100%;
  display: block;
}
body#links-page main .linktree-container .links-block {
  width: 50%;
  height: 100%;
  display: flex;
  margin: auto;
  justify-content: center;
}
body#links-page main .linktree-container .links-block .links-container {
  width: 100%;
}
body#links-page main .linktree-container .links-block .links-container ul {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
body#links-page main .linktree-container .links-block .links-container ul li {
  text-align: center;
}
body#links-page main .linktree-container .links-block .links-container ul li a.btn-custom {
  width: 400px;
  display: block;
  text-align: center;
  margin: auto;
}
@media screen and (max-width: 767px) {
  body#links-page main .linktree-container .links-block .links-container ul li a.btn-custom {
    width: 350px;
  }
}
body#links-page footer {
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
}

/*# sourceMappingURL=style.css.map */
