/* Care plan page (pen.dev export: care-plan.html). Small fixes (adjustments.css) imports this file for the form + FAQ. */
.cp-sec{padding:0 0 100px}
.cp-sec .wrap{gap:40px}
.cp-sec .sh h2,.flowsec .sh h2{font-size:52px;letter-spacing:-2px}
.flowsec .wrap{gap:48px}

/* plans */
.cp-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.cp-plan{display:flex;flex-direction:column;border-radius:28px;overflow:hidden}
.cp-plan.hot{outline:2px solid var(--p);outline-offset:-1px;box-shadow:0 24px 48px #8B5CF633}
.cp-ph{display:flex;flex-direction:column;gap:18px;padding:28px 28px 32px;background:#EDE9FE}
.cp-plan.hot .cp-ph{background:var(--p);color:#fff}
.cp-plan.top3 .cp-ph{background:#DDD6FE}
.cp-top{display:flex;justify-content:space-between;align-items:center}
.cp-ph .ib{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#8B5CF626;color:var(--p)}
.cp-plan.hot .ib{background:#FFFFFF26;color:#fff}.cp-plan.top3 .ib{background:#8B5CF62E}
.cp-ph .ib svg{width:32px;height:32px}
.cp-ph .tag{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#fff;color:var(--p);font:700 11px "JetBrains Mono",monospace;letter-spacing:1px}
.cp-ph .tag svg{width:14px;height:14px;fill:currentColor}
.cp-ph small{display:block;margin-bottom:4px;font:600 11px "JetBrains Mono",monospace;letter-spacing:2px;color:var(--p)}
.cp-plan.hot .cp-ph small{color:#EDE5FF}
.cp-ph h3{font-size:36px;letter-spacing:-1.5px;line-height:1.2}
.cp-ph p{margin-top:4px;font-size:15px;color:var(--mut)}.cp-plan.hot .cp-ph p{color:#FFFFFFCC}
.cp-pr{display:flex;align-items:baseline;gap:8px}
.cp-pr b{font:800 30px Manrope,sans-serif;letter-spacing:-1px}
.cp-pr span{font-size:14px;color:var(--mut)}.cp-plan.hot .cp-pr span{color:#FFFFFFB3}
.cp-pb{display:flex;flex-direction:column;gap:22px;padding:28px}
.cp-pb ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.cp-pb li{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600}
.cp-pb li svg{flex:none;width:24px;height:24px;padding:4.5px;border-radius:12px;background:#16A34A1F;color:var(--ok)}
.cp-pb li.no{font-weight:400;color:#A5A3C2}.cp-pb li.no svg{background:#15123A0D;color:#A5A3C2}
.cp-cta{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:12px;background:#fff;outline:1px solid var(--line);outline-offset:-.5px;font-size:15px;font-weight:700;transition:box-shadow .3s,background .25s}
.cp-cta:hover{box-shadow:var(--sh)}
.cp-cta svg{width:16px;height:16px;transition:transform .3s var(--ease)}.cp-cta:hover svg{transform:translateX(3px)}
.cp-plan.hot .cp-cta{background:var(--p);color:#fff;outline:0}.cp-plan.hot .cp-cta:hover{background:#7C3AED}
.cp-fine,.cp-more{text-align:center;font-size:15px;color:var(--mut)}
.cp-fine{margin-top:-8px;font:500 12px "JetBrains Mono",monospace}
.cp-more{margin-top:-12px}.cp-more a{color:var(--p);font-weight:700}

/* FAQ accordion (.qa toggled by v2-core.js) */
.cp-acc{width:100%;max-width:880px;margin:0 auto;border-radius:24px;overflow:hidden}
.qa{border-bottom:1px solid var(--line);transition:background .3s}
.qa:last-child{border-bottom:0}
.qa.open{background:#FFFFFFB3}
.qa button{display:flex;align-items:center;gap:16px;width:100%;padding:22px 28px;border:0;background:none;text-align:left;font:700 18px/1.35 Inter,sans-serif;color:var(--ink);cursor:pointer}
.qa button small{flex:none;font:700 13px "JetBrains Mono",monospace;color:var(--p)}
.qa button span{flex:1}
.qa .pl{position:relative;flex:none;width:32px;height:32px;border-radius:16px;background:#fff;outline:1px solid var(--line);outline-offset:-.5px;transition:background .3s}
.qa .pl::before,.qa .pl::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:1px;background:var(--ink);transition:transform .3s var(--ease),background .3s}
.qa .pl::after{transform:rotate(90deg)}
.qa.open .pl{background:var(--p);outline:0}.qa.open .pl::before,.qa.open .pl::after{background:#fff}.qa.open .pl::after{transform:rotate(0)}
.qa .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}
.qa.open .a{grid-template-rows:1fr}
.qa .a>div{overflow:hidden;padding:0 76px 0 65px;font-size:16px;line-height:25px;color:var(--mut)}
.qa.open .a>div{padding-bottom:22px}
.qa .a a{color:var(--p);font-weight:600}

/* quote form (submitted by v2-core.js) */
.form{position:relative;width:100%;max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:32px;padding:40px;border-radius:28px}
.qbadge{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#16A34A14;outline:1px solid #16A34A33;outline-offset:-.5px}
.qbadge>svg{flex:none;width:22px;height:22px;color:var(--ok)}
.qbadge b{display:block;font-size:15px}.qbadge small{font-size:14px;color:var(--mut)}
.fsec h4{display:flex;align-items:center;gap:10px;margin:0;font:700 20px Manrope,sans-serif;letter-spacing:-.4px}
.fsec h4 small{font:700 13px "JetBrains Mono",monospace;color:var(--p)}
.fsec>p{margin-top:4px;font-size:14px;color:var(--mut)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:18px}
.fld{display:flex;flex-direction:column;gap:8px;min-width:0}
.fld.full,.consent{grid-column:1/-1}
.fld label,.fld .lb{font-size:14px;font-weight:600}
.fld em{font-style:normal;font-weight:400;color:var(--mut)}
.fld input,.fld textarea,.xsel-b{width:100%;padding:14px 16px;border:0;border-radius:12px;background:#fff;outline:1px solid var(--line);outline-offset:-.5px;font:400 16px Inter,sans-serif;color:var(--ink);transition:outline-color .2s}
.fld textarea{min-height:120px;resize:vertical}
.fld input:focus,.fld textarea:focus,.xsel-b:focus-visible,.xsel.open .xsel-b{outline:2px solid var(--p);outline-offset:-1px}
.fld .count{align-self:flex-end;font:500 12px "JetBrains Mono",monospace;color:var(--mut)}
.fld .msg,.consent .msg{display:none;font-size:13px;color:var(--pink)}
.fld.err .msg,.consent.err .msg{display:block}
.fld.err input,.fld.err textarea{outline:2px solid var(--pink);outline-offset:-1px}
.chipsel{display:flex;flex-wrap:wrap;gap:8px}
.chipsel button{padding:10px 16px;border:0;border-radius:999px;background:#fff;outline:1px solid var(--line);outline-offset:-.5px;font:500 14px Inter,sans-serif;color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.chipsel button:hover{outline-color:var(--p)}
.chipsel button.on{background:var(--p);color:#fff;outline-color:var(--p)}
.xsel{position:relative}.xsel select{display:none}
.xsel-b{text-align:left;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235B5880' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center}
.xsel-m{position:fixed;z-index:200;display:flex;flex-direction:column;padding:6px;border-radius:14px;background:#fff;box-shadow:0 16px 40px #15123A26;outline:1px solid var(--line);outline-offset:-.5px}
.xsel-m button{padding:10px 12px;border:0;border-radius:8px;background:none;text-align:left;font:500 15px Inter,sans-serif;color:var(--ink);cursor:pointer}
.xsel-m button:hover,.xsel-m button:focus{background:var(--bg);outline:0}.xsel-m button.on{color:var(--p);font-weight:700}
.consent label{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--mut);cursor:pointer}
.consent input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--p)}
.fend{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.fend small{flex:1;min-width:220px;font-size:14px;color:var(--mut)}.fend small a{color:var(--p);font-weight:600}
.send{display:inline-flex;align-items:center;gap:10px;padding:18px 28px;border:0;border-radius:12px;background:var(--p);color:#fff;font:600 16px Inter,sans-serif;cursor:pointer;box-shadow:0 16px 40px #15123A14;transition:background .25s,box-shadow .4s var(--ease)}
.send:hover{background:#7C3AED;box-shadow:0 18px 40px #8B5CF64D}
.send svg{width:18px;height:18px}.send:disabled{opacity:.7;cursor:wait}
.sentmsg{display:none;flex-direction:column;align-items:center;gap:10px;padding:40px 0;text-align:center}
.sentmsg .ok{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--ok);color:#fff;font-size:26px;font-weight:700}
.sentmsg h3{font-size:28px;letter-spacing:-1px}.sentmsg p,.failmsg p{color:var(--mut)}
.form.sent>:not(.sentmsg){display:none}.form.sent .sentmsg{display:flex}
.failmsg{padding:18px;border-radius:14px;background:#DB27770F;outline:1px solid #DB277740;outline-offset:-.5px}
.failmsg h3{font-size:18px;margin-bottom:4px}.failmsg a{color:var(--p);font-weight:600}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media (max-width:1024px){
  .cp-sec .sh h2,.flowsec .sh h2{font-size:40px}
  .cp-plans{grid-template-columns:1fr;max-width:520px;margin:0 auto;width:100%}
}
@media (max-width:640px){
  .cp-sec,.flowsec{padding:0 0 64px}.cp-sec .wrap,.flowsec .wrap{gap:32px}
  .cp-sec .sh h2,.flowsec .sh h2{font-size:36px;letter-spacing:-1.4px}
  .cp-ph,.cp-pb{padding:24px}
  .form{padding:24px 20px;gap:28px}
  .fgrid{grid-template-columns:1fr}
  .send{width:100%;justify-content:center}
  .qa button{padding:18px 20px;gap:12px;font-size:16px}
  .qa .a>div{padding:0 20px 0 49px}
}
