.ip-lead{max-width:880px;font-size:16.5px;line-height:2.05;color:#2d3531;margin:0 0 14px;}
.ip-sub{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--green-dark);margin:0 0 22px;}
.ip-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:26px;align-items:start;}
.ip-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.ip-item{position:relative;}
.ip-btn{width:100%;display:flex;align-items:center;gap:16px;text-align:start;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line);border-inline-start:4px solid transparent;border-radius:6px;padding:16px 18px;cursor:pointer;transition:background .25s,border-color .25s,box-shadow .3s,transform .3s cubic-bezier(.23,1,.32,1);}
.ip-ico{flex:none;width:56px;height:56px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#e8f1ec;color:var(--green-dark);transition:background .25s,color .25s;}
.ip-tx{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;}
.ip-tx strong{font-size:16.5px;line-height:1.5;}
.ip-tx small{font-size:13px;color:var(--muted);line-height:1.6;}
.ip-arr{font-style:normal;color:var(--green);font-size:18px;opacity:0;transform:translateX(8px);transition:opacity .25s,transform .25s;}
.ip-item.is-on .ip-btn{border-inline-start-color:var(--green-dark);box-shadow:0 18px 34px -24px rgba(0,60,40,.55);background:#fff;}
.ip-item.is-on .ip-ico{background:var(--green-dark);color:#fff;}
.ip-item.is-on .ip-arr{opacity:1;transform:none;}
@media(hover:hover) and (pointer:fine){.ip-btn:hover{transform:translateX(-3px);border-color:#bcd5c7;}.ip-item.is-on .ip-btn:hover{border-color:var(--line);}}
.ip-btn:focus-visible{outline:2px solid var(--green);outline-offset:2px;}
.ip-acc{display:none;}
.ip-panel{position:sticky;top:96px;border-radius:6px;color:#fff;overflow:hidden;background:radial-gradient(90% 70% at 100% 100%,rgba(255,255,255,.07),transparent 60%),linear-gradient(160deg,#0b4c3a,#073a2d);border-top:5px solid #159A48;min-height:420px;isolation:isolate;}
.ip-panel::before{content:"";position:absolute;inset-inline-end:-120px;bottom:-140px;width:420px;height:420px;border-radius:50%;border:56px solid rgba(255,255,255,.05);z-index:-1;}
.ip-pin{padding:36px 38px 34px;animation:ipIn .45s cubic-bezier(.23,1,.32,1);}
@keyframes ipIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.ip-pico{display:flex;width:84px;height:84px;border-radius:6px;background:#0e6a52;color:#bff0dc;align-items:center;justify-content:center;margin-bottom:22px;}
.ip-pico svg{width:44px;height:44px;}
.ip-pk{display:block;font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.08em;color:#8fe0b1;margin-bottom:10px;}
.ip-panel h3{font-size:clamp(24px,2.6vw,32px);line-height:1.4;margin:0 0 14px;color:#fff;}
.ip-panel p{font-size:17px;line-height:2;color:rgba(255,255,255,.92);margin:0 0 24px;}
.ip-rel{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:22px;}
.ip-rel b{flex:1 1 100%;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.06em;color:#8fe0b1;font-weight:500;}
.ip-rel a{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:4px;background:#fff;color:#073a2d;font-weight:700;font-size:13.5px;transition:transform .25s;}
@media(hover:hover) and (pointer:fine){.ip-rel a:hover{transform:translateY(-2px);}}
.ip-dots{display:flex;gap:6px;}
.ip-dots i{width:22px;height:3px;border-radius:2px;background:rgba(255,255,255,.22);transition:background .3s,width .3s;}
.ip-dots i.on{background:#F3C87A;width:38px;}
@media(max-width:900px){
  .ip-wrap{grid-template-columns:1fr;}
  .ip-panel{display:none;}
  .ip-acc{display:block;max-height:0;overflow:hidden;transition:max-height .45s cubic-bezier(.23,1,.32,1);background:linear-gradient(160deg,#0b4c3a,#073a2d);color:#fff;border-radius:0 0 6px 6px;}
  .ip-acc p{margin:0;padding:18px 20px 22px;font-size:15px;line-height:1.95;color:rgba(255,255,255,.92);}
  .ip-item.is-on .ip-acc{max-height:420px;}
  .ip-item.is-on .ip-btn{border-radius:6px 6px 0 0;}
  .ip-arr{display:none;}
  .ip-ico{width:48px;height:48px;}
}
@media (prefers-reduced-motion: reduce){.ip-pin{animation:none;}.ip-btn,.ip-acc{transition:none;}}
