*, *::before, *::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  scrollbar-gutter: stable;
  min-height: 100vh;
  font-family: 'Public Sans', sans-serif;
}

.topstrip {
  height: 4px;
  background: linear-gradient(90deg, #BFAE4F 0%, #C3D7A4 60%, #BFAE4F 100%);
  width: 100%;
}

.utilitybar {
  background: #F9F9F7;
  border-bottom: 1px solid #C3D7A4;
  padding: 8px 0;
}

.utilitypod {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.logocell {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.logoplate {
  width: 68px;
  height: 68px;
  background: #ffffff;
  border: 2px solid #BFAE4F;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07), 0 7px 28px 0 rgba(191,174,79,0.11);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0px;
  flex-shrink: 0;
}

.logoplate img {
  width: 56px;
  height: 56px;
  object-fit: contain;
  object-position: center;
  display: block;
}

.brandname {
  font-family: 'Nunito', sans-serif;
  font-size: 26px;
  font-weight: 700;
  color: #2a2a18;
  letter-spacing: 0.01em;
  line-height: 1.15;
}

.brandtag {
  font-size: 14px;
  color: #5a5a3a;
  letter-spacing: 0.02em;
  line-height: 1.4;
  font-family: 'Public Sans', sans-serif;
}

.utilitycontact {
  display: flex;
  align-items: center;
  gap: 32px;
}

.contactitem {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3a3a22;
  letter-spacing: 0.01em;
  line-height: 1.4;
  font-family: 'Public Sans', sans-serif;
  text-decoration: none;
  transition: color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.contactitem:hover {
  color: #BFAE4F;
}

.contactitem i {
  color: #BFAE4F;
  font-size: 14px;
  flex-shrink: 0;
}

.navband {
  background: #2a2a18;
  padding: 0;
}

.navpod {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: stretch;
  gap: 0;
}

.navlink {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 24px;
  font-family: 'Public Sans', sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #F9F9F7;
  letter-spacing: 0.02em;
  line-height: 1.4;
  text-decoration: none;
  border-bottom: 3px solid transparent;
  transition: color 0.18s cubic-bezier(0.4,0,0.2,1), border-color 0.18s cubic-bezier(0.4,0,0.2,1), background-color 0.24s cubic-bezier(0.0,0,0.2,1);
  white-space: nowrap;
}

.navlink i {
  font-size: 14px;
  color: #C3D7A4;
  flex-shrink: 0;
  transition: color 0.18s cubic-bezier(0.4,0,0.2,1);
}

.navlink:hover {
  color: #BFAE4F;
  border-bottom-color: #BFAE4F;
  background-color: rgba(191,174,79,0.08);
}

.navlink:hover i {
  color: #BFAE4F;
}

.navlink:focus {
  outline: none;
  filter: invert(1);
}

.navlink.active {
  color: #BFAE4F;
  border-bottom-color: #BFAE4F;
}

.navlink.active i {
  color: #BFAE4F;
}

header {
  position: relative;
}

.footerwave {
  width: 100%;
  overflow: hidden;
  line-height: 0;
  background: #F9F9F7;
}

.footerwave svg {
  display: block;
  width: 100%;
  height: 48px;
}

.footermain {
  background: #2a2a18;
  padding: 64px 0 0 0;
}

.footerpod {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
}

.footergrid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 64px;
  padding-bottom: 64px;
}

.footercoltitle {
  font-family: 'Nunito', sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #BFAE4F;
  letter-spacing: 0.02em;
  line-height: 1.4;
  margin: 0 0 16px 0;
  text-transform: uppercase;
}

.footernav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.footernav li a {
  font-family: 'Public Sans', sans-serif;
  font-size: 16px;
  color: #d4d4b8;
  text-decoration: none;
  letter-spacing: 0.01em;
  line-height: 1.65;
  transition: color 0.2s cubic-bezier(0.4,0,0.2,1);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.footernav li a i {
  font-size: 12px;
  color: #C3D7A4;
  transition: color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.footernav li a:hover {
  color: #BFAE4F;
}

.footernav li a:hover i {
  color: #BFAE4F;
}

.footernav li a:focus {
  outline: none;
  filter: invert(1);
}

.trustblock {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.trustitem {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.trusticon {
  width: 36px;
  height: 36px;
  background: rgba(191,174,79,0.15);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.trusticon i {
  font-size: 16px;
  color: #BFAE4F;
}

.trusttext {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #c0c0a0;
  line-height: 1.65;
  letter-spacing: 0.01em;
}

.trustlabel {
  font-family: 'Nunito', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #d4d4b8;
  letter-spacing: 0.02em;
  line-height: 1.4;
  display: block;
  margin-bottom: 4px;
}

.footerdividerr {
  border: none;
  border-top: 1px solid rgba(195,215,164,0.18);
  margin: 0;
}

.footerbottom {
  background: #1e1e10;
  padding: 32px 0;
}

.footerbottompod {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  flex-wrap: wrap;
}

.footerlogocell {
  display: flex;
  align-items: center;
  gap: 16px;
}

.footerlogoplate {
  width: 60px;
  height: 60px;
  background: #ffffff;
  border: 2px solid #BFAE4F;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07), 0 7px 28px 0 rgba(191,174,79,0.11);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0px;
  flex-shrink: 0;
}

.footerlogoplate img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  object-position: center;
  display: block;
}

.copyright {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #888870;
  letter-spacing: 0.01em;
  line-height: 1.65;
}

.footeraddress {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #888870;
  letter-spacing: 0.01em;
  line-height: 1.65;
  font-style: normal;
}

.consentbar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #2a2a18;
  border-top: 3px solid #BFAE4F;
  z-index: 1200;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
  transform: translateY(100%);
  transition: transform 0.26s cubic-bezier(0.4,0,0.2,1);
}

.consentbar.visible {
  transform: translateY(0);
}

.consentmain {
  max-width: 1320px;
  margin: 0 auto;
  padding: 24px 32px;
  display: flex;
  align-items: flex-start;
  gap: 32px;
  flex-wrap: wrap;
}

.consenticon {
  width: 44px;
  height: 44px;
  background: rgba(191,174,79,0.15);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.consenticon i {
  font-size: 20px;
  color: #BFAE4F;
}

.consentbody {
  flex: 1;
  min-width: 280px;
}

.consenttext {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #d4d4b8;
  line-height: 1.65;
  letter-spacing: 0.01em;
  margin: 0 0 8px 0;
}

.consentlink {
  color: #BFAE4F;
  text-decoration: underline;
  transition: color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.consentlink:hover {
  color: #C3D7A4;
}

.consentlink:focus {
  outline: none;
  filter: invert(1);
}

.consentactions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

.consentbtn {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.4;
  padding: 12px 24px;
  border-radius: 6px;
  cursor: pointer;
  border: 2px solid #BFAE4F;
  background: transparent;
  color: #BFAE4F;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), color 0.22s cubic-bezier(0.4,0,0.2,1);
  white-space: nowrap;
  min-height: 44px;
}

.consentbtn:hover {
  background-color: #BFAE4F;
  color: #2a2a18;
}

.consentbtn:focus {
  outline: none;
  filter: invert(1);
}

.consentbtnaccept {
  background: #BFAE4F;
  color: #2a2a18;
  border-color: #BFAE4F;
}

.consentbtnaccept:hover {
  background: #d4c45a;
  border-color: #d4c45a;
  color: #2a2a18;
}

.consentsettingspanel {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px 24px 32px;
  border-top: 1px solid rgba(195,215,164,0.18);
}

.consenttogglerow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(195,215,164,0.1);
  flex-wrap: wrap;
}

.consenttogglerow:last-child {
  border-bottom: none;
}

.togglelabel {
  font-family: 'Nunito', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #d4d4b8;
  letter-spacing: 0.01em;
  line-height: 1.4;
}

.toggledesc {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #888870;
  letter-spacing: 0.01em;
  line-height: 1.65;
  margin-top: 4px;
}

.toggleswitch {
  position: relative;
  width: 44px;
  height: 24px;
  flex-shrink: 0;
}

.toggleswitch input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.toggleslider {
  position: absolute;
  inset: 0;
  background: #444430;
  border-radius: 18px;
  cursor: pointer;
  transition: background-color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.toggleslider::after {
  content: '';
  position: absolute;
  width: 18px;
  height: 18px;
  left: 3px;
  top: 3px;
  background: #888870;
  border-radius: 50%;
  transition: transform 0.2s cubic-bezier(0.4,0,0.2,1), background-color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.toggleswitch input:checked + .toggleslider {
  background: rgba(191,174,79,0.3);
}

.toggleswitch input:checked + .toggleslider::after {
  transform: translateX(20px);
  background: #BFAE4F;
}

.toggleswitch input:focus + .toggleslider {
  outline: 2px solid #BFAE4F;
  outline-offset: 2px;
}

.alwayson {
  font-family: 'Public Sans', sans-serif;
  font-size: 12px;
  color: #C3D7A4;
  letter-spacing: 0.02em;
  line-height: 1.4;
  white-space: nowrap;
}

.datasalerow {
  padding: 16px 0 0 0;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.datasalecheckbox {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex-shrink: 0;
  accent-color: #BFAE4F;
  cursor: pointer;
}

.datasalelabel {
  font-family: 'Public Sans', sans-serif;
  font-size: 14px;
  color: #d4d4b8;
  letter-spacing: 0.01em;
  line-height: 1.65;
  cursor: pointer;
}

.preferencetab {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%) translateX(-100%);
  z-index: 1100;
  background: #BFAE4F;
  color: #2a2a18;
  padding: 12px 8px;
  border-radius: 0px 6px 6px 0px;
  cursor: pointer;
  font-family: 'Nunito', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.4;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  border: none;
  transition: transform 0.28s cubic-bezier(0.4,0,0.2,1), background-color 0.22s cubic-bezier(0.4,0,0.2,1);
  min-height: 44px;
}

.preferencetab.shown {
  transform: translateY(-50%) translateX(0);
}

.preferencetab:hover {
  background-color: #d4c45a;
}

.preferencetab:focus {
  outline: none;
  filter: invert(1);
}

@media (max-width: 1024px) {
  .utilitypod {
    padding: 0 16px;
    flex-wrap: wrap;
    gap: 8px;
  }
  .utilitycontact {
    gap: 16px;
  }
  .navpod {
    padding: 0 16px;
    flex-wrap: wrap;
  }
  .navlink {
    padding: 12px 16px;
    font-size: 14px;
  }
  .footergrid {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
  .footerpod {
    padding: 0 16px;
  }
  .footerbottompod {
    padding: 0 16px;
  }
  .consentmain {
    padding: 16px;
  }
  .consentsettingspanel {
    padding: 0 16px 16px 16px;
  }
}

@media (max-width: 640px) {
  .utilitycontact {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .footergrid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .footerbottompod {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .consentactions {
    width: 100%;
  }
  .consentbtn {
    flex: 1;
    text-align: center;
  }
  .brandname {
    font-size: 20px;
  }
}.policy-body {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    color: #2a2a2a;
}

.policy-body p {
    font-size: 16px;
    line-height: 1.85;
    letter-spacing: 0.01em;
    margin-bottom: 16px;
    color: #2a2a2a;
}

.policy-body ul,
.policy-body ol {
    font-size: 16px;
    line-height: 1.85;
    letter-spacing: 0.01em;
    margin-bottom: 16px;
    padding-left: 32px;
    color: #2a2a2a;
}

.policy-body li {
    margin-bottom: 8px;
    line-height: 1.85;
}

.policy-body ul li {
    list-style-type: disc;
}

.policy-body ol li {
    list-style-type: decimal;
}

.policy-body ul ul,
.policy-body ol ol,
.policy-body ul ol,
.policy-body ol ul {
    margin-top: 8px;
    margin-bottom: 8px;
}

.policy-body strong,
.policy-body b {
    font-weight: 700;
    color: #1e1e1e;
    letter-spacing: 0.01em;
}

.policy-body em,
.policy-body i {
    font-style: italic;
    color: #2a2a2a;
}

.policy-body a {
    color: #8a7a20;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    transition: color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.policy-body a:hover {
    color: #BFAE4F;
    text-decoration-thickness: 2px;
}

.policy-body a:visited {
    color: #7a6e30;
}

.policy-body hr {
    border: none;
    border-top: 1px solid #C3D7A4;
    margin: 32px 0;
    opacity: 0.7;
}

.policy-body table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    line-height: 1.65;
    letter-spacing: 0.01em;
    margin-bottom: 32px;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
}

.policy-body thead {
    background-color: #BFAE4F;
    color: #1e1e1e;
}

.policy-body thead th {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 16px;
    text-align: left;
    color: #1e1e1e;
    line-height: 1.4;
}

.policy-body tbody {
    background-color: #F9F9F7;
}

.policy-body tbody tr {
    transition: background-color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.policy-body tbody tr:nth-child(even) {
    background-color: #eef4e6;
}

.policy-body tbody tr:hover {
    background-color: #ddeecb;
}

.policy-body td {
    padding: 16px;
    font-size: 14px;
    line-height: 1.65;
    color: #2a2a2a;
    vertical-align: top;
    border-bottom: 1px solid #C3D7A4;
}

.policy-body tbody tr:last-child td {
    border-bottom: none;
}

@media (max-width: 640px) {
    .policy-body {
        padding: 32px 16px;
    }

    .policy-body table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .policy-body thead th,
    .policy-body td {
        padding: 8px 16px;
    }

    .policy-body ul,
    .policy-body ol {
        padding-left: 16px;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    .policy-body {
        padding: 64px 32px;
    }
}
.learningprogramdetail {
  max-width: 1320px;
  margin: 0 auto;
  overflow: hidden;
}

.learningprogramdetail .titleblock {
  padding: 64px 64px 64px 64px;
  background: linear-gradient(160deg, #C3D7A4 0%, #F9F9F7 60%, #BFAE4F22 100%);
  position: relative;
  text-align: center;
}

.learningprogramdetail .titleblock .shapes {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.learningprogramdetail .titleblock .shape1 {
  position: absolute;
  top: -40px;
  left: -40px;
  width: 220px;
  height: 220px;
  border-radius: 32px;
  background: #BFAE4F;
  opacity: 0.07;
  transform: rotate(18deg);
}

.learningprogramdetail .titleblock .shape2 {
  position: absolute;
  bottom: -30px;
  right: -30px;
  width: 180px;
  height: 180px;
  border-radius: 18px;
  background: #C3D7A4;
  opacity: 0.13;
  transform: rotate(-12deg);
}

.learningprogramdetail .titleblock .shape3 {
  position: absolute;
  top: 30px;
  right: 80px;
  width: 80px;
  height: 80px;
  border-radius: 32px;
  background: #BFAE4F;
  opacity: 0.09;
  transform: rotate(30deg);
}

.learningprogramdetail .titleblock .tbadge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #BFAE4F22;
  border: 1px solid #BFAE4F;
  border-radius: 6px;
  padding: 4px 16px;
  font-size: 14px;
  font-weight: 700;
  color: #5a4e10;
  letter-spacing: 0.02em;
  margin-bottom: 32px;
  text-transform: uppercase;
}

.learningprogramdetail .titleblock .heading1 {
  font-size: 50px;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1e1b06;
  font-weight: 900;
  margin-bottom: 32px;
  position: relative;
  display: inline-block;
}

.learningprogramdetail .titleblock .heading1 .underlineword {
  position: relative;
  display: inline-block;
}

.learningprogramdetail .titleblock .heading1 .underlineword::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  border-radius: 0px;
  background: #BFAE4F;
}

.learningprogramdetail .titleblock .metarow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
  margin-bottom: 32px;
}

.learningprogramdetail .titleblock .metaitem {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3a3520;
  letter-spacing: 0.01em;
}

.learningprogramdetail .titleblock .metaitem i {
  color: #BFAE4F;
  font-size: 14px;
}

.learningprogramdetail .titleblock .pointlist {
  display: flex;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0 0 32px 0;
}

.learningprogramdetail .titleblock .pointlist li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  color: #2a2510;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.learningprogramdetail .titleblock .pointlist li i {
  color: #BFAE4F;
}

.learningprogramdetail .titleblock .heroimage {
  width: 100%;
  max-width: 680px;
  height: 320px;
  border-radius: 18px;
  overflow: hidden;
  margin: 0 auto;
  opacity: 0.55;
}

.learningprogramdetail .titleblock .heroimage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.learningprogramdetail .divider-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 0;
}

.learningprogramdetail .divider-dots span {
  width: 5px;
  height: 5px;
  border-radius: 32px;
  background: #BFAE4F;
  opacity: 0.35;
  display: inline-block;
}

.learningprogramdetail .bodygrid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 64px;
  padding: 64px 64px 32px 64px;
  background: #F9F9F7;
  align-items: start;
}

.learningprogramdetail .bodygrid .descriptionblock {
  min-width: 0;
}

.learningprogramdetail .bodygrid .descriptionblock .sectionlabel {
  font-size: 14px;
  font-weight: 700;
  color: #7a6d20;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block;
}

.learningprogramdetail .bodygrid .descriptionblock .heading2 {
  font-size: 26px;
  line-height: 1.4;
  letter-spacing: 0.01em;
  color: #1e1b06;
  font-weight: 800;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext {
  font-size: 16px;
  line-height: 1.65;
  color: #2e2a10;
  letter-spacing: 0.01em;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext p {
  margin-bottom: 16px;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext h2,
.learningprogramdetail .bodygrid .descriptionblock .bodytext h3 {
  font-size: 20px;
  line-height: 1.4;
  color: #1e1b06;
  font-weight: 700;
  margin-top: 32px;
  margin-bottom: 8px;
  letter-spacing: 0.01em;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext ul {
  padding-left: 16px;
  margin-bottom: 16px;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext li {
  margin-bottom: 8px;
  color: #2e2a10;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext dl {
  margin-bottom: 16px;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext dt {
  font-weight: 700;
  color: #1e1b06;
  margin-top: 8px;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext dd {
  margin-left: 16px;
  color: #2e2a10;
}

.learningprogramdetail .bodygrid .descriptionblock .bodytext em {
  color: #7a6d20;
  font-style: italic;
}

.learningprogramdetail .bodygrid .sidebar {
  min-width: 0;
}

.learningprogramdetail .bodygrid .sidebar .pricecard {
  background: #fff;
  border-radius: 18px;
  padding: 32px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  border: 1.5px solid #C3D7A4;
  margin-bottom: 32px;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .pricelabel {
  font-size: 14px;
  font-weight: 700;
  color: #7a6d20;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin-bottom: 8px;
  display: block;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .pricevalue {
  font-size: 50px;
  font-weight: 900;
  color: #1e1b06;
  line-height: 1.15;
  letter-spacing: 0.01em;
  margin-bottom: 8px;
  display: block;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .pricedesc {
  font-size: 14px;
  color: #5a5230;
  line-height: 1.65;
  margin-bottom: 16px;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .pricenote {
  font-size: 14px;
  color: #7a6d20;
  font-style: italic;
  margin-bottom: 16px;
  display: block;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .seatsrow {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3a3520;
  margin-bottom: 16px;
  font-weight: 600;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .seatsrow i {
  color: #BFAE4F;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .enrollbtn {
  display: block;
  width: 100%;
  background: #BFAE4F;
  color: #1e1b06;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  border: none !important;
  border-radius: 6px;
  padding: 16px 32px;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), box-shadow 0.25s cubic-bezier(0.4,0,0.2,1);
  position: relative;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .enrollbtn::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 4px;
  border: 2px solid transparent;
  transition: border-color 0.22s cubic-bezier(0.4,0,0.2,1);
  pointer-events: none;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .enrollbtn:hover {
  background: #a8973e;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
}

.learningprogramdetail .bodygrid .sidebar .pricecard .enrollbtn:hover::after {
  border-color: #1e1b0640;
}

.learningprogramdetail .bodygrid .sidebar .pricecard .enrollbtn:focus {
  outline: 3px solid #BFAE4F;
  outline-offset: 2px;
}

.learningprogramdetail .bodygrid .sidebar .infocard {
  background: #C3D7A422;
  border-radius: 18px;
  padding: 32px;
  border: 1.5px solid #C3D7A4;
}

.learningprogramdetail .bodygrid .sidebar .infocard .infolabel {
  font-size: 14px;
  font-weight: 700;
  color: #4a6030;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block;
}

.learningprogramdetail .bodygrid .sidebar .infocard .inforow {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 14px;
  color: #2e2a10;
  margin-bottom: 8px;
  line-height: 1.65;
}

.learningprogramdetail .bodygrid .sidebar .infocard .inforow i {
  color: #BFAE4F;
  margin-top: 2px;
  flex-shrink: 0;
}

.learningprogramdetail .divider-line {
  border: none;
  border-top: 1.5px dotted #BFAE4F55;
  margin: 0 64px;
}

.learningprogramdetail .programblock {
  padding: 64px 64px 64px 64px;
  background: #fff;
  position: relative;
}

.learningprogramdetail .programblock .diaglines {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 160px;
  height: 160px;
  pointer-events: none;
  overflow: hidden;
}

.learningprogramdetail .programblock .diaglines svg {
  width: 100%;
  height: 100%;
  opacity: 0.08;
}

.learningprogramdetail .programblock .heading3 {
  font-size: 26px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  color: #1e1b06;
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.learningprogramdetail .programblock .sublabel {
  font-size: 14px;
  color: #7a6d20;
  letter-spacing: 0.01em;
  margin-bottom: 32px;
  display: block;
}

.learningprogramdetail .programblock .programtext {
  font-size: 16px;
  line-height: 1.65;
  color: #2e2a10;
  letter-spacing: 0.01em;
  max-width: 860px;
}

.learningprogramdetail .programblock .programtext p {
  margin-bottom: 16px;
}

.learningprogramdetail .programblock .programtext h2 {
  font-size: 20px;
  font-weight: 700;
  color: #1e1b06;
  margin-top: 32px;
  margin-bottom: 8px;
  letter-spacing: 0.01em;
}

.learningprogramdetail .programblock .programtext h3 {
  font-size: 16px;
  font-weight: 700;
  color: #4a3e10;
  margin-top: 16px;
  margin-bottom: 4px;
  letter-spacing: 0.01em;
}

.learningprogramdetail .programblock .programtext ul {
  padding-left: 16px;
  margin-bottom: 16px;
}

.learningprogramdetail .programblock .programtext li {
  margin-bottom: 8px;
  color: #2e2a10;
}

.learningprogramdetail .programblock .programtext em {
  color: #7a6d20;
}

.learningprogramdetail .programblock .programtext dl {
  margin-bottom: 16px;
}

.learningprogramdetail .programblock .programtext dt {
  font-weight: 700;
  color: #1e1b06;
  margin-top: 8px;
}

.learningprogramdetail .programblock .programtext dd {
  margin-left: 16px;
  color: #2e2a10;
}

.learningprogramdetail .pollblock {
  padding: 64px 64px 64px 64px;
  background: linear-gradient(135deg, #C3D7A4 0%, #F9F9F7 100%);
  position: relative;
}

.learningprogramdetail .pollblock .pollwrap {
  max-width: 640px;
  margin: 0 auto;
}

.learningprogramdetail .pollblock .pollheading {
  font-size: 20px;
  font-weight: 800;
  color: #1e1b06;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.learningprogramdetail .pollblock .pollsub {
  font-size: 14px;
  color: #4a6030;
  margin-bottom: 32px;
  display: block;
}

.learningprogramdetail .pollblock .polloption {
  display: block;
  margin-bottom: 16px;
}

.learningprogramdetail .pollblock .polloption input[type="radio"] {
  display: none;
}

.learningprogramdetail .pollblock .polloption label {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 32px;
  border-radius: 6px;
  border: 2px solid #C3D7A4;
  background: #fff;
  font-size: 16px;
  color: #2e2a10;
  cursor: pointer;
  transition: border-color 0.24s cubic-bezier(0.4,0,0.2,1), background-color 0.24s cubic-bezier(0.4,0,0.2,1);
  letter-spacing: 0.01em;
  font-weight: 500;
}

.learningprogramdetail .pollblock .polloption label:hover {
  border-color: #BFAE4F;
  background: #BFAE4F11;
}

.learningprogramdetail .pollblock .polloption label .radiomark {
  width: 20px;
  height: 20px;
  border-radius: 32px;
  border: 2px solid #C3D7A4;
  background: #F9F9F7;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s cubic-bezier(0.4,0,0.2,1), background-color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.learningprogramdetail .pollblock .polloption label .radiomark::after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 32px;
  background: transparent;
  transition: background-color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.learningprogramdetail .pollblock .polloption input[type="radio"]:checked + label {
  border-color: #BFAE4F;
  background: #BFAE4F1A;
  font-weight: 700;
  color: #1e1b06;
}

.learningprogramdetail .pollblock .polloption input[type="radio"]:checked + label .radiomark {
  border-color: #BFAE4F;
  background: #BFAE4F;
}

.learningprogramdetail .pollblock .polloption input[type="radio"]:checked + label .radiomark::after {
  background: #fff;
}

.learningprogramdetail .pollblock .pollsubmit {
  margin-top: 32px;
  background: transparent;
  border: 2px solid #BFAE4F;
  border-radius: 6px;
  padding: 16px 32px;
  font-size: 16px;
  font-weight: 700;
  color: #1e1b06;
  cursor: pointer;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  transition: background-color 0.28s cubic-bezier(0.0,0,0.2,1), color 0.28s cubic-bezier(0.0,0,0.2,1);
  position: relative;
}

.learningprogramdetail .pollblock .pollsubmit::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 4px;
  border: 2px solid transparent;
  transition: border-color 0.24s cubic-bezier(0.4,0,0.2,1);
  pointer-events: none;
}

.learningprogramdetail .pollblock .pollsubmit:hover {
  background: #BFAE4F;
  color: #1e1b06;
}

.learningprogramdetail .pollblock .pollsubmit:hover::after {
  border-color: #1e1b0630;
}

.learningprogramdetail .pollblock .pollsubmit:focus {
  outline: 3px solid #BFAE4F;
  outline-offset: 2px;
}

.learningprogramdetail .accentblock {
  background: #BFAE4F14;
  border-radius: 6px;
  padding: 16px 32px;
  margin-bottom: 32px;
  display: inline-block;
}

.learningprogramdetail .accentblock .accenttext {
  font-size: 16px;
  color: #3a3010;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.learningprogramdetail .wordreveal {
  display: inline;
}

.learningprogramdetail .wordreveal .word {
  display: inline-block;
  opacity: 0;
  transform: translateY(-18px);
  animation: dropword 0.5s cubic-bezier(0.4,0,0.2,1) forwards;
}

.learningprogramdetail .wordreveal .word:nth-child(1) { animation-delay: 0.05s; }
.learningprogramdetail .wordreveal .word:nth-child(2) { animation-delay: 0.14s; }
.learningprogramdetail .wordreveal .word:nth-child(3) { animation-delay: 0.23s; }
.learningprogramdetail .wordreveal .word:nth-child(4) { animation-delay: 0.32s; }
.learningprogramdetail .wordreveal .word:nth-child(5) { animation-delay: 0.41s; }
.learningprogramdetail .wordreveal .word:nth-child(6) { animation-delay: 0.50s; }
.learningprogramdetail .wordreveal .word:nth-child(7) { animation-delay: 0.59s; }
.learningprogramdetail .wordreveal .word:nth-child(8) { animation-delay: 0.68s; }

@keyframes dropword {
  0% { opacity: 0; transform: translateY(-18px); }
  100% { opacity: 1; transform: translateY(0); }
}

.learningprogramdetail .dropload {
  opacity: 0;
  transform: translateY(-24px);
  animation: dropin 0.5s cubic-bezier(0.4,0,0.2,1) forwards;
}

.learningprogramdetail .dropload.d1 { animation-delay: 0.1s; }
.learningprogramdetail .dropload.d2 { animation-delay: 0.22s; }
.learningprogramdetail .dropload.d3 { animation-delay: 0.34s; }
.learningprogramdetail .dropload.d4 { animation-delay: 0.46s; }

@keyframes dropin {
  0% { opacity: 0; transform: translateY(-24px); }
  100% { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1024px) {
  .learningprogramdetail .titleblock {
    padding: 64px 32px;
  }
  .learningprogramdetail .bodygrid {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 32px 32px;
  }
  .learningprogramdetail .programblock {
    padding: 64px 32px;
  }
  .learningprogramdetail .pollblock {
    padding: 64px 32px;
  }
  .learningprogramdetail .divider-line {
    margin: 0 32px;
  }
}

@media (max-width: 640px) {
  .learningprogramdetail .titleblock {
    padding: 32px 16px;
  }
  .learningprogramdetail .titleblock .heading1 {
    font-size: 26px;
  }
  .learningprogramdetail .titleblock .metarow {
    gap: 16px;
  }
  .learningprogramdetail .titleblock .pointlist {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 0 8px;
  }
  .learningprogramdetail .titleblock .heroimage {
    height: 180px;
  }
  .learningprogramdetail .bodygrid {
    padding: 32px 16px;
    gap: 32px;
  }
  .learningprogramdetail .bodygrid .sidebar .pricecard {
    padding: 16px;
  }
  .learningprogramdetail .programblock {
    padding: 32px 16px;
  }
  .learningprogramdetail .pollblock {
    padding: 32px 16px;
  }
  .learningprogramdetail .divider-line {
    margin: 0 16px;
  }
  .learningprogramdetail .pollblock .polloption label {
    padding: 16px;
    font-size: 14px;
  }
}

.interview {
  max-width: 100%;
  overflow-x: hidden;
}

.interview .pagecontainer {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px;
}

.interview .schema-data {
  display: none;
}


.interview .circle-decor {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}


.interview .titleblock {
  position: relative;
  background: #F9F9F7;
  padding-top: 32px;
  padding-bottom: 64px;
  overflow: hidden;
}

.interview .titleblock .circle-decor.c1 {
  width: 340px;
  height: 340px;
  border: 1px solid rgba(191,174,79,0.09);
  top: -80px;
  right: -60px;
}

.interview .titleblock .circle-decor.c2 {
  width: 180px;
  height: 180px;
  border: 1px solid rgba(195,215,164,0.12);
  bottom: 40px;
  left: 60px;
}

.interview .frameline {
  position: absolute;
  pointer-events: none;
}

.interview .frameline.top {
  top: 24px;
  left: 32px;
  right: 32px;
  height: 1px;
  background: rgba(191,174,79,0.25);
}

.interview .frameline.bottom {
  bottom: 32px;
  left: 32px;
  right: 32px;
  height: 1px;
  background: rgba(191,174,79,0.25);
}

.interview .frameline.leftside {
  top: 24px;
  bottom: 32px;
  left: 32px;
  width: 1px;
  background: rgba(191,174,79,0.25);
}

.interview .frameline.rightside {
  top: 24px;
  bottom: 32px;
  right: 32px;
  width: 1px;
  background: rgba(191,174,79,0.25);
}

.interview .titleinner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.interview .titletextarea {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 720px;
}

.interview .titlelabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
  line-height: 1.4;
}

.interview .titleheading {
  font-size: 66px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1a2a1a;
  margin: 0;
  animation: charreveal 0.5s cubic-bezier(0.4,0,0.2,1) both;
}

@keyframes charreveal {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.interview .titledesc {
  font-size: 20px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #2e3a2e;
  margin: 0;
  max-width: 560px;
}

.interview .titleactions {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}

.interview .btnprimary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  background: #BFAE4F;
  color: #1a2a1a;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border-radius: 6px;
  border: 2px solid #BFAE4F;
  text-decoration: none;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), color 0.22s cubic-bezier(0.4,0,0.2,1), box-shadow 0.22s cubic-bezier(0.4,0,0.2,1);
  position: relative;
  cursor: pointer;
}

.interview .btnprimary:hover {
  background: #a89a3a;
  border-color: #a89a3a;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  color: #fff;
}

.interview .btnprimary::after {
  content: '';
  position: absolute;
  inset: 4px;
  border: 1px solid rgba(255,255,255,0);
  border-radius: 4px;
  transition: border-color 0.25s cubic-bezier(0.0,0,0.2,1);
  pointer-events: none;
}

.interview .btnprimary:hover::after {
  border-color: rgba(255,255,255,0.45);
}

.interview .btnsecondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: transparent;
  color: #BFAE4F;
  border: 2px solid #BFAE4F;
  border-radius: 6px;
  text-decoration: none;
  transition: background-color 0.26s cubic-bezier(0.4,0,0.2,1), color 0.26s cubic-bezier(0.4,0,0.2,1);
  position: relative;
  cursor: pointer;
}

.interview .btnsecondary:hover {
  background: #BFAE4F;
  color: #1a2a1a;
}

.interview .btnsecondary::after {
  content: '';
  position: absolute;
  inset: 4px;
  border: 1px solid rgba(191,174,79,0);
  border-radius: 2px;
  transition: border-color 0.28s cubic-bezier(0.0,0,0.2,1);
  pointer-events: none;
}

.interview .btnsecondary:hover::after {
  border-color: rgba(191,174,79,0.5);
}

.interview .titleimagerow {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 32px;
}

.interview .titleimgwrap {
  width: 480px;
  height: 280px;
  border-radius: 18px;
  overflow: hidden;
  flex-shrink: 0;
}

.interview .titleimgwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: brightness(0.96) saturate(0.9);
}

.interview .titlestatbox {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 16px;
}

.interview .statitem {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.interview .statnumber {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #BFAE4F;
}

.interview .statlabel {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  color: #2e3a2e;
}


.interview .qasection {
  position: relative;
  background: #C3D7A4;
  padding-top: 64px;
  padding-bottom: 64px;
  overflow: hidden;
}

.interview .qasection .circle-decor.c3 {
  width: 260px;
  height: 260px;
  border: 1px solid rgba(191,174,79,0.1);
  top: -60px;
  left: -40px;
}

.interview .qasection .circle-decor.c4 {
  width: 400px;
  height: 400px;
  border: 1px solid rgba(191,174,79,0.07);
  bottom: -120px;
  right: -80px;
}

.interview .qaoverlay {
  position: absolute;
  inset: 0;
  background: rgba(195,215,164,0.0);
  animation: overlaybreath 6s cubic-bezier(0.4,0,0.2,1) infinite alternate;
  pointer-events: none;
  z-index: 0;
}

@keyframes overlaybreath {
  from {
    background: rgba(191,174,79,0.0);
  }
  to {
    background: rgba(191,174,79,0.07);
  }
}

.interview .qainner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.interview .qatoprow {
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start;
}

.interview .qaleftcol {
  flex: 0 0 320px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.interview .sectionlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #1a2a1a;
  line-height: 1.4;
}

.interview .qatitle {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1a2a1a;
  margin: 0;
  text-transform: uppercase;
}

.interview .qaaccentline {
  width: 48px;
  height: 3px;
  background: #BFAE4F;
  border-radius: 0px;
}

.interview .qadesc {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #1a2a1a;
  margin: 0;
}

.interview .qarightcol {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.interview .qaitem {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 32px;
  background: #F9F9F7;
  border-radius: 18px;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
  transition: box-shadow 0.24s cubic-bezier(0.4,0,0.2,1);
}

.interview .qaitem:hover {
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.interview .qamark {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #BFAE4F;
  line-height: 1.4;
}

.interview .qamark.answer {
  color: #2e3a2e;
}

.interview .qatext {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #1a2a1a;
  margin: 0;
}

.interview .qatext strong {
  font-weight: 700;
}


.interview .stepssection {
  position: relative;
  background: #F9F9F7;
  padding-top: 64px;
  padding-bottom: 64px;
}

.interview .stepssection .circle-decor.c5 {
  width: 300px;
  height: 300px;
  border: 1px solid rgba(195,215,164,0.15);
  top: 40px;
  right: -60px;
}

.interview .stepsinner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.interview .stepstoprow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: flex-end;
  justify-content: space-between;
}

.interview .stepstitlewrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 480px;
}

.interview .stepstitle {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1a2a1a;
  margin: 0;
  text-transform: uppercase;
  position: relative;
  padding-left: 20px;
}

.interview .stepstitle::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: #BFAE4F;
  border-radius: 0px;
}

.interview .stepsdesc {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #2e3a2e;
  margin: 0;
}

.interview .stepslink {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #BFAE4F;
  text-decoration: none;
  transition: color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.interview .stepslink:hover {
  color: #a89a3a;
}

.interview .stepslink .arrow {
  display: inline-block;
  opacity: 0;
  transform: translateX(-6px);
  transition: opacity 0.22s cubic-bezier(0.4,0,0.2,1), transform 0.22s cubic-bezier(0.4,0,0.2,1);
}

.interview .stepslink:hover .arrow {
  opacity: 1;
  transform: translateX(0);
}

.interview .stepsline {
  position: relative;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: flex-start;
}

.interview .stepsline::before {
  content: '';
  position: absolute;
  top: 32px;
  left: 32px;
  right: 32px;
  height: 2px;
  background: rgba(191,174,79,0.2);
  z-index: 0;
}

.interview .stepcard {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 0 16px;
  position: relative;
  z-index: 1;
  text-align: center;
}

.interview .stepiconcircle {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #BFAE4F;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
  transition: box-shadow 0.24s cubic-bezier(0.4,0,0.2,1), background-color 0.24s cubic-bezier(0.4,0,0.2,1);
}

.interview .stepcard:hover .stepiconcircle {
  background: #a89a3a;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.interview .stepiconcircle i {
  font-size: 20px;
  color: #1a2a1a;
}

.interview .stepnum {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #BFAE4F;
  text-transform: uppercase;
}

.interview .stepcardtitle {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #1a2a1a;
  margin: 0;
  text-transform: uppercase;
}

.interview .stepcardtext {
  font-size: 14px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #2e3a2e;
  margin: 0;
}


.interview .profilesection {
  position: relative;
  background: #1a2a1a;
  padding-top: 64px;
  padding-bottom: 64px;
  overflow: hidden;
}

.interview .profileoverlay {
  position: absolute;
  inset: 0;
  background: rgba(191,174,79,0.0);
  animation: profilebreath 8s cubic-bezier(0.0,0,0.2,1) infinite alternate;
  pointer-events: none;
  z-index: 0;
}

@keyframes profilebreath {
  from {
    background: rgba(191,174,79,0.0);
  }
  to {
    background: rgba(191,174,79,0.05);
  }
}

.interview .profilesection .circle-decor.c6 {
  width: 500px;
  height: 500px;
  border: 1px solid rgba(195,215,164,0.06);
  top: -150px;
  left: -100px;
}

.interview .profilesection .circle-decor.c7 {
  width: 220px;
  height: 220px;
  border: 1px solid rgba(191,174,79,0.08);
  bottom: 40px;
  right: 80px;
}

.interview .profileinner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.interview .profiletoprow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: flex-end;
  justify-content: space-between;
}

.interview .profiletitlewrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.interview .profilelabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #C3D7A4;
  line-height: 1.4;
}

.interview .profiletitle {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #F9F9F7;
  margin: 0;
  text-transform: uppercase;
}

.interview .profiledesc {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: rgba(249,249,247,0.75);
  margin: 0;
  max-width: 520px;
}

.interview .profilegrid {
  display: grid;
  grid-template-columns: 2fr 1.5fr 1fr;
  gap: 16px;
  align-items: stretch;
}

.interview .profilecard {
  background: rgba(249,249,247,0.05);
  border: 1px solid rgba(191,174,79,0.18);
  border-radius: 18px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: background-color 0.26s cubic-bezier(0.4,0,0.2,1), border-color 0.26s cubic-bezier(0.4,0,0.2,1);
}

.interview .profilecard:hover {
  background: rgba(249,249,247,0.09);
  border-color: rgba(191,174,79,0.38);
}

.interview .profilecard.featured {
  background: rgba(191,174,79,0.1);
  border-color: rgba(191,174,79,0.32);
}

.interview .profilecard.featured:hover {
  background: rgba(191,174,79,0.16);
}

.interview .profileavatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(191,174,79,0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.interview .profileavatar i {
  font-size: 20px;
  color: #BFAE4F;
}

.interview .profilename {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #F9F9F7;
  margin: 0;
}

.interview .profilerole {
  font-size: 14px;
  letter-spacing: 0.02em;
  color: #C3D7A4;
  line-height: 1.4;
}

.interview .profilequote {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: rgba(249,249,247,0.8);
  margin: 0;
}

.interview .profilecard.compact .profilequote {
  font-size: 14px;
}

.interview .accentbadge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 16px;
  background: rgba(191,174,79,0.18);
  border-radius: 32px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #BFAE4F;
  text-transform: uppercase;
  align-self: flex-start;
}


@media (max-width: 1024px) {
  .interview .titleheading {
    font-size: 50px;
  }

  .interview .titleimgwrap {
    width: 340px;
    height: 220px;
  }

  .interview .qatoprow {
    flex-direction: column;
    gap: 32px;
  }

  .interview .qaleftcol {
    flex: none;
  }

  .interview .qatitle {
    font-size: 26px;
  }

  .interview .stepstoprow {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .interview .stepstitle {
    font-size: 26px;
  }

  .interview .stepsline {
    flex-direction: column;
    gap: 32px;
  }

  .interview .stepsline::before {
    display: none;
  }

  .interview .stepcard {
    flex-direction: row;
    text-align: left;
    align-items: flex-start;
    padding: 0;
  }

  .interview .profilegrid {
    grid-template-columns: 1fr 1fr;
  }

  .interview .profiletitle {
    font-size: 26px;
  }

  .interview .profiletoprow {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .interview .pagecontainer {
    padding-left: 16px;
    padding-right: 16px;
  }

  .interview .titleheading {
    font-size: 26px;
  }

  .interview .titleimagerow {
    flex-direction: column;
  }

  .interview .titleimgwrap {
    width: 100%;
    height: 200px;
  }

  .interview .profilegrid {
    grid-template-columns: 1fr;
  }

  .interview .stepsline {
    flex-direction: column;
    gap: 32px;
  }

  .interview .stepsline::before {
    display: none;
  }

  .interview .stepcard {
    flex-direction: row;
    text-align: left;
    align-items: flex-start;
    padding: 0;
  }

  .interview .frameline {
    display: none;
  }

  .interview .titleactions {
    flex-direction: column;
    align-items: flex-start;
  }
}

.lead {
  max-width: 100%;
  overflow-x: hidden;
}

.lead .container-lead {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px;
}


.lead .titleblock {
  display: flex;
  flex-direction: row;
  min-height: 0;
  position: relative;
}

.lead .titleblock .leftpanel {
  width: 45%;
  background: #BFAE4F;
  padding: 64px 32px 64px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.lead .titleblock .leftpanel .circle1 {
  position: absolute;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: rgba(255,255,255,0.09);
  top: -60px;
  left: -80px;
  pointer-events: none;
}

.lead .titleblock .leftpanel .circle2 {
  position: absolute;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  bottom: 40px;
  right: -40px;
  pointer-events: none;
}

.lead .titleblock .leftpanel .circle3 {
  position: absolute;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: rgba(255,255,255,0.08);
  top: 50%;
  left: 60%;
  pointer-events: none;
}

.lead .titleblock .leftpanel .brandlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.75);
  margin-bottom: 32px;
}

.lead .titleblock .leftpanel .maintitle {
  font-size: 66px;
  line-height: 1.15;
  font-weight: 900;
  color: #fff;
  letter-spacing: 0.01em;
  margin-bottom: 32px;
}

.lead .titleblock .leftpanel .subtitle {
  font-size: 20px;
  line-height: 1.65;
  color: rgba(255,255,255,0.88);
  letter-spacing: 0.01em;
  max-width: 380px;
}

.lead .titleblock .rightpanel {
  width: 55%;
  background: #F9F9F7;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: stretch;
}

.lead .titleblock .rightpanel .heroimage {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center;
  display: block;
  animation: fadeInHero 0.5s cubic-bezier(0.4,0,0.2,1) both;
}

@keyframes fadeInHero {
  from { opacity: 0; }
  to { opacity: 1; }
}

.lead .titleblock .rightpanel .fogdrift {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.18);
  animation: fogmove 7s cubic-bezier(0.4,0,0.2,1) infinite alternate;
  pointer-events: none;
}

@keyframes fogmove {
  0% { transform: translateX(-12%) translateY(-4%); opacity: 0.18; }
  100% { transform: translateX(8%) translateY(6%); opacity: 0.08; }
}


.lead .community {
  background: #F9F9F7;
  padding: 64px 0;
  position: relative;
}

.lead .community .wavy {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.lead .community .wavy svg {
  width: 100%;
  height: 100%;
  opacity: 0.07;
}

.lead .community .communityinner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start;
}

.lead .community .communityleft {
  width: 38%;
  flex-shrink: 0;
}

.lead .community .accentbar {
  width: 48px;
  height: 4px;
  background: #BFAE4F;
  border-radius: 0px;
  margin-bottom: 16px;
}

.lead .community .communityheading {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: 0.01em;
  color: #1b1a14;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.lead .community .communitysub {
  font-size: 16px;
  line-height: 1.65;
  color: #3a3826;
  letter-spacing: 0.02em;
}

.lead .community .communityright {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.lead .community .statrow {
  display: flex;
  flex-direction: row;
  gap: 32px;
}

.lead .community .statcard {
  flex: 1;
  background: #fff;
  border-radius: 18px;
  padding: 32px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lead .community .statcard .statnum {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 900;
  color: #BFAE4F;
  letter-spacing: 0.01em;
}

.lead .community .statcard .statlabel {
  font-size: 14px;
  line-height: 1.4;
  color: #3a3826;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.lead .community .statcard .statdesc {
  font-size: 14px;
  line-height: 1.65;
  color: #5a5840;
}

.lead .community .communityimage {
  width: 100%;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
}

.lead .community .communityimage img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  object-position: center;
  display: block;
}


.lead .reputation {
  background: #BFAE4F;
  padding: 64px 0;
  position: relative;
}

.lead .reputation .reputationinner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
}

.lead .reputation .reptop {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 64px;
  gap: 32px;
}

.lead .reputation .repheading {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 900;
  color: #fff;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  max-width: 560px;
}

.lead .reputation .repdesc {
  font-size: 16px;
  line-height: 1.65;
  color: rgba(255,255,255,0.88);
  max-width: 380px;
  letter-spacing: 0.01em;
}

.lead .reputation .repgrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

.lead .reputation .repcard {
  background: rgba(255,255,255,0.14);
  border-radius: 18px;
  padding: 32px;
  border: 1.5px dashed rgba(255,255,255,0.35);
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.lead .reputation .repcard:hover {
  background: rgba(255,255,255,0.22);
}

.lead .reputation .repcard .repicon {
  width: 44px;
  height: 44px;
  background: rgba(255,255,255,0.2);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lead .reputation .repcard .repicon i {
  font-size: 20px;
  color: #fff;
}

.lead .reputation .repcard .repcardtitle {
  font-size: 20px;
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.01em;
}

.lead .reputation .repcard .repcardtext {
  font-size: 14px;
  line-height: 1.65;
  color: rgba(255,255,255,0.88);
  letter-spacing: 0.01em;
}

.lead .reputation .repimage {
  margin-top: 64px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
}

.lead .reputation .repimage img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  object-position: center;
  display: block;
}


.lead .team {
  background: #fff;
  padding: 64px 0;
}

.lead .team .teaminner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start;
}

.lead .team .teamright {
  flex: 1;
}

.lead .team .teamaccentbar {
  width: 48px;
  height: 4px;
  background: #C3D7A4;
  border-radius: 0px;
  margin-bottom: 16px;
}

.lead .team .teamheading {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 900;
  color: #1b1a14;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  margin-bottom: 32px;
}

.lead .team .teamdesc {
  font-size: 16px;
  line-height: 1.65;
  color: #3a3826;
  margin-bottom: 32px;
  letter-spacing: 0.01em;
}

.lead .team .teamdesc strong {
  font-weight: 700;
  color: #1b1a14;
}

.lead .team .memberlist {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.lead .team .membercard {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: flex-start;
  padding: 32px;
  border-radius: 18px;
  background: #F9F9F7;
  box-shadow: 0 3px 5px 0 rgba(195,215,164,0.07);
  transition: box-shadow 0.24s cubic-bezier(0.4,0,0.2,1);
}

.lead .team .membercard:hover {
  box-shadow: 0 7px 28px 0 rgba(195,215,164,0.11);
}

.lead .team .membercard .portrait {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.lead .team .membercard .portrait img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.lead .team .membercard .memberinfo {
  flex: 1;
}

.lead .team .membercard .membername {
  font-size: 20px;
  font-weight: 800;
  color: #1b1a14;
  letter-spacing: 0.01em;
  margin-bottom: 4px;
}

.lead .team .membercard .memberrole {
  font-size: 14px;
  font-weight: 600;
  color: #BFAE4F;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.lead .team .membercard .memberbio {
  font-size: 14px;
  line-height: 1.65;
  color: #5a5840;
  letter-spacing: 0.01em;
}

.lead .team .teamleft {
  width: 38%;
  flex-shrink: 0;
}

.lead .team .teamimage {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  margin-bottom: 32px;
}

.lead .team .teamimage img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.lead .team .steptracker {
  background: #F9F9F7;
  border-radius: 18px;
  padding: 32px;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
}

.lead .team .steptrackerheading {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
  margin-bottom: 16px;
}

.lead .team .steps {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.lead .team .step {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
}

.lead .team .stepnum {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #BFAE4F;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lead .team .steptext {
  flex: 1;
  padding-top: 4px;
}

.lead .team .steptext strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #1b1a14;
  margin-bottom: 4px;
  letter-spacing: 0.01em;
}

.lead .team .steptext span {
  font-size: 14px;
  line-height: 1.65;
  color: #5a5840;
}


.lead .approach {
  background: #C3D7A4;
  padding: 64px 0;
  position: relative;
}

.lead .approach .approachinner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
}

.lead .approach .approachtop {
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start;
  margin-bottom: 64px;
}

.lead .approach .approachleft {
  width: 42%;
  flex-shrink: 0;
}

.lead .approach .approachaccentbar {
  width: 48px;
  height: 4px;
  background: #fff;
  border-radius: 0px;
  margin-bottom: 16px;
}

.lead .approach .approachheading {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 900;
  color: #1b1a14;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.lead .approach .approachdesc {
  font-size: 16px;
  line-height: 1.65;
  color: #2a3a1a;
  letter-spacing: 0.01em;
}

.lead .approach .approachright {
  flex: 1;
}

.lead .approach .differencelist {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.lead .approach .differenceitem {
  background: rgba(255,255,255,0.55);
  border-radius: 18px;
  padding: 32px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: flex-start;
  transition: background-color 0.28s cubic-bezier(0.0,0,0.2,1);
}

.lead .approach .differenceitem:hover {
  background: rgba(255,255,255,0.82);
}

.lead .approach .differenceitem .difficon {
  width: 40px;
  height: 40px;
  background: #BFAE4F;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lead .approach .differenceitem .difficon i {
  font-size: 16px;
  color: #fff;
}

.lead .approach .differenceitem .difftext {
  flex: 1;
}

.lead .approach .differenceitem .difftitle {
  font-size: 16px;
  font-weight: 800;
  color: #1b1a14;
  letter-spacing: 0.01em;
  margin-bottom: 8px;
}

.lead .approach .differenceitem .diffpara {
  font-size: 14px;
  line-height: 1.65;
  color: #2a3a1a;
  letter-spacing: 0.01em;
}

.lead .approach .approachbottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: center;
}

.lead .approach .approachimage {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 9px 60px 0 rgba(195,215,164,0.14);
}

.lead .approach .approachimage img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.lead .approach .dashedbox {
  border: 2px dashed rgba(191,174,79,0.55);
  border-radius: 18px;
  padding: 32px;
  background: rgba(255,255,255,0.35);
}

.lead .approach .dashedbox .dashedheading {
  font-size: 20px;
  font-weight: 800;
  color: #1b1a14;
  letter-spacing: 0.01em;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.lead .approach .dashedbox .dashedtext {
  font-size: 16px;
  line-height: 1.65;
  color: #2a3a1a;
  letter-spacing: 0.01em;
  margin-bottom: 16px;
}

.lead .approach .dashedbox .interviewlink {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #1b1a14;
  text-decoration: none;
  letter-spacing: 0.01em;
  transition: color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.lead .approach .dashedbox .interviewlink .arrowicon {
  width: 0;
  overflow: hidden;
  transition: width 0.24s cubic-bezier(0.4,0,0.2,1);
  display: inline-block;
}

.lead .approach .dashedbox .interviewlink:hover {
  color: #BFAE4F;
}

.lead .approach .dashedbox .interviewlink:hover .arrowicon {
  width: 20px;
}

.lead .approach .dashedbox .interviewlink .arrowicon i {
  font-size: 16px;
}


.lead .community .statcard .statlabel .letter {
  display: inline-block;
  transition: color 0.1s cubic-bezier(0.4,0,0.2,1);
}

.lead .community .statcard:hover .statlabel .letter:nth-child(1) { color: #BFAE4F; transition-delay: 0s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(2) { color: #BFAE4F; transition-delay: 0.04s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(3) { color: #BFAE4F; transition-delay: 0.08s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(4) { color: #BFAE4F; transition-delay: 0.12s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(5) { color: #BFAE4F; transition-delay: 0.16s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(6) { color: #BFAE4F; transition-delay: 0.20s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(7) { color: #BFAE4F; transition-delay: 0.24s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(8) { color: #BFAE4F; transition-delay: 0.28s; }
.lead .community .statcard:hover .statlabel .letter:nth-child(n+9) { color: #BFAE4F; transition-delay: 0.32s; }


.lead .primarybtn {
  display: inline-block;
  background: #BFAE4F;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 16px 32px;
  border-radius: 6px;
  border: 2px solid transparent;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), border-color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.lead .primarybtn::after {
  content: '';
  position: absolute;
  inset: 4px;
  border-radius: 4px;
  border: 1.5px solid rgba(255,255,255,0);
  transition: border-color 0.24s cubic-bezier(0.4,0,0.2,1);
  pointer-events: none;
}

.lead .primarybtn:hover {
  background: #a89840;
  border-color: #BFAE4F;
}

.lead .primarybtn:hover::after {
  border-color: rgba(255,255,255,0.55);
}


.lead .divider1 {
  width: 100%;
  height: 8px;
  background: repeating-linear-gradient(
    90deg,
    #BFAE4F 0px, #BFAE4F 4px,
    transparent 4px, transparent 12px
  );
  opacity: 0.35;
}

.lead .divider2 {
  width: 100%;
  height: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  overflow: hidden;
}

.lead .divider2 .dotrow {
  height: 4px;
  background: repeating-linear-gradient(
    90deg,
    #C3D7A4 0px, #C3D7A4 4px,
    transparent 4px, transparent 10px
  );
  opacity: 0.5;
}

.lead .divider3 {
  width: 100%;
  height: 8px;
  background: repeating-linear-gradient(
    90deg,
    #BFAE4F 0px, #BFAE4F 3px,
    transparent 3px, transparent 9px
  );
  opacity: 0.25;
}


@media (max-width: 1024px) {
  .lead .titleblock {
    flex-direction: column;
  }
  .lead .titleblock .leftpanel,
  .lead .titleblock .rightpanel {
    width: 100%;
  }
  .lead .titleblock .leftpanel {
    padding: 64px 32px;
  }
  .lead .titleblock .rightpanel .heroimage {
    min-height: 340px;
  }
  .lead .community .communityinner {
    flex-direction: column;
    gap: 32px;
  }
  .lead .community .communityleft {
    width: 100%;
  }
  .lead .reputation .reptop {
    flex-direction: column;
    align-items: flex-start;
  }
  .lead .reputation .repgrid {
    grid-template-columns: 1fr 1fr;
  }
  .lead .team .teaminner {
    flex-direction: column;
    gap: 32px;
  }
  .lead .team .teamleft {
    width: 100%;
  }
  .lead .approach .approachtop {
    flex-direction: column;
    gap: 32px;
  }
  .lead .approach .approachleft {
    width: 100%;
  }
  .lead .approach .approachbottom {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .lead .titleblock .leftpanel .maintitle {
    font-size: 50px !important;
  }
  .lead .community .communityheading,
  .lead .reputation .repheading,
  .lead .team .teamheading,
  .lead .approach .approachheading {
    font-size: 36px;
  }
  .lead .community .statrow {
    flex-direction: column;
  }
  .lead .reputation .repgrid {
    grid-template-columns: 1fr;
  }
  .lead .container-lead {
    padding-left: 16px;
    padding-right: 16px;
  }
  .lead .community .communityinner,
  .lead .reputation .reputationinner,
  .lead .team .teaminner,
  .lead .approach .approachinner {
    padding: 0 16px;
  }
}

.contactus {
  max-width: 100%;
  overflow-x: hidden;
}

.contactus .pageinner {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 32px;
  padding-right: 32px;
}

.contactus .titlesection {
  position: relative;
  padding-top: 64px;
  padding-bottom: 64px;
  background: linear-gradient(135deg, #BFAE4F 0%, #C3D7A4 60%, #F9F9F7 100%);
  overflow: hidden;
}

.contactus .titlesection .spot1,
.contactus .titlesection .spot2,
.contactus .titlesection .spot3 {
  position: absolute;
  border-radius: 32px;
  filter: blur(48px);
  opacity: 0.22;
  pointer-events: none;
}

.contactus .titlesection .spot1 {
  width: 320px;
  height: 220px;
  background: #BFAE4F;
  top: -40px;
  right: 80px;
}

.contactus .titlesection .spot2 {
  width: 200px;
  height: 200px;
  background: #C3D7A4;
  bottom: -30px;
  left: 60px;
}

.contactus .titlesection .spot3 {
  width: 160px;
  height: 160px;
  background: #BFAE4F;
  bottom: 20px;
  right: 300px;
}

.contactus .titlelabel {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #2d2600;
  background: rgba(191, 174, 79, 0.18);
  border-radius: 6px;
  padding: 4px 16px;
  margin-bottom: 16px;
}

.contactus .titleheading {
  font-size: 66px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1e1800;
  margin-bottom: 16px;
  animation: zoomsettle 0.5s cubic-bezier(0.0,0,0.2,1) both;
}

@keyframes zoomsettle {
  from { transform: scale(1.12); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

.contactus .titledesc {
  font-size: 20px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #2d2600;
  max-width: 560px;
  margin-bottom: 0;
}

.contactus .titleimage {
  width: 420px;
  height: 300px;
  border-radius: 18px;
  overflow: hidden;
  flex-shrink: 0;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
  animation: fadeload 0.5s cubic-bezier(0.4,0,0.2,1) 0.2s both;
}

@keyframes fadeload {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.contactus .titleimage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.contactus .titlerow {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 64px;
}

.contactus .titleleft {
  flex: 1 1 0;
  min-width: 0;
}

.contactus .formsection {
  background: #F9F9F7;
  padding-top: 64px;
  padding-bottom: 64px;
}

.contactus .formgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
}

.contactus .formcolumn {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.contactus .formdivider {
  width: 2px;
  background: linear-gradient(180deg, transparent 0%, #BFAE4F 30%, #C3D7A4 70%, transparent 100%);
  align-self: stretch;
  border-radius: 0px;
  min-height: 400px;
  flex-shrink: 0;
}

.contactus .formwrap {
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: stretch;
}

.contactus .formheading {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #1e1800;
  line-height: 1.15;
  margin-bottom: 8px;
}

.contactus .formsub {
  font-size: 16px;
  line-height: 1.65;
  color: #3a3010;
  letter-spacing: 0.01em;
}

.contactus .fieldgroup {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contactus .fieldlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #1e1800;
  display: block;
  margin-bottom: 4px;
}

.contactus .fieldinput {
  width: 100%;
  font-size: 16px;
  line-height: 1.4;
  color: #1e1800;
  background: #fff;
  border: 2px solid #C3D7A4;
  border-radius: 6px;
  padding: 8px 16px;
  outline: none;
  transition: border-color 0.22s cubic-bezier(0.4,0,0.2,1);
  box-sizing: border-box;
}

.contactus .fieldinput::placeholder {
  color: #a09060;
  font-weight: 300;
}

.contactus .fieldinput:focus {
  border-color: #BFAE4F;
}

.contactus .fieldselect {
  width: 100%;
  font-size: 16px;
  line-height: 1.4;
  color: #1e1800;
  background: #fff;
  border: 2px solid #C3D7A4;
  border-radius: 6px;
  padding: 8px 16px;
  outline: none;
  transition: border-color 0.22s cubic-bezier(0.4,0,0.2,1);
  box-sizing: border-box;
  appearance: none;
  cursor: pointer;
}

.contactus .fieldselect:focus {
  border-color: #BFAE4F;
}

.contactus .selectwrap {
  position: relative;
}

.contactus .selectwrap .selectarrow {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  width: 16px;
  height: 16px;
}

.contactus .privacyrow {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
}

.contactus .privacycheck {
  width: 18px;
  height: 18px;
  accent-color: #BFAE4F;
  margin-top: 2px;
  flex-shrink: 0;
  cursor: pointer;
}

.contactus .privacytext {
  font-size: 14px;
  line-height: 1.65;
  color: #3a3010;
  letter-spacing: 0.01em;
}

.contactus .privacytext a {
  color: #7a6c1a;
  text-decoration: underline;
  transition: color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.contactus .privacytext a:hover {
  color: #BFAE4F;
}

.contactus .submitbtn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #1e1800;
  background: #BFAE4F;
  border: 2px solid #BFAE4F;
  border-radius: 6px;
  padding: 8px 32px;
  cursor: pointer;
  position: relative;
  transition: background 0.25s cubic-bezier(0.4,0,0.2,1), border-color 0.25s cubic-bezier(0.4,0,0.2,1);
  outline: none;
  align-self: flex-start;
}

.contactus .submitbtn::after {
  content: '';
  position: absolute;
  inset: 3px;
  border: 2px solid transparent;
  border-radius: 4px;
  transition: border-color 0.22s cubic-bezier(0.4,0,0.2,1);
  pointer-events: none;
}

.contactus .submitbtn:hover {
  background: #a8962e;
  border-color: #a8962e;
}

.contactus .submitbtn:hover::after {
  border-color: rgba(255,255,255,0.45);
}

.contactus .submitbtn:focus {
  outline: 3px solid #BFAE4F;
  outline-offset: 2px;
}

.contactus .contactdetails {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.contactus .detailheading {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #1e1800;
  line-height: 1.15;
  margin-bottom: 8px;
}

.contactus .detailsub {
  font-size: 16px;
  line-height: 1.65;
  color: #3a3010;
  letter-spacing: 0.01em;
}

.contactus .iconstrip {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contactus .iconitem {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
  transition: box-shadow 0.25s cubic-bezier(0.4,0,0.2,1);
}

.contactus .iconitem:hover {
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.contactus .iconbadge {
  width: 40px;
  height: 40px;
  border-radius: 6px;
  background: rgba(191,174,79,0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #7a6c1a;
  font-size: 16px;
}

.contactus .iconlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #1e1800;
  margin-bottom: 4px;
  display: block;
}

.contactus .iconvalue {
  font-size: 16px;
  line-height: 1.4;
  color: #3a3010;
  letter-spacing: 0.01em;
}

.contactus .iconvalue a {
  color: #3a3010;
  text-decoration: none;
  transition: color 0.2s cubic-bezier(0.4,0,0.2,1);
}

.contactus .iconvalue a:hover {
  color: #BFAE4F;
}

.contactus .metricsection {
  background: #C3D7A4;
  padding-top: 64px;
  padding-bottom: 64px;
  position: relative;
  overflow: hidden;
}

.contactus .mathsymbol {
  position: absolute;
  font-size: 320px;
  font-weight: 900;
  color: transparent;
  -webkit-text-stroke: 2px rgba(191,174,79,0.18);
  right: -40px;
  top: -60px;
  pointer-events: none;
  line-height: 1;
  user-select: none;
}

.contactus .metricrow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: stretch;
}

.contactus .metricleft {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.contactus .metricright {
  flex: 0 0 340px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.contactus .metricheading {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1e1800;
}

.contactus .metricpara {
  font-size: 16px;
  line-height: 1.65;
  color: #2d2600;
  letter-spacing: 0.01em;
  max-width: 480px;
}

.contactus .metricpara strong {
  font-weight: 700;
}

.contactus .featurestrip {
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap;
}

.contactus .featureitem {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-width: 80px;
}

.contactus .featureicon {
  width: 48px;
  height: 48px;
  border-radius: 18px;
  background: rgba(191,174,79,0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7a6c1a;
  font-size: 20px;
}

.contactus .featurelabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #1e1800;
  text-align: center;
}

.contactus .ringcard {
  background: #fff;
  border-radius: 18px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.contactus .ringwrap {
  position: relative;
  width: 120px;
  height: 120px;
}

.contactus .ringsvg {
  width: 120px;
  height: 120px;
  transform: rotate(-90deg);
}

.contactus .ringtrack {
  fill: none;
  stroke: #e8e4c8;
  stroke-width: 10;
}

.contactus .ringfill {
  fill: none;
  stroke: #BFAE4F;
  stroke-width: 10;
  stroke-linecap: round;
  stroke-dasharray: 283;
  stroke-dashoffset: 57;
  animation: ringpulse 2.8s cubic-bezier(0.4,0,0.2,1) infinite;
}

@keyframes ringpulse {
  0%, 100% { stroke: #BFAE4F; }
  50% { stroke: #a8962e; }
}

.contactus .ringnumber {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 26px;
  font-weight: 800;
  color: #1e1800;
  letter-spacing: 0.01em;
}

.contactus .ringdesc {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #3a3010;
  text-align: center;
}

.contactus .ringpara {
  font-size: 14px;
  line-height: 1.65;
  color: #2d2600;
  text-align: center;
}

.contactus .imagecardwrap {
  border-radius: 18px;
  overflow: hidden;
  width: 100%;
  height: 200px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.contactus .imagecardwrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.contactus .accentlabel {
  display: inline-block;
  background: rgba(191,174,79,0.15);
  border-radius: 6px;
  padding: 4px 16px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #5a4e00;
  text-transform: uppercase;
  margin-bottom: 16px;
}

@media (max-width: 1024px) {
  .contactus .titlerow {
    flex-direction: column;
    gap: 32px;
  }

  .contactus .titleimage {
    width: 100%;
    height: 240px;
  }

  .contactus .titleheading {
    font-size: 50px;
  }

  .contactus .formwrap {
    flex-direction: column;
  }

  .contactus .formgrid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .contactus .formdivider {
    width: 100%;
    min-height: 2px;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, #BFAE4F 30%, #C3D7A4 70%, transparent 100%);
  }

  .contactus .metricrow {
    flex-direction: column;
  }

  .contactus .metricright {
    flex: 1 1 auto;
  }

  .contactus .metricheading {
    font-size: 26px;
  }
}

@media (max-width: 640px) {
  .contactus .pageinner {
    padding-left: 16px;
    padding-right: 16px;
  }

  .contactus .titlesection {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .contactus .titleheading {
    font-size: 26px;
  }

  .contactus .titledesc {
    font-size: 16px;
  }

  .contactus .formsection {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .contactus .metricsection {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .contactus .featurestrip {
    gap: 16px;
  }

  .contactus .submitbtn {
    width: 100%;
    justify-content: center;
  }

  .contactus .mathsymbol {
    font-size: 160px;
  }
}

.aboutus {
  max-width: 100%;
  overflow-x: hidden;
}

.aboutus .pageinner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
}

@keyframes dropbounce {
  0% { transform: translateY(-40px); opacity: 0; }
  60% { transform: translateY(6px); opacity: 1; }
  78% { transform: translateY(-4px); }
  90% { transform: translateY(2px); }
  100% { transform: translateY(0); opacity: 1; }
}

.aboutus .striptop {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  padding: 64px 0;
  gap: 64px;
  position: relative;
}

.aboutus .stripimages {
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex-shrink: 0;
  width: 120px;
  animation: dropbounce 0.72s cubic-bezier(0.4,0,0.2,1) both;
}

.aboutus .imgslice {
  width: 120px;
  height: 220px;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 8%, 100% 100%, 0 92%);
  flex-shrink: 0;
}

.aboutus .imgslice img {
  width: 120px;
  height: 220px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.aboutus .imgslice.second {
  clip-path: polygon(0 8%, 100% 0, 100% 92%, 0 100%);
  height: 180px;
}

.aboutus .imgslice.second img {
  height: 180px;
}

.aboutus .striptext {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 32px;
  animation: dropbounce 0.62s cubic-bezier(0.0,0,0.2,1) 0.08s both;
}

.aboutus .labelchip {
  display: inline-block;
  background: #C3D7A4;
  color: #2a2a00;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 4px 16px;
  border-radius: 6px;
  width: fit-content;
}

.aboutus .maintitle {
  font-size: 66px;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1b1800;
  margin: 0;
}

.aboutus .maintitle .outlined {
  -webkit-text-stroke: 2px #BFAE4F;
  color: transparent;
}

.aboutus .titledesc {
  font-size: 20px;
  line-height: 1.65;
  color: #2e2c00;
  max-width: 580px;
  margin: 0;
  letter-spacing: 0.01em;
}

.aboutus .shapedeco {
  position: absolute;
  right: 0;
  top: 40px;
  width: 200px;
  height: 200px;
  border: 2px dashed #BFAE4F;
  border-radius: 32px;
  opacity: 0.35;
  pointer-events: none;
}

.aboutus .shapedeco2 {
  position: absolute;
  right: 24px;
  top: 64px;
  width: 200px;
  height: 200px;
  border: 1px dashed #C3D7A4;
  border-radius: 32px;
  opacity: 0.45;
  pointer-events: none;
}

.aboutus .metarow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap;
}

.aboutus .metaitem {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.aboutus .metanumber {
  font-size: 50px;
  font-weight: 900;
  line-height: 1.15;
  color: #BFAE4F;
  letter-spacing: 0.01em;
}

.aboutus .metalabel {
  font-size: 14px;
  color: #4a4400;
  letter-spacing: 0.02em;
  font-weight: 600;
  text-transform: uppercase;
}

.aboutus .separator {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, #BFAE4F 0%, #C3D7A4 60%, transparent 100%);
  margin: 0;
}

.aboutus .teamstory {
  background: linear-gradient(0deg, #F9F9F7 0%, #eef4e6 100%);
  padding: 64px 0;
  position: relative;
  overflow: hidden;
}

.aboutus .teamstory .graphpaper {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(191,174,79,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(191,174,79,0.07) 1px, transparent 1px),
    linear-gradient(rgba(195,215,164,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(195,215,164,0.05) 1px, transparent 1px);
  background-size: 60px 60px, 60px 60px, 12px 12px, 12px 12px;
}

.aboutus .teamgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
  position: relative;
}

.aboutus .storyleft {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.aboutus .sectionlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #7a6a00;
}

.aboutus .sectionhead {
  font-size: 50px;
  font-weight: 800;
  line-height: 1.15;
  color: #1b1800;
  letter-spacing: 0.01em;
  margin: 0;
}

.aboutus .sectionhead .outlined {
  -webkit-text-stroke: 2px #BFAE4F;
  color: transparent;
}

.aboutus .paragraph {
  font-size: 16px;
  line-height: 1.65;
  color: #2e2c00;
  letter-spacing: 0.01em;
  margin: 0;
}

.aboutus .paragraph strong {
  font-weight: 700;
  color: #1b1800;
}

.aboutus .accentblock {
  border: 2px dashed #BFAE4F;
  border-radius: 18px;
  padding: 32px;
  background: rgba(191,174,79,0.06);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.aboutus .accentblock .accenttext {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  color: #1b1800;
  letter-spacing: 0.01em;
}

.aboutus .accentblock .accentsmall {
  font-size: 14px;
  color: #4a4400;
  line-height: 1.65;
}

.aboutus .storyright {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.aboutus .imagefloat {
  width: 100%;
  height: 320px;
  overflow: hidden;
  border-radius: 18px;
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
}

.aboutus .imagefloat img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s cubic-bezier(0.4,0,0.2,1);
}

.aboutus .imagefloat:hover img {
  transform: scale(1.04);
}

.aboutus .teamlist {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.aboutus .teamcard {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  background: #F9F9F7;
  border-radius: 18px;
  padding: 16px;
  box-shadow: 0 3px 5px 0 rgba(195,215,164,0.07);
  transition: box-shadow 0.22s cubic-bezier(0.4,0,0.2,1), background 0.22s cubic-bezier(0.4,0,0.2,1);
}

.aboutus .teamcard:hover {
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  background: #fff;
}

.aboutus .portrait {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0px;
}

.aboutus .portrait img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.aboutus .teaminfo {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.aboutus .teamname {
  font-size: 16px;
  font-weight: 700;
  color: #1b1800;
  letter-spacing: 0.01em;
}

.aboutus .teamrole {
  font-size: 14px;
  color: #6b6000;
  letter-spacing: 0.02em;
}

.aboutus .teamquote {
  font-size: 14px;
  color: #4a4400;
  line-height: 1.65;
  font-style: italic;
}

.aboutus .pillarrow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  margin-top: 32px;
}

.aboutus .pillar {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  background: rgba(195,215,164,0.18);
  border-radius: 6px;
  transition: background 0.26s cubic-bezier(0.4,0,0.2,1);
}

.aboutus .pillar:hover {
  background: rgba(191,174,79,0.13);
}

.aboutus .pillaricon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #BFAE4F;
  font-size: 20px;
}

.aboutus .pillartitle {
  font-size: 16px;
  font-weight: 700;
  color: #1b1800;
  letter-spacing: 0.01em;
}

.aboutus .pillartext {
  font-size: 14px;
  color: #4a4400;
  line-height: 1.65;
}

.aboutus .imagegrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.aboutus .imgcard {
  overflow: hidden;
  border-radius: 6px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.aboutus .imgcard img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s cubic-bezier(0.4,0,0.2,1);
}

.aboutus .imgcard:hover img {
  transform: scale(1.05);
}

.aboutus .imgcard.tall img {
  height: 336px;
}

.aboutus .imgcard.tall {
  grid-row: span 2;
}

@media (max-width: 1024px) {
  .aboutus .striptop {
    gap: 32px;
    padding: 64px 0;
  }
  .aboutus .maintitle {
    font-size: 50px;
  }
  .aboutus .teamgrid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .aboutus .sectionhead {
    font-size: 50px;
  }
}

@media (max-width: 640px) {
  .aboutus .pageinner {
    padding: 0 16px;
  }
  .aboutus .striptop {
    flex-direction: column;
    gap: 32px;
    padding: 32px 0;
  }
  .aboutus .stripimages {
    flex-direction: row;
    width: 100%;
    height: 100px;
  }
  .aboutus .imgslice {
    width: 50%;
    height: 100px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  .aboutus .imgslice img {
    width: 100%;
    height: 100px;
  }
  .aboutus .imgslice.second {
    height: 100px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  .aboutus .imgslice.second img {
    height: 100px;
  }
  .aboutus .maintitle {
    font-size: 36px;
  }
  .aboutus .shapedeco,
  .aboutus .shapedeco2 {
    display: none;
  }
  .aboutus .metanumber {
    font-size: 26px;
  }
  .aboutus .metarow {
    gap: 16px;
  }
  .aboutus .pillarrow {
    flex-direction: column;
    gap: 16px;
  }
  .aboutus .imagegrid {
    grid-template-columns: 1fr;
  }
  .aboutus .imgcard.tall {
    grid-row: span 1;
  }
  .aboutus .imgcard.tall img {
    height: 200px;
  }
  .aboutus .sectionhead {
    font-size: 26px;
  }
  .aboutus .teamstory {
    padding: 32px 0;
  }
}

.learningprogram {
  background: #F9F9F7;
  overflow-x: clip;
}

.learningprogram .pagetop {
  background: #1a1208;
  background: linear-gradient(160deg, #1a1208 0%, #2c2410 60%, #1e1c0e 100%);
  padding: 64px 32px;
  position: relative;
}

.learningprogram .pagetop::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(191,174,79,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(191,174,79,0.07) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}

.learningprogram .pagetop::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 50%, transparent 40%, rgba(191,174,79,0.18) 100%);
  pointer-events: none;
  animation: vignettepulse 5s cubic-bezier(0.4,0,0.2,1) infinite alternate;
}

@keyframes vignettepulse {
  0% { opacity: 0.6; }
  100% { opacity: 1; }
}

.learningprogram .topcontainer {
  max-width: 1320px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.learningprogram .toptag {
  display: inline-block;
  background: rgba(191,174,79,0.18);
  border: 1px solid rgba(191,174,79,0.35);
  color: #BFAE4F;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 4px 16px;
  border-radius: 6px;
  margin-bottom: 16px;
}

.learningprogram .topheading {
  font-size: 50px;
  line-height: 1.15;
  font-weight: 800;
  color: #F9F9F7;
  letter-spacing: 0.01em;
  margin: 0 0 16px 0;
  max-width: 720px;
}

.learningprogram .topdesc {
  font-size: 20px;
  line-height: 1.65;
  color: rgba(249,249,247,0.78);
  max-width: 560px;
  margin: 0 0 32px 0;
  letter-spacing: 0.01em;
}

.learningprogram .topactions {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
}

.learningprogram .btnprimary {
  background: #BFAE4F;
  color: #1a1208;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 16px 32px;
  border-radius: 6px;
  border: 2px solid #BFAE4F;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), color 0.22s cubic-bezier(0.4,0,0.2,1);
  position: relative;
}

.learningprogram .btnprimary::after {
  content: '';
  position: absolute;
  inset: 3px;
  border: 2px solid transparent;
  border-radius: 4px;
  transition: border-color 0.26s cubic-bezier(0.0,0,0.2,1);
  pointer-events: none;
}

.learningprogram .btnprimary:hover {
  background: #d4c35a;
  color: #1a1208;
}

.learningprogram .btnprimary:hover::after {
  border-color: rgba(26,18,8,0.35);
}

.learningprogram .btnsecondary {
  background: transparent;
  color: #F9F9F7;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 16px 32px;
  border-radius: 6px;
  border: 2px solid rgba(249,249,247,0.35);
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  transition: border-color 0.24s cubic-bezier(0.4,0,0.2,1), color 0.24s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .btnsecondary:hover {
  border-color: #BFAE4F;
  color: #BFAE4F;
}

.learningprogram .programsarea {
  max-width: 1320px;
  margin: 0 auto;
  padding: 64px 32px;
}

.learningprogram .arealabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
  margin-bottom: 8px;
}

.learningprogram .areaheading {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #1a1208;
  margin: 0 0 32px 0;
  text-transform: uppercase;
}

.learningprogram .cardgrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

.learningprogram .programcard {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.26s cubic-bezier(0.4,0,0.2,1);
  position: relative;
}

.learningprogram .programcard:hover {
  box-shadow: 0 9px 60px 0 rgba(191,174,79,0.14);
}

.learningprogram .cardcorner {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 52px 52px 0;
  border-color: transparent #BFAE4F transparent transparent;
  z-index: 2;
}

.learningprogram .cardimgwrap {
  width: 100%;
  height: 220px;
  overflow: hidden;
}

.learningprogram .cardimgwrap img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .programcard:hover .cardimgwrap img {
  transform: scale(1.04);
}

.learningprogram .cardbody {
  padding: 32px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 16px;
}

.learningprogram .cardmeta {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.learningprogram .cardtag {
  background: rgba(195,215,164,0.28);
  color: #3a5a1e;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 4px 16px;
  border-radius: 6px;
  border: 1px solid rgba(195,215,164,0.55);
}

.learningprogram .cardlevel {
  background: rgba(191,174,79,0.12);
  color: #7a6a10;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding: 4px 16px;
  border-radius: 6px;
  border: 1px solid rgba(191,174,79,0.25);
}

.learningprogram .cardtitle {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: 0.01em;
  color: #1a1208;
  line-height: 1.4;
  margin: 0;
}

.learningprogram .carddesc {
  font-size: 16px;
  line-height: 1.65;
  color: #3d3820;
  margin: 0;
  letter-spacing: 0.01em;
}

.learningprogram .cardstats {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
}

.learningprogram .statitem {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #5a5232;
  letter-spacing: 0.01em;
}

.learningprogram .statitem i {
  color: #BFAE4F;
  font-size: 14px;
}

.learningprogram .cardprice {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 8px;
  border-top: 1px solid rgba(191,174,79,0.18);
}

.learningprogram .pricevalue {
  font-size: 26px;
  font-weight: 800;
  color: #1a1208;
  letter-spacing: 0.01em;
  line-height: 1.15;
}

.learningprogram .priceterms {
  font-size: 14px;
  color: #7a6a10;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.learningprogram .pricenote {
  font-size: 14px;
  color: #5a5232;
  letter-spacing: 0.01em;
}

.learningprogram .cardseats {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #8a4a10;
  letter-spacing: 0.01em;
}

.learningprogram .cardseats i {
  font-size: 14px;
}

.learningprogram .cardlink {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  background: #BFAE4F;
  color: #1a1208;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 16px 32px;
  border-radius: 6px;
  text-decoration: none;
  margin-top: 8px;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1);
  position: relative;
  align-self: flex-start;
}

.learningprogram .cardlink::after {
  content: '';
  position: absolute;
  inset: 3px;
  border: 2px solid transparent;
  border-radius: 4px;
  transition: border-color 0.26s cubic-bezier(0.0,0,0.2,1);
  pointer-events: none;
}

.learningprogram .cardlink:hover {
  background: #d4c35a;
}

.learningprogram .cardlink:hover::after {
  border-color: rgba(26,18,8,0.3);
}

.learningprogram .cardlink .arrowicon {
  font-size: 14px;
  transition: transform 0.22s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .cardlink:hover .arrowicon {
  transform: translateX(4px);
}

.learningprogram .approachsection {
  background: #2c2410;
  padding: 64px 32px;
  position: relative;
  overflow: hidden;
}

.learningprogram .approachsection::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -80px;
  width: 360px;
  height: 360px;
  background: rgba(191,174,79,0.08);
  clip-path: polygon(30% 0%, 100% 20%, 85% 80%, 10% 100%, 0% 40%);
  pointer-events: none;
}

.learningprogram .approachcontainer {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.learningprogram .approachleft {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.learningprogram .approachlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
}

.learningprogram .approachheading {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #F9F9F7;
  text-transform: uppercase;
  margin: 0;
  line-height: 1.4;
}

.learningprogram .approachtext {
  font-size: 16px;
  line-height: 1.65;
  color: rgba(249,249,247,0.75);
  letter-spacing: 0.01em;
}

.learningprogram .approachtext strong {
  color: #BFAE4F;
  font-weight: 700;
}

.learningprogram .approachright {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.learningprogram .approachstep {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: flex-start;
  padding: 16px;
  border-radius: 6px;
  background: rgba(191,174,79,0.07);
  border: 1px solid rgba(191,174,79,0.15);
  transition: background-color 0.24s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .approachstep:hover {
  background: rgba(191,174,79,0.13);
}

.learningprogram .stepnum {
  font-size: 26px;
  font-weight: 800;
  color: #BFAE4F;
  line-height: 1.15;
  min-width: 32px;
}

.learningprogram .stepcontent {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.learningprogram .steptitle {
  font-size: 16px;
  font-weight: 700;
  color: #F9F9F7;
  letter-spacing: 0.01em;
}

.learningprogram .stepdesc {
  font-size: 14px;
  line-height: 1.65;
  color: rgba(249,249,247,0.65);
  letter-spacing: 0.01em;
}

.learningprogram .testimonialsection {
  padding: 64px 32px;
  background: #F9F9F7;
}

.learningprogram .testimonialcontainer {
  max-width: 1320px;
  margin: 0 auto;
}

.learningprogram .testimonialtop {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 32px;
}

.learningprogram .testimoniallabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
}

.learningprogram .testimonialheading {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #1a1208;
  text-transform: uppercase;
  margin: 0;
}

.learningprogram .testimonialrow {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  align-items: start;
}

.learningprogram .tcard {
  background: #fff;
  border-radius: 18px;
  padding: 32px;
  box-shadow: 0 3px 5px 0 rgba(191,174,79,0.07);
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: box-shadow 0.26s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .tcard:hover {
  box-shadow: 0 7px 28px 0 rgba(191,174,79,0.11);
}

.learningprogram .tquote {
  font-size: 16px;
  line-height: 1.65;
  color: #3d3820;
  letter-spacing: 0.01em;
}

.learningprogram .tperson {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}

.learningprogram .tportrait {
  width: 52px;
  height: 52px;
  overflow: hidden;
  flex-shrink: 0;
}

.learningprogram .tportrait img {
  width: 52px;
  height: 52px;
  object-fit: cover;
  object-position: center;
  display: block;
}

.learningprogram .tname {
  font-size: 16px;
  font-weight: 700;
  color: #1a1208;
  letter-spacing: 0.01em;
}

.learningprogram .trole {
  font-size: 14px;
  color: #7a6a10;
  letter-spacing: 0.01em;
}

.learningprogram .tnoimg {
  width: 52px;
  height: 52px;
  background: rgba(191,174,79,0.18);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.learningprogram .tnoimg i {
  color: #BFAE4F;
  font-size: 20px;
}

.learningprogram .faqsection {
  background: rgba(195,215,164,0.18);
  padding: 64px 32px;
}

.learningprogram .faqcontainer {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 64px;
  align-items: start;
}

.learningprogram .faqleft {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: sticky;
  top: 32px;
}

.learningprogram .faqlabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
}

.learningprogram .faqheading {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #1a1208;
  text-transform: uppercase;
  margin: 0;
  line-height: 1.4;
}

.learningprogram .faqintro {
  font-size: 16px;
  line-height: 1.65;
  color: #3d3820;
  letter-spacing: 0.01em;
}

.learningprogram .faqlist {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.learningprogram .faqitem {
  background: #fff;
  border-radius: 6px;
  border: 1px solid rgba(191,174,79,0.2);
  overflow: hidden;
}

.learningprogram .faqitem summary {
  font-size: 16px;
  font-weight: 700;
  color: #1a1208;
  letter-spacing: 0.01em;
  padding: 16px;
  cursor: pointer;
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  transition: color 0.22s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .faqitem summary::-webkit-details-marker {
  display: none;
}

.learningprogram .faqitem summary:hover {
  color: #7a6a10;
}

.learningprogram .faqitem summary i {
  color: #BFAE4F;
  font-size: 14px;
  flex-shrink: 0;
  transition: transform 0.24s cubic-bezier(0.4,0,0.2,1);
}

.learningprogram .faqitem[open] summary i {
  transform: rotate(180deg);
}

.learningprogram .faqanswer {
  font-size: 16px;
  line-height: 1.65;
  color: #3d3820;
  padding: 0 16px 16px 16px;
  letter-spacing: 0.01em;
}

.learningprogram .slidein {
  opacity: 0;
  animation: slidefade 0.5s cubic-bezier(0.0,0,0.2,1) forwards;
}

.learningprogram .slidein.delay1 { animation-delay: 0.1s; }
.learningprogram .slidein.delay2 { animation-delay: 0.22s; }
.learningprogram .slidein.delay3 { animation-delay: 0.34s; }

@keyframes slidefade {
  from {
    opacity: 0;
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.learningprogram .slideright {
  opacity: 0;
  animation: slidefromright 0.5s cubic-bezier(0.0,0,0.2,1) 0.18s forwards;
}

@keyframes slidefromright {
  from {
    opacity: 0;
    transform: translateX(32px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.learningprogram .slideleft {
  opacity: 0;
  animation: slidefromleft 0.5s cubic-bezier(0.0,0,0.2,1) 0.1s forwards;
}

@keyframes slidefromleft {
  from {
    opacity: 0;
    transform: translateX(-32px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (max-width: 1024px) {
  .learningprogram .cardgrid {
    grid-template-columns: 1fr;
  }
  .learningprogram .approachcontainer {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .learningprogram .testimonialrow {
    grid-template-columns: 1fr 1fr;
  }
  .learningprogram .faqcontainer {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .learningprogram .faqleft {
    position: static;
  }
  .learningprogram .topheading {
    font-size: 50px;
  }
}

@media (max-width: 640px) {
  .learningprogram .topheading {
    font-size: 26px;
  }
  .learningprogram .topdesc {
    font-size: 16px;
  }
  .learningprogram .topactions {
    flex-direction: column;
  }
  .learningprogram .testimonialrow {
    grid-template-columns: 1fr;
  }
  .learningprogram .pagetop {
    padding: 32px 16px;
  }
  .learningprogram .programsarea {
    padding: 32px 16px;
  }
  .learningprogram .approachsection {
    padding: 32px 16px;
  }
  .learningprogram .testimonialsection {
    padding: 32px 16px;
  }
  .learningprogram .faqsection {
    padding: 32px 16px;
  }
  .learningprogram .cardbody {
    padding: 16px;
  }
}

.successPage {
  min-height: 80vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 64px 16px;
  background-color: #F9F9F7;
}

.successPage .successCard {
  max-width: 560px;
  width: 100%;
  background-color: #ffffff;
  border-radius: 18px;
  padding: 64px 32px;
  box-shadow: 0 9px 60px 0 rgba(191, 174, 79, 0.14);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.successPage .successIcon {
  width: 72px;
  height: 72px;
  border-radius: 32px;
  background-color: #C3D7A4;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 32px;
  flex-shrink: 0;
}

.successPage .successIcon svg {
  display: block;
}

.successPage .successLabel {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #BFAE4F;
  margin-bottom: 16px;
  line-height: 1.15;
}

.successPage .successHeading {
  font-size: 26px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: #1b1b14;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.successPage .successText {
  font-size: 16px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #3a3a2e;
  margin-bottom: 32px;
  max-width: 420px;
}

.successPage .successDivider {
  width: 48px;
  height: 3px;
  background-color: #BFAE4F;
  border-radius: 6px;
  margin-bottom: 32px;
}

.successPage .successNote {
  font-size: 14px;
  line-height: 1.65;
  letter-spacing: 0.01em;
  color: #5a5a46;
  margin-bottom: 32px;
  padding: 16px;
  background-color: #F9F9F7;
  border-radius: 6px;
  width: 100%;
}

.successPage .successNote strong {
  color: #3a3a2e;
  font-weight: 700;
}

.successPage .successActions {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
}

.successPage .primaryButton {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  background-color: #BFAE4F;
  color: #1b1b14;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border-radius: 6px;
  text-decoration: none;
  border: 2px solid #BFAE4F;
  cursor: pointer;
  transition: background-color 0.22s cubic-bezier(0.4,0,0.2,1), border-color 0.22s cubic-bezier(0.4,0,0.2,1), color 0.22s cubic-bezier(0.4,0,0.2,1);
  position: relative;
}

.successPage .primaryButton:hover {
  background-color: #a89a3e;
  border-color: #a89a3e;
  color: #ffffff;
}

.successPage .primaryButton:focus {
  outline: 3px solid #BFAE4F;
  outline-offset: 3px;
}

.successPage .secondaryButton {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  background-color: transparent;
  color: #3a3a2e;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border-radius: 6px;
  text-decoration: none;
  border: 2px solid #C3D7A4;
  cursor: pointer;
  transition: background-color 0.26s cubic-bezier(0.0,0,0.2,1), border-color 0.26s cubic-bezier(0.0,0,0.2,1);
}

.successPage .secondaryButton:hover {
  background-color: #C3D7A4;
  border-color: #C3D7A4;
}

.successPage .secondaryButton:focus {
  outline: 3px solid #C3D7A4;
  outline-offset: 3px;
}

@media (max-width: 640px) {
  .successPage {
    padding: 32px 16px;
  }

  .successPage .successCard {
    padding: 32px 16px;
  }

  .successPage .successHeading {
    font-size: 20px;
  }

  .successPage .successActions {
    flex-direction: column;
    width: 100%;
  }

  .successPage .primaryButton,
  .successPage .secondaryButton {
    width: 100%;
    justify-content: center;
  }
}
