@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');
@import url('/wp-content/themes/teba-child/assets/css/exchange_header.css');
:root {
  --color-primary: #ffc322;
  --color-text-dark: #212121;
  --color-text-black: #000000;
  --color-background-dark: #1a1919;
  --color-background-light: #ffffff;
  --color-background-alt: #fff9eb;
  --color-background-card: #fafafa;

  --font-main: 'DM Sans', sans-serif;
  --font-heading: 'Plus Jakarta Sans', sans-serif;
  --font-alt: 'Lato', sans-serif;
}

.page-template-swt h1{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-swt h2{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-swt h3{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-swt h4{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-swt h5{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-swt h6{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

.page-template-TrainingandInternship h1{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-TrainingandInternship h2{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-TrainingandInternship h3{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-TrainingandInternship h4{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-TrainingandInternship h5{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-TrainingandInternship h6{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}


.page-template-au_pair h1{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-au_pair h2{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-au_pair h3{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-au_pair h4{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-au_pair h5{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-au_pair h6{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}


.page-template-teacher h1{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-teacher h2{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-teacher h3{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-teacher h4{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-teacher h5{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}
.page-template-teacher h6{
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

p,a,span{
    font-family: "DM Sans", sans-serif !important;
}



.page-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  overflow: hidden;
}

.container {
  width: 100%;
  max-width: 1241px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

section {
  position: relative;
  padding: 80px 0;
}

h1, h2, h3 {
  font-family: var(--font-heading);
  font-weight: 700;
  color: var(--color-text-black);
  margin: 0;
}

p {
  margin: 0;
  line-height: 1.5;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.button-primary {
  display: inline-block;
  background-color: var(--color-primary);
  color: var(--color-text-dark);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 16px;
  text-decoration: none;
  padding: 10px 24px;
  border-radius: 8px;
  text-align: center;
  transition: background-color 0.3s ease;
}

.button-primary:hover {
  background-color: #e6b01f;
}

@media (max-width: 768px) {
  section {
    padding: 60px 0;
  }
}


.hero-section {
  padding-top: 86px;
  padding-bottom: 86px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.hero-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  max-width: 987px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.hero-content h1 {
  font-size: 32px;
  line-height: 1.25;
  max-width: 513px;
}
.hero-content .hero-description {
  font-size: 20px;
  line-height: 1.3;
  color: var(--color-text-dark);
}
.hero-content .button-primary {
  margin-top: 18px; /* 35672 - (35518 + 104) = 50px. 50-32=18 */
}

.hero-background-elements {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
  background: url('/wp-content/themes/teba-child/assets/images/swt_banner_bg.svg');
background-repeat: no-repeat;
background-position: center;
}
.hero-background-elements img {
  position: absolute;
}
.bg-img-1 { top: 15%; left: 10%; width: 58px; }
.bg-img-2 { bottom: 10%; right: 15%; width: 89px; }
.bg-img-3 { top: 15%; right: 18%; width: 89px; }
.bg-img-4 { bottom: 12%; left: 18%; width: 72px; transform: rotate(-18.72deg); }
.bg-svg-1 { top: 30%; left: 8%; width: 144px; }
.bg-svg-2 { bottom: 20%; left: 25%; width: 112px; }
.bg-svg-3 { bottom: 22%; right: 25%; width: 110px; }
.bg-svg-4 { top: 35%; right: 12%; width: 113px; }

@media (max-width: 992px) {
  .hero-background-elements {
    display: none;
  }
}
@media (max-width: 768px) {
  .hero-content h1 {
    font-size: 28px;
  }
  .hero-content .hero-description {
    font-size: 18px;
  }
}



.features-section {
  padding-top: 17px; /* 35833 - 35816 */
}
.features-header {
  text-align: center;
  margin-bottom: 90px;
}
.features-header h2 {
  font-size: 28px;
  line-height: 1.26;
  margin-bottom: 13px;
}
.features-header p {
  font-size: 20px;
  line-height: 1.3;
  color: var(--color-text-dark);
}
.features-list {
  display: flex;
  flex-direction: column;
  gap: 120px;
}
.feature-item {
  display: flex;
  align-items: center;
  gap: 60px;
}
.feature-item:nth-child(even) {
  flex-direction: row-reverse;
}
.feature-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.feature-text h3 {
  font-size: 24px;
  line-height: 1.25;
}
.feature-text p {
  font-size: 20px;
  line-height: 1.3;
  max-width: 627px;
  color: #212121;
}
.feature-image {
  flex: 1;
  max-width: 649px;
}
/* .feature-image img {
  border-radius: 8px;
  box-shadow: 3px 3px 15px 0px rgba(0, 0, 0, 0.15), -3px -3px 15px 0px rgba(0, 0, 0, 0.15);
} */

@media (max-width: 992px) {
  .feature-item,
  .feature-item:nth-child(even) {
    flex-direction: column;
    text-align: center;
  }
  .feature-text {
    align-items: center;
  }
  .feature-text p {
    text-align: center;
  }
}
@media (max-width: 768px) {
  .features-header {
    margin-bottom: 60px;
  }
  .features-list {
    gap: 80px;
  }
  .feature-text h3 {
    font-size: 22px;
  }
  .feature-text p {
    font-size: 18px;
  }
}



.jia-section {
  background-color: var(--color-background-dark);
  color: var(--color-background-light);
  padding: 54px 0;
}
.jia-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 170px;
}
.jia-logo-container {
  position: relative;
  width: 245px; /* 153 + 92 */
  height: 226px;
  flex-shrink: 0;
}
.jia-bg-svg {
  position: absolute;
  top: 0;
  left: 0;
  /* width: 153px;
  height: 226px; */
}
.jia-logo {
position: absolute;
    width: 70%;
    height: 90px;
    top: 50%;
    left: 70%;
    transform: translate(10%, -50%);
}
.jia-text {
  max-width: 733px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.jia-text h2 {
  color: var(--color-background-light);
  font-size: 32px;
  line-height: 1.25;
}
.jia-text p {
  font-size: 20px;
  line-height: 1.3;
}

@media (max-width: 992px) {
  .jia-container {
    flex-direction: column;
    text-align: center;
    gap: 40px;
  }
  .jia-logo-container {
    width: 158px;
    height: 102px;
  }
  .jia-bg-svg {
      display: none;
  }
  .jia-logo {
      position: static;
      transform: none;
  }
}
@media (max-width: 768px) {
  .jia-text h2 {
    font-size: 28px;
  }
  .jia-text p {
    font-size: 18px;
  }
}



.outcome-section {
  padding: 100px 0;
}

.outcome-container {
  position: relative;
  border-radius: 8px;
  padding: 59px 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 24px;
  max-width: 1140px;
  z-index: 2;
  background-color: var(--color-background-alt);
      margin: 0px auto;
}
.outcome-container h3 {
  font-size: 24px;
  line-height: 1.25;
}
.outcome-container p {
  font-size: 20px;
  line-height: 1.3;
      color: #222;
    font-weight: 400;
}
.outcome-bg-elements {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
    pointer-events: none;
    background: url("/wp-content/themes/teba-child/assets/images/outcomes_bg.svg");
    background-repeat: no-repeat;
    background-position: center;
}


.poly {
    position: absolute;
}
.poly-1 { width: 18px; height: 18px; background-color: #8896ff; top: 15%; right: 10%; }
.poly-2 { width: 28px; height: 28px; background-color: #8896ff; bottom: 10%; left: 25%; transform: rotate(19deg); }
.poly-3 { width: 26px; height: 26px; background-color: #ffc1b2; top: 20%; right: 25%; transform: rotate(20deg); }
.poly-4 { width: 26px; height: 26px; background-color: #ffc1b2; bottom: 20%; left: 10%; transform: rotate(20deg); }
.poly-5 { width: 20px; height: 20px; background-color: #92edff; top: 25%; left: 15%; }
.poly-6 { width: 20px; height: 20px; background-color: #92edff; bottom: 15%; right: 15%; transform: rotate(90deg); }

@media (max-width: 768px) {
  .outcome-container h3 {
    font-size: 22px;
  }
  .outcome-container p {
    font-size: 18px;
  }
  .outcome-bg-elements {
      display: none;
  }
}



.programs-section {
  padding-top: 0px; /* 39244 - (38832 + 250 + 57) */
  padding-bottom: 50px;
}
.programs-title {
  font-size: 24px;
  line-height: 1.25;
  margin-bottom: 70px;
  text-align: left;
}
.programs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 70px;
  justify-content: center;
}
.program-card {
  background-color: var(--color-background-card);
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 0px;
  text-align: center;
  max-width: 320px;
  height: 268px;
  box-sizing: border-box;
}
.program-illustration {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.program-illustration img {
    max-height: 180px;
}
.program-name {
  font-family: var(--font-main);
  font-weight: 500;
  font-size: 20px;
  line-height: 1.3;
  color: var(--color-text-dark);
}

@media (max-width: 992px) {
  .programs-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
  .program-card {
      margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .programs-title {
      text-align: center;
      margin-bottom: 40px;
  }
  .programs-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}


.aupair_feature{
    display: flex;
    align-items: flex-start;
    gap: 60px;
}
.au_fe_left{
      width: 420px;
}
.au_fe_right{
    width: 55%;
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.aupair_feature h2 {
    font-size: 24px;
    line-height: 1.25;
}
.aupair_feature p {
    font-size: 20px;
    line-height: 1.3;
    max-width: 627px;
    color: #212121;
}

.footer-section {
    background-color: var(--color-background-dark);
    color: var(--color-background-light);
    padding: 40px 0;
    text-align: center;
}
.footer-section p {
    font-family: var(--font-alt);
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 8px;
}
.footer-section p:last-child {
    margin-bottom: 0;
}