/* Instant Placements brand shell. Presentation only.
   The source application, copy, routes, media and bed-state semantics are retained.
   Remove this stylesheet link to recover the original visual presentation. */
:root {
  --brand-forest:#003f34;
  --brand-emerald:#008365;
  --brand-mint:#a7e8be;
  --brand-ivory:#faf7ec;
  --brand-paper:#fffef9;
  --brand-sage:#e4efda;
  --brand-line:#dce3d2;
  --brand-ink:#073e32;
  --brand-muted:#496959;
  --green:var(--brand-emerald); --deep:var(--brand-forest);
  --forest:var(--brand-forest); --ink:var(--brand-ink);
  --muted:var(--brand-muted); --line:var(--brand-line); --ivory:var(--brand-ivory);
  --shadow:0 9px 28px #29483108;
  --rd-green:var(--brand-emerald); --rd-deep:var(--brand-forest);
  --rd-ink:var(--brand-ink); --rd-muted:var(--brand-muted);
  --rd-line:var(--brand-line); --rd-mint:var(--brand-sage);
}
html,body { background:var(--brand-ivory); color:var(--brand-ink); }
body { -webkit-font-smoothing:antialiased; }
.rd-shell,.rd-main,.rd-content,.rl-page,.ip-login-page { background:var(--brand-ivory); }
.rl-page { --rl-line:var(--brand-line); }
.rpd-property { --rpd-border:var(--brand-line); }
.rd-sidebar { background:var(--brand-paper); border-color:var(--brand-line); }
.rd-topbar { background:#fffef9f5; border-color:var(--brand-line); }
.rd-side-link { color:var(--brand-muted); }
.rd-side-link.active { background:var(--brand-sage); color:var(--brand-forest); }
.rd-side-link:hover { background:#edf2e5; }
.rd-side-caption,.rd-demo-footer,.rd-sidebar-profile small { color:var(--brand-muted); }
.rd-side-divider { border-color:var(--brand-line); }
.rd-global-search,.rd-campus-switch,.rd-account { color:var(--brand-ink); }
.rd-global-search,.rd-campus-switch { background:var(--brand-paper); border-color:var(--brand-line); }
.rd-page-heading h1,.rl-title h1,.rm-heading h1,.rc-heading h1 { color:var(--brand-forest); }
.rd-shell :is(.muted,.small-muted,.faint-text),.rl-title p { color:var(--brand-muted); }
.card,.rd-property-card,.rl-panel,.rl-metric,.rl-portfolio-row,.rl-wizard-step,
.rl-wizard-stepper,.rpd-surface,.rpd-rail-sticky,.ips-mini-map-card,.ips-insights,
.ips-access-intro,.ips-access-lifestyle,.ips-semester-pass,.ips-pass-body,
.sa-card,.sa-info,.sa-manage,.sa-alert-row,.ip-login-card {
  background:var(--brand-paper); border-color:var(--brand-line);
  box-shadow:var(--shadow);
}
.rd-property-card:hover { border-color:#a8bf9e; box-shadow:0 12px 30px #29483112; }
.rc-panel,.rc-steps,.rc-school,.rc-campus,.rc-campus-stats>div {
  background:var(--brand-paper); border-color:var(--brand-line); box-shadow:var(--shadow);
}
.rc-school.selected,.rc-campus.selected { background:#edf3e4; border-color:#98b99d; }
.rc-directory-note,.rc-icon-circle { background:var(--brand-sage); }
.rd-shell input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
.rd-shell select,.rd-shell textarea,.ip-login-input-wrap {
  background:var(--brand-paper); border-color:var(--brand-line); color:var(--brand-ink);
}
.btn.primary,.rd-shell .btn.primary,.rl-button:not(.rl-button-light):not(.rl-button-outline),
.rpd-primary,.sa-primary,.sa-tabs button.active,.ips-pass-checkout {
  background:var(--brand-emerald); border-color:var(--brand-emerald); color:white;
}
.btn.primary:hover,.rd-shell .btn.primary:hover,.rl-button:not(.rl-button-light):not(.rl-button-outline):hover,
.rpd-primary:hover:not(:disabled),.sa-primary:hover { background:#006e54; }
.btn.outline,.rl-button-outline,.rl-button-light,.rpd-secondary {
  background:var(--brand-paper); color:var(--brand-forest); border-color:#c7d5bd;
}
.btn.subtle,.ips-filter-campus,.ips-filter-pill,.ips-more-filters>summary,
.rl-icon-button,.op-scope,.op-notice,.op-empty,.sa-workspace,.sa-metrics>div,
.sa-preview,.ips-query-summary,.ips-match-reasons,.rpd-stats {
  background:#f0f3e6; border-color:var(--brand-line); color:var(--brand-muted);
}
.ips-match-filterbar,.ips-filter-popover,.rm-toolbar,.rm-extra-filters,
.rl-search,.rl-select-label,.sa-tabs button,.hp-luxe-panel {
  background:var(--brand-paper); border-color:var(--brand-line);
}
.op-day,.op-preview,.ip-login-tabs { background:#f4f4e9; border-color:var(--brand-line); }
.op-slot,.sa-chip span { background:#f0f3e6; border-color:var(--brand-line); }
.ip-login-header { background:var(--brand-paper); border-color:var(--brand-line); }
.ip-login-demo-student { background:var(--brand-sage); }
.ip-login-demo-landlord { background:var(--brand-paper); }
.ip-login-card { --ip-login-ink:var(--brand-ink); }
/* Approved editorial images keep their original files, framing and dimensions. */
.rd-page-dashboard .ip-dashboard-hero,.ips-access-hero,.sa-hero,
.rl-landlord-hero,.ip-editorial-banner { background:var(--brand-forest); }
.ips-match-hero,.rl-create-hero { background:var(--brand-ivory); }
.op-intro.ip-operations-banner,.op-intro.ip-viewing-banner { background:var(--brand-paper); border-color:var(--brand-line); }
.ips-match-hero h1 { color:var(--brand-forest); }
.ips-match-hero h1 em { color:var(--brand-emerald); }
.ip-editorial-banner,.ip-dashboard-hero,.ips-access-hero,.sa-hero,.rl-landlord-hero {
  box-shadow:0 12px 32px #2948310c;
}
/* The original single-screen home: same three navigation links and search fields. */
.hp-page { background:var(--brand-ivory); color:var(--brand-ink); min-height:100svh; }
.hp-page::after {
  background:linear-gradient(90deg,#faf7ec 0%,#faf7ec 38%,#faf7ecdd 46%,#faf7ec00 62%),
    linear-gradient(0deg,#faf7ec 0%,#faf7ec00 24%);
}
.hp-page .hp-backdrop.ip-editorial-art {
  background:var(--brand-sage); box-shadow:0 0 0 38px #e4efda;
}
.hp-nav .ip-brand-symbol,.hp-nav .ip-brand-wordmark { filter:none; }
.hp-nav-link { color:var(--brand-forest); }
.hp-nav-link:hover,.hp-nav-link.active { color:var(--brand-emerald); }
.hp-nav-link.active::after { background:var(--brand-emerald); }
.hp-kicker { background:#e4efda99; border-color:#cfddc5; color:var(--brand-emerald); }
.hp-kicker i { background:var(--brand-emerald); box-shadow:0 0 0 5px #00836508; }
.hp-copy h1 { color:var(--brand-forest); text-shadow:none; }
.hp-copy h1 span { color:var(--brand-emerald); }
.hp-copy p { color:var(--brand-muted); text-shadow:none; }
.hp-search { background:var(--brand-paper); border:1px solid #d4deca; box-shadow:0 12px 40px #2948310c; }
.hp-field { border-color:var(--brand-line); }
.hp-field-icon { color:var(--brand-emerald); background:var(--brand-sage); }
.hp-field-label { color:var(--brand-muted); }
.hp-select select,.hp-luxe-trigger { color:var(--brand-forest); }
.hp-submit { background:var(--brand-emerald); border-color:var(--brand-emerald); box-shadow:none; }
.hp-submit:hover { background:#006e54; }
.hp-popular,.hp-note,.hp-closest .hp-nearby-empty { color:var(--brand-muted); }
.hp-popular button { background:#fffef9ed; border-color:#d3dfca; color:var(--brand-forest); backdrop-filter:none; }
.hp-popular button:hover { background:var(--brand-sage); border-color:#b5cba9; }
.hp-closest .hp-nearby-campus small { border-color:#bccdb0; }
.hp-popular .hp-view-all { background:#fffef9ed; border-color:#d3dfca; }
.hp-luxe-search,.hp-luxe-close { background:#f0f3e6; border-color:var(--brand-line); }
.hp-luxe-option:hover,.hp-luxe-option:focus-visible { background:var(--brand-sage); border-color:#c7d7bd; }
.hp-page :is(button,select):focus-visible { outline-color:var(--brand-emerald); }
@media(min-width:1101px) {
  .hp-nav { padding-block:clamp(18px,2.8vh,29px); }
  .hp-main { padding-top:clamp(24px,5.5vh,70px); padding-bottom:20px; }
  .hp-copy { max-width:56%; }
  .hp-copy h1 { font-size:clamp(42px,4.15vw,78px); margin:26px 0 22px; }
  .hp-copy p { font-size:clamp(18px,1.6vw,28px); }
  .hp-search { margin-top:clamp(28px,5vh,60px); box-shadow:0 12px 40px #2948310c; }
  .hp-popular { margin-top:24px; }
}
@media(min-width:761px) and (max-width:1100px) {
  .hp-main { padding-top:28px; }
  .hp-copy { max-width:70%; }
  .hp-copy h1 { font-size:44px; margin:20px 0 16px; }
  .hp-copy p { font-size:19px; }
  .hp-search { margin-top:26px; }
  .hp-popular { margin-top:20px; }
}
@media(max-width:760px) {
  .hp-nav nav { border-color:var(--brand-line); }
  .hp-main { padding-top:26px; padding-bottom:16px; }
  .hp-page .hp-backdrop.ip-editorial-art { left:38%; right:-55%; top:12%; bottom:auto; height:400px; opacity:.18; }
  .hp-page::after { background:linear-gradient(0deg,#faf7ec 35%,#faf7ec00 80%),linear-gradient(90deg,#faf7ec 0%,#faf7ecbb 35%,#faf7ec00 100%); }
  .hp-copy h1 { font-size:clamp(33px,7vw,43px); margin:18px 0 14px; }
  .hp-copy p { font-size:16px; line-height:1.55; }
  .hp-search { margin-top:24px; box-shadow:0 9px 28px #2948310a; }
  .hp-popular { margin-top:20px; }
}
@media(max-width:600px) {
  .hp-nav { padding-block:10px 0; gap:4px; }
  .hp-nav .rd-brand.ip-brand { height:40px; }
  .hp-nav .ip-brand-wordmark { height:40px; }
  .hp-nav-link { padding-block:10px; }
  .hp-main { padding-top:12px; padding-bottom:8px; }
  .hp-kicker { padding:7px 10px; }
  .hp-copy h1 { font-size:32px; margin:12px 0 10px; }
  .hp-copy p { font-size:15px; }
  .hp-search { margin-top:14px; padding:10px; }
  .hp-search .hp-field { min-height:64px; padding-block:5px; }
  .hp-search .hp-submit { min-height:48px; padding-block:10px; }
  .hp-popular { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-top:16px; }
  .hp-popular>span:first-child,.hp-popular .hp-view-all,.hp-closest .hp-nearby-empty { grid-column:1/-1; }
  .hp-closest .hp-nearby-campus { max-width:none; min-height:40px; padding:8px 9px; font-size:11px; gap:5px; }
  .hp-closest .hp-nearby-campus small { font-size:9px; padding-left:5px; }
  .hp-popular .hp-view-all { justify-content:center; min-height:36px; padding:7px; }
  .hp-note { padding-bottom:6px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
}

/* Approved homepage-only luminous green borders.
   Styling only: keep the existing compact search bar, campus shortcut sizes,
   navigation, form controls, and mobile layout untouched. */
.hp-page .hp-search {
  border-color: #22c55e;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.32),
              0 0 15px 3px rgba(34, 197, 94, 0.28),
              0 12px 40px rgba(41, 72, 49, .05);
}
.hp-page .hp-closest .hp-nearby-campus,
.hp-page .hp-closest .hp-view-all {
  border-color: #22c55e;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.30),
              0 0 12px 2px rgba(34, 197, 94, 0.26);
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.hp-page .hp-closest .hp-nearby-campus:hover,
.hp-page .hp-closest .hp-view-all:hover,
.hp-page .hp-closest .hp-nearby-campus:focus-visible,
.hp-page .hp-closest .hp-view-all:focus-visible {
  border-color: #16a34a;
  box-shadow: 0 0 0 1px rgba(22, 163, 74, 0.42),
              0 0 16px 3px rgba(22, 163, 74, 0.34);
}
@media (prefers-reduced-motion: reduce) {
  .hp-page .hp-closest .hp-nearby-campus,
  .hp-page .hp-closest .hp-view-all { transition: none; }
}
