/* Help and Support Page Design (aligned with product reference UI) */

.cf7-pdf-generation-help-page {
    margin-top: 24px;
}

.cf7-pdf-generation-help-page .cf7-pdf-generation-page-subtitle {
    margin-bottom: 24px;
    max-width: 1140px;
    line-height: 20px;
    font-size: 14px;
    color: #50575e;
}

.cf7-pdf-generation-help-top-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 16px;
}

.cf7-pdf-generation-help-bottom-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.cf7-pdf-generation-help-card {
    background: #fff;
    border-radius: 8px;
    border: 1px solid #eef0f2;
    padding: 24px;
    min-height: 255px;
    display: flex;
    flex-direction: column;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-icon {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    line-height: 0;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-icon svg {
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-title {
    margin: 0 0 10px;
    font-size: 20px;
    font-weight: 500;
    color: #1d2327;
    line-height: 1.35;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-text {
    margin: 0;
    color: #4a494b;
    line-height: 20px;
    font-size: 14px;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-footer {
    margin-top: auto;
    padding-top: 18px;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-footer > .cf7-pdf-generation-primary-btn {
    float: right;
}

.cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-footer::after {
    content: '';
    display: table;
    clear: both;
}

.cf7-pdf-generation-help-top-grid .cf7-pdf-generation-help-card .cf7-pdf-generation-help-card-title {
    line-height: 40px;
}

.cf7-pdf-generation-help-card-wide {
    min-height: 338px;
}

.cf7-pdf-generation-help-card-wide .cf7-pdf-generation-help-card-title {
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 8px;
}

.cf7-pdf-generation-help-newsletter-embed {
    margin-top: 4px;
}

.cf7-pdf-generation-help-newsletter-embed .gfiframe {
    max-width: 100%;
}

.cf7-pdf-generation-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: #285064;
    color: #fff !important;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none !important;
    line-height: 1.3;
    box-shadow: none;
    border: none;
    cursor: pointer;
    transition: background 0.15s ease;
}

.cf7-pdf-generation-primary-btn:hover,
.cf7-pdf-generation-primary-btn:focus {
    background: #0074a2;
    color: #fff !important;
}

.cf7-pdf-generation-primary-btn-icon {
    display: inline-flex;
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    min-width: 14px;
    align-items: center;
    justify-content: center;
    font-size: 0;
    line-height: 0;
    margin: 0;
    vertical-align: middle;
}

.cf7-pdf-generation-primary-btn-icon svg {
    display: block;
    width: 14px;
    height: 14px;
}

.cf7-pdf-generation-help-list {
    list-style: none;
    margin: 16px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cf7-pdf-generation-help-list li {
    background: #fff;
    border: 1px solid #eff1f4;
    border-radius: 8px;
    padding: 14px 16px 14px 22px;
    position: relative;
}

.cf7-pdf-generation-help-list li::before {
    content: '';
    position: absolute;
    left: 10px;
    top: 20px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #0f9ac8;
}

.cf7-pdf-generation-help-list a {
    color: #007ab0;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    text-decoration: none;
}

.cf7-pdf-generation-help-list a:hover,
.cf7-pdf-generation-help-list a:focus {
    text-decoration: underline;
}

.cf7-pdf-generation-help-remote-empty {
    margin-bottom: 0;
    font-style: italic;
    color: #787c82;
}

.cf7-pdf-generation-help-faq-list {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cf7-pdf-generation-help-faq-item {
    background: #fff;
    border: 1px solid #e7edf1;
    border-radius: 8px;
    overflow: hidden;
}

.cf7-pdf-generation-help-faq-item.is-open {
    border-color: #6fc2dd;
}

.cf7-pdf-generation-help-faq-item button {
    outline: none !important;
}

.cf7-pdf-generation-help-faq-question {
    width: 100%;
    border: 0;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    color: #056d99;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    text-align: left;
    margin: 0;
    box-shadow: none;
}

.cf7-pdf-generation-help-faq-question span {
    font-size: 24px;
    line-height: 1;
    color: #4b5b66;
}

.cf7-pdf-generation-help-faq-answer {
    padding: 0 16px 0;
    color: #4a494b;
    line-height: 20px;
    font-size: 14px;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.28s ease, opacity 0.2s ease;
}

.cf7-pdf-generation-help-faq-item.is-open .cf7-pdf-generation-help-faq-answer {
    max-height: 2000px;
    opacity: 1;
    padding: 0 16px 14px;
}

@media screen and (max-width: 1200px) {
    .cf7-pdf-generation-help-top-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 960px) {
    .cf7-pdf-generation-help-top-grid,
    .cf7-pdf-generation-help-bottom-grid {
        grid-template-columns: 1fr;
    }
}
