/* FAQ split: sticky intro with help card + rounded accordion (matches the blog FAQ), then the shared CTA band */
.fs { padding: 40px 0; background: linear-gradient(180deg,#faf8f2,#f3ecdc); border-top: 1px solid rgba(188,140,63,.25); }
@media (max-width: 767px) { .fs { padding: 30px 0; } }
.fs-wrap { max-width: 1280px; margin: 0 auto; padding: 0 20px; }
@media (min-width: 768px) { .fs-wrap { padding: 0 24px; } }
@media (min-width: 1024px) { .fs-wrap { padding: 0 48px; } }
.fs-grid { display: grid; gap: clamp(1.75rem,4vw,4rem); align-items: start; }
@media (min-width: 960px) { .fs-grid { grid-template-columns: .8fr 1.2fr; } .fs-side { position: sticky; top: 7rem; } }
.fs-side .section-label { color: #bc8c3f; }
.fs-side h2 { margin: .3rem 0 1rem; color: #2a1c13 !important; }
.fs-side > p { margin: 0; color: #5f5045; text-align: left; hyphens: none; }
.fs-help { margin-top: 1.8rem; padding: 1.4rem 1.5rem; display: flex; flex-direction: column; gap: .5rem; background: #1f1610; border-radius: 1.25rem; color: #f6f1e8; box-shadow: 0 26px 40px -28px rgba(31,22,16,.7); }
.fs-help strong { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; font-size: 1.2rem !important; color: #dfc590; }
.fs-help > span { font-size: .88rem !important; line-height: 1.6 !important; color: rgba(246,241,232,.75); }
.fs-help-links { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.4rem; margin-top: .8rem; }
.fs-btn { display: inline-flex; align-items: center; gap: 10px; padding: .8rem 1.3rem; border: 1px solid #dfc590; border-radius: 999px; color: #dfc590 !important; font-size: 12px !important; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; transition: background .2s, color .2s; }
.fs-btn:hover { background: #dfc590; color: #1f1610 !important; }
.fs-link { display: inline-flex; align-items: center; gap: 8px; color: #dfc590 !important; font-size: 12px !important; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; border-bottom: 1px solid rgba(223,197,144,.6); padding-bottom: 3px; }
.fs-link:hover { color: #fff !important; }
.fs-list { display: flex; flex-direction: column; gap: .8rem; }
.fs-list details { background: #fff; border: 1px solid rgba(188,140,63,.28); border-radius: 1rem; transition: box-shadow .3s, border-color .3s; }
.fs-list details[open] { border-color: #bc8c3f; box-shadow: 0 22px 36px -28px rgba(42,31,23,.5); }
.fs-list summary { display: flex; align-items: center; gap: 1rem; padding: 1.15rem 1.4rem; cursor: pointer; list-style: none; color: #2a1c13; }
.fs-list summary::-webkit-details-marker { display: none; }
.fs-list summary span { flex: 1; }
.fs-n { font-family: 'Playfair Display', Georgia, serif; font-style: italic; font-weight: 400; font-size: 1.05rem; color: #bc8c3f; min-width: 1.8rem; }
.fs-list summary i { flex: none; display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: #f3ecdc; color: #bc8c3f; font-size: .7rem; transition: transform .3s, background .2s, color .2s; }
.fs-list details[open] summary i { background: #bc8c3f; color: #fff; transform: rotate(45deg); }
.fs-list details p { margin: 0; padding: 0 1.4rem 1.3rem 4.2rem; color: #5f5045; text-align: left; hyphens: none; }
.fs-list details.fs-extra { display: none; }
.fs-list.is-all details.fs-extra { display: block; }
.fs-more { align-self: center; margin-top: .6rem; display: inline-flex; align-items: center; gap: 10px; padding: .75rem 1.4rem; border: 1px solid #bc8c3f; border-radius: 999px; background: transparent; color: #8a5a22; font: inherit; font-size: 12px !important; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: background .2s, color .2s; }
.fs-more:hover { background: #bc8c3f; color: #fff; }
.fs-more i { font-size: 11px; transition: transform .3s; }
.fs-list.is-all + .fs-more i, .fs-more[aria-expanded="true"] i { transform: rotate(180deg); }
@media (max-width: 560px) { .fs-list details p { padding-left: 1.4rem; } .fs-n { display: none; } }

/* CTA band — same as the archive pages */
.archive-wrap { max-width: 1280px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
@media (min-width: 768px) { .archive-wrap { padding-left: 24px; padding-right: 24px; } }
@media (min-width: 1024px) { .archive-wrap { padding-left: 48px; padding-right: 48px; } }
.archive-wrap--cta { padding-top: clamp(32px,4vw,48px); padding-bottom: clamp(44px,5vw,64px); }
.archive-wrap--cta .archive-cta { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr) auto; align-items: center; gap: clamp(22px,3.2vw,48px); margin: 0; padding: clamp(24px,2.6vw,34px) clamp(24px,3vw,40px); border-radius: 18px; background: #312721; color: #f6f1e8; box-shadow: 0 30px 50px -36px rgba(31,22,16,.7); }
.archive-cta .cta-copy .section-label { margin: 0 0 6px; font-size: 22px !important; color: #e8bd55; }
.archive-cta h3 { margin: 0 0 8px; color: #f6f1e8 !important; }
.archive-cta .cta-copy > p:not(.section-label) { margin: 0; font-size: 14px !important; line-height: 1.7 !important; color: rgba(246,241,232,.72); }
.archive-cta .cta-points { list-style: none; margin: 0; padding: 0 0 0 clamp(18px,2.6vw,36px); display: flex; flex-direction: column; gap: 12px; border-left: 1px solid rgba(232,189,85,.28); }
.archive-cta .cta-points li { display: flex; align-items: center; gap: 12px; font-size: 13.5px !important; line-height: 1.45 !important; color: rgba(246,241,232,.86); }
.archive-cta .cta-points i { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: rgba(232,189,85,.14); color: #e8bd55; font-size: 12px; }
.archive-cta .cta-actions { display: flex; flex-direction: column; align-items: stretch; gap: 10px; min-width: 210px; }
.archive-cta .cta-main { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 13px 24px; border-radius: 999px; background: #e8bd55; color: #1b1410; font-size: 12px !important; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; transition: background .25s, transform .25s; }
.archive-cta .cta-main:hover { background: #f3d078; transform: translateY(-2px); }
.archive-cta .cta-line { display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-size: 13px !important; color: rgba(246,241,232,.82); transition: color .2s; white-space: nowrap; }
.archive-cta .cta-line i { color: #e8bd55; font-size: 12px; }
.archive-cta .cta-line:hover { color: #e8bd55; }
@media (max-width: 1023px) {
  .archive-wrap--cta .archive-cta { grid-template-columns: 1fr 1fr; }
  .archive-cta .cta-copy { grid-column: 1 / -1; }
  .archive-cta .cta-points { border-left: 0; padding-left: 0; }
  .archive-cta .cta-actions { min-width: 0; }
}
@media (max-width: 640px) { .archive-wrap--cta .archive-cta { grid-template-columns: 1fr; } }
.archive-cta .cta-actions { min-width: 0; align-items: center; }
.archive-cta .cta-main { padding: 15px 30px; }
.archive-cta .section-label { color: #e8bd55; }
@media (min-width: 1024px) { .archive-wrap--cta { max-width: 1280px; padding-left: 48px; padding-right: 48px; } }
