.pmtm-widget{--pmtm-red:#ef161e;--pmtm-red-dark:#b90f16;--pmtm-navy:#030a11;--pmtm-panel:#071421;--pmtm-panel2:#0b1b29;--pmtm-line:rgba(255,255,255,.12);--pmtm-text:#f5f7f9;--pmtm-muted:#aeb9c3;position:relative;overflow:hidden;background:radial-gradient(circle at 85% 8%,rgba(26,84,146,.28),transparent 30%),linear-gradient(180deg,#050d15 0%,#02070c 100%);color:var(--pmtm-text);padding:72px clamp(20px,4vw,54px);border:1px solid rgba(255,255,255,.09);border-radius:28px;box-shadow:0 36px 90px -55px rgba(0,0,0,.9);font-family:Arial,Helvetica,sans-serif}.pmtm-widget:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(239,22,30,.06),transparent 24%,transparent 76%,rgba(33,104,178,.06));pointer-events:none}.pmtm-widget>*{position:relative;z-index:1}.pmtm-widget-head{max-width:900px;margin:0 auto 34px;text-align:center}.pmtm-eyebrow,.pmtm-stage-kicker{display:block;color:var(--pmtm-red);font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.pmtm-widget-head h2{margin:12px auto 18px;max-width:900px;color:#fff;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(42px,6vw,74px);font-weight:900;line-height:.98;text-transform:uppercase;letter-spacing:.01em}.pmtm-widget-head p{max-width:840px;margin:0 auto;color:var(--pmtm-muted);font-size:18px;line-height:1.7}.pmtm-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:1000px;margin:0 auto 22px}.pmtm-steps span{display:flex;align-items:center;gap:8px;padding:12px 10px;border-top:3px solid #243544;color:#6f7d89;font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.pmtm-steps b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#172734;color:#82909c;font-size:11px}.pmtm-steps span.active{border-color:var(--pmtm-red);color:#fff}.pmtm-steps span.active b{background:var(--pmtm-red);color:#fff}.pmtm-booking-panel{max-width:1080px;margin:0 auto;background:linear-gradient(145deg,rgba(12,28,41,.96),rgba(5,14,23,.98));border:1px solid var(--pmtm-line);border-radius:22px;box-shadow:0 30px 80px -50px #000;padding:clamp(24px,4vw,48px)}.pmtm-stage{animation:pmtmFade .28s ease}.pmtm-stage[hidden]{display:none!important}@keyframes pmtmFade{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.pmtm-stage h3{margin:7px 0 10px;color:#fff;font-size:clamp(28px,4vw,42px);line-height:1.05;font-weight:900}.pmtm-stage-copy{margin:0 0 24px;color:var(--pmtm-muted);font-size:16px;line-height:1.6}.pmtm-postcode-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;max-width:720px;margin:26px auto 0}.pmtm-widget input,.pmtm-widget textarea,.pmtm-widget select{box-sizing:border-box;width:100%;border:1px solid #314554;border-radius:11px;background:#081824;color:#fff;padding:14px 15px;font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}.pmtm-widget input:focus,.pmtm-widget textarea:focus,.pmtm-widget select:focus{border-color:var(--pmtm-red);box-shadow:0 0 0 3px rgba(239,22,30,.13)}.pmtm-widget input::placeholder,.pmtm-widget textarea::placeholder{color:#7f8d99}.pmtm-primary{display:inline-flex;align-items:center;justify-content:center;min-height:49px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--pmtm-red),#c81017);color:#fff!important;padding:13px 22px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 15px 32px -18px rgba(239,22,30,.85);cursor:pointer;transition:transform .18s,box-shadow .18s,opacity .18s}.pmtm-primary:hover{transform:translateY(-1px);box-shadow:0 18px 35px -17px rgba(239,22,30,.95)}.pmtm-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.pmtm-evening-callout{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:start;margin-top:28px;padding:18px 20px;border:1px solid rgba(255,255,255,.11);border-left:4px solid var(--pmtm-red);border-radius:12px;background:rgba(255,255,255,.035)}.pmtm-evening-callout strong{color:#fff}.pmtm-evening-callout span{color:#b8c2ca;line-height:1.55}.pmtm-evening-callout a,.pmtm-widget a{color:#fff;text-decoration:underline;text-underline-offset:3px}.pmtm-message{display:none;margin-top:14px;padding:12px 14px;border-radius:10px;font-weight:700;font-size:14px}.pmtm-message.show{display:block}.pmtm-message.info{background:#102338;color:#c8d9e7}.pmtm-message.success{background:#0f2a20;color:#b7f1d4;border:1px solid #1f5a43}.pmtm-message.error{background:#351419;color:#ffbec1;border:1px solid #6d2028}.pmtm-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.pmtm-package-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:280px;padding:24px;text-align:left;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));color:#fff;cursor:pointer;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s}.pmtm-package-card:hover:not(:disabled){transform:translateY(-4px);border-color:rgba(239,22,30,.8);background:rgba(239,22,30,.065);box-shadow:0 26px 50px -35px #000}.pmtm-package-card:disabled{opacity:.48;cursor:not-allowed}.pmtm-package-index{position:absolute;right:18px;top:15px;color:rgba(255,255,255,.12);font-size:46px;line-height:1;font-family:Impact,"Arial Black",sans-serif}.pmtm-package-card strong{position:relative;z-index:1;max-width:85%;font-size:21px;line-height:1.2}.pmtm-package-description{display:block;margin-top:13px;color:#aeb9c3;line-height:1.55}.pmtm-package-card em{margin-top:auto;padding-top:18px;color:#fff;font-size:16px;font-style:normal;font-weight:900}.pmtm-text-button{border:0;background:transparent!important;color:#c1ccd5!important;padding:8px 0!important;font:inherit;font-weight:800!important;cursor:pointer;text-decoration:none}.pmtm-text-button:hover{color:#fff!important}.pmtm-availability{display:grid;gap:16px;margin:20px 0 12px}.pmtm-date-card{padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(255,255,255,.03)}.pmtm-date-heading{margin-bottom:13px;color:#fff;font-weight:900;font-size:17px}.pmtm-slot-grid{display:flex;flex-wrap:wrap;gap:10px}.pmtm-slot{min-width:116px;border:1px solid #334a5c;border-radius:10px;background:#0b1c29;color:#fff;padding:10px 14px;cursor:pointer;transition:.18s;text-align:left}.pmtm-slot:hover:not(:disabled){border-color:var(--pmtm-red);background:#111f2b;transform:translateY(-1px)}.pmtm-slot:disabled{opacity:.55;cursor:not-allowed}.pmtm-slot strong,.pmtm-slot span{display:block}.pmtm-slot strong{font-size:16px}.pmtm-slot span{margin-top:3px;color:#8fa1af;font-size:11px}.pmtm-loading{display:flex;align-items:center;gap:11px;padding:25px 4px;color:#aeb9c3;font-weight:700}.pmtm-loading span{width:18px;height:18px;border:2px solid rgba(255,255,255,.15);border-top-color:var(--pmtm-red);border-radius:50%;animation:pmtmSpin .8s linear infinite}@keyframes pmtmSpin{to{transform:rotate(360deg)}}.pmtm-empty{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.035);color:#aeb9c3}.pmtm-empty strong{color:#fff}.pmtm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:22px}.pmtm-form-grid label{display:block;color:#dce4ea;font-size:13px;font-weight:900}.pmtm-form-grid label.wide{grid-column:1/-1}.pmtm-check{display:flex!important;align-items:flex-start;gap:11px;padding:13px 15px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.03)}.pmtm-check input{width:auto!important;margin:2px 0 0;padding:0;accent-color:var(--pmtm-red)}.pmtm-check span{font-weight:700;color:#c8d1d8;line-height:1.45}.pmtm-form-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}.pmtm-review-card{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1);border-radius:15px;overflow:hidden;margin:22px 0}.pmtm-review-card>div,.pmtm-success-grid>div{background:#071622;padding:16px 18px}.pmtm-review-card span,.pmtm-success-grid span{display:block;color:#8798a6;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.pmtm-review-card strong,.pmtm-success-grid strong{display:block;margin-top:5px;color:#fff;font-size:16px}.pmtm-po-note{display:flex;flex-direction:column;gap:4px;margin:16px 0;padding:15px 17px;border-left:4px solid var(--pmtm-red);border-radius:10px;background:rgba(239,22,30,.08)}.pmtm-po-note strong{color:#fff}.pmtm-po-note span{color:#c8d1d8;line-height:1.5}.pmtm-confirm-note{margin-top:17px;padding:15px 17px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.03);color:#9eacb7;line-height:1.55;font-size:13px}.pmtm-success-mark{display:grid;place-items:center;width:72px;height:72px;margin-bottom:20px;border-radius:50%;background:linear-gradient(135deg,#1f8d5b,#12623f);font-size:36px;font-weight:900;box-shadow:0 18px 38px -22px rgba(31,141,91,.8)}.pmtm-success-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1);border-radius:15px;overflow:hidden;margin:20px 0}.pmtm-public-status{display:flex;flex-direction:column;gap:5px;max-width:760px;margin:25px auto;padding:22px;border-left:4px solid var(--pmtm-red);border-radius:12px;background:rgba(255,255,255,.04);color:#c6d0d8}.pmtm-public-status strong{color:#fff;font-size:18px}.pmtm-admin-only{max-width:760px;margin:12px auto;color:#ffb8bc;font-size:13px}.pmtm-widget button,.pmtm-widget input,.pmtm-widget textarea{font-family:Arial,Helvetica,sans-serif}
@media(max-width:820px){.pmtm-widget{padding:54px 18px;border-radius:20px}.pmtm-steps{grid-template-columns:1fr 1fr}.pmtm-steps span:nth-child(5){grid-column:1/-1}.pmtm-package-grid,.pmtm-form-grid,.pmtm-review-card,.pmtm-success-grid{grid-template-columns:1fr}.pmtm-form-grid label.wide{grid-column:auto}.pmtm-evening-callout{grid-template-columns:1fr}.pmtm-postcode-line{grid-template-columns:1fr}.pmtm-form-actions{align-items:stretch;flex-direction:column-reverse}.pmtm-form-actions .pmtm-primary{width:100%}}


.pmtm-package-meta{
    display:grid;
    gap:5px;
    margin-top:18px;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.09);
}
.pmtm-package-capacity{
    color:#dce4ea;
    font-size:13px;
    line-height:1.4;
    font-weight:800;
}
.pmtm-package-per-student{
    color:#ef655f;
    font-size:12px;
    line-height:1.4;
    font-weight:900;
    letter-spacing:.01em;
}
.pmtm-payment-note{
    display:flex;
    align-items:center;
    gap:7px;
    margin:17px 0 3px;
    color:#8f9daa;
    font-size:13px;
    line-height:1.45;
}
.pmtm-payment-note:before{
    content:"";
    width:6px;
    height:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:var(--pmtm-red);
    box-shadow:0 0 0 4px rgba(239,22,30,.08);
}
.pmtm-payment-note span{color:#aeb9c3;}
.pmtm-payment-note strong{color:#fff;font-weight:800;}
