@charset "UTF-8";
* {
  box-sizing: border-box;
}
html {
  font-size: 100%;
}
body {
  margin: 0;
  min-height: 100vh;
  font-family: 'Karla', sans-serif;
}

.site_header {
  position: relative;
  background: #ffffff;
  border-bottom: 1px solid #EFF2F3;
}

.header_top_bar {
  background: #1B9A93;
  padding: 8px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

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

.header_contact_item {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #ffffff;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.02em;
  transition: opacity 0.12s cubic-bezier(0.4,0,1,1);
}

.header_contact_item:hover {
  opacity: 0.8;
}

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

.header_contact_item i {
  font-size: 14px;
}

.header_tagline {
  font-size: 14px;
  color: rgba(255,255,255,0.75);
  letter-spacing: 0.04em;
  line-height: 1.5;
}

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

.header_logo_block {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
}

.header_logo_container {
  display: block;
  width: 80px;
  height: 80px;
  border: 1px solid #EFF2F3;
  border-radius: 6px 36px 6px 6px;
  background: #ffffff;
  box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
  overflow: hidden;
  padding: 8px;
}

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

.header_logo_container img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.header_logo_divider {
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #1B9A93 0%, #EFF2F3 100%);
  border-radius: 6px;
}

.header_nav_group {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.header_nav_link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  font-size: 14px;
  font-family: 'Karla', sans-serif;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #2c3e3e;
  text-decoration: none;
  border-radius: 6px;
  transition: background 0.15s cubic-bezier(0.4,0,1,1), color 0.15s cubic-bezier(0.4,0,1,1);
  white-space: nowrap;
  min-height: 44px;
}

.header_nav_link:hover {
  background: #EFF2F3;
  color: #1B9A93;
}

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

.header_nav_link i {
  font-size: 17px;
}

.header_nav_primary {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.header_nav_secondary {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.header_nav_cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  font-size: 14px;
  font-family: 'Karla', sans-serif;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #ffffff;
  background: #2c3e3e;
  text-decoration: none;
  border-radius: 6px;
  border: 2px solid #2c3e3e;
  min-height: 44px;
  transition: transform 0.13s cubic-bezier(0.4,0,1,1), background 0.13s cubic-bezier(0.4,0,1,1);
  white-space: nowrap;
}

.header_nav_cta:hover {
  transform: scale(1.04);
  background: #1B9A93;
  border-color: #1B9A93;
}

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

.header_nav_divider {
  width: 1px;
  height: 24px;
  background: #EFF2F3;
  flex-shrink: 0;
}

.site_footer {
  background: #2c3e3e;
  position: relative;
  overflow: hidden;
}

.footer_accent_bar {
  height: 4px;
  background: linear-gradient(90deg, #1B9A93 0%, #FF6055 50%, #1B9A93 100%);
}

.footer_body {
  max-width: 1320px;
  margin: 0 auto;
  padding: 64px 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}

.footer_tagline_block {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

.footer_topic_label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: rgba(27,154,147,0.15);
  border-radius: 36px;
  font-size: 14px;
  font-weight: 600;
  color: #1B9A93;
  letter-spacing: 0.06em;
  line-height: 1.5;
  text-transform: uppercase;
}

.footer_heading {
  font-size: 29px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.1;
  letter-spacing: -0.01em;
  margin: 0;
}

.footer_heading span {
  color: #FF6055;
}

.footer_description {
  font-size: 17px;
  color: rgba(255,255,255,0.65);
  line-height: 1.9;
  max-width: 520px;
  text-align: center;
  margin: 0;
}

.footer_contact_grid {
  display: flex;
  align-items: center;
  gap: 32px;
  flex-wrap: wrap;
  justify-content: center;
}

.footer_contact_card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  box-shadow: inset 0 2px 8px rgba(27,154,147,0.07);
  text-decoration: none;
  transition: background 0.16s cubic-bezier(0.4,0,1,1), border-color 0.16s cubic-bezier(0.4,0,1,1);
  min-height: 44px;
}

.footer_contact_card:hover {
  background: rgba(27,154,147,0.15);
  border-color: #1B9A93;
}

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

.footer_contact_card i {
  font-size: 17px;
  color: #1B9A93;
  flex-shrink: 0;
}

.footer_contact_text {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.footer_contact_label {
  font-size: 14px;
  color: rgba(255,255,255,0.45);
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-transform: uppercase;
  font-weight: 600;
}

.footer_contact_value {
  font-size: 14px;
  color: #ffffff;
  line-height: 1.5;
  font-weight: 600;
}

.footer_address_item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 16px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 6px;
  box-shadow: inset 0 2px 8px rgba(27,154,147,0.07);
}

.footer_address_item i {
  font-size: 17px;
  color: #FF6055;
  flex-shrink: 0;
  margin-top: 2px;
}

.footer_address_text {
  display: flex;
  flex-direction: column;
}

.footer_address_label {
  font-size: 14px;
  color: rgba(255,255,255,0.45);
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-transform: uppercase;
  font-weight: 600;
}

.footer_address_value {
  font-size: 14px;
  color: #ffffff;
  line-height: 1.5;
  font-weight: 600;
}

.footer_divider {
  width: 100%;
  max-width: 640px;
  height: 1px;
  background: rgba(255,255,255,0.1);
}

.footer_logo_container {
  display: block;
  width: 80px;
  height: 80px;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 48px 6px 48px 6px;
  background: #ffffff;
  box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
  overflow: hidden;
  padding: 8px;
}

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

.footer_logo_container img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.footer_nav_links {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
}

.footer_nav_link {
  font-size: 14px;
  color: rgba(255,255,255,0.5);
  text-decoration: none;
  letter-spacing: 0.03em;
  line-height: 1.5;
  padding: 8px;
  border-radius: 6px;
  transition: color 0.12s cubic-bezier(0.4,0,1,1);
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

.footer_nav_link:hover {
  color: #ffffff;
}

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

.footer_nav_dot {
  width: 4px;
  height: 4px;
  border-radius: 6px;
  background: rgba(255,255,255,0.2);
  flex-shrink: 0;
}

.footer_copyright {
  font-size: 14px;
  color: rgba(255,255,255,0.35);
  line-height: 1.5;
  letter-spacing: 0.03em;
  text-align: center;
}

@media (max-width: 768px) {
  .header_top_bar {
    flex-direction: column;
    gap: 8px;
    padding: 8px 16px;
  }

  .header_top_bar_contact {
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
  }

  .header_tagline {
    display: none;
  }

  .header_main_row {
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
    gap: 16px;
  }

  .header_nav_group {
    width: 100%;
  }

  .header_nav_primary,
  .header_nav_secondary {
    flex-wrap: wrap;
    gap: 8px;
  }

  .header_nav_divider {
    display: none;
  }

  .footer_body {
    padding: 32px 16px;
  }

  .footer_contact_grid {
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }

  .footer_contact_card,
  .footer_address_item {
    width: 100%;
  }
}.legal-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    color: #2a2f35;
}

.legal-container p {
    font-size: 17px;
    line-height: 1.9;
    margin-bottom: 16px;
    letter-spacing: 0.01em;
}

.legal-container ul,
.legal-container ol {
    font-size: 17px;
    line-height: 1.9;
    margin-bottom: 16px;
    padding-left: 32px;
}

.legal-container ul {
    list-style-type: disc;
}

.legal-container ol {
    list-style-type: decimal;
}

.legal-container li {
    margin-bottom: 8px;
    letter-spacing: 0.01em;
}

.legal-container li:last-child {
    margin-bottom: 0;
}

.legal-container ul ul,
.legal-container ol ol,
.legal-container ul ol,
.legal-container ol ul {
    margin-top: 8px;
    margin-bottom: 8px;
}

.legal-container em,
.legal-container i {
    font-style: italic;
    color: #1B9A93;
}

.legal-container a {
    color: #1B9A93;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color 0.12s cubic-bezier(0.4, 0, 1, 1), text-decoration-color 0.15s ease-in;
}

.legal-container a:hover {
    color: #FF6055;
    text-decoration-color: #FF6055;
}

.legal-container a:visited {
    color: #157a74;
}

.legal-container table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 32px;
    font-size: 14px;
    line-height: 1.5;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 3px 4px -2px rgba(27, 154, 147, 0.07), 0 7px 20px -2px rgba(27, 154, 147, 0.11);
}

.legal-container thead {
    background-color: #1B9A93;
    color: #ffffff;
}

.legal-container thead th {
    padding: 16px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: left;
    border: none;
}

.legal-container tbody {
    background-color: #ffffff;
}

.legal-container tbody tr {
    border-bottom: 1px solid #EFF2F3;
    transition: background-color 0.1s cubic-bezier(0.4, 0, 1, 1);
}

.legal-container tbody tr:last-child {
    border-bottom: none;
}

.legal-container tbody tr:hover {
    background-color: #EFF2F3;
}

.legal-container td {
    padding: 16px;
    font-size: 14px;
    line-height: 1.5;
    color: #2a2f35;
    vertical-align: top;
}

.legal-container th {
    padding: 16px;
    vertical-align: top;
}

.legal-container div {
    margin-bottom: 16px;
}

.legal-container div:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .legal-container {
        padding: 32px 16px;
    }

    .legal-container p {
        font-size: 17px;
    }

    .legal-container ul,
    .legal-container ol {
        padding-left: 16px;
    }

    .legal-container table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .legal-container thead th,
    .legal-container td {
        padding: 8px;
        font-size: 14px;
    }
}
.contact-us-page {
    background: #ffffff;
    overflow-x: clip;
}

.contact-us-page .reach-strip {
    background: #1B9A93;
    padding: 16px 32px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
}

.contact-us-page .reach-strip .strip-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.03em;
}

.contact-us-page .reach-strip .strip-item i {
    font-size: 17px;
    opacity: 0.85;
}

.contact-us-page .reach-strip .strip-item a {
    color: #ffffff;
    text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,0.4);
    transition: border-color 0.15s cubic-bezier(0.4,0,1,1);
}

.contact-us-page .reach-strip .strip-item a:hover {
    border-color: #ffffff;
}

.contact-us-page .split-contact {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 600px;
}

.contact-us-page .split-contact .form-side {
    background: #ffffff;
    padding: 64px 64px 64px 32px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    max-width: 660px;
    margin-left: auto;
    width: 100%;
}

.contact-us-page .split-contact .form-side .form-label-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.contact-us-page .split-contact .form-side .form-label-group label {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #3a4a4a;
    font-weight: 600;
}

.contact-us-page .split-contact .form-side .form-label-group input[type="email"],
.contact-us-page .split-contact .form-side .form-label-group input[type="text"],
.contact-us-page .split-contact .form-side .form-label-group select,
.contact-us-page .split-contact .form-side .form-label-group textarea {
    padding: 16px;
    border: 1.5px solid #d0dada;
    border-radius: 6px;
    font-size: 17px;
    line-height: 1.5;
    color: #1a3333;
    background: #ffffff;
    outline: none;
    transition: border-color 0.12s cubic-bezier(0.4,0,1,1), box-shadow 0.12s cubic-bezier(0.4,0,1,1);
    width: 100%;
    box-sizing: border-box;
    appearance: none;
    -webkit-appearance: none;
}

.contact-us-page .split-contact .form-side .form-label-group input::placeholder,
.contact-us-page .split-contact .form-side .form-label-group textarea::placeholder {
    color: #8aabab;
    font-size: 14px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.contact-us-page .split-contact .form-side .form-label-group input:focus,
.contact-us-page .split-contact .form-side .form-label-group select:focus,
.contact-us-page .split-contact .form-side .form-label-group textarea:focus {
    border-color: #1B9A93;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.contact-us-page .split-contact .form-side .form-label-group textarea {
    resize: vertical;
    min-height: 120px;
}

.contact-us-page .split-contact .form-side .form-label-group select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231B9A93' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 48px;
    cursor: pointer;
}

.contact-us-page .split-contact .form-side .conditional-block {
    display: none;
    flex-direction: column;
    gap: 16px;
}

.contact-us-page .split-contact .form-side .topic-select:focus + .conditional-block,
.contact-us-page .split-contact .form-side .show-conditional .conditional-block {
    display: flex;
}

.contact-us-page .split-contact .form-side .topic-wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.contact-us-page .split-contact .form-side .privacy-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    background: #EFF2F3;
    border-radius: 6px;
}

.contact-us-page .split-contact .form-side .privacy-row input[type="checkbox"] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    accent-color: #1B9A93;
    cursor: pointer;
    margin-top: 2px;
}

.contact-us-page .split-contact .form-side .privacy-row .privacy-text {
    font-size: 14px;
    line-height: 1.9;
    color: #3a4a4a;
}

.contact-us-page .split-contact .form-side .privacy-row .privacy-text a {
    color: #1B9A93;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.contact-us-page .split-contact .form-side .submit-btn {
    background: #1a3333;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    padding: 16px 32px;
    font-size: 17px;
    line-height: 1.5;
    letter-spacing: 0.04em;
    cursor: pointer;
    font-weight: 600;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), background 0.1s cubic-bezier(0.4,0,1,1);
    align-self: flex-start;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
    position: relative;
}

.contact-us-page .split-contact .form-side .submit-btn:hover {
    transform: scale(1.04);
    background: #1B9A93;
}

.contact-us-page .split-contact .form-side .submit-btn:focus {
    outline: 2px solid #1B9A93;
    outline-offset: 3px;
}

.contact-us-page .split-contact .form-side .submit-btn:active {
    transform: scale(0.98);
}

.contact-us-page .split-contact .form-side .form-heading {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.contact-us-page .split-contact .form-side .form-heading h1 {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #1a3333;
    font-weight: 800;
    margin: 0;
}

.contact-us-page .split-contact .form-side .form-heading h1 span {
    color: #1B9A93;
}

.contact-us-page .split-contact .form-side .form-heading p {
    font-size: 17px;
    line-height: 1.9;
    color: #4a6060;
    margin: 0;
}

.contact-us-page .split-contact .accent-side {
    background: #1a3333;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 64px 64px 64px 64px;
    overflow: hidden;
}

.contact-us-page .split-contact .accent-side .pulse-rings {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    pointer-events: none;
}

.contact-us-page .split-contact .accent-side .ring {
    position: absolute;
    border-radius: 50%;
    border: 1.5px solid rgba(27,154,147,0.18);
    transform: translate(-50%, -50%);
    animation: ring-expand 3.6s cubic-bezier(0.4,0,1,1) infinite;
}

.contact-us-page .split-contact .accent-side .ring.delay-one {
    animation-delay: 1.2s;
}

.contact-us-page .split-contact .accent-side .ring.delay-two {
    animation-delay: 2.4s;
}

@keyframes ring-expand {
    0% { width: 60px; height: 60px; opacity: 0.7; }
    100% { width: 480px; height: 480px; opacity: 0; }
}

.contact-us-page .split-contact .accent-side .diamond-accent {
    position: absolute;
    top: 32px;
    right: 32px;
    width: 48px;
    height: 48px;
    background: #FF6055;
    transform: rotate(45deg);
    border-radius: 6px;
    opacity: 0.85;
}

.contact-us-page .split-contact .accent-side .metrics-duo {
    display: flex;
    flex-direction: row;
    gap: 32px;
    margin-bottom: 32px;
    position: relative;
    z-index: 1;
}

.contact-us-page .split-contact .accent-side .metrics-duo .metric-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.contact-us-page .split-contact .accent-side .metrics-duo .metric-item .metric-number {
    font-size: 55px;
    line-height: 1.1;
    letter-spacing: -0.03em;
    font-weight: 800;
    color: #1B9A93;
}

.contact-us-page .split-contact .accent-side .metrics-duo .metric-item .metric-label {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
}

.contact-us-page .split-contact .accent-side .accent-text {
    position: relative;
    z-index: 1;
}

.contact-us-page .split-contact .accent-side .accent-text h2 {
    font-size: 29px;
    line-height: 1.1;
    letter-spacing: -0.01em;
    color: #ffffff;
    font-weight: 700;
    margin: 0 0 16px 0;
}

.contact-us-page .split-contact .accent-side .accent-text p {
    font-size: 17px;
    line-height: 1.9;
    color: rgba(255,255,255,0.65);
    margin: 0;
}

.contact-us-page .split-contact .accent-side .tag-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 32px;
    position: relative;
    z-index: 1;
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: rgba(27,154,147,0.1);
    border-radius: 6px;
    border-left: 3px solid #1B9A93;
    border-top: 1px solid rgba(27,154,147,0.2);
    transition: background 0.13s cubic-bezier(0.4,0,1,1);
    position: relative;
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry:hover {
    background: rgba(27,154,147,0.18);
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry .tag-hover-label {
    position: absolute;
    right: -8px;
    top: 50%;
    transform: translateY(-50%) translateX(8px);
    background: #FF6055;
    color: #ffffff;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 4px 8px;
    border-radius: 6px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.11s cubic-bezier(0.4,0,1,1), transform 0.11s cubic-bezier(0.4,0,1,1);
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry:hover .tag-hover-label,
.contact-us-page .split-contact .accent-side .tag-list .tag-entry:focus-within .tag-hover-label {
    opacity: 1;
    transform: translateY(-50%) translateX(0);
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry i {
    font-size: 22px;
    color: #1B9A93;
    flex-shrink: 0;
}

.contact-us-page .split-contact .accent-side .tag-list .tag-entry .tag-text {
    font-size: 14px;
    line-height: 1.5;
    color: rgba(255,255,255,0.8);
}

.contact-us-page .arrows-divider {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px 32px;
    background: #EFF2F3;
}

.contact-us-page .arrows-divider .arrow-unit {
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 12px solid #1B9A93;
    opacity: 0.3;
    transition: opacity 0.1s cubic-bezier(0.4,0,1,1);
}

.contact-us-page .arrows-divider .arrow-unit.mid {
    opacity: 0.6;
    border-left-color: #1B9A93;
}

.contact-us-page .arrows-divider .arrow-unit.strong {
    opacity: 1;
    border-left-color: #FF6055;
}

.contact-us-page .address-strip {
    background: #EFF2F3;
    padding: 64px 32px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
}

.contact-us-page .address-strip .address-block {
    max-width: 1320px;
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 32px;
    align-items: start;
}

.contact-us-page .address-strip .address-block .address-primary {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.contact-us-page .address-strip .address-block .address-primary .address-eyebrow {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #1B9A93;
    font-weight: 700;
}

.contact-us-page .address-strip .address-block .address-primary h3 {
    font-size: 29px;
    line-height: 1.1;
    letter-spacing: -0.01em;
    color: #1a3333;
    font-weight: 800;
    margin: 0;
}

.contact-us-page .address-strip .address-block .address-primary .physical-address {
    font-size: 17px;
    line-height: 1.9;
    color: #4a6060;
    margin: 0;
}

.contact-us-page .address-strip .address-block .contact-detail-card {
    background: #ffffff;
    border-radius: 6px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    transition: box-shadow 0.13s cubic-bezier(0.4,0,1,1);
}

.contact-us-page .address-strip .address-block .contact-detail-card:hover {
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.contact-us-page .address-strip .address-block .contact-detail-card .card-icon {
    width: 40px;
    height: 40px;
    background: #1B9A93;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact-us-page .address-strip .address-block .contact-detail-card .card-icon i {
    font-size: 22px;
    color: #ffffff;
}

.contact-us-page .address-strip .address-block .contact-detail-card .card-label {
    font-size: 14px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #8aabab;
    font-weight: 600;
}

.contact-us-page .address-strip .address-block .contact-detail-card .card-value {
    font-size: 17px;
    line-height: 1.5;
    color: #1a3333;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.1s cubic-bezier(0.4,0,1,1);
}

.contact-us-page .address-strip .address-block .contact-detail-card .card-value:hover {
    color: #1B9A93;
}

@media (max-width: 900px) {
    .contact-us-page .split-contact {
        grid-template-columns: 1fr;
    }

    .contact-us-page .split-contact .form-side {
        padding: 64px 32px;
        max-width: 100%;
        margin-left: 0;
    }

    .contact-us-page .split-contact .accent-side {
        padding: 64px 32px;
        min-height: 400px;
    }

    .contact-us-page .address-strip .address-block {
        grid-template-columns: 1fr;
    }

    .contact-us-page .split-contact .form-side .form-heading h1 {
        font-size: 29px;
    }

    .contact-us-page .split-contact .accent-side .metrics-duo .metric-item .metric-number {
        font-size: 40px;
    }
}

@media (max-width: 600px) {
    .contact-us-page .reach-strip {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }

    .contact-us-page .split-contact .form-side {
        padding: 32px 16px;
    }

    .contact-us-page .split-contact .accent-side {
        padding: 32px 16px;
    }

    .contact-us-page .address-strip {
        padding: 32px 16px;
    }
}

.events_page {
    background: #ffffff;
    overflow-x: clip;
}

.events_page .slide_left {
    animation: slideFromLeft 0.16s cubic-bezier(0.4,0,1,1) both;
}

.events_page .slide_right {
    animation: slideFromRight 0.16s cubic-bezier(0.4,0,1,1) both;
}

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

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

.events_page .pitch_area {
    background: #ffffff;
    padding: 64px 32px;
    position: relative;
}

.events_page .pitch_area::after {
    content: '';
    display: block;
    position: absolute;
    bottom: -32px;
    left: 0;
    right: 0;
    height: 64px;
    background: #ffffff;
    border-radius: 0 0 48px 48px;
    z-index: 1;
}

.events_page .pitch_inner {
    max-width: 1320px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr 2fr;
    gap: 32px;
    align-items: start;
}

.events_page .pitch_label {
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #1B9A93;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.events_page .pitch_label svg {
    flex-shrink: 0;
}

.events_page .pitch_heading {
    font-size: 55px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111827;
    margin-bottom: 16px;
    position: relative;
}

.events_page .pitch_heading .faded_mark {
    position: absolute;
    top: -16px;
    left: -8px;
    font-size: 70px;
    color: #1B9A93;
    opacity: 0.07;
    line-height: 1;
    pointer-events: none;
    user-select: none;
    z-index: 0;
}

.events_page .pitch_heading span {
    position: relative;
    z-index: 1;
}

.events_page .pitch_tagline {
    font-size: 17px;
    line-height: 1.9;
    color: #374151;
    margin-bottom: 32px;
}

.events_page .pitch_actions {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
}

.events_page .btn_primary {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    background: #111827;
    color: #ffffff;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), box-shadow 0.12s cubic-bezier(0.4,0,1,1);
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.events_page .btn_primary:hover {
    transform: scale(1.04);
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.events_page .btn_outline {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #111827;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    border: 2px solid #111827;
    cursor: pointer;
    transition: transform 0.14s cubic-bezier(0.4,0,1,1);
}

.events_page .btn_outline:hover {
    transform: scale(1.04);
}

.events_page .pitch_meta_col {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.events_page .pitch_stat {
    background: #EFF2F3;
    border-radius: 6px;
    padding: 32px;
    box-shadow: inset 0 3px 4px -2px rgba(27,154,147,0.07);
}

.events_page .pitch_stat_number {
    font-size: 40px;
    line-height: 1.1;
    color: #1B9A93;
    letter-spacing: -0.02em;
    margin-bottom: 8px;
}

.events_page .pitch_stat_label {
    font-size: 14px;
    color: #374151;
    line-height: 1.5;
}

.events_page .pitch_image_col {
    position: relative;
    border-radius: 6px;
    overflow: hidden;
}

.events_page .pitch_image_col img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 6px;
    transition: border 0.13s cubic-bezier(0.4,0,1,1);
    border: 3px solid transparent;
}

.events_page .pitch_image_col:hover img {
    border-color: #1B9A93;
}

.events_page .pitch_dashed_frame {
    position: absolute;
    inset: 8px;
    border: 2px dashed rgba(27,154,147,0.35);
    border-radius: 6px;
    pointer-events: none;
    z-index: 2;
}

.events_page .timeline_area {
    background: #EFF2F3;
    padding: 64px 32px;
    margin-top: 32px;
    position: relative;
}

.events_page .timeline_area::before {
    content: '';
    display: block;
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    height: 60px;
    background: radial-gradient(ellipse 60% 100% at 50% 0%, #EFF2F3 60%, transparent 100%);
    pointer-events: none;
}

.events_page .timeline_inner {
    max-width: 1320px;
    margin: 0 auto;
}

.events_page .timeline_top {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 64px;
    gap: 32px;
    flex-wrap: wrap;
}

.events_page .timeline_heading_block {
    position: relative;
}

.events_page .timeline_faded_num {
    position: absolute;
    top: -16px;
    left: -8px;
    font-size: 70px;
    color: #FF6055;
    opacity: 0.08;
    line-height: 1;
    pointer-events: none;
    user-select: none;
}

.events_page .timeline_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111827;
    position: relative;
    z-index: 1;
}

.events_page .timeline_sub {
    font-size: 17px;
    line-height: 1.5;
    color: #374151;
    max-width: 480px;
}

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

.events_page .timeline_line {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #1B9A93, #FF6055);
    z-index: 0;
}

.events_page .timeline_point {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
}

.events_page .timeline_dot {
    width: 40px;
    height: 40px;
    border-radius: 48px;
    background: #ffffff;
    border: 3px solid #1B9A93;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    flex-shrink: 0;
    transition: background 0.13s cubic-bezier(0.4,0,1,1), border-color 0.13s cubic-bezier(0.4,0,1,1);
}

.events_page .timeline_point:hover .timeline_dot {
    background: #1B9A93;
}

.events_page .timeline_point:hover .timeline_dot svg {
    color: #ffffff;
}

.events_page .timeline_dot svg {
    color: #1B9A93;
    transition: color 0.13s cubic-bezier(0.4,0,1,1);
}

.events_page .timeline_card {
    background: #ffffff;
    border-radius: 6px;
    padding: 16px;
    width: 100%;
    max-width: 180px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    text-align: center;
    position: relative;
    overflow: hidden;
}

.events_page .timeline_card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        135deg,
        transparent,
        transparent 12px,
        rgba(27,154,147,0.06) 12px,
        rgba(27,154,147,0.06) 14px
    );
    opacity: 0;
    transition: opacity 0.15s cubic-bezier(0.4,0,1,1);
    pointer-events: none;
    border-radius: 6px;
}

.events_page .timeline_card:hover::after {
    opacity: 1;
}

.events_page .timeline_date {
    font-size: 14px;
    color: #1B9A93;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 8px;
}

.events_page .timeline_title {
    font-size: 14px;
    line-height: 1.5;
    color: #111827;
    font-weight: 600;
    margin-bottom: 8px;
}

.events_page .timeline_detail {
    font-size: 14px;
    line-height: 1.5;
    color: #374151;
}

.events_page .speakers_area {
    background: #ffffff;
    padding: 64px 32px;
    position: relative;
}

.events_page .speakers_area::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #FF6055, #1B9A93);
}

.events_page .speakers_inner {
    max-width: 1320px;
    margin: 0 auto;
}

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

.events_page .speakers_text_side {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.events_page .speakers_heading_block {
    position: relative;
}

.events_page .speakers_faded {
    position: absolute;
    top: -8px;
    left: -8px;
    font-size: 70px;
    color: #1B9A93;
    opacity: 0.06;
    line-height: 1;
    pointer-events: none;
    user-select: none;
}

.events_page .speakers_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111827;
    position: relative;
    z-index: 1;
    margin-bottom: 16px;
}

.events_page .speakers_intro {
    font-size: 17px;
    line-height: 1.9;
    color: #374151;
}

.events_page .program_table {
    width: 100%;
    border-collapse: collapse;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.events_page .program_table thead tr {
    background: #111827;
    color: #ffffff;
}

.events_page .program_table thead th {
    font-size: 14px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 16px;
    text-align: left;
}

.events_page .program_table tbody tr {
    border-bottom: 1px solid #EFF2F3;
    transition: background 0.12s cubic-bezier(0.4,0,1,1);
    position: relative;
}

.events_page .program_table tbody tr:hover {
    background: #EFF2F3;
}

.events_page .program_table tbody td {
    font-size: 14px;
    line-height: 1.5;
    color: #374151;
    padding: 16px;
    vertical-align: top;
}

.events_page .program_table tbody td.time_col {
    color: #1B9A93;
    font-weight: 600;
    white-space: nowrap;
}

.events_page .program_table tbody td.topic_col {
    color: #111827;
    font-weight: 600;
}

.events_page .check_item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 8px;
    font-size: 17px;
    line-height: 1.5;
    color: #374151;
}

.events_page .check_icon {
    flex-shrink: 0;
    margin-top: 2px;
}

.events_page .check_icon.positive {
    color: #1B9A93;
}

.events_page .check_icon.negative {
    color: #FF6055;
}

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

.events_page .portrait_pair {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.events_page .portrait_card {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start;
    background: #EFF2F3;
    border-radius: 6px;
    padding: 16px;
    box-shadow: inset 0 3px 4px -2px rgba(27,154,147,0.07);
    position: relative;
    overflow: hidden;
}

.events_page .portrait_card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        135deg,
        transparent,
        transparent 14px,
        rgba(255,96,85,0.05) 14px,
        rgba(255,96,85,0.05) 16px
    );
    opacity: 0;
    transition: opacity 0.15s cubic-bezier(0.4,0,1,1);
    pointer-events: none;
    border-radius: 6px;
}

.events_page .portrait_card:hover::after {
    opacity: 1;
}

.events_page .portrait_img_wrap {
    flex-shrink: 0;
    border-radius: 36px;
    overflow: hidden;
    border: 3px solid transparent;
    transition: border-color 0.13s cubic-bezier(0.4,0,1,1);
}

.events_page .portrait_card:hover .portrait_img_wrap {
    border-color: #1B9A93;
}

.events_page .portrait_img_wrap img {
    width: 80px;
    height: 112px;
    object-fit: cover;
    object-position: center;
    display: block;
    aspect-ratio: 5/7;
}

.events_page .portrait_bio {
    flex: 1;
}

.events_page .portrait_name {
    font-size: 17px;
    line-height: 1.5;
    color: #111827;
    font-weight: 700;
    margin-bottom: 8px;
}

.events_page .portrait_role {
    font-size: 14px;
    color: #1B9A93;
    letter-spacing: 0.04em;
    margin-bottom: 8px;
}

.events_page .portrait_desc {
    font-size: 14px;
    line-height: 1.5;
    color: #374151;
}

.events_page .offer_strip {
    background: #111827;
    padding: 32px;
    border-radius: 6px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
    margin-top: 32px;
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
}

.events_page .offer_text {
    flex: 1;
}

.events_page .offer_price {
    font-size: 40px;
    line-height: 1.1;
    color: #1B9A93;
    letter-spacing: -0.02em;
    margin-bottom: 8px;
}

.events_page .offer_desc {
    font-size: 14px;
    color: #9ca3af;
    line-height: 1.5;
}

.events_page .btn_light {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    color: #111827;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.11s cubic-bezier(0.4,0,1,1), box-shadow 0.11s cubic-bezier(0.4,0,1,1);
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    white-space: nowrap;
}

.events_page .btn_light:hover {
    transform: scale(1.04);
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

@media (max-width: 1024px) {
    .events_page .pitch_inner {
        grid-template-columns: 1fr 1fr;
    }
    .events_page .pitch_image_col {
        grid-column: 1 / -1;
    }
    .events_page .pitch_image_col img {
        aspect-ratio: 16/7;
    }
}

@media (max-width: 768px) {
    .events_page .pitch_inner {
        grid-template-columns: 1fr;
    }
    .events_page .pitch_heading {
        font-size: 40px;
    }
    .events_page .pitch_image_col img {
        aspect-ratio: 1/1;
    }
    .events_page .timeline_track {
        flex-direction: column;
        align-items: flex-start;
        gap: 32px;
    }
    .events_page .timeline_line {
        display: none;
    }
    .events_page .timeline_point {
        flex-direction: row;
        align-items: flex-start;
        gap: 16px;
        width: 100%;
    }
    .events_page .timeline_card {
        max-width: 100%;
        text-align: left;
    }
    .events_page .timeline_dot {
        margin-bottom: 0;
    }
    .events_page .speakers_grid {
        grid-template-columns: 1fr;
    }
    .events_page .timeline_heading {
        font-size: 29px;
    }
    .events_page .speakers_heading {
        font-size: 29px;
    }
    .events_page .offer_strip {
        flex-direction: column;
        align-items: flex-start;
    }
}

.entry {
    background: #ffffff;
    overflow-x: clip;
}

.entry .title_row {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 64px;
    max-width: 1320px;
    margin: 0 auto;
    padding: 48px 32px 80px;
    align-items: end;
    position: relative;
}

.entry .title_noise {
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
    background-size: 200px 200px;
    pointer-events: none;
    border-radius: 6px;
}

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

.entry .title_label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #EFF2F3;
    border: 1px solid rgba(27,154,147,0.2);
    border-radius: 6px;
    padding: 8px 16px;
    width: fit-content;
}

.entry .title_label span {
    font-size: 14px;
    color: #1B9A93;
    letter-spacing: 0.06em;
    font-weight: 600;
    text-transform: uppercase;
}

.entry .title_label i {
    color: #1B9A93;
    font-size: 14px;
}

.entry .title_heading {
    font-size: 55px;
    line-height: 1.1;
    letter-spacing: -0.03em;
    color: #111820;
    font-weight: 800;
    margin: 0;
}

.entry .title_heading em {
    font-style: normal;
    color: #1B9A93;
}

.entry .title_quote {
    font-size: 17px;
    line-height: 1.5;
    color: #3a4a52;
    margin: 0;
    max-width: 560px;
    padding-left: 16px;
    border-left: 3px solid #FF6055;
}

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

.entry .btn_primary {
    background: #111820;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    padding: 16px 32px;
    font-size: 17px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), box-shadow 0.12s cubic-bezier(0.4,0,1,1);
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.entry .btn_primary:hover {
    transform: scale(1.04);
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
}

.entry .btn_secondary {
    color: #111820;
    text-decoration: none;
    font-size: 17px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: color 0.15s ease-in;
}

.entry .btn_secondary:hover {
    color: #1B9A93;
}

.entry .title_image_col {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
}

.entry .title_image_wrap {
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 48px;
    overflow: hidden;
    opacity: 0.55;
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
    border: 2px solid rgba(27,154,147,0.15);
}

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

.entry .conditions_band {
    background: #EFF2F3;
    padding: 64px 32px;
    position: relative;
}

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

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

.entry .conditions_eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .conditions_eyebrow i {
    color: #FF6055;
    font-size: 17px;
}

.entry .conditions_eyebrow span {
    font-size: 14px;
    color: #FF6055;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.entry .conditions_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    font-weight: 800;
    margin: 0;
}

.entry .conditions_sub {
    font-size: 17px;
    line-height: 1.5;
    color: #3a4a52;
    margin: 0;
}

.entry .conditions_list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.entry .conditions_list li {
    background: #ffffff;
    border-radius: 6px;
    padding: 32px;
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 16px;
    align-items: start;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    border: 1px solid rgba(27,154,147,0.1);
    transition: box-shadow 0.16s cubic-bezier(0.4,0,1,1);
}

.entry .conditions_list li:hover {
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.entry .cond_num {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #111820;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    font-weight: 800;
    flex-shrink: 0;
}

.entry .cond_text_block {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.entry .cond_title {
    font-size: 17px;
    font-weight: 700;
    color: #111820;
    margin: 0;
}

.entry .cond_desc {
    font-size: 14px;
    line-height: 1.9;
    color: #3a4a52;
    margin: 0;
}

.entry .approach_band {
    background: #111820;
    padding: 64px 32px;
    position: relative;
    overflow: hidden;
}

.entry .approach_glow {
    position: absolute;
    top: -64px;
    right: -64px;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: rgba(27,154,147,0.08);
    pointer-events: none;
}

.entry .approach_inner {
    max-width: 1320px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.entry .approach_top {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 64px;
    align-items: center;
}

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

.entry .approach_eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .approach_eyebrow i {
    color: #1B9A93;
    font-size: 17px;
}

.entry .approach_eyebrow span {
    font-size: 14px;
    color: #1B9A93;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.entry .approach_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #ffffff;
    font-weight: 800;
    margin: 0;
}

.entry .approach_heading em {
    font-style: normal;
    color: #1B9A93;
}

.entry .approach_intro {
    font-size: 17px;
    line-height: 1.5;
    color: #9ab0b8;
    margin: 0;
}

.entry .approach_image_wrap {
    aspect-ratio: 1/1;
    border-radius: 36px;
    overflow: hidden;
    border: 1px solid rgba(27,154,147,0.2);
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
}

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

.entry .approach_pillars {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.entry .pillar_card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(27,154,147,0.18);
    border-radius: 6px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: relative;
    transition: background 0.14s ease-in, border-color 0.14s ease-in;
}

.entry .pillar_card:hover {
    background: rgba(27,154,147,0.08);
    border-color: rgba(27,154,147,0.4);
}

.entry .pillar_card.accent_border {
    border-top: 3px solid #1B9A93;
}

.entry .pillar_icon {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background: rgba(27,154,147,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
}

.entry .pillar_icon i {
    color: #1B9A93;
    font-size: 22px;
}

.entry .pillar_name {
    font-size: 17px;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
}

.entry .pillar_text {
    font-size: 14px;
    line-height: 1.9;
    color: #9ab0b8;
    margin: 0;
}

.entry .audience_band {
    background: #ffffff;
    padding: 64px 32px;
}

.entry .audience_inner {
    max-width: 1320px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.entry .audience_header {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 640px;
}

.entry .audience_eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .audience_eyebrow i {
    color: #FF6055;
    font-size: 17px;
}

.entry .audience_eyebrow span {
    font-size: 14px;
    color: #FF6055;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.entry .audience_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    font-weight: 800;
    margin: 0;
}

.entry .audience_desc {
    font-size: 17px;
    line-height: 1.5;
    color: #3a4a52;
    margin: 0;
}

.entry .audience_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

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

.entry .audience_fits_heading {
    font-size: 22px;
    font-weight: 700;
    color: #111820;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .audience_fits_heading i {
    color: #1B9A93;
}

.entry .fit_item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    border-radius: 6px;
    background: #EFF2F3;
    border: 1px solid transparent;
    transition: border-color 0.13s ease-in;
}

.entry .fit_item:hover {
    border-color: rgba(27,154,147,0.25);
}

.entry .fit_dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1B9A93;
    flex-shrink: 0;
    margin-top: 6px;
}

.entry .fit_text {
    font-size: 14px;
    line-height: 1.9;
    color: #3a4a52;
    margin: 0;
}

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

.entry .audience_nofits_heading {
    font-size: 22px;
    font-weight: 700;
    color: #111820;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .audience_nofits_heading i {
    color: #FF6055;
}

.entry .nofit_item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    border-radius: 6px;
    background: #fff5f4;
    border: 1px solid transparent;
    transition: border-color 0.13s ease-in;
}

.entry .nofit_item:hover {
    border-color: rgba(255,96,85,0.3);
}

.entry .nofit_dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FF6055;
    flex-shrink: 0;
    margin-top: 6px;
}

.entry .nofit_text {
    font-size: 14px;
    line-height: 1.9;
    color: #3a4a52;
    margin: 0;
}

.entry .audience_image_row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: center;
}

.entry .audience_side_image {
    aspect-ratio: 1/1;
    border-radius: 36px;
    overflow: hidden;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

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

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

.entry .audience_side_text p {
    font-size: 17px;
    line-height: 1.5;
    color: #3a4a52;
    margin: 0;
}

.entry .experience_band {
    background: linear-gradient(160deg, #EFF2F3 0%, #ffffff 100%);
    padding: 64px 32px;
    border-top: 1px solid rgba(27,154,147,0.1);
}

.entry .experience_inner {
    max-width: 1320px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.entry .experience_header {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 580px;
}

.entry .experience_eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
}

.entry .experience_eyebrow i {
    color: #1B9A93;
    font-size: 17px;
}

.entry .experience_eyebrow span {
    font-size: 14px;
    color: #1B9A93;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.entry .experience_heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    font-weight: 800;
    margin: 0;
}

.entry .experience_cards {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 32px;
    align-items: start;
}

.entry .experience_main_card {
    background: #ffffff;
    border-radius: 48px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    box-shadow: inset 0 3px 4px -2px rgba(27,154,147,0.07), 0 7px 20px -2px rgba(27,154,147,0.11);
    border: 1px solid rgba(27,154,147,0.12);
    animation: border_glow 3.5s cubic-bezier(0.4,0,1,1) infinite alternate;
}

@keyframes border_glow {
    0% { border-color: rgba(27,154,147,0.12); }
    100% { border-color: rgba(27,154,147,0.45); }
}

.entry .experience_quote_row {
    display: flex;
    flex-direction: row;
    gap: 32px;
    align-items: flex-start;
}

.entry .experience_portrait {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    border: 2px solid rgba(27,154,147,0.25);
}

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

.entry .experience_quote_body {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.entry .experience_quote_text {
    font-size: 17px;
    line-height: 1.5;
    color: #111820;
    margin: 0;
    font-style: italic;
}

.entry .experience_quote_name {
    font-size: 14px;
    font-weight: 700;
    color: #1B9A93;
    margin: 0;
}

.entry .experience_quote_role {
    font-size: 14px;
    color: #3a4a52;
    margin: 0;
}

.entry .experience_detail_row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.entry .experience_detail {
    background: #EFF2F3;
    border-radius: 6px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.entry .experience_detail_label {
    font-size: 14px;
    color: #3a4a52;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
}

.entry .experience_detail_value {
    font-size: 22px;
    font-weight: 800;
    color: #111820;
    margin: 0;
}

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

.entry .experience_second_card {
    background: #ffffff;
    border-radius: 36px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: inset 0 3px 4px -2px rgba(255,96,85,0.07), 0 3px 4px -2px rgba(27,154,147,0.07);
    border: 1px solid rgba(27,154,147,0.1);
}

.entry .experience_second_portrait {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid rgba(255,96,85,0.2);
}

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

.entry .experience_second_text {
    font-size: 14px;
    line-height: 1.9;
    color: #3a4a52;
    margin: 0;
    font-style: italic;
}

.entry .experience_second_name {
    font-size: 14px;
    font-weight: 700;
    color: #FF6055;
    margin: 0;
}

.entry .experience_second_role {
    font-size: 14px;
    color: #3a4a52;
    margin: 0;
}

@media (max-width: 1024px) {
    .entry .title_row {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .entry .title_image_col {
        display: none;
    }
    .entry .conditions_inner {
        grid-template-columns: 1fr;
    }
    .entry .approach_top {
        grid-template-columns: 1fr;
    }
    .entry .approach_pillars {
        grid-template-columns: 1fr 1fr;
    }
    .entry .audience_grid {
        grid-template-columns: 1fr;
    }
    .entry .audience_image_row {
        grid-template-columns: 1fr;
    }
    .entry .experience_cards {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .entry .title_heading {
        font-size: 40px;
    }
    .entry .conditions_heading,
    .entry .approach_heading,
    .entry .audience_heading,
    .entry .experience_heading {
        font-size: 29px;
    }
    .entry .approach_pillars {
        grid-template-columns: 1fr;
    }
    .entry .experience_detail_row {
        grid-template-columns: 1fr 1fr;
    }
    .entry .experience_quote_row {
        flex-direction: column;
    }
    .entry .title_actions {
        flex-direction: column;
        align-items: flex-start;
    }
    .entry .conditions_band,
    .entry .approach_band,
    .entry .audience_band,
    .entry .experience_band {
        padding: 32px 16px;
    }
    .entry .title_row {
        padding: 32px 16px 64px;
    }
}

.learning-program {
    background: #ffffff;
    overflow-x: clip;
    position: relative;
}

.learning-program .program-above {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 64px;
    align-items: start;
}

.learning-program .program-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #1B9A93;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.learning-program .program-label svg {
    flex-shrink: 0;
}

.learning-program .program-h1 {
    font-size: 55px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    margin: 0 0 16px;
}

.learning-program .program-h1 span {
    color: #1B9A93;
}

.learning-program .program-sub {
    font-size: 17px;
    line-height: 1.9;
    color: #3a4550;
    margin: 0 0 32px;
    max-width: 560px;
}

.learning-program .program-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #111820;
    color: #ffffff;
    font-size: 17px;
    font-weight: 600;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), background 0.15s ease-in;
}

.learning-program .program-action:hover {
    transform: scale(1.045);
    background: #1B9A93;
}

.learning-program .program-action:focus-visible {
    outline: 3px solid #1B9A93;
    outline-offset: 3px;
}

.learning-program .aside-panel {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 8px;
}

.learning-program .aside-stat {
    background: #EFF2F3;
    border-radius: 6px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.learning-program .aside-stat-number {
    font-size: 40px;
    font-weight: 800;
    color: #111820;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.learning-program .aside-stat-number span {
    color: #1B9A93;
}

.learning-program .aside-stat-desc {
    font-size: 14px;
    color: #4a5560;
    line-height: 1.5;
}

.learning-program .blob-group {
    position: absolute;
    top: 32px;
    right: 0;
    pointer-events: none;
    overflow: hidden;
    width: 320px;
    height: 320px;
    z-index: 0;
}

.learning-program .blob-one {
    position: absolute;
    width: 200px;
    height: 200px;
    background: rgba(27,154,147,0.08);
    border-radius: 48px;
    top: 32px;
    right: 32px;
    filter: blur(40px);
}

.learning-program .blob-two {
    position: absolute;
    width: 120px;
    height: 120px;
    background: rgba(255,96,85,0.07);
    border-radius: 48px;
    top: 80px;
    right: 140px;
    filter: blur(30px);
}

.learning-program .program-above-left {
    position: relative;
    z-index: 1;
}

.learning-program .scanline-band {
    position: relative;
    overflow: hidden;
}

.learning-program .scanline-band::before {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        180deg,
        transparent 0px,
        transparent 6px,
        rgba(27,154,147,0.025) 6px,
        rgba(27,154,147,0.025) 7px
    );
    animation: scanlines-drift 14s linear infinite;
    pointer-events: none;
    z-index: 0;
}

@keyframes scanlines-drift {
    from { background-position: 0 0; }
    to { background-position: 0 56px; }
}

.learning-program .structure-band {
    background: #EFF2F3;
    position: relative;
}

.learning-program .structure-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    position: relative;
    z-index: 1;
}

.learning-program .structure-top {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 32px;
}

.learning-program .structure-heading {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    margin: 0;
    position: relative;
}

.learning-program .structure-heading .faded-num {
    position: absolute;
    left: -16px;
    top: -8px;
    font-size: 70px;
    font-weight: 900;
    color: rgba(27,154,147,0.07);
    line-height: 1.1;
    pointer-events: none;
    letter-spacing: -0.03em;
    z-index: 0;
}

.learning-program .structure-heading-text {
    position: relative;
    z-index: 1;
}

.learning-program .structure-note {
    font-size: 14px;
    color: #4a5560;
    line-height: 1.5;
    max-width: 280px;
    text-align: right;
}

.learning-program .modules-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.learning-program .module-row {
    background: #ffffff;
    border-radius: 6px;
    padding: 16px 32px;
    display: grid;
    grid-template-columns: 48px 1fr auto;
    align-items: center;
    gap: 16px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    transition: box-shadow 0.15s ease-in, transform 0.12s cubic-bezier(0.4,0,1,1);
}

.learning-program .module-row:hover {
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
    transform: translateX(4px);
}

.learning-program .module-index {
    font-size: 22px;
    font-weight: 800;
    color: #1B9A93;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.learning-program .module-name {
    font-size: 17px;
    font-weight: 600;
    color: #111820;
    line-height: 1.5;
}

.learning-program .module-tag {
    font-size: 14px;
    color: #4a5560;
    background: #EFF2F3;
    border-radius: 6px;
    padding: 8px 16px;
    white-space: nowrap;
}

.learning-program .dots-group {
    position: absolute;
    bottom: 32px;
    right: 32px;
    pointer-events: none;
    z-index: 0;
}

.learning-program .dots-group span {
    display: block;
    border-radius: 48px;
    background: rgba(27,154,147,0.18);
    position: absolute;
}

.learning-program .dot-a { width: 10px; height: 10px; top: 0; left: 0; }
.learning-program .dot-b { width: 6px; height: 6px; top: 14px; left: 14px; background: rgba(255,96,85,0.22) !important; }
.learning-program .dot-c { width: 14px; height: 14px; top: -4px; left: 20px; }
.learning-program .dot-d { width: 8px; height: 8px; top: 20px; left: -4px; background: rgba(255,96,85,0.15) !important; }

.learning-program .brushstroke-divider {
    display: block;
    width: 100%;
    height: 32px;
    overflow: hidden;
    line-height: 0;
}

.learning-program .brushstroke-divider svg {
    display: block;
    width: 100%;
    height: 32px;
}

.learning-program .team-band {
    background: #111820;
    position: relative;
}

.learning-program .team-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 64px;
    align-items: start;
}

.learning-program .team-left {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.learning-program .team-label {
    font-size: 14px;
    font-weight: 600;
    color: #1B9A93;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;
}

.learning-program .team-h2 {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #ffffff;
    margin: 0;
    position: relative;
}

.learning-program .team-h2 .faded-num {
    position: absolute;
    left: -8px;
    top: -8px;
    font-size: 70px;
    font-weight: 900;
    color: rgba(255,255,255,0.04);
    line-height: 1.1;
    pointer-events: none;
    z-index: 0;
}

.learning-program .team-h2-text {
    position: relative;
    z-index: 1;
}

.learning-program .team-desc {
    font-size: 17px;
    line-height: 1.9;
    color: #a8b4bc;
    margin: 0;
}

.learning-program .team-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.learning-program .trainer-card {
    background: rgba(255,255,255,0.04);
    border-radius: 6px;
    padding: 16px;
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start;
    box-shadow: inset 0 2px 8px rgba(27,154,147,0.07);
    transition: background 0.15s ease-in;
}

.learning-program .trainer-card:hover {
    background: rgba(27,154,147,0.08);
}

.learning-program .trainer-portrait {
    width: 80px;
    height: 112px;
    flex-shrink: 0;
    border-radius: 6px;
    overflow: hidden;
}

.learning-program .trainer-portrait img {
    width: 80px;
    height: 112px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.learning-program .trainer-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.learning-program .trainer-name {
    font-size: 17px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.5;
    margin: 0;
}

.learning-program .trainer-role {
    font-size: 14px;
    color: #1B9A93;
    font-weight: 600;
    line-height: 1.5;
}

.learning-program .trainer-bio {
    font-size: 14px;
    color: #8a9aa4;
    line-height: 1.5;
    margin: 0;
}

.learning-program .practical-band {
    background: #ffffff;
    position: relative;
}

.learning-program .practical-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 32px;
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 64px;
    align-items: start;
}

.learning-program .practical-left {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.learning-program .practical-h2 {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    margin: 0;
    position: relative;
}

.learning-program .practical-h2 .faded-num {
    position: absolute;
    left: -16px;
    top: -8px;
    font-size: 70px;
    font-weight: 900;
    color: rgba(27,154,147,0.06);
    line-height: 1.1;
    pointer-events: none;
    z-index: 0;
}

.learning-program .practical-h2-text {
    position: relative;
    z-index: 1;
}

.learning-program .practical-label {
    font-size: 14px;
    font-weight: 600;
    color: #1B9A93;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.learning-program .detail-rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.learning-program .detail-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    padding: 16px;
    border-radius: 6px;
    background: #EFF2F3;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.learning-program .detail-icon {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background: #111820;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #1B9A93;
    font-size: 22px;
}

.learning-program .detail-label {
    font-size: 14px;
    color: #4a5560;
    line-height: 1.5;
}

.learning-program .detail-value {
    font-size: 17px;
    font-weight: 700;
    color: #111820;
    line-height: 1.5;
}

.learning-program .practical-right {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.learning-program .image-showcase {
    border-radius: 6px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 1/1;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
}

.learning-program .image-showcase img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 8s linear;
    animation: slow-zoom 16s ease-in-out infinite alternate;
}

@keyframes slow-zoom {
    from { transform: scale(1); }
    to { transform: scale(1.06); }
}

.learning-program .image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, rgba(27,154,147,0.18) 0%, rgba(255,255,255,0) 60%);
    pointer-events: none;
}

.learning-program .price-card {
    background: #111820;
    border-radius: 6px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
}

.learning-program .price-card-label {
    font-size: 14px;
    font-weight: 600;
    color: #1B9A93;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.learning-program .price-amount {
    font-size: 55px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.1;
    letter-spacing: -0.03em;
}

.learning-program .price-amount span {
    font-size: 22px;
    font-weight: 400;
    color: #8a9aa4;
    letter-spacing: 0;
}

.learning-program .price-desc {
    font-size: 14px;
    color: #8a9aa4;
    line-height: 1.5;
}

.learning-program .price-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #1B9A93;
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), background 0.13s ease-in;
}

.learning-program .price-cta:hover {
    transform: scale(1.04);
    background: #13807a;
}

.learning-program .price-cta:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 3px;
}

.learning-program .price-divider {
    height: 1px;
    background: rgba(255,255,255,0.08);
}

.learning-program .price-includes {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.learning-program .price-include-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #a8b4bc;
    line-height: 1.5;
}

.learning-program .price-include-item svg {
    flex-shrink: 0;
    color: #1B9A93;
}

.learning-program .dots-group-right {
    position: absolute;
    top: 64px;
    right: 32px;
    pointer-events: none;
    z-index: 0;
}

.learning-program .dots-group-right span {
    display: block;
    border-radius: 48px;
    background: rgba(27,154,147,0.14);
    position: absolute;
}

.learning-program .dot-r-a { width: 12px; height: 12px; top: 0; left: 0; }
.learning-program .dot-r-b { width: 7px; height: 7px; top: 18px; left: 18px; background: rgba(255,96,85,0.18) !important; }
.learning-program .dot-r-c { width: 16px; height: 16px; top: -6px; left: 24px; }

@media (max-width: 1024px) {
    .learning-program .program-above {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 32px 16px;
    }
    .learning-program .aside-panel {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 16px;
    }
    .learning-program .structure-top {
        flex-direction: column;
        align-items: flex-start;
    }
    .learning-program .structure-note {
        text-align: left;
    }
    .learning-program .team-inner {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 32px 16px;
    }
    .learning-program .team-grid {
        grid-template-columns: 1fr;
    }
    .learning-program .practical-inner {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 32px 16px;
    }
    .learning-program .structure-inner {
        padding: 32px 16px;
    }
}

@media (max-width: 640px) {
    .learning-program .program-h1 {
        font-size: 40px;
    }
    .learning-program .aside-panel {
        grid-template-columns: 1fr;
    }
    .learning-program .module-row {
        grid-template-columns: 40px 1fr;
        padding: 16px;
    }
    .learning-program .module-tag {
        display: none;
    }
    .learning-program .team-grid {
        grid-template-columns: 1fr;
    }
    .learning-program .price-amount {
        font-size: 40px;
    }
}

.about-us-page {
    background: #ffffff;
    overflow-x: clip;
}

.about-us-page .identity-block {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 64px 32px 64px;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 64px;
    align-items: start;
    position: relative;
}

.about-us-page .identity-text {
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding-top: 32px;
}

.about-us-page .identity-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #1B9A93;
    font-weight: 600;
    text-transform: uppercase;
}

.about-us-page .identity-label svg {
    flex-shrink: 0;
}

.about-us-page .identity-heading {
    font-size: 55px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #1a2e2d;
    font-weight: 800;
    margin: 0;
}

.about-us-page .identity-heading .accent-line {
    color: #1B9A93;
    display: block;
}

.about-us-page .identity-heading .secondary-line {
    color: #FF6055;
    display: block;
    font-size: 40px;
    font-weight: 700;
}

.about-us-page .identity-body {
    font-size: 17px;
    line-height: 1.9;
    color: #2c3e3d;
    margin: 0;
    max-width: 540px;
}

.about-us-page .identity-shapes {
    position: absolute;
    left: 40px;
    top: 40px;
    pointer-events: none;
    overflow: hidden;
}

.about-us-page .image-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.about-us-page .image-card-frame {
    aspect-ratio: 1/1;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
    position: relative;
}

.about-us-page .image-card-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: grayscale(100%);
    display: block;
}

.about-us-page .image-card-frame::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, rgba(27,154,147,0.18) 0%, rgba(255,255,255,0) 70%);
    pointer-events: none;
}

.about-us-page .image-badge {
    background: #1B9A93;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    letter-spacing: 0.04em;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.about-us-page .shape-circle {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 3px solid rgba(27,154,147,0.15);
    position: absolute;
    top: -20px;
    left: -20px;
}

.about-us-page .shape-rect {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background: rgba(255,96,85,0.1);
    position: absolute;
    bottom: 80px;
    right: -10px;
    transform: rotate(18deg);
}

.about-us-page .zigzag-divider {
    width: 100%;
    line-height: 0;
    overflow: hidden;
}

.about-us-page .zigzag-divider svg {
    display: block;
    width: 100%;
}

.about-us-page .depth-block {
    background: #EFF2F3;
    position: relative;
    overflow: hidden;
}

.about-us-page .depth-block-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 64px 64px 64px 64px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: start;
    position: relative;
    z-index: 1;
}

.about-us-page .depth-left {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.about-us-page .depth-heading-wrap {
    position: relative;
}

.about-us-page .depth-bg-number {
    font-size: 70px;
    font-weight: 900;
    color: rgba(27,154,147,0.07);
    line-height: 1.1;
    position: absolute;
    top: -16px;
    left: -8px;
    letter-spacing: -0.04em;
    user-select: none;
    pointer-events: none;
}

.about-us-page .depth-heading {
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #1a2e2d;
    font-weight: 700;
    margin: 0;
    position: relative;
}

.about-us-page .depth-heading em {
    font-style: normal;
    color: #1B9A93;
}

.about-us-page .depth-paragraph {
    font-size: 17px;
    line-height: 1.9;
    color: #2c3e3d;
    margin: 0;
}

.about-us-page .metrics-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.about-us-page .metric-card {
    background: #ffffff;
    border-radius: 6px;
    padding: 32px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
    box-shadow: inset 0 2px 8px rgba(27,154,147,0.06), 0 3px 4px -2px rgba(27,154,147,0.07);
    transition: box-shadow 0.15s cubic-bezier(0.4,0,1,1);
    border-top: 3px solid #1B9A93;
}

.about-us-page .metric-card:nth-child(2) {
    border-top-color: #FF6055;
}

.about-us-page .metric-card:nth-child(3) {
    border-top-color: #FF6055;
}

.about-us-page .metric-card:nth-child(4) {
    border-top-color: #1B9A93;
}

.about-us-page .metric-card:hover {
    box-shadow: inset 0 2px 8px rgba(27,154,147,0.06), 0 8px 40px -2px rgba(27,154,147,0.11);
}

.about-us-page .metric-value {
    font-size: 40px;
    line-height: 1.1;
    font-weight: 800;
    color: #1a2e2d;
    letter-spacing: -0.02em;
}

.about-us-page .metric-label {
    font-size: 14px;
    line-height: 1.5;
    color: #4a6462;
    font-weight: 500;
    letter-spacing: 0.03em;
}

.about-us-page .depth-right {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.about-us-page .team-card {
    background: #ffffff;
    border-radius: 6px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: 0 7px 20px -2px rgba(27,154,147,0.11);
    position: relative;
    top: 0;
    transition: top 0.12s cubic-bezier(0.4,0,1,1), box-shadow 0.12s cubic-bezier(0.4,0,1,1);
}

.about-us-page .team-card:hover {
    top: -4px;
    box-shadow: 0 8px 40px -2px rgba(27,154,147,0.11);
}

.about-us-page .team-person {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: center;
}

.about-us-page .team-portrait {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    border: 2px solid rgba(27,154,147,0.25);
}

.about-us-page .team-portrait img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.about-us-page .team-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.about-us-page .team-name {
    font-size: 17px;
    font-weight: 700;
    color: #1a2e2d;
    line-height: 1.5;
}

.about-us-page .team-role {
    font-size: 14px;
    color: #1B9A93;
    font-weight: 500;
    letter-spacing: 0.04em;
}

.about-us-page .team-quote {
    font-size: 17px;
    line-height: 1.9;
    color: #2c3e3d;
    margin: 0;
    padding-left: 16px;
    border-left: 3px solid #EFF2F3;
    border-bottom: 1px solid #EFF2F3;
    border-right: 1px solid #EFF2F3;
    border-radius: 0 6px 6px 0;
    padding: 16px;
    background: #EFF2F3;
}

.about-us-page .image-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    margin-top: 16px;
}

.about-us-page .image-row-item {
    aspect-ratio: 1/1;
    border-radius: 6px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 3px 4px -2px rgba(27,154,147,0.07);
}

.about-us-page .image-row-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.18s cubic-bezier(0.4,0,1,1);
}

.about-us-page .image-row-item:hover img {
    transform: scale(1.04);
}

.about-us-page .image-row-item::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(27,154,147,0.12) 0%, rgba(255,96,85,0.08) 100%);
    pointer-events: none;
}

.about-us-page .icon-pair {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    justify-content: center;
    color: #1B9A93;
}

.about-us-page .flip-reveal {
    animation: flipIn 0.16s cubic-bezier(0.4,0,1,1) both;
}

@keyframes flipIn {
    from {
        transform: rotateX(-60deg) scale(0.95);
        opacity: 0;
    }
    to {
        transform: rotateX(0deg) scale(1);
        opacity: 1;
    }
}

.about-us-page .depth-block-deco {
    position: absolute;
    right: -40px;
    top: 50%;
    transform: translateY(-50%);
    width: 200px;
    height: 200px;
    border-radius: 50%;
    border: 40px solid rgba(27,154,147,0.05);
    pointer-events: none;
}

.about-us-page .icon-accent {
    color: #1B9A93;
    font-size: 22px;
    display: flex;
    align-items: center;
}

.about-us-page .value-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.about-us-page .value-list li {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start;
}

.about-us-page .value-icon {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    background: rgba(27,154,147,0.1);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1B9A93;
    margin-top: 4px;
}

.about-us-page .value-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.about-us-page .value-title {
    font-size: 17px;
    font-weight: 700;
    color: #1a2e2d;
    line-height: 1.5;
}

.about-us-page .value-desc {
    font-size: 14px;
    line-height: 1.9;
    color: #4a6462;
    margin: 0;
}

@media (max-width: 1024px) {
    .about-us-page .identity-block {
        grid-template-columns: 1fr;
        padding: 64px 32px 32px 32px;
        gap: 32px;
    }
    .about-us-page .image-card {
        max-width: 360px;
    }
    .about-us-page .depth-block-inner {
        grid-template-columns: 1fr;
        padding: 64px 32px;
        gap: 32px;
    }
}

@media (max-width: 768px) {
    .about-us-page .identity-block {
        padding: 32px 16px 16px 16px;
        gap: 32px;
    }
    .about-us-page .identity-heading {
        font-size: 40px;
    }
    .about-us-page .identity-heading .secondary-line {
        font-size: 29px;
    }
    .about-us-page .depth-block-inner {
        padding: 32px 16px;
    }
    .about-us-page .metrics-grid {
        grid-template-columns: 1fr 1fr;
    }
    .about-us-page .image-row {
        grid-template-columns: 1fr 1fr;
    }
    .about-us-page .image-row-item:last-child {
        display: none;
    }
    .about-us-page .depth-heading {
        font-size: 29px;
    }
}

@media (max-width: 480px) {
    .about-us-page .metrics-grid {
        grid-template-columns: 1fr;
    }
    .about-us-page .image-row {
        grid-template-columns: 1fr;
    }
    .about-us-page .image-row-item:last-child {
        display: block;
    }
}

.success_page {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 32px;
    background-color: #EFF2F3;
}

.success_page .confirmation_card {
    background: #ffffff;
    border-radius: 48px;
    padding: 64px;
    max-width: 600px;
    width: 100%;
    box-shadow: 0 7px 20px -2px rgba(27, 154, 147, 0.11);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    text-align: center;
}

.success_page .confirmation_card .icon_wrapper {
    width: 80px;
    height: 80px;
    border-radius: 36px;
    background: #EFF2F3;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 3px 4px -2px rgba(27, 154, 147, 0.07);
    flex-shrink: 0;
}

.success_page .confirmation_card .icon_wrapper svg {
    display: block;
}

.success_page .confirmation_card .card_heading {
    font-size: 29px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #111820;
    margin: 0;
    font-weight: 700;
}

.success_page .confirmation_card .card_heading span {
    color: #1B9A93;
}

.success_page .confirmation_card .card_body {
    font-size: 17px;
    line-height: 1.5;
    color: #2e3d44;
    margin: 0;
    max-width: 440px;
}

.success_page .confirmation_card .divider_line {
    width: 64px;
    height: 3px;
    background: #1B9A93;
    border-radius: 6px;
    flex-shrink: 0;
}

.success_page .confirmation_card .detail_row {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.success_page .confirmation_card .detail_row .detail_item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 1.5;
    color: #3a4d55;
    background: #EFF2F3;
    border-radius: 6px;
    padding: 8px 16px;
}

.success_page .confirmation_card .detail_row .detail_item svg {
    flex-shrink: 0;
    color: #1B9A93;
}

.success_page .confirmation_card .action_link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #111820;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.04em;
    font-weight: 600;
    padding: 16px 32px;
    border-radius: 6px;
    text-decoration: none;
    transition: transform 0.12s cubic-bezier(0.4,0,1,1), box-shadow 0.15s cubic-bezier(0.4,0,1,1);
    box-shadow: 0 3px 4px -2px rgba(27, 154, 147, 0.07);
}

.success_page .confirmation_card .action_link:hover {
    transform: scale(1.04);
    box-shadow: 0 7px 20px -2px rgba(27, 154, 147, 0.11);
}

.success_page .confirmation_card .action_link:focus-visible {
    outline: 2px solid #1B9A93;
    outline-offset: 3px;
}

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

    .success_page .confirmation_card {
        padding: 32px 16px;
        border-radius: 36px;
        gap: 16px;
    }

    .success_page .confirmation_card .card_heading {
        font-size: 22px;
    }

    .success_page .confirmation_card .card_body {
        font-size: 14px;
    }
}

.page_not_found {
    min-height: 80vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 32px;
    background-color: #ffffff;
    position: relative;
    overflow: hidden;
}

.page_not_found .background_numeral {
    position: absolute;
    font-size: 320px;
    font-weight: 900;
    color: #EFF2F3;
    line-height: 1.1;
    letter-spacing: -0.04em;
    user-select: none;
    pointer-events: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
    white-space: nowrap;
}

.page_not_found .content_block {
    position: relative;
    z-index: 1;
    max-width: 1320px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    text-align: center;
}

.page_not_found .content_block .status_badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #EFF2F3;
    color: #1B9A93;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 8px 16px;
    border-radius: 6px;
    box-shadow: 0 3px 4px -2px rgba(27, 154, 147, 0.07);
}

.page_not_found .content_block .status_badge .badge_dot {
    width: 8px;
    height: 8px;
    border-radius: 48px;
    background-color: #FF6055;
    flex-shrink: 0;
}

.page_not_found .content_block .main_heading {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #181f20;
    margin: 0;
    max-width: 560px;
}

.page_not_found .content_block .main_heading .accent_word {
    color: #1B9A93;
}

.page_not_found .content_block .description_text {
    font-size: 17px;
    line-height: 1.5;
    color: #3d4f51;
    max-width: 420px;
    margin: 0;
}

.page_not_found .content_block .divider_line {
    width: 48px;
    height: 3px;
    background: linear-gradient(90deg, #1B9A93, #FF6055);
    border-radius: 6px;
    flex-shrink: 0;
}

.page_not_found .content_block .navigation_options {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    align-items: center;
}

.page_not_found .content_block .navigation_options .primary_link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #181f20;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 16px 32px;
    border-radius: 6px;
    box-shadow: 0 7px 20px -2px rgba(27, 154, 147, 0.11);
    transition: transform 0.12s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.15s ease-in;
}

.page_not_found .content_block .navigation_options .primary_link:hover {
    transform: scale(1.04);
    box-shadow: 0 8px 40px -2px rgba(27, 154, 147, 0.11);
}

.page_not_found .content_block .navigation_options .primary_link:focus-visible {
    outline: 3px solid #1B9A93;
    outline-offset: 3px;
}

.page_not_found .content_block .navigation_options .secondary_link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: transparent;
    color: #181f20;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-decoration: none;
    padding: 16px 32px;
    border-radius: 6px;
    border: 2px solid #EFF2F3;
    transition: border-color 0.13s ease-in, background-color 0.13s ease-in, transform 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.page_not_found .content_block .navigation_options .secondary_link:hover {
    border-color: #1B9A93;
    background-color: #EFF2F3;
    transform: scale(1.03);
}

.page_not_found .content_block .navigation_options .secondary_link:focus-visible {
    outline: 3px solid #1B9A93;
    outline-offset: 3px;
}

.page_not_found .content_block .quick_links_row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-top: 8px;
}

.page_not_found .content_block .quick_links_row .quick_link_item {
    font-size: 14px;
    color: #1B9A93;
    text-decoration: none;
    padding: 8px 16px;
    border-radius: 36px;
    background-color: #EFF2F3;
    font-weight: 500;
    letter-spacing: 0.02em;
    transition: background-color 0.11s ease-in, color 0.11s ease-in;
}

.page_not_found .content_block .quick_links_row .quick_link_item:hover {
    background-color: #1B9A93;
    color: #ffffff;
}

.page_not_found .content_block .quick_links_row .quick_link_item:focus-visible {
    outline: 3px solid #1B9A93;
    outline-offset: 2px;
}

@media (max-width: 600px) {
    .page_not_found {
        padding: 64px 16px;
    }

    .page_not_found .background_numeral {
        font-size: 180px;
    }

    .page_not_found .content_block .main_heading {
        font-size: 29px;
    }

    .page_not_found .content_block .navigation_options {
        flex-direction: column;
        width: 100%;
    }

    .page_not_found .content_block .navigation_options .primary_link,
    .page_not_found .content_block .navigation_options .secondary_link {
        width: 100%;
        justify-content: center;
    }
}
