.structure-card,.testimonial-card,.testimonial-carousel__arrow,.about-partners-item,.about-partners-arrow,.howto-register,.button-secondary,.cms-card,.cms-button,.contact_wrapper,.cms-field input,.cms-field textarea,.open-call-card,.open-call-card__apply,.team-profile {
  border-radius:100!important;
}

.about-overview-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);
  gap:2rem;
  align-items:stretch
}

.about-overview-grid .howto-card,
.about-overview-grid .about-cooperation{
  width:auto;
  margin:0;
  box-sizing:border-box;
  padding:clamp(2.25rem,4vw,3.5rem);
  background:#fff;
  border:1px solid rgba(20,28,48,.14)
}

.about-overview-grid .howto-card{
  display:flex;
  align-items:center
}

.about-overview-grid .about-copy{
  width:100%
}

.about-overview-grid .about-cooperation-layout{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1.75rem;
  height:100%
}

.about-overview-grid .about-partner-logo{
  text-align:left
}

.about-overview-grid .about-partner-logo .text-style-allcaps{
  margin-bottom:1rem
}

.about-overview-grid .about-partner-logo img{
  width:min(100%,21rem);
  height:auto;
  margin:0
}

.about-overview-grid .about-partner-content{
  gap:.65rem
}

.about-overview-grid .about-partner-content p{
  max-width:38rem;
  margin:0 0 .6rem;
  line-height:1.65
}

.about-history,
.about-team{
  margin-top:clamp(3rem,6vw,5rem)
}

.about-history .structure-card{
  min-height:0
}

.about-team-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.5rem
}

.team-profile{
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(20,28,48,.14)
}

.team-profile img,
.team-profile__placeholder{
  display:block;
  width:100%;
  height:clamp(14rem,25vw,20rem);
  object-fit:cover;
  background:#0a1f50
}

.team-profile__placeholder{
  display:grid;
  place-items:center;
  color:#fff;
  font-size:clamp(1.75rem,3vw,2.5rem);
  font-weight:700
}

.team-profile__copy{
  padding:1.15rem 1.25rem 1.3rem
}

.team-profile__copy h3,
.team-profile__copy p{
  margin:0
}

.team-profile__copy h3{
  font-size:1.35rem
}

.team-profile__copy p{
  margin-top:.4rem;
  color:#4a5368;
  font-size:.92rem;
  line-height:1.45
}

.contact-faq-prompt{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:2rem;
  align-items:center;
  padding:2.25rem max(5vw,calc((100% - 70rem)/2));
  background:#0a1f50;
  color:#fff!important;
  text-align:center;
  text-decoration:none;
  transition:background-color .2s ease
}

.contact-faq-prompt:hover,
.contact-faq-prompt:focus-visible{
  background:#102f72
}

.contact-faq-prompt:focus-visible{
  outline:3px solid #fff;
  outline-offset:-6px
}

.contact-faq-prompt p{
  margin:0;
  font-size:clamp(1.25rem,2vw,1.75rem)
}

.contact-faq-prompt__link{
  text-decoration:underline;
  text-underline-offset:.25rem
}

.student-open-calls{
  width:min(72rem,90vw);
  margin:clamp(3rem,7vw,6rem) auto
}

.student-open-calls__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.5rem
}

.open-call-card{
  display:flex;
  flex-direction:column;
  gap:1rem;
  padding:1.5rem;
  border:1px solid #0a1f50;
  background:#fff
}

.open-call-card h3,
.open-call-card p{
  margin:0
}

.open-call-card h3{
  font-size:1.45rem
}

.open-call-card__field{
  padding:.8rem 1rem;
  background:#eef3ff;
  color:#0a1f50;
  font-size:1.05rem;
  font-weight:700
}

.open-call-card__row{
  display:grid;
  grid-template-columns:1.6rem minmax(0,1fr);
  gap:.75rem;
  align-items:center;
  color:#0a1f50
}

.open-call-card__row svg{
  width:1.5rem;
  height:1.5rem;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round
}

.open-call-card__location svg{
  fill:currentColor;
  stroke:none
}

.open-call-card__apply{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:auto;
  padding:.85rem 1rem;
  background:#0a1f50;
  color:#fff!important;
  text-align:center;
  text-decoration:none;
  font-weight:700
}

.open-call-card__apply svg{
  width:1.35rem;
  height:1.35rem;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round
}

@media(max-width:900px){
  .about-overview-grid{
    grid-template-columns:1fr
  }
}

body.eub-contact-page .site-footer{
  position:relative!important;
  inset:auto!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:4rem max(5vw,calc((100vw - 1180px)/2)) 1.5rem!important;
  overflow:visible!important;
  background:#081d47!important
}

body.eub-contact-page .site-footer__top{
  position:relative!important;
  display:grid!important;
  grid-template-columns:2fr 1fr!important;
  align-items:start!important;
  gap:3rem!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  transform:none!important
}

body.eub-contact-page .site-footer__bottom{
  position:relative!important;
  margin:3rem 0 0!important;
  padding:1.25rem 0 0!important;
  transform:none!important
}

@media(max-width:767px){
  .contact-faq-prompt{
    grid-template-columns:1fr
  }

  .about-team-grid,
  .student-open-calls__grid{
    grid-template-columns:1fr
  }
}


/* 2026 visual refinement */

.howto-main>.howto-intro{
  min-height:clamp(34rem,72vh,48rem)!important;
  justify-content:center!important
}

.howto-main>.howto-intro:before{
  display:none
}

.howto-main>.howto-intro h1{
  max-width:48rem;
  margin:.45rem 0 1rem;
  font-size:clamp(3rem,7vw,6.4rem);
  line-height:.96
}

.about-hero__eyebrow{
  margin:0;
  color:#ffd45b;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase
}

.about-hero__lead{
  max-width:42rem!important;
  margin:0;
  font-size:clamp(1.1rem,2vw,1.35rem);
  line-height:1.6
}

.about-hero__button{
  display:inline-flex;
  align-items:center;
  gap:1rem;
  width:max-content;
  margin-top:1.75rem;
  padding:.95rem 1.2rem;
  background:#ffd45b;
  color:#081d47!important;
  font-weight:800;
  text-decoration:none
}

.about-path{
  width:min(78rem,92vw)!important;
  box-sizing:border-box;
  margin:clamp(3rem,6vw,5rem) auto!important;
  padding:clamp(1.5rem,3vw,2.25rem) clamp(1.5rem,4vw,3rem)!important
}

.about-path h2{
  margin:.25rem 0 0!important
}

.about-path p{
  margin:0;
  color:#ffd45b
}

.about-path a{
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  padding:.9rem 1.2rem;
  background:#fff;
  color:#081d47!important;
  text-decoration:none!important;
  white-space:nowrap
}

body.eub-contact-page .contact_section-header{
  position:relative;
  display:flex;
  min-height:clamp(31rem,68vh,46rem);
  align-items:center;
  background:
    linear-gradient(
      90deg,
      rgba(5,23,60,.9) 0%,
      rgba(5,23,60,.65) 40%,
      rgba(5,23,60,.08) 72%
    ),
    url('../images/contact-hero-guidance.png') center/cover no-repeat;
  color:#fff
}

body.eub-contact-page .contact_section-header .page-padding{
  width:100%
}

body.eub-contact-page .contact_section-header .container-small{
  width:min(74rem,90vw);
  max-width:none;
  margin:auto
}

body.eub-contact-page .contact_section-header .text-align-center{
  text-align:left
}

.contact-hero__copy{
  max-width:42rem
}

.contact-hero__copy>p{
  margin:0;
  color:#ffd45b;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase
}

.contact-hero__copy h1{
  margin:.45rem 0 1rem;
  font-size:clamp(3rem,7vw,6rem);
  line-height:.98
}

.contact-hero__copy>div{
  max-width:38rem;
  font-size:clamp(1.05rem,2vw,1.3rem);
  line-height:1.6
}

.contact-hero__copy>a{
  display:inline-flex;
  gap:1rem;
  margin-top:1.6rem;
  padding:.95rem 1.2rem;
  background:#ffd45b;
  color:#081d47;
  font-weight:800;
  text-decoration:none
}

.faq-groups{
  min-height:55vh;
  padding-top:clamp(4rem,8vw,7rem)!important;
  padding-bottom:clamp(5rem,9vw,8rem)!important
}

@media(max-width:767px){
  .about-path{
    align-items:flex-start!important
  }

  .about-path a{
    white-space:normal
  }

  body.eub-contact-page .contact_section-header{
    background-position:62% center!important
  }
}

.howto-page .about-hero__button{
  align-self:flex-start!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin-top:1.5rem!important;
  padding:.35rem 0 .45rem!important;
  border-bottom:2px solid #ffd45b!important;
  background:transparent!important;
  color:#fff!important;
  font-size:.92rem!important;
  line-height:1.25!important;
  letter-spacing:.01em!important;
  box-shadow:none!important
}

.howto-page .about-hero__button span{
  display:inline-grid;
  width:1.65rem;
  height:1.65rem;
  margin-left:.2rem;
  border-radius:50%;
  place-items:center;
  background:#ffd45b;
  color:#081d47;
  font-size:.85rem;
  transition:transform .2s ease
}

.howto-page .about-hero__button:hover span,
.howto-page .about-hero__button:focus-visible span{
  transform:translateY(.18rem)
}

.howto-page button.about-hero__button{
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  font-family:inherit!important;
  font-weight:700!important;
  cursor:pointer!important
}

.howto-page #about-story{
  scroll-margin-top:5rem
}

.howto-page .howto-main>.howto-intro>*:not(.cms-page-hero-image){
  opacity:calc(1 - var(--about-scroll-progress,0));
  transform:translateY(calc(var(--about-scroll-progress,0) * -2.5rem))
    scale(calc(1 - var(--about-scroll-progress,0) * .12));
  transform-origin:left center;
  transition:opacity .08s linear,transform .08s linear;
  will-change:opacity,transform
}

.howto-page button.about-hero__button{
  display:inline-flex!important;
  align-items:center!important;
  gap:1rem!important;
  width:auto!important;
  margin-top:1.5rem!important;
  padding:.9rem 1.05rem!important;
  border:0!important;
  background:#ffd45b!important;
  color:#081d47!important;
  font-size:.9rem!important;
  font-weight:800!important;
  line-height:1.2!important;
  box-shadow:none!important
}

.howto-page button.about-hero__button span{
  display:inline!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#081d47!important;
  font-size:1rem!important
}


/* Hero sizing only – no forced background image */

.howto-page .howto-main>.howto-intro{
  min-height:clamp(31rem,68vh,43rem)!important
}

.howto-page .howto-main>.howto-intro h1{
  max-width:43rem!important;
  margin:.55rem 0 1.05rem!important;
  font-size:clamp(3.25rem,5.4vw,5.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.025em
}

.howto-page .about-hero__eyebrow{
  color:#ffd45b!important;
  font-size:.82rem!important;
  line-height:1.2!important;
  letter-spacing:.12em!important
}

.howto-page .about-hero__lead{
  max-width:40rem!important;
  font-size:clamp(1rem,1.45vw,1.2rem)!important;
  font-weight:600;
  line-height:1.55!important
}


/* Hero structure – still no forced background image */

.howto-page .howto-main>.howto-intro{
  isolation:isolate;
  min-height:clamp(34rem,70vh,44rem)!important;
  padding-top:clamp(4rem,8vw,7rem)!important;
  padding-bottom:clamp(4rem,8vw,7rem)!important;
  background-position:64% center!important
}

.howto-page .howto-main>.howto-intro:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  inset:0!important;
  background:linear-gradient(
    90deg,
    #071b43 0%,
    #071b43 32%,
    rgba(7,27,67,.96) 43%,
    rgba(7,27,67,.64) 62%,
    rgba(7,27,67,.12) 82%
  )!important;
  pointer-events:none
}

.howto-page .howto-main>.howto-intro>*:not(.cms-page-hero-image){
  position:relative;
  z-index:1;
  max-width:38rem
}

.howto-page .howto-main>.howto-intro h1{
  max-width:38rem!important;
  margin:.7rem 0 1.25rem!important;
  font-size:clamp(3rem,4.8vw,4.85rem)!important;
  line-height:1!important;
  letter-spacing:-.03em
}

.howto-page .about-hero__eyebrow{
  margin:0!important;
  font-size:.78rem!important;
  letter-spacing:.14em!important
}

.howto-page .about-hero__lead{
  max-width:35rem!important;
  margin:0!important;
  color:rgba(255,255,255,.9)!important;
  font-size:clamp(1rem,1.25vw,1.13rem)!important;
  font-weight:500!important;
  line-height:1.65!important
}

.howto-page button.about-hero__button{
  margin-top:1.75rem!important;
  padding:.9rem 1.1rem!important;
  font-size:.86rem!important
}

@media(max-width:767px){
  .howto-page .howto-main>.howto-intro{
    min-height:38rem!important;
    background-position:68% center!important
  }

  .howto-page .howto-main>.howto-intro:before{
    background:linear-gradient(
      90deg,
      rgba(7,27,67,.94),
      rgba(7,27,67,.68)
    )!important
  }

  .howto-page .howto-main>.howto-intro h1{
    font-size:clamp(2.7rem,12vw,4rem)!important
  }
}

.howto-page .howto-main>.howto-intro{
  justify-content:center!important
}

.howto-page .about-overview-grid{
  width:min(72rem,90vw);
  margin:clamp(4rem,7vw,6.5rem) auto;
  gap:1.5rem;
  align-items:stretch
}

.howto-page .about-overview-grid .howto-card,
.howto-page .about-overview-grid .about-cooperation{
  padding:clamp(2rem,4vw,3.25rem)!important;
  border:1px solid #dbe2ef!important;
  background:#fff!important
}

.howto-page .about-overview-grid .howto-card_title{
  max-width:34rem;
  margin:0 0 1.25rem;
  font-size:clamp(2.25rem,3.7vw,3.6rem)!important;
  line-height:1.04!important;
  letter-spacing:-.025em
}

.howto-page .about-overview-grid .about-copy>p{
  max-width:36rem;
  margin:0;
  color:#4d5870;
  font-size:1.08rem!important;
  line-height:1.7!important
}

.howto-page .about-overview-grid .about-cooperation{
  background:#f3f6fb!important
}

.howto-page .about-overview-grid .about-cooperation-layout{
  justify-content:center!important
}

.howto-page .about-overview-grid .about-partner-logo img{
  width:min(100%,18rem)!important
}

.howto-page .about-overview-grid .department_description-text{
  font-size:.98rem!important;
  line-height:1.65!important
}

.howto-page .about-overview-grid .about-cooperation{
  border-color:#0a1f50!important;
  background:#0a1f50!important;
  color:#fff!important
}

.howto-page .about-overview-grid .about-cooperation-layout{
  gap:1.5rem!important;
  justify-content:center!important
}

.howto-page .about-overview-grid .about-partner-logo{
  box-sizing:border-box;
  width:100%;
  padding:1.35rem;
  background:#fff;
  color:#0a1f50
}

.howto-page .about-overview-grid .about-partner-logo .text-style-allcaps{
  margin-bottom:.8rem!important
}

.howto-page .about-overview-grid .about-partner-logo img{
  display:block;
  width:min(100%,17rem)!important
}

.howto-page .about-overview-grid .about-partner-content,
.howto-page .about-overview-grid .about-partner-content p{
  color:#fff!important
}

.howto-page .about-overview-grid .external-link_component{
  color:#ffd45b!important
}

.howto-page .about-overview-grid .external-link_component:hover{
  color:#fff!important
}

.howto-page .about-overview-grid .about-cooperation{
  border-color:#dbe2ef!important;
  background:#fff!important;
  color:#171b2c!important
}

.howto-page .about-overview-grid .about-partner-logo{
  width:100%;
  padding:0!important;
  background:transparent!important;
  color:#171b2c!important
}

.howto-page .about-overview-grid .about-partner-content,
.howto-page .about-overview-grid .about-partner-content p{
  color:#171b2c!important
}

.howto-page .about-overview-grid .external-link_component{
  color:#174daf!important
}

.howto-page .about-overview-grid .external-link_component:hover{
  color:#0a1f50!important
}

.howto-page .about-overview-grid .howto-card,
.howto-page .about-overview-grid .about-cooperation{
  background:#f2f5fa!important;
  border:0!important
}

.howto-page .about-overview-grid .about-copy,
.howto-page .about-overview-grid .about-cooperation-layout{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  height:100%
}

.about-card-icon{
  display:grid;
  width:5.25rem;
  height:5.25rem;
  flex:0 0 5.25rem;
  margin-bottom:1.5rem;
  place-items:center;
  background:#0a1f50;
  color:#fff
}

.about-card-icon svg{
  width:3.2rem;
  height:3.2rem;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round
}

.about-card-eyebrow{
  margin:0 0 1.4rem!important;
  color:#171b2c!important;
  font-size:.78rem!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase
}

.howto-page .about-overview-grid .howto-card_title,
.about-cooperation-title{
  max-width:30rem!important;
  margin:0 0 1.25rem!important;
  font-size:clamp(2.2rem,3.2vw,3.15rem)!important;
  line-height:1.05!important;
  letter-spacing:-.025em
}

.howto-page .about-overview-grid .about-copy>p:last-child{
  margin-top:0!important
}

.howto-page .about-overview-grid .about-partner-logo{
  margin-top:.25rem;
  padding-top:1.5rem!important;
  border-top:1px solid #cfd8e7
}

.howto-page .about-overview-grid .about-partner-logo .text-style-allcaps{
  display:none
}

.howto-page .about-overview-grid .about-partner-logo img{
  width:min(100%,16rem)!important
}

.howto-page .about-overview-grid .about-partner-content{
  margin-top:1rem
}

.howto-page .about-overview-grid .external-link_component{
  margin-top:.45rem
}

.howto-page .about-overview-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1.35rem!important
}

.howto-page .about-overview-grid .howto-card,
.howto-page .about-overview-grid .about-cooperation{
  box-sizing:border-box!important;
  min-width:0!important;
  padding:2.5rem!important
}

.howto-page .about-overview-grid .about-copy,
.howto-page .about-overview-grid .about-cooperation-layout{
  width:100%!important
}

.howto-page .about-overview-grid .about-card-icon{
  margin-bottom:1.55rem!important
}

.howto-page .about-overview-grid .about-card-eyebrow{
  min-height:1rem;
  margin-bottom:1.5rem!important
}

.howto-page .about-overview-grid .howto-card_title,
.howto-page .about-overview-grid .about-cooperation-title{
  width:100%;
  margin-bottom:1.2rem!important
}

.howto-page .about-overview-grid .department_description-text{
  max-width:36rem;
  margin:0!important;
  color:#4d5870!important;
  font-size:1.08rem!important;
  line-height:1.7!important
}

.howto-page .about-overview-grid .about-partner-logo{
  width:100%;
  margin-top:1.75rem!important
}

.howto-page .about-overview-grid .about-partner-content{
  width:100%;
  margin-top:1rem!important
}

@media(max-width:900px){
  .howto-page .about-overview-grid{
    grid-template-columns:1fr!important
  }

  .howto-page .about-overview-grid .howto-card,
  .howto-page .about-overview-grid .about-cooperation{
    padding:2rem!important
  }
}

@media(max-width:900px){
  .howto-page .about-overview-grid{
    grid-template-columns:1fr;
    margin-top:3rem
  }

  .howto-page .about-overview-grid .howto-card_title{
    font-size:clamp(2.15rem,7vw,3.2rem)!important
  }
}


/* About overview: compact, separated cards with matching content levels. */

.howto-page .about-overview-grid{
  width:min(66rem,calc(100% - 2rem))!important;
  gap:1.5rem!important;
  align-items:stretch!important
}

.howto-page .about-overview-grid .howto-card,
.howto-page .about-overview-grid .about-cooperation{
  padding:2rem 2.15rem!important;
  background:#fff!important;
  border:1px solid #dce3ee!important;
  box-shadow:0 12px 32px rgba(10,31,80,.07)!important
}

.howto-page .about-overview-grid .about-copy,
.howto-page .about-overview-grid .about-cooperation-layout{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:0!important;
  height:100%!important
}

.howto-page .about-overview-grid .about-card-icon{
  width:4.5rem!important;
  height:4.5rem!important;
  flex-basis:4.5rem!important;
  margin:0 0 1.2rem!important
}

.howto-page .about-overview-grid .about-card-icon svg{
  width:2.7rem!important;
  height:2.7rem!important
}

.howto-page .about-overview-grid .about-card-eyebrow{
  min-height:1rem!important;
  margin:0 0 1.1rem!important;
  font-size:.72rem!important;
  line-height:1.2!important
}

.howto-page .about-overview-grid .howto-card_title,
.howto-page .about-overview-grid .about-cooperation-title{
  margin:0 0 1.1rem!important;
  font-size:clamp(2rem,3vw,2.65rem)!important;
  line-height:1.08!important
}

.howto-page .about-overview-grid .about-copy>p:last-child,
.howto-page .about-overview-grid .department_description-text{
  margin:0!important;
  font-size:.96rem!important;
  line-height:1.6!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  font-weight:400!important
}

.howto-page .about-overview-grid .about-partner-logo{
  align-self:stretch;
  margin-top:1.5rem!important;
  padding-top:1.25rem!important
}

.howto-page .about-overview-grid .about-partner-content{
  margin-top:.75rem!important
}

@media(max-width:900px){
  .howto-page .about-overview-grid{
    width:min(40rem,calc(100% - 2rem))!important
  }

  .howto-page .about-overview-grid .howto-card,
  .howto-page .about-overview-grid .about-cooperation{
    padding:1.65rem!important
  }
}

body.eub-contact-page .site-footer{
  z-index:20!important;
  isolation:isolate!important
}


/* Team portraits */

.about-team-grid .team-profile img {
  width: 100%;
  aspect-ratio: 3 / 4;
  height: auto;
  object-fit: cover;
  object-position: center top;
}


/* About Us – align Partner section with the CTA block */

.howto-page .about-partners {
  width: min(78rem, 92vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
/* How to Erasmus – keep hero text fully visible */

body.howto-page .howto-main > .howto-intro > h1,
body.howto-page .howto-main > .howto-intro > p {
  opacity: 1 !important;
  transform: none !important;
}