/*
 * Lukas Teissl Academy v3.0.12
 * Spanish-only language availability notices.
 * Loaded after the Spanish redesign so long Spanish copy never overflows.
 */

/* Shared safety: every grid child may shrink and wrap cleanly. */
.locale-es :is(.intl-language-banner-inner,.intl-language-callout) > *{
  min-width:0;
}
.locale-es :is(.intl-language-banner-inner,.intl-language-callout) :is(span,h2,p,a){
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}

/* --------------------------------------------------------------------------
   Homepage and course-overview language banner
   -------------------------------------------------------------------------- */
.locale-es .intl-language-banner{
  margin:0;
  padding:18px 0;
  border:0;
  background:
    radial-gradient(circle at 8% 50%,rgba(24,190,116,.08),transparent 28%),
    linear-gradient(180deg,#f8fbfa 0%,#f3f7f6 100%);
}
.locale-es .intl-language-banner.compact{
  margin:0;
  padding:15px 0;
}
.locale-es .intl-language-banner-inner{
  min-height:0;
  display:grid;
  grid-template-columns:68px minmax(0,1fr) minmax(190px,230px);
  align-items:center;
  gap:20px;
  padding:22px 24px;
  border:1px solid rgba(214,174,81,.42);
  border-radius:24px;
  background:
    radial-gradient(circle at 96% 5%,rgba(244,211,126,.16),transparent 27%),
    linear-gradient(135deg,#fffdf8 0%,#ffffff 58%,#f7fcf9 100%);
  box-shadow:0 18px 46px rgba(36,49,58,.08),inset 0 1px 0 rgba(255,255,255,.95);
}
.locale-es .intl-language-banner.compact .intl-language-banner-inner{
  padding:19px 22px;
}
.locale-es .intl-language-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border:1px solid rgba(126,242,185,.18);
  border-radius:18px;
  background:
    radial-gradient(circle at 30% 20%,rgba(27,199,122,.24),transparent 42%),
    linear-gradient(145deg,#071522,#0c3340);
  box-shadow:0 14px 28px rgba(6,22,37,.18),inset 0 1px 0 rgba(255,255,255,.07);
  color:#8cf2bf;
  font-size:.75rem;
  font-weight:950;
  letter-spacing:.14em;
  line-height:1;
}
.locale-es .intl-language-banner-inner>div:nth-child(2){
  display:grid;
  gap:6px;
  align-content:center;
}
.locale-es .intl-language-banner-inner>div:nth-child(2)>span{
  color:#0b2133;
  font-size:clamp(1rem,1.6vw,1.28rem);
  font-weight:900;
  letter-spacing:-.025em;
  line-height:1.18;
  text-transform:none;
  text-wrap:balance;
}
.locale-es .intl-language-banner-inner p{
  max-width:850px;
  margin:0;
  color:#657585;
  font-size:.8rem;
  line-height:1.62;
  text-wrap:pretty;
}
.locale-es .intl-language-banner-inner>.button{
  width:100%;
  min-height:48px;
  padding:12px 16px;
  border-radius:14px;
  white-space:normal;
  text-align:center;
  line-height:1.25;
  box-shadow:0 13px 28px rgba(27,199,122,.20);
}
.locale-es .intl-language-banner-inner>.button:hover{
  transform:translateY(-2px);
}

/* --------------------------------------------------------------------------
   Course-detail language callout
   -------------------------------------------------------------------------- */
.locale-es .intl-course-language{
  padding-top:38px;
  padding-bottom:38px;
  background:linear-gradient(180deg,#f7faf9 0%,#ffffff 100%);
}
.locale-es .intl-language-callout{
  display:grid;
  grid-template-columns:minmax(145px,180px) minmax(0,1fr) minmax(190px,230px);
  align-items:center;
  gap:22px;
  padding:24px 26px;
  border:1px solid rgba(214,174,81,.42);
  border-radius:24px;
  background:
    radial-gradient(circle at 95% 4%,rgba(244,211,126,.17),transparent 28%),
    linear-gradient(135deg,#fffdf8 0%,#ffffff 60%,#f7fcf9 100%);
  box-shadow:0 18px 46px rgba(36,49,58,.08),inset 0 1px 0 rgba(255,255,255,.96);
}
.locale-es .intl-language-callout>span{
  width:auto;
  height:auto;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border:1px solid rgba(126,242,185,.19);
  border-radius:14px;
  background:
    radial-gradient(circle at 20% 15%,rgba(27,199,122,.22),transparent 44%),
    linear-gradient(145deg,#071522,#0c3340);
  box-shadow:0 12px 25px rgba(6,22,37,.17),inset 0 1px 0 rgba(255,255,255,.07);
  color:#8cf2bf;
  font-size:.64rem;
  font-weight:950;
  letter-spacing:.09em;
  line-height:1.3;
  text-align:center;
  white-space:normal;
  text-transform:uppercase;
}
.locale-es .intl-language-callout>div{
  display:grid;
  gap:6px;
  min-width:0;
}
.locale-es .intl-language-callout h2{
  max-width:760px;
  margin:0;
  color:#0b2133!important;
  font-size:clamp(1.18rem,2vw,1.58rem)!important;
  font-weight:900;
  letter-spacing:-.028em;
  line-height:1.18!important;
  text-wrap:balance;
}
.locale-es .intl-language-callout p{
  max-width:850px;
  margin:0;
  color:#657585;
  font-size:.79rem;
  line-height:1.62;
  text-wrap:pretty;
}
.locale-es .intl-language-callout>.button{
  width:100%;
  min-height:48px;
  padding:12px 16px;
  border-radius:14px;
  white-space:normal;
  text-align:center;
  line-height:1.25;
  box-shadow:0 13px 28px rgba(27,199,122,.20);
}

/* Medium screens: keep text spacious and move the CTA below. */
@media(max-width:1050px){
  .locale-es .intl-language-banner-inner{
    grid-template-columns:62px minmax(0,1fr);
  }
  .locale-es .intl-language-banner-inner>.button{
    grid-column:2;
    width:min(100%,340px);
    justify-self:start;
  }
  .locale-es .intl-language-callout{
    grid-template-columns:minmax(145px,180px) minmax(0,1fr);
  }
  .locale-es .intl-language-callout>.button{
    grid-column:2;
    width:min(100%,340px);
    justify-self:start;
  }
}

/* Tablet and mobile: stack naturally, never overflow. */
@media(max-width:720px){
  .locale-es .intl-language-banner,
  .locale-es .intl-language-banner.compact{
    padding:12px 0;
  }
  .locale-es .intl-language-banner-inner{
    grid-template-columns:50px minmax(0,1fr);
    gap:13px;
    padding:18px 17px;
    border-radius:20px;
  }
  .locale-es .intl-language-icon{
    width:48px;
    height:48px;
    border-radius:14px;
    font-size:.68rem;
  }
  .locale-es .intl-language-banner-inner>div:nth-child(2)>span{
    font-size:1rem;
  }
  .locale-es .intl-language-banner-inner p{
    font-size:.75rem;
    line-height:1.58;
  }
  .locale-es .intl-language-banner-inner>.button{
    grid-column:1/-1;
    width:100%;
    justify-self:stretch;
  }

  .locale-es .intl-course-language{
    padding-top:25px;
    padding-bottom:25px;
  }
  .locale-es .intl-language-callout{
    grid-template-columns:1fr;
    gap:15px;
    padding:19px 17px;
    border-radius:20px;
  }
  .locale-es .intl-language-callout>span{
    justify-self:start;
    width:auto;
    max-width:100%;
    min-height:40px;
    padding:9px 12px;
    font-size:.59rem;
  }
  .locale-es .intl-language-callout h2{
    font-size:1.18rem!important;
  }
  .locale-es .intl-language-callout p{
    font-size:.75rem;
    line-height:1.58;
  }
  .locale-es .intl-language-callout>.button{
    grid-column:auto;
    width:100%;
    justify-self:stretch;
  }
}

@media(max-width:430px){
  .locale-es .intl-language-banner-inner{
    grid-template-columns:1fr;
    padding:17px 15px;
  }
  .locale-es .intl-language-icon{
    width:46px;
    height:46px;
  }
  .locale-es .intl-language-banner-inner>.button{
    grid-column:auto;
  }
}
