.algyr-pricing{--ap-purple:#7130f0;--ap-ink:#050038;--ap-muted:#706c85;box-sizing:border-box;color:var(--ap-ink);background:radial-gradient(ellipse at 5% 0%,#eee4ff 0,transparent 44%),#f8f8fa;font-family:Inter,Arial,sans-serif;padding:72px 24px}
.algyr-pricing *{box-sizing:border-box}
.ap-wrap{max-width:1240px;margin:auto}
.ap-heading{text-align:center;margin-bottom:38px}
.ap-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid #e0d2fa;border-radius:30px;background:#f4edff;padding:8px 14px;color:#6024d0;font-size:13px;font-weight:600}
.ap-heading h2{font-size:clamp(28px,3.2vw,42px);line-height:1.15;letter-spacing:-1.3px;margin:18px 0 14px;font-weight:750}
.ap-heading h2 span{color:var(--ap-purple)}
.ap-heading p{color:var(--ap-muted);font-size:16px;line-height:1.6;margin:0}
.ap-description p+p{margin-top:10px}
.ap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-top:18px}
.ap-card{position:relative;display:flex;flex-direction:column;background:white;border:1px solid #ece9f2;border-radius:20px;padding:26px 22px 22px;box-shadow:0 8px 26px #1e0b4c05}
.ap-card--popular{border:2px solid var(--ap-purple);padding:25px 21px 21px;box-shadow:0 12px 32px #7130f014}
.ap-badge{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);border-radius:30px;background:var(--ap-purple);padding:7px 18px;color:white;font-size:12px;font-weight:700;white-space:nowrap}
.ap-card-head{display:flex;align-items:center;gap:12px;margin-bottom:23px}
.ap-icon{display:grid;place-items:center;width:42px;height:42px;background:#f3edff;border-radius:12px;color:var(--ap-purple);font-size:20px;font-weight:700}
.ap-card h3{font-size:25px;letter-spacing:-.6px;margin:0}
.ap-month-label{color:var(--ap-muted);font-size:12px;margin:0 0 10px}
.ap-month{font-size:28px;letter-spacing:-.9px;font-weight:750;white-space:nowrap;margin:0}
.ap-month small{font-size:13px;letter-spacing:0;font-weight:400;color:var(--ap-muted)}
.ap-divider{display:flex;align-items:center;gap:10px;font-size:12px;color:#77718b;margin:22px 0}
.ap-divider:before,.ap-divider:after{content:"";height:1px;flex:1;background:#ece8f3}
.ap-bundle{background:#f6f1ff;border-radius:14px;padding:17px 14px;margin-bottom:20px}
.ap-bundle-label{font-size:12px;color:#5b4a79;margin:0 0 10px}
.ap-total{font-size:25px;font-weight:750;letter-spacing:-.7px;margin:0 0 8px;white-space:nowrap}
.ap-total small{font-size:12px;font-weight:400;letter-spacing:0}
.ap-effective{font-size:13px;color:#665d7b;margin:0 0 14px;line-height:1.5}
.ap-effective strong{color:#6024d0}
.ap-saving{display:inline-block;background:#e9dcff;color:#5520b5;padding:7px 9px;border-radius:7px;font-size:12px;font-weight:650}
.ap-button{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #d8c7f7;border-radius:30px;color:#6024d0;text-decoration:none;padding:14px 17px;font-size:14px;font-weight:650;margin-top:auto;cursor:pointer;transition:background .15s,box-shadow .15s}
.ap-button:hover{background:#f4edff;box-shadow:0 3px 12px #7130f019}
.ap-button:focus-visible{outline:3px solid #050038;outline-offset:4px}
.ap-button{width:100%;font-family:inherit;text-align:left}
.ap-modal-open{overflow:hidden}
.ap-modal{box-sizing:border-box;width:calc(100% - 32px);max-width:500px;max-height:calc(100dvh - 32px);padding:34px;border:0;border-radius:24px;color:#050038;background:#fff;box-shadow:0 24px 90px #16073340;font-family:Inter,Arial,sans-serif;overflow-y:auto}
.ap-modal *{box-sizing:border-box}
.ap-modal::backdrop{background:#0b042b8c;backdrop-filter:blur(5px)}
.ap-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;border:0;border-radius:50%;width:34px;height:34px;font-size:26px;line-height:1;background:#f4f1f9;color:#706c85;cursor:pointer}
.ap-modal-tag{font-size:12px;font-weight:600;color:#7130f0}
.ap-modal h2{font-size:32px;letter-spacing:-1px;margin:10px 0}
.ap-modal-intro{font-size:14px;line-height:1.6;color:#706c85;margin:0 0 24px}
.ap-options{border:0;padding:0;margin:0;display:grid;gap:12px;min-width:0}
.ap-options legend{font-size:13px;font-weight:650;margin-bottom:12px}
.ap-option{display:flex;align-items:center;gap:12px;border:1px solid #e5dfef;border-radius:16px;padding:18px 15px;cursor:pointer;transition:background .15s,border-color .15s}
.ap-option:has(input:checked){background:#f7f2ff;border:2px solid #7130f0;padding:17px 14px}
.ap-option input{accent-color:#7130f0;width:18px;height:18px;margin:0;flex-shrink:0}
.ap-option-copy{display:grid;gap:7px;flex:1}
.ap-option-copy strong{font-size:16px;display:flex;align-items:center;gap:8px}
.ap-option-copy>span{font-size:12px;color:#706c85;line-height:1.4}
.ap-option-copy em{font-size:10px;font-style:normal;color:#6024d0;border-radius:5px;background:#eaddff;padding:4px 6px}
.ap-option-copy .ap-option-saving{color:#6024d0;font-weight:600}
.ap-option b{font-size:18px;white-space:nowrap;letter-spacing:-.4px}
.ap-checkout-summary{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ece8f2;margin:24px 0 20px;padding-top:20px;gap:10px}
.ap-checkout-summary>span{font-size:14px}
.ap-checkout-summary small{display:block;color:#706c85;font-size:12px;margin-top:6px}
.ap-checkout-summary>strong{font-size:28px;letter-spacing:-.8px;white-space:nowrap}
.ap-pay{display:flex;justify-content:center;gap:10px;align-items:center;width:100%;border:0;background:#7130f0;color:white;border-radius:30px;padding:17px 12px;font-size:15px;font-weight:650;cursor:pointer}
.ap-pay:hover{background:#5c20d0}
.ap-modal :focus-visible{outline:3px solid #5e20cb;outline-offset:4px}
.ap-modal-foot{font-size:11px;text-align:center;color:#706c85;line-height:1.5;margin:12px 0 0}
.ap-demo-status{font-size:12px;text-align:center;color:#6024d0;line-height:1.5;background:#f5efff;padding:12px;border-radius:10px;margin-bottom:0}
@media(max-width:560px){.ap-modal{padding:28px 20px;border-radius:20px}.ap-option{gap:9px;padding:16px 12px}.ap-option:has(input:checked){padding:15px 11px}.ap-option b{font-size:16px}.ap-option-copy>span{font-size:11px}.ap-checkout-summary>strong{font-size:25px}}
.ap-card--popular .ap-button{color:white;background:var(--ap-purple);border-color:var(--ap-purple)}
.ap-card--popular .ap-button:hover{background:#5c20d0}
.ap-note{text-align:center;color:var(--ap-muted);font-size:12px;line-height:1.7;margin:22px 0 0}
.ap-note p{margin:0}
.ap-note p+p{margin-top:8px}
.ap-included{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:32px;padding-top:26px;border-top:1px solid #e5e0ed;color:#5e5672;font-size:13px}
.ap-included span:before{content:'✓';color:var(--ap-purple);font-weight:700;margin-right:8px}
@media(max-width:1100px){.ap-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.ap-wrap{max-width:820px}.ap-heading h2{letter-spacing:-.8px}}
@media(max-width:560px){.algyr-pricing{padding:44px 16px}.ap-grid{grid-template-columns:1fr;gap:28px}.ap-card,.ap-card--popular{padding:24px}.ap-heading{margin-bottom:26px}.ap-heading p{font-size:14px}.ap-included{justify-content:flex-start;gap:16px}.ap-month{font-size:30px}.ap-total{font-size:27px}}
.ap-subjects{padding:0;margin:0 0 22px;border:0;min-width:0}.ap-subjects legend{font-size:13px;font-weight:650;width:100%;display:flex;justify-content:space-between}.ap-subjects legend span{color:#7130f0;background:#f1e8ff;padding:2px 8px;border-radius:12px}.ap-subject-help{font-size:11px;color:#706c85;margin:7px 0 12px}.ap-subject-label{display:block;margin:10px 0}.ap-subject-label>span{display:block;font-size:12px;margin-bottom:5px;color:#5f5476}.ap-subject-select{width:100%;max-width:100%;padding:12px;border:1px solid #ddd5e9;background:#faf8ff;color:#050038;border-radius:10px;font:13px Inter,Arial,sans-serif}.ap-subject-select[aria-invalid=true]{border-color:#b92b39}.ap-subject-error{color:#ad2440;background:#fff0f2;padding:10px;border-radius:8px;font-size:12px}.ap-subject-error[hidden]{display:none}.ap-modal{max-height:calc(100dvh - 24px)}
.ap-consult{display:flex;justify-content:center;align-items:center;gap:8px;border:1px solid #b8ddc6;border-radius:28px;background:#f0faf4;color:#217444;font:600 13px/1.4 Inter,Arial,sans-serif;padding:13px 16px;text-decoration:none;text-align:center;margin-top:16px}.ap-consult:hover{background:#e3f6ea}.ap-consult:focus-visible{outline:3px solid #217444;outline-offset:3px}.ap-consult-row{max-width:350px;margin:26px auto 0}

/* Overrides for main site global styles */
.algyr-pricing .ap-heading h2,
.algyr-pricing .ap-card h3,
.ap-modal h2 {
  font-family: Inter, Arial, sans-serif;
}

dialog.ap-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  max-height: calc(100dvh - 32px);
}

dialog.ap-modal[open] {
  display: block;
  z-index: 99;
}

dialog.ap-modal:not([open]) {
  display: none;
}
