/* Agent accordion: progressive enhancement of .catalog .lines (see agent-accordion.js) */
.aa{margin:0;padding:0;list-style:none}
.catalog .lines.aa-hide{display:none}
.aa__item{position:relative;border-bottom:1px solid var(--rule)}
.aa__h{margin:0;font:inherit}
.aa__btn{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:1.25rem;width:100%;padding:1rem .25rem;cursor:pointer}
.aa__btn:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.aa__num{position:relative;flex:none;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;font:600 .875rem var(--text);color:#4d5148;isolation:isolate}
.aa__num::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--ink);z-index:-1;transform:scale(0);opacity:0;transition:transform .35s var(--ease),opacity .25s}
.aa__btn:hover .aa__num::before{transform:scale(.85);opacity:.1}
.aa__item.is-open .aa__num{color:var(--blade)}
.aa__item.is-open .aa__num::before{transform:scale(1);opacity:1}
.aa__title{font:700 1.75rem/1.1 var(--display);letter-spacing:.01em;text-transform:uppercase;color:#4d5148;transition:transform .35s var(--ease),color .2s}
.aa__btn:hover .aa__title,.aa__item.is-open .aa__title{color:var(--ink);transform:translateX(4px)}
.aa__plus{margin-left:auto;flex:none;width:2rem;height:2rem;display:grid;place-items:center;opacity:.5;transition:transform .35s var(--ease),opacity .2s}
.aa__btn:hover .aa__plus,.aa__item.is-open .aa__plus{opacity:1}
.aa__item.is-open .aa__plus{transform:rotate(45deg)}
.aa__item::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.aa__item.is-open::after{transform:scaleX(1)}
.aa__panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s var(--ease),opacity .2s}
.aa__item.is-open .aa__panel{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .4s var(--ease),opacity .25s .1s}
.aa__inner{overflow:hidden;min-height:0}
.aa__body{padding:.5rem .5rem 1.5rem 3.75rem}
.aa__txt p{margin:0 0 .75rem;max-width:60ch}
@media (max-width:560px){
  .aa__title{font-size:1.5rem}
  .aa__btn{gap:.9rem}
  .aa__body{padding-left:.5rem}
}
@media (prefers-reduced-motion:reduce){.aa *,.aa__item::after{transition:none!important}}
