/* XCM 4.3 — Long-form article components. */
.xcm-quote-form{display:grid;gap:14px}
.xcm-quote-form input,.xcm-quote-form select,.xcm-quote-form textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--xcm-line);border-radius:12px;background:var(--xcm-white);color:var(--xcm-ink);font-size:16px;line-height:1.35;box-shadow:none}
.xcm-quote-form textarea{min-height:116px;resize:vertical}
.xcm-quote-form input:focus,.xcm-quote-form select:focus,.xcm-quote-form textarea:focus{border-color:rgba(177,18,38,.55);outline:3px solid rgba(177,18,38,.13)}
.xcm-faq{display:grid;gap:12px}
.xcm-faq details{border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm);overflow:hidden}
.xcm-faq summary{position:relative;padding:18px 52px 18px 18px;color:var(--xcm-navy);font-weight:750;line-height:1.35;cursor:pointer;list-style:none}
.xcm-faq summary::-webkit-details-marker{display:none}
.xcm-faq summary::after{content:"+";position:absolute;top:50%;right:18px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);border-radius:50%;background:rgba(177,18,38,.1);color:var(--xcm-red);font-weight:750}
.xcm-faq details[open] summary::after{content:"−"}
.xcm-faq-body{padding:0 18px 18px;color:var(--xcm-muted)}
.xcm-figure{margin:0;overflow:hidden;border-radius:var(--xcm-radius-lg);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-figure img{width:100%;display:block}
.xcm-figure figcaption{padding:12px 16px;color:var(--xcm-muted);font-size:.9rem;line-height:1.45;background:var(--xcm-white)}
.xcm-article{max-width:880px;margin-inline:auto}
.xcm-article h2{margin:2.1rem 0 1rem;color:var(--xcm-navy)}
.xcm-article h3{margin:1.7rem 0 .8rem;color:var(--xcm-navy)}
.xcm-article h4{margin:1.4rem 0 .65rem;color:var(--xcm-navy)}
.xcm-article p{margin-bottom:1.08rem}
.xcm-answer-first{padding:22px 24px;border-left:5px solid var(--xcm-red);border-radius:0 var(--xcm-radius) var(--xcm-radius) 0;background:linear-gradient(180deg,rgba(177,18,38,.07),rgba(177,18,38,.035));color:var(--xcm-ink);font-size:1.04rem;line-height:1.75}
.xcm-toc{padding:20px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius-lg);background:var(--xcm-soft)}
.xcm-toc-title{display:block;margin-bottom:10px;color:var(--xcm-navy);font-weight:750}
.xcm-toc ol,.xcm-toc ul{margin-bottom:0}
.xcm-quote{margin:var(--xcm-space-6) 0;padding:24px;border-left:5px solid var(--xcm-red);border-radius:0 var(--xcm-radius-lg) var(--xcm-radius-lg) 0;background:var(--xcm-soft);color:var(--xcm-navy);font-size:1.05rem;font-weight:600;line-height:1.72}
.xcm-reference{padding:20px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-soft);color:var(--xcm-muted);font-size:.93rem}
@media (max-width:768px){.xcm-answer-first{padding:18px}}
.xcm-note,.xcm-warning,.xcm-legal-box,.xcm-price-note-box{padding:18px 20px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-note{border-left:5px solid var(--xcm-red);background:rgba(177,18,38,.055)}
.xcm-warning{border-left:5px solid var(--xcm-warning);background:rgba(183,121,31,.075)}
.xcm-legal-box{border-left:5px solid var(--xcm-navy);background:var(--xcm-soft)}
.xcm-price-note-box{border-left:5px solid var(--xcm-red);background:linear-gradient(180deg,rgba(177,18,38,.07),rgba(177,18,38,.035))}
.xcm-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--xcm-space-4);margin:0;padding:0;list-style:none}
.xcm-check-grid li{position:relative;margin:0;padding:16px 16px 16px 44px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-check-grid li::before{content:"";position:absolute;left:16px;top:20px;width:16px;height:16px;border-radius:50%;background:var(--xcm-red);box-shadow:inset 0 0 0 4px rgba(255,255,255,.72)}
.xcm-price-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.xcm-price-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;margin:0;padding:14px 16px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-price-list strong{color:var(--xcm-navy)}
.xcm-price-list .xcm-price{text-align:right;white-space:normal}
.xcm-table-wrap,.xcm-site .xcm-table-wrap{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important;-webkit-overflow-scrolling:auto!important;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius-lg);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-table,.xcm-site .xcm-table{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:separate;border-spacing:0;margin:0;background:var(--xcm-white);color:var(--xcm-ink)}
.xcm-table caption{padding:14px 16px;color:var(--xcm-muted);font-size:.9rem;line-height:1.5;text-align:left;caption-side:bottom;overflow-wrap:break-word}
.xcm-table th,.xcm-table td{min-width:0!important;max-width:100%!important;padding:14px 16px;border-bottom:1px solid var(--xcm-line);text-align:left;vertical-align:top;white-space:normal!important;overflow-wrap:break-word;word-break:normal;hyphens:none}
.xcm-table th{background:var(--xcm-navy);color:var(--xcm-white);font-weight:750;line-height:1.25}
.xcm-table tr:last-child td{border-bottom:0}
.xcm-table tbody tr:hover td{background:#FAFBFC}
.xcm-table th:nth-child(1):nth-last-child(2),.xcm-table th:nth-child(1):nth-last-child(2)~th,.xcm-table td:nth-child(1):nth-last-child(2),.xcm-table td:nth-child(1):nth-last-child(2)~td{width:50%}
.xcm-table th:nth-child(1):nth-last-child(3),.xcm-table th:nth-child(1):nth-last-child(3)~th,.xcm-table td:nth-child(1):nth-last-child(3),.xcm-table td:nth-child(1):nth-last-child(3)~td{width:33.333%}
.xcm-table tr:has(>:nth-child(4)) th,.xcm-table tr:has(>:nth-child(4)) td{width:auto}
@media (max-width:768px){.xcm-table-wrap,.xcm-site .xcm-table-wrap{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.xcm-table,.xcm-table thead,.xcm-table tbody,.xcm-table tfoot,.xcm-table tr,.xcm-table th,.xcm-table td{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}.xcm-table{background:transparent!important}.xcm-table thead{display:none!important}.xcm-table tbody{display:grid!important;gap:12px}.xcm-table tr{overflow:hidden;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}.xcm-table td{display:block!important;padding:12px 14px!important;border-bottom:1px solid var(--xcm-line);color:var(--xcm-ink);text-align:left!important;overflow-wrap:break-word!important;word-break:normal!important;hyphens:none!important}.xcm-table td:last-child{border-bottom:0}.xcm-table td::before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--xcm-navy);font-size:.84rem;font-weight:750;line-height:1.3}.xcm-table td:not([data-label])::before,.xcm-table td[colspan]::before{display:none}.xcm-table caption{display:block;padding:12px 4px 0;color:var(--xcm-muted);font-size:.88rem;line-height:1.5}.xcm-price-list li{grid-template-columns:1fr;gap:6px}.xcm-price-list .xcm-price{text-align:left}}
.xcm-site .aligncenter,.xcm-site .wp-caption.aligncenter{margin-left:auto;margin-right:auto;text-align:center}
.xcm-site .wp-caption{max-width:100%}
.xcm-site .wp-caption img{display:block;margin-left:auto;margin-right:auto}
.xcm-site .wp-caption-text{color:var(--xcm-muted);font-size:.9rem;line-height:1.45}
