.afp{font-family:inherit;color:inherit;box-sizing:border-box;min-width:0}
.afp--full{margin:30px 0 38px;padding:28px;border:1px solid #e2e2e2;border-radius:16px;background:#fff;scroll-margin-top:150px}
.afp__header{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:24px}
.afp .afp__eyebrow{font-size:11px;letter-spacing:.13em;color:#666}
.afp .afp__header h2{font-size:30px;line-height:1.2;font-weight:400;margin:10px 0 0}
.afp .afp__header p{font-size:14px;line-height:1.5;margin:0;color:#666;max-width:330px}
.afp__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.afp__feature{min-width:0;border:1px solid #e2e2e2;border-radius:10px;background:#fafafa;scroll-margin-top:150px}
.afp__feature summary{display:flex;gap:12px;align-items:center;cursor:pointer;list-style:none;padding:18px 14px;min-height:76px;box-sizing:border-box}
.afp__feature summary::-webkit-details-marker{display:none}
.afp__feature summary:focus-visible{outline:2px solid #111;outline-offset:3px;border-radius:10px}
.afp__feature summary>svg{width:36px;height:36px;flex:0 0 36px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.afp__feature summary>span{min-width:0}
.afp .afp__feature strong{display:block;font-size:16px;line-height:1.3;font-weight:400}
.afp .afp__feature small{display:block;margin-top:5px;font-size:12px;line-height:1.4;color:#666}
.afp .afp__feature .afp__plus{margin-left:auto;font-size:22px;font-weight:300;flex-shrink:0}
.afp__feature[open] .afp__plus{transform:rotate(45deg)}
.afp .afp__intro{padding:0 16px 16px;margin:0;font-size:14px;line-height:1.5;color:#555}
.afp .afp__explanation{padding:0 16px 16px;font-size:14px;line-height:1.6}
.afp .afp__explanation p{margin:0 0 8px;font-size:inherit;line-height:inherit}
.afp a{text-decoration:underline;text-underline-offset:3px;color:inherit}
.afp--compact{margin:0;position:absolute;left:2px;right:auto;bottom:16px;z-index:6;width:48px}
.afp--compact .afp__grid{display:flex;flex-direction:column;gap:10px}
.afp--compact .afp__feature{position:relative;width:48px;border:0;background:transparent;border-radius:0;color:#477c78;box-shadow:none}
.afp--compact .afp__feature:nth-child(2){color:#667f9c}
.afp--compact .afp__feature:nth-child(3){color:#9a835d}
.afp--compact .afp__feature summary{position:relative;padding:4px;min-height:48px;gap:0;justify-content:center;border:1px solid #d9dddc;border-radius:50%;background:#fff;box-shadow:0 3px 10px #18262312,0 1px 2px #1826230d;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease}
.afp--compact .afp__feature summary:after{content:"";position:absolute;right:2px;top:2px;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#e30613;box-shadow:0 1px 3px #0002;box-sizing:content-box}
.afp--compact .afp__feature summary:hover,.afp--compact .afp__feature[open] summary{border-color:#c5c9c8;background-color:#fff;box-shadow:0 6px 16px #1826231a,0 1px 3px #18262312;transform:translateY(-1px)}
.afp--compact .afp__feature[open] summary{border-color:#e30613}
.afp--compact .afp__feature summary>svg{width:36px;height:36px;flex-basis:36px;stroke-width:1.3;filter:drop-shadow(0 1px 1px #23343312)}
.afp--compact .afp__feature summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.afp--compact .afp__feature strong{font-size:13px}
.afp--compact .afp__feature small{display:none}
.afp--compact .afp__explanation{position:absolute;left:52px;right:auto;bottom:0;width:min(245px,calc(100vw - 130px));padding:16px;font-size:14px;line-height:1.5;background:#fff;color:#333;border:1px solid #ddd;border-radius:12px;box-shadow:0 8px 24px #00000018;text-align:left;box-sizing:border-box;z-index:8}
.afp--compact .afp__explanation strong{font-size:16px;margin-bottom:4px}
.afp--compact .afp__explanation small{display:block;margin-bottom:10px}
.afp--compact .afp__feature[open]{z-index:9}
@media(max-width:1100px){.afp__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.afp--full{padding:18px 14px;margin:24px 0;border-radius:12px}.afp__header{display:block}.afp .afp__header h2{font-size:25px}.afp .afp__header p{margin-top:12px}.afp__grid{grid-template-columns:1fr}.afp__feature summary{min-height:72px}.afp .afp__eyebrow{font-size:12px;letter-spacing:.06em}}
