/* Profession pages: a static hub that introduces one line of work and sends people
   into the four workflows for it. Shares the case-page shell, type scale and palette. */
.profession-page .profession-lede { max-width: 22ch; margin: 26px 0 0; font-size: clamp(21px,2.6vw,29px); font-weight: 450; line-height: 1.35; letter-spacing: -1px; color: #3f5b54; }
.profession-page .case-page-description { margin-top: 20px; }
.profession-jump { display: inline-flex; align-items: center; gap: 11px; font-size: 13px; color: #315cbd; }
.profession-jump:hover { text-decoration: underline; }
.profession-jump .icon { width: 15px; height: 15px; }

.profession-section { margin-top: 58px; scroll-margin-top: 110px; }
.profession-section>h2 { margin-bottom: 22px; }

.profession-plate { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 13px 30px; }
.profession-plate li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.7; color: #59716f; }
.profession-plate .icon { width: 16px; height: 16px; margin-top: 4px; flex-shrink: 0; color: #7f9a7a; }

.profession-workflows .case-grid { grid-template-columns: 1fr 1fr; gap: 15px; }
.profession-workflows .case-card { min-height: 0; }

.profession-control { list-style: none; display: grid; gap: 15px; padding: 26px 30px; border: 1px solid #dfe6dd; border-radius: 12px; background: #f4f7f1; }
.profession-control li { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.75; color: #556d52; }
.profession-control .icon { width: 15px; height: 15px; margin-top: 4px; flex-shrink: 0; color: #6f8c64; }

.profession-tools { display: flex; flex-wrap: wrap; gap: 9px; }
.profession-tools span { display: inline-flex; align-items: center; gap: 9px; padding: 8px 13px; border: 1px solid #e0e6dc; border-radius: 6px; background: #fbfcf8; font-size: 12px; color: #5d7064; }
.profession-tools img { display: block; width: 17px; height: 17px; object-fit: contain; }
.profession-tools-note { margin-top: 16px; font-size: 12px; line-height: 1.8; color: #768579; }

.profession-faq details { border-bottom: 1px solid #e3e9dd; }
.profession-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px 0; font-size: 15px; font-weight: 500; color: #33463f; cursor: pointer; list-style: none; }
.profession-faq summary::-webkit-details-marker { display: none; }
.profession-faq summary .icon { width: 15px; height: 15px; flex-shrink: 0; color: #869684; transition: transform .2s; }
.profession-faq details[open] summary .icon { transform: rotate(45deg); }
.profession-faq .faq-answer { padding: 0 0 21px; max-width: 70ch; font-size: 14px; line-height: 1.85; color: #61776f; }

.profession-closing { margin-top: 62px; padding: 34px 36px; border: 1px solid #dce5ec; border-radius: 12px; background: #eef3f7; }
.profession-closing h2 { margin-bottom: 12px; }
.profession-closing p { max-width: 62ch; font-size: 15px; line-height: 1.85; color: #49677b; }
.profession-closing .story-button { margin-top: 24px; }
.profession-note { margin-top: 18px; font-size: 12px; line-height: 1.8; color: #768579; }

@media (max-width: 760px) {
  .profession-plate,.profession-workflows .case-grid { grid-template-columns: 1fr; }
  .profession-section { margin-top: 44px; }
  .profession-control { padding: 22px; }
  .profession-closing { padding: 26px 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .profession-faq summary .icon { transition: none; }
}
