/* accordion — ported from the approved design; colours come only from theme variables. */
.acc{border-top:1px solid var(--line)}
.acc-item{border-bottom:1px solid var(--line)}
.acc-item h3{margin:0;font-size:1.05rem}
.acc-btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 4px;background:none;border:0;text-align:left;font:700 clamp(1rem,.4vw + .9rem,1.12rem)/1.35 var(--fd);color:var(--night);cursor:pointer}
.acc-btn .pm{flex-shrink:0;width:32px;height:32px;border-radius:10px;background:var(--accent-soft);position:relative;transition:background-color .3s}
.acc-btn .pm::before,.acc-btn .pm::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2.5px;background:var(--accent-ink);border-radius:2px;transform:translate(-50%,-50%);transition:transform .35s var(--ease)}
.acc-btn .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
.acc-btn[aria-expanded="true"] .pm::after{transform:translate(-50%,-50%) rotate(0)}
.acc-panel{display:grid;grid-template-rows:1fr;transition:grid-template-rows .45s var(--ease)}
.acc-panel > div{overflow:hidden}
.acc-panel .in-p{padding:0 4px 20px;color:var(--muted);max-width:760px}
.js .acc-panel:not(.open){grid-template-rows:0fr}
.js .acc-panel:not(.open) > div{visibility:hidden;transition:visibility 0s .45s}
