.about-page {
    background: #FDF2E1;
    color: #2E0D0D;
    overflow: hidden;
}

.about-page__main {
    display: block;
}

.about-page__main > section {
    position: relative;
}

/* ——— Hero ——— */
.about-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
    color: #FDF2E1;
    min-height: 688px;
}

.about-hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.about-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}

.about-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(25, 25, 25, 0.65);
}

.about-hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding: 35px var(--page-inline) 72px;
    box-sizing: border-box;
}

.about-hero__crumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-family: var(--font-family);
    font-size: 13px;
    font-weight: 300;
    line-height: 24px;
}

.about-hero__crumbs a {
    color: inherit;
    transition: color var(--ease-ui);
}

.about-hero__crumbs a:hover {
    color: rgba(253, 242, 225, 0.8);
}

.about-hero__crumb-sep {
    color: rgba(255, 255, 255, 0.6);
}

.about-hero__title {
    max-width: 832px;
    margin: 48px 0 0;
    color: #FDF2E1;
    font-family: var(--third-family);
    font-size: 90px;
    font-weight: 600;
    line-height: 83px;
}

.about-hero__row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-top: 40px;
}

.about-hero__text {
    flex: 1 1 auto;
    max-width: 547px;
    margin: 0;
    color: rgba(252, 238, 215, 0.9);
    font-family: var(--font-family);
    font-size: 21px;
    font-weight: 400;
    line-height: 29.25px;
}

.about-hero__stats {
    display: flex;
    flex-shrink: 0;
    gap: 20px;
}

.about-hero__stat {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 197px;
    min-height: 130px;
    padding: 28px 16px;
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(11.5px);
    -webkit-backdrop-filter: blur(11.5px);
    box-sizing: border-box;
}

.about-hero__stat-value {
    color: #FCEED7;
    font-family: var(--third-family);
    font-size: 43px;
    font-weight: 500;
    line-height: 48.64px;
}

.about-hero__stat-label {
    margin-top: 6px;
    color: #FCEED7;
    font-family: var(--font-family);
    font-size: 20px;
    font-weight: 350;
    line-height: 26px;
}

.about-hero__wave {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 100%;
    height: 96px;
    line-height: 0;
    pointer-events: none;
}

.about-hero__wave svg {
    display: block;
    width: 100%;
    height: 100%;
}

/* ——— Intro / О компании ——— */
.about-intro {
    position: relative;
    padding: 100px 0 80px;
}

.about-intro__decor {
    position: absolute;
    top: 40px;
    right: 0;
    z-index: 0;
    width: 492px;
    height: 374px;
    pointer-events: none;
}

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

.about-intro__inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 488px minmax(0, 1fr);
    gap: 48px 88px;
    align-items: center;
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding-inline: var(--page-inline);
    box-sizing: border-box;
}

.about-intro__visual {
    position: relative;
    width: 488px;
}

.about-intro__photo {
    display: block;
    width: 488px;
    height: 538px;
    object-fit: cover;
    border-radius: 20px;
    background: rgba(250, 230, 201, 0.5);
}

.about-intro__badge {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 274px;
    height: 272px;
    padding: 56px 36px 40px;
    border-radius: 28px;
    background: #FFF9EF;
    box-sizing: border-box;
}

.about-intro__badge-value {
    opacity: 0.91;
    color: #AA3036;
    font-family: var(--font5);
    font-size: 60px;
    font-weight: 700;
    line-height: 60.8px;
}

.about-intro__badge-label {
    max-width: 137px;
    color: #AA3036;
    font-family: var(--second-family);
    font-size: 17px;
    font-weight: 500;
    line-height: 19.25px;
}

.about-intro__copy {
    padding-top: 0;
}

.about-intro__title {
    margin: 0;
    color: #2E0D0D;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-intro__title span {
    color: #AA3036;
}

.about-intro__text {
    max-width: 613px;
    margin-top: 36px;
    color: rgba(34, 34, 34, 0.8);
    font-family: var(--second-family);
    font-size: 20px;
    font-weight: 500;
    line-height: 22px;
}

/* ——— Numbers ——— */
.about-numbers {
    padding: 40px 0 80px;
}

.about-numbers__inner {
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding-inline: var(--page-inline);
    box-sizing: border-box;
}

.about-numbers__title {
    margin: 0;
    color: #2E0D0D;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-numbers__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 32px;
    margin-top: 48px;
}

.about-numbers__card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 269px;
    padding: 34px 25px 32px;
    border-radius: 20px;
    overflow: hidden;
    box-sizing: border-box;
}

.about-numbers__card--filled {
    color: #FDF2E1;
}

.about-numbers__card--blue {
    background: #305DAA;
}

.about-numbers__card--red {
    background: #AA3036;
}

.about-numbers__card--outline {
    border: 1px solid #AA3036;
    color: #AA3036;
    background: transparent;
}

.about-numbers__sheen {
    position: absolute;
    top: 21px;
    left: -75px;
    z-index: 0;
    width: 342px;
    height: 260px;
    opacity: 0.35;
    pointer-events: none;
}

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

.about-numbers__index {
    position: relative;
    z-index: 1;
    font-family: var(--font3);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 16px;
    letter-spacing: 2.16px;
}

.about-numbers__value {
    position: relative;
    z-index: 1;
    margin-top: 72px;
    font-family: var(--second-family);
    font-size: 70px;
    font-weight: 600;
    line-height: 43px;
}

.about-numbers__label {
    position: relative;
    z-index: 1;
    max-width: 228px;
    margin-top: 40px;
    font-family: var(--second-family);
    font-size: 18px;
    font-weight: 400;
    line-height: 19.25px;
}

/* ——— Sustainable ——— */
.about-sustain {
    padding: 40px 0 80px;
}

.about-sustain__inner {
    display: grid;
    grid-template-columns: 488px minmax(0, 1fr);
    gap: 48px 88px;
    align-items: center;
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding-inline: var(--page-inline);
    box-sizing: border-box;
}

.about-sustain__visual img {
    display: block;
    width: 488px;
    height: 638px;
    object-fit: cover;
    border-radius: 20px;
    background: rgba(250, 230, 201, 0.5);
}

.about-sustain__title {
    margin: 0;
    color: #2E0D0D;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-sustain__text {
    max-width: 624px;
    margin-top: 32px;
    color: rgba(34, 34, 34, 0.8);
    font-family: var(--second-family);
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
}

.about-sustain__list {
    display: flex;
    flex-direction: column;
    gap: 15px;
    max-width: 640px;
    margin: 32px 0 0;
    padding: 0;
    list-style: none;
}

.about-sustain__item {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 58px;
    padding: 16px 20px;
    border-radius: 15px;
    outline: 0.4px solid #000;
    outline-offset: -0.4px;
    color: #2E0D0D;
    font-family: var(--second-family);
    font-size: 18px;
    font-weight: 500;
    line-height: 22.75px;
    box-sizing: border-box;
}

.about-sustain__check {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #AA3036;
}

.about-sustain__check img {
    display: block;
    width: 14px;
    height: 14px;
}

/* ——— Certificates ——— */
.about-certs {
    padding: 40px 0 64px;
}

.about-certs__inner {
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding-inline: var(--page-inline);
    box-sizing: border-box;
}

.about-certs__title {
    margin: 0;
    color: #2E0D0D;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-certs__swiper {
    margin-top: 48px;
    overflow: hidden;
}

.about-certs__swiper .swiper-slide {
    height: auto;
}

.about-certs__card {
    overflow: hidden;
    border-radius: 20px;
    border: 7px solid #000;
    background: rgba(250, 230, 201, 0.5);
    aspect-ratio: 280 / 397;
}

.about-certs__card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-certs__dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 40px;
}

.about-certs__bullet {
    display: block;
    width: 12px;
    height: 8px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #BC9999;
    cursor: pointer;
    transition: width var(--ease-ui), background-color var(--ease-ui);
}

.about-certs__bullet:hover:not(.is-active) {
    background: #AA3036;
}

.about-certs__bullet.is-active {
    width: 40px;
    background: #AA3036;
}

/* ——— Production ——— */
.about-production {
    padding: 40px 0 80px;
}

.about-production__inner {
    width: 100%;
    max-width: calc(var(--content-max-width) + 2 * var(--page-inline));
    margin-inline: auto;
    padding-inline: var(--page-inline);
    box-sizing: border-box;
}

.about-production__title {
    margin: 0;
    color: #2E0D0D;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-production__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
    margin-top: 48px;
}

.about-production__grid img {
    display: block;
    width: 100%;
    height: 397px;
    object-fit: cover;
    border-radius: 20px;
    background: rgba(250, 230, 201, 0.5);
}

/* ——— CTA ——— */
.about-cta {
    padding: 40px var(--page-inline) 100px;
}

.about-cta__inner {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 48px;
    width: 100%;
    max-width: var(--content-max-width);
    min-height: 441px;
    margin-inline: auto;
    padding: 96px 70px 82px;
    overflow: hidden;
    border-radius: 40px;
    background: #AA3036;
    color: #FDF2E1;
    box-sizing: border-box;
}

.about-cta__decor {
    position: absolute;
    top: 62px;
    right: 62px;
    z-index: 0;
    width: 306px;
    height: 232px;
    opacity: 0.35;
    pointer-events: none;
}

.about-cta__decor img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: top right;
}

.about-cta__glow {
    position: absolute;
    top: -96px;
    right: -50px;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    opacity: 0.3;
    background: radial-gradient(ellipse 99% 99% at 30% 30%, #FCEED7 0%, #FDF2E1 60%, rgba(253, 242, 225, 0) 75%);
    filter: blur(1px);
    pointer-events: none;
}

.about-cta__blob {
    position: absolute;
    left: -80px;
    bottom: -120px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: #801822;
    pointer-events: none;
}

.about-cta__copy {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 56px;
    max-width: 712px;
}

.about-cta__title {
    margin: 0;
    color: #FDF2E1;
    font-family: var(--third-family);
    font-size: 72px;
    font-weight: 500;
    line-height: 73px;
}

.about-cta__text {
    max-width: 533px;
    margin: 0;
    color: #FDF2E1;
    font-family: var(--second-family);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}

.about-cta__actions {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 28px;
    flex-shrink: 0;
    padding-bottom: 8px;
}

.about-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 233px;
    min-height: 52px;
    border-radius: 999px;
    font-family: var(--second-family);
    font-size: 17px;
    font-weight: 500;
    line-height: 20px;
    box-sizing: border-box;
    transition: background-color var(--ease-ui), color var(--ease-ui), outline-color var(--ease-ui), box-shadow var(--ease-ui);
}

.about-cta__btn--solid {
    background: #FDF2E1;
    color: #AA3036;
    box-shadow: 0 10px 30px -12px rgba(170, 48, 54, 0.28);
}

.about-cta__btn--solid:hover {
    background: #fff;
    color: var(--color-brand-hover);
    box-shadow: 0 10px 28px -14px rgba(170, 48, 54, 0.4);
}

.about-cta__btn--solid img {
    display: block;
    width: 16px;
    height: 16px;
}

.about-cta__btn--ghost {
    outline: 1px solid rgba(253, 242, 225, 0.35);
    outline-offset: -1px;
    color: #FDF2E1;
    background: transparent;
}

.about-cta__btn--ghost:hover {
    outline-color: rgba(253, 242, 225, 0.7);
    background: rgba(253, 242, 225, 0.1);
}
