
.tsw-standard,
.tsw-standard * { box-sizing: border-box; }

.tsw-standard {
    width: 100%;
    background: #f3f1ed;
}

.tsw-standard__inner {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 36px 0 44px;
}

.tsw-standard__title {
    margin: 0;
    text-align: center;
    color: #161616;
    font-family: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
    font-size: clamp(56px, 4.6vw, 76px);
    font-weight: 500;
    line-height: .96;
    letter-spacing: -.024em;
}
.tsw-standard__highlight { color: #2f6d4c; }

.tsw-standard__grid {
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    column-gap: 26px;
    row-gap: 26px;
    align-items: start;
}

.tsw-standard__item {
    text-align: center;
}

.tsw-standard__icon-wrap {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tsw-standard__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #234937;
    font-size: 58px;
    line-height: 1;
}
.tsw-standard__icon svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
    display: block;
}
.tsw-standard__icon-image {
    display: block;
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.tsw-standard__item-title,
.tsw-standard__item-subtitle {
    color: #213a2e;
    font-family: 'Manrope', Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.18;
}
.tsw-standard__item-title {
    margin-top: 16px;
}
.tsw-standard__item-subtitle {
    margin-top: 6px;
    font-weight: 600;
}

@media (max-width: 1400px) {
    .tsw-standard__inner { padding-left: 24px; padding-right: 24px; }
}

@media (max-width: 1180px) {
    .tsw-standard__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .tsw-standard__inner { padding: 24px 18px 28px; }
    .tsw-standard__title { font-size: clamp(38px, 11vw, 52px); }
    .tsw-standard__grid { margin-top: 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 16px; }
    .tsw-standard__item-title,
    .tsw-standard__item-subtitle { font-size: 14px; }
    .tsw-standard__icon-wrap { min-height: 60px; }
}
