/* FAQ: accepted porcelain design. A single background wash crosses the section boundary. */
body[data-atlas-preview] #mechanics-context.form-fn::before {
  bottom: -220px;
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 88px, #000 calc(100% - 310px), transparent);
  mask-image: linear-gradient(180deg, transparent, #000 88px, #000 calc(100% - 310px), transparent);
}
body[data-atlas-preview] .site-faq--porcelain::before { content: none; }
body[data-atlas-preview] .site-faq--porcelain { isolation: auto; padding: 68px 40px 116px; background: transparent; }
.site-faq--porcelain .faq-shell { max-width: 1240px; margin: auto; position: relative; }
.site-faq--porcelain .faq-intro { display: grid; grid-template-columns: 1fr 1fr; align-items: end; margin-bottom: 42px; gap: 8px 80px; }
.site-faq--porcelain .faq-eyebrow { grid-column: 1 / -1; font-size: 10px; font-weight: 500; letter-spacing: .18em; margin: 0 0 24px; color: #70685e; }
.site-faq--porcelain h2 { grid-row: 2 / 4; font: 400 clamp(52px, 5vw, 76px)/.98 Cormorant, Georgia, serif; letter-spacing: -.045em; margin: 0; color: #383633; }
.site-faq--porcelain h2 em { font-weight: 400; }
.site-faq--porcelain .faq-lede { font-size: 14px; line-height: 1.8; color: #70685e; margin: 0; }
.site-faq--porcelain .faq-contact { display: inline-flex; gap: 28px; align-items: center; justify-self: start; margin-top: 12px; padding-bottom: 9px; border-bottom: 1px solid #aaa08f; color: #383633; text-decoration: none; font-size: 13px; }
.site-faq--porcelain .faq-list { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 12px 18px; }
.site-faq--porcelain .faq-row { background: #fffaf3; border: 1px solid #e5dcd0; border-radius: 14px; }
.site-faq--porcelain .faq-row summary { display: flex; align-items: center; gap: 24px; min-height: 86px; padding: 22px 24px; cursor: pointer; list-style: none; font-size: 15px; line-height: 1.5; color: #383633; }
.site-faq--porcelain summary::-webkit-details-marker { display: none; }
.site-faq--porcelain summary::marker { content: ''; }
.site-faq--porcelain .faq-question { flex: 1; }
.site-faq--porcelain .faq-icon { flex: 0 0 28px; height: 28px; position: relative; border: 1px solid #c4baac; border-radius: 50%; }
.site-faq--porcelain .faq-icon::before, .site-faq--porcelain .faq-icon::after { content: ''; position: absolute; background: currentColor; left: 8px; right: 8px; top: 12px; height: 1px; }
.site-faq--porcelain .faq-icon::after { transform: rotate(90deg); transition: transform .2s; }
.site-faq--porcelain .faq-row[open] { background: #fffdf8; border-color: #bfb09c; }
.site-faq--porcelain .faq-row[open] .faq-icon::after { transform: rotate(0); }
.site-faq--porcelain .faq-row[open] .faq-icon { background: #383633; color: #f7f1e8; border-color: #383633; }
.site-faq--porcelain .faq-answer { padding: 0 24px 26px; max-width: 68ch; font-size: 14px; line-height: 1.85; color: #645d54; }
.site-faq--porcelain .faq-answer p { margin: 0 0 12px; }
.site-faq--porcelain .faq-answer p:last-child { margin-bottom: 0; }
.site-faq--porcelain .faq-answer ol { margin: 12px 0; padding-left: 20px; }
.site-faq--porcelain .faq-answer a { color: inherit; text-underline-offset: 4px; }
.site-faq--porcelain .faq-help { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; margin-top: 32px; padding-top: 18px; border-top: 1px solid #d9d0c4; font-size: 12px; line-height: 1.7; color: #70685e; }
.site-faq--porcelain .faq-help a { color: #383633; text-underline-offset: 4px; }
.site-faq--porcelain .faq-help a:last-child { flex-basis: 100%; }
.site-faq--porcelain :is(summary,a):focus-visible { outline: 2px solid #865b3c; outline-offset: 5px; border-radius: 3px; }
.site-faq--porcelain summary:hover .faq-question { color: #8b6146; }
@media (max-width: 900px) {
  body[data-atlas-preview] .site-faq--porcelain { padding: 40px 24px 120px; }
  .site-faq--porcelain h2 { font-size: 56px; }
  .site-faq--porcelain .faq-lede br { display: none; }
}
@media (max-width: 600px) {
  body[data-atlas-preview] .site-faq--porcelain { padding: 36px 20px 96px; }
  .site-faq--porcelain .faq-intro { display: block; }
  .site-faq--porcelain h2 { font-size: 48px; margin-bottom: 20px; }
  .site-faq--porcelain .faq-eyebrow { margin-bottom: 20px; }
  .site-faq--porcelain .faq-lede { font-size: 13px; }
  .site-faq--porcelain .faq-list { grid-template-columns: 1fr; }
  .site-faq--porcelain .faq-row summary { font-size: 14px; gap: 16px; padding: 20px; }
}
@media (prefers-reduced-motion: reduce) { .site-faq--porcelain .faq-icon::after { transition: none; } }
