@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.10ev4cu2inrn-.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.0i6ci0u~g4zml.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.0x1a9yg0jkq20.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.0dyk20wuvya7a.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.0ctuso5mgh_i..woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.0kho-wj7-y-w1.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_b7d5735e-module__suUhcW__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_b7d5735e-module__suUhcW__variable{--font-manrope:"Manrope", "Manrope Fallback"}
@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.0hck6o0i8wq3a.woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.0gq7fw9.sy_5..woff2?dpl=dpl_7NszUFDTtp9vLRiE8WtusmeM7Gn3)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_d7ec9e93-module__PnqSJq__className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:normal;font-weight:400}.instrument_serif_d7ec9e93-module__PnqSJq__variable{--font-serif:"Instrument Serif", "Instrument Serif Fallback"}
:root{--background:#f7f1e6;--background-soft:#fffaf0;--panel:#ffffffc7;--panel-strong:#fffffff0;--text:#2e2a28;--muted:#70675e;--line:#2e2a2824;--gold:#c68b28;--gold-soft:#c68b2821;--green:#247a4d;--amber:#a06600;--red:#b24335;--shadow:0 24px 70px #3e2d1829}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);font-family:var(--font-manrope), Manrope, sans-serif;background:radial-gradient(circle at 12% 0,#c68b2838,#0000 34%),radial-gradient(circle at 85% 10%,#ffffffe6,#0000 32%),linear-gradient(135deg,#f7f1e6 0%,#fffaf0 52%,#eee2cf 100%);min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.hero-section,.checker-shell{max-width:1240px;margin:0 auto;padding:28px 24px}.topbar{justify-content:space-between;align-items:center;margin-bottom:72px;display:flex}.nav-actions{align-items:center;gap:14px;display:flex}.brand-mark,.nav-status,.eyebrow,.system-card-label{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;display:inline-flex}.brand-mark{color:var(--text);font-size:.86rem;font-weight:800}.brand-logo{width:112px;height:auto}.brand-logo-login{width:150px}.nav-status,.eyebrow,.system-card-label{color:var(--muted);font-size:.72rem;font-weight:800}.nav-status span,.pulse{background:var(--green);border-radius:999px;width:8px;height:8px;animation:2.4s ease-in-out infinite pulse-glow;display:inline-block}@keyframes pulse-glow{0%,to{transform:scale(1);box-shadow:0 0 12px #75d99a73}50%{transform:scale(1.12);box-shadow:0 0 24px #75d99ad9}}@keyframes rise-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer-line{0%{opacity:.35;transform:translate(-12%)}50%{opacity:1}to{opacity:.35;transform:translate(12%)}}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:center;gap:42px;padding-bottom:68px;display:grid}.hero-copy h1{font-family:var(--font-serif), "Instrument Serif", serif;letter-spacing:-.07em;max-width:830px;margin:18px 0 24px;font-size:clamp(3.4rem,8vw,7.3rem);font-weight:400;line-height:.88}.hero-copy p,.upload-panel p,.empty-state p{color:var(--muted);max-width:620px;margin:0;font-size:1.04rem;line-height:1.75}.hero-actions,.action-row{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.action-row-tight{margin-top:4px}.button-primary,.button-secondary{border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-size:.9rem;font-weight:800;transition:border-color .18s,transform .18s,background .18s;display:inline-flex}.button-primary{background:var(--gold);border:1px solid var(--gold);color:#171008}.button-secondary{border:1px solid var(--line);color:var(--text);background:#ffffff9e}.button-primary:hover,.button-secondary:hover{transform:translateY(-2px)}.button-secondary:hover{border-color:#d5a64b8c}.button-primary:disabled,.button-secondary:disabled{cursor:not-allowed;opacity:.48;transform:none}.button-danger{color:var(--red)}.button-danger:hover{border-color:#b2433559}.logout-button{border:1px solid var(--line);color:var(--text);background:#ffffff9e;border-radius:999px;min-height:34px;padding:0 13px;font-size:.78rem;font-weight:800}.logout-button:hover{border-color:#d5a64b8c}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(145deg,#fffffff2,#fffaf0bd),#ffffffd6;border-radius:34px;width:100%;max-width:520px;padding:32px;position:relative}.login-card:before{content:"";background:linear-gradient(90deg,#0000,#d5a64b59,#0000);height:1px;position:absolute;top:0;left:8%;right:8%}.login-copy{margin:54px 0 26px}.login-copy h1{font-family:var(--font-serif), "Instrument Serif", serif;letter-spacing:-.06em;margin:18px 0 16px;font-size:clamp(2.9rem,8vw,4.9rem);font-weight:400;line-height:.92}.login-copy p{color:var(--muted);margin:0;font-size:1rem;line-height:1.7}.login-form{gap:16px;display:grid}.login-form label{gap:8px;display:grid}.login-form label span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800}.login-form input{border:1px solid var(--line);color:var(--text);background:#ffffffc2;border-radius:18px;outline:none;width:100%;min-height:52px;padding:0 16px}.login-form input:focus{border-color:#d5a64bb3;box-shadow:0 0 0 3px #d5a64b1a}.hero-card,.checker-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(145deg,#fffffff2,#fffaf09e),#ffffffc7;border-radius:32px;transition:box-shadow .32s cubic-bezier(.22,1,.36,1),transform .32s cubic-bezier(.22,1,.36,1);animation:.7s cubic-bezier(.22,1,.36,1) both rise-in;position:relative;overflow:hidden}.checker-panel:hover{box-shadow:0 28px 80px #3e2d182e}.hero-card{padding:28px}.hero-card:before,.checker-panel:before{content:"";background:linear-gradient(90deg,#0000,#d5a64b59,#0000);height:1px;animation:4.5s ease-in-out infinite shimmer-line;position:absolute;top:0;left:8%;right:8%}.agent-stack{gap:12px;margin:24px 0;display:grid}.agent-stack div,.terminal-card,.metric,.record-card,.margin-strip,.guardrail-alert,.notice{border:1px solid var(--line);background:#ffffffad;border-radius:20px}.agent-stack div{padding:18px}.agent-stack span,.margin-strip span,.metric span,.record-kicker,.record-details dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:800;display:block}.agent-stack strong{color:var(--text);font-size:1.08rem}.terminal-card{color:var(--muted);padding:18px;font-family:Courier New,monospace;line-height:1.7}.terminal-card span{color:var(--amber)}.checker-shell{grid-template-columns:minmax(0,1fr);gap:22px;padding-bottom:80px;display:grid}.checker-panel{padding:28px}.upload-panel{animation-delay:40ms}.results-panel{animation-delay:.12s}.results-panel-active{animation:.65s cubic-bezier(.22,1,.36,1) both rise-in}.search-banner{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:28px;display:grid}.search-banner-intro h2,.search-banner-intro p{margin-bottom:0}.search-banner-intro p{margin-top:12px}.search-banner-controls,.search-form{gap:18px;display:grid}.search-fields-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.search-actions{margin-top:0}.upload-panel h2,.results-head h2,.empty-state h2{font-family:var(--font-serif), "Instrument Serif", serif;letter-spacing:-.05em;margin:16px 0;font-size:clamp(2.3rem,4vw,4rem);font-weight:400;line-height:.95}.dropzone{text-align:center;background:linear-gradient(135deg,#d5a64b24,#ffffff08),#ffffffb3;border:1px dashed #d5a64b8c;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:190px;margin-top:28px;padding:28px;transition:border-color .16s,transform .16s,background .16s;display:flex}.dropzone input{opacity:0;width:1px;height:1px;position:absolute}.dropzone span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;font-weight:800}.dropzone strong{font-size:1.35rem}.dropzone small{color:var(--muted);line-height:1.5}.dropzone-active{background:var(--gold-soft);border-color:var(--gold);transform:scale(1.01)}.notice{color:var(--red);margin-top:18px;padding:14px 16px}.notice-admin{color:var(--text)}.notice-error{color:var(--red);background:#b2433514;border-color:#b2433547}.postcode-field,.course-picker{gap:10px;margin-top:0;display:grid}.postcode-field span,.course-picker>span,.course-picker legend,.settings-heading span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800}.postcode-field input{border:1px solid var(--line);color:var(--text);text-transform:uppercase;background:#ffffffc2;border-radius:18px;outline:none;width:100%;min-height:56px;padding:0 16px;font-size:1.25rem}.postcode-field input:focus{border-color:#d5a64bb3;box-shadow:0 0 0 3px #d5a64b1a}.course-picker{border:0;grid-template-columns:1fr;min-width:0;margin:0;padding:0}.course-picker legend{float:left;width:100%;margin-bottom:10px}.course-picker-inline .course-options{flex-wrap:wrap;gap:10px;display:flex}.course-choice{border:1px solid var(--line);cursor:pointer;background:#ffffffad;border-radius:999px;align-items:center;gap:10px;padding:11px 16px;transition:background .22s cubic-bezier(.22,1,.36,1),border-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);display:flex}.course-choice:hover{border-color:#d5a64b73;transform:translateY(-2px);box-shadow:0 10px 24px #c68b281f}.course-choice:has(input:checked){background:var(--gold-soft);border-color:#d5a64ba6;box-shadow:0 12px 28px #c68b2829}.course-choice input{accent-color:var(--gold)}.manage-panel{border-top:1px solid var(--line);margin-top:26px;padding-top:18px}.manage-panel-animated{animation:.5s cubic-bezier(.22,1,.36,1) both rise-in}.settings-heading h3{margin:8px 0 4px;font-size:1.15rem}.settings-heading p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.6}.settings-heading-spaced{margin-top:20px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.location-editor,.results-stack,.centre-list{gap:14px;display:grid}.location-editor{margin-top:16px}.admin-card{border:1px solid var(--line);background:#ffffffad;border-radius:22px;gap:14px;margin-top:18px;padding:18px;display:grid}.location-card,.course-result-card,.centre-result{border:1px solid var(--line);background:#ffffffb8;border-radius:22px}.location-card,.course-result-card{padding:18px}.location-fields,.settings-grid,.price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.price-grid{margin-top:14px}.centre-result{justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.centre-result strong{display:block}.centre-result span{color:var(--muted);margin-top:4px;font-size:.9rem;display:block}.price-block{text-align:right}.price-block strong{color:var(--gold);font-size:1.35rem}.badge-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:6px;display:flex}.badge-row-left{justify-content:flex-start}.badge-row span{color:var(--green);letter-spacing:.08em;text-transform:uppercase;background:#75d99a24;border:1px solid #75d99a47;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:900}.badge-row .badge-warning{color:var(--red);background:#b243351a;border-color:#b2433540}.result-group{gap:14px;display:grid}.result-group-heading h3{margin:0 0 6px;font-size:1.1rem}.result-group-heading p,.fallback-note{color:var(--muted);margin:0;line-height:1.6}.fallback-note{color:var(--amber);background:#c68b281f;border:1px solid #c68b283d;border-radius:18px;padding:14px 16px}.combined-result-card{border:1px solid var(--line);background:#ffffffc2;border-radius:24px;padding:18px;transition:border-color .26s cubic-bezier(.22,1,.36,1),box-shadow .26s cubic-bezier(.22,1,.36,1),transform .26s cubic-bezier(.22,1,.36,1)}.result-card-animated{animation:.55s cubic-bezier(.22,1,.36,1) both rise-in}.combined-result-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px #3e2d181f}.result-over-budget{background:linear-gradient(135deg,#b2433521,#ffffffd6),#ffffffc2;border-color:#b2433570;box-shadow:0 18px 42px #b243351f}.result-over-budget .combined-total strong{color:var(--red)}.combined-result-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.combined-result-top h3{margin:0 0 6px}.combined-result-top p{color:var(--muted);margin:0}.combined-total{text-align:right;min-width:150px}.combined-total span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}.combined-total strong{color:var(--gold);font-size:1.45rem}.course-cost-list{border-top:1px solid var(--line);gap:10px;margin-top:16px;padding-top:14px;display:grid}.course-cost-row{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.course-cost-row span{font-weight:800}.course-cost-row strong{color:var(--text)}.course-cost-row small{color:var(--muted);grid-column:1/-1}.course-cost-row-over strong,.course-cost-row-over small{color:var(--red)}.quote-editor{gap:14px;margin-top:24px;display:grid}.quote-editor-head,.quote-form-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.quote-editor-head span,.quote-field span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.quote-editor-head strong{color:var(--gold);font-size:.85rem}.quote-form-card{border:1px solid var(--line);background:#ffffffb8;border-radius:22px;padding:16px}.quote-form-title{margin-bottom:14px}.quote-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quote-field{gap:7px;display:grid}.quote-field input{border:1px solid var(--line);color:var(--text);background:#ffffffc2;border-radius:14px;outline:none;width:100%;min-height:42px;padding:0 12px}.quote-field select{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--muted) 50%) calc(100% - 18px) 50% / 7px 7px no-repeat, linear-gradient(135deg, var(--muted) 50%, transparent 50%) calc(100% - 13px) 50% / 7px 7px no-repeat, #ffffffc2;border:1px solid var(--line);color:var(--text);border-radius:14px;outline:none;width:100%;min-height:42px;padding:0 36px 0 12px}.quote-field input:focus,.quote-field select:focus{border-color:#d5a64bb3;box-shadow:0 0 0 3px #d5a64b1a}.text-button{color:var(--red);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.text-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.45}.results-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0;display:grid}.metric{padding:16px}.metric strong{font-size:2rem}.metric-good strong{color:var(--green)}.metric-warn strong{color:var(--amber)}.metric-bad strong{color:var(--red)}.margin-strip{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;padding:18px;display:grid}.margin-strip strong{font-size:1.3rem}.guardrail-alert{color:var(--red);border-color:#ff7a6873;margin:12px 0;padding:16px}.guardrail-alert span{color:var(--text);margin-bottom:4px;font-weight:800;display:block}.record-list{gap:12px;margin-top:16px;display:grid}.record-card{padding:18px}.record-topline{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.record-topline h3{margin:0;font-size:1.1rem}.status-pill{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:900}.status-approved .status-pill{color:var(--green);background:#75d99a24}.status-review .status-pill{color:var(--amber);background:#ffca6924}.status-rejected .status-pill{color:var(--red);background:#ff7a6824}.record-details{grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0;display:grid}.record-details dd{margin:0}.record-reason{color:var(--muted);margin:0}.empty-state{flex-direction:column;justify-content:center;align-items:flex-start;min-height:540px;display:flex}.empty-state-compact{min-height:220px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:980px){.hero-grid,.search-banner{grid-template-columns:1fr}.metrics-grid,.location-fields,.settings-grid,.price-grid,.quote-form-grid,.record-details{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.hero-section,.checker-shell{padding-left:16px;padding-right:16px}.topbar,.nav-actions,.results-head,.record-topline{flex-direction:column;align-items:flex-start}.hero-copy h1{font-size:4rem}.search-fields-row,.metrics-grid,.margin-strip,.location-fields,.settings-grid,.price-grid,.quote-form-grid,.record-details{grid-template-columns:1fr}.centre-result{flex-direction:column;align-items:flex-start}.combined-result-top{flex-direction:column}.combined-total,.price-block{text-align:left}.badge-row{justify-content:flex-start}}
