/* Supplemental routes reuse the Figma sections from styles.css. */
#sweeple .s-subpage { padding-top: 1px; }
#sweeple .s-about-page > .s-intro { margin-top: 220px; }
#sweeple .s-faq-page > .s-faq { margin-top: 290px; }
#sweeple .s-contact-page > .s-address { margin-top: 290px; }
#sweeple .s-app-page > .s-address { margin-top: 150px; }
#sweeple .s-services-page > .s-address { margin-top: 190px; }
#sweeple .s-services-page > .s-address .s-faq { width: 100%; margin: 0; }
#sweeple .s-services-page > .s-address .s-faq-list { margin-top: 0; }
#sweeple .s-services-page > .s-address .s-faq summary { font-size: 16px; padding-inline: 20px; gap: 10px; }
#sweeple .s-services-page > .s-address .s-faq-answer { padding-left: 66px; padding-right: 25px; }
#sweeple .s-about-page > .s-intro h1 { margin-top: 44px; }
#sweeple .s-cleaner-page > .s-join-intro h1 { margin-top: 36px; }
#sweeple .s-subpage .s-faq > .s-title { white-space: normal; }
#sweeple .p-faq-search { max-width: 680px; margin: 45px auto -45px; }
#sweeple .p-faq-search > input { display: block; width: 100%; height: 48px; border: 1px solid #e5dff0; background: #fff; border-radius: 13px; padding: 12px 17px; color: var(--ink); font: inherit; font-size: 14px; }
#sweeple .p-faq-search > input:focus-visible { outline: 2px solid #a18aff; outline-offset: 2px; }
#sweeple .p-faq-filters { display: flex; justify-content: center; flex-wrap: wrap; gap: 16px; margin-top: 15px; }
#sweeple .p-faq-filters button { min-height: 44px; border: 0; background: transparent; padding: 7px 0; font-size: 12px; color: var(--muted); }
#sweeple .p-faq-filters button[aria-pressed="true"] { color: var(--purple); text-decoration: underline; text-underline-offset: 5px; }
#sweeple .p-faq-empty { text-align: center; padding-top: 70px; }
#sweeple .p-faq-empty > a { display: inline-block; margin-top: 20px; color: var(--purple); font-size: 14px; }
#sweeple .p-contact-form { display: grid; gap: 20px; width: 416px; max-width: 100%; padding: 25px; background: #fff; border-radius: 15px; text-align: left; }
#sweeple .p-contact-form label { display: grid; gap: 8px; font-size: 12px; color: var(--muted); }
#sweeple .p-contact-form input, #sweeple .p-contact-form select, #sweeple .p-contact-form textarea { width: 100%; min-width: 0; min-height: 44px; border: 1px solid #e5dff0; background: var(--paper); color: var(--ink); border-radius: 10px; padding: 11px 12px; font: inherit; font-size: 14px; }
#sweeple .p-contact-form textarea { resize: vertical; }
#sweeple .p-contact-form input:focus-visible, #sweeple .p-contact-form select:focus-visible, #sweeple .p-contact-form textarea:focus-visible { outline: 2px solid #a18aff; outline-offset: 2px; }
#sweeple .p-contact-form > p { font-size: 11px; line-height: 1.5; color: var(--muted); }
#sweeple .p-contact-form > .s-btn { justify-self: start; min-height: 44px; }
#sweeple .p-contact-form [data-contact-status]:empty { display: none; }
#sweeple .p-contact-form [data-contact-status] { color: var(--purple); }
@media(max-width:991px) {
  #sweeple .s-about-page > .s-intro { margin-top: 160px; }
  #sweeple .s-about-page > .s-intro h1 { margin-top: 26px; }
  #sweeple .s-cleaner-page > .s-join-intro h1 { margin-top: 20px; }
  #sweeple .s-faq-page > .s-faq { margin-top: 175px; }
  #sweeple .s-contact-page > .s-address { margin-top: 185px; }
  #sweeple .s-app-page > .s-address { margin-top: 120px; }
  #sweeple .s-services-page > .s-address { margin-top: 150px; }
  #sweeple .s-services-page > .s-address .s-faq { margin-top: 35px; }
  #sweeple .s-services-page > .s-address .s-faq summary { font-size: 15px; grid-template-columns: 27px 1fr 34px; }
  #sweeple .s-services-page > .s-address .s-faq-answer { padding-left: 57px; }
  #sweeple .p-faq-search { margin: 35px 12px -45px; }
  #sweeple .p-faq-search > input { font-size: 16px; }
  #sweeple .p-faq-filters { gap: 13px; }
  #sweeple .p-faq-filters button { font-size: 11px; }
  #sweeple .p-contact-form { margin: 40px auto 0; width: 332px; padding: 22px; }
  #sweeple .p-contact-form input, #sweeple .p-contact-form select, #sweeple .p-contact-form textarea { font-size: 16px; }
}
