@import url('https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/400.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/500.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/600.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/700.css');

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

html {
font-size: 100%;
}

body {
margin: 0;
min-height: 100vh;
font-family: 'Cabin', sans-serif;
}

.page-header {
position: relative;
background-color: #001C48;
overflow: visible;
}

.header-top-strip {
background-color: #C52534;
padding: 6px 24px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 24px;
}

.header-contact-link {
color: #ECE3C4;
font-size: 14px;
font-weight: 500;
line-height: 1.5;
text-decoration: none;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.header-contact-link:hover,
.header-contact-link:focus {
color: #ffffff;
opacity: 0.85;
outline: none;
background-color: transparent;
}

.header-contact-link:focus {
background-color: rgba(236, 227, 196, 0.15);
border-radius: 3px;
}

.header-body {
max-width: 1280px;
margin: 0 auto;
padding: 24px 24px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}

.brand-mark {
display: flex;
align-items: center;
flex-shrink: 0;
padding: 6px;
border: 2px solid rgba(236, 227, 196, 0.35);
border-radius: 3px;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07), 0 4px 18px 0 rgba(197, 37, 52, 0.09);
background-color: transparent;
text-decoration: none;
}

.brand-mark:focus {
outline: none;
background-color: rgba(236, 227, 196, 0.12);
}

.brand-logo {
display: block;
width: 46px;
height: 46px;
object-fit: contain;
opacity: 0;
transition: opacity 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.brand-logo.loaded {
opacity: 1;
}

.primary-navigation {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 6px;
list-style: none;
margin: 0;
padding: 0;
}

.primary-navigation>li {
position: relative;
}

.primary-navigation>li>a {
display: flex;
align-items: center;
gap: 6px;
padding: 12px 16px;
color: #ECE3C4;
font-size: 16px;
font-weight: 600;
line-height: 1.2;
text-decoration: none;
border-radius: 3px;
border: 1px solid transparent;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
white-space: nowrap;
min-height: 44px;
}

.primary-navigation>li>a:hover {
color: #ffffff;
border-color: rgba(236, 227, 196, 0.3);
background-color: rgba(236, 227, 196, 0.08);
}

.primary-navigation>li>a:focus {
outline: none;
background-color: rgba(197, 37, 52, 0.18);
border-color: #C52534;
color: #ffffff;
}

.nav-has-sub>a::after {
content: '';
display: inline-block;
width: 6px;
height: 6px;
border-right: 2px solid currentColor;
border-bottom: 2px solid currentColor;
transform: rotate(45deg) translateY(-2px);
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nav-has-sub:hover>a::after,
.nav-has-sub:focus-within>a::after {
transform: rotate(-135deg) translateY(-2px);
}

.submenu-dropdown {
position: absolute;
top: calc(100% + 6px);
left: 0;
min-width: 240px;
background-color: #ffffff;
border-radius: 3px;
border: 1px solid rgba(0, 28, 72, 0.12);
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09), 0 10px 48px 0 rgba(0, 28, 72, 0.14);
list-style: none;
margin: 0;
padding: 6px;
opacity: 0;
pointer-events: none;
visibility: hidden;
transition: opacity 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), visibility 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
z-index: 1000;
}

.nav-has-sub:hover .submenu-dropdown,
.nav-has-sub:focus-within .submenu-dropdown {
opacity: 1;
pointer-events: auto;
visibility: visible;
}

.submenu-dropdown li a {
display: block;
padding: 12px 16px;
color: #001C48;
font-size: 14px;
font-weight: 500;
line-height: 1.5;
text-decoration: none;
border-radius: 3px;
transition: background-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
align-items: center;
display: flex;
}

.submenu-dropdown li a:hover {
background-color: #ECE3C4;
color: #001C48;
}

.submenu-dropdown li a:focus {
outline: none;
background-color: rgba(197, 37, 52, 0.1);
color: #C52534;
}

.header-accent-bar {
height: 4px;
background: linear-gradient(90deg, #C52534 0%, #ECE3C4 60%, #001C48 100%);
}

.page-footer {
background-color: #001C48;
padding-top: 48px;
}

.footer-logo-row {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px 48px;
display: flex;
align-items: flex-start;
gap: 48px;
flex-wrap: wrap;
border-bottom: 1px solid rgba(236, 227, 196, 0.15);
}

.footer-brand {
display: flex;
flex-direction: column;
gap: 12px;
flex-shrink: 0;
}

.footer-brand-link {
display: inline-flex;
align-items: center;
padding: 6px;
border: 2px solid rgba(236, 227, 196, 0.3);
border-radius: 3px;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07);
text-decoration: none;
background-color: transparent;
width: fit-content;
}

.footer-brand-link:focus {
outline: none;
background-color: rgba(236, 227, 196, 0.1);
}

.footer-logo-image {
display: block;
width: 46px;
height: 46px;
object-fit: contain;
opacity: 0;
transition: opacity 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer-logo-image.loaded {
opacity: 1;
}

.footer-tagline {
color: rgba(236, 227, 196, 0.7);
font-size: 14px;
font-weight: 400;
line-height: 1.75;
margin: 0;
max-width: 220px;
}

.footer-columns {
display: flex;
flex-wrap: wrap;
gap: 48px;
flex: 1;
}

.footer-column {
display: flex;
flex-direction: column;
gap: 12px;
min-width: 160px;
}

.footer-column-heading {
color: #ECE3C4;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
text-transform: uppercase;
letter-spacing: 0.05em;
margin: 0 0 6px;
}

.footer-column-description {
color: rgba(236, 227, 196, 0.55);
font-size: 14px;
font-weight: 400;
line-height: 1.75;
margin: 0 0 6px;
}

.footer-nav-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px;
}

.footer-nav-list li a {
color: rgba(236, 227, 196, 0.75);
font-size: 14px;
font-weight: 500;
line-height: 1.5;
text-decoration: none;
border-radius: 3px;
padding: 2px 0;
display: inline-block;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer-nav-list li a:hover {
color: #ECE3C4;
}

.footer-nav-list li a:focus {
outline: none;
color: #C52534;
background-color: rgba(197, 37, 52, 0.1);
padding: 2px 6px;
}

.footer-contact-block {
display: flex;
flex-direction: column;
gap: 6px;
}

.footer-contact-item {
color: rgba(236, 227, 196, 0.75);
font-size: 14px;
font-weight: 400;
line-height: 1.75;
text-decoration: none;
display: block;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer-contact-item:hover {
color: #ECE3C4;
}

.footer-contact-item:focus {
outline: none;
color: #C52534;
background-color: rgba(197, 37, 52, 0.1);
border-radius: 3px;
padding: 0 6px;
}

.footer-bottom {
background-color: rgba(0, 0, 0, 0.2);
padding: 24px;
}

.footer-bottom-inner {
max-width: 1280px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 12px;
}

.footer-copyright {
color: rgba(236, 227, 196, 0.5);
font-size: 14px;
font-weight: 400;
line-height: 1.5;
margin: 0;
}

.footer-legal-links {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 24px;
}

.footer-legal-links li a {
color: rgba(236, 227, 196, 0.5);
font-size: 14px;
font-weight: 400;
line-height: 1.5;
text-decoration: none;
border-radius: 3px;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer-legal-links li a:hover {
color: #ECE3C4;
}

.footer-legal-links li a:focus {
outline: none;
color: #C52534;
background-color: rgba(197, 37, 52, 0.1);
padding: 0 6px;
}

.consent-popup {
display: none;
position: fixed;
bottom: 24px;
left: 0;
right: 0;
margin: 0 auto;
width: 560px;
max-width: calc(100vw - 48px);
background-color: #ffffff;
border-radius: 28px;
border: 1px solid rgba(0, 28, 72, 0.12);
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
z-index: 4000;
padding: 24px;
transform: translateY(-24px);
opacity: 0;
transition: transform 0.38s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.38s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.consent-popup.visible {
transform: translateY(0);
opacity: 1;
}

.consent-popup.hiding {
transform: translateY(-24px);
opacity: 0;
}

.consent-description {
color: #001C48;
font-size: 14px;
font-weight: 400;
line-height: 1.75;
margin: 0 0 6px;
}

.consent-uses {
color: #001C48;
font-size: 14px;
font-weight: 400;
line-height: 1.75;
margin: 0 0 12px;
padding-left: 16px;
}

.consent-popup-headline {
color: #001C48;
font-size: 16px;
font-weight: 700;
line-height: 1.2;
margin: 0 0 12px;
}

.consent-toggles {
display: none;
flex-direction: column;
gap: 12px;
margin-bottom: 12px;
}

.consent-toggles.open {
display: flex;
}

.consent-toggle-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}

.consent-toggle-label {
color: #001C48;
font-size: 14px;
font-weight: 500;
line-height: 1.5;
}

.consent-toggle-input {
width: 36px;
height: 20px;
cursor: pointer;
accent-color: #C52534;
}

.consent-buttons {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: center;
margin-top: 12px;
}

.consent-accept-button {
padding: 12px 24px;
background-color: #C52534;
color: #ffffff;
font-family: 'Cabin', sans-serif;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
border: 2px solid #C52534;
border-radius: 3px;
cursor: pointer;
min-height: 44px;
transition: filter 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.consent-accept-button:hover {
filter: brightness(1.12);
}

.consent-accept-button:focus {
outline: none;
background-color: rgba(197, 37, 52, 0.85);
}

.consent-reject-button {
padding: 12px 24px;
background-color: transparent;
color: #001C48;
font-family: 'Cabin', sans-serif;
font-size: 14px;
font-weight: 600;
line-height: 1.2;
border: 2px solid #001C48;
border-radius: 3px;
cursor: pointer;
min-height: 44px;
transition: filter 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.consent-reject-button:hover {
filter: brightness(0.9);
background-color: rgba(0, 28, 72, 0.06);
}

.consent-reject-button:focus {
outline: none;
background-color: rgba(0, 28, 72, 0.1);
}

.consent-settings-link {
color: #C52534;
font-size: 14px;
font-weight: 500;
line-height: 1.5;
text-decoration: underline;
cursor: pointer;
background: none;
border: none;
padding: 0;
font-family: 'Cabin', sans-serif;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
display: inline-flex;
align-items: center;
}

.consent-settings-link:hover {
color: #001C48;
}

.consent-settings-link:focus {
outline: none;
background-color: rgba(197, 37, 52, 0.1);
border-radius: 3px;
padding: 0 6px;
}

@media (max-width: 768px) {
.header-body {
flex-wrap: wrap;
padding: 12px 24px;
gap: 12px;
}

.primary-navigation {
gap: 6px;
}

.primary-navigation>li>a {
font-size: 14px;
padding: 12px 12px;
}

.footer-logo-row {
flex-direction: column;
gap: 24px;
}

.footer-columns {
gap: 24px;
}

.footer-bottom-inner {
flex-direction: column;
align-items: flex-start;
}
}

@media (max-width: 480px) {
.header-top-strip {
justify-content: center;
flex-wrap: wrap;
gap: 12px;
}

.primary-navigation {
flex-wrap: wrap;
}

.submenu-dropdown {
left: auto;
right: 0;
}

.footer-columns {
flex-direction: column;
gap: 24px;
}

.consent-buttons {
flex-direction: column;
align-items: stretch;
}

.consent-accept-button,
.consent-reject-button {
width: 100%;
text-align: center;
}
}

@media (min-width: 1440px) {
.header-body {
padding: 24px 48px;
}

.footer-logo-row {
padding: 0 48px 48px;
}

.footer-bottom {
padding: 24px 48px;
}

.footer-bottom-inner {
padding: 0;
}
}

.policy-container {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px;
}

.policy-container h1 {
font-size: 50px;
line-height: 1.2;
color: #001C48;
margin-bottom: 24px;
margin-top: 0;
}

.policy-container h2 {
font-size: 36px;
line-height: 1.2;
color: #001C48;
margin-top: 48px;
margin-bottom: 24px;
}

.policy-container h3 {
font-size: 26px;
line-height: 1.5;
color: #001C48;
margin-top: 48px;
margin-bottom: 12px;
}

.policy-container h4 {
font-size: 20px;
line-height: 1.5;
color: #001C48;
margin-top: 24px;
margin-bottom: 12px;
}

.policy-container h5 {
font-size: 16px;
line-height: 1.5;
color: #001C48;
margin-top: 24px;
margin-bottom: 12px;
}

.policy-container h6 {
font-size: 14px;
line-height: 1.75;
color: #C52534;
margin-top: 24px;
margin-bottom: 6px;
text-transform: uppercase;
}

.policy-container p {
font-size: 16px;
line-height: 1.75;
color: #001C48;
margin-top: 0;
margin-bottom: 24px;
max-width: 72ch;
}

.policy-container ul {
margin-top: 0;
margin-bottom: 24px;
padding-left: 24px;
list-style: none;
}

.policy-container ol {
margin-top: 0;
margin-bottom: 24px;
padding-left: 24px;
list-style: none;
counter-reset: policy-counter;
}

.policy-container ul li {
font-size: 16px;
line-height: 1.75;
color: #001C48;
margin-bottom: 6px;
padding-left: 12px;
position: relative;
max-width: 72ch;
}

.policy-container ul li::before {
content: "";
position: absolute;
left: 0;
top: 12px;
width: 5px;
height: 5px;
background-color: #C52534;
border-radius: 50%;
transform: translateY(-50%);
}

.policy-container ol li {
font-size: 16px;
line-height: 1.75;
color: #001C48;
margin-bottom: 6px;
padding-left: 12px;
position: relative;
max-width: 72ch;
counter-increment: policy-counter;
}

.policy-container ol li::before {
content: counter(policy-counter) ".";
position: absolute;
left: -12px;
top: 0;
font-size: 14px;
line-height: 1.75;
color: #C52534;
font-weight: 700;
}

.policy-container em,
.policy-container i {
font-style: italic;
color: inherit;
}

.policy-container a {
color: #C52534;
text-decoration: underline;
text-underline-offset: 3px;
text-decoration-thickness: 1px;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), text-decoration-color 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.policy-container a:hover {
color: #001C48;
text-decoration-color: #001C48;
}

.policy-container a:focus-visible {
outline: 2px solid #C52534;
outline-offset: 2px;
border-radius: 3px;
}

.policy-container table {
width: 100%;
border-collapse: collapse;
margin-bottom: 48px;
font-size: 14px;
line-height: 1.75;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
border-radius: 3px;
overflow: hidden;
}

.policy-container thead {
background-color: #001C48;
}

.policy-container thead th {
color: #ECE3C4;
font-size: 14px;
line-height: 1.5;
font-weight: 700;
padding: 12px 24px;
text-align: left;
border-bottom: none;
}

.policy-container tbody tr {
border-bottom: 1px solid #ECE3C4;
transition: background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

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

.policy-container tbody tr:nth-child(even) {
background-color: rgba(236, 227, 196, 0.22);
}

.policy-container tbody tr:hover {
background-color: rgba(236, 227, 196, 0.45);
}

.policy-container td {
color: #001C48;
font-size: 14px;
line-height: 1.75;
padding: 12px 24px;
vertical-align: top;
}

.policy-container hr {
border: none;
border-top: 1px solid #ECE3C4;
margin-top: 48px;
margin-bottom: 48px;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07);
}

@media (max-width: 1024px) {
.policy-container {
padding: 48px 24px;
}

.policy-container h1 {
font-size: 36px;
}

.policy-container h2 {
font-size: 26px;
}

.policy-container h3 {
font-size: 20px;
}
}

@media (max-width: 768px) {
.policy-container {
padding: 24px 24px;
}

.policy-container h1 {
font-size: 26px;
}

.policy-container h2 {
font-size: 20px;
margin-top: 24px;
}

.policy-container h3 {
font-size: 16px;
margin-top: 24px;
}

.policy-container h4,
.policy-container h5 {
font-size: 14px;
margin-top: 24px;
}

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

@media (max-width: 480px) {
.policy-container {
padding: 24px 12px;
}

.policy-container h1 {
font-size: 20px;
}

.policy-container thead th,
.policy-container td {
padding: 12px;
}
}

.education-for-business {
max-width: 100%;
overflow-x: hidden;
}

.education-for-business .page-band {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.education-for-business .accent-span {
color: #C52534;
}

.education-for-business .pill-label {
display: inline-block;
background: #ECE3C4;
color: #001C48;
font-size: 14px;
line-height: 1.2;
padding: 6px 24px;
border-radius: 28px;
font-weight: 600;
margin-bottom: 24px;
letter-spacing: 0.04em;
}

.education-for-business .overline-label {
display: block;
font-size: 14px;
line-height: 1.2;
color: #C52534;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
}

.education-for-business .title-strip {
background: linear-gradient(160deg, #001C48 0%, #001C48 55%, #C52534 100%);
padding-top: 48px;
padding-bottom: 0;
position: relative;
}

.education-for-business .title-strip-inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 48px;
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.education-for-business .title-text-zone {
flex: 1 1 0;
padding-bottom: 48px;
}

.education-for-business .title-text-zone .pill-label {
background: rgba(236, 227, 196, 0.18);
color: #ECE3C4;
border: 1px solid rgba(236, 227, 196, 0.32);
}

.education-for-business .title-h1 {
font-size: 66px;
line-height: 1.2;
color: #ffffff;
margin: 0 0 24px 0;
font-weight: 800;
}

.education-for-business .title-slogan {
font-size: 20px;
line-height: 1.5;
color: #ECE3C4;
margin: 0;
max-width: 520px;
font-style: italic;
}

.education-for-business .title-image-card {
flex: 0 0 320px;
width: 320px;
border-radius: 28px 28px 0 0;
overflow: hidden;
align-self: flex-end;
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
position: relative;
}

.education-for-business .title-image-card img {
display: block;
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
opacity: 0;
transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.education-for-business .title-image-card img.loaded {
opacity: 0.72;
}

.education-for-business .wave-divider {
display: block;
width: 100%;
line-height: 0;
margin-top: -1px;
}

.education-for-business .wave-divider svg {
display: block;
width: 100%;
}

.education-for-business .workshops-grid-block {
background: linear-gradient(180deg, #ECE3C4 0%, #ffffff 60%);
padding-top: 48px;
padding-bottom: 48px;
position: relative;
}

.education-for-business .workshops-grid-block .page-band {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.education-for-business .workshops-heading-row {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 48px;
margin-bottom: 48px;
}

.education-for-business .workshops-heading-text {
flex: 1 1 0;
}

.education-for-business .workshops-h2 {
font-size: 50px;
line-height: 1.2;
color: #001C48;
margin: 0;
font-weight: 800;
}

.education-for-business .workshops-subtitle {
font-size: 16px;
line-height: 1.75;
color: #3a3a3a;
max-width: 440px;
margin: 12px 0 0 0;
}

.education-for-business .workshops-image-aside {
flex: 0 0 260px;
width: 260px;
border-radius: 3px;
overflow: hidden;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
}

.education-for-business .workshops-image-aside img {
display: block;
width: 100%;
height: 180px;
object-fit: cover;
object-position: center;
opacity: 0;
transition: opacity 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.education-for-business .workshops-image-aside img.loaded {
opacity: 1;
}

.education-for-business .workshops-cards-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}

.education-for-business .workshop-card {
background: #ffffff;
border-radius: 28px;
padding: 24px;
box-shadow: 0 2px 2px 0 rgba(0, 28, 72, 0.07);
border-top: 3px solid #ECE3C4;
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
}

.education-for-business .workshop-card:hover {
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
transform: translateY(-4px);
}

.education-for-business .workshop-card.featured {
background: #001C48;
border-top-color: #C52534;
}

.education-for-business .workshop-card.featured .card-topic {
color: #ECE3C4;
}

.education-for-business .workshop-card.featured .card-description {
color: rgba(236, 227, 196, 0.8);
}

.education-for-business .workshop-card.featured .card-duration {
color: rgba(236, 227, 196, 0.6);
}

.education-for-business .card-number {
font-size: 50px;
line-height: 1.2;
font-weight: 800;
color: rgba(197, 37, 52, 0.14);
position: absolute;
top: 12px;
right: 24px;
}

.education-for-business .card-topic {
font-size: 20px;
line-height: 1.5;
color: #001C48;
font-weight: 700;
margin: 0 0 12px 0;
}

.education-for-business .card-description {
font-size: 16px;
line-height: 1.75;
color: #3a3a3a;
margin: 0 0 24px 0;
}

.education-for-business .card-duration {
font-size: 14px;
line-height: 1.2;
color: #888;
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
}

.education-for-business .card-duration-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #C52534;
display: inline-block;
flex-shrink: 0;
}

.education-for-business .card-bracket {
position: absolute;
bottom: 24px;
right: 24px;
font-size: 36px;
line-height: 1.2;
color: rgba(197, 37, 52, 0.22);
font-weight: 300;
pointer-events: none;
user-select: none;
}

.education-for-business .workshop-card.featured .card-bracket {
color: rgba(236, 227, 196, 0.18);
}

.education-for-business .workshop-card::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 4px;
border-radius: 0 0 28px 28px;
background: linear-gradient(90deg, #C52534, #001C48, #ECE3C4, #C52534);
background-size: 200% 100%;
opacity: 0;
transition: opacity 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), background-position 0.32s linear;
}

.education-for-business .workshop-card:hover::after {
opacity: 1;
background-position: 100% 0;
}

.education-for-business .stagger-item {
opacity: 0;
transform: translateY(24px);
animation: staggerFadeUp 0.32s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.education-for-business .stagger-item:nth-child(1) {
animation-delay: 0.08s;
}

.education-for-business .stagger-item:nth-child(2) {
animation-delay: 0.16s;
}

.education-for-business .stagger-item:nth-child(3) {
animation-delay: 0.24s;
}

.education-for-business .stagger-item:nth-child(4) {
animation-delay: 0.30s;
}

.education-for-business .stagger-item:nth-child(5) {
animation-delay: 0.35s;
}

.education-for-business .stagger-item:nth-child(6) {
animation-delay: 0.40s;
}

@keyframes staggerFadeUp {
to {
opacity: 1;
transform: translateY(0);
}
}

.education-for-business .diagonal-divider {
width: 100%;
line-height: 0;
display: block;
overflow: hidden;
}

.education-for-business .diagonal-divider svg {
display: block;
width: 100%;
}

.education-for-business .participants-block {
background: #ffffff;
padding-top: 48px;
padding-bottom: 48px;
position: relative;
}

.education-for-business .participants-block .page-band {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.education-for-business .participants-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.education-for-business .participants-left {
position: relative;
}

.education-for-business .participants-h2 {
font-size: 36px;
line-height: 1.2;
color: #001C48;
font-weight: 800;
margin: 0 0 24px 0;
}

.education-for-business .participants-body {
font-size: 16px;
line-height: 1.75;
color: #3a3a3a;
margin: 0 0 24px 0;
}

.education-for-business .bracket-frame {
display: inline-block;
position: relative;
padding: 24px 24px;
margin-top: 12px;
}

.education-for-business .bracket-frame::before,
.education-for-business .bracket-frame::after {
content: "";
position: absolute;
width: 18px;
height: 18px;
border-color: #C52534;
border-style: solid;
}

.education-for-business .bracket-frame::before {
top: 0;
left: 0;
border-width: 3px 0 0 3px;
}

.education-for-business .bracket-frame::after {
bottom: 0;
right: 0;
border-width: 0 3px 3px 0;
}

.education-for-business .bracket-quote {
font-size: 20px;
line-height: 1.5;
color: #001C48;
font-style: italic;
font-weight: 600;
margin: 0;
}

.education-for-business .participants-right {
display: flex;
flex-direction: column;
gap: 24px;
}

.education-for-business .participant-card {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
background: #ffffff;
border-radius: 3px;
padding: 24px;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
transition: box-shadow 0.28s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.education-for-business .participant-card:hover {
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.education-for-business .participant-portrait {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07);
}

.education-for-business .participant-portrait img {
width: 80px;
height: 80px;
object-fit: cover;
object-position: center;
display: block;
opacity: 0;
transition: opacity 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.education-for-business .participant-portrait img.loaded {
opacity: 1;
}

.education-for-business .participant-info {
flex: 1 1 0;
}

.education-for-business .participant-name {
font-size: 16px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
margin: 0 0 6px 0;
}

.education-for-business .participant-role {
font-size: 14px;
line-height: 1.2;
color: #C52534;
font-weight: 600;
margin: 0 0 12px 0;
}

.education-for-business .participant-feedback {
font-size: 16px;
line-height: 1.75;
color: #3a3a3a;
margin: 0;
}

.education-for-business .crosshatch-texture {
position: absolute;
top: 0;
right: -24px;
width: 120px;
height: 120px;
pointer-events: none;
opacity: 0.18;
}

.education-for-business .primary-button {
display: inline-block;
background: #C52534;
color: #ffffff;
font-size: 16px;
line-height: 1.5;
font-weight: 700;
padding: 12px 48px;
border-radius: 3px;
border: none;
cursor: pointer;
text-decoration: none;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
transition: brightness 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.education-for-business .primary-button:hover {
filter: brightness(1.12);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
color: #ffffff;
text-decoration: none;
}

.education-for-business .primary-button:focus {
outline: 3px solid #ECE3C4;
outline-offset: 3px;
}

.education-for-business .secondary-button {
display: inline-block;
background: transparent;
color: #001C48;
font-size: 16px;
line-height: 1.5;
font-weight: 700;
padding: 12px 48px;
border-radius: 3px;
border: 2px solid #001C48;
cursor: pointer;
text-decoration: none;
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.education-for-business .secondary-button:hover {
background: #001C48;
color: #ECE3C4;
text-decoration: none;
}

.education-for-business .secondary-button:focus {
outline: 3px solid #C52534;
outline-offset: 3px;
}

@media (max-width: 1024px) {
.education-for-business .title-h1 {
font-size: 50px;
}

.education-for-business .workshops-h2 {
font-size: 36px;
}

.education-for-business .workshops-cards-grid {
grid-template-columns: repeat(2, 1fr);
}

.education-for-business .title-image-card {
flex: 0 0 240px;
width: 240px;
}
}

@media (max-width: 768px) {
.education-for-business .page-band {
padding-left: 24px;
padding-right: 24px;
}

.education-for-business .title-strip-inner {
flex-direction: column;
padding-left: 24px;
padding-right: 24px;
gap: 24px;
}

.education-for-business .title-image-card {
display: none;
}

.education-for-business .title-h1 {
font-size: 36px;
}

.education-for-business .workshops-heading-row {
flex-direction: column;
align-items: flex-start;
gap: 24px;
}

.education-for-business .workshops-image-aside {
display: none;
}

.education-for-business .workshops-cards-grid {
grid-template-columns: 1fr;
}

.education-for-business .participants-layout {
grid-template-columns: 1fr;
}

.education-for-business .participants-h2 {
font-size: 26px;
}

.education-for-business .workshops-h2 {
font-size: 26px;
}

.education-for-business .workshops-grid-block .page-band,
.education-for-business .participants-block .page-band {
padding-left: 24px;
padding-right: 24px;
}
}

@media (max-width: 480px) {
.education-for-business .title-h1 {
font-size: 26px;
}

.education-for-business .title-slogan {
font-size: 16px;
}

.education-for-business .participant-card {
flex-direction: column;
}

.education-for-business .primary-button,
.education-for-business .secondary-button {
padding: 12px 24px;
font-size: 14px;
}
}

.about-us-page {
max-width: 100%;
overflow-x: hidden;
background: #ffffff;
}

.about-us-page .page-limiter {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
}

@media (max-width: 768px) {
.about-us-page .page-limiter {
padding: 0 24px;
}
}

@media (max-width: 480px) {
.about-us-page .page-limiter {
padding: 0 12px;
}
}

.about-us-page .opening-block {
padding: 48px 0 0 0;
background: #ffffff;
}

.about-us-page .opening-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

@media (max-width: 768px) {
.about-us-page .opening-grid {
grid-template-columns: 1fr;
gap: 24px;
}
}

.about-us-page .opening-text-zone {
padding: 48px 0;
position: relative;
}

.about-us-page .overline-label {
display: block;
font-size: 14px;
line-height: 1.5;
letter-spacing: 0.08em;
color: #C52534;
text-transform: uppercase;
margin-bottom: 12px;
}

.about-us-page .opening-heading {
font-size: 66px;
line-height: 1.2;
color: #001C48;
margin: 0 0 24px 0;
}

.about-us-page .opening-heading .accent-dot {
color: #C52534;
}

.about-us-page .opening-lead {
font-size: 20px;
line-height: 1.75;
color: #2a2a2a;
margin: 0 0 24px 0;
max-width: 480px;
}

.about-us-page .opening-sub {
font-size: 16px;
line-height: 1.75;
color: #4a4a4a;
margin: 0;
max-width: 440px;
}

.about-us-page .bracket-corner-box {
position: relative;
display: inline-block;
}

.about-us-page .bracket-corner-box::before,
.about-us-page .bracket-corner-box::after {
content: '';
position: absolute;
width: 24px;
height: 24px;
border-color: #C52534;
border-style: solid;
pointer-events: none;
}

.about-us-page .bracket-corner-box::before {
top: -6px;
left: -6px;
border-width: 2px 0 0 2px;
}

.about-us-page .bracket-corner-box::after {
bottom: -6px;
right: -6px;
border-width: 0 2px 2px 0;
}

.about-us-page .opening-image-zone {
position: relative;
}

.about-us-page .image-shape-crop {
width: 100%;
aspect-ratio: 3/4;
overflow: hidden;
border-radius: 28px 3px 28px 3px;
position: relative;
}

.about-us-page .image-shape-crop img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: 0;
transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
display: block;
}

.about-us-page .image-shape-crop img.loaded {
opacity: 1;
}

.about-us-page .duotone-overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(197, 37, 52, 0.22) 0%, rgba(0, 28, 72, 0.38) 60%, rgba(236, 227, 196, 0.12) 100%);
border-radius: 28px 3px 28px 3px;
pointer-events: none;
}

@media (max-width: 768px) {
.about-us-page .opening-image-zone {
display: none;
}

.about-us-page .opening-heading {
font-size: 36px;
}
}

.about-us-page .diagonal-divider {
width: 100%;
height: 60px;
background: #ECE3C4;
clip-path: polygon(0 0, 100% 40%, 100% 100%, 0 100%);
margin-top: -1px;
}

.about-us-page .story-block {
background: #ECE3C4;
padding: 48px 0;
position: relative;
}

@keyframes bg-oscillate {
0% {
background-color: #ECE3C4;
}

50% {
background-color: #e4d9b0;
}

100% {
background-color: #ECE3C4;
}
}

.about-us-page .story-block {
animation: bg-oscillate 6s linear infinite;
}

.about-us-page .story-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

@media (max-width: 1024px) {
.about-us-page .story-grid {
grid-template-columns: 1fr;
gap: 24px;
}
}

.about-us-page .story-text-col {
padding-right: 24px;
}

@media (max-width: 1024px) {
.about-us-page .story-text-col {
padding-right: 0;
}
}

.about-us-page .story-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #C52534;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
}

.about-us-page .story-heading {
font-size: 36px;
line-height: 1.2;
color: #001C48;
margin: 0 0 24px 0;
}

.about-us-page .story-intro-paragraph {
font-size: 20px;
line-height: 1.75;
color: #001C48;
margin: 0 0 24px 0;
padding: 24px;
background: rgba(255, 255, 255, 0.55);
border-radius: 3px;
box-shadow: 0 2px 2px 0 rgba(0, 28, 72, 0.07);
}

.about-us-page .story-body {
font-size: 16px;
line-height: 1.75;
color: #2a2a2a;
margin: 0 0 12px 0;
}

.about-us-page .story-body .accent-text {
color: #C52534;
font-weight: 600;
}

.about-us-page .ranked-list-col {
padding-top: 24px;
}

.about-us-page .ranked-list-heading {
font-size: 20px;
line-height: 1.5;
color: #001C48;
margin: 0 0 24px 0;
}

.about-us-page .ranked-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
margin-bottom: 24px;
}

.about-us-page .rank-number {
font-size: 36px;
line-height: 1.2;
color: #C52534;
font-weight: 700;
min-width: 48px;
text-align: right;
flex-shrink: 0;
}

.about-us-page .rank-bar-area {
flex: 1;
}

.about-us-page .rank-label {
font-size: 14px;
line-height: 1.5;
color: #001C48;
font-weight: 600;
margin-bottom: 6px;
display: block;
}

.about-us-page .rank-bar-track {
width: 100%;
height: 6px;
background: rgba(0, 28, 72, 0.12);
border-radius: 3px;
overflow: hidden;
}

.about-us-page .rank-bar-fill {
height: 100%;
border-radius: 3px;
background: linear-gradient(90deg, #C52534 0%, #001C48 100%);
transition: width 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-us-page .atmosphere-block {
position: relative;
padding: 0;
}

.about-us-page .atmosphere-image-bg {
position: relative;
min-height: 480px;
display: flex;
flex-direction: column;
justify-content: center;
}

.about-us-page .atmosphere-image-bg img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: 0;
transition: opacity 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
display: block;
}

.about-us-page .atmosphere-image-bg img.loaded {
opacity: 1;
}

.about-us-page .atmosphere-overlay {
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(0, 28, 72, 0.88) 0%, rgba(197, 37, 52, 0.55) 55%, rgba(0, 28, 72, 0.75) 100%);
pointer-events: none;
}

.about-us-page .atmosphere-content {
position: relative;
z-index: 2;
padding: 48px 0;
}

.about-us-page .atmosphere-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
}

@media (max-width: 768px) {
.about-us-page .atmosphere-inner {
grid-template-columns: 1fr;
padding: 0 24px;
gap: 24px;
}
}

.about-us-page .atmosphere-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #ECE3C4;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
}

.about-us-page .atmosphere-heading {
font-size: 50px;
line-height: 1.2;
color: #ffffff;
margin: 0 0 24px 0;
}

@media (max-width: 768px) {
.about-us-page .atmosphere-heading {
font-size: 36px;
}
}

.about-us-page .atmosphere-text {
font-size: 16px;
line-height: 1.75;
color: #ECE3C4;
margin: 0;
}

.about-us-page .atmosphere-cards {
display: flex;
flex-direction: column;
gap: 24px;
}

.about-us-page .atmosphere-card {
background: rgba(255, 255, 255, 0.1);
border: 1px solid rgba(236, 227, 196, 0.25);
border-radius: 3px;
padding: 24px;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-us-page .atmosphere-card:hover {
border-color: rgba(197, 37, 52, 0.7);
border-style: dashed;
}

.about-us-page .atmosphere-card-title {
font-size: 16px;
line-height: 1.5;
color: #ffffff;
font-weight: 600;
margin: 0 0 6px 0;
}

.about-us-page .atmosphere-card-text {
font-size: 14px;
line-height: 1.75;
color: #ECE3C4;
margin: 0;
}

.about-us-page .diagonal-divider-reverse {
width: 100%;
height: 60px;
background: #ffffff;
clip-path: polygon(0 40%, 100% 0, 100% 100%, 0 100%);
margin-top: -1px;
}

.about-us-page .team-mosaic-block {
background: #ffffff;
padding: 48px 0 48px 0;
}

.about-us-page .team-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #C52534;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
}

.about-us-page .team-heading {
font-size: 36px;
line-height: 1.2;
color: #001C48;
margin: 0 0 48px 0;
max-width: 600px;
}

.about-us-page .mosaic-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 24px;
}

@media (max-width: 1024px) {
.about-us-page .mosaic-grid {
grid-template-columns: 1fr 1fr;
}
}

@media (max-width: 768px) {
.about-us-page .mosaic-grid {
grid-template-columns: 1fr;
}
}

.about-us-page .mosaic-image-tile {
border-radius: 28px 3px 28px 3px;
overflow: hidden;
position: relative;
}

.about-us-page .mosaic-image-tile img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
opacity: 0;
transition: opacity 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-us-page .mosaic-image-tile img.loaded {
opacity: 1;
}

.about-us-page .mosaic-tile-tall {
grid-row: span 2;
min-height: 360px;
}

.about-us-page .mosaic-tile-wide {
grid-column: span 2;
min-height: 200px;
}

@media (max-width: 1024px) {
.about-us-page .mosaic-tile-wide {
grid-column: span 1;
}

.about-us-page .mosaic-tile-tall {
grid-row: span 1;
min-height: 240px;
}
}

.about-us-page .mosaic-text-tile {
background: #001C48;
border-radius: 3px 28px 3px 28px;
padding: 24px;
display: flex;
flex-direction: column;
justify-content: center;
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
transition: box-shadow 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.about-us-page .mosaic-text-tile:hover {
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
border-style: dashed;
border-color: #C52534;
border-width: 1px;
}

.about-us-page .mosaic-text-tile-label {
font-size: 14px;
line-height: 1.5;
color: #ECE3C4;
margin: 0 0 6px 0;
display: block;
}

.about-us-page .mosaic-text-tile-value {
font-size: 50px;
line-height: 1.2;
color: #C52534;
font-weight: 700;
margin: 0 0 6px 0;
}

.about-us-page .mosaic-text-tile-desc {
font-size: 14px;
line-height: 1.75;
color: #ECE3C4;
margin: 0;
}

.about-us-page .team-portrait-row {
margin-top: 48px;
display: grid;
grid-template-columns: 280px 1fr;
gap: 48px;
align-items: start;
}

@media (max-width: 768px) {
.about-us-page .team-portrait-row {
grid-template-columns: 1fr;
gap: 24px;
}
}

.about-us-page .portrait-column {
position: relative;
}

.about-us-page .portrait-frame {
width: 100%;
aspect-ratio: 3/4;
border-radius: 28px 3px 28px 3px;
overflow: hidden;
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
}

.about-us-page .portrait-frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
opacity: 0;
transition: opacity 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-us-page .portrait-frame img.loaded {
opacity: 1;
}

@media (max-width: 768px) {
.about-us-page .portrait-column {
display: none;
}
}

.about-us-page .team-bio-column {
padding-top: 48px;
}

.about-us-page .bio-name {
font-size: 26px;
line-height: 1.2;
color: #001C48;
margin: 0 0 6px 0;
}

.about-us-page .bio-role {
font-size: 14px;
line-height: 1.5;
color: #C52534;
text-transform: uppercase;
letter-spacing: 0.08em;
margin: 0 0 24px 0;
display: block;
}

.about-us-page .bio-text {
font-size: 16px;
line-height: 1.75;
color: #2a2a2a;
margin: 0 0 12px 0;
}

.about-us-page .bio-link {
display: inline-block;
margin-top: 12px;
padding: 12px 24px;
background: #C52534;
color: #ffffff;
font-size: 16px;
line-height: 1.5;
border-radius: 3px;
text-decoration: none;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
transition: filter 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.about-us-page .bio-link:hover {
filter: brightness(1.12);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.about-us-page .bio-link:focus {
outline: 2px dashed #C52534;
outline-offset: 3px;
}

.about-us-page .frame-lines {
position: relative;
padding: 24px;
}

.about-us-page .frame-lines::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, #C52534 0%, #ECE3C4 50%, #001C48 100%);
pointer-events: none;
}

.about-us-page .frame-lines::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, #001C48 0%, #ECE3C4 50%, #C52534 100%);
pointer-events: none;
}

.about-us-page .inset-accent {
box-shadow: inset 0 2px 8px 0 rgba(197, 37, 52, 0.08), 0 2px 2px 0 rgba(0, 28, 72, 0.07);
}

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

.contact-us-page *,
.contact-us-page *::before,
.contact-us-page *::after {
box-sizing: border-box;
}

.contact-us-page .page-limiter {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.contact-us-page .reach-block {
padding-top: 96px;
padding-bottom: 96px;
position: relative;
}

.contact-us-page .reach-block::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse 70% 60% at 30% 50%, rgba(0, 28, 72, 0.06) 0%, rgba(236, 227, 196, 0.18) 55%, rgba(255, 255, 255, 0) 100%);
pointer-events: none;
}

.contact-us-page .reach-inner {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 48px;
position: relative;
}

.contact-us-page .reach-text-zone {
flex: 0 0 420px;
padding-right: 48px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
}

.contact-us-page .reach-image-zone {
flex: 1 1 0;
position: relative;
min-height: 420px;
}

.contact-us-page .reach-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #C52534;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 12px;
font-weight: 600;
}

.contact-us-page .reach-heading {
font-size: 66px;
line-height: 1.2;
color: #001C48;
font-weight: 800;
margin: 0 0 24px 0;
}

.contact-us-page .reach-heading span {
color: #C52534;
}

.contact-us-page .reach-desc {
font-size: 16px;
line-height: 1.75;
color: #2a2a3a;
margin: 0 0 24px 0;
max-width: 360px;
}

.contact-us-page .reach-bg-number {
position: absolute;
right: -24px;
top: 50%;
transform: translateY(-50%);
font-size: 220px;
line-height: 1.2;
font-weight: 900;
color: rgba(0, 28, 72, 0.04);
pointer-events: none;
user-select: none;
white-space: nowrap;
}

.contact-us-page .reach-photo {
width: 100%;
height: 100%;
min-height: 420px;
object-fit: cover;
border-radius: 28px;
display: block;
opacity: 0;
transition: opacity 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
filter: brightness(0.88) saturate(1.15) sepia(0.12);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.contact-us-page .reach-photo.loaded {
opacity: 1;
}

.contact-us-page .reach-photo:hover {
filter: brightness(1.06) saturate(1.1) sepia(0.04);
}

.contact-us-page .dots-border {
position: absolute;
top: -18px;
left: -18px;
width: 120px;
height: 120px;
pointer-events: none;
}

.contact-us-page .reach-quick-info {
display: flex;
flex-direction: column;
gap: 12px;
margin-top: 12px;
}

.contact-us-page .quick-info-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
font-size: 14px;
line-height: 1.5;
color: #001C48;
}

.contact-us-page .quick-info-icon {
width: 36px;
height: 36px;
border-radius: 3px;
background: rgba(197, 37, 52, 0.08);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.contact-us-page .quick-info-icon svg {
width: 18px;
height: 18px;
}

.contact-us-page .quick-info-text {
font-size: 14px;
line-height: 1.5;
color: #001C48;
}

.contact-us-page .quick-info-text a {
color: #001C48;
text-decoration: none;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.contact-us-page .quick-info-text a:hover {
color: #C52534;
}

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

.contact-us-page .divider-drawn svg {
display: block;
width: 100%;
}

.contact-us-page .form-block {
padding-top: 72px;
padding-bottom: 96px;
background: #001C48;
position: relative;
overflow: hidden;
}

.contact-us-page .form-block::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 700px;
height: 700px;
background: radial-gradient(ellipse at 50% 50%, rgba(236, 227, 196, 0.07) 0%, rgba(197, 37, 52, 0.04) 40%, rgba(0, 28, 72, 0) 70%);
pointer-events: none;
animation: bg-pulse 6s ease-in-out infinite;
}

@keyframes bg-pulse {

0%,
100% {
opacity: 1;
}

50% {
opacity: 0.45;
}
}

.contact-us-page .form-block-inner {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
position: relative;
z-index: 1;
}

.contact-us-page .form-left {
flex: 0 0 340px;
padding-top: 12px;
}

.contact-us-page .form-right {
flex: 1 1 0;
}

.contact-us-page .form-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #ECE3C4;
text-transform: uppercase;
letter-spacing: 0.08em;
font-weight: 600;
margin-bottom: 12px;
}

.contact-us-page .form-heading {
font-size: 36px;
line-height: 1.2;
color: #ffffff;
font-weight: 800;
margin: 0 0 24px 0;
}

.contact-us-page .form-heading span {
color: #ECE3C4;
}

.contact-us-page .form-desc {
font-size: 16px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.75);
margin: 0 0 24px 0;
}

.contact-us-page .form-anchor-icon {
width: 80px;
height: 80px;
margin-top: 48px;
}

.contact-us-page .form-anchor-icon svg {
width: 80px;
height: 80px;
opacity: 0.18;
}

.contact-us-page .contact-form {
display: flex;
flex-direction: column;
gap: 24px;
}

.contact-us-page .field-row {
display: flex;
flex-direction: row;
gap: 24px;
}

.contact-us-page .field-group {
display: flex;
flex-direction: column;
gap: 6px;
flex: 1 1 0;
}

.contact-us-page .field-group.full {
flex: 0 0 100%;
}

.contact-us-page .field-label {
font-size: 14px;
line-height: 1.5;
color: rgba(236, 227, 196, 0.85);
font-weight: 500;
}

.contact-us-page .field-input,
.contact-us-page .field-textarea,
.contact-us-page .field-select {
background: rgba(255, 255, 255, 0.06);
border: 1.5px solid rgba(236, 227, 196, 0.18);
border-radius: 3px;
color: #ffffff;
font-size: 16px;
line-height: 1.5;
padding: 12px 16px;
width: 100%;
outline: none;
transition: border-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55), box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: inset 0 2px 2px 0 rgba(197, 37, 52, 0.07);
appearance: none;
-webkit-appearance: none;
}

.contact-us-page .field-input::placeholder,
.contact-us-page .field-textarea::placeholder {
color: rgba(197, 37, 52, 0.38);
}

.contact-us-page .field-input:focus,
.contact-us-page .field-textarea:focus,
.contact-us-page .field-select:focus {
border-color: #C52534;
background: rgba(255, 255, 255, 0.1);
box-shadow: 0 0 0 3px rgba(197, 37, 52, 0.18), inset 0 2px 2px 0 rgba(197, 37, 52, 0.07);
}

.contact-us-page .field-textarea {
resize: vertical;
min-height: 120px;
}

.contact-us-page .field-select {
cursor: pointer;
color: rgba(255, 255, 255, 0.75);
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23ECE3C4' d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 12px center;
padding-right: 36px;
}

.contact-us-page .field-select option {
background: #001C48;
color: #ffffff;
}

.contact-us-page .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
}

.contact-us-page .privacy-checkbox {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
accent-color: #C52534;
cursor: pointer;
}

.contact-us-page .privacy-label {
font-size: 14px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.65);
}

.contact-us-page .privacy-label a {
color: #ECE3C4;
text-decoration: underline;
text-decoration-color: rgba(236, 227, 196, 0.35);
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.contact-us-page .privacy-label a:hover {
color: #C52534;
}

.contact-us-page .submit-button {
align-self: flex-start;
background: #C52534;
color: #ffffff;
font-size: 16px;
line-height: 1.5;
font-weight: 700;
padding: 12px 48px;
border: none;
border-radius: 3px;
cursor: pointer;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
transition: background 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.contact-us-page .submit-button:hover {
filter: brightness(1.12);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.contact-us-page .submit-button:focus {
outline: 3px solid #ECE3C4;
outline-offset: 3px;
}

.contact-us-page .submit-button:active {
filter: brightness(0.96);
}

.contact-us-page .channels-block {
padding-top: 72px;
padding-bottom: 96px;
background: #ECE3C4;
position: relative;
}

.contact-us-page .channels-block::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse 60% 55% at 50% 50%, rgba(255, 255, 255, 0.55) 0%, rgba(236, 227, 196, 0) 70%);
pointer-events: none;
}

.contact-us-page .channels-overline {
display: block;
font-size: 14px;
line-height: 1.5;
color: #C52534;
text-transform: uppercase;
letter-spacing: 0.08em;
font-weight: 600;
margin-bottom: 12px;
text-align: center;
}

.contact-us-page .channels-heading {
font-size: 36px;
line-height: 1.2;
color: #001C48;
font-weight: 800;
margin: 0 0 12px 0;
text-align: center;
}

.contact-us-page .channels-sub {
font-size: 16px;
line-height: 1.75;
color: #2a2a3a;
text-align: center;
max-width: 520px;
margin: 0 auto 48px auto;
}

.contact-us-page .channels-list {
display: flex;
flex-direction: row;
gap: 24px;
align-items: stretch;
position: relative;
z-index: 1;
}

.contact-us-page .channel-card {
flex: 1 1 0;
background: #ffffff;
border-radius: 28px;
padding: 48px 24px;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
animation: card-tone-cycle 8s linear infinite;
}

.contact-us-page .channel-card:nth-child(2) {
animation-delay: 2.6s;
}

.contact-us-page .channel-card:nth-child(3) {
animation-delay: 5.2s;
}

@keyframes card-tone-cycle {

0%,
100% {
background: #ffffff;
}

50% {
background: rgba(236, 227, 196, 0.28);
}
}

.contact-us-page .channel-card:hover {
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
animation-play-state: paused;
background: #ffffff;
}

.contact-us-page .channel-icon-wrap {
width: 56px;
height: 56px;
border-radius: 28px;
background: rgba(197, 37, 52, 0.08);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
box-shadow: inset 0 2px 2px 0 rgba(197, 37, 52, 0.07);
}

.contact-us-page .channel-icon-wrap svg {
width: 26px;
height: 26px;
}

.contact-us-page .channel-label {
font-size: 14px;
line-height: 1.5;
color: #C52534;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.contact-us-page .channel-value {
font-size: 20px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
}

.contact-us-page .channel-value a {
color: #001C48;
text-decoration: none;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.contact-us-page .channel-value a:hover {
color: #C52534;
}

.contact-us-page .channel-note {
font-size: 14px;
line-height: 1.75;
color: #4a4a5a;
margin: 0;
}

.contact-us-page .address-card {
flex: 1.4 1 0;
background: #001C48;
border-radius: 28px;
padding: 48px 24px;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
position: relative;
overflow: hidden;
}

.contact-us-page .address-card::before {
content: "";
position: absolute;
bottom: -24px;
right: -24px;
width: 160px;
height: 160px;
border-radius: 28px;
background: rgba(197, 37, 52, 0.12);
pointer-events: none;
}

.contact-us-page .address-card .channel-label {
color: #ECE3C4;
}

.contact-us-page .address-card .channel-value {
color: #ffffff;
font-size: 16px;
line-height: 1.75;
font-weight: 500;
}

.contact-us-page .address-card .channel-note {
color: rgba(236, 227, 196, 0.6);
}

.contact-us-page .address-card .channel-icon-wrap {
background: rgba(236, 227, 196, 0.1);
}

@media (max-width: 1024px) {
.contact-us-page .page-limiter {
padding-left: 24px;
padding-right: 24px;
}

.contact-us-page .reach-text-zone {
flex: 0 0 340px;
padding-right: 24px;
}

.contact-us-page .reach-heading {
font-size: 50px;
}

.contact-us-page .reach-bg-number {
font-size: 160px;
right: -12px;
}

.contact-us-page .form-block-inner {
flex-direction: column;
gap: 48px;
}

.contact-us-page .form-left {
flex: none;
width: 100%;
}

.contact-us-page .form-anchor-icon {
display: none;
}

.contact-us-page .channels-list {
flex-wrap: wrap;
}

.contact-us-page .channel-card {
flex: 1 1 calc(50% - 12px);
}

.contact-us-page .address-card {
flex: 1 1 100%;
}
}

@media (max-width: 768px) {
.contact-us-page .reach-inner {
flex-direction: column;
}

.contact-us-page .reach-text-zone {
flex: none;
width: 100%;
padding-right: 0;
}

.contact-us-page .reach-image-zone {
display: none;
}

.contact-us-page .reach-heading {
font-size: 36px;
}

.contact-us-page .reach-bg-number {
display: none;
}

.contact-us-page .field-row {
flex-direction: column;
gap: 24px;
}

.contact-us-page .channels-list {
flex-direction: column;
}

.contact-us-page .channel-card,
.contact-us-page .address-card {
flex: none;
width: 100%;
}

.contact-us-page .reach-block {
padding-top: 48px;
padding-bottom: 48px;
}

.contact-us-page .form-block {
padding-top: 48px;
padding-bottom: 48px;
}

.contact-us-page .channels-block {
padding-top: 48px;
padding-bottom: 48px;
}
}

@media (max-width: 480px) {
.contact-us-page .page-limiter {
padding-left: 12px;
padding-right: 12px;
}

.contact-us-page .reach-heading {
font-size: 26px;
}

.contact-us-page .form-heading {
font-size: 26px;
}

.contact-us-page .channels-heading {
font-size: 26px;
}

.contact-us-page .submit-button {
width: 100%;
text-align: center;
}
}

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

.services-page .stripe-bg {
position: relative;
}

.services-page .stripe-bg::before {
content: '';
position: absolute;
inset: 0;
background-image: repeating-linear-gradient(-47deg,
transparent,
transparent 18px,
rgba(0, 28, 72, 0.03) 18px,
rgba(0, 28, 72, 0.03) 20px);
pointer-events: none;
z-index: 0;
}

.services-page .title-row {
max-width: 1280px;
margin: 0 auto;
padding: 48px 48px 48px 48px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
position: relative;
z-index: 1;
}

.services-page .title-text-zone {
display: flex;
flex-direction: column;
gap: 24px;
}

.services-page .overline-label {
font-size: 14px;
line-height: 1.5;
color: #C52534;
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 600;
}

.services-page .title-heading {
font-size: 66px;
line-height: 1.2;
color: #001C48;
font-weight: 800;
margin: 0;
}

.services-page .title-heading .accent-word {
color: #C52534;
}

.services-page .title-sub {
font-size: 20px;
line-height: 1.75;
color: #3a4a6b;
margin: 0;
max-width: 480px;
}

.services-page .title-mosaic {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 180px 140px;
gap: 12px;
}

.services-page .mosaic-img-main {
grid-column: 1 / 2;
grid-row: 1 / 3;
border-radius: 28px;
overflow: hidden;
opacity: 0;
transition: opacity 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.services-page .mosaic-img-main.loaded {
opacity: 1;
}

.services-page .mosaic-img-main img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(0.55) contrast(1.08);
display: block;
}

.services-page .mosaic-img-small {
border-radius: 3px;
overflow: hidden;
opacity: 0;
transition: opacity 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.services-page .mosaic-img-small.loaded {
opacity: 1;
}

.services-page .mosaic-img-small img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(0.55) contrast(1.08);
display: block;
}

.services-page .mosaic-accent-box {
border-radius: 3px;
background: linear-gradient(135deg, #C52534 0%, #001C48 60%, #ECE3C4 100%);
display: flex;
align-items: center;
justify-content: center;
}

.services-page .mosaic-accent-box span {
font-size: 36px;
font-weight: 800;
color: #ECE3C4;
line-height: 1.2;
}

.services-page .rect-deco {
position: absolute;
bottom: 24px;
right: 0;
width: 90px;
height: 90px;
pointer-events: none;
z-index: 0;
}

.services-page .rect-deco span {
position: absolute;
border: 1px solid rgba(197, 37, 52, 0.18);
border-radius: 3px;
}

.services-page .rect-deco span:nth-child(1) {
inset: 0;
}

.services-page .rect-deco span:nth-child(2) {
inset: 10px;
}

.services-page .rect-deco span:nth-child(3) {
inset: 20px;
}

.services-page .rect-deco span:nth-child(4) {
inset: 30px;
}

.services-page .divider-radial {
width: 100%;
height: 2px;
background: radial-gradient(ellipse at 50% 50%, #C52534 0%, rgba(197, 37, 52, 0.18) 55%, transparent 100%);
border: none;
margin: 0;
}

.services-page .four-col-block {
background: linear-gradient(105deg, #ECE3C4 0%, #f7f4ec 40%, #ffffff 100%);
padding: 48px 0;
}

.services-page .four-col-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
}

.services-page .four-col-intro {
margin-bottom: 48px;
display: flex;
flex-direction: column;
gap: 12px;
max-width: 560px;
}

.services-page .four-col-intro h2 {
font-size: 36px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
margin: 0;
}

.services-page .four-col-intro p {
font-size: 16px;
line-height: 1.75;
color: #3a4a6b;
margin: 0;
}

.services-page .four-col-grid {
display: grid;
grid-template-columns: 1fr 1.55fr 1.55fr 1fr;
gap: 24px;
align-items: start;
}

.services-page .service-card {
background: #ffffff;
border-radius: 28px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.services-page .service-card:hover {
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
transform: translateY(-4px);
}

.services-page .service-card.wide {
background: #001C48;
}

.services-page .service-card.wide .card-label,
.services-page .service-card.wide h4,
.services-page .service-card.wide p {
color: #ECE3C4;
}

.services-page .service-card.wide .card-label {
color: rgba(236, 227, 196, 0.65);
}

.services-page .card-icon {
width: 40px;
height: 40px;
flex-shrink: 0;
}

.services-page .card-label {
font-size: 14px;
line-height: 1.5;
color: rgba(0, 28, 72, 0.5);
text-transform: uppercase;
font-weight: 600;
}

.services-page .service-card h4 {
font-size: 20px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
margin: 0;
}

.services-page .service-card p {
font-size: 14px;
line-height: 1.75;
color: #3a4a6b;
margin: 0;
}

.services-page .card-tag {
display: inline-block;
font-size: 14px;
line-height: 1.5;
color: #C52534;
background: rgba(197, 37, 52, 0.08);
border-radius: 3px;
padding: 6px 12px;
font-weight: 600;
align-self: flex-start;
}

.services-page .wide .card-tag {
color: #ECE3C4;
background: rgba(236, 227, 196, 0.12);
}

.services-page .process-block {
background: #ffffff;
padding: 48px 0;
position: relative;
}

.services-page .process-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: grid;
grid-template-columns: 380px 1fr;
gap: 48px;
align-items: start;
}

.services-page .process-image-col {
position: relative;
}

.services-page .process-img-frame {
border-radius: 28px;
overflow: hidden;
opacity: 0;
transition: opacity 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.services-page .process-img-frame.loaded {
opacity: 1;
}

.services-page .process-img-frame img {
width: 100%;
height: 320px;
object-fit: cover;
object-position: center;
filter: saturate(0.6);
display: block;
}

.services-page .process-badge {
position: absolute;
bottom: -12px;
right: -12px;
background: #C52534;
color: #ECE3C4;
border-radius: 3px;
padding: 12px 24px;
font-size: 14px;
line-height: 1.5;
font-weight: 700;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
}

.services-page .process-steps-col {
display: flex;
flex-direction: column;
gap: 24px;
}

.services-page .process-steps-header {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 12px;
}

.services-page .process-steps-header h2 {
font-size: 36px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
margin: 0;
}

.services-page .process-steps-header p {
font-size: 16px;
line-height: 1.75;
color: #3a4a6b;
margin: 0;
max-width: 460px;
}

.services-page .step-item {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
}

.services-page .step-num {
width: 48px;
height: 48px;
border-radius: 3px;
background: linear-gradient(135deg, #C52534 0%, #001C48 100%);
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
font-weight: 800;
color: #ECE3C4;
flex-shrink: 0;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07);
}

.services-page .step-text {
display: flex;
flex-direction: column;
gap: 6px;
}

.services-page .step-text h5 {
font-size: 16px;
line-height: 1.5;
color: #001C48;
font-weight: 700;
margin: 0;
}

.services-page .step-text p {
font-size: 14px;
line-height: 1.75;
color: #3a4a6b;
margin: 0;
}

.services-page .divider-solid {
width: 100%;
height: 1px;
background: rgba(0, 28, 72, 0.08);
border: none;
margin: 0;
}

.services-page .testimonial-block {
background: linear-gradient(105deg, #001C48 0%, #001C48 60%, #0d2d5e 100%);
padding: 48px 0;
position: relative;
overflow: hidden;
}

.services-page .testimonial-block::after {
content: '';
position: absolute;
top: -48px;
right: -48px;
width: 260px;
height: 260px;
border-radius: 28px;
background: rgba(197, 37, 52, 0.07);
pointer-events: none;
}

.services-page .testimonial-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: grid;
grid-template-columns: 260px 1fr;
gap: 48px;
align-items: center;
position: relative;
z-index: 1;
}

.services-page .portrait-col {
display: flex;
flex-direction: column;
gap: 24px;
align-items: flex-start;
}

.services-page .portrait-frame {
width: 200px;
height: 250px;
border-radius: 28px;
overflow: hidden;
opacity: 0;
transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14),
inset 0 0 0 2px rgba(197, 37, 52, 0.25);
}

.services-page .portrait-frame.loaded {
opacity: 1;
}

.services-page .portrait-frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

.services-page .portrait-meta {
display: flex;
flex-direction: column;
gap: 6px;
}

.services-page .portrait-name {
font-size: 16px;
line-height: 1.5;
color: #ECE3C4;
font-weight: 700;
margin: 0;
}

.services-page .portrait-role {
font-size: 14px;
line-height: 1.5;
color: rgba(236, 227, 196, 0.6);
margin: 0;
}

.services-page .testimonial-content {
display: flex;
flex-direction: column;
gap: 24px;
}

.services-page .testimonial-content .overline-label {
color: rgba(236, 227, 196, 0.5);
}

.services-page .testimonial-content h2 {
font-size: 36px;
line-height: 1.2;
color: #ECE3C4;
font-weight: 700;
margin: 0;
}

.services-page .quote-text {
font-size: 20px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.88);
margin: 0;
font-style: italic;
border-radius: 3px;
padding: 24px;
background: rgba(236, 227, 196, 0.06);
box-shadow: inset 0 0 0 1px rgba(236, 227, 196, 0.1);
}

.services-page .metrics-row {
display: flex;
flex-direction: row;
gap: 48px;
margin-top: 12px;
}

.services-page .metric-item {
display: flex;
flex-direction: column;
gap: 6px;
}

.services-page .metric-number {
font-size: 36px;
line-height: 1.2;
font-weight: 800;
color: #C52534;
}

.services-page .metric-label {
font-size: 14px;
line-height: 1.5;
color: rgba(236, 227, 196, 0.6);
}

.services-page .pulse-accent {
animation: services-pulse 2.4s linear infinite;
}

@keyframes services-pulse {

0%,
100% {
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09), 0 0 0 0 rgba(197, 37, 52, 0);
}

50% {
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09), 0 0 0 8px rgba(197, 37, 52, 0.12);
}
}

.services-page .slide-left {
opacity: 0;
transform: translateX(-32px);
animation: slide-from-left 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.services-page .slide-right {
opacity: 0;
transform: translateX(32px);
animation: slide-from-right 0.32s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes slide-from-left {
to {
opacity: 1;
transform: translateX(0);
}
}

@keyframes slide-from-right {
to {
opacity: 1;
transform: translateX(0);
}
}

.services-page .slide-left {
animation-delay: 0.08s;
}

.services-page .slide-right {
animation-delay: 0.14s;
}

@media (max-width: 1024px) {
.services-page .title-row {
grid-template-columns: 1fr;
padding: 48px 24px;
gap: 24px;
}

.services-page .title-heading {
font-size: 50px;
}

.services-page .title-mosaic {
display: none;
}

.services-page .four-col-grid {
grid-template-columns: 1fr 1fr;
}

.services-page .four-col-inner {
padding: 0 24px;
}

.services-page .process-inner {
grid-template-columns: 1fr;
padding: 0 24px;
gap: 24px;
}

.services-page .process-image-col {
display: none;
}

.services-page .testimonial-inner {
grid-template-columns: 1fr;
padding: 0 24px;
gap: 24px;
}

.services-page .portrait-col {
flex-direction: row;
align-items: center;
}

.services-page .portrait-frame {
width: 120px;
height: 150px;
}
}

@media (max-width: 768px) {
.services-page .title-heading {
font-size: 36px;
}

.services-page .four-col-grid {
grid-template-columns: 1fr;
}

.services-page .four-col-inner {
padding: 0 24px;
}

.services-page .metrics-row {
flex-direction: column;
gap: 24px;
}

.services-page .testimonial-content h2 {
font-size: 26px;
}

.services-page .quote-text {
font-size: 16px;
}
}

@media (max-width: 480px) {
.services-page .title-row {
padding: 24px 12px;
}

.services-page .four-col-inner {
padding: 0 12px;
}

.services-page .process-inner {
padding: 0 12px;
}

.services-page .testimonial-inner {
padding: 0 12px;
}

.services-page .title-heading {
font-size: 26px;
}

.services-page .four-col-block {
padding: 24px 0;
}

.services-page .process-block {
padding: 24px 0;
}

.services-page .testimonial-block {
padding: 24px 0;
}
}

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

.launch-page .launch-limit {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 48px;
padding-right: 48px;
}

.launch-page .overline-label {
display: inline-block;
font-size: 14px;
line-height: 1.2;
color: #C52534;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
}

.launch-page .title-block {
background-color: #001C48;
padding-top: 96px;
padding-bottom: 96px;
position: relative;
}

.launch-page .title-block-atmosphere {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden;
}

.launch-page .title-block-atmosphere::before {
content: "";
position: absolute;
width: 480px;
height: 480px;
border-radius: 50%;
background: rgba(197, 37, 52, 0.18);
filter: blur(120px);
top: -80px;
left: -80px;
animation: spot-drift 9s linear infinite alternate;
}

.launch-page .title-block-atmosphere::after {
content: "";
position: absolute;
width: 320px;
height: 320px;
border-radius: 50%;
background: rgba(236, 227, 196, 0.10);
filter: blur(90px);
bottom: -40px;
right: 10%;
animation: spot-drift-b 12s linear infinite alternate;
}

@keyframes spot-drift {
0% {
transform: translate(0, 0);
}

100% {
transform: translate(80px, 60px);
}
}

@keyframes spot-drift-b {
0% {
transform: translate(0, 0);
}

100% {
transform: translate(-60px, -40px);
}
}

.launch-page .title-block-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
position: relative;
z-index: 1;
}

.launch-page .title-block-text {
display: flex;
flex-direction: column;
gap: 24px;
}

.launch-page .title-heading {
font-size: 66px;
line-height: 1.2;
color: #ECE3C4;
margin: 0;
}

.launch-page .title-heading .accent-red {
color: #C52534 !important;
}

.launch-page .title-subtext {
font-size: 20px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.78);
margin: 0;
max-width: 480px;
}

.launch-page .title-cta-row {
display: flex;
flex-direction: row;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}

.launch-page .btn-primary {
display: inline-block;
background-color: #C52534;
color: #ECE3C4;
font-size: 16px;
line-height: 1.5;
padding: 12px 24px;
border-radius: 3px;
border: none;
cursor: pointer;
text-decoration: none;
transition: brightness 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07), 0 4px 18px 0 rgba(197, 37, 52, 0.09);
}

.launch-page .btn-primary:hover {
filter: brightness(1.12);
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
color: #ECE3C4;
text-decoration: none;
}

.launch-page .btn-secondary {
display: inline-block;
background-color: transparent;
color: #ECE3C4;
font-size: 16px;
line-height: 1.5;
padding: 12px 24px;
border-radius: 3px;
border: 1px solid rgba(236, 227, 196, 0.35);
cursor: pointer;
text-decoration: none;
transition: border-color 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), color 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.launch-page .btn-secondary:hover {
border-color: #ECE3C4;
color: #fff;
text-decoration: none;
}

.launch-page .title-image-wrap {
position: relative;
display: flex;
align-items: center;
justify-content: flex-end;
}

.launch-page .title-image-frame {
position: relative;
width: 100%;
max-width: 480px;
}

.launch-page .title-image-frame::before {
content: "";
position: absolute;
inset: 0;
background: repeating-linear-gradient(0deg,
rgba(0, 0, 0, 0.06) 0px,
rgba(0, 0, 0, 0.06) 1px,
transparent 1px,
transparent 4px);
z-index: 2;
pointer-events: none;
border-radius: 3px;
}

.launch-page .title-image-frame::after {
content: "";
position: absolute;
inset: -6px;
border: 1px solid rgba(197, 37, 52, 0.4);
border-radius: 3px;
pointer-events: none;
z-index: 3;
}

.launch-page .title-img {
display: block;
width: 100%;
height: 360px;
object-fit: cover;
object-position: center;
border-radius: 3px;
opacity: 0;
transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .title-img.loaded {
opacity: 1;
}

.launch-page .arrows-divider {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 6px;
padding-top: 24px;
padding-bottom: 24px;
background: #fff;
}

.launch-page .arrow-shape {
width: 18px;
height: 18px;
border-top: 2px solid #C52534;
border-right: 2px solid #C52534;
transform: rotate(45deg);
opacity: 0.35;
}

.launch-page .arrow-shape.mid {
opacity: 0.6;
}

.launch-page .arrow-shape.last {
opacity: 0.9;
}

.launch-page .audience-block {
background: #fff;
padding-top: 96px;
padding-bottom: 96px;
}

.launch-page .audience-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.launch-page .audience-lead {
position: sticky;
top: 48px;
}

.launch-page .audience-heading {
font-size: 50px;
line-height: 1.2;
color: #001C48;
margin: 0 0 24px 0;
}

.launch-page .audience-desc {
font-size: 16px;
line-height: 1.75;
color: #2d3a4a;
margin: 0 0 24px 0;
}

.launch-page .audience-image-wrap {
position: relative;
margin-top: 24px;
}

.launch-page .audience-img {
display: block;
width: 100%;
height: 300px;
object-fit: cover;
object-position: center;
border-radius: 3px;
opacity: 0;
transition: opacity 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
border: 2px solid transparent;
}

.launch-page .audience-img.loaded {
opacity: 1;
}

.launch-page .audience-image-wrap:hover .audience-img {
border-color: #C52534;
}

.launch-page .cards-column {
display: flex;
flex-direction: column;
gap: 24px;
}

.launch-page .profile-card {
background: #fff;
border: 1px solid rgba(0, 28, 72, 0.10);
border-radius: 28px;
padding: 24px;
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .profile-card:hover {
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
transform: translateY(-4px);
}

.launch-page .profile-card-tag {
display: inline-block;
font-size: 14px;
line-height: 1.2;
color: #C52534;
background: rgba(197, 37, 52, 0.08);
border-radius: 3px;
padding: 6px 12px;
margin-bottom: 12px;
}

.launch-page .profile-card-heading {
font-size: 20px;
line-height: 1.5;
color: #001C48;
margin: 0 0 6px 0;
}

.launch-page .profile-card-text {
font-size: 16px;
line-height: 1.75;
color: #2d3a4a;
margin: 0;
}

.launch-page .approach-block {
background: linear-gradient(157deg, #001C48 0%, #0a2a5e 55%, #ECE3C4 180%);
padding-top: 96px;
padding-bottom: 96px;
position: relative;
overflow: hidden;
}

.launch-page .approach-dashed-bg {
position: absolute;
inset: 0;
background-image:
repeating-linear-gradient(0deg, rgba(236, 227, 196, 0.06) 0px, rgba(236, 227, 196, 0.06) 1px, transparent 1px, transparent 48px),
repeating-linear-gradient(90deg, rgba(236, 227, 196, 0.06) 0px, rgba(236, 227, 196, 0.06) 1px, transparent 1px, transparent 48px);
background-size: 48px 48px;
pointer-events: none;
}

.launch-page .approach-layout {
position: relative;
z-index: 1;
}

.launch-page .approach-top {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 24px;
margin-bottom: 48px;
align-items: start;
}

.launch-page .approach-main-card {
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(236, 227, 196, 0.15);
border-radius: 28px;
padding: 48px;
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
inset-shadow: inset 0 1px 0 rgba(236, 227, 196, 0.08);
}

.launch-page .approach-heading {
font-size: 50px;
line-height: 1.2;
color: #ECE3C4;
margin: 0 0 24px 0;
}

.launch-page .approach-text {
font-size: 16px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.80);
margin: 0;
}

.launch-page .approach-stat-card {
background: rgba(197, 37, 52, 0.15);
border: 1px solid rgba(197, 37, 52, 0.30);
border-radius: 28px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09);
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .approach-stat-card:hover {
box-shadow: 0 10px 48px 0 rgba(197, 37, 52, 0.14);
}

.launch-page .stat-number {
font-size: 50px;
line-height: 1.2;
color: #C52534;
margin: 0;
}

.launch-page .stat-label {
font-size: 14px;
line-height: 1.5;
color: rgba(236, 227, 196, 0.75);
margin: 0;
}

.launch-page .approach-steps {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
}

.launch-page .step-card {
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(236, 227, 196, 0.12);
border-radius: 3px;
padding: 24px;
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .step-card:hover {
background: rgba(255, 255, 255, 0.09);
border-color: rgba(197, 37, 52, 0.40);
}

.launch-page .step-number {
font-size: 36px;
line-height: 1.2;
color: rgba(197, 37, 52, 0.45);
margin: 0 0 12px 0;
}

.launch-page .step-title {
font-size: 16px;
line-height: 1.5;
color: #ECE3C4;
margin: 0 0 6px 0;
}

.launch-page .step-desc {
font-size: 14px;
line-height: 1.75;
color: rgba(236, 227, 196, 0.65);
margin: 0;
}

.launch-page .value-block {
background: #ECE3C4;
padding-top: 96px;
padding-bottom: 96px;
}

.launch-page .value-top-row {
display: flex;
flex-direction: row;
gap: 48px;
align-items: start;
margin-bottom: 48px;
}

.launch-page .value-heading-col {
flex: 0 0 420px;
}

.launch-page .value-heading {
font-size: 50px;
line-height: 1.2;
color: #001C48;
margin: 0;
}

.launch-page .value-text-col {
flex: 1;
padding-top: 6px;
}

.launch-page .value-text {
font-size: 16px;
line-height: 1.75;
color: #2d3a4a;
margin: 0 0 12px 0;
}

.launch-page .value-image-strip {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 48px;
}

.launch-page .value-img-wrap {
position: relative;
overflow: hidden;
border-radius: 3px;
}

.launch-page .value-img-wrap::after {
content: "";
position: absolute;
inset: 0;
border: 2px solid transparent;
border-radius: 3px;
transition: border-color 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
pointer-events: none;
}

.launch-page .value-img-wrap:hover::after {
border-color: #C52534;
}

.launch-page .value-img {
display: block;
width: 100%;
height: 260px;
object-fit: cover;
object-position: center;
border-radius: 3px;
opacity: 0;
transition: opacity 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .value-img.loaded {
opacity: 1;
}

.launch-page .value-img-wrap:hover .value-img {
transform: scale(1.03);
}

.launch-page .value-points-row {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}

.launch-page .value-point {
background: rgba(255, 255, 255, 0.60);
border-radius: 28px;
padding: 24px;
box-shadow: 0 2px 2px 0 rgba(0, 28, 72, 0.07);
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .value-point:hover {
box-shadow: 0 10px 48px 0 rgba(0, 28, 72, 0.14);
transform: translateY(-3px);
}

.launch-page .value-point-title {
font-size: 20px;
line-height: 1.5;
color: #001C48;
margin: 0 0 6px 0;
}

.launch-page .value-point-text {
font-size: 14px;
line-height: 1.75;
color: #2d3a4a;
margin: 0;
}

.launch-page .support-block {
background: #fff;
padding-top: 96px;
padding-bottom: 96px;
}

.launch-page .support-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
}

.launch-page .support-portraits {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}

.launch-page .portrait-wrap {
position: relative;
}

.launch-page .portrait-img {
display: block;
width: 100%;
aspect-ratio: 4/5;
object-fit: cover;
object-position: center;
border-radius: 0;
opacity: 0;
transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 4px 18px 0 rgba(0, 28, 72, 0.09);
}

.launch-page .portrait-img.loaded {
opacity: 1;
}

.launch-page .portrait-wrap::after {
content: "";
position: absolute;
inset: 0;
border: 2px solid transparent;
transition: border-color 0.28s cubic-bezier(0.68, -0.55, 0.27, 1.55);
pointer-events: none;
}

.launch-page .portrait-wrap:hover::after {
border-color: #C52534;
}

.launch-page .portrait-name {
font-size: 14px;
line-height: 1.5;
color: #001C48;
margin: 6px 0 0 0;
}

.launch-page .portrait-role {
font-size: 14px;
line-height: 1.5;
color: #C52534;
margin: 0;
}

.launch-page .support-text-col {
display: flex;
flex-direction: column;
gap: 24px;
}

.launch-page .support-heading {
font-size: 50px;
line-height: 1.2;
color: #001C48;
margin: 0;
}

.launch-page .support-text {
font-size: 16px;
line-height: 1.75;
color: #2d3a4a;
margin: 0;
}

.launch-page .support-items {
display: flex;
flex-direction: column;
gap: 12px;
}

.launch-page .support-item {
background: rgba(0, 28, 72, 0.04);
border-radius: 3px;
padding: 12px 24px;
font-size: 16px;
line-height: 1.5;
color: #001C48;
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.launch-page .support-item:hover {
background: rgba(197, 37, 52, 0.07);
}

.launch-page .support-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #C52534;
flex-shrink: 0;
}

.launch-page .support-contact-row {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
}

.launch-page .contact-chip {
display: inline-block;
background: #001C48;
color: #ECE3C4;
font-size: 14px;
line-height: 1.5;
padding: 6px 24px;
border-radius: 3px;
text-decoration: none;
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 2px 2px 0 rgba(0, 28, 72, 0.07);
}

.launch-page .contact-chip:hover {
background: #C52534;
color: #fff;
text-decoration: none;
}

@media (max-width: 1024px) {
.launch-page .launch-limit {
padding-left: 24px;
padding-right: 24px;
}

.launch-page .title-block-grid {
grid-template-columns: 1fr;
}

.launch-page .title-image-wrap {
display: none;
}

.launch-page .title-heading {
font-size: 50px;
}

.launch-page .audience-grid {
grid-template-columns: 1fr;
}

.launch-page .audience-lead {
position: static;
}

.launch-page .approach-top {
grid-template-columns: 1fr 1fr;
}

.launch-page .approach-main-card {
grid-column: span 2;
}

.launch-page .approach-steps {
grid-template-columns: repeat(2, 1fr);
}

.launch-page .value-top-row {
flex-direction: column;
gap: 24px;
}

.launch-page .value-heading-col {
flex: none;
}

.launch-page .support-layout {
grid-template-columns: 1fr;
}

.launch-page .support-portraits {
display: none;
}
}

@media (max-width: 768px) {
.launch-page .title-heading {
font-size: 36px;
}

.launch-page .audience-heading,
.launch-page .approach-heading,
.launch-page .value-heading,
.launch-page .support-heading {
font-size: 36px;
}

.launch-page .approach-top {
grid-template-columns: 1fr;
}

.launch-page .approach-main-card {
grid-column: span 1;
padding: 24px;
}

.launch-page .approach-steps {
grid-template-columns: 1fr;
}

.launch-page .value-image-strip {
grid-template-columns: 1fr;
}

.launch-page .value-points-row {
grid-template-columns: 1fr;
}

.launch-page .title-block,
.launch-page .audience-block,
.launch-page .approach-block,
.launch-page .value-block,
.launch-page .support-block {
padding-top: 48px;
padding-bottom: 48px;
}
}

@media (max-width: 480px) {
.launch-page .launch-limit {
padding-left: 12px;
padding-right: 12px;
}

.launch-page .title-heading {
font-size: 26px;
}

.launch-page .audience-heading,
.launch-page .approach-heading,
.launch-page .value-heading,
.launch-page .support-heading {
font-size: 26px;
}

.launch-page .stat-number {
font-size: 36px;
}

.launch-page .title-cta-row {
flex-direction: column;
align-items: flex-start;
}
}

.success-page {
min-height: 60vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 48px 24px;
background: #ffffff;
}

.success-page .confirmation-wrapper {
max-width: 1280px;
width: 100%;
margin: 0 auto;
display: flex;
flex-direction: column;
align-items: center;
gap: 24px;
}

.success-page .icon-area {
width: 72px;
height: 72px;
border-radius: 28px;
background: linear-gradient(135deg, #C52534 0%, #001C48 60%, #ECE3C4 100%);
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.09), 0 10px 48px 0 rgba(0, 28, 72, 0.14);
flex-shrink: 0;
}

.success-page .icon-area svg {
display: block;
}

.success-page .confirmation-content {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
text-align: center;
max-width: 560px;
}

.success-page .overline-label {
font-size: 14px;
line-height: 1.5;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #C52534;
font-weight: 600;
}

.success-page .confirmation-heading {
font-size: 36px;
line-height: 1.2;
color: #001C48;
font-weight: 700;
margin: 0;
}

.success-page .confirmation-heading .accent-word {
color: #C52534;
}

.success-page .confirmation-text {
font-size: 16px;
line-height: 1.75;
color: #001C48;
opacity: 0.8;
margin: 0;
max-width: 440px;
}

.success-page .divider-line {
width: 48px;
height: 3px;
border-radius: 3px;
background: linear-gradient(90deg, #C52534 0%, #ECE3C4 100%);
}

.success-page .action-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
flex-wrap: wrap;
justify-content: center;
}

.success-page .primary-button {
display: inline-block;
padding: 12px 24px;
background: #C52534;
color: #ffffff;
font-size: 16px;
line-height: 1.5;
font-weight: 600;
border-radius: 3px;
text-decoration: none;
box-shadow: 0 2px 2px 0 rgba(197, 37, 52, 0.07), 0 4px 18px 0 rgba(197, 37, 52, 0.09);
transition: brightness 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: none;
}

.success-page .primary-button:hover {
filter: brightness(1.12);
box-shadow: 0 4px 18px 0 rgba(197, 37, 52, 0.14), 0 10px 48px 0 rgba(197, 37, 52, 0.09);
}

.success-page .primary-button:focus-visible {
outline: 2px solid #C52534;
outline-offset: 3px;
}

.success-page .secondary-button {
display: inline-block;
padding: 12px 24px;
background: transparent;
color: #001C48;
font-size: 16px;
line-height: 1.5;
font-weight: 600;
border-radius: 3px;
border: 2px solid #001C48;
text-decoration: none;
transition: background 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), color 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), border-color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: none;
}

.success-page .secondary-button:hover {
background: #001C48;
color: #ffffff;
}

.success-page .secondary-button:focus-visible {
outline: 2px solid #001C48;
outline-offset: 3px;
}

.success-page .contact-note {
font-size: 14px;
line-height: 1.5;
color: #001C48;
opacity: 0.6;
margin: 0;
text-align: center;
}

.success-page .contact-note a {
color: #C52534;
text-decoration: underline;
text-underline-offset: 3px;
transition: opacity 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.success-page .contact-note a:hover {
opacity: 0.75;
}

@media (max-width: 480px) {
.success-page {
padding: 48px 12px;
}

.success-page .confirmation-heading {
font-size: 26px;
}

.success-page .action-row {
flex-direction: column;
width: 100%;
}

.success-page .primary-button,
.success-page .secondary-button {
width: 100%;
text-align: center;
}
}