/* Landing page additions. Uses the same palette as portal.css. */
html{scroll-behavior:smooth}
.landing-hero{padding:56px 0 48px;position:relative;overflow:hidden}
.landing-hero::after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:#ffffff0d;pointer-events:none}
.landing-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;position:relative;z-index:1}
.hero-actions{margin-top:22px!important}
.landing-hero .btn-outline{background:transparent;border-color:#ffffff66;color:#fff}
.landing-hero .btn-outline:hover{background:#ffffff1f}
.hero-points{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:8px;color:#d9e2ec}
.hero-points li{position:relative;padding-left:26px}
.hero-points li::before{content:"";position:absolute;left:0;top:.3em;width:16px;height:16px;border-radius:50%;background:#f59e0b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23102a43' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.hero-art{width:100%;height:auto;display:block}

.how-section{padding:44px 0 36px}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{position:relative;padding-top:30px}
.step-num{position:absolute;top:-16px;left:20px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--navy);font-weight:900;box-shadow:0 4px 12px #f59e0b55}
.step p{margin:0;color:var(--muted)}
.employer-note{margin:22px 0 0;padding:14px 18px;border-left:4px solid var(--accent);background:#fff;border-radius:8px;color:var(--text)}

.job-card,.why{transition:transform .18s,box-shadow .18s}
.job-card:hover,.why:hover,.step:hover{transform:translateY(-3px);box-shadow:0 14px 30px #102a4320}
.step{transition:transform .18s,box-shadow .18s}
.job-icon,.why-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:12px;background:#e9f2fb;color:var(--blue);font-weight:900;font-size:1.05rem}
.why-icon{background:#fff4d9;color:#b45309}
.why p{margin:0;color:var(--muted)}
.why-section{padding:40px 0}

.cta-band{margin-top:8px;padding:38px 0;background:linear-gradient(135deg,#102a43,#1769aa);color:#fff}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cta-inner h2{margin:0 0 4px}
.cta-inner p{margin:0;color:#d9e2ec}
.btn-accent-solid{background:var(--accent);color:var(--navy);padding:12px 22px;transition:transform .15s,box-shadow .15s}
.btn-accent-solid:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0004}

.site-footer{margin-top:0}
.footer-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer-links{display:flex;gap:16px}
.footer-links a{color:#d9e2ec}
.btn{transition:transform .15s,box-shadow .15s,background-color .15s}
.btn-primary:hover{box-shadow:0 6px 14px #1769aa55;transform:translateY(-1px)}

@media(max-width:820px){
  .landing-hero-grid{grid-template-columns:1fr}
  .hero-art{max-width:460px;margin:0 auto}
  .steps{grid-template-columns:1fr;gap:26px}
  .cta-inner{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
