body {
margin: 0;
position: relative;
min-height: 100vh;
font-family: 'Lato', 'PT Sans', sans-serif
}

.site-header {
border-bottom: 2px solid #1BFFB3;
background: #fff;
box-sizing: border-box;
box-shadow: -1px 5px 18px -1px #1bffb317
}

.header-top-bar {
background: #111820;
padding: 8px 28px;
display: flex;
justify-content: flex-end;
align-items: center;
gap: 28px
}

.header-top-bar .contact-item {
display: flex;
align-items: center;
gap: 8px;
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #d4d8dd;
line-height: 1.3;
text-decoration: none;
transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.header-top-bar .contact-item:hover,
.header-top-bar .contact-item:focus {
color: #1BFFB3;
outline: none
}

.header-top-bar .contact-item:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 2px;
border-radius: 2px
}

.contact-item .contact-icon {
display: flex;
align-items: center;
flex-shrink: 0
}

.header-main-row {
max-width: 1200px;
margin: 0 auto;
padding: 16px 28px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 28px;
box-sizing: border-box
}

.primary-navigation {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
order: 1
}

.primary-navigation a {
font-family: 'PT Sans', sans-serif;
font-size: 15px;
font-weight: 700;
line-height: 1.3;
letter-spacing: .04em;
color: #111820;
text-decoration: none;
padding: 8px 16px;
border-radius: 4px;
border: 2px solid transparent;
display: inline-block;
min-height: 44px;
display: flex;
align-items: center;
transition: color .15s cubic-bezier(0.4, 0, 1, 1), border-color .15s cubic-bezier(0.4, 0, 1, 1), background .15s cubic-bezier(0.4, 0, 1, 1)
}

.primary-navigation a:hover {
color: #B71B1F;
border-color: #B71B1F;
background: #b71b1f0d
}

.primary-navigation a:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 3px;
border-radius: 4px
}

.primary-navigation a.active {
color: #B71B1F;
border-color: #B71B1F
}

.logo-area {
order: 2;
flex-shrink: 0
}

.logo-frame {
display: flex;
align-items: center;
justify-content: center;
width: 85px;
height: 85px;
background: #ffffffeb;
border-radius: 6px;
border: 2px solid #1BFFB3;
box-shadow: -1px 2px 2px -1px #1bffb314 -1px 5px 18px -1px #1bffb317;
padding: 8px;
box-sizing: border-box
}

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

.header-accent-stripe {
height: 4px;
background: linear-gradient(90deg, #1BFFB3 0%, #EB7A05 60%, #B71B1F 100%)
}

.site-footer {
background: #f4f5f6;
box-shadow: 0 -3px 16px -2px #1bffb31f;
padding: 56px 28px 28px;
box-sizing: border-box
}

.footer-upper {
max-width: 1200px;
margin: 0 auto;
display: flex;
align-items: flex-start;
gap: 56px;
padding-bottom: 28px;
border-bottom: 1px solid #d0d3d7;
box-sizing: border-box
}

.footer-logo-area {
flex-shrink: 0
}

.footer-logo-frame {
display: flex;
align-items: center;
justify-content: center;
width: 64px;
height: 64px;
background: #fff;
border-radius: 6px;
border: 2px solid #1BFFB3;
box-shadow: -1px 2px 2px -1px #1bffb314;
padding: 8px;
box-sizing: border-box
}

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

.footer-brand-name {
font-family: 'PT Sans', sans-serif;
font-size: 15px;
font-weight: 700;
color: #111820;
line-height: 1.3;
margin-top: 8px;
letter-spacing: .03em
}

.footer-links-column {
display: flex;
flex-direction: column;
gap: 8px
}

.footer-links-label {
font-family: 'Lato', sans-serif;
font-size: 15px;
font-weight: 700;
color: #4a5260;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 8px
}

.footer-links-column a {
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #2d3440;
text-decoration: none;
line-height: 1.5;
padding: 4px 0;
border-bottom: 1px solid transparent;
transition: color .1s cubic-bezier(0.4, 0, 1, 1), border-color .18s cubic-bezier(0.4, 0, 1, 1);
display: inline-block;
min-height: 44px;
display: flex;
align-items: center
}

.footer-links-column a:hover {
color: #B71B1F;
border-bottom-color: #B71B1F
}

.footer-links-column a:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 2px;
border-radius: 2px
}

.footer-lower {
max-width: 1200px;
margin: 0 auto;
padding-top: 28px;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px;
box-sizing: border-box
}

.footer-copyright {
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #4a5260;
line-height: 1.5
}

.footer-accent-dot {
display: inline-block;
width: 6px;
height: 6px;
background: #1BFFB3;
border-radius: 2px;
margin: 0 8px;
vertical-align: middle
}

.footer-policy-note {
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #4a5260;
line-height: 1.5
}

.footer-policy-note a {
color: #B71B1F;
text-decoration: underline;
transition: color .1s cubic-bezier(0.4, 0, 1, 1)
}

.footer-policy-note a:hover {
color: #EB7A05
}

.footer-policy-note a:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 2px;
border-radius: 2px
}

.cookie-bar {
position: fixed;
top: 0;
left: 0;
width: 100%;
background: #111820;
z-index: 1200;
padding: 16px 28px;
box-sizing: border-box;
border-bottom: 2px solid #1BFFB3;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.cookie-bar[hidden] {
display: none
}

.cookie-bar-inner {
max-width: 1200px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 28px;
flex-wrap: wrap;
box-sizing: border-box
}

.cookie-text-group {
flex: 1;
min-width: 200px
}

.cookie-description {
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #d4d8dd;
line-height: 1.5;
margin: 0 0 8px
}

.cookie-headline {
font-family: 'PT Sans', sans-serif;
font-size: 19px;
font-weight: 700;
color: #fff;
line-height: 1.3;
margin: 0
}

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

.cookie-accept {
font-family: 'PT Sans', sans-serif;
font-size: 15px;
font-weight: 700;
color: #111820;
background: #1BFFB3;
border: 2px solid #1BFFB3;
border-radius: 20px;
padding: 8px 28px;
cursor: pointer;
min-height: 44px;
transition: background .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1), color .12s cubic-bezier(0.4, 0, 1, 1);
letter-spacing: .03em
}

.cookie-accept:hover {
background: #00e8a0;
border-color: #00e8a0
}

.cookie-accept:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 3px
}

.cookie-decline {
font-family: 'PT Sans', sans-serif;
font-size: 15px;
font-weight: 700;
color: #d4d8dd;
background: transparent;
border: 2px solid #4a5260;
border-radius: 20px;
padding: 8px 28px;
cursor: pointer;
min-height: 44px;
transition: border-color .15s cubic-bezier(0.4, 0, 1, 1), color .15s cubic-bezier(0.4, 0, 1, 1);
letter-spacing: .03em
}

.cookie-decline:hover {
border-color: #B71B1F;
color: #fff
}

.cookie-decline:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 3px
}

.cookie-policy-ref {
font-family: 'Lato', sans-serif;
font-size: 15px;
color: #7a8494;
margin-top: 8px;
line-height: 1.5
}

.cookie-policy-ref a {
color: #1BFFB3;
text-decoration: underline;
transition: color .1s cubic-bezier(0.4, 0, 1, 1)
}

.cookie-policy-ref a:hover {
color: #EB7A05
}

.cookie-policy-ref a:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 2px;
border-radius: 2px
}

@media (max-width: 768px) {
.header-top-bar {
padding: 8px 16px;
flex-wrap: wrap;
gap: 8px;
justify-content: flex-start
}

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

.primary-navigation {
order: 2;
gap: 8px
}

.logo-area {
order: 1
}

.footer-upper {
flex-direction: column;
gap: 28px
}

.footer-lower {
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.cookie-bar-inner {
flex-direction: column;
align-items: flex-start
}

.cookie-actions {
width: 100%;
flex-wrap: wrap
}
}

.agreement-block {
max-width: 1200px;
margin: 0 auto;
padding: 56px 28px
}

.agreement-block h1 {
font-size: 41px;
line-height: 1.1;
letter-spacing: -.5px;
color: #111318;
margin-bottom: 28px;
margin-top: 0;
padding-bottom: 16px;
border-bottom: 3px solid #1BFFB3
}

.agreement-block h2 {
font-size: 31px;
line-height: 1.3;
color: #111318;
margin-top: 56px;
margin-bottom: 16px;
letter-spacing: -.2px
}

.agreement-block h3 {
font-size: 24px;
line-height: 1.3;
color: #1a2230;
margin-top: 28px;
margin-bottom: 16px
}

.agreement-block h4 {
font-size: 19px;
line-height: 1.5;
color: #1a2230;
margin-top: 28px;
margin-bottom: 8px;
letter-spacing: .2px
}

.agreement-block h5 {
font-size: 15px;
line-height: 1.5;
color: #1a2230;
margin-top: 16px;
margin-bottom: 8px;
letter-spacing: .4px;
text-transform: uppercase
}

.agreement-block h6 {
font-size: 15px;
line-height: 1.5;
color: #4a5568;
margin-top: 16px;
margin-bottom: 8px;
letter-spacing: .6px;
text-transform: uppercase
}

.agreement-block p {
font-size: 15px;
line-height: 1.7;
color: #2d3748;
margin-top: 0;
margin-bottom: 16px;
max-width: 72ch
}

.agreement-block ul,
.agreement-block ol {
margin-top: 0;
margin-bottom: 16px;
padding-left: 28px;
max-width: 72ch
}

.agreement-block ul {
list-style: none;
padding-left: 0
}

.agreement-block ul li {
padding-left: 28px;
position: relative
}

.agreement-block ul li::before {
content: "";
position: absolute;
left: 8px;
top: 10px;
width: 6px;
height: 6px;
background-color: #1BFFB3;
border-radius: 2px;
display: block
}

.agreement-block ol {
list-style: decimal
}

.agreement-block ol li {
padding-left: 8px
}

.agreement-block li {
font-size: 15px;
line-height: 1.7;
color: #2d3748;
margin-bottom: 8px
}

.agreement-block ul ul,
.agreement-block ol ol,
.agreement-block ul ol,
.agreement-block ol ul {
margin-top: 8px;
margin-bottom: 8px
}

.agreement-block strong,
.agreement-block b {
font-weight: 700;
color: #111318
}

.agreement-block a {
color: #B71B1F;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color .12s cubic-bezier(0.4, 0, 1, 1), text-decoration-color .15s ease-in
}

.agreement-block a:hover {
color: #EB7A05;
text-decoration-color: #EB7A05
}

.agreement-block a:visited {
color: #8a1417
}

.agreement-block hr {
border: none;
border-top: 1px solid #d2d8e0;
margin-top: 56px;
margin-bottom: 56px;
max-width: 100%
}

@media (max-width: 768px) {
.agreement-block {
padding: 28px 16px
}

.agreement-block h1 {
font-size: 31px
}

.agreement-block h2 {
font-size: 24px;
margin-top: 28px
}

.agreement-block h3 {
font-size: 19px
}

.agreement-block hr {
margin-top: 28px;
margin-bottom: 28px
}
}

@media (max-width: 480px) {
.agreement-block {
padding: 16px 8px
}

.agreement-block h1 {
font-size: 24px
}

.agreement-block h2 {
font-size: 19px
}

.agreement-block p,
.agreement-block li {
font-size: 15px
}
}

.archive-detail {
background: #fff;
max-width: 1200px;
margin: 0 auto;
padding: 0;
overflow: hidden
}

.archive-detail .reading-bar {
position: sticky;
top: 0;
left: 0;
width: 100%;
height: 4px;
background: #f0f0f0;
z-index: 100
}

.archive-detail .reading-bar__fill {
height: 100%;
width: 0;
background: linear-gradient(90deg, #1BFFB3, #EB7A05);
transition: width .1s cubic-bezier(0.4, 0, 1, 1)
}

.archive-detail .post-hero {
position: relative;
padding: 96px 56px 56px;
background: linear-gradient(293deg, #1BFFB3 0%, #1BFFB3 18%, #1bffb32e 55%, transparent 100%)
}

.archive-detail .post-hero__dot-grid {
position: absolute;
top: 0;
left: 0;
width: 55%;
height: 100%;
pointer-events: none;
background-image: radial-gradient(circle, #1bffb359 1.5px, transparent 1.5px);
background-size: 22px 22px
}

.archive-detail .post-hero__inner {
max-width: 720px;
margin: 0 auto;
position: relative
}

.archive-detail .post-hero__meta {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-bottom: 28px
}

.archive-detail .post-hero__tag {
font-size: 15px;
line-height: 1.3;
letter-spacing: .12em;
text-transform: uppercase;
background: #B71B1F;
color: #fff;
padding: 4px 12px;
border-radius: 4px;
font-weight: 700
}

.archive-detail .post-hero__readtime {
font-size: 15px;
line-height: 1.3;
color: #3a3a3a;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px
}

.archive-detail .post-hero__readtime svg {
flex-shrink: 0
}

.archive-detail .post-hero__heading {
font-size: 41px;
line-height: 1.1;
letter-spacing: -.01em;
color: #111;
font-weight: 900;
margin: 0 0 28px;
word-break: break-word
}

.archive-detail .post-hero__likes {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
background: #1bffb32e;
border: 1.5px solid #1BFFB3;
border-radius: 6px;
padding: 8px 16px;
font-size: 15px;
line-height: 1.3;
color: #111;
font-weight: 700;
cursor: default
}

.archive-detail .post-hero__likes svg {
flex-shrink: 0
}

.archive-detail .post-image-band {
width: 100%;
padding: 0 56px;
background: #f4f4f1
}

.archive-detail .post-image-band__frame {
max-width: 720px;
margin: 0 auto;
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f;
transform: translateY(-28px)
}

.archive-detail .post-image-band__frame img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
filter: saturate(0.88) contrast(1.06);
transition: filter .18s cubic-bezier(0.4, 0, 1, 1)
}

.archive-detail .post-image-band__frame:hover img {
filter: saturate(0) contrast(1.06)
}

.archive-detail .post-body {
padding: 8px 56px 96px;
background: #f4f4f1
}

.archive-detail .post-body__layout {
max-width: 720px;
margin: 0 auto;
display: grid;
grid-template-columns: 100px 1fr;
gap: 28px;
align-items: start
}

.archive-detail .post-body__sidenote {
padding-top: 8px
}

.archive-detail .post-body__sidenote-label {
font-size: 15px;
line-height: 1.5;
letter-spacing: .1em;
text-transform: uppercase;
color: #B71B1F;
font-weight: 700;
writing-mode: vertical-rl;
text-orientation: mixed;
transform: rotate(180deg);
white-space: nowrap
}

.archive-detail .post-body__text p {
font-size: 19px;
line-height: 1.7;
color: #222;
margin: 0 0 28px
}

.archive-detail .post-body__text h2 {
font-size: 31px;
line-height: 1.3;
font-weight: 800;
color: #111;
letter-spacing: .01em;
margin: 56px 0 16px
}

.archive-detail .post-body__text mark {
background: #b71b1f1f;
color: #111;
padding: 2px 6px;
border-radius: 2px
}

.archive-detail .post-body__text small {
font-size: 15px;
line-height: 1.5;
color: #555;
display: block;
margin-bottom: 16px
}

.archive-detail .post-body__text ol {
font-size: 19px;
line-height: 1.7;
color: #222;
padding-left: 28px;
margin: 0 0 28px
}

.archive-detail .post-body__text ol li {
margin-bottom: 8px
}

.archive-detail .post-body__text blockquote {
border-top: 3px solid #1BFFB3;
border-bottom: 1px solid #1bffb34d;
background: #1bffb314;
margin: 28px 0;
padding: 16px 28px;
border-radius: 4px;
font-size: 24px;
line-height: 1.5;
color: #111;
font-weight: 600
}

.archive-detail .post-body__text details {
margin: 0 0 28px;
border: 1.5px solid #eb7a054d;
border-radius: 6px;
overflow: hidden
}

.archive-detail .post-body__text summary {
font-size: 19px;
line-height: 1.5;
font-weight: 700;
color: #111;
padding: 16px;
cursor: pointer;
background: #eb7a0512;
list-style: none;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
transition: background .12s cubic-bezier(0.4, 0, 1, 1)
}

.archive-detail .post-body__text summary:hover {
background: #eb7a0524
}

.archive-detail .post-body__text summary::after {
content: '';
width: 10px;
height: 10px;
border-right: 2px solid #EB7A05;
border-bottom: 2px solid #EB7A05;
transform: rotate(45deg);
display: inline-block;
transition: transform .14s cubic-bezier(0.4, 0, 1, 1);
flex-shrink: 0
}

.archive-detail .post-body__text details[open] summary::after {
transform: rotate(-135deg)
}

.archive-detail .post-body__text details> :not(summary) {
padding: 16px;
font-size: 19px;
line-height: 1.7;
color: #222
}

.archive-detail .post-metric-strip {
padding: 56px;
background: #111;
position: relative
}

.archive-detail .post-metric-strip__diagonal {
position: absolute;
top: 0;
right: 0;
width: 200px;
height: 100%;
pointer-events: none;
overflow: hidden
}

.archive-detail .post-metric-strip__diagonal svg {
width: 100%;
height: 100%
}

.archive-detail .post-metric-strip__inner {
max-width: 720px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 56px;
flex-wrap: wrap
}

.archive-detail .post-metric-strip__heading {
font-size: 24px;
line-height: 1.3;
color: #fff;
font-weight: 800;
letter-spacing: .04em;
flex: 0 0 auto;
max-width: 240px
}

.archive-detail .post-metric-strip__heading span {
color: #1BFFB3
}

.archive-detail .metric-group {
display: flex;
flex-direction: row;
gap: 28px;
flex-wrap: wrap;
flex: 1 1 auto
}

.archive-detail .metric-item {
display: flex;
flex-direction: column;
gap: 8px;
min-width: 120px
}

.archive-detail .metric-item__value {
font-size: 41px;
line-height: 1.1;
font-weight: 900;
color: #1BFFB3;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px
}

.archive-detail .metric-item__arrow {
display: inline-block;
width: 0;
height: 0;
border-left: 8px solid transparent;
border-right: 8px solid transparent;
border-bottom: 12px solid #1BFFB3;
flex-shrink: 0
}

.archive-detail .metric-item__label {
font-size: 15px;
line-height: 1.3;
color: #ffffffa6;
letter-spacing: .08em;
text-transform: uppercase
}

.archive-detail .post-cta {
padding: 96px 56px;
background: #fff;
position: relative
}

.archive-detail .post-cta__diagonal-lines {
position: absolute;
bottom: 0;
right: 0;
width: 180px;
height: 180px;
pointer-events: none;
overflow: hidden
}

.archive-detail .post-cta__diagonal-lines svg {
width: 100%;
height: 100%;
opacity: .13
}

.archive-detail .post-cta__inner {
max-width: 720px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: center
}

.archive-detail .post-cta__copy {
display: flex;
flex-direction: column;
gap: 16px
}

.archive-detail .post-cta__heading {
font-size: 31px;
line-height: 1.3;
font-weight: 900;
color: #111;
letter-spacing: .01em;
margin: 0
}

.archive-detail .post-cta__text {
font-size: 19px;
line-height: 1.7;
color: #333;
margin: 0
}

.archive-detail .post-cta__actions {
display: flex;
flex-direction: column;
gap: 16px;
align-items: flex-start
}

.archive-detail .btn-primary {
display: inline-block;
padding: 16px 28px;
background: #B71B1F;
color: #fff;
font-size: 19px;
font-weight: 700;
line-height: 1.3;
border-radius: 6px;
text-decoration: none;
border: 2px solid #B71B1F;
cursor: pointer;
transition: border-color .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .15s cubic-bezier(0.4, 0, 1, 1), background .12s cubic-bezier(0.4, 0, 1, 1);
box-shadow: -1px 5px 18px -1px #b71b1f17;
position: relative;
outline: none
}

.archive-detail .btn-primary:hover {
background: #8f1417;
border-color: #8f1417;
box-shadow: -1px 10px 40px -1px #b71b1f2e 0 0 0 4px #b71b1f1f
}

.archive-detail .btn-primary:focus {
box-shadow: -1px 5px 18px -1px #b71b1f17 0 0 0 3px #1BFFB3
}

.archive-detail .btn-secondary {
display: inline-block;
padding: 14px 28px;
background: transparent;
color: #111;
font-size: 19px;
font-weight: 600;
line-height: 1.3;
border-radius: 6px;
text-decoration: none;
border: 2px solid #111;
cursor: pointer;
transition: border-color .15s cubic-bezier(0.4, 0, 1, 1), color .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .15s cubic-bezier(0.4, 0, 1, 1);
outline: none
}

.archive-detail .btn-secondary:hover {
border-color: #EB7A05;
color: #EB7A05;
box-shadow: 0 0 0 4px #eb7a051a
}

.archive-detail .btn-secondary:focus {
box-shadow: 0 0 0 3px #1BFFB3
}

@keyframes slide-up-a {
from {
opacity: 0;
transform: translateY(32px)
}

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

@keyframes slide-up-b {
from {
opacity: 0;
transform: translateY(24px)
}

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

@keyframes slide-up-c {
from {
opacity: 0;
transform: translateY(16px)
}

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

.archive-detail .post-hero__meta {
animation: slide-up-a .16s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: .04s
}

.archive-detail .post-hero__heading {
animation: slide-up-b .16s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: .09s
}

.archive-detail .post-hero__likes {
animation: slide-up-c .15s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: .14s
}

.archive-detail .post-image-band__frame {
animation: slide-up-a .16s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: .18s
}

.archive-detail .post-body__layout {
animation: slide-up-b .15s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: .22s
}

@media (max-width: 900px) {
.archive-detail .post-hero {
padding: 56px 28px
}

.archive-detail .post-image-band {
padding: 0 28px
}

.archive-detail .post-body {
padding: 8px 28px 56px
}

.archive-detail .post-body__layout {
grid-template-columns: 1fr;
gap: 16px
}

.archive-detail .post-body__sidenote {
display: none
}

.archive-detail .post-metric-strip {
padding: 56px 28px
}

.archive-detail .post-metric-strip__inner {
flex-direction: column;
gap: 28px;
align-items: flex-start
}

.archive-detail .post-metric-strip__heading {
max-width: 100%
}

.archive-detail .post-cta {
padding: 56px 28px
}

.archive-detail .post-cta__inner {
grid-template-columns: 1fr;
gap: 28px
}
}

@media (max-width: 600px) {
.archive-detail .post-hero__heading {
font-size: 31px
}

.archive-detail .post-image-band__frame img {
height: 240px
}

.archive-detail .metric-group {
gap: 16px
}

.archive-detail .metric-item__value {
font-size: 31px
}

.archive-detail .post-cta__heading {
font-size: 24px
}
}

.archive {
background: #fff;
overflow-x: clip;
padding: 0
}

.archive .page-lead {
max-width: 1200px;
margin: 0 auto;
padding: 56px 28px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px;
align-items: center
}

.archive .page-lead__bento {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto auto;
gap: 16px
}

.archive .lead-image-cell {
grid-column: 1;
grid-row: 1 / 3;
position: relative;
border-radius: 12px;
overflow: hidden;
min-height: 260px
}

.archive .lead-image-cell img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: filter .15s cubic-bezier(0.4, 0, 1, 1)
}

.archive .lead-image-cell:hover img {
filter: saturate(0)
}

.archive .lead-image-cell::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 60%;
height: 60%;
background: radial-gradient(ellipse at top left, #1bffb361 0%, transparent 70%);
pointer-events: none;
border-radius: 12px 0 0 0
}

.archive .lead-shape-a {
grid-column: 2;
grid-row: 1;
border-radius: 12px;
background: linear-gradient(293deg, #1bffb32e 0%, transparent 100%);
border: 1.5px solid #1bffb347;
min-height: 80px;
position: relative
}

.archive .lead-shape-b {
grid-column: 2;
grid-row: 2;
border-radius: 6px;
background: #b71b1f0f;
border: 1.5px solid #b71b1f24;
min-height: 80px
}

.archive .lead-text {
padding: 8px 0
}

.archive .lead-text__label {
font-size: 15px;
letter-spacing: .12em;
color: #B71B1F;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.3
}

.archive .lead-text__heading {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #111318;
margin-bottom: 16px;
letter-spacing: .01em
}

.archive .lead-text__desc {
font-size: 19px;
line-height: 1.5;
color: #2a2d35;
max-width: 480px
}

.archive .lead-text__desc aside {
display: block;
font-size: 15px;
color: #B71B1F;
border-top: 1.5px solid #b71b1f2e;
margin-top: 16px;
padding-top: 8px;
line-height: 1.5
}

.archive .wave-divider {
width: 100%;
overflow: hidden;
line-height: 0;
height: 48px
}

.archive .wave-divider svg {
display: block;
width: 100%;
height: 48px
}

.archive .posts-band {
background: #f4f6f8;
padding: 56px 0;
position: relative
}

.archive .posts-band::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 0% 0%, #1bffb312 0%, transparent 55%), radial-gradient(ellipse at 100% 100%, #b71b1f0d 0%, transparent 50%);
pointer-events: none
}

.archive .posts-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 28px
}

.archive .posts-heading-row {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 28px;
margin-bottom: 28px
}

.archive .posts-heading-row h2 {
font-size: 31px;
font-weight: 800;
color: #111318;
line-height: 1.1;
letter-spacing: .03em;
flex: 1
}

.archive .posts-count {
font-size: 15px;
color: #B71B1F;
letter-spacing: .1em;
text-transform: uppercase;
padding-bottom: 4px
}

.archive .card-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px
}

.archive .post-card {
background: #fff;
border-radius: 12px;
box-shadow: -1px 5px 18px -1px #1bffb317;
display: flex;
flex-direction: column;
overflow: hidden;
transition: box-shadow .12s cubic-bezier(0.4, 0, 1, 1), transform .12s cubic-bezier(0.4, 0, 1, 1);
text-decoration: none !important;
color: inherit
}

.archive .post-card:hover {
box-shadow: -1px 10px 40px -1px #1bffb31f;
transform: translateY(-2px)
}

.archive .post-card:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 3px
}

.archive .card-img-wrap {
width: 100%;
height: 180px;
overflow: hidden;
position: relative;
background: #e8ecf0
}

.archive .card-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: filter .15s cubic-bezier(0.4, 0, 1, 1)
}

.archive .post-card:hover .card-img-wrap img {
filter: saturate(0)
}

.archive .card-img-placeholder {
width: 100%;
height: 100%;
background: linear-gradient(293deg, #1bffb326 0%, #eb7a0514 100%);
display: flex;
align-items: center;
justify-content: center
}

.archive .card-img-placeholder svg {
opacity: .35
}

.archive .card-body {
padding: 16px 16px 8px;
flex: 1;
display: flex;
flex-direction: column;
gap: 8px
}

.archive .card-title {
font-size: 19px;
font-weight: 700;
color: #111318;
line-height: 1.3;
margin: 0
}

.archive .card-desc {
font-size: 15px;
line-height: 1.5;
color: #3a3e4a;
margin: 0;
flex: 1
}

.archive .card-meta {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 8px 16px 16px;
border-top: 1px solid #1bffb32e;
margin-top: auto
}

.archive .card-readtime {
font-size: 15px;
color: #5a5f6e;
letter-spacing: .04em;
display: flex;
align-items: center;
gap: 8px
}

.archive .card-readtime-icon {
width: 16px;
height: 16px;
display: inline-block;
flex-shrink: 0
}

.archive .card-likes {
display: flex;
align-items: center;
gap: 8px;
font-size: 15px;
color: #B71B1F;
font-weight: 600
}

.archive .card-likes-icon {
width: 16px;
height: 16px;
display: inline-block;
flex-shrink: 0
}

.archive .fill-bar-wrap {
height: 3px;
background: #1bffb326;
border-radius: 2px;
overflow: hidden;
margin: 0 16px
}

.archive .fill-bar {
height: 100%;
width: 0;
background: #1BFFB3;
border-radius: 2px;
animation: fill-left-right .18s cubic-bezier(0.4, 0, 1, 1) .05s forwards
}

@keyframes fill-left-right {
from {
width: 0
}

to {
width: 100%
}
}

.archive .post-card:nth-child(2) .fill-bar {
animation-delay: .09s
}

.archive .post-card:nth-child(3) .fill-bar {
animation-delay: .13s
}

.archive .post-card:nth-child(4) .fill-bar {
animation-delay: .17s
}

.archive .post-card:nth-child(5) .fill-bar {
animation-delay: .21s
}

.archive .post-card:nth-child(6) .fill-bar {
animation-delay: .25s
}

.archive .wave-divider-2 {
width: 100%;
overflow: hidden;
line-height: 0;
height: 44px
}

.archive .wave-divider-2 svg {
display: block;
width: 100%;
height: 44px
}

.archive .metrics-band {
background: #fff;
padding: 56px 0;
position: relative
}

.archive .metrics-band::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 95% 10%, #eb7a0512 0%, transparent 50%);
pointer-events: none
}

.archive .metrics-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 28px
}

.archive .metrics-layout {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 28px;
align-items: stretch
}

.archive .metric-col {
border-radius: 12px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 16px
}

.archive .metric-col.primary-bg {
background: linear-gradient(293deg, #1bffb324 0%, #1bffb30a 100%);
border: 1.5px solid #1bffb34d
}

.archive .metric-col.secondary-bg {
background: #111318;
border: 1.5px solid #1BFFB3
}

.archive .metric-col.tertiary-bg {
background: linear-gradient(293deg, #eb7a051a 0%, #eb7a0508 100%);
border: 1.5px solid #eb7a0540
}

.archive .metric-col-label {
font-size: 15px;
letter-spacing: .1em;
text-transform: uppercase;
line-height: 1.3
}

.archive .metric-col.primary-bg .metric-col-label {
color: #B71B1F
}

.archive .metric-col.secondary-bg .metric-col-label {
color: #1BFFB3
}

.archive .metric-col.tertiary-bg .metric-col-label {
color: #EB7A05
}

.archive .metric-col-heading {
font-size: 24px;
font-weight: 800;
line-height: 1.1;
margin: 0
}

.archive .metric-col.primary-bg .metric-col-heading {
color: #111318
}

.archive .metric-col.secondary-bg .metric-col-heading {
color: #fff
}

.archive .metric-col.tertiary-bg .metric-col-heading {
color: #111318
}

.archive .metric-col-text {
font-size: 15px;
line-height: 1.5;
flex: 1
}

.archive .metric-col.primary-bg .metric-col-text {
color: #2a2d35
}

.archive .metric-col.secondary-bg .metric-col-text {
color: #c8cdd8
}

.archive .metric-col.tertiary-bg .metric-col-text {
color: #2a2d35
}

.archive .before-after {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
margin-top: 8px
}

.archive .before-after__value {
font-size: 31px;
font-weight: 800;
line-height: 1.1
}

.archive .before-after__value.before {
color: #B71B1F;
text-decoration: line-through;
text-decoration-thickness: 2px
}

.archive .before-after__value.after {
color: #1BFFB3
}

.archive .before-after__arrow {
display: flex;
align-items: center
}

.archive .before-after__arrow svg {
display: block
}

.archive .metric-col.secondary-bg .before-after__value.before {
color: #EB7A05
}

.archive .metric-comparison {
display: flex;
flex-direction: row;
gap: 8px;
margin-top: 8px
}

.archive .comparison-option {
flex: 1;
border-radius: 6px;
padding: 8px;
display: flex;
flex-direction: column;
gap: 8px
}

.archive .comparison-option.opt-a {
background: #b71b1f1f;
border: 1px solid #b71b1f38
}

.archive .comparison-option.opt-b {
background: #1bffb324;
border: 1px solid #1bffb34d
}

.archive .comparison-option__label {
font-size: 15px;
font-weight: 700;
letter-spacing: .06em
}

.archive .comparison-option.opt-a .comparison-option__label {
color: #B71B1F
}

.archive .comparison-option.opt-b .comparison-option__label {
color: #0a8a5c
}

.archive .comparison-option__text {
font-size: 15px;
line-height: 1.5;
color: #2a2d35
}

.archive .wave-divider-3 {
width: 100%;
overflow: hidden;
line-height: 0;
height: 40px
}

.archive .wave-divider-3 svg {
display: block;
width: 100%;
height: 40px
}

.archive .cta-band {
background: #111318;
padding: 56px 0;
position: relative
}

.archive .cta-band::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 8% 90%, #1bffb31a 0%, transparent 50%), radial-gradient(ellipse at 92% 10%, #b71b1f14 0%, transparent 45%);
pointer-events: none
}

.archive .cta-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 28px;
display: grid;
grid-template-columns: 1fr auto;
gap: 56px;
align-items: center
}

.archive .cta-text h2 {
font-size: 31px;
font-weight: 800;
color: #fff;
line-height: 1.1;
margin-bottom: 16px;
letter-spacing: .02em
}

.archive .cta-text p {
font-size: 19px;
line-height: 1.5;
color: #a8adb8;
max-width: 520px
}

.archive .cta-text p aside {
display: block;
font-size: 15px;
color: #1bffb3b3;
margin-top: 8px;
line-height: 1.5
}

.archive .cta-actions {
display: flex;
flex-direction: column;
gap: 16px;
align-items: flex-end
}

.archive .btn-primary {
display: inline-block;
background: #1BFFB3;
color: #111318;
font-size: 15px;
font-weight: 700;
letter-spacing: .06em;
text-transform: uppercase;
padding: 16px 28px;
border-radius: 4px;
border: 2px solid #1BFFB3;
text-decoration: none !important;
cursor: pointer;
transition: background .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1), color .12s cubic-bezier(0.4, 0, 1, 1);
white-space: nowrap
}

.archive .btn-primary:hover {
background: transparent;
color: #1BFFB3
}

.archive .btn-secondary {
display: inline-block;
background: transparent;
color: #fff;
font-size: 15px;
font-weight: 600;
letter-spacing: .05em;
text-transform: uppercase;
padding: 14px 28px;
border-radius: 4px;
border: 2px solid #ffffff4d;
text-decoration: none !important;
cursor: pointer;
transition: border-color .16s cubic-bezier(0.4, 0, 1, 1), color .16s cubic-bezier(0.4, 0, 1, 1);
white-space: nowrap
}

.archive .btn-secondary:hover {
border-color: #fff;
color: #1BFFB3
}

@media (max-width: 900px) {
.archive .page-lead {
grid-template-columns: 1fr;
padding: 28px 16px
}

.archive .card-grid {
grid-template-columns: repeat(2, 1fr)
}

.archive .metrics-layout {
grid-template-columns: 1fr
}

.archive .cta-container {
grid-template-columns: 1fr;
gap: 28px
}

.archive .cta-actions {
align-items: flex-start
}

.archive .lead-text__heading {
font-size: 31px
}
}

@media (max-width: 600px) {
.archive .card-grid {
grid-template-columns: 1fr
}

.archive .page-lead__bento {
grid-template-columns: 1fr
}

.archive .lead-image-cell {
grid-row: auto;
min-height: 180px
}

.archive .lead-shape-a,
.archive .lead-shape-b {
display: none
}

.archive .posts-container,
.archive .metrics-container,
.archive .cta-container {
padding: 0 16px
}
}

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

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

.contact-us-page .grain-band {
position: relative;
padding: 56px 28px;
background: #f4f4f4
}

.contact-us-page .grain-band::before {
content: "";
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.09'/%3E%3C/svg%3E");
background-repeat: repeat;
pointer-events: none;
z-index: 0
}

.contact-us-page .grain-band::after {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 60% 50%, #1bffb312 0%, transparent 70%);
pointer-events: none;
z-index: 0
}

.contact-us-page .dot-scatter {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
overflow: hidden
}

.contact-us-page .dot-scatter span {
position: absolute;
width: 3px;
height: 3px;
border-radius: 2px;
background: #1BFFB3;
opacity: .18
}

.contact-us-page .dot-scatter span:nth-child(1) {
top: 12%;
left: 5%
}

.contact-us-page .dot-scatter span:nth-child(2) {
top: 28%;
left: 18%
}

.contact-us-page .dot-scatter span:nth-child(3) {
top: 55%;
left: 8%
}

.contact-us-page .dot-scatter span:nth-child(4) {
top: 75%;
left: 22%
}

.contact-us-page .dot-scatter span:nth-child(5) {
top: 90%;
left: 11%
}

.contact-us-page .dot-scatter span:nth-child(6) {
top: 18%;
left: 85%
}

.contact-us-page .dot-scatter span:nth-child(7) {
top: 42%;
left: 92%
}

.contact-us-page .dot-scatter span:nth-child(8) {
top: 68%;
left: 78%
}

.contact-us-page .dot-scatter span:nth-child(9) {
top: 85%;
left: 88%
}

.contact-us-page .dot-scatter span:nth-child(10) {
top: 35%;
left: 50%
}

.contact-us-page .dot-scatter span:nth-child(11) {
top: 60%;
left: 40%
}

.contact-us-page .dot-scatter span:nth-child(12) {
top: 8%;
left: 60%
}

.contact-us-page .band-container {
position: relative;
z-index: 1;
max-width: 1200px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 56px
}

.contact-us-page .band-text {
flex: 1 1 0
}

.contact-us-page .band-label {
display: inline-block;
font-size: 15px;
letter-spacing: .18em;
color: #B71B1F;
background: #b71b1f14;
border-radius: 4px;
padding: 4px 16px;
margin-bottom: 16px;
line-height: 1.5;
text-transform: uppercase
}

.contact-us-page .band-heading {
font-size: 41px;
line-height: 1.1;
color: #111;
font-weight: 800;
letter-spacing: .04em;
margin: 0 0 16px
}

.contact-us-page .band-heading .accent-term {
background: #1bffb347;
border-radius: 2px;
padding: 0 6px;
color: #0a6644
}

.contact-us-page .band-manifesto {
font-size: 19px;
line-height: 1.5;
color: #333;
margin: 0;
max-width: 480px
}

.contact-us-page .band-visual {
flex: 0 0 220px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 16px
}

.contact-us-page .depth-blur-frame {
width: 180px;
height: 180px;
border-radius: 12px;
position: relative;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.contact-us-page .depth-blur-frame .blur-bg {
position: absolute;
inset: 0;
background: linear-gradient(293deg, #1BFFB3 0%, #1bffb31f 60%, transparent 100%);
z-index: 0
}

.contact-us-page .depth-blur-frame .blur-fg {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 60%;
background: #ffffff8c;
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
z-index: 1;
border-radius: 0 0 12px 12px
}

.contact-us-page .depth-blur-frame .blur-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -60%);
z-index: 2
}

.contact-us-page .depth-blur-frame .blur-icon svg {
width: 56px;
height: 56px;
display: block
}

.contact-us-page .read-arrow {
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
opacity: .28
}

.contact-us-page .read-arrow svg {
width: 18px;
height: 28px
}

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

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

.contact-us-page .form-section {
padding: 96px 28px;
background: #fff;
position: relative
}

.contact-us-page .form-section::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 30% 60%, #eb7a050d 0%, transparent 65%);
pointer-events: none
}

.contact-us-page .form-grid {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1.4fr;
gap: 96px;
align-items: start;
position: relative;
z-index: 1
}

.contact-us-page .contact-details-column {
display: flex;
flex-direction: column;
gap: 28px
}

.contact-us-page .contact-details-column .section-eyebrow {
font-size: 15px;
letter-spacing: .16em;
color: #EB7A05;
text-transform: uppercase;
line-height: 1.5
}

.contact-us-page .contact-details-column .column-heading {
font-size: 31px;
font-weight: 700;
color: #111;
line-height: 1.3;
margin: 0;
letter-spacing: .03em
}

.contact-us-page .contact-details-column .column-body {
font-size: 15px;
line-height: 1.7;
color: #444;
margin: 0
}

.contact-us-page .side-note-layout {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.contact-us-page .side-note {
flex: 0 0 72px;
font-size: 15px;
color: #B71B1F;
letter-spacing: .08em;
line-height: 1.5;
text-align: right;
padding-top: 2px;
text-transform: uppercase
}

.contact-us-page .side-note-body {
flex: 1 1 0;
font-size: 15px;
line-height: 1.7;
color: #333
}

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

.contact-us-page .detail-items li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px
}

.contact-us-page .detail-icon {
flex: 0 0 32px;
height: 32px;
border-radius: 6px;
background: #1bffb326;
display: flex;
align-items: center;
justify-content: center
}

.contact-us-page .detail-icon svg {
width: 16px;
height: 16px;
display: block
}

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

.contact-us-page .detail-label {
font-size: 15px;
color: #888;
letter-spacing: .1em;
text-transform: uppercase;
line-height: 1.3
}

.contact-us-page .detail-value {
font-size: 15px;
color: #111;
line-height: 1.5;
font-weight: 500
}

.contact-us-page .detail-value a {
color: #111;
text-decoration: none;
transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.contact-us-page .detail-value a:hover {
color: #B71B1F
}

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

.contact-us-page .form-heading {
font-size: 24px;
font-weight: 700;
color: #111;
line-height: 1.3;
letter-spacing: .04em;
margin: 0
}

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

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

.contact-us-page .field-label {
font-size: 15px;
color: #333;
font-weight: 600;
line-height: 1.3;
letter-spacing: .04em
}

.contact-us-page .field-label .required-mark {
color: #B71B1F;
margin-left: 4px
}

.contact-us-page .text-input {
width: 100%;
padding: 16px;
border: 1.5px solid #d8d8d8;
border-radius: 6px;
font-size: 15px;
color: #111;
background: #fff;
line-height: 1.5;
transition: border-color .15s cubic-bezier(0.4, 0, 1, 1), box-shadow .15s cubic-bezier(0.4, 0, 1, 1);
box-shadow: inset 0 1px 3px #1bffb30f;
outline: none;
text-overflow: ellipsis
}

.contact-us-page .text-input::placeholder {
color: #aaa;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}

.contact-us-page .text-input:focus {
border-color: #1BFFB3;
box-shadow: inset 0 1px 3px #1bffb314 -1px 5px 18px -1px #1bffb317
}

.contact-us-page .select-input {
width: 100%;
padding: 16px;
border: 1.5px solid #d8d8d8;
border-radius: 6px;
font-size: 15px;
color: #111;
background: #fff;
line-height: 1.5;
transition: border-color .13s cubic-bezier(0.4, 0, 1, 1);
box-shadow: inset 0 1px 3px #1bffb30f;
outline: none;
appearance: none;
-webkit-appearance: none;
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 d='M4 6l4 4 4-4' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
padding-right: 40px;
cursor: pointer
}

.contact-us-page .select-input:focus {
border-color: #1BFFB3;
box-shadow: inset 0 1px 3px #1bffb314 -1px 5px 18px -1px #1bffb317
}

.contact-us-page .time-pref-group {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.contact-us-page .radio-card-group {
display: flex;
flex-direction: column;
gap: 8px
}

.contact-us-page .radio-card {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
padding: 12px 16px;
border: 1.5px solid #e0e0e0;
border-radius: 6px;
cursor: pointer;
transition: border-color .12s cubic-bezier(0.4, 0, 1, 1), background .12s cubic-bezier(0.4, 0, 1, 1);
background: #fff
}

.contact-us-page .radio-card:hover {
border-color: #1BFFB3;
background: #1bffb30a
}

.contact-us-page .radio-card input[type="radio"] {
accent-color: #1BFFB3;
width: 18px;
height: 18px;
cursor: pointer;
flex-shrink: 0
}

.contact-us-page .radio-card input[type="radio"]:focus-visible {
outline: 2px solid #1BFFB3;
outline-offset: 2px
}

.contact-us-page .radio-card:has(input:checked) {
border-color: #1BFFB3;
background: #1bffb314
}

.contact-us-page .radio-label {
font-size: 15px;
color: #333;
line-height: 1.3;
cursor: pointer
}

.contact-us-page .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
background: #eb7a050d;
border-radius: 6px;
border: 1px solid #eb7a0526
}

.contact-us-page .privacy-row input[type="checkbox"] {
accent-color: #B71B1F;
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
cursor: pointer
}

.contact-us-page .privacy-row input[type="checkbox"]:focus-visible {
outline: 2px solid #B71B1F;
outline-offset: 2px
}

.contact-us-page .privacy-text {
font-size: 15px;
color: #444;
line-height: 1.5
}

.contact-us-page .privacy-text a {
color: #B71B1F;
text-decoration: underline;
text-underline-offset: 2px;
transition: color .11s cubic-bezier(0.4, 0, 1, 1)
}

.contact-us-page .privacy-text a:hover {
color: #8a1215
}

.contact-us-page .submit-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 56px;
background: #111;
color: #1BFFB3;
font-size: 15px;
font-weight: 700;
letter-spacing: .1em;
text-transform: uppercase;
border: 2px solid #111;
border-radius: 4px;
cursor: pointer;
transition: background .14s cubic-bezier(0.4, 0, 1, 1), color .14s cubic-bezier(0.4, 0, 1, 1), border-color .14s cubic-bezier(0.4, 0, 1, 1), outline-offset .1s cubic-bezier(0.4, 0, 1, 1);
align-self: flex-start;
position: relative;
outline: 2px solid transparent;
outline-offset: 0
}

.contact-us-page .submit-btn:hover {
background: #1BFFB3;
color: #111;
border-color: #1BFFB3;
outline: 2px solid #1BFFB3;
outline-offset: 4px
}

.contact-us-page .submit-btn:focus-visible {
outline: 3px solid #1BFFB3;
outline-offset: 4px
}

.contact-us-page .submit-btn:active {
background: #0fd494;
border-color: #0fd494;
color: #111
}

.contact-us-page .fill-bar {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 0;
background: #1bffb326;
border-radius: 4px;
transition: width .16s linear;
pointer-events: none;
z-index: 0
}

.contact-us-page .submit-btn:hover .fill-bar {
width: 100%
}

.contact-us-page .submit-btn span {
position: relative;
z-index: 1
}

.contact-us-page .archive-note {
font-size: 15px;
color: #888;
line-height: 1.5;
margin-top: 8px
}

.contact-us-page .archive-note a {
color: #EB7A05;
text-decoration: underline;
text-underline-offset: 2px;
transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.contact-us-page .archive-note a:hover {
color: #b35c00
}

@media (max-width: 900px) {
.contact-us-page .band-container {
flex-direction: column;
gap: 28px
}

.contact-us-page .band-visual {
flex: 0 0 auto
}

.contact-us-page .form-grid {
grid-template-columns: 1fr;
gap: 56px
}

.contact-us-page .time-pref-group {
grid-template-columns: 1fr
}
}

@media (max-width: 600px) {
.contact-us-page .band-heading {
font-size: 31px
}

.contact-us-page .form-section {
padding: 56px 16px
}

.contact-us-page .grain-band {
padding: 56px 16px
}

.contact-us-page .submit-btn {
width: 100%
}
}

.prime {
background: #fff;
overflow-x: clip
}

.prime * {
box-sizing: border-box
}

.prime ::selection {
background: #111827;
color: #fff;
font-weight: 700
}

.prime .split-hero {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 560px;
position: relative
}

.prime .split-hero__text-panel {
background: #111827;
padding: 96px 56px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
overflow: hidden
}

.prime .split-hero__circles {
position: absolute;
inset: 0;
pointer-events: none
}

.prime .split-hero__circle {
position: absolute;
border-radius: 50%;
border: 1px solid #1bffb314
}

.prime .split-hero__circle.c1 {
width: 320px;
height: 320px;
top: -80px;
left: -80px;
background: #1bffb30a
}

.prime .split-hero__circle.c2 {
width: 200px;
height: 200px;
bottom: -40px;
right: 40px;
background: #eb7a050a
}

.prime .split-hero__circle.c3 {
width: 120px;
height: 120px;
top: 60%;
left: 20%;
background: #1bffb308
}

.prime .split-hero__eyebrow {
font-size: 15px;
letter-spacing: .14em;
color: #1BFFB3;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.3;
position: relative;
z-index: 1
}

.prime .split-hero__headline {
font-size: 41px;
line-height: 1.1;
color: #fff;
font-weight: 800;
letter-spacing: .02em;
margin-bottom: 28px;
position: relative;
z-index: 1;
clip-path: inset(0 100% 0 0);
animation: reveal-clip .16s cubic-bezier(0.4, 0, 1, 1) .05s forwards
}

.prime .split-hero__sub {
font-size: 19px;
line-height: 1.5;
color: #c8cfd8;
margin-bottom: 28px;
position: relative;
z-index: 1;
max-width: 420px;
clip-path: inset(0 100% 0 0);
animation: reveal-clip .15s cubic-bezier(0.4, 0, 1, 1) .12s forwards
}

.prime .split-hero__accent-line {
width: 56px;
height: 3px;
background: #1BFFB3;
margin-bottom: 28px;
position: relative;
z-index: 1
}

.prime .split-hero__cta-row {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
position: relative;
z-index: 1;
flex-wrap: wrap
}

.prime .btn-primary {
display: inline-block;
padding: 16px 28px;
background: #1BFFB3;
color: #111827;
font-size: 15px;
font-weight: 700;
letter-spacing: .06em;
text-transform: uppercase;
border-radius: 4px;
text-decoration: none;
border: 2px solid #1BFFB3;
transition: background .14s cubic-bezier(0.4, 0, 1, 1), color .14s cubic-bezier(0.4, 0, 1, 1), border-color .14s cubic-bezier(0.4, 0, 1, 1);
cursor: pointer
}

.prime .btn-primary:hover {
background: transparent;
color: #1BFFB3
}

.prime .btn-outline {
display: inline-block;
padding: 16px 28px;
background: transparent;
color: #fff;
font-size: 15px;
font-weight: 600;
letter-spacing: .06em;
text-transform: uppercase;
border-radius: 4px;
text-decoration: none;
border: 2px solid #ffffff4d;
transition: border-color .11s ease-in, color .11s ease-in;
cursor: pointer
}

.prime .btn-outline:hover {
border-color: #fff;
color: #fff
}

.prime .split-hero__image-panel {
position: relative;
overflow: hidden;
background: #0d1117;
min-height: 480px
}

.prime .split-hero__image-panel img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.85);
transition: filter .15s ease-in
}

.prime .split-hero__image-panel:hover img {
filter: saturate(0)
}

.prime .split-hero__vignette {
position: absolute;
inset: 0;
background: linear-gradient(293deg, #0d1117b8 0%, transparent 60%);
pointer-events: none
}

@keyframes reveal-clip {
to {
clip-path: inset(0 0% 0 0)
}
}

.prime .divider-shadow {
height: 28px;
background: linear-gradient(to bottom, #1bffb312 0%, transparent 100%);
filter: blur(4px);
margin: 0
}

.prime .available {
padding: 96px 56px;
background: #f4f7f5;
position: relative
}

.prime .available::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse at 50% 50%, #fff 30%, #e6ede9 100%);
pointer-events: none
}

.prime .available__container {
max-width: 1200px;
margin: 0 auto;
position: relative
}

.prime .available__grid {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 56px;
align-items: start
}

.prime .available__label {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #B71B1F;
margin-bottom: 16px;
line-height: 1.3
}

.prime .available__heading {
font-size: 31px;
font-weight: 800;
line-height: 1.1;
color: #111827;
letter-spacing: .03em;
margin-bottom: 16px
}

.prime .available__accent {
width: 40px;
height: 3px;
background: #B71B1F;
margin-bottom: 28px
}

.prime .available__aside {
font-size: 15px;
line-height: 1.7;
color: #5a6470;
border-right: 1px solid #d1d9d4;
padding-right: 28px
}

.prime .available__tracks {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.prime .track-card {
background: #fff;
border-radius: 6px;
padding: 28px;
box-shadow: -1px 2px 2px -1px #1bffb314;
transition: box-shadow .13s ease-in, transform .13s ease-in;
clip-path: inset(0 100% 0 0);
animation: reveal-clip .15s cubic-bezier(0.4, 0, 1, 1) forwards
}

.prime .track-card:nth-child(1) {
animation-delay: .06s
}

.prime .track-card:nth-child(2) {
animation-delay: .1s
}

.prime .track-card:nth-child(3) {
animation-delay: .14s
}

.prime .track-card:nth-child(4) {
animation-delay: .17s
}

.prime .track-card:hover {
box-shadow: -1px 5px 18px -1px #1bffb317;
transform: translateY(-2px)
}

.prime .track-card__icon {
width: 36px;
height: 36px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: center;
background: #1bffb31a;
border-radius: 6px
}

.prime .track-card__name {
font-size: 19px;
font-weight: 700;
color: #111827;
line-height: 1.3;
margin-bottom: 8px;
letter-spacing: .02em
}

.prime .track-card__desc {
font-size: 15px;
line-height: 1.5;
color: #5a6470
}

.prime .divider-line {
height: 1px;
background: linear-gradient(90deg, transparent, #b71b1f33, transparent);
margin: 0
}

.prime .proof {
padding: 96px 56px;
background: #111827;
position: relative
}

.prime .proof::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 50% 50%, #1a2332 30%, #0d1117 100%);
pointer-events: none
}

.prime .proof__container {
max-width: 1200px;
margin: 0 auto;
position: relative
}

.prime .proof__top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
margin-bottom: 56px;
align-items: center
}

.prime .proof__image-wrap {
position: relative;
border-radius: 6px;
overflow: hidden
}

.prime .proof__image-wrap img {
width: 100%;
height: 360px;
object-fit: cover;
display: block;
filter: saturate(0.7);
transition: filter .12s ease-in
}

.prime .proof__image-wrap:hover img {
filter: saturate(0)
}

.prime .proof__annotations {
position: absolute;
inset: 0;
pointer-events: none
}

.prime .proof__ann {
position: absolute;
background: #0d1117e0;
border: 1px solid #1bffb34d;
border-radius: 4px;
padding: 8px 16px;
display: flex;
flex-direction: column
}

.prime .proof__ann.ann-1 {
top: 16px;
right: 16px
}

.prime .proof__ann.ann-2 {
bottom: 16px;
left: 16px
}

.prime .proof__ann-num {
font-size: 24px;
font-weight: 800;
color: #1BFFB3;
line-height: 1.1;
letter-spacing: .04em
}

.prime .proof__ann-label {
font-size: 15px;
color: #c8cfd8;
line-height: 1.3
}

.prime .proof__text-col {
display: flex;
flex-direction: column;
justify-content: center
}

.prime .proof__eyebrow {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #EB7A05;
margin-bottom: 16px;
line-height: 1.3
}

.prime .proof__heading {
font-size: 31px;
font-weight: 800;
line-height: 1.1;
color: #fff;
letter-spacing: .03em;
margin-bottom: 16px
}

.prime .proof__accent {
width: 40px;
height: 3px;
background: #EB7A05;
margin-bottom: 28px
}

.prime .proof__body {
font-size: 15px;
line-height: 1.7;
color: #c8cfd8
}

.prime .proof__metrics {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px
}

.prime .metric-tile {
background: #1bffb30d;
border: 1px solid #1bffb31f;
border-radius: 6px;
padding: 28px 16px;
text-align: center;
transition: background .12s ease-in, border-color .12s ease-in
}

.prime .metric-tile:hover {
background: #1bffb31a;
border-color: #1bffb34d
}

.prime .metric-tile__value {
font-size: 41px;
font-weight: 800;
color: #1BFFB3;
line-height: 1.1;
letter-spacing: .02em
}

.prime .metric-tile__label {
font-size: 15px;
color: #c8cfd8;
line-height: 1.5;
margin-top: 8px
}

.prime .divider-thick {
height: 4px;
background: linear-gradient(90deg, #1BFFB3 0%, #EB7A05 50%, #B71B1F 100%);
opacity: .25
}

.prime .community {
padding: 96px 56px;
background: #fff;
position: relative
}

.prime .community__container {
max-width: 1200px;
margin: 0 auto
}

.prime .community__layout {
display: grid;
grid-template-columns: 5fr 4fr;
gap: 56px;
align-items: start
}

.prime .community__text-area {
display: flex;
flex-direction: column
}

.prime .community__eyebrow {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #B71B1F;
margin-bottom: 16px;
line-height: 1.3
}

.prime .community__heading {
font-size: 31px;
font-weight: 800;
line-height: 1.1;
color: #111827;
letter-spacing: .03em;
margin-bottom: 16px
}

.prime .community__accent {
width: 40px;
height: 3px;
background: #B71B1F;
margin-bottom: 28px
}

.prime .community__body-wrap {
display: grid;
grid-template-columns: 100px 1fr;
gap: 28px;
align-items: start
}

.prime .community__sidenote {
font-size: 15px;
line-height: 1.7;
color: #B71B1F;
font-weight: 600;
letter-spacing: .04em;
text-align: right;
padding-right: 16px;
border-right: 2px solid #b71b1f33
}

.prime .community__para {
font-size: 15px;
line-height: 1.7;
color: #3d4450
}

.prime .community__profiles {
display: flex;
flex-direction: column;
gap: 16px;
margin-top: 28px
}

.prime .profile-row {
display: grid;
grid-template-columns: 56px 1fr;
gap: 16px;
align-items: center;
padding: 16px;
background: #f4f7f5;
border-radius: 6px;
transition: background .11s ease-in
}

.prime .profile-row:hover {
background: #eaf2ec
}

.prime .profile-row__avatar {
width: 56px;
height: 56px;
border-radius: 50%;
background: linear-gradient(293deg, #1BFFB3, #EB7A05);
display: flex;
align-items: center;
justify-content: center;
font-size: 19px;
font-weight: 800;
color: #111827;
flex-shrink: 0
}

.prime .profile-row__name {
font-size: 15px;
font-weight: 700;
color: #111827;
line-height: 1.3
}

.prime .profile-row__role {
font-size: 15px;
color: #5a6470;
line-height: 1.3
}

.prime .community__image-col {
position: relative
}

.prime .community__image-wrap {
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.prime .community__image-wrap img {
width: 100%;
height: 400px;
object-fit: cover;
display: block;
filter: saturate(0.85);
transition: filter .14s ease-in
}

.prime .community__image-wrap:hover img {
filter: saturate(0)
}

.prime .community__curved-accent {
position: absolute;
bottom: -28px;
right: -28px;
width: 120px;
height: 120px;
border: 3px solid #1bffb333;
border-radius: 50%;
pointer-events: none
}

.prime .divider-dots {
height: 28px;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
background: #f4f7f5
}

.prime .divider-dots__dot {
width: 4px;
height: 4px;
border-radius: 50%;
background: #b71b1f40
}

.prime .reputation {
padding: 96px 56px;
background: #f4f7f5;
position: relative
}

.prime .reputation::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 50% 50%, #fff 20%, #e8ede9 100%);
pointer-events: none
}

.prime .reputation__container {
max-width: 1200px;
margin: 0 auto;
position: relative
}

.prime .reputation__header {
text-align: center;
margin-bottom: 56px
}

.prime .reputation__eyebrow {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #EB7A05;
margin-bottom: 16px;
line-height: 1.3
}

.prime .reputation__heading {
font-size: 41px;
font-weight: 800;
line-height: 1.1;
color: #111827;
letter-spacing: .03em;
margin-bottom: 16px;
clip-path: inset(0 100% 0 0);
animation: reveal-clip .16s cubic-bezier(0.4, 0, 1, 1) .08s forwards
}

.prime .reputation__accent {
width: 56px;
height: 3px;
background: #EB7A05;
margin: 0 auto 28px
}

.prime .reputation__sub {
font-size: 19px;
line-height: 1.5;
color: #5a6470;
max-width: 560px;
margin: 0 auto
}

.prime .reputation__grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 28px;
margin-bottom: 56px
}

.prime .rep-card {
background: #fff;
border-radius: 12px;
padding: 28px;
box-shadow: -1px 5px 18px -1px #1bffb317;
transition: box-shadow .13s ease-in, transform .13s ease-in;
position: relative
}

.prime .rep-card:hover {
box-shadow: -1px 10px 40px -1px #1bffb31f;
transform: translateY(-3px)
}

.prime .rep-card__curved-line {
position: absolute;
top: 0;
right: 0;
width: 80px;
height: 80px;
border-top: 2px solid #1bffb326;
border-right: 2px solid #1bffb326;
border-radius: 0 12px 0 0;
pointer-events: none
}

.prime .rep-card__icon-wrap {
width: 48px;
height: 48px;
background: #eb7a0514;
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px
}

.prime .rep-card__heading {
font-size: 19px;
font-weight: 700;
color: #111827;
line-height: 1.3;
margin-bottom: 8px;
letter-spacing: .02em
}

.prime .rep-card__text {
font-size: 15px;
line-height: 1.7;
color: #5a6470
}

.prime .reputation__bottom {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: center
}

.prime .rep-quote {
background: #111827;
border-radius: 12px;
padding: 28px;
position: relative
}

.prime .rep-quote__mark {
font-size: 70px;
line-height: 1.1;
color: #1BFFB3;
font-weight: 800;
opacity: .3;
position: absolute;
top: 8px;
left: 28px;
pointer-events: none;
user-select: none
}

.prime .rep-quote__text {
font-size: 19px;
line-height: 1.5;
color: #fff;
margin-bottom: 16px;
padding-top: 28px;
position: relative;
z-index: 1
}

.prime .rep-quote__highlight {
background: #b71b1f26;
color: #ff8a8d;
padding: 2px 6px;
border-radius: 2px
}

.prime .rep-quote__author {
font-size: 15px;
color: #1BFFB3;
font-weight: 700;
line-height: 1.3;
letter-spacing: .06em
}

.prime .rep-quote__role {
font-size: 15px;
color: #c8cfd8;
line-height: 1.3
}

.prime .rep-image-col {
position: relative
}

.prime .rep-image-wrap {
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.prime .rep-image-wrap img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
filter: saturate(0.75);
transition: filter .14s ease-in
}

.prime .rep-image-wrap:hover img {
filter: saturate(0)
}

.prime .rep-image-col__label {
position: absolute;
bottom: 16px;
left: 16px;
background: #0d1117e6;
border: 1px solid #eb7a0566;
border-radius: 4px;
padding: 8px 16px
}

.prime .rep-image-col__label-text {
font-size: 15px;
color: #EB7A05;
font-weight: 700;
line-height: 1.3;
letter-spacing: .04em
}

@media (max-width: 1024px) {
.prime .split-hero {
grid-template-columns: 1fr
}

.prime .split-hero__image-panel {
min-height: 300px
}

.prime .available__grid {
grid-template-columns: 1fr;
gap: 28px
}

.prime .available__aside {
border-right: none;
border-bottom: 1px solid #d1d9d4;
padding-right: 0;
padding-bottom: 28px
}

.prime .proof__top {
grid-template-columns: 1fr;
gap: 28px
}

.prime .proof__metrics {
grid-template-columns: repeat(2, 1fr)
}

.prime .community__layout {
grid-template-columns: 1fr;
gap: 28px
}

.prime .reputation__grid {
grid-template-columns: 1fr 1fr;
gap: 16px
}

.prime .reputation__bottom {
grid-template-columns: 1fr;
gap: 28px
}
}

@media (max-width: 768px) {
.prime .split-hero__text-panel {
padding: 56px 28px
}

.prime .split-hero__headline {
font-size: 31px
}

.prime .available {
padding: 56px 28px
}

.prime .available__tracks {
grid-template-columns: 1fr
}

.prime .proof {
padding: 56px 28px
}

.prime .proof__metrics {
grid-template-columns: repeat(2, 1fr)
}

.prime .community {
padding: 56px 28px
}

.prime .community__body-wrap {
grid-template-columns: 1fr
}

.prime .community__sidenote {
text-align: left;
border-right: none;
border-bottom: 2px solid #b71b1f33;
padding-right: 0;
padding-bottom: 8px
}

.prime .reputation {
padding: 56px 28px
}

.prime .reputation__grid {
grid-template-columns: 1fr
}

.prime .reputation__heading {
font-size: 31px
}
}

.study-materials {
background: #fff;
overflow-x: clip
}

.study-materials .page-grid {
max-width: 1200px;
margin: 0 auto;
padding: 0 28px
}

.study-materials .resource-header {
padding: 96px 0 56px;
background: linear-gradient(293deg, #1BFFB3 0%, #f5f5f0 60%, #fff 100%);
position: relative
}

.study-materials .resource-header .page-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: center
}

.study-materials .resource-header__shapes {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
overflow: hidden
}

.study-materials .resource-header__shapes span {
position: absolute;
border-radius: 12px;
border: 2px solid #1bffb32e
}

.study-materials .resource-header__shapes span:nth-child(1) {
width: 140px;
height: 140px;
top: -40px;
right: 120px;
transform: rotate(18deg);
opacity: .5
}

.study-materials .resource-header__shapes span:nth-child(2) {
width: 80px;
height: 80px;
bottom: 28px;
right: 56px;
border-radius: 4px;
transform: rotate(35deg);
opacity: .35
}

.study-materials .resource-header__shapes span:nth-child(3) {
width: 200px;
height: 200px;
top: 56px;
right: -56px;
border-radius: 20px;
transform: rotate(10deg);
opacity: .2
}

.study-materials .resource-header__annotation {
font-size: 15px;
letter-spacing: .12em;
color: #B71B1F;
font-weight: 700;
text-transform: uppercase;
margin-bottom: 16px
}

.study-materials .resource-header__problem {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #111;
margin-bottom: 16px;
letter-spacing: -.01em
}

.study-materials .resource-header__problem em {
font-style: normal;
color: #B71B1F
}

.study-materials .resource-header__solution {
font-size: 19px;
line-height: 1.5;
color: #333;
margin-bottom: 28px;
max-width: 480px
}

.study-materials .resource-header__meta {
display: flex;
flex-direction: row;
gap: 28px;
align-items: center
}

.study-materials .resource-header__badge {
display: inline-flex;
align-items: center;
gap: 8px;
background: #fff;
border: 1.5px solid #1BFFB3;
border-radius: 6px;
padding: 8px 16px;
font-size: 15px;
color: #111;
font-weight: 600;
box-shadow: -1px 2px 2px -1px #1bffb314
}

.study-materials .resource-header__badge svg {
flex-shrink: 0
}

.study-materials .resource-header__image-wrap {
position: relative;
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.study-materials .resource-header__image-wrap img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
transition: filter .15s cubic-bezier(0.4, 0, 1, 1)
}

.study-materials .resource-header__image-wrap img:hover {
filter: saturate(0)
}

.study-materials .resource-header__image-overlay {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 55%;
background: linear-gradient(to top, #111111b8 0%, transparent 100%);
pointer-events: none
}

.study-materials .resource-header__image-label {
position: absolute;
bottom: 16px;
left: 16px;
color: #fff;
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase
}

.study-materials .divider-scallop {
width: 100%;
overflow: hidden;
line-height: 0;
margin: 0
}

.study-materials .divider-scallop svg {
display: block;
width: 100%
}

.study-materials .resource-grid {
padding: 56px 0 96px;
background: #fff
}

.study-materials .resource-grid .section-label {
font-size: 15px;
letter-spacing: .14em;
text-transform: uppercase;
color: #EB7A05;
font-weight: 700;
margin-bottom: 8px
}

.study-materials .resource-grid .section-heading {
font-size: 31px;
line-height: 1.3;
font-weight: 800;
color: #111;
margin-bottom: 56px;
max-width: 640px
}

.study-materials .card-row {
display: flex;
flex-direction: row;
gap: 28px;
align-items: stretch
}

.study-materials .resource-card {
flex: 1;
background: #fff;
border: 1.5px solid #e8e8e8;
border-radius: 12px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 16px;
box-shadow: -1px 5px 18px -1px #1bffb317;
transition: box-shadow .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1);
position: relative
}

.study-materials .card-row:hover .resource-card {
filter: blur(1.5px);
transition: filter .14s cubic-bezier(0.4, 0, 1, 1)
}

.study-materials .card-row:hover .resource-card:hover {
filter: none;
box-shadow: -1px 10px 40px -1px #1bffb31f;
border-color: #1BFFB3
}

.study-materials .resource-card__icon {
width: 44px;
height: 44px;
border-radius: 6px;
background: linear-gradient(293deg, #1BFFB3 0%, #f0fff9 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.study-materials .resource-card__type {
font-size: 15px;
font-weight: 700;
color: #B71B1F;
letter-spacing: .08em;
text-transform: uppercase
}

.study-materials .resource-card__name {
font-size: 19px;
font-weight: 800;
color: #111;
line-height: 1.3;
margin: 0
}

.study-materials .resource-card__desc {
font-size: 15px;
line-height: 1.7;
color: #444;
margin: 0;
flex: 1
}

.study-materials .resource-card__tag {
display: inline-block;
background: #eb7a051a;
color: #EB7A05;
border-radius: 4px;
padding: 4px 10px;
font-size: 15px;
font-weight: 600
}

.study-materials .resource-card__link {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 15px;
font-weight: 700;
color: #111;
text-decoration: none;
border-bottom: 2px solid #1BFFB3;
padding-bottom: 2px;
transition: color .1s ease-in, border-color .18s cubic-bezier(0.4, 0, 1, 1);
width: fit-content
}

.study-materials .resource-card__link:hover {
color: #B71B1F;
border-color: #B71B1F
}

.study-materials .deep-reference {
background: linear-gradient(to top, #f5f5f0 0%, #1a2a22 100%);
padding: 96px 0 56px;
position: relative
}

.study-materials .deep-reference .page-grid {
display: grid;
grid-template-columns: 340px 1fr;
gap: 56px;
align-items: start
}

.study-materials .deep-reference__aside {
position: sticky;
top: 28px
}

.study-materials .deep-reference__aside-label {
font-size: 15px;
letter-spacing: .14em;
text-transform: uppercase;
color: #1BFFB3;
font-weight: 700;
margin-bottom: 16px
}

.study-materials .deep-reference__aside-heading {
font-size: 31px;
line-height: 1.1;
font-weight: 800;
color: #fff;
margin-bottom: 16px
}

.study-materials .deep-reference__aside-text {
font-size: 15px;
line-height: 1.7;
color: #ffffffb8;
margin-bottom: 28px
}

.study-materials .deep-reference__image-wrap {
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.study-materials .deep-reference__image-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
display: block;
transition: filter .16s cubic-bezier(0.4, 0, 1, 1)
}

.study-materials .deep-reference__image-wrap img:hover {
filter: saturate(0)
}

.study-materials .deep-reference__list {
display: flex;
flex-direction: column;
gap: 16px
}

.study-materials .ref-item {
background: #ffffff0f;
border: 1.5px solid #1bffb326;
border-radius: 12px;
padding: 28px;
display: grid;
grid-template-columns: 48px 1fr;
gap: 16px;
align-items: start;
transition: background .12s ease-in, border-color .14s cubic-bezier(0.4, 0, 1, 1)
}

.study-materials .ref-item:hover {
background: #1bffb314;
border-color: #1BFFB3
}

.study-materials .ref-item__number {
width: 48px;
height: 48px;
border-radius: 6px;
background: #1BFFB3;
color: #111;
font-size: 19px;
font-weight: 800;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.study-materials .ref-item__heading {
font-size: 19px;
font-weight: 700;
color: #fff;
margin: 0 0 8px;
line-height: 1.3
}

.study-materials .ref-item__text {
font-size: 15px;
line-height: 1.7;
color: #ffffffa6;
margin: 0
}

.study-materials .ref-item__tag {
margin-top: 8px;
display: inline-block;
background: #eb7a052e;
color: #EB7A05;
border-radius: 4px;
padding: 2px 10px;
font-size: 15px;
font-weight: 600
}

.study-materials .dots-cluster {
position: absolute;
bottom: 28px;
right: 28px;
pointer-events: none;
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
width: 80px
}

.study-materials .dots-cluster span {
border-radius: 20px;
background: #1bffb338;
display: block
}

.study-materials .dots-cluster span:nth-child(1) {
width: 8px;
height: 8px
}

.study-materials .dots-cluster span:nth-child(2) {
width: 14px;
height: 14px
}

.study-materials .dots-cluster span:nth-child(3) {
width: 6px;
height: 6px
}

.study-materials .dots-cluster span:nth-child(4) {
width: 10px;
height: 10px
}

.study-materials .dots-cluster span:nth-child(5) {
width: 18px;
height: 18px
}

.study-materials .dots-cluster span:nth-child(6) {
width: 8px;
height: 8px
}

.study-materials .deep-reference::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
background-image: repeating-linear-gradient(to bottom, #1bffb30a 0px, #1bffb30a 1px, transparent 1px, transparent 18px), repeating-linear-gradient(to bottom, #1bffb306 0px, #1bffb306 2px, transparent 2px, transparent 44px)
}

.study-materials .quick-reference {
background: #f5f5f0;
padding: 96px 0;
position: relative
}

.study-materials .quick-reference .page-grid {
display: flex;
flex-direction: column;
gap: 56px
}

.study-materials .quick-reference__top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 28px
}

.study-materials .quick-reference__label {
font-size: 15px;
letter-spacing: .14em;
text-transform: uppercase;
color: #B71B1F;
font-weight: 700;
margin-bottom: 8px
}

.study-materials .quick-reference__heading {
font-size: 31px;
line-height: 1.1;
font-weight: 800;
color: #111;
margin: 0
}

.study-materials .quick-reference__sub {
font-size: 15px;
line-height: 1.7;
color: #555;
max-width: 340px;
text-align: right
}

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

.study-materials .glossary-item {
background: #fff;
border-radius: 12px;
padding: 28px;
border: 1.5px solid #e0ddd8;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: -1px 2px 2px -1px #b71b1f14;
transition: border-color .1s ease-in, box-shadow .15s cubic-bezier(0.4, 0, 1, 1)
}

.study-materials .glossary-item:hover {
border-color: #EB7A05;
box-shadow: -1px 5px 18px -1px #b71b1f17
}

.study-materials .glossary-item__term {
font-size: 19px;
font-weight: 800;
color: #111;
line-height: 1.3
}

.study-materials .glossary-item__accent {
display: inline-block;
background: #1bffb338;
border-radius: 2px;
padding: 2px 8px;
font-size: 15px;
font-weight: 700;
color: #1a5c46
}

.study-materials .glossary-item__definition {
font-size: 15px;
line-height: 1.7;
color: #444;
margin: 0
}

.study-materials .icon-pair {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
justify-content: center;
margin-bottom: 28px
}

.study-materials .icon-pair__icon {
width: 36px;
height: 36px;
border-radius: 6px;
background: #1bffb326;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.study-materials .icon-pair__text {
font-size: 24px;
font-weight: 800;
color: #111;
letter-spacing: -.01em;
line-height: 1.1
}

@keyframes col-appear {
from {
opacity: 0;
transform: translateY(24px)
}

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

.study-materials .resource-card:nth-child(1) {
animation: col-appear .16s cubic-bezier(0.4, 0, 1, 1) .05s both
}

.study-materials .resource-card:nth-child(2) {
animation: col-appear .16s cubic-bezier(0.4, 0, 1, 1) .12s both
}

.study-materials .resource-card:nth-child(3) {
animation: col-appear .16s cubic-bezier(0.4, 0, 1, 1) .19s both
}

.study-materials .glossary-item:nth-child(1) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .04s both
}

.study-materials .glossary-item:nth-child(2) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .09s both
}

.study-materials .glossary-item:nth-child(3) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .14s both
}

.study-materials .glossary-item:nth-child(4) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .19s both
}

.study-materials .glossary-item:nth-child(5) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .24s both
}

.study-materials .glossary-item:nth-child(6) {
animation: col-appear .14s cubic-bezier(0.4, 0, 1, 1) .29s both
}

@media (max-width: 900px) {
.study-materials .resource-header .page-grid {
grid-template-columns: 1fr;
gap: 28px
}

.study-materials .resource-header__image-wrap img {
height: 280px
}

.study-materials .card-row {
flex-direction: column
}

.study-materials .deep-reference .page-grid {
grid-template-columns: 1fr;
gap: 28px
}

.study-materials .deep-reference__aside {
position: static
}

.study-materials .glossary-grid {
grid-template-columns: 1fr 1fr
}

.study-materials .quick-reference__top {
flex-direction: column;
align-items: flex-start
}

.study-materials .quick-reference__sub {
text-align: left
}
}

@media (max-width: 600px) {
.study-materials .resource-header {
padding: 56px 0 28px
}

.study-materials .resource-header__problem {
font-size: 31px
}

.study-materials .glossary-grid {
grid-template-columns: 1fr
}

.study-materials .resource-header__meta {
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.study-materials .deep-reference {
padding: 56px 0 28px
}

.study-materials .quick-reference {
padding: 56px 0
}
}

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

.about-us-page .title-block {
position: relative;
padding: 96px 28px;
background: linear-gradient(293deg, #1BFFB3 0%, #fff 55%, #fff 100%)
}

.about-us-page .title-block__diagonal-bg {
position: absolute;
inset: 0;
background-image: repeating-linear-gradient(135deg, transparent, transparent 18px, #1bffb30f 18px, #1bffb30f 20px);
pointer-events: none
}

.about-us-page .title-block__grid {
max-width: 1200px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 56px
}

.about-us-page .title-block__text {
flex: 1 1 0;
min-width: 0
}

.about-us-page .title-block__label {
display: inline-block;
font-size: 15px;
letter-spacing: .18em;
color: #B71B1F;
background: #b71b1f12;
border-radius: 4px;
padding: 8px 16px;
margin-bottom: 28px;
font-weight: 600;
text-transform: uppercase
}

.about-us-page .title-block__heading {
font-size: 70px;
line-height: 1.1;
font-weight: 800;
color: #181818;
letter-spacing: -.02em;
margin: 0
}

.about-us-page .title-block__image-wrap {
flex: 0 0 460px;
position: relative;
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.about-us-page .title-block__image-wrap img {
width: 460px;
height: 340px;
object-fit: cover;
display: block;
transition: filter .16s cubic-bezier(0.4, 0, 1, 1)
}

.about-us-page .title-block__image-wrap img:hover {
filter: saturate(0)
}

.about-us-page .title-block__image-overlay {
position: absolute;
inset: 0;
background: linear-gradient(293deg, #1bffb361 0%, transparent 60%);
pointer-events: none
}

.about-us-page .divider-shadow {
width: 100%;
height: 16px;
background: linear-gradient(to bottom, #1bffb31a 0%, transparent 100%);
margin: 0
}

.about-us-page .story-section {
padding: 96px 28px;
background: #f4f4f2
}

.about-us-page .story-section__container {
max-width: 1200px;
margin: 0 auto;
display: grid;
grid-template-columns: 220px 1fr 1fr;
gap: 56px;
align-items: start
}

.about-us-page .story-section__aside {
padding-top: 8px
}

.about-us-page .story-section__aside-label {
font-size: 15px;
letter-spacing: .15em;
color: #B71B1F;
text-transform: uppercase;
font-weight: 700;
display: block;
margin-bottom: 16px
}

.about-us-page .story-section__aside-note {
font-size: 15px;
line-height: 1.7;
color: #555550
}

.about-us-page .story-section__body {
grid-column: 2 / 4;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px
}

.about-us-page .story-section__heading {
font-size: 41px;
line-height: 1.3;
font-weight: 800;
color: #181818;
margin: 0 0 28px;
letter-spacing: -.01em;
grid-column: 1 / 3
}

.about-us-page .story-section__paragraph {
font-size: 19px;
line-height: 1.7;
color: #333330;
margin: 0
}

.about-us-page .story-section__highlight {
background: #b71b1f14;
border-radius: 4px;
padding: 0 6px;
font-weight: 600;
color: #B71B1F
}

.about-us-page .story-section__image-wrap {
grid-column: 1 / 3;
border-radius: 12px;
overflow: hidden;
box-shadow: -1px 5px 18px -1px #1bffb317;
margin-top: 8px
}

.about-us-page .story-section__image-wrap img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
transition: filter .13s cubic-bezier(0.4, 0, 1, 1)
}

.about-us-page .story-section__image-wrap img:hover {
filter: saturate(0)
}

.about-us-page .divider-line {
width: 100%;
height: 2px;
background: linear-gradient(to right, transparent, #1bffb359, transparent)
}

.about-us-page .pillars-section {
padding: 96px 28px;
background: #fff
}

.about-us-page .pillars-section__container {
max-width: 1200px;
margin: 0 auto
}

.about-us-page .pillars-section__top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 56px;
margin-bottom: 56px
}

.about-us-page .pillars-section__heading {
font-size: 41px;
line-height: 1.3;
font-weight: 800;
color: #181818;
margin: 0;
letter-spacing: -.01em;
max-width: 520px
}

.about-us-page .pillars-section__sub {
font-size: 19px;
line-height: 1.7;
color: #444440;
max-width: 380px;
margin: 0
}

.about-us-page .pillars-grid {
display: grid;
grid-template-columns: 1fr 2fr 2fr 1fr;
gap: 28px
}

.about-us-page .pillar-card {
background: #f4f4f2;
border-radius: 12px;
padding: 28px;
position: relative;
box-shadow: -1px 2px 2px -1px #1bffb314;
transition: box-shadow .14s cubic-bezier(0.4, 0, 1, 1);
overflow: hidden
}

.about-us-page .pillar-card:hover {
box-shadow: -1px 10px 40px -1px #1bffb31f
}

.about-us-page .pillar-card::after {
content: "";
position: absolute;
inset: 0;
background: repeating-linear-gradient(135deg, transparent, transparent 14px, #1bffb31f 14px, #1bffb31f 16px);
opacity: 0;
transition: opacity .12s cubic-bezier(0.4, 0, 1, 1);
pointer-events: none;
border-radius: 12px
}

.about-us-page .pillar-card:hover::after {
opacity: 1
}

.about-us-page .pillar-card.wide {
grid-column: span 1
}

.about-us-page .pillar-card__icon {
width: 40px;
height: 40px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: center
}

.about-us-page .pillar-card__icon svg {
width: 36px;
height: 36px
}

.about-us-page .pillar-card__heading {
font-size: 19px;
font-weight: 700;
color: #181818;
margin: 0 0 16px;
letter-spacing: .01em
}

.about-us-page .pillar-card__text {
font-size: 15px;
line-height: 1.7;
color: #444440;
margin: 0
}

.about-us-page .pillar-card__number {
position: absolute;
top: 28px;
right: 28px;
font-size: 41px;
font-weight: 800;
color: #1bffb338;
line-height: 1.1;
pointer-events: none
}

.about-us-page .divider-accent {
width: 100%;
height: 8px;
background: linear-gradient(293deg, #1BFFB3 0%, #EB7A05 60%, transparent 100%);
opacity: .25
}

.about-us-page .team-section {
position: relative;
padding: 96px 28px;
background: #181818;
overflow: hidden
}

.about-us-page .team-section__bg-image {
position: absolute;
inset: 0;
z-index: 0
}

.about-us-page .team-section__bg-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.3) brightness(0.35)
}

.about-us-page .team-section__overlay {
position: absolute;
inset: 0;
background: linear-gradient(293deg, #1bffb32e 0%, #181818d1 55%, #181818f2 100%);
z-index: 1;
pointer-events: none
}

.about-us-page .team-section__container {
position: relative;
z-index: 2;
max-width: 1200px;
margin: 0 auto
}

.about-us-page .team-section__heading {
font-size: 41px;
line-height: 1.3;
font-weight: 800;
color: #fff;
margin: 0 0 56px;
letter-spacing: -.01em;
max-width: 600px
}

.about-us-page .team-section__heading span {
color: #1BFFB3
}

.about-us-page .team-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px;
margin-bottom: 56px
}

.about-us-page .team-card {
background: #ffffff0d;
border: 1px solid #1bffb324;
border-radius: 12px;
padding: 28px;
transition: background .15s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1)
}

.about-us-page .team-card:hover {
background: #1bffb312;
border-color: #1bffb361
}

.about-us-page .team-card__avatar {
width: 56px;
height: 56px;
border-radius: 12px;
background: linear-gradient(293deg, #1BFFB3, #EB7A05);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px;
font-size: 24px;
font-weight: 800;
color: #181818
}

.about-us-page .team-card__name {
font-size: 19px;
font-weight: 700;
color: #fff;
margin: 0 0 8px
}

.about-us-page .team-card__role {
font-size: 15px;
letter-spacing: .1em;
text-transform: uppercase;
color: #1BFFB3;
font-weight: 600;
margin: 0 0 16px
}

.about-us-page .team-card__bio {
font-size: 15px;
line-height: 1.7;
color: #ffffffb8;
margin: 0
}

.about-us-page .team-section__metrics {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 28px;
border-top: 1px solid #1bffb329;
padding-top: 56px
}

.about-us-page .metric-item {
display: flex;
flex-direction: column;
gap: 8px
}

.about-us-page .metric-item__value {
font-size: 41px;
font-weight: 800;
color: #1BFFB3;
line-height: 1.1;
letter-spacing: -.02em
}

.about-us-page .metric-item__label {
font-size: 15px;
color: #ffffff9e;
letter-spacing: .08em;
text-transform: uppercase
}

.about-us-page .connect-line-container {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 0;
margin: 56px 0 0
}

.about-us-page .connect-line-dot {
width: 12px;
height: 12px;
border-radius: 50%;
background: #1BFFB3;
flex-shrink: 0
}

.about-us-page .connect-line-track {
height: 2px;
flex: 1;
background: #1bffb32e;
position: relative;
overflow: hidden
}

.about-us-page .connect-line-track::after {
content: "";
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: #1BFFB3;
animation: line-draw .18s linear .1s forwards
}

@keyframes line-draw {
from {
left: -100%
}

to {
left: 0
}
}

.about-us-page .contact-strip {
background: #1bffb30f;
border-radius: 12px;
padding: 28px;
margin-top: 56px;
display: flex;
flex-direction: row;
align-items: center;
gap: 28px;
flex-wrap: wrap;
border: 1px solid #1bffb32e
}

.about-us-page .contact-strip__item {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
flex: 1 1 200px
}

.about-us-page .contact-strip__icon {
width: 36px;
height: 36px;
border-radius: 6px;
background: #1bffb324;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.about-us-page .contact-strip__icon svg {
width: 18px;
height: 18px
}

.about-us-page .contact-strip__label {
font-size: 15px;
color: #ffffff80;
display: block;
margin-bottom: 4px;
letter-spacing: .08em;
text-transform: uppercase
}

.about-us-page .contact-strip__value {
font-size: 15px;
color: #fff;
font-weight: 600
}

.about-us-page .contact-strip__value a {
color: #1BFFB3;
text-decoration: none;
transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.about-us-page .contact-strip__value a:hover {
color: #fff
}

.about-us-page .cta-button {
display: inline-block;
background: #1BFFB3;
color: #181818;
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
padding: 16px 28px;
border-radius: 6px;
text-decoration: none;
border: 2px solid #1BFFB3;
transition: background .14s cubic-bezier(0.4, 0, 1, 1), border-color .14s cubic-bezier(0.4, 0, 1, 1), color .14s cubic-bezier(0.4, 0, 1, 1), outline-offset .12s cubic-bezier(0.4, 0, 1, 1);
outline: 2px solid transparent;
outline-offset: 0
}

.about-us-page .cta-button:hover {
background: transparent;
color: #1BFFB3;
outline: 2px solid #1BFFB3;
outline-offset: 4px
}

.about-us-page .cta-button:focus-visible {
outline: 3px solid #EB7A05;
outline-offset: 4px
}

.about-us-page .cta-button.secondary {
background: transparent;
color: #fff;
border-color: #ffffff59
}

.about-us-page .cta-button.secondary:hover {
background: transparent;
color: #1BFFB3;
border-color: #1BFFB3;
outline: 2px solid #1BFFB3;
outline-offset: 4px
}

@media (max-width: 1024px) {
.about-us-page .title-block__image-wrap {
flex: 0 0 340px
}

.about-us-page .title-block__image-wrap img {
width: 340px;
height: 260px
}

.about-us-page .title-block__heading {
font-size: 41px
}

.about-us-page .pillars-grid {
grid-template-columns: 1fr 1fr
}

.about-us-page .team-grid {
grid-template-columns: 1fr 1fr
}

.about-us-page .team-section__metrics {
grid-template-columns: repeat(2, 1fr)
}

.about-us-page .story-section__container {
grid-template-columns: 160px 1fr 1fr;
gap: 28px
}
}

@media (max-width: 768px) {
.about-us-page .title-block__grid {
flex-direction: column;
gap: 28px
}

.about-us-page .title-block__image-wrap {
flex: 0 0 auto;
width: 100%
}

.about-us-page .title-block__image-wrap img {
width: 100%;
height: 220px
}

.about-us-page .title-block__heading {
font-size: 31px
}

.about-us-page .story-section__container {
grid-template-columns: 1fr;
gap: 28px
}

.about-us-page .story-section__body {
grid-column: 1;
grid-template-columns: 1fr
}

.about-us-page .story-section__heading {
grid-column: 1;
font-size: 31px
}

.about-us-page .story-section__image-wrap {
grid-column: 1
}

.about-us-page .pillars-section__top {
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.about-us-page .pillars-grid {
grid-template-columns: 1fr
}

.about-us-page .team-grid {
grid-template-columns: 1fr
}

.about-us-page .team-section__metrics {
grid-template-columns: 1fr 1fr
}

.about-us-page .team-section__heading {
font-size: 31px
}

.about-us-page .pillars-section__heading {
font-size: 31px
}
}

.success-page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 96px 28px;
background: #fff
}

.success-page .success-wrapper {
max-width: 1200px;
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 56px
}

.success-page .success-card {
max-width: 640px;
width: 100%;
background: #fff;
border: 1.5px solid #e8f8f3;
border-radius: 12px;
padding: 56px;
box-shadow: -1px 10px 40px -1px #1bffb31f;
display: flex;
flex-direction: column;
align-items: center;
gap: 28px;
text-align: center
}

.success-page .success-icon {
width: 72px;
height: 72px;
border-radius: 20px;
background: linear-gradient(293deg, #1BFFB3 0%, #1bffb32e 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.success-page .success-icon svg {
width: 36px;
height: 36px
}

.success-page .success-heading {
font-size: 41px;
line-height: 1.1;
letter-spacing: -.5px;
color: #111418;
margin: 0;
font-weight: 700
}

.success-page .success-subtext {
font-size: 19px;
line-height: 1.5;
color: #2d3340;
margin: 0;
max-width: 480px
}

.success-page .success-divider {
width: 100%;
height: 1.5px;
background: linear-gradient(293deg, #1BFFB3 0%, #1bffb314 100%);
border-radius: 2px
}

.success-page .success-note {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
background: #eb7a0512;
border-radius: 6px;
padding: 16px 28px;
width: 100%;
box-sizing: border-box
}

.success-page .success-note__icon {
flex-shrink: 0;
margin-top: 2px
}

.success-page .success-note__icon svg {
width: 20px;
height: 20px
}

.success-page .success-note__text {
font-size: 15px;
line-height: 1.5;
color: #2d3340;
margin: 0
}

.success-page .success-note__text strong {
color: #111418;
font-weight: 600
}

.success-page .success-actions {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
justify-content: center
}

.success-page .btn-primary {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 16px 28px;
background: #1BFFB3;
color: #111418;
font-size: 15px;
font-weight: 700;
line-height: 1.3;
letter-spacing: .04em;
border: 2px solid #1BFFB3;
border-radius: 4px;
text-decoration: none;
cursor: pointer;
transition: background-color .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .15s cubic-bezier(0.4, 0, 1, 1);
box-shadow: -1px 5px 18px -1px #1bffb317
}

.success-page .btn-primary:hover {
background: #00e89e;
border-color: #00e89e;
box-shadow: -1px 10px 40px -1px #1bffb32e
}

.success-page .btn-primary:focus {
outline: 2px solid #111418;
outline-offset: 3px
}

.success-page .btn-primary:active {
background: #00cc8a;
border-color: #00cc8a
}

.success-page .btn-secondary {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 16px 28px;
background: transparent;
color: #111418;
font-size: 15px;
font-weight: 600;
line-height: 1.3;
letter-spacing: .04em;
border: 2px solid #c8cdd6;
border-radius: 4px;
text-decoration: none;
cursor: pointer;
transition: border-color .1s ease-in, color .1s ease-in
}

.success-page .btn-secondary:hover {
border-color: #111418;
color: #111418
}

.success-page .btn-secondary:focus {
outline: 2px solid #111418;
outline-offset: 3px
}

.success-page .btn-secondary:active {
background: #f4f5f6
}

.success-page .success-ref {
font-size: 15px;
line-height: 1.5;
color: #5a6072;
text-align: center
}

.success-page .success-ref a {
color: #0a6e4f;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .1s ease-in
}

.success-page .success-ref a:hover {
color: #111418
}

@media (max-width: 640px) {
.success-page {
padding: 56px 16px
}

.success-page .success-card {
padding: 28px 16px;
gap: 16px
}

.success-page .success-heading {
font-size: 31px
}

.success-page .success-subtext {
font-size: 15px
}

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

.success-page .btn-primary,
.success-page .btn-secondary {
justify-content: center;
width: 100%
}

.success-page .success-note {
padding: 16px
}
}