:root{font-family:Figtree,Arial,sans-serif;color:#080808;background:#fbfffe;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100svh;background:radial-gradient(ellipse at 65% 12%,#cbb6ff80,transparent 51%),radial-gradient(ellipse at 20% 90%,#a2f5de80,transparent 52%),#fcfffe;border-bottom:0}.page{max-width:1240px;margin:auto;padding:32px 48px 18px;min-height:100svh;display:flex;flex-direction:column;position:relative}header{display:flex;justify-content:space-between;align-items:center}header img{width:150px;height:auto}.dates{display:flex;gap:38px;padding-left:14px}.dates span,.dates strong{display:block;font-size:13px}.dates strong{font-size:15px;margin-top:3px}main{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:center;flex:1;padding:30px 0}h1,h2,p{margin:0}h1{font-size:clamp(42px,4.2vw,60px);font-weight:500;line-height:1.04;letter-spacing:-.05em;margin:14px 0 30px}h1 span{display:block;font-size:.68em;letter-spacing:-.05em;margin-top:8px}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.1em;margin-top:0;color:#514b63}.features{display:grid;gap:16px;padding:0}.features h2{font-size:18px;line-height:1.3;letter-spacing:-.02em}h2{font-size:25px;font-weight:600;line-height:1;letter-spacing:-.035em}ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}li{font-size:16px;line-height:1.4;position:relative;padding-left:26px}li:before{content:"✓";position:absolute;left:0;top:0;color:#3211ff;font-weight:600}li strong{font-weight:600}.coverage{font-size:13px;line-height:1.5;color:#46434a;margin-top:22px;max-width:470px}.enrol,.receipt{background:#ffffffed;border:1px solid #dedbe7;border-radius:16px;box-shadow:0 12px 40px #34264d0a;overflow:hidden}.price-panel{background:#101014;color:white;padding:24px;display:grid;gap:10px;border-radius:0}.price-panel>div{display:flex;justify-content:space-between;align-items:center;gap:20px}.price-panel #plan-name{font-weight:500;line-height:1.4;max-width:55%}.price-panel p{font-size:16px}.price{font-size:36px;font-weight:500;letter-spacing:-.045em;line-height:1.2;margin:0;white-space:nowrap}.price-panel>p{width:100%;font-size:13px;color:#d3d3d3}form{padding:24px}form h2{font-size:25px}.form-note{font-size:14px;color:#555;margin:7px 0 18px}label{font-size:14px;display:block;margin:12px 0 6px}input{font:inherit;font-size:16px;border:1px solid #ceccd5;background:#fff;border-radius:8px;width:100%;padding:12px 13px;color:#080808}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #6545ff;outline-offset:3px}input::placeholder{color:#777}button{font:inherit;font-weight:500;font-size:16px;padding:15px 17px;background:#3110ff;border:0;border-radius:8px;color:#fff;width:100%;cursor:pointer;text-align:left;display:flex;justify-content:space-between;gap:8px}button:hover{background:#2500cf}button:disabled{cursor:wait;opacity:.65}.secure{text-align:center;font-size:12px;color:#59565e;margin-top:13px}#message{font-size:13px;color:#912337;line-height:1.3;margin:12px 0}#message:empty{margin:16px 0 0}footer{display:flex;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.04em;padding-top:12px;color:#4b4753}footer span:first-child{font-weight:600}#success h1{font-size:64px}#success-note{font-size:18px;line-height:1.5;max-width:430px}.receipt dl{padding:24px;margin:0}.receipt dt{font-size:13px;color:#666;margin:12px 0 5px}.receipt dd{margin:0;font-size:17px;overflow-wrap:anywhere}.receipt>p,.receipt>button,.home-link{margin:24px}.receipt>button{width:calc(100% - 48px)}.home-link{display:block;color:#3211ff;font-size:15px;text-decoration:none}#receipt-message{font-size:15px;line-height:1.5}[hidden]{display:none!important}
@media(min-width:761px) and (max-height:780px){.page{padding-top:20px}main{padding:18px 0}h1{font-size:49px;margin-bottom:17px}.eyebrow{margin-top:10px}.price-panel{padding:17px 24px}form{padding:18px 24px 14px}input{padding:10px 12px}.form-note{margin-bottom:10px}.features{padding:0}ul{gap:10px}.coverage{margin-top:14px}}
@media(max-width:760px){.page{padding:18px 20px 12px}header img{width:112px}.dates{gap:15px;padding-left:9px}.dates span{font-size:12px}.dates strong{font-size:12px}main{grid-template-columns:1fr;gap:18px;padding:19px 0 10px;align-content:center}h1{font-size:34px;margin:7px 0 12px;line-height:1;letter-spacing:-.05em}h1 br{display:none}h1 br:after{content:' '}h1 span{font-size:.7em;display:inline;margin:0}.eyebrow{font-size:12px;margin:0 0 7px}.features{padding:0;gap:0}.features h2,.coverage{display:none}ul{list-style:none;padding:0;display:flex;gap:5px 13px;flex-wrap:wrap}li{font-size:13px;padding:0 0 0 19px;line-height:1.4}.price-panel{padding:14px 18px;align-items:center}.price-panel>div{gap:16px}.price-panel p{font-size:15px}.price{font-size:32px;margin:0}.price-panel>p{font-size:12px}form{padding:18px}form h2{font-size:21px}.form-note{display:none}label{margin:9px 0 4px;font-size:13px}input{padding:10px 12px}button{padding:13px 15px}#message:empty{margin-top:13px}.secure{margin-top:10px}footer{font-size:10px}footer span:nth-child(2){display:none}#success h1{font-size:46px}#success-note{font-size:16px}}
@media(max-width:760px) and (max-height:740px){.page{padding-top:12px}main{padding-top:12px;gap:12px}h1{font-size:29px;margin-bottom:8px}.price-panel{padding:10px 16px}form{padding:12px 16px 10px}input{padding:8px 10px}label{margin-top:7px}footer{padding-top:6px}}
@media print{button,.home-link,footer{display:none}body{background:white}.page{min-height:0}}


/* Offering context and a deliberately compact mobile checkout. */
h1>.desktop-title{font-size:inherit;letter-spacing:inherit;margin:0}
.mobile-title{display:none}
.desktop-title small,.mobile-title small{display:block;font-size:.24em;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:#514b63;margin-bottom:14px}
.desktop-title em,.mobile-title em{display:block;font-size:.52em;font-style:normal;letter-spacing:-.03em;margin-top:8px}
.desktop-title strong,.mobile-title strong{display:block;font-size:1em;font-weight:500;line-height:1.04}
.desktop-title em,.mobile-title em{color:#514b63}
.offering-description{font-size:16px;line-height:1.55;color:#514b60;max-width:490px;margin:-12px 0 24px}
@media(max-width:760px){
 .page{width:100%;max-width:560px;padding:20px 20px 12px}
 header{gap:18px;align-items:center}
 header img{width:110px;display:block}
 .dates{gap:14px;padding:0}.dates span{font-size:12px}.dates strong{font-size:12px;white-space:nowrap}
 main{flex:1;align-content:start;gap:20px;padding:24px 0 12px;min-width:0}
 .intro{min-width:0}
 .desktop-title{display:none!important}.mobile-title{display:inline}.mobile-title br{display:block}
 h1{margin:8px 0 12px;font-size:32px;line-height:1.1;letter-spacing:-.04em}
 h1>.mobile-title{font-size:inherit;font-weight:600;letter-spacing:inherit}
 .eyebrow{font-size:11px;letter-spacing:.055em;margin:0}
 .offering-description{font-size:14px;line-height:1.45;margin:0 0 14px;max-width:none}
 ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px}
 li{font-size:13px;line-height:1.35;padding-left:18px}
 .enrol,.receipt{border-radius:14px;min-width:0}
 .price-panel{padding:16px 18px;gap:6px}
 .price-panel #plan-name{font-size:14px;max-width:58%}
 .price{font-size:30px}.price-panel>p{font-size:12px}
 form{padding:16px 18px}
 form h2{font-size:20px;margin-bottom:12px}
 label{font-size:13px;margin:10px 0 5px}
 input{padding:11px 12px;min-height:44px;font-size:16px}
 button{min-height:46px;padding:13px 15px;text-align:center;justify-content:center}
 .secure{margin-top:11px}
 footer{font-size:10px;padding-top:8px}
 .receipt dl{padding:18px}.receipt>p,.receipt>button,.home-link{margin:18px}.receipt>button{width:calc(100% - 36px)}
}
@media(max-width:380px){.page{padding-left:16px;padding-right:16px}.dates{gap:9px}header img{width:96px}h1{font-size:29px}.eyebrow{font-size:10px}.price-panel>div{gap:10px}}
@media(max-width:760px) and (max-height:740px){
 .page{padding-top:12px}main{padding-top:16px;gap:14px}
 h1{font-size:28px;margin:7px 0 9px}.offering-description{font-size:13px;margin-bottom:10px}
 ul{gap:6px 12px}li{font-size:12px}.price-panel{padding:12px 16px}
 form{padding:12px 16px}form h2{margin-bottom:8px}label{margin-top:7px}input{padding:8px 10px}
}

.form-heading{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}
.form-heading h2{margin:0}
.seat-notice{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:5px 8px;border:1px solid #e8d8b5;border-radius:6px;background:#fff8e9;color:#79561b;font-size:12px;font-weight:500;line-height:1.3;white-space:nowrap}
.seat-notice>span{width:5px;height:5px;border-radius:50%;background:#ad7a25}
@media(max-width:760px){.form-heading{margin-bottom:10px}.seat-notice{padding:4px 7px}}

/* Availability emphasis; decorative motion does not imply live inventory. */
.seat-notice{gap:8px;padding:6px 9px;border-color:#f0bd9c;background:#fff0e5;color:#a13c14;font-weight:600}
.seat-notice>span{width:6px;height:6px;background:#d05a28;box-shadow:0 0 0 3px #d05a2814;animation:seat-pulse 2.4s ease-out infinite}
@keyframes seat-pulse{0%,100%{box-shadow:0 0 0 2px #d05a2820}60%{box-shadow:0 0 0 6px #d05a2800}}
@media(prefers-reduced-motion:reduce){.seat-notice>span{animation:none}}
@media(max-width:380px){#pay{font-size:14px}}

/* A calm welcome after verified payment. */
#success.is-confirmed{gap:7%;grid-template-columns:1.2fr 1fr}
.paid-badge{display:inline-flex;align-items:center;gap:9px;color:#246451;font-size:14px;font-weight:600;margin-bottom:26px}
.paid-badge>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dcf6e9;border:1px solid #b6dfca;font-size:17px}
#success.is-confirmed h1{font-size:clamp(36px,4vw,54px);line-height:1.07;letter-spacing:-.045em;margin:14px 0 20px}
#success.is-confirmed #success-note{font-size:17px;color:#514b60}
.access-notice{margin-top:28px;padding:22px 24px;background:#ffffffa8;border:1px solid #d9e5df;border-radius:12px}
.access-notice h2{font-size:23px;line-height:1.3;letter-spacing:-.025em}
.access-notice p{font-size:14px;line-height:1.5;margin-top:10px;color:#585963}
.is-confirmed .receipt dl{display:grid;grid-template-columns:1fr;gap:5px;padding-top:12px}
.is-confirmed .receipt dt{margin-top:14px}
.is-confirmed #receipt-message{font-size:13px;color:#246451;padding-top:16px;border-top:1px solid #e5e7e9}
#back-to-plan{display:block;text-align:center;padding:13px 12px;border:1px solid #d7d2e6;border-radius:8px;font-weight:500;color:#332359;background:#faf9fd}
#back-to-plan:hover{background:#f0ecfa}
header>a{flex-shrink:0}
header img{display:block;width:160px;height:auto}
@media(max-width:760px){header img{width:128px}}
@media(max-width:380px){header img{width:112px}}
@media(max-width:760px){#success.is-confirmed{grid-template-columns:1fr;gap:22px}.paid-badge{margin-bottom:16px}#success.is-confirmed h1{font-size:36px;margin-bottom:14px}#success.is-confirmed #success-note{font-size:15px}.access-notice{margin-top:18px;padding:17px 18px}.access-notice h2{font-size:21px}.access-notice p{font-size:13px}}
