
:root{--navy:#062f4a;--blue:#0868c8;--blue2:#0b83d5;--green:#07935d;--orange:#ee8200;--bg:#f4f8fb;--line:#dbe5ed;--text:#15283a;--muted:#687b8d;--danger:#c73b2f;--shadow:0 18px 50px rgba(6,47,74,.12);--soft:0 8px 22px rgba(6,47,74,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.site-header{height:120px;background:#fff;border-top:26px solid #262626;border-bottom:1px solid #e5e9ed}.header-inner{max-width:1100px;height:94px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:26px}.logo img{width:205px;height:auto;display:block}.main-menu{display:flex;gap:28px;align-items:center}.main-menu a{text-decoration:none;font-size:13px;font-weight:700;color:#111;white-space:nowrap}.main-menu a:hover{color:var(--blue)}.hero{background:linear-gradient(140deg,#084467 0%,#075f8b 55%,#0a7297 100%);color:#fff;text-align:center;padding:48px 22px 84px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -10% -80px;height:160px;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.hero h1{font-size:42px;line-height:1.15;margin:0 0 16px;font-weight:800}.hero p{margin:0;font-size:18px}.shell{max-width:1100px;margin:-38px auto 42px;padding:0 20px;position:relative;z-index:2}.panel{background:#fff;border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.landing-panel{padding:30px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--blue)}.landing-title{font-size:25px;margin:6px 0 5px;color:var(--navy)}.landing-sub{margin:0;color:var(--muted)}.level-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:26px}.level-card{position:relative;border:1px solid var(--line);border-radius:17px;padding:24px 22px 20px;box-shadow:var(--soft);background:#fff;transition:.22s transform,.22s box-shadow}.level-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(6,47,74,.13)}.level-card:not(:last-child):after{content:'›';position:absolute;right:-17px;top:44%;font-size:36px;color:#899bab;z-index:3}.pill{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;background:#e7f3ff;color:var(--blue)}.level-card.green .pill{background:#e3f6ed;color:var(--green)}.level-card.orange .pill{background:#fff0df;color:var(--orange)}.level-card.purple .pill{background:#f1eaff;color:#7650b9}.card-head{display:flex;gap:13px;align-items:center;margin:15px 0}.icon-orb{width:52px;height:52px;border-radius:50%;background:linear-gradient(145deg,var(--blue2),#0759b5);display:grid;place-items:center;color:#fff;font-size:24px}.green .icon-orb{background:linear-gradient(145deg,#0cac70,#067f4e)}.orange .icon-orb{background:linear-gradient(145deg,#ff9d22,#db6b00)}.purple .icon-orb{background:linear-gradient(145deg,#8d67cf,#6841a8)}.card-head h3{margin:0 0 5px;font-size:21px;color:var(--navy)}.green h3{color:#087f51}.orange h3{color:#dc6d00}.purple h3{color:#6841a8}.duration{font-weight:800;color:var(--blue);font-size:13px}.green .duration{color:var(--green)}.orange .duration{color:var(--orange)}.purple .duration{color:#7650b9}.level-card p{min-height:46px;color:#53687b;line-height:1.45}.level-card ul{padding-left:20px;min-height:96px;line-height:1.65;font-size:14px}.btn{border:0;border-radius:9px;padding:13px 18px;font-weight:800;font-size:14px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s}.btn.primary{background:linear-gradient(90deg,#075dbc,#087bd8);color:#fff}.btn.success{background:linear-gradient(90deg,#078a57,#08a96c);color:#fff}.btn.orange{background:linear-gradient(90deg,#dc7100,#f28a00);color:#fff}.btn.purple{background:linear-gradient(90deg,#6841a8,#8d67cf);color:#fff}.btn.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.btn.ghost{background:#eef6fd;color:var(--blue)}.btn.full{width:100%}.resume-card{margin-top:20px;border:1px solid #cfe2f2;border-radius:15px;padding:20px;display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center;background:linear-gradient(90deg,#f5faff,#fff)}.resume-info{display:flex;gap:14px;align-items:center}.resume-icon{width:50px;height:50px;border-radius:13px;background:#e3f1ff;color:var(--blue);display:grid;place-items:center;font-size:24px}.resume-info h3{margin:0 0 5px;color:var(--navy)}.resume-info p{margin:0;color:var(--muted);font-size:14px}.resume-row{display:grid;grid-template-columns:1fr auto;gap:10px}.resume-row input{border:1px solid var(--line);border-radius:9px;padding:13px}.site-footer{background:#fff;border-top:1px solid #e0e8ee;text-align:center;padding:22px;color:#6c7c8c;font-size:12px}.site-footer a{color:var(--blue);font-weight:700;text-decoration:none;margin-left:24px}
/* portal */.portal-shell{max-width:1100px;margin:-38px auto 40px;padding:0 20px;position:relative;z-index:2}.portal{background:#fff;border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.portal-top{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:22px 28px;border-bottom:1px solid var(--line)}.project-meta{display:flex;gap:28px;flex-wrap:wrap}.meta span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;margin-bottom:4px}.meta strong{color:var(--navy);font-size:15px}.save-status{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;color:var(--green)}.save-status.unsaved{color:var(--orange)}.save-status.error{color:var(--danger)}.progress-wrap{padding:21px 30px;background:#f8fbfd;border-bottom:1px solid var(--line)}.progress-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:14px}.progress-head strong{color:var(--navy)}.completion-copy{font-size:13px;color:var(--muted)}.stage-track{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.stage-track:before{content:"";position:absolute;left:12.5%;right:12.5%;top:16px;height:3px;background:#cbd9e4}.stage{position:relative;text-align:center;z-index:1}.stage-dot{width:34px;height:34px;margin:auto;border-radius:50%;background:#d7e1e9;color:#607486;display:grid;place-items:center;font-weight:800;border:4px solid #f8fbfd}.stage.current .stage-dot{background:var(--blue);color:#fff}.stage.done .stage-dot{background:var(--green);color:#fff}.stage b{display:block;font-size:12px;margin-top:7px;color:#5c7082}.stage.current b{color:var(--blue)}.completion-bar{height:7px;background:#e4edf3;border-radius:999px;overflow:hidden;margin-top:17px}.completion-bar span{height:100%;display:block;background:linear-gradient(90deg,var(--blue),var(--green));width:0;transition:.3s}.portal-grid{display:grid;grid-template-columns:230px 1fr;min-height:520px}.side-nav{border-right:1px solid var(--line);background:#fbfdff;padding:22px 14px}.side-nav h4{font-size:11px;text-transform:uppercase;color:#8393a2;margin:0 12px 10px}.side-nav a{display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:9px;text-decoration:none;color:#4f6577;font-size:13px;font-weight:700;margin:4px 0}.side-nav a.active{background:#e7f3ff;color:var(--blue)}.form-area{padding:28px}.section-card{border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:18px;background:#fff}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-title h2{margin:0;color:var(--navy);font-size:20px}.section-state{font-size:12px;font-weight:800;color:var(--muted)}.section-state.complete{color:var(--green)}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-weight:700;color:#304b60;font-size:13px}.field input,.field select,.field textarea{width:100%;border:1px solid #cddae4;border-radius:8px;padding:12px 13px;font-size:14px;color:var(--text);background:#fff}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(8,104,200,.12);border-color:var(--blue)}.required{color:var(--danger)}.form-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:6px}.action-group{display:flex;gap:10px}.mini-completion{font-size:12px;color:var(--muted)}
/* help */.help-launch{position:fixed;right:18px;top:48%;z-index:20;width:72px;border:0;border-radius:18px 0 0 18px;padding:14px 8px;background:linear-gradient(180deg,#0875d8,#034aa6);color:#fff;box-shadow:0 12px 28px rgba(0,61,135,.28);cursor:pointer;font-weight:800;line-height:1.25}.help-launch .bubble{font-size:24px;display:block;margin-bottom:5px}.help-launch .dot{position:absolute;right:7px;top:8px;width:9px;height:9px;border-radius:50%;background:#f33}.help-panel{position:fixed;right:20px;top:30%;width:300px;background:#fff;border-radius:15px;box-shadow:0 18px 50px rgba(7,40,65,.22);z-index:30;padding:18px;display:none}.help-panel.open{display:block}.help-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.help-head strong{color:var(--navy)}.help-head button{border:0;background:transparent;font-size:20px;cursor:pointer}.help-item{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px;margin:8px 0;text-decoration:none}.help-item .hi{font-size:21px}.help-item b{display:block;font-size:13px}.help-item small{color:var(--muted)}.help-home{display:block;text-align:center;color:var(--blue);font-size:12px;font-weight:800;text-decoration:none;margin-top:12px}
/* summary */.summary-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.summary-toolbar h2{margin:0;color:var(--navy)}.summary-actions{display:flex;gap:8px}.summary-stat{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:13px;margin-bottom:18px}.summary-stat .meta{padding:15px;border-right:1px solid var(--line)}.summary-stat .meta:last-child{border-right:0}.summary-list{display:grid;gap:11px}.summary-row{border:1px solid var(--line);border-radius:11px;padding:15px 17px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;background:#fff}.summary-row h3{margin:0 0 4px;font-size:15px;color:var(--navy)}.summary-row p{margin:0;color:var(--muted);font-size:12px}.badge{display:inline-flex;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.badge.complete{background:#e5f6ee;color:var(--green)}.badge.missing{background:#fff1df;color:#bd6500}.badge.empty{background:#edf1f4;color:#70808e}.checklist{margin-top:20px;border:1px solid var(--line);border-radius:14px;padding:20px;background:#fbfdff}.checklist h3{margin:0 0 12px;color:var(--navy)}.check-line{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed #d9e3ea;font-size:13px}.check-line:last-child{border-bottom:0}
@media(max-width:850px){.site-header{height:auto}.header-inner{height:auto;padding:16px 18px;flex-direction:column}.main-menu{gap:14px;justify-content:center;flex-wrap:wrap}.hero h1{font-size:34px}.level-flow{grid-template-columns:1fr}.level-card:not(:last-child):after{display:none}.resume-card{grid-template-columns:1fr}.portal-grid{grid-template-columns:1fr}.side-nav{display:none}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.summary-stat{grid-template-columns:1fr 1fr}.summary-stat .meta:nth-child(2){border-right:0}.summary-stat .meta:nth-child(-n+2){border-bottom:1px solid var(--line)}.help-launch{top:auto;right:14px;bottom:14px;width:52px;height:52px;border-radius:50%;padding:0;font-size:0}.help-launch .bubble{margin:0}.help-panel{right:12px;left:12px;top:auto;bottom:76px;width:auto}.portal-top{grid-template-columns:1fr}.progress-head{align-items:flex-start;flex-direction:column}.form-actions{flex-direction:column;align-items:stretch}.action-group{display:grid;grid-template-columns:1fr 1fr}.btn{width:100%}.summary-toolbar{align-items:flex-start;flex-direction:column}.summary-actions{width:100%}.site-footer a{display:block;margin:8px 0 0}}

@media(min-width:851px){.level-card{padding:20px 16px 18px}.level-card ul{font-size:13px}.card-head h3{font-size:18px}.icon-orb{width:46px;height:46px}}

/* SMTP submission confirmation */
.submit-modal{position:fixed;inset:0;background:rgba(5,24,43,.58);display:grid;place-items:center;padding:20px;z-index:9999}
.submit-dialog{position:relative;width:min(560px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.28);color:#102d49}
.submit-dialog h2{margin:0 36px 10px 0;font-size:27px}.submit-dialog p{line-height:1.55;color:#536b80}
.submit-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:30px;cursor:pointer;color:#64798b}
.submit-ref{background:#f2f8fc;border-left:4px solid #0876b9;border-radius:10px;padding:14px 16px;margin:18px 0}.submit-ref span{display:block;text-transform:uppercase;font-size:11px;font-weight:700;color:#6d8192}.submit-ref strong{display:block;margin-top:3px;font-size:18px;word-break:break-word}
.submit-check{display:flex;gap:10px;align-items:flex-start;background:#f8fafc;border:1px solid #dce7ef;border-radius:10px;padding:13px;margin-top:18px}.submit-check input{margin-top:3px}
.submit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;flex-wrap:wrap}.submit-error{color:#b42318!important;font-weight:600;min-height:22px;margin-bottom:0!important}
@media(max-width:600px){.submit-dialog{padding:22px}.submit-actions .btn{flex:1}.submit-dialog h2{font-size:23px}}

/* RC3 mobile production refinements */
@media(max-width:600px){
  .site-header{border-top-width:10px}
  .header-inner{padding:12px 14px;gap:12px}
  .logo img{width:165px}
  .main-menu{gap:8px 12px}
  .main-menu a{font-size:10px}
  .hero{padding:34px 16px 66px}
  .hero h1{font-size:28px}
  .hero p{font-size:15px}
  .shell,.portal-shell{padding:0 10px;margin-top:-30px}
  .landing-panel,.form-area{padding:18px 14px}
  .level-flow{gap:14px}
  .level-card{padding:18px 16px}
  .resume-row{grid-template-columns:1fr}
  .resume-row .btn{width:100%}
  .portal-top,.progress-wrap{padding:16px 14px}
  .project-meta{gap:14px}
  .stage-track{grid-template-columns:repeat(4,minmax(0,1fr))}
  .stage b{font-size:9px;line-height:1.15;overflow-wrap:anywhere}
  .stage-dot{width:30px;height:30px}
  .stage-track:before{top:14px}
  .section-card{padding:16px 13px}
  .section-title{align-items:flex-start}
  .section-title h2{font-size:18px}
  .action-group{grid-template-columns:1fr}
  .summary-stat{grid-template-columns:1fr}
  .summary-stat .meta{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .summary-stat .meta:last-child{border-bottom:0!important}
  .summary-row{grid-template-columns:1fr;align-items:start}
  .check-line{gap:12px}
  .success-wrap{padding:30px 16px}
  .success-actions{display:grid;grid-template-columns:1fr;width:100%}
}

@media print{
  .site-header,.hero,.help-launch,.help-panel,.site-footer,.success-actions,.side-nav,.summary-toolbar .summary-actions{display:none!important}
  body{background:#fff}
  .portal-shell,.shell{margin:0;padding:0;max-width:none}
  .portal,.panel{box-shadow:none;border-radius:0}
}

/* RC3.6 homepage alignment patch */
.level-card{display:flex;flex-direction:column;height:100%;}
.level-card .pill{align-self:flex-start;}
.card-head{align-items:flex-start;min-height:72px;}
.card-head .icon-orb{flex:0 0 auto;margin-top:0;}
.card-head>div{min-width:0;padding-top:0;}
.card-head h3{min-height:44px;display:flex;align-items:flex-start;}
.level-card p{min-height:58px;margin-top:0;}
.level-card ul{min-height:112px;margin-top:0;}
.level-card .btn.full{margin-top:auto;min-height:42px;white-space:nowrap;font-size:13px;padding-left:10px;padding-right:10px;}
@media(max-width:850px){.card-head{min-height:auto}.card-head h3{min-height:auto}.level-card p,.level-card ul{min-height:auto}.level-card .btn.full{white-space:normal}}

/* HOBS V4.4 Phase 1 FINAL expanded summary and preview */
.expanded-summary,.preview-content{display:grid;gap:18px}.summary-level-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.summary-level-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;background:#f4f8fc;border-bottom:1px solid var(--line)}.summary-level-head span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;color:var(--blue)}.summary-level-head h3{margin:3px 0 0;color:var(--navy);font-size:18px}.summary-level-head a{font-size:12px;font-weight:800;color:var(--blue);text-decoration:none}.summary-fields{display:grid;grid-template-columns:1fr}.summary-field{display:grid;grid-template-columns:minmax(190px,34%) 1fr;border-bottom:1px solid var(--line)}.summary-field:last-child{border-bottom:0}.summary-field-label{padding:11px 14px;font-size:13px;font-weight:700;color:#385266;background:#fbfdff;border-right:1px solid var(--line)}.summary-field-value{padding:11px 14px;font-size:13px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.summary-field-value[title]{cursor:help}.preview-content{margin-top:18px}@media(max-width:650px){.summary-field{grid-template-columns:1fr}.summary-field-label{border-right:0;border-bottom:1px solid #edf2f6}.summary-level-head{align-items:flex-start;flex-direction:column}}@media print{.summary-level-head a{display:none!important}.summary-level-card{break-inside:avoid;page-break-inside:avoid}.summary-field-value{color:#000}}


/* HOBS V4.6 RC1 */
.unknown-option{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;font-weight:600;color:#5c6675;cursor:pointer}
.unknown-option input{width:18px;height:18px;margin:0}
.field.unknown-selected{background:#fff9e8;border-radius:10px;padding:10px}
.field.unknown-selected>input:not([type=checkbox]),.field.unknown-selected>select{opacity:.55}
.field-error,.field-attention{outline:3px solid #d97706;outline-offset:5px;border-radius:8px;animation:rfqPulse 1.2s ease 2}
.validation-message{margin-top:8px;padding:10px 12px;border-radius:8px;background:#fff1f0;color:#b42318;font-size:13px;font-weight:700}
@keyframes rfqPulse{50%{outline-color:#fbbf24}}
.summary-field.missing-field{background:#fff1f0;border:1px solid #fda29b}
.summary-field.unknown-field{background:#fff9e8;border:1px solid #f6c453}
.go-field{display:inline-flex;margin-top:8px;font-size:12px;font-weight:800;color:#b42318;text-decoration:none}
.incomplete-card{border:2px solid #f6c453}
.level-status{display:block;margin-top:4px;color:#667085;font-weight:700}
.check-line.check-missing{cursor:pointer;background:#fff8eb;border-radius:8px;padding:12px}.check-line.check-missing:hover{background:#ffefcf}.check-line strong{color:var(--green)}.check-line.check-missing strong{color:var(--orange)}
button.disabled,button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
@media(max-width:700px){.check-line{align-items:flex-start;gap:8px}.check-line strong{text-align:right}.go-field{font-size:14px;padding:6px 0}}
