/* Social Media page: compact services and progressively enhanced briefing. */
.social-intro .wrap > p { max-width: 880px; }
.social-intro .actions { margin-top: 28px; }
.social-services-section h2 { max-width: 900px; }
.social-services-section .wrap > p { max-width: 860px; }
.social-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; margin-top: 38px; }
.social-services article { border-top: 2px solid var(--wine); padding-top: 23px; }
.social-services h3 { font-size: 25px; line-height: 1.25; }
.social-services p { font-size: 16px; }
.social-briefing-intro { max-width: 780px; }
.social-briefing .contact-form { max-width: 840px; }
.social-services-section h2, .social-briefing h2 { hyphens: manual; overflow-wrap: normal; }
[data-social-wizard] [hidden] { display: none !important; }
.briefing-progress { margin-bottom: 28px; }
.briefing-progress p { margin-top: 0; color: var(--wine); font-size: 14px; font-weight: 700; }
.briefing-progress ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; gap: 8px; margin: 12px 0 0; padding: 0; }
.briefing-progress li { border-top: 3px solid var(--line); margin: 0; padding-top: 8px; font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.briefing-progress li[aria-current=step] { border-color: var(--wine); color: var(--wine); font-weight: 700; }
.briefing-progress li.is-complete { border-color: #ba7a96; }
.contact-form .briefing-stage { padding: 0 0 24px; margin-bottom: 24px; }
.contact-form .briefing-stage > legend { font-size: 28px; padding: 0 0 12px; letter-spacing: -.035em; }
.contact-form .briefing-stage > .choice-set { margin-bottom: 20px; }
.contact-form .choice-set legend { letter-spacing: normal; }
.contact-form .choice-set label { min-height: 46px; cursor: pointer; }
.contact-form .choice-set label:has(input:checked) { background: var(--blush); border-color: var(--wine); }
.contact-form .briefing-details { padding: 18px 0; border-top: 1px solid var(--line); }
.briefing-details summary { display: flex; justify-content: space-between; gap: 18px; cursor: pointer; font-size: 15px; font-weight: 600; min-height: 44px; align-items: center; }
.briefing-details summary::after { content: '+'; color: var(--wine); font-size: 22px; }
.briefing-details[open] > summary::after { content: '−'; }
.briefing-details summary { list-style: none; }
.briefing-details summary::-webkit-details-marker { display: none; }
.briefing-navigation { display: flex; justify-content: space-between; gap: 16px; }
.briefing-navigation .button { min-width: 130px; min-height: 48px; }
.briefing-navigation [data-next] { margin-left: auto; }
.briefing-error:empty { display: none; }
.briefing-error { color: #9b1830; font-size: 14px; }
.briefing-review { padding: 20px; background: var(--sand); border-radius: 6px; margin: 24px 0; }
.briefing-review h3 { font-size: 20px; }
.briefing-review p { font-size: 14px; overflow-wrap: anywhere; margin-top: 10px; }
.briefing-stage > [type=submit] { margin-top: 12px; }
.social-briefing .form-status { overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .social-services { grid-template-columns: 1fr; gap: 28px; }
  .social-services h3 { font-size: 23px; }
  .social-services-section, .social-intro, .social-briefing { padding-block: 56px; }
  .contact-form .briefing-stage > legend { font-size: 24px; }
  .briefing-progress li { font-size: 0; line-height: 0; padding-top: 0; color: transparent; }
  .briefing-navigation .button { min-width: 108px; }
  .contact-form .choice-set label { font-size: 14px; }
  .briefing-stage > [type=submit] { width: 100%; }
}
