body.tf-wedding-fix section#sec-6faf.tf-wedding-faq { padding:80px 28px; background:#fff!important; color:#35252f; }
.tf-wedding-faq * { box-sizing:border-box; }
.tf-wedding-faq .tf-wfaq-inner { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr); gap:80px; max-width:1140px; margin:auto; align-items:start; }
.tf-wedding-faq .tf-wfaq-kicker { font-size:12px; text-transform:uppercase; color:#85576c; margin:0 0 24px; font-weight:600; }
body.tf-wedding-fix #sec-6faf.tf-wedding-faq h2 { font-family:Georgia,'Times New Roman',serif!important; font-size:46px!important; line-height:1.15; font-weight:400!important; text-align:left; color:#35252f; margin:0 0 24px!important; }
.tf-wedding-faq h2 em { color:#85576c; font-weight:400; }
.tf-wedding-faq .tf-wfaq-contact { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:280px; min-height:48px; padding:14px 0; margin-top:28px; color:#624353; font-size:15px; border-bottom:1px solid #bda5b2; text-decoration:none; }
.tf-wedding-faq .tf-wfaq-contact:hover { color:#a14771; }
.tf-wedding-faq .tf-wfaq-contact span { font-size:24px; }
.tf-wedding-faq .tf-wfaq-list { min-width:0; border-top:1px solid #cab8c3; }
.tf-wedding-faq details { border-bottom:1px solid #d9cdd4; }
.tf-wedding-faq details[open] { background:#faf6f8; }
.tf-wedding-faq summary { display:grid; grid-template-columns:28px minmax(0,1fr) 24px; gap:14px; align-items:center; list-style:none; min-height:88px; padding:22px 18px; cursor:pointer; }
.tf-wedding-faq summary::-webkit-details-marker { display:none; }
.tf-wedding-faq summary::marker { content:""; }
.tf-wedding-faq summary:hover { background:#faf6f8; }
.tf-wedding-faq .tf-wfaq-number { font-size:11px; color:#8a687c; }
.tf-wedding-faq .tf-wfaq-question { font-size:17px; line-height:1.55; font-weight:600; }
.tf-wedding-faq .tf-wfaq-icon { display:block; width:24px; height:24px; position:relative; color:#85576c; }
.tf-wedding-faq .tf-wfaq-icon::before, .tf-wedding-faq .tf-wfaq-icon::after { content:""; position:absolute; width:14px; height:1px; background:currentColor; left:5px; top:12px; }
.tf-wedding-faq .tf-wfaq-icon::after { transform:rotate(90deg); }
.tf-wedding-faq details[open] .tf-wfaq-icon::after { display:none; }
.tf-wedding-faq .tf-wfaq-answer { padding:0 56px 28px 60px; font-size:16px; line-height:1.8; color:#65545f; overflow-wrap:anywhere; }
.tf-wedding-faq .tf-wfaq-answer p { font-size:16px; line-height:1.8; margin:0; }
.tf-wedding-faq .tf-wfaq-answer p + p { margin-top:16px; }
.tf-wedding-faq summary:focus-visible, .tf-wedding-faq a:focus-visible { outline:2px solid #85576c; outline-offset:3px; }
@media(max-width:991px) {
  .tf-wedding-faq .tf-wfaq-inner { gap:40px; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
  body.tf-wedding-fix #sec-6faf.tf-wedding-faq h2 { font-size:38px!important; }
}
@media(max-width:700px) {
  body.tf-wedding-fix section#sec-6faf.tf-wedding-faq { padding:48px 20px; }
  .tf-wedding-faq .tf-wfaq-inner { grid-template-columns:1fr; gap:32px; }
  .tf-wedding-faq .tf-wfaq-kicker { margin-bottom:18px; }
  body.tf-wedding-fix #sec-6faf.tf-wedding-faq h2 { max-width:330px; }
  .tf-wedding-faq .tf-wfaq-contact { margin-top:16px; }
  .tf-wedding-faq summary { grid-template-columns:22px minmax(0,1fr) 24px; padding:20px 10px; gap:10px; }
  .tf-wedding-faq .tf-wfaq-question { font-size:16px; }
  .tf-wedding-faq .tf-wfaq-answer { padding:0 16px 24px 42px; }
}
