:root{--ink:#1e2732;--muted:#6b7785;--line:#dfe5e8;--paper:#f7f8f6;--white:#fff;--teal:#087f75;--yellow:#f4c95d;--shadow:0 18px 50px rgba(30,39,50,.08)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:76px;display:flex;align-items:center;gap:34px;padding:0 max(24px,calc((100% - 1180px)/2));background:var(--white);border-bottom:1px solid var(--line)}.brand{font-size:24px;font-weight:800;letter-spacing:-1px;margin-right:auto}.brand span{color:var(--teal)}nav{display:flex;gap:28px;color:var(--muted);font-size:14px}button{font:inherit;cursor:pointer;border:0;border-radius:8px}.ghost,.secondary{background:transparent;border:1px solid var(--line);padding:10px 16px;color:var(--ink)}.primary{background:var(--teal);color:white;padding:14px 18px;font-weight:700}.secondary:hover,.ghost:hover{border-color:var(--teal);color:var(--teal)}main{max-width:1180px;margin:auto}.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:70px;padding:86px 24px 72px;align-items:center}.eyebrow{color:var(--teal);font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.hero h1{font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-3px;margin:16px 0 24px}.hero-copy>p:last-child{color:var(--muted);font-size:18px;max-width:470px}.search-card{background:var(--white);padding:28px;border-radius:16px;box-shadow:var(--shadow)}label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:17px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:7px;padding:12px;color:var(--ink);font:inherit;background:#fff}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-grid label{margin-bottom:14px}.search-card .primary{width:100%;margin-top:3px}.form-note{color:var(--muted);font-size:11px;margin:12px 0 0}.results-section{padding:20px 24px 90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.section-heading h2,.steps h2,.review-panel h2{font-size:34px;letter-spacing:-1.5px;line-height:1.1;margin:8px 0}.status{font-size:13px;color:var(--muted)}.results{display:grid;gap:12px}.supplier-card{display:grid;grid-template-columns:48px 1fr auto;gap:20px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px}.supplier-card.is-match{border-left:4px solid var(--teal)}.rank{font-weight:800;color:#a7b0b7}.supplier-title{display:flex;justify-content:space-between;gap:14px}.supplier-title h3{margin:0;font-size:19px}.supplier-title p{margin:2px 0;color:var(--muted);font-size:13px}.match{font-size:12px;border-radius:30px;padding:5px 9px;height:max-content}.match.good{background:#e0f4eb;color:#13714f}.match.partial{background:#fff2d3;color:#936b00}.facts{display:flex;gap:15px;color:var(--muted);font-size:12px;margin-top:14px}.missing{color:#a46900;font-size:12px;margin:10px 0 0}.supplier-action{text-align:right;display:grid;gap:10px;justify-items:end}.supplier-action strong{font-size:16px}.empty{text-align:center;padding:54px;color:var(--muted);background:var(--white);border:1px dashed var(--line);border-radius:12px}.empty-icon{display:block;color:var(--yellow);font-size:32px;margin-bottom:8px}.steps{background:#e8f0ed;padding:76px 24px;margin:0 0 80px}.steps>h2{max-width:570px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:36px}.step-grid article{border-top:2px solid var(--teal);padding-top:16px}.step-grid span{font-size:12px;color:var(--teal);font-weight:800}.step-grid h3{margin:8px 0;font-size:19px}.step-grid p,.review-panel p{color:var(--muted)}.review-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:var(--ink);color:white;padding:52px 44px;margin:0 24px 70px;border-radius:14px}.review-panel .eyebrow{color:var(--yellow)}.review-panel p{color:#c5cdd1}.review-panel form{display:grid;gap:10px}.review-panel input,.review-panel textarea,.review-panel select{background:#2b3540;border-color:#44515c;color:white}.review-panel .secondary{color:white;border-color:#76838d}footer{display:flex;justify-content:space-between;padding:28px max(24px,calc((100% - 1180px)/2));color:var(--muted);font-size:13px;border-top:1px solid var(--line)}footer span:first-child{color:var(--teal);font-weight:800}@media(max-width:780px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:52px;gap:30px}.hero h1{letter-spacing:-2px}.supplier-card{grid-template-columns:32px 1fr}.supplier-action{grid-column:2;display:flex;justify-content:space-between;align-items:center;width:100%}.step-grid,.review-panel{grid-template-columns:1fr}.review-panel{margin:0 24px 50px;padding:32px 24px;gap:25px}.facts{flex-wrap:wrap}.section-heading{align-items:start;gap:12px;flex-direction:column}}
.compare-choice{display:flex;align-items:center;gap:7px;margin:12px 0 0;color:var(--teal);cursor:pointer}.compare-choice input{width:auto}.comparison-section{padding:0 24px 90px}.comparison-table{overflow-x:auto;background:var(--white);border:1px solid var(--line);border-radius:12px}.comparison-row{display:grid;grid-template-columns:180px repeat(auto-fit,minmax(180px,1fr));gap:16px;padding:16px 20px;border-top:1px solid var(--line);align-items:start;font-size:13px}.comparison-row:first-child{border-top:0}.comparison-row>span:first-child{color:var(--muted);font-weight:700}.comparison-head{background:#e8f0ed;font-size:14px}.comparison-head strong{color:var(--ink)}.results-controls{display:flex;align-items:end;gap:12px}.results-controls label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.results-controls select{min-width:130px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink)}.field-hint{color:var(--muted);font-size:11px;font-weight:400}
.portal-login-form,.portal-password-form{display:grid;gap:14px;max-width:520px;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:14px}.portal-login-form label,.portal-password-form{display:grid;gap:7px}.portal-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px;color:var(--muted)}.portal-summary strong{color:var(--ink)}.event-history-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px}.event-history-head{display:flex;justify-content:space-between;gap:20px}.event-history-head h3{margin:4px 0}.event-history-head p{margin:4px 0;color:var(--muted)}.event-timeline{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:0;list-style:none;padding:28px 0 12px;margin:0}.event-timeline-item{position:relative;display:grid;gap:9px;padding-right:12px;color:var(--muted);font-size:12px}.event-timeline-item:not(:last-child)::after{content:'';position:absolute;top:11px;left:24px;right:0;height:2px;background:var(--line)}.event-timeline-item.is-complete,.event-timeline-item.is-current{color:var(--ink)}.event-timeline-item.is-complete:not(:last-child)::after,.event-timeline-item.is-current:not(:last-child)::after{background:var(--teal)}.timeline-marker{position:relative;z-index:1;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--line);color:var(--white);font-weight:800}.is-complete .timeline-marker,.is-current .timeline-marker{background:var(--teal)}.timeline-now{display:block;color:var(--teal);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.event-timeline-item small{display:block;color:var(--muted);font-size:11px}.event-history-actions{display:flex;justify-content:flex-end;margin-top:10px}
.builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--line)}.builder-head strong{display:block;margin-top:5px;font-size:18px}.environment-badge{white-space:nowrap;border-radius:999px;background:#fff2d3;color:#936b00;padding:5px 9px;font-size:10px;font-weight:800;letter-spacing:1px}.builder-steps{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0 20px}.builder-steps span{border-radius:999px;background:#f2f5f3;color:var(--muted);padding:5px 9px;font-size:11px;font-weight:700}.builder-steps span.is-active{background:#dcefe9;color:var(--teal)}
.builder-steps span{cursor:pointer}.builder-steps span.is-complete{background:#e8f0ed;color:var(--teal)}.wizard-step{min-height:210px}.wizard-kicker{margin:0;color:var(--teal);font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.wizard-step h3{margin:7px 0 20px;font-size:21px;letter-spacing:-.5px}.wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.wizard-actions .primary,.wizard-actions .secondary,.wizard-actions .ghost{min-width:130px}.budget-hint,.builder-summary{display:grid;gap:6px;margin-top:18px;padding:16px;border-radius:10px;background:#e8f0ed;color:var(--muted);font-size:13px}.budget-hint strong,.builder-summary strong{color:var(--ink)}.builder-summary span{color:var(--muted)}
@media (max-width:760px){.event-timeline{grid-template-columns:1fr;gap:12px;padding-left:8px}.event-timeline-item{grid-template-columns:32px 1fr;padding:0;align-items:start}.event-timeline-item:not(:last-child)::after{top:24px;left:11px;right:auto;width:2px;height:20px}.results-controls{align-items:stretch;flex-direction:column;gap:8px}.event-history-head,.portal-summary{align-items:flex-start;flex-direction:column}}
.password-field{position:relative;display:block;width:100%}.password-field input{width:100%;padding-right:42px}.password-toggle{position:absolute;right:6px;top:50%;z-index:3;display:grid;place-items:center;width:32px;height:32px;visibility:visible;opacity:1;pointer-events:auto;appearance:none;-webkit-appearance:none;border:1px solid #cbd4ff;border-radius:7px;transform:translateY(-50%);color:#536fe5;background:#f4f6ff;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{border-color:#536fe5;color:#4059c9;background:#e9edff;outline:0}.password-toggle i{display:none!important}.password-toggle::before{content:"";display:block;width:15px;height:9px;border:2px solid currentColor;border-radius:75% 15%;transform:rotate(-18deg)}.password-toggle::after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:currentColor}
