/* ==========================================================================
   TNA SCHOLAR — opportunity + university pathway cards, Save buttons,
   testimonials (scholarships.html + dashboard). Brand tokens from tna-site.css
   with fallbacks so it also works on the app pages.
   ========================================================================== */
.op-save{appearance:none;display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:999px;border:1px solid rgba(14,27,45,.16);background:#fff;
  font-family:var(--font-ui,Inter,sans-serif);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0E1B2D;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.op-save svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}
.op-save:hover{border-color:#0E1B2D}
.op-save.is-saved{background:#0E1B2D;border-color:#0E1B2D;color:#F7F5F2}
.op-save.is-saved svg{fill:currentColor}
[data-sch-apply].is-applied{pointer-events:none;opacity:.8}
.op-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:auto;padding-top:10px}
.op-btns .btn{padding:11px 16px;font-size:11px}

/* featured offer cards (dashboard) */
.op-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.op-card{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(14,27,45,.09)}
.op-media{position:relative;display:block;aspect-ratio:16/9;background:#14243A;overflow:hidden}
.op-media img{width:100%;height:100%;object-fit:cover;display:block}
.op-media span{position:absolute;left:10px;top:10px;padding:5px 10px;border-radius:999px;background:rgba(14,27,45,.7);color:#F7F5F2;font:700 10px var(--font-ui,Inter,sans-serif);letter-spacing:.12em;text-transform:uppercase}
.op-body{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px;flex:1}
.op-body h4,.op-uni-body h4{margin:0;font:700 15px/1.3 var(--font-ui,Inter,sans-serif);color:#0E1B2D;letter-spacing:-.01em}
.op-body p,.op-uni-body p{margin:0;font:500 12.5px/1.45 var(--font-ui,Inter,sans-serif);color:#5F6B78}

/* university pathway cards (scholarships page + dashboard) */
.up-grid,.op-uni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.op-uni{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:16px;background:#fff;border:1px solid rgba(14,27,45,.09)}
.op-logo{flex:none;width:52px;height:52px;border-radius:12px;border:1px solid rgba(14,27,45,.09);background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:6px;
  font-family:'Anton','Inter',sans-serif;font-size:16px;color:#0E1B2D;letter-spacing:.02em}
.op-logo img{width:100%;height:100%;object-fit:contain}
.op-uni-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.up-card{display:flex;flex-direction:column;gap:12px;padding:18px 18px 16px;border-radius:18px;background:#fff;border:1px solid var(--tn-line,rgba(14,27,45,.09));box-shadow:0 1px 2px rgba(14,27,45,.04);transition:box-shadow .3s,transform .3s}
.up-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(14,27,45,.35)}
.up-top{display:flex;gap:14px;align-items:center}
.up-top h3{margin:0;font:700 15.5px/1.25 var(--font-ui,Inter,sans-serif);color:#0E1B2D;letter-spacing:-.01em}
.up-top p{margin:3px 0 0;font:500 12.5px/1.4 var(--font-ui,Inter,sans-serif);color:#5F6B78}
.up-div{align-self:flex-start;padding:5px 10px;border-radius:999px;background:#F3EFE8;font:700 10.5px var(--font-ui,Inter,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#9C7A4E}
.up-fit{margin:0;font:500 13.5px/1.5 var(--font-ui,Inter,sans-serif);color:#3E4A58}
.up-card .op-btns{padding-top:4px}
.up-card{position:relative}
.up-card .up-top{padding-right:38px}
.up-card .op-save{position:absolute;top:16px;right:16px;padding:9px}
.up-card .op-save span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* dark plan card (scholarships membership): readable CTAs on navy */
.tn-plan.dark .btn-gold{background:#DCCDBA!important;background-image:none!important;color:#0E1B2D!important;border-color:#DCCDBA!important}
.tn-plan.dark .btn-outline-light{background:transparent!important;background-image:none!important;color:#F7F5F2!important;border:1px solid rgba(247,245,242,.4)!important}
.up-card .op-btns .btn{flex:1 1 auto;justify-content:center}
.up-note{font-family:var(--font-ui,Inter,sans-serif);font-size:12.5px;color:#5F6B78;margin:18px 0 0;max-width:80ch}
.up-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 18px}
.up-bar .tn-chip{padding:9px 15px}

/* testimonials */
.ts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}
.ts-card{display:flex;flex-direction:column;gap:14px;padding:24px 22px;border-radius:20px;background:#fff;border:1px solid var(--tn-line,rgba(14,27,45,.09))}
.ts-stars{color:#B68B5E;letter-spacing:2px;font-size:15px}
.ts-card blockquote{margin:0;font:500 15.5px/1.6 var(--font-ui,Inter,sans-serif);color:#141B24}
.ts-who{margin-top:auto;font-family:var(--font-ui,Inter,sans-serif)}
.ts-who b{display:block;font-size:14px;color:#0E1B2D}
.ts-who span{display:block;margin-top:2px;font-size:12.5px;color:#5F6B78}

@media (max-width:640px){
  .op-grid,.up-grid,.op-uni-grid{grid-template-columns:1fr}
  .up-card .op-btns .btn{flex:1 1 100%}
}
