@charset "utf-8";
/* ScholarshipBob Post Opportunity pages (landing + form). Builds on css/services.css (sv-* classes and --sv-* colours). */

/* landing: hero sits in the left column, beside the price panel */
.po-hero{padding:48px 0 30px}
.po-hl{font-style:normal;background:linear-gradient(transparent 62%,var(--sv-yellow) 62%);padding:0 2px}
.po-notice{margin-bottom:0}
.po-notice a{color:var(--sv-purple);font-weight:700;margin-left:4px}

/* price panel (landing + form): bold card, as in the approved mockups */
.po-panel{margin-top:48px;border:3px solid var(--sv-ink);border-radius:18px;box-shadow:6px 6px 0 var(--sv-purple)}
.po-panel-eyebrow{margin-bottom:6px}
.po-price{margin:0;font-family:'Bricolage Grotesque','Work Sans',sans-serif;font-weight:800;font-size:48px;line-height:1;letter-spacing:-.02em;color:var(--sv-ink)}
.po-price small{font-family:'Work Sans',system-ui,sans-serif;font-weight:600;font-size:15px;letter-spacing:0;color:var(--sv-muted)}
.po-panel-list{list-style:none;margin:16px 0 18px;padding:0}
.po-panel-list li{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--sv-line);font-size:15px;line-height:1.45;color:var(--sv-ink)}
.po-panel-list li:first-child{border-top:0}
.po-ico{flex:none;width:22px;text-align:center}
.po-btn-block{display:block;text-align:center;border:2px solid var(--sv-ink)}
.po-secure{margin:10px 0 0 !important;font-size:13px;color:var(--sv-muted);text-align:center}

/* form page */
.po-form-page .po-panel{margin-top:36px}
.po-form-page .po-price{font-size:42px}
.po-form-page .po-panel-list{margin-bottom:0;font-size:14.5px}
.po-main{padding-top:36px}
.po-form-title{font-family:'Bricolage Grotesque','Work Sans',sans-serif;font-weight:800;font-size:36px;line-height:1.08;letter-spacing:-.02em;margin:0 0 10px;padding:0;border:0;color:var(--sv-ink)}
.po-lead{color:var(--sv-text);margin:0 0 20px}
.po-steps{display:flex;gap:8px;list-style:none;margin:0 0 26px;padding:0}
.po-steps li{flex:1;padding:8px 10px;border-radius:10px;background:var(--sv-tint);font-family:'Bricolage Grotesque','Work Sans',sans-serif;font-weight:700;font-size:13px;line-height:1.3;color:var(--sv-muted)}
.po-steps li.po-on{background:var(--sv-ink);color:#fff}
.po-errsum{margin:0 0 22px;font-weight:500}
.po-errsum p{margin:0 0 6px;font-weight:600}
.po-errsum ul{margin:0;padding-left:20px;font-size:15px}
.po-errsum a{color:#a11b1b;font-weight:600}
.po-errsum:focus{outline:none}
.po-reqnote{font-size:13px;color:var(--sv-muted);margin:0 0 4px !important}
.po-req{color:var(--sv-purple);font-weight:800}
.po-fs{border:0;border-top:1px solid var(--sv-line);margin:0;padding:22px 0 8px;min-width:0}
.po-fs legend{font-family:'Bricolage Grotesque','Work Sans',sans-serif;font-weight:800;font-size:20px;padding:0 10px 0 0;color:var(--sv-ink);border:0;margin:0;width:auto}
.po-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-top:12px}
.po-f{min-width:0}
.po-w{grid-column:span 2}
.po-f>label:not(.po-check),.po-label{display:block;font-family:'Bricolage Grotesque','Work Sans',sans-serif;font-weight:700;font-size:14px;margin:0 0 5px;color:var(--sv-ink)}
.po-label i,.po-opt{font-family:'Work Sans',system-ui,sans-serif;font-weight:500;font-size:12.5px;font-style:normal;color:var(--sv-muted)}
.po-form input[type=text],.po-form input[type=url],.po-form input[type=email],.po-form input[type=tel],.po-form input[type=date],.po-form select,.po-form textarea{
  display:block;width:100%;min-height:42px;margin:0;border:2px solid var(--sv-line);border-radius:10px;background:#fcfaff;padding:9px 12px;
  font-family:'Work Sans',system-ui,sans-serif;font-size:15px;line-height:1.4;color:var(--sv-ink);box-shadow:none;height:auto}
.po-form textarea{min-height:96px;resize:vertical}
.po-form input::placeholder,.po-form textarea::placeholder{color:#a497ad}
.po-form input:focus,.po-form select:focus,.po-form textarea:focus{outline:none;border-color:var(--sv-purple);background:#fff}
.po-form input[type=file]{display:block;width:100%;font-size:14px;padding:8px 0}
.po-has-err input[type=text],.po-has-err input[type=url],.po-has-err input[type=email],.po-has-err input[type=tel],.po-has-err input[type=date],.po-has-err select,.po-has-err textarea{border-color:#c62828}
.po-hint{font-size:12.5px;color:var(--sv-muted);margin:4px 0 0 !important}
.po-err{font-size:13px;font-weight:600;color:#c62828;margin:5px 0 0 !important}
/* categories: checkboxes styled as chips */
.po-chips{display:flex;flex-wrap:wrap;gap:6px}
.po-chip{position:relative;margin:0;cursor:pointer}
.po-chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.po-chip span{display:inline-block;border:2px solid var(--sv-line);border-radius:999px;padding:4px 10px;font-size:13px;line-height:1.4;background:#fff;color:var(--sv-ink);transition:.12s}
.po-chip:hover span{border-color:#cdb6dd}
.po-chip input:checked+span{border-color:var(--sv-purple);background:var(--sv-tint);color:var(--sv-purple);font-weight:600}
.po-chip input:focus-visible+span{outline:2px solid var(--sv-purple);outline-offset:2px}
/* checkboxes: rolling deadline + consents */
.po-check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.45;margin:10px 0;cursor:pointer;font-weight:400;color:var(--sv-ink)}
.po-check input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--sv-purple)}
.po-check-sm{font-size:13.5px;margin:6px 0 0}
.po-check-sm input{width:16px;height:16px}
.po-consent{padding-top:14px}
.po-consent .po-f{margin-bottom:2px}
.po-submit-row{margin:18px 0 0 !important}
.po-submit{font-size:17px;padding:15px 26px}
/* honeypot and screen-reader-only text */
.po-hp{position:absolute !important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.po-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (max-width:900px){
  .po-cols .po-panel{order:0;margin-top:0;align-self:stretch}
  .po-panel{box-shadow:4px 4px 0 var(--sv-purple)}
  .po-hero{padding:34px 0 22px}
  .po-main{padding-top:24px}
  .po-form-title{font-size:30px}
  .po-grid{grid-template-columns:1fr}
  .po-w{grid-column:auto}
}
@media (max-width:560px){
  .po-steps{flex-direction:column;gap:6px}
  .po-price{font-size:42px}
}

/* What You Get: check marks (matches the approved mockup) instead of the services dots */
.po-page .sv-checks li::before{content:"\2713";top:0;width:auto;height:auto;border-radius:0;background:none;color:var(--sv-purple);font-weight:800}
