/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a {
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
  outline-width: 2px;
  outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation
  .wp-block-navigation-submenu
  .wp-block-navigation-item:not(:last-child) {
  margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation
  .wp-block-navigation-item
  .wp-block-navigation-item__content {
  outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation
  .wp-block-navigation-item
  ul.wp-block-navigation__submenu-container
  .wp-block-navigation-item__content {
  outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
  text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
  display: block;
}

/*animations*/
/*.animation--init or .animation--init--once */

@media screen and (min-width: 750px) {
  .has-animations .animation--init--once,
  .has-animations .animation--init {
    opacity: 0;
  }
  .has-animations .animation--init--once.fade-in,
  .has-animations .animation--init.fade-in {
    opacity: 1;
  }
  .has-animations .animation--init--once.slide-down,
  .has-animations .animation--init.slide-down {
    transform: translateY(-1em);
  }
  .has-animations .animation--end.slide-down {
    transform: translateY(0);
  }
  .has-animations .animation--init--once.slide-up,
  .has-animations .animation--init.slide-up {
    transform: translateY(1em);
  }
  .has-animations .animation--end.slide-up {
    transform: translateY(0);
  }
  .has-animations .animation--init--once.slide-left,
  .has-animations .animation--init.slide-left {
    transform: translateX(1em);
  }
  .has-animations .animation--end.slide-left {
    transform: translateX(0);
  }
  .has-animations .animation--init--once.slide-right,
  .has-animations .animation--init.slide-right {
    transform: translateX(-1em);
  }
  .has-animations .animation--end.slide-right {
    transform: translateX(0);
  }
  .has-animations .animation--init--once.pop-up,
  .has-animations .animation--init.pop-up {
    transform: scale(0.75);
  }
  .has-animations .animation--end.pop-up {
    transform: scale(1);
  }
  .has-animations .animation--end {
    opacity: 1;
    transition: opacity 1s ease, transform 2s ease;
  }
  .has-animations .animation--end.delay-1 {
    transition-delay: 0.2s;
  }
  .has-animations .animation--end.delay-2 {
    transition-delay: 0.3s;
  }
  .has-animations .animation--end.delay-3 {
    transition-delay: 0.4s;
  }
  .has-animations .animation--end.delay-4 {
    transition-delay: 0.5s;
  }
  .has-animations .animation--end.delay-5 {
    transition-delay: 0.6s;
  }
  .has-animations .animation--end.delay-6 {
    transition-delay: 0.7s;
  }
  .has-animations .animation--end.delay-7 {
    transition-delay: 0.8s;
  }
}

.contact-form-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.contact-form-wrapper .wpcf7 {
  background-color: var(--wp--preset--color--blue);
  padding: 20px;
  border-radius: 10px;
  max-width: 305px;
}
.contact-form-wrapper label {
  color: white;
  font-size: 16px;
}
.contact-form-wrapper input {
  min-height: 30px;
  border-radius: 10px;
  border: none;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
}
.contact-form-wrapper input[type="submit" i] {
  background-color: var(--wp--preset--color--orange);
  color: white;
  padding: 15px 20px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  width: 100%;
  margin-top: 15px;
  font-size: 16px;
  text-transform: uppercase;
  transition: all 0.3s ease;
  border: 1px solid var(--wp--preset--color--orange);
}
.contact-form-wrapper input[type="submit" i]:hover {
  background-color: transparent;
  border: 1px solid var(--wp--preset--color--orange);
}
.wp-block-button__link.has-orange-background-color {
  transition: all 0.3s ease;
  border: 1px solid var(--wp--preset--color--orange);
}
.wp-block-button__link.has-orange-background-color:hover {
  background: transparent !important;
  border: 1px solid var(--wp--preset--color--orange);
  color: var(--wp--preset--color--orange);
}
.landing-wrapper {
  background: rgb(251, 250, 243);
  background: linear-gradient(
    -90deg,
    rgba(251, 250, 243, 1) 50%,
    rgba(255, 255, 255, 1) 50%
  );
}
.landing-wrapper.has-global-padding,
.landing-wrapper {
  padding: 0 !important;
}
.content-wrapper {
  padding: 0 30px !important;
}
.wp-block-group.has-global-padding {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.landing-right.has-global-padding {
  padding-top: 70px !important;
}
.contact-form-wrapper.has-global-padding {
  margin-top: 50px !important;
}

/* Got To Top Button */

.go-to-top {
  position: fixed;
  bottom: 2px;
  right: 2px;
  padding: 10px;
  font-size: 14px;
  background-color: var(--wp--preset--color--orange);
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1000;
}
.go-to-top.visible {
  opacity: 1;
}
.column-left {
  position: relative;
}
.column-right.has-global-padding {
  padding-bottom: 100px !important;
}
.column-left:before {
  content: "";
  background-image: url("./assets/images/background-before.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 0;
  opacity: 0.3;
  transform: rotateY(180deg);
}
.intro-module-wrapper {
  min-height: 300px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.intro-module-wrapper.has-global-padding {
  margin-bottom: 0 !important;
}
.separator-line-half {
  max-width: 300px;
}
footer.wp-block-template-part {
  margin-top: 0 !important;
}
footer a {
  text-decoration: none;
  color: var(--wp--preset--color--orange) !important;
  transition: all 0.3s ease;
}
footer a:hover {
  color: white !important;
}
footer p {
  margin-top: 0 !important;
}
.wpcf7-list-item label {
  display: flex;
  align-items: center;
}
.contact-form-wrapper .wpcf7-list-item label {
  font-size: 13px;
}
.column-left p,
.column-right p {
  text-align: justify;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  font-size: 14px;
  color: white;
}
/* POPUP */
.politica-popup {
  display: none;
}
.politica-popup.open {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  height: 100%;
  overflow: scroll;
  z-index: 999;
  margin-top: 200px;
  background: white;
  padding: 30px;
}

/* LANDING PAGE 2 */

.intro-text.has-global-padding {
  padding-top: 60px !important;
  padding-bottom: 30px !important;
}
.intro-module-wrapper h1 sub {
  font-size: 18px;
}
.intro-module-wrapper h2 sub {
  font-size: 20px;
}
#bsbCarousel-ba7c5d2c-0 .carousel-item {
  height: 70vh !important;
}
.wp-block-bsb-slider .bsbCarousel .carousel-caption {
  height: 60px !important;
}
#bsbCarousel-ba7c5d2c-0 .bsbTitle {
  color: var(--wp--preset--color--blue) !important;
  margin: 5px 0px 5px 0px;
  animation-delay: 0s;
  animation-duration: 0.7s;
  background: rgba(255, 255, 255, 1);
  max-width: 50% !important;
  margin: auto !important;
}
#bsbCarousel-ba7c5d2c-0 p {
  color: #fff;
  margin: 5px 0px 5px 0px;
  animation-delay: 0.7s;
  animation-duration: 0.7s;
  background: rgba(255, 255, 255, 0.2);
}
.back-image {
  position: relative;
}
.back-image:before {
  content: "";
  background-image: url("./assets/images/background-before.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 0;
  opacity: 0.3;
  transform: rotateY(180deg);
}
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 998;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease-in-out;
}
.site-header h1 {
  font-size: 40px;
  transition: font-size 0.3s ease-in-out;
}
.site-header.is-fixed h1 {
  font-size: 25px !important;
}
.site-header p {
  font-size: 22px;
  transition: font-size 0.3s ease-in-out;
}
.site-header.is-fixed p {
  font-size: 16px;
}
.site-header .top-icons img {
  width: 25px !important;
  transition: all 0.3s ease-in-out;
}
/*
.site-header.is-fixed img {
  width: 25px !important;
}*/
.top-icons {
  background: var(--wp--preset--color--orange);
  border-radius: 10px;
  display: flex !important;
  flex-direction: row;
}
.check-icon {
  width: 40px !important;
}
.check-icon-wrapper ul li {
  position: relative;
}
.check-icon-wrapper ul li {
  list-style: none;
}
.check-icon-wrapper ul li:before {
  content: "";
  background-image: url(./assets/images/check.svg);
  background-size: 25px;
  /* background-position: center; */
  background-repeat: no-repeat;
  position: absolute;
  top: 0px;
  left: -40px;
  right: 0;
  bottom: 0;
  z-index: 1;
  filter: brightness(0) saturate(100%) invert(49%) sepia(42%) saturate(7291%)
    hue-rotate(358deg) brightness(100%) contrast(104%);
}
.contact-form-columns-wrapper {
  min-width: 850px;
}
.icons-header-wrapper {
  gap: 0 !important;
}
.lang-flags img {
  width: 20px !important;
  height: 18px !important;
}
.lang-switch a {
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
.lang-switch a:hover {
  color: var(--wp--preset--color--orange);
}
.icons-header-wrapper .lang-flags {
  padding-top: 0 !important;
  gap: 30px !important;
}
.wpcf7 span.wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#privacy-policy-modal {
  display: none;
}
#privacy-policy-modal a {
  color: var(--wp--preset--color--orange);
}
#privacy-policy-modal .button-close-modal a {
  border: 1px solid var(--wp--preset--color--blue) !important;
  color: var(--wp--preset--color--white) !important;
  transition: all 0.3s ease-in-out;
}
#privacy-policy-modal .button-close-modal:hover a {
  color: var(--wp--preset--color--blue) !important;
  background: transparent !important;
}
#privacy-policy-modal.fixed {
  position: fixed;
  margin: 10px;
  overflow-x: scroll;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 999;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  border: 5px solid #e6e6e6;
  padding: 50px 25px !important;
}
.privacy-policy-btn {
  background: none;
  border: none;
  color: white;
  text-decoration: underline;
  cursor: pointer;
}
.header-fixed.is-fixed .lang-switch {
  display: none !important;
}
.wpcf7 form .wpcf7-response-output {
  font-size: 14px;
  color: white;
}
button#close-qr-modal {
  background: var(--wp--preset--color--orange);
  border: 1px solid var(--wp--preset--color--orange) !important;
  position: relative;
  top: 10px;
  margin: auto;
  color: white;
  border: none;
  padding: 15px 20px;
  border-radius: 25px;
  margin-bottom: 30px;
  font-size: 18px;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
button#close-qr-modal:hover {
  background: transparent;
  border: 1px solid var(--wp--preset--color--orange);
  color: var(--wp--preset--color--orange);
}
.qr-wechat-btn {
  cursor: pointer;
}
@media screen and (min-width: 780px) {
  /*.contact-form-wrapper-fixed {
    position: relative;
    animation: fadeIn 1s ease-in-out;
  }
  .contact-form-wrapper-fixed.fixed {
    position: fixed;
    top: 0;
    margin: auto;
    left: auto;
    right: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 50%;
    /*bottom: 150px;
    animation: fadeIn 2s ease-in-out;
  }
  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  .contact-form-wrapper-fixed.fixed h3 {
    /* text-align: left;*
    /*animation: fadeIn 1s ease-in-out;
    margin-top: 50px !important;
  }
  .contact-form-wrapper-fixed.fixed .contact-form-wrapper {
    /*animation: slideUp 1s ease-in-out;
  }
  @keyframes slideUp {
    from {
      transform: translateY(10%);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }*/
  .check-icon-wrapper
    .wp-block-columns:not(.is-not-stacked-on-mobile)
    > .wp-block-column {
    flex-basis: auto !important;
  }
  .site-header .top-icons {
    padding-bottom: 5px !important;
  }
}
@media screen and (max-width: 850px) {
  .contact-form-columns-wrapper {
    min-width: 100%;
  }
}
@media screen and (max-width: 780px) {
  .landing-wrapper {
    background: white;
  }
  .contact-form-wrapper-fixed.has-global-padding {
    padding-bottom: 50px !important;
  }
  .header-fixed > .wp-block-group,
  .contact-form-columns-wrapper {
    display: flex !important;
    flex-direction: column !important;
  }
  .top-icons {
    position: fixed;
    bottom: 0;
    left: 0;
    transform: translateY(0);
    background: var(--wp--preset--color--orange);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    display: flex !important;
    flex-direction: row;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    width: 100% !important;
    justify-content: space-evenly !important;
  }
  .site-header .header-icon img {
    width: 25px !important;
  }
  .site-header p {
    font-size: 18px;
  }
  .go-to-top {
    bottom: 5px;
    right: 5px;
    background-color: var(--wp--preset--color--blue);
  }
  footer {
    padding-bottom: 40px !important;
  }
  .intro-module-wrapper {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .intro-module-wrapper h2 {
    font-size: 30px !important;
    text-align: center !important;
  }
  .intro-module-wrapper h2 sub {
    font-size: 16px;
  }
  .intro-module-wrapper .wp-block-buttons {
    margin-right: auto !important;
  }
  .intro-module-wrapper.has-global-padding {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .text-justify p {
    text-align: justify !important;
  }
  .header-fixed > .wp-block-group {
    gap: 5px !important;
  }
  .site-header.is-fixed .lang-flags {
    display: none !important;
  }
  .wp-block-cover.is-position-center-right {
    justify-content: center !important;
  }
  .lang-switch {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 50px;
  }
  .header-fixed .lang-switch {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 50px;
    display: flex !important;
    align-items: center;
    align-content: center;
    flex-direction: row;
    padding-top: 10px !important;
    margin-top: 5px !important;
    gap: 20px !important;
  }
  .header-fixed.is-fixed p {
    display: none !important;
  }
}
@media screen and (max-width: 500px) {
  .contact-form-wrapper input {
    width: 100%;
  }
  .contact-form-wrapper .wpcf7-list-item input {
    width: 5%;
  }
  .contact-form-wrapper.has-global-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .site-header.is-fixed p {
    font-size: 13px;
  }
}
