:root{--blue:#1645e8;--blue-dark:#1235b1;--ink:#17283f;--muted:#66758b;--orange:#ff914d;--cream:#fff9f1;--line:#dfe5ee;--pale:#edf2ff;--font:'DM Sans',Arial,sans-serif;--heading:'Bricolage Grotesque','DM Sans',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:#f7f8fc;color:var(--ink);font:17px/1.65 var(--font);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);line-height:1.15;letter-spacing:-.03em}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}[hidden]{display:none!important}.icon{height:22px;width:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.flow-container{width:calc(100% - 72px);max-width:1160px;margin-inline:auto}.flow-header{border-top:5px solid var(--blue);border-bottom:1px solid var(--line);background:#fff}.header-content{min-height:93px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{line-height:1}.brand-word{font:800 39px/1 var(--heading);letter-spacing:-2px;color:var(--blue)}.brand-word>span{color:var(--ink);font-weight:600;padding-left:3px}.brand-word>b{color:#c9561b}.back-link{display:inline-flex;align-items:center;gap:11px;color:var(--muted);font-size:16px;font-weight:600}.back-link:hover{color:var(--blue)}.back-link>span{font-size:25px}.page-intro{padding:48px 0 28px;max-width:820px}.eyebrow{font-size:12px;font-weight:800;color:var(--blue);letter-spacing:.13em;margin-bottom:16px}.page-intro h1{font-size:47px;line-height:1.12;margin-bottom:17px}.page-intro>p:last-child{font-size:18px;color:var(--muted);max-width:660px}.flow-steps{display:flex;gap:35px;padding:0 0 29px;margin:0 0 30px;list-style:none;border-bottom:1px solid var(--line);font-size:15px;color:#7f8b9d}.flow-steps li{display:flex;align-items:center;gap:11px}.flow-steps li>span{display:grid;place-items:center;height:31px;width:31px;border:1px solid #cfd8e7;border-radius:50%;font-weight:700;font-size:14px;background:#fff}.flow-steps li.current{color:var(--ink);font-weight:700}.flow-steps li.current>span{background:var(--blue);border-color:var(--blue);color:#fff}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:30px;align-items:start}.form-card,.summary-card,.status-card,.order-card,.lookup-card,.empty-card,.loading-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px}.form-card h2,.summary-card h2,.order-card h2{font-size:27px;margin-bottom:9px}.section-help{font-size:15px;color:var(--muted);line-height:1.6;margin-bottom:25px}.form-section+.form-section{border-top:1px solid var(--line);padding-top:28px;margin-top:29px}.form-section h3{font-size:23px;margin-bottom:18px}.fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-full{grid-column:1/-1}.field{min-width:0}.field>label{display:block;font-size:15px;font-weight:700;margin-bottom:8px}.field input,.lookup-card input{height:51px;width:100%;border:1px solid #cdd6e4;border-radius:9px;background:#fff;color:var(--ink);padding:12px 14px;font-size:17px;min-width:0}.field input:focus,.lookup-card input:focus{border-color:var(--blue)}.field input:disabled{background:#f5f7fa;color:#8490a0}.field-help{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.5}.payment-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.payment-option{border:1px solid var(--line);border-radius:10px;padding:17px 12px;display:flex;align-items:center;flex-direction:column;gap:8px;text-align:center;cursor:pointer;font-size:15px;font-weight:700;position:relative;background:#fff;min-width:0}.payment-option input{width:18px;height:18px;margin:0;accent-color:var(--blue)}.payment-option:has(input:checked){border:2px solid var(--blue);padding:16px 11px;background:var(--pale);color:var(--blue)}.payment-option:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:3px}.payment-option .icon{height:25px;width:25px}.payment-help{font-size:14px;color:var(--muted);line-height:1.65;margin-top:15px}.consent-row{display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.6;margin-top:24px;cursor:pointer}.consent-row input{accent-color:var(--blue);height:19px;width:19px;flex:none;margin:3px 0 0}.privacy-details{font-size:14px;color:var(--muted);margin-top:15px}.privacy-details summary{color:var(--blue);cursor:pointer;font-weight:600}.privacy-details p{margin-top:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 21px;min-height:51px;border:1px solid transparent;border-radius:10px;font-size:16px;font-weight:700;line-height:1.4;text-align:center;transition:background .2s,transform .2s}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue-dark);transform:translateY(-1px)}.btn-secondary{background:var(--pale);color:var(--blue)}.btn-outline{border-color:#cdd6e4;background:#fff;color:var(--ink)}.btn:disabled{opacity:.52;cursor:not-allowed}.btn-full{width:100%;margin-top:26px}.submit-note{font-size:13px;color:var(--muted);text-align:center;margin-top:12px}.summary-card{position:sticky;top:25px;padding:29px}.summary-list{list-style:none;margin:23px 0 0;padding:0}.summary-item{display:grid;grid-template-columns:63px minmax(0,1fr);gap:15px;border-bottom:1px solid var(--line);padding:21px 0}.summary-item:first-child{padding-top:0}.summary-item img{height:73px;width:63px;object-fit:cover;border-radius:9px}.summary-item h3{font-size:17px;line-height:1.4;letter-spacing:-.015em}.summary-item p{font-size:13px;color:var(--muted);margin-top:4px}.summary-item-price{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:7px;flex-wrap:wrap}.summary-item-price strong{font-size:18px;color:var(--blue)}.remove-course{background:none;border:0;padding:4px 0;font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.summary-total{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 0 16px;font-size:16px;font-weight:600}.summary-total strong{font:700 33px/1 var(--heading);letter-spacing:-1px;color:var(--blue)}.summary-caption{font-size:14px;color:var(--muted);line-height:1.6}.trust-note{display:flex;gap:11px;margin-top:25px;padding-top:21px;border-top:1px solid var(--line);font-size:14px;color:var(--muted);line-height:1.6}.trust-note .icon{color:var(--blue);margin-top:3px}.help-panel{border-radius:12px;background:var(--cream);padding:19px 22px;font-size:15px;line-height:1.6;margin-top:20px}.help-panel a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}.notice{border:1px solid #f0cdac;background:#fff6e9;color:#795124;border-radius:12px;padding:20px 23px;margin-bottom:25px;font-size:16px;line-height:1.65}.notice strong{display:block;font-size:18px;color:#573818;margin-bottom:6px}.notice a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.notice.info{background:var(--pale);border-color:#cfdbff;color:#355095}.notice.info strong{color:#23407f}.error-message{background:#fff0ee;border:1px solid #f1c0b9;color:#a23123;padding:14px 17px;border-radius:9px;font-size:15px;margin-top:20px;line-height:1.6}.flow-footer{margin-top:65px;border-top:1px solid var(--line);padding:26px 0;background:#fff;color:var(--muted);font-size:14px}.flow-footer>.flow-container{display:flex;align-items:center;gap:27px;justify-content:space-between}.flow-footer p{flex:1}.flow-footer strong{color:var(--ink)}.flow-footer a:hover{color:var(--blue)}.loading-card{display:flex;align-items:center;justify-content:center;gap:16px;min-height:180px;color:var(--muted)}.spinner{display:inline-block;height:25px;width:25px;border:3px solid #cdd9fb;border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite}.empty-card{text-align:center;padding:55px 30px}.empty-card .empty-symbol{font-size:45px;color:var(--blue);margin-bottom:20px}.empty-card h2{font-size:31px;margin-bottom:15px}.empty-card p{max-width:550px;margin:0 auto 24px;color:var(--muted)}.enrollment-container{max-width:1000px}.status-card{padding:31px;border-color:#cfdaef;background:linear-gradient(115deg,#edf2ff,#fff);margin-bottom:25px}.status-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#35539d;background:#dfe8ff;border-radius:25px;padding:7px 12px}.status-pill::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}.status-card.success{background:#f1f9ef;border-color:#c5dfbd}.status-card.success .status-pill{background:#dcefd7;color:#3b7132}.status-card.warning{background:#fff8ed;border-color:#e8d5b6}.status-card.warning .status-pill{background:#ffedce;color:#856019}.status-card.danger{background:#fff4f1;border-color:#edcfc8}.status-card.danger .status-pill{background:#f7ded7;color:#9b4030}.order-code{font-size:14px;color:var(--muted);font-weight:600;overflow-wrap:anywhere}.status-card h2{font-size:33px;line-height:1.2;margin:23px 0 13px}.status-card>p{color:#586b86;font-size:17px;max-width:750px}.status-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:25px}.status-actions .btn{font-size:15px}.status-footnote{font-size:14px!important;margin-top:17px}.order-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:25px;align-items:start}.order-card h2{font-size:24px;margin-bottom:22px}.order-items{list-style:none;margin:0;padding:0}.order-item{border-bottom:1px solid var(--line);padding:17px 0}.order-item:first-child{padding-top:0}.order-item:last-child{border-bottom:0}.order-item h3{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.order-item-line{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-top:10px;flex-wrap:wrap}.enrollment-badge{display:inline-block;font-size:12px;font-weight:700;border-radius:6px;padding:5px 8px;background:#f0f3f7;color:#65748a}.enrollment-badge.confirmed{background:#e5f3df;color:#3b7132}.enrollment-badge.suspended,.enrollment-badge.cancelled{background:#f8e7e2;color:#934a3b}.enrollment-code{font-size:13px;color:var(--muted);margin-top:7px;overflow-wrap:anywhere}.order-item-line strong{font-size:18px}.order-data{margin:0}.order-data>div{padding:12px 0;border-bottom:1px solid var(--line)}.order-data>div:first-child{padding-top:0}.order-data>div:last-child{border-bottom:0}.order-data dt{font-size:13px;color:var(--muted);margin-bottom:4px}.order-data dd{margin:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}.order-data .large-price{font:700 32px var(--heading);color:var(--blue)}.record-actions{display:flex;gap:11px;flex-wrap:wrap;margin:24px 0 0}.record-actions .btn{font-size:14px}.lookup-card{max-width:740px;margin:auto;padding:38px}.lookup-card h2{font-size:28px;margin-bottom:16px}.lookup-card>p{color:var(--muted);margin-bottom:24px}.lookup-card label{font-size:15px;font-weight:700;display:block;margin-bottom:9px}.lookup-card .btn{margin-top:18px}.lookup-help{font-size:14px;color:var(--muted);margin-top:18px;line-height:1.6}.lookup-help a{color:var(--blue);text-decoration:underline}.toast{position:fixed;z-index:100;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:15px 22px;border-radius:12px;box-shadow:0 10px 40px #17283f25;font-size:15px;width:max-content;max-width:calc(100% - 36px)}.skip-link{position:fixed;top:10px;left:10px;background:#fff;padding:10px 18px;border-radius:8px;transform:translateY(-200%);z-index:101}.skip-link:focus{transform:none}fieldset{border:0;padding:0;margin:0;min-width:0}.screen-reader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.print-only{display:none}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:950px){.flow-container{width:calc(100% - 44px)}.checkout-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:22px}.form-card,.summary-card{padding:24px}.fields-grid{grid-template-columns:1fr;gap:19px}.payment-options{gap:8px}.payment-option{padding:15px 8px;font-size:14px}.payment-option:has(input:checked){padding:14px 7px}.page-intro h1{font-size:41px}.summary-item{grid-template-columns:52px minmax(0,1fr);gap:12px}.summary-item img{width:52px;height:65px}.summary-total{flex-wrap:wrap}.order-grid{grid-template-columns:1fr 1fr;gap:20px}.order-card{padding:26px}.flow-steps{gap:20px;font-size:14px}}
@media(max-width:740px){.flow-container{width:calc(100% - 36px)}.header-content{min-height:78px;gap:15px}.brand-word{font-size:33px}.back-link{font-size:14px;gap:7px}.page-intro{padding:33px 0 25px}.page-intro h1{font-size:35px;max-width:500px;line-height:1.15}.page-intro>p:last-child{font-size:17px}.eyebrow{font-size:11px;margin-bottom:13px}.flow-steps{gap:16px;margin-bottom:25px;padding-bottom:22px;justify-content:space-between}.flow-steps li{font-size:12px;flex-direction:column;align-items:flex-start;gap:7px;line-height:1.45;flex:1}.flow-steps li>span{height:28px;width:28px;font-size:13px}.checkout-layout{display:flex;flex-direction:column;gap:23px}.summary-column{order:-1;width:100%}.summary-card{position:static;padding:24px}.summary-card h2{font-size:24px}.summary-list{margin-top:20px}.summary-item{grid-template-columns:58px minmax(0,1fr);gap:14px;padding:17px 0}.summary-item img{width:58px;height:68px}.summary-item h3{font-size:17px}.summary-item-price strong{font-size:19px}.summary-total{padding:21px 0 13px}.summary-total strong{font-size:31px}.summary-column .trust-note{display:none}.help-panel{font-size:15px;padding:17px 20px}.form-card{width:100%;padding:25px 22px}.form-card h2{font-size:27px}.field input{font-size:17px;min-height:52px}.field>label{font-size:16px}.section-help{font-size:16px}.form-section h3{font-size:25px}.payment-options{gap:9px}.payment-option{font-size:15px;padding:17px 8px}.payment-option:has(input:checked){padding:16px 7px}.consent-row{font-size:15px}.privacy-details{font-size:15px}.btn{font-size:16px;padding:13px 17px}.notice{font-size:16px;padding:20px;margin-bottom:23px}.notice strong{font-size:19px}.flow-footer{margin-top:42px;padding:24px 0}.flow-footer>.flow-container{flex-wrap:wrap;gap:17px 23px;font-size:14px}.flow-footer p{flex-basis:100%;font-size:15px}.status-card{padding:26px 23px}.status-card h2{font-size:29px}.status-card>p{font-size:17px}.status-actions{gap:11px}.status-actions .btn{width:100%;font-size:16px}.order-grid{grid-template-columns:1fr;gap:22px}.order-card{padding:26px 23px}.order-item h3{font-size:19px}.order-data dd{font-size:17px}.order-data dt{font-size:14px}.order-code{font-size:14px}.record-actions .btn{width:100%;font-size:15px}.lookup-card{padding:28px 23px}.lookup-card h2{font-size:27px}.lookup-card input{font-size:16px}.lookup-card .btn{width:100%}.empty-card{padding:38px 23px}.empty-card h2{font-size:29px}}
@media(max-width:370px){.flow-container{width:calc(100% - 28px)}.brand-word{font-size:30px}.back-link{font-size:12px}.page-intro h1{font-size:32px}.form-card{padding:23px 18px}.payment-options{grid-template-columns:1fr}.payment-option{flex-direction:row;justify-content:flex-start;padding:14px 16px;gap:14px}.payment-option:has(input:checked){padding:13px 15px}.payment-option input{margin-left:auto;order:3}.flow-steps{gap:9px}.flow-steps li{font-size:11px}.summary-total strong{font-size:29px}.status-card{padding:24px 20px}.status-card h2{font-size:27px}}
@media print{body{background:#fff;color:#000;font-size:12pt}.flow-header{border-top:0}.header-content{min-height:70px}.flow-container{width:100%;max-width:none}.page-intro{padding:20px 0}.page-intro h1{font-size:25pt}.page-intro>p:last-child{font-size:12pt}.back-link,.flow-footer,.status-actions,.record-actions,.toast,.help-panel,.status-footnote,.no-print{display:none!important}.status-card,.order-card{background:#fff!important;color:#000!important;border:1px solid #bbb;box-shadow:none;break-inside:avoid}.status-card{padding:20px}.status-card h2{font-size:22pt}.status-card>p{font-size:12pt}.status-pill{background:#eee!important;color:#000!important}.order-grid{grid-template-columns:1.2fr 1fr}.order-card{padding:20px}.order-item h3,.order-data dd{font-size:12pt}.order-item-line strong{font-size:12pt}.order-data dt{font-size:10pt}.order-code{font-size:11pt}.print-only{display:block;margin-top:18px;font-size:10pt;color:#555}.skip-link{display:none}.enrollment-badge{color:#000!important;background:#eee!important}.brand-word{font-size:30pt}.order-data .large-price{font-size:22pt}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Discounts are visible before creating the payment request. */
.summary-price-values{display:flex;align-items:baseline;gap:7px 10px;flex-wrap:wrap}
.summary-price-values del{font-size:14px;color:#68778b;font-weight:400}
.summary-item .summary-item-savings{color:#286142;font-size:14px;font-weight:600;line-height:1.55;margin-top:8px}
.summary-discounts{display:grid;gap:10px;margin-top:22px;font-size:14px;color:#66758b}
.summary-discounts>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}
.summary-discounts .summary-economy{color:#286142;font-weight:600}
.summary-discounts+.summary-total{padding-top:18px}
@media(max-width:740px){.summary-discounts{font-size:15px}.summary-item .summary-item-savings{font-size:14px}}
