/* 1) Cargar Plus Jakarta Sans desde Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');




/* 2) Usar Plus Jakarta Sans como fuente por defecto del sitio */
.default_font-family{
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI",
               Roboto, Arial, "Noto Sans", sans-serif;
}
.default_color_background-dark{background-color: #EEDDD2 !important}
.default_color_background-light{background-color: #22282C !important}
.default_color_background-light-2{background-color: #8198A6 !important}
/**Nav Var color*/
.default_color_nav{background-color: #22282C !important}


.default_color_text_dark{color: #EEDDD2 !important}
.default_color_text_dark-2{color: #F53744 !important}
.default_color_text_light{color: #22282C !important}


.icon-block {
    padding: 0 15px;
}
.default_color-buy_button{
  background-color: #A65233 !important;
  color: #EEDDD2 !important;
}


#intro, #work, #team {padding-top: 4rem;}


#nav_f{
    box-shadow: none !important;
    -webkit-box-shadow:none !important;
}


.astra_logo{
    width: 35%;
    padding-left: 1em;
    padding-top: 0.1em;
    padding-right: 0em !important;
    margin-right: 0em !important;
}


.carousel-adventure{
  /**margin-bottom: 0px !important;*/
  min-height: 668px;
  max-height: 864px;
  /**position: relative;
  background-size: cover;*/
}

.card-content a {color: #2196F3;}

.card-content a:hover {color: #2196F3;}

.card-title{line-height: 98% !important;}

.card-info-font-size{font-size: 1.3rem !important;}

.card-avatar .waves-effect {
    text-align: center;
    margin-top: 20px;
}

.card-avatar img {
    height: 165px;
    width: 165px;
    border-radius: 80px;
    margin: 20px;
}

.card-avatar .card-content {
    text-align: center !important;
}

.card .card-content p {
    margin: 15px 0px;
}

.card-avatar .card-content i {
   font-size: 1.5rem;
}

.card-avatar .card-content .card-title {
    line-height: 30px !important;
}

.grecaptcha-badge {
  visibility: hidden !important;
  display: none !important;
}


/**For to center boxes*/
.card-center{
   margin: 0 auto !important;
   display: flex !important;
   justify-content: center !important;
}

.banner-business{
   text-align: left;
   text-shadow: 2px 2px 2px #0D1D34;
}

.banner-dor-svg{
   margin: 0 0 0 0 !important;
   padding: 6% 0 0 0 !important;
   text-align: left;
   width: 30%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-dor-small-svg{
   margin: 0 0 0 0 !important;
   padding: 10% 0 0 0 !important;
   text-align: center;
   width: 60%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-eon-svg{
   margin: 0 0 0 0 !important;
   padding: 3% 0 0 0 !important;
   text-align: left;
   width: 25%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-eon-small-svg{
   margin: 0 0 0 0 !important;
   padding: 3% 0 0 0 !important;
   text-align: center;
   width: 60%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-be-small-svg{
   margin: 0 0 0 0 !important;
   padding: 22% 0 0 0 !important;
   text-align: center;
   width: 60%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-skyline-svg{
   margin: 0 0 0 0 !important;
   padding: 22% 0 0 0 !important;
   text-align: left;
   width: 35%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-skyline-small-svg{
   margin: 0 0 0 0 !important;
   padding: 11% 0 0 0 !important;
   text-align: center;
   width: 80%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}


.banner-oldies-svg{
   margin: 0 0 0 0 !important;
   padding: 12% 0 0 0 !important;
   text-align: left;
   width: 35%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-oldies-small-svg{
   margin: 0 0 0 0 !important;
   padding: 11% 0 0 0 !important;
   text-align: center;
   width: 80%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.banner-talentum-small-svg{
   margin: 0 0 0 0 !important;
   padding: 16% 0 0 0 !important;
   text-align: center;
   width: 60%;
   filter: drop-shadow(3px 3px 3px #0D1D34)
}

.button-main-screen{
  text-align: center;
}

.text_h {
    padding: 1% 0 !important;
    font-size: 4.0em;
    font-weight: 100;
    color: #FFF7F0;
}

.text_h-small {
    padding: 45% 0 0 0;
    font-size: 4.0em;
    font-weight: 100;
    color: #FFF7F0;
    text-shadow: 0px 0px 2px #17204A;
}


.text_h-small-business {
    padding: 96% 0 0 0;
    font-size: 2.9em;
    font-weight: 100;
    color: #FFF7F0;
    text-shadow: 2px 2px 2px #17204A;
}

.text_h-small-business-2 {
    margin: 96% 0 0 0;
    padding: 0em 0 0 3em;
    font-size: 2.9em;
    font-weight: 100;
    color: #17204A;
}

.text_h-small-dor {
    padding: 65% 0 0 0;
    font-size: 2.9em;
    font-weight: 100;
    color: #FFF7F0;
    text-shadow: 2px 2px 2px #17204A;
}

.text_h-small-labels {
    padding: 40% 0 0 0;
    font-size: 2.9em;
    font-weight: 100;
    color: #FFF7F0;
    text-shadow: 2px 2px 2px #17204A;
}

.text_h-small-courses {
    padding: 85% 0 0 0;
    font-size: 2.9em;
    font-weight: 100;
    color: #FEF4E2;
    text-shadow: 2px 2px 2px #17204A;
}

.text_h-small-test {
    padding: 80% 0 0 0;
    font-size: 2.9em;
    font-weight: 100;
    color: #FEF4E2;
    text-shadow: 0px 0px 2px #17204A;
}

.text_h-products{
    /*padding: 7% 0;*/
    font-size: 4.5em;
    font-weight: 100;
    color: #FFF7F0;
}

.text_h-products-1{
    font-size: 0.8em;
    font-weight: 1em;
    color: #FEF4E2;
}

.text_h-products-1-small{
    font-size: 0.8em;
    font-weight: 1em;
}

.text_h-products-2{
    /*padding: 7% 0;*/
    font-family: STONEHARBOUR !important;
    font-size: 1.6em;
    font-weight: 100;
    color: #17204A;
}

.text_h-products-3{
    /*padding: 7% 0;*/
    font-family: STONEHARBOUR !important;
    font-size: 5em;
    font-weight: 100;
    color: #17204A;
}


.text_h-products-3-small{
    /*padding: 7% 0;*/
    font-family: STONEHARBOUR !important;
    font-size: 3.5em;
    font-weight: 100;
    color: #17204A;
}

.te-img{
    padding: 15%;
}

.text_h2 {font-weight: 100;margin-bottom: 4%; line-height: 4.5rem;}

.title-main-screen{
  padding: 1.2em 0 0 0 !important;
  text-shadow: 2px 2px 4px #0D1D34;
}

.title-main-screen-wheel{
  padding: 33% 0 0 0;
  text-shadow: 2px 2px 4px #0D1D34;
}

.title-dor{
  margin: 0 0 0 0 !important;
  padding: 0% 0 0 0 !important;
  font-size: 4.0em;
  font-weight: 100;
  color: #FFF7F0;
  text-shadow: 2px 2px 4px #0D1D34;
}

.title-products{
  padding: 10% 0 0 0;
  text-shadow: 2px 2px 4px #0D1D34;
}

.title-instant-coffee{
  padding: 15% 0 0 0;
  text-shadow: 2px 2px 4px #0D1D34;
}

.title-zafiro-andes{
  padding: 13% 0% 0% 0%;
  text-shadow: 4px 4px 4px #0D1D34;
}

.title-zafiro-img-slider{
  text-shadow: 2px 2px 2px #0D1D34;
}

.logo_style{
  width: 25%;
  padding: 0px;
  margin: 0px;
}

.logo_style-Eon{
  width:20%;
  padding:4% 0 0 0;
}

.logo_style-Skyline{
  width:35%;
  padding:4% 0 0 0;
  filter: drop-shadow(3px 3px 3px #0D1D34)
}


.logo_style-Oldies{
  width:33%;
  padding:4% 0 0 0;
  filter: drop-shadow(3px 3px 3px #0D1D34)
}


.logo_style-Oldies-small{
  width:69%;
  padding:4% 0 0 0;
  filter: drop-shadow(3px 3px 3px #0D1D34)
}


.logo_style-2{
  width: 80% !important;
  padding: 0px;
  margin: 0px;
}

.logo_style-DOR{
  width: 70%;
  padding-top: 7px;
  margin: 0px;
}


.logo_style-EON{
  width: 68%;
  padding: 0px;
  margin: 0px;
}

.logo_style-BE{
  width: 68%;
  padding-top: 10px;
  margin: 0px;
}

.logo_style-SUNSET{
  width: 68%;
  padding-top: 10px;
  margin: 0px;
}

.logo_style-SKY{
  width: 68%;
  padding-top: 10px;
  margin: 0px;
  filter: drop-shadow(3px 3px 3px #0D1D34)
}

.logo_style-TRAVELER{
  width: 68%;
  padding-top: 10px;
  margin: 0px;
}


.logo_style-TALENTUM{
  width: 90%;
  padding-top: 4em;
  margin: 0px;
}


.logo-zafiro-slider{
  width: 20% !important;
}

.main-banner-small-2{
  width: 79% !important;
  padding: 0px 0 0 0 !important;
  margin: 10px 0 0 0 !important;
  transform: rotate(-11.59deg);
  position: relative;
  z-index: 99;
}

.marketing-simple-small{
  margin: 0.3em !important;
  padding: 0 !important;
  line-height: 100% !important;
  font-size: 0.5em !important;
  color: #17204A;
}

.marketing-simple-business{
  margin: 0.01em 0 0.0em 0 !important;
  padding: 0 0 0.6em 0 !important;
  line-height: 100% !important;
  font-size: 1.4em !important;
  color: #FBF9DE  !important;
  font-weight: 100;
  text-shadow: 1px 1px 2px #17204A !important;
}

.marketing-simple-business-small{
  margin: 0.5em 0 0.5em 0 !important;
  padding: 0 !important;
  line-height: 100% !important;
  font-size: 1.5em !important;
  color: #FFFCF3 !important;
  font-weight: 100;
  text-shadow: 2px 2px 4px #17204A !important;
}

.nav_font{
font-size: 0.8em !important;
}

.padding-right-menu{
   padding-right: 5rem;
}

.parallax-container {
    max-height: 250px;
}

.production-wheel{
  width: 135%;
  padding-top: 12%;
  margin: 0px;
}

.promo i {
    color: #A65233;
    font-size: 7rem;
    display: block;
}

.sidenav-logo{
  width: 70% !important;
}

.span_h2 {font-weight: 300;}

.steps-buy{
  width: 70%;
  margin-bottom: 10%;
}

.hover-icons :hover{color: #414163 !important; }

.hover-text :hover{color: #D9E0E2 !important; }

.hover-image :hover{width: 80% !important;}

.button-add_shopping_cart{min-width: 100% !important;}

.in{font-weight: 400 !important; font-style: normal !important;}


.text_pink{color:#EF9A9A;}

.zafiro-index-types-img{
   width: 78%;
}


/**Main Screen background*/
#index-banner {
    /* Altura fluida y robusta entre móviles y desktop grandes */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/be/main_screen-BE.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

#index-banner-small {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/be/main_screen-BE-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-2 {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #22282C;
    background: url(../img/be/main_screen-BE-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-about {
    /* Altura fluida y robusta entre móviles y desktop grandes */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/main_about.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

#index-banner-about-small {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/main_about-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}



#index-banner-version2 {
      /* Altura fluida y robusta entre móviles y desktop grandes */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/main_screen-version2.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}


#index-banner-small-version2 {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/main_screen1-small-version2.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

/* =========================================================
   PRODUCTIONS HERO - SMALL ONLY
   Centrar texto y botón en smartphone
   Aplica al bloque real: #index-banner-small-version2
   ========================================================= */
@media only screen and (max-width: 600px) {

  #index-banner-small-version2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  #index-banner-small-version2 .hero-mobile-copy {
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
    text-align: center;
  }

  #index-banner-small-version2 .text_h-small-business-2 {
    margin: 96% auto 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    width: 100%;
  }

  #index-banner-small-version2 .text_h-products-1-small {
    display: inline-block;
    text-align: center;
  }

  #index-banner-small-version2 .cd-words-wrapper {
    display: inline-block;
    text-align: center;
  }

  #index-banner-small-version2 .marketing-simple-small {
  margin: 0.55em auto 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  width: 100%;
  font-size: 2rem !important;
  line-height: 1.08em !important;
  font-weight: 300 !important;
}

  #index-banner-small-version2 .button-main-screen {
    margin-top: 1em;
    text-align: center;
    width: 100%;
  }

  #index-banner-small-version2 .button-main-screen .btn-large {
    float: none !important;
    display: inline-block;
  }
}


#index-banner-version3 {
    /* Altura fluida y robusta entre móviles y desktop grandes */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/main_screen-version3.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

#index-banner-small-version3 {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/main_screen1-small-version3.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-version4 {
     /* Altura fluida y robusta entre móviles y desktop grandes */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/main_screen-version4.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

#index-banner-small-version4 {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/main_screen1-small-version4.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

/**home business banner*/
#index-banner-2 {
    /* We care about your success */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFF7F0;
    background: url(../img/Astra-studio-services.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
#index-banner-2-small {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/Zafiro-and-Business-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-3 {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFF7F0;
    background: url(../img/Astra-studio-services-blur.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

#banner-subscribe-background{
    min-height: 800px;
    max-height: 1800px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/main_screen1-gaussian.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}



#products-banner {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/zafiro-which-coffee.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

#products-banner-small {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/zafiro-which-coffee-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-DOR {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/dor/Deep-Ocean-Records-Main_Banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-DOR {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/dor/Deep-Ocean-Records-Main_Banner-small.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-EON {
    /* We Inspire Your Transformation (EON) */
    min-height: clamp(56vh, 72vh, 864px);
    position: relative;
    isolation: isolate;
    background-color: #FFFCF3;
    background: url(../img/eon/main_screen-EON.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}


#index-banner-small-EON {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/eon/main_screen-small-EON.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-BE {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/be/main_screen-BE.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-BE {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/be/main_screen-BE-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-SUNSET {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/sunset/Sunset_Music-Main_Banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-SUNSET {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFF7F0;
    background: url(../img/sunset/Sunset_Music-Main_Banner-small.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-SKYLINE {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/skyline/Skyline_Music-main-banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-SKYLINE {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/skyline/Skyline_Music-main-banner-small.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

#index-banner-TRAVELER {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/traveler/Traveler_Music-Main_Banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-TRAVELER {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/traveler/Traveler_Music-Main_Banner-small.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-OLDIES {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/oldies/Oldies_Music-main-banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-OLDIES {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/oldies/Oldies_Music-main-banner-small.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-TALENTUM {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/talentum/main_screen-TALENTUM.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#index-banner-small-TALENTUM {
    min-height: 668px;
    max-height: 864px;
    position: relative;
    background-color: #FFFCF3;
    background: url(../img/talentum/main_screen-TALENTUM-small.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
}


#uploading-gif{
    display: none;
}

#uploading-gif-subscribe{
    display: none;
}

#p-wheel-button{
  padding: 0% 0% 0% 0% !important;
  margin: 0% 0% 0% 0% !important;
}

#products-banner-zafiro{
  min-height: 864px;
  max-height: 864px;
  position: relative;
  background-color: #FFFCF3;
  background-repeat: no-repeat;
  background-size: cover;
}

#products-banner-zafiro .col{
  margin-top: 6%;
}

#products-banner-zafiro img{
  padding: 6% 6% 0% 6%;
}

#equipo-banner{
  min-height: 668px;
  max-height: 864px;
  position: relative;
  background-color: #FFFCF3;
  background: url(../img/equipo-zafiro.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

#equipo-banner-small{
  min-height: 668px;
  max-height: 864px;
  position: relative;
  background-color: #FFFCF3;
  background: url(../img/equipo-zafiro-small.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

#z-index-main-banner{
  position: relative;
  z-index: 90 !important;
}

#z-index-main-banner-2{
  padding: 0.2em, 0, 0.1em, 0;
  position: relative;
  z-index: 100;
}

.cd-headline.type .cd-words-wrapper {
    vertical-align: top;
    overflow: hidden;
}

.cd-headline.type .cd-words-wrapper::after {
    /* vertical bar */
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    bottom: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 90%;
    width: 1px;
    background-color: #aebcb9;
}

.cd-headline.type .cd-words-wrapper.waiting::after {
    -webkit-animation: cd-pulse 1s infinite;
    -moz-animation: cd-pulse 1s infinite;
    animation: cd-pulse 1s infinite;
}
.cd-headline.type .cd-words-wrapper.selected {
    background-color: RGBA(219, 222, 225, 0.33);
}

.cd-headline.type .cd-words-wrapper.selected::after {
    visibility: hidden;
}

.cd-headline.type .cd-words-wrapper.selected b {
    color: #A65233;
}

.cd-headline.type b {
    visibility: hidden;
}

.cd-headline.type b.is-visible {
    visibility: visible;
}

.cd-headline.type i {
    position: absolute;
    visibility: hidden;
}
.cd-headline.type i.in {
    position: relative;
    visibility: visible;
}


@-webkit-keyframes cd-pulse {
    0% {
        -webkit-transform: translateY(-50%) scale(1);
        opacity: 1;
    }
    40% {
        -webkit-transform: translateY(-50%) scale(0.9);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(-50%) scale(0);
        opacity: 0;
    }
}
@-moz-keyframes cd-pulse {
    0% {
        -moz-transform: translateY(-50%) scale(1);
        opacity: 1;
    }
    40% {
        -moz-transform: translateY(-50%) scale(0.9);
        opacity: 0;
    }
    100% {
        -moz-transform: translateY(-50%) scale(0);
        opacity: 0;
    }
}

@keyframes cd-pulse {
    0% {
        -webkit-transform: translateY(-50%) scale(1);
        -moz-transform: translateY(-50%) scale(1);
        -ms-transform: translateY(-50%) scale(1);
        -o-transform: translateY(-50%) scale(1);
        transform: translateY(-50%) scale(1);
        opacity: 1;
    }
    40% {
        -webkit-transform: translateY(-50%) scale(0.9);
        -moz-transform: translateY(-50%) scale(0.9);
        -ms-transform: translateY(-50%) scale(0.9);
        -o-transform: translateY(-50%) scale(0.9);
        transform: translateY(-50%) scale(0.9);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(-50%) scale(0);
        -moz-transform: translateY(-50%) scale(0);
        -ms-transform: translateY(-50%) scale(0);
        -o-transform: translateY(-50%) scale(0);
        transform: translateY(-50%) scale(0);
        opacity: 0;
    }
}
@media only screen and (max-width: 480px) {
    .text_h {
        padding: 4% 0;
        font-size: 5em;
        font-weight: 100;
        color: #FFF7F0;
    }
}

@media only screen and (min-width: 780px) and (max-width: 1100px){
     
          .zafiro_logo{
            width: 33%;
            padding-top: 0.5em;
          }
}

@media (min-width: 1px) and (max-width: 320px){
          .zafiro_logo{
            width: 86%;
            padding-top: 0.2em;
            padding-right: 0em !important;
            margin-right: 0em !important;
          }
}

@media (min-width: 321px) and (max-width: 380px){
          .zafiro_logo{
            width: 76%;
            padding-top: 0.09em;
            padding-right: 0em !important;
            margin-right: 0em !important;
          }
}

@media (min-width: 381px) and (max-width: 430px){
          .zafiro_logo{
            width: 68%;
            padding-top: 0.09em;
            padding-right: 0em !important;
            margin-right: 0em !important;
          }
}

@media (min-width: 431px) and (max-width: 779px){
          .zafiro_logo{
            width: 51%;
            padding-top: 0.09em;
            padding-right: 0em !important;
            margin-right: 0em !important;
          }
}

@media (min-width: 1101px){
          .zafiro_logo{
            width: 49%;
            padding-top: 0.09em;
            padding-right: 0em !important;
            margin-right: 0em !important;
          }
}

input, textarea {
    border-bottom: 1px solid #fff;
}

nav a.button-collapse {
    left: -25px;
}

nav ul a {
    font-size: 1.2rem;
    color: #0D1D34;
    letter-spacing: 2px;
    display: block;
    font-weight: 300;
    padding: 0px 15px;
}

footer.page-footer {
    margin-top: 0px !important;
}

/* --- Navbar logo fixes --- */
/* Tamaño estable del logo en navbar (coincide con alturas de Materialize) */
.astra_logo-small-only {
  height: 56px;          /* mobile */
  width: auto;
  padding-left: 2.5rem;   /* ajuste fino opcional */
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  display: inline-block;
}

@media (min-width: 993px) {
  .astra_logo-small-only { height: 64px; } /* desktop */
}

.sidenav-logo {
  height: 48px;        /* alto del logo en el menú lateral */
  width: auto;
  display: block;
}

/* === Navbar logo: centrado en móvil, left en desktop === */

/* Tamaño del logo en la barra (evita CLS) */
.astra_logo-small-only {
  height: 56px;    /* mobile */
  width: auto;
  display: inline-block;
}

@media (min-width: 993px) {
  .astra_logo-small-only { height: 64px; } /* desktop */
}

/* Asegura referencia para posicionar elementos dentro del nav */
#nav_f .nav-wrapper {
  position: relative;
  min-height: 64px; /* coherente con Materialize */
}

/* MÓVIL: centrar el logo y mantener el icono de menú a la derecha */
@media (max-width: 600px) {
  #nav_f .brand-logo,
  #logo-container {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1; /* debajo del icono de menú */
  }

  /* Evita solapamientos con el botón de menú */
  #nav_f .sidenav-trigger {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
  }
}

/* ≥601px: volver a alineación izquierda */
@media (min-width: 601px) {
  #nav_f .brand-logo,
  #logo-container {
    position: absolute; /* comportamiento estándar en Materialize */
    left: 0;
    transform: none;
    z-index: 1;
  }
}

/* === Fix SOLO smartphone: logo centrado con respiro vertical === */
@media (max-width: 600px) {
  #nav_f .nav-wrapper {
    position: relative;
    min-height: 64px; /* coherente con Materialize */
  }

  /* Anchor del logo centrado y con un poco de padding vertical */
  #nav_f .brand-logo,
  #logo-container {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    padding: 0.4rem 0 0.1rem 0;       /* ← respiro arriba/abajo (ajusta 3–6px si quieres) */
    z-index: 1;
  }

  /* La imagen del logo no aporta padding para no descentrar */
  .astra_logo-small-only {
    height: 3rem;  /* alto estable en móvil */
    width: auto;
    display: inline-block;
    margin: 0;
    padding: 0 !important;
  }

  /* Mantén el botón de menú a la derecha y centrado verticalmente */
  #nav_f .sidenav-trigger {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
  }
}

@media (min-width: 601px) {        /* tablet */
  .logo_style--screen2 {
    width: 26% !important;         /* antes 33%: reduce un poco */
  }
}

@media (min-width: 993px) {        /* desktop */
  .logo_style--screen2 {
    width: 22% !important;         /* un poco menor en desktop */
  }
}

/* === Hover sobrio para los ítems del menú (Navigation) === */
/* Aplica a los <a class="nav_font ..."> del navbar superior */
#nav_f .nav-wrapper ul li a.nav_font {
  display: inline-block;                 /* permite transform sin reflow extraño */
  transition:
    transform 140ms ease,
    font-variation-settings 140ms ease,  /* anima peso en variable fonts */
    font-weight 140ms ease;              /* fallback */
  will-change: transform;
}

/* Solo en dispositivos con hover (evita “falsos hovers” en táctiles) */
@media (hover: hover) {
  #nav_f .nav-wrapper ul li a.nav_font:hover,
  #nav_f .nav-wrapper ul li a.nav_font:focus-visible {
    transform: scale(1.03);              /* +3% muy sutil, sin mover layout */
    font-weight: 600;                    /* fallback si no hay variable fonts */
    font-variation-settings: "wght" 600; /* Plus Jakarta Sans variable */
    text-decoration: none;
  }
}

/* Respeto a usuarios con reducción de animación */
@media (prefers-reduced-motion: reduce) {
  #nav_f .nav-wrapper ul li a.nav_font {
    transition: none;
  }
  #nav_f .nav-wrapper ul li a.nav_font:hover,
  #nav_f .nav-wrapper ul li a.nav_font:focus-visible {
    transform: none;
  }
}

/* ===== Overlay de legibilidad para héroes principales ===== */
#index-banner::before,
#index-banner-2::before,
#index-banner-EON::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,.32), rgba(0,0,0,.26));
    z-index: -1; /* detrás del contenido del héroe */
}

/* Ajuste fino form subscribe whatsapp */
  .whatsapp-input-wrapper { display:flex; align-items:center; gap:10px; }
  .prefix-chip {
    padding:0 12px; height:36px; line-height:36px; border-radius:18px;
    background:rgba(34,40,244,0.08); color:#22282C; font-weight:600; user-select:none;
  }
  @media (max-width:600px){ .prefix-chip{ height:32px; line-height:32px; } }


  #banner-subscribe-background {
  background-color: #22282C;
  padding-top: 48px;
  padding-bottom: 48px;
}




/* =====================================================================
   Astra Workshops 2025 — HERO small only (scoped to #index-banner-small-2)
   Nota: Cambios mínimos para anclar texto y botón al fondo en móviles
   sin afectar el resto del sitio. Mantener este bloque al final.
   ===================================================================== */
@media (max-width: 600px){
  /* Contenedor del héroe móvil como flex column con contenido al fondo */
  #index-banner-small-2{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;   /* empuja contenido hacia abajo */
    align-items: center;         /* centra horizontal */
    padding-bottom: 20px;
    text-align: center;
  }

  /* Asegura ancho y centrado del contenido */
  #index-banner-small-2 .container{
    width: 100%;
    text-align: center;
  }

  /* Anula margen/padding globales de .text_h-small-business-2 (que empujaban hacia arriba) */
  #index-banner-small-2 .text_h-small-business-2{
    margin: 0 12px 8px 12px !important;  /* elimina el margin-top:96% heredado */
    padding: 0 !important;               /* anula padding-left global */
    text-align: center !important;
    color: #FEF4E2 !important;           /* legible sobre #22282C */
    text-shadow: 2px 2px 4px rgba(0,0,0,.35);
  }

  /* Texto descriptivo legible sobre fondo oscuro */
  #index-banner-small-2 .marketing-simple-small{
    margin: 6px 12px 0 12px !important;
    color: #FEF4E2 !important;
    text-shadow: 1px 1px 2px rgba(0,0,0,.35);
  }

  /* Pequeño ajuste de respiración para el botón */
  #index-banner-small-2 .button-main-screen{
    margin: 8px 0 4px 0;
  }
}


/* =====================================================================
   FIX: HERO small only (#index-banner-small-2) — anclar contenido abajo
   Estrategia: Flex column + margin-top:auto en .container para empujar
   el bloque hacia el fondo. Cambios scoped y solo en móviles.
   ===================================================================== */
@media (max-width: 600px){
  #index-banner-small-2{
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding-bottom: 20px;
    text-align: center;
  }
  /* Empuja el bloque de textos hacia el fondo del héroe */
  #index-banner-small-2 > .container{
    margin-top: auto !important;
    width: 100%;
  }
  /* Resetea márgenes heredados que puedan colapsar */
  #index-banner-small-2 h1,
  #index-banner-small-2 p{
    margin-top: 0 !important;
  }
  /* Ajuste fino del botón */
  #index-banner-small-2 .button-main-screen{
    margin: 8px 0 6px 0 !important;
  }
  /* Ya existente: limpiar margen/padding de .text_h-small-business-2 */
  #index-banner-small-2 .text_h-small-business-2{
    margin: 0 12px 8px 12px !important;
    padding: 0 !important;
    text-align: center !important;
  }
}


/* =====================================================================
   FIX: SCREEN 2 Small Only — visibilidad de bullets y texto en tarjetas
   Motivo: el contenedor usa .default_color_text_dark (#FEF4E2) y las
   tarjetas tienen fondo claro (#FEF4E2) → texto invisible. Forzamos
   texto oscuro SOLO en móvil y SOLO dentro del bloque small-only.
   ===================================================================== */
@media (max-width: 600px){
  .hide-on-med-and-up.show-on-small .plan-card,
  .hide-on-med-and-up.show-on-small .plan-card * {
    color: #22282C !important;
  }
  .hide-on-med-and-up.show-on-small .plan-card__when a {
    color: #F20574 !important; /* color de enlace del diseño */
  }
}


/* =====================================================================
   FIX: SCREEN 2 Small Only — botones con títulos largos en móvil
   Problema: Materialize define altura fija y nowrap en .btn/.btn-large.
   Solución: permitir múltiples líneas y altura auto SOLO en small-only.
   ===================================================================== */
@media (max-width: 600px){
  .hide-on-med-and-up.show-on-small .btn,
  .hide-on-med-and-up.show-on-small .btn-large,
  .hide-on-med-and-up.show-on-small .btn.glow-pulse,
  .hide-on-med-and-up.show-on-small .glow-pulse.btn {
    white-space: normal !important;   /* permite salto de línea */
    height: auto !important;          /* elimina altura fija */
    line-height: 1.25 !important;     /* legibilidad multilinea */
    padding: 12px 18px !important;    /* respiración */
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100%;
    overflow-wrap: anywhere;          /* rompe si es necesario */
    word-break: normal;
    display: inline-block;
    text-align: center;
  }

  /* Botón naranja: texto oscuro de diseño */
  #btn-calendar-mobile { color: #22282C !important; }
}

/* XS muy angosto: ancho completo */
@media (max-width: 380px){
  .hide-on-med-and-up.show-on-small .btn,
  .hide-on-med-and-up.show-on-small .btn-large,
  .hide-on-med-and-up.show-on-small .btn.glow-pulse,
  .hide-on-med-and-up.show-on-small .glow-pulse.btn {
    width: 100% !important;
  }
}
