/* College Path - national institutes guidance plans (home #guidance-plans, cp-plans.js) */
.cpplans{background:linear-gradient(180deg,#F5F6FF,#fff)}
.cpp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;margin-top:26px;align-items:stretch}
.cpp-card{position:relative;background:#fff;border:1px solid #DDE1F6;border-radius:20px;padding:24px 22px 22px;
  display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(23,26,74,.06)}
.cpp-card.hot{border:2px solid var(--brand,#4F46E5);box-shadow:0 18px 44px rgba(79,70,229,.20)}
.cpp-ribbon{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#F59E0B,#EA580C);
  color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:5px 14px;border-radius:20px;white-space:nowrap}
.cpp-tag{align-self:flex-start;background:var(--brand-xl,#EEF0FF);color:var(--brand-d,#3730A3);font-size:11.5px;font-weight:800;
  padding:4px 10px;border-radius:20px;letter-spacing:.03em}
.cpp-card h3{font-size:22px;margin:12px 0 2px;color:var(--ink,#171A4A)}
.cpp-for{font-size:13px;color:var(--muted,#6B7394);font-weight:600}
.cpp-price{margin:16px 0 14px;padding-bottom:14px;border-bottom:1px dashed #DDE1F6}
.cpp-price b{font-size:34px;color:var(--ink,#171A4A);letter-spacing:-.02em}
.cpp-price span{display:block;font-size:12.5px;color:var(--muted,#6B7394)}
.cpp-card ul{list-style:none;padding:0;margin:0 0 20px;flex:1}
.cpp-card li{position:relative;padding:6px 0 6px 26px;font-size:14.2px;line-height:1.5;color:var(--body,#454C6E)}
.cpp-card li:before{content:"✓";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;background:#DCFCE7;
  color:#15803D;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center}
.cpp-btn{display:block;width:100%;border:0;border-radius:40px;padding:14px 18px;font:inherit;font-weight:800;font-size:15px;cursor:pointer;
  background:linear-gradient(135deg,var(--brand,#4F46E5),var(--brand-d,#3730A3));color:#fff;box-shadow:0 10px 24px rgba(79,70,229,.28)}
.cpp-btn.ghost{background:#fff;color:var(--brand-d,#3730A3);border:2px solid var(--brand,#4F46E5);box-shadow:none}
.cpp-btn:hover{filter:brightness(1.06)}.cpp-btn:disabled{opacity:.6;cursor:wait}
.cpp-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:28px 0 8px}
.cpp-steps div{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #DDE1F6;border-radius:14px;padding:12px}
.cpp-steps b{flex:none;width:30px;height:30px;border-radius:50%;background:var(--brand,#4F46E5);color:#fff;display:flex;align-items:center;justify-content:center}
.cpp-steps span{font-size:13.2px;font-weight:600;color:var(--ink,#171A4A);line-height:1.35}
.cpp-fine{font-size:12.8px;color:var(--muted,#6B7394);line-height:1.7;margin-top:14px}
.cpp-fine a{color:var(--brand-d,#3730A3);font-weight:700}
.cpp-modal{position:fixed;inset:0;z-index:1000001;background:rgba(10,14,50,.62);display:flex;align-items:center;justify-content:center;padding:16px}
.cpp-modal[hidden]{display:none}
.cpp-box{position:relative;background:#fff;border-radius:20px;width:100%;max-width:440px;max-height:92vh;overflow:auto;padding:24px 22px 20px;
  box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cpp-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:28px;line-height:1;color:#94A3B8;cursor:pointer}
.cpp-mtag{font-size:12px;font-weight:800;color:var(--brand-d,#3730A3);text-transform:uppercase;letter-spacing:.04em}
.cpp-box h3{margin:4px 0 14px;font-size:21px;color:var(--ink,#171A4A)}
.cpp-box form{display:flex;flex-direction:column;gap:11px}
.cpp-box label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;color:#334155}
.cpp-box label small{font-weight:500;color:#64748B}
.cpp-box input,.cpp-box select{font:inherit;font-weight:500;padding:11px 12px;border:1px solid #CBD5E1;border-radius:10px;width:100%;box-sizing:border-box}
.cpp-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cpp-wa{border:0;background:none;color:#128C7E;font:inherit;font-weight:800;font-size:14px;cursor:pointer;padding:6px}
.cpp-msg{font-size:13.5px;line-height:1.6;color:#B91C1C;margin:0;min-height:1em}
.cpp-msg.ok{color:#166534}.cpp-msg a{color:#128C7E;font-weight:800}
@media(max-width:420px){.cpp-2{grid-template-columns:1fr}.cpp-price b{font-size:30px}}

.cpp-prem{grid-column:1/-1;display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:10px 34px;
  background:linear-gradient(135deg,#171A4A,#312E81 60%,#4F46E5);border:0;color:#E0E7FF;box-shadow:0 22px 50px rgba(23,26,74,.35)}
.cpp-prem .cpp-tag{background:rgba(255,255,255,.14);color:#fff}
.cpp-prem h3,.cpp-prem .cpp-price b{color:#fff}
.cpp-prem .cpp-for,.cpp-prem .cpp-price span{color:#C7D2FE}
.cpp-prem .cpp-price{border-bottom-color:rgba(255,255,255,.2)}
.cpp-prem ul{margin:8px 0 0;columns:2;column-gap:26px}
.cpp-prem li{color:#E0E7FF;break-inside:avoid}
.cpp-prem li b{color:#fff}
.cpp-prem .cpp-btn{background:linear-gradient(135deg,#F59E0B,#EA580C);box-shadow:0 10px 24px rgba(234,88,12,.35)}
@media(max-width:760px){.cpp-prem{grid-template-columns:1fr}.cpp-prem ul{columns:1}}

.cpp-one{grid-template-columns:1fr;max-width:1000px;margin-left:auto;margin-right:auto}
.cpp-prem .cpp-tag{display:inline-block}
