/* Compact, scroll-led phone layout; desktop composition stays unchanged. */
.service-picker-disclosure{position:relative}
.service-picker-disclosure>summary{display:none}
@media(max-width:767px){
  .services-scroll .service-trigger{pointer-events:none}
  .services-scroll .service-grid{overflow-anchor:none}
  .services-scroll .service-description{transition:opacity .22s ease,transform .38s var(--ease)}
  .services-scroll .service-card{scroll-margin-top:24px}
  .people-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b8afff transparent;padding:2px 2px 8px}
  #team .section-head{margin-bottom:20px}#team .section-head>.code-comment{margin-top:14px}
  .person-card{flex:0 0 calc(100% - 20px);height:min(520px,calc(100svh - 126px));display:grid;grid-template-rows:minmax(0,1fr) auto;scroll-snap-align:start;min-width:0}
  .person-photo{aspect-ratio:auto;min-height:0;background:#e9e7ed;overflow:hidden}
  .person-photo img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
  .person-copy{padding:18px 20px;min-width:0}
  .person-role{font-size:13px;line-height:1.4;min-height:0}
  .person-name{flex-wrap:nowrap;align-items:center;margin:10px 0;gap:10px}
  .person-name h3{font-size:34px;overflow-wrap:normal}
  .role-icon{width:36px;height:36px;border-radius:12px}.role-icon .icon{width:22px;height:22px}
  .person-copy p{font-size:15px;line-height:1.5}
  .people-grid:focus-visible{outline:3px solid #7654ee;outline-offset:4px;border-radius:26px}
  .contact-form-tile{padding:16px;overflow:visible;scroll-margin-top:16px;scroll-margin-bottom:100px}
  .contact-form-tile h3{font-size:30px;margin-bottom:12px;line-height:1.05}
  .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .field{font-size:13px;line-height:1.3;margin:0}
  .field input,.field textarea{margin-top:5px;padding:10px 11px;border-radius:12px;font-size:16px;line-height:1.4}
  .field input{height:44px;min-width:0}
  .field textarea{height:64px;min-height:64px;resize:vertical}
  .service-picker-disclosure{margin:10px 0}
  .service-picker-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;min-height:44px;padding:10px 12px;border-radius:12px;background:#f0ecf9;cursor:pointer;font-size:13px;font-weight:800}
  .service-picker-disclosure>summary::-webkit-details-marker{display:none}
  .service-picker-disclosure>summary .icon{width:20px;height:20px;color:#6040d6;transition:transform .2s}
  .service-picker-disclosure[open]>summary .icon{transform:rotate(180deg)}
  .service-picker-disclosure .service-picker{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:12;margin:0;padding:14px;border:1px solid #e2d9f8;background:#f8f6ff;border-radius:16px;box-shadow:0 12px 32px #25232c30;max-height:min(260px,40svh);overflow:auto}
  .service-picker-disclosure .service-picker legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .service-picker-disclosure .service-picker span{font-size:13px;min-height:44px;display:flex;align-items:center;padding:10px 12px}
  .consent{font-size:12px;line-height:1.45;gap:8px;margin:12px 0}
  .consent input{width:20px;height:20px;margin:0;flex:none}
  .form-status:empty{display:none}.form-status{font-size:13px;min-height:0;margin:10px 0}
  .submit-button{min-height:46px;padding:11px 14px;font-size:15px;border-radius:14px}.submit-button .icon{width:23px;height:23px}
  .form-success{padding:14px 0}.form-success p{font-size:17px}
}
@media(max-width:767px) and (max-height:650px){
  .person-copy{padding:14px 18px}.person-name{margin:8px 0}.person-name h3{font-size:30px}.person-copy p{font-size:14px;line-height:1.45}
  .contact-form-tile{padding:14px}.contact-form-tile h3{font-size:28px;margin-bottom:10px}
  .service-picker-disclosure{margin:8px 0}.consent{margin:10px 0}
}
@media(prefers-reduced-motion:reduce){.service-picker-disclosure>summary .icon{transition:none}.people-grid{scroll-behavior:auto}}
