.training-guide {
    --training-green: #0f766e;
    --training-green-soft: rgba(15, 118, 110, 0.08);
    --training-gold: #c69a2d;
    --training-gold-soft: rgba(198, 154, 45, 0.12);
    --training-cream: #f6f3ea;
    background:
        radial-gradient(circle at top right, rgba(198, 154, 45, 0.14), transparent 32%),
        radial-gradient(circle at left center, rgba(15, 118, 110, 0.12), transparent 30%),
        var(--training-cream);
}

.training-guide .meridian-guide__hero-copy {
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.97), rgba(255, 255, 255, 0.92)),
        linear-gradient(135deg, rgba(15, 118, 110, 0.10), rgba(198, 154, 45, 0.14));
}

.training-guide__hero-visual {
    margin: 0;
    padding: 18px;
    border-radius: 30px;
    border: 1px solid var(--guide-border);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
    box-shadow: var(--guide-shadow);
}

.training-guide__hero-visual img,
.training-guide__image-card img,
.training-guide__ingredient-card img {
    display: block;
    width: 100%;
    height: auto;
}

.training-guide__hero-visual figcaption,
.training-guide__image-card figcaption {
    margin-top: 14px;
    color: var(--guide-muted);
    font-size: 13px;
    line-height: 1.68;
}

.training-guide__quote {
    margin: 0 0 18px;
    padding: 18px 20px;
    border-radius: 22px;
    border: 1px solid rgba(198, 154, 45, 0.26);
    background: linear-gradient(135deg, rgba(198, 154, 45, 0.13), rgba(255, 255, 255, 0.88));
    color: var(--guide-ink);
    font-size: 17px;
    line-height: 1.7;
}

.training-guide__quote strong {
    color: var(--training-green);
}

.training-guide__program-grid,
.training-guide__comparison-grid,
.training-guide__feature-grid,
.training-guide__routine-grid,
.training-guide__ingredient-grid,
.training-guide__dosage-grid {
    display: grid;
    gap: 18px;
}

.training-guide__program-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.training-guide__comparison-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.training-guide__feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.training-guide__routine-grid,
.training-guide__ingredient-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.training-guide__dosage-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.training-guide__program-card,
.training-guide__comparison-card,
.training-guide__feature-card,
.training-guide__routine-card,
.training-guide__dosage-card,
.training-guide__constitution-card,
.training-guide__technique-card {
    border: 1px solid var(--guide-border);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 250, 251, 0.96));
    padding: 22px;
    box-shadow: var(--guide-shadow);
}

.training-guide__program-card h3,
.training-guide__comparison-card h3,
.training-guide__feature-card h3,
.training-guide__routine-card h3,
.training-guide__dosage-card h3,
.training-guide__constitution-card h3,
.training-guide__technique-card h3,
.training-guide__list-card h3,
.training-guide__image-card h3 {
    margin: 0 0 12px;
    color: var(--guide-ink);
}

.training-guide__program-card p:last-child,
.training-guide__comparison-card p:last-child,
.training-guide__feature-card p:last-child,
.training-guide__routine-card p:last-child,
.training-guide__dosage-card p:last-child,
.training-guide__constitution-card p:last-child,
.training-guide__technique-card p:last-child,
.training-guide__list-card p:last-child,
.training-guide__image-card p:last-child {
    margin-bottom: 0;
}

.training-guide__icon {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--training-green), #115e59);
    color: #fff;
    font-size: 18px;
    margin-bottom: 14px;
}

.training-guide__comparison-card {
    position: relative;
    overflow: hidden;
}

.training-guide__comparison-card::after {
    content: "";
    position: absolute;
    inset: auto -48px -48px auto;
    width: 138px;
    height: 138px;
    border-radius: 50%;
    background: rgba(198, 154, 45, 0.08);
}

.training-guide__comparison-kicker {
    display: inline-flex;
    padding: 7px 11px;
    border-radius: 999px;
    background: var(--training-green-soft);
    color: var(--training-green);
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 12px;
}

.training-guide__split-grid,
.training-guide__media-layout,
.training-guide__protocol-grid,
.training-guide__product-layout,
.training-guide__principles-grid {
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.training-guide__list-card,
.training-guide__image-card {
    margin: 0;
    border: 1px solid var(--guide-border);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 250, 250, 0.96));
    padding: 22px;
    box-shadow: var(--guide-shadow);
}

.training-guide__image-card img {
    border-radius: 20px;
    background: linear-gradient(180deg, #f8fafc, #f1f5f9);
}

.training-guide__pill-list,
.training-guide__chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.training-guide__pill-list li,
.training-guide__chip-list li {
    padding: 9px 12px;
    border-radius: 999px;
    background: rgba(15, 118, 110, 0.08);
    color: var(--training-green);
    font-size: 13px;
    line-height: 1.45;
    font-weight: 600;
}

.training-guide__chip-list li {
    background: rgba(198, 154, 45, 0.12);
    color: #8a6410;
}

.training-guide__list-card ul,
.training-guide__program-card ul,
.training-guide__feature-card ul,
.training-guide__routine-card ul,
.training-guide__dosage-card ul,
.training-guide__constitution-card ul,
.training-guide__technique-card ul,
.training-guide__protocol-body ul,
.training-guide__protocol-body ol,
.training-guide__image-card ul {
    margin: 0;
    padding-left: 20px;
}

.training-guide__list-card li,
.training-guide__program-card li,
.training-guide__feature-card li,
.training-guide__routine-card li,
.training-guide__dosage-card li,
.training-guide__constitution-card li,
.training-guide__technique-card li,
.training-guide__protocol-body li,
.training-guide__image-card li {
    margin-bottom: 10px;
    color: var(--guide-text);
    line-height: 1.72;
}

.training-guide__note,
.training-guide__warning {
    margin-top: 18px;
    padding: 14px 16px;
    border-radius: 18px;
    color: var(--guide-text);
}

.training-guide__note {
    border: 1px solid rgba(15, 118, 110, 0.16);
    background: rgba(15, 118, 110, 0.06);
}

.training-guide__warning {
    border: 1px solid rgba(198, 154, 45, 0.28);
    background: rgba(198, 154, 45, 0.12);
}

.training-guide__accordion-stack {
    display: grid;
    gap: 16px;
}

.training-guide__protocol {
    border: 1px solid var(--guide-border);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 250, 251, 0.98));
    box-shadow: var(--guide-shadow);
    overflow: hidden;
}

.training-guide__protocol > summary {
    position: relative;
    cursor: pointer;
    list-style: none;
    padding: 22px 64px 22px 22px;
}

.training-guide__protocol > summary::-webkit-details-marker {
    display: none;
}

.training-guide__protocol > summary::after {
    content: "+";
    position: absolute;
    top: 18px;
    right: 20px;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(15, 118, 110, 0.10);
    color: var(--training-green);
    font-size: 24px;
    line-height: 1;
}

.training-guide__protocol[open] > summary::after {
    content: "−";
}

.training-guide__protocol-title {
    display: block;
    margin-bottom: 8px;
    color: var(--guide-ink);
    font-size: 23px;
    font-weight: 700;
}

.training-guide__protocol-subtitle {
    display: block;
    color: var(--guide-muted);
    line-height: 1.64;
}

.training-guide__protocol-body {
    padding: 0 22px 22px;
}

.training-guide__protocol-grid {
    margin-bottom: 18px;
}

.training-guide__protocol-grid > div {
    border-radius: 18px;
    background: rgba(15, 118, 110, 0.04);
    padding: 18px;
}

.training-guide__protocol-grid h3 {
    margin: 0 0 10px;
    font-size: 18px;
}

.training-guide__protocol-note {
    margin-top: 16px;
    font-size: 13px;
    line-height: 1.68;
    color: var(--guide-muted);
}

.training-guide__constitution-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.training-guide__constitution-card {
    text-align: center;
}

.training-guide__constitution-card strong {
    display: block;
    margin-bottom: 8px;
    color: var(--training-green);
    font-size: 16px;
}

.training-guide__ingredient-card {
    margin: 0;
    border: 1px solid var(--guide-border);
    border-radius: 22px;
    padding: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 250, 250, 0.96));
    text-align: center;
    box-shadow: var(--guide-shadow);
}

.training-guide__ingredient-card img {
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin-bottom: 14px;
}

.training-guide__ingredient-card h3 {
    margin: 0 0 10px;
    color: var(--guide-ink);
    font-size: 18px;
}

.training-guide__ingredient-card p {
    margin: 0;
    color: var(--guide-text);
    line-height: 1.66;
}

.training-guide__table-caption {
    margin: 0 0 14px;
    color: var(--guide-text);
    line-height: 1.72;
}

@media (max-width: 1080px) {
    .training-guide__program-grid,
    .training-guide__comparison-grid,
    .training-guide__feature-grid,
    .training-guide__routine-grid,
    .training-guide__ingredient-grid,
    .training-guide__constitution-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .training-guide__split-grid,
    .training-guide__media-layout,
    .training-guide__protocol-grid,
    .training-guide__product-layout,
    .training-guide__principles-grid,
    .training-guide__dosage-grid {
        grid-template-columns: 1fr;
    }

    .training-guide__hero-visual {
        padding: 14px;
    }
}

@media (max-width: 640px) {
    .training-guide__program-grid,
    .training-guide__comparison-grid,
    .training-guide__feature-grid,
    .training-guide__routine-grid,
    .training-guide__ingredient-grid,
    .training-guide__constitution-grid {
        grid-template-columns: 1fr;
    }

    .training-guide__program-card,
    .training-guide__comparison-card,
    .training-guide__feature-card,
    .training-guide__routine-card,
    .training-guide__dosage-card,
    .training-guide__constitution-card,
    .training-guide__technique-card,
    .training-guide__list-card,
    .training-guide__image-card,
    .training-guide__protocol > summary,
    .training-guide__protocol-body {
        padding-left: 18px;
        padding-right: 18px;
    }

    .training-guide__quote {
        padding: 16px 18px;
        font-size: 16px;
    }

    .training-guide__protocol-title {
        font-size: 20px;
    }
}
