/* ============================================================================
   DealPilot AI — stylesheet

   Direction: the window sticker. Dark asphalt shell, but every vehicle card is
   paper stock with hairline rules and monospaced data, the way a Monroney label
   is taped to the glass on the lot.

   Palette   asphalt #12171C · panel #1A2129 · concrete paper #EBEDE8
             sodium-lot amber #FFB020 · signal mint #5FD3A5 · alert #E2574C
   Type      Barlow Condensed (display / dealer signage) · Barlow (body)
             IBM Plex Mono (all data — the spec-sheet voice)
   ============================================================================ */

:root{
  --asphalt:#12171C; --panel:#1A2129; --panel-2:#212B34; --line:#2C3742;
  --paper:#EBEDE8; --paper-2:#DCE0D9; --paper-line:#C3C8BE;
  --amber:#FFB020; --mint:#5FD3A5; --alert:#E2574C;
  --txt:#E7EAE5; --muted:#8E9AA6; --ink:#12171C;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--asphalt); color:var(--txt); min-height:100vh;
  font-family:'Barlow',system-ui,-apple-system,sans-serif; font-size:15.5px; line-height:1.55;
  -webkit-font-smoothing:antialiased; display:flex; flex-direction:column;
}
main{flex:1;}
.dp-display{font-family:'Barlow Condensed','Barlow',sans-serif;font-weight:700;text-transform:uppercase;line-height:.94;letter-spacing:.005em;}
.dp-mono{font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,monospace;}
.dp-muted{color:var(--muted);}
button{font-family:inherit;cursor:pointer;}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px;}
code{font-family:'IBM Plex Mono',monospace;background:rgba(255,176,32,.14);padding:1px 4px;border-radius:2px;}

/* data-source banner ------------------------------------------------------- */
.dp-databanner{padding:9px 26px;text-align:center;font-size:11px;letter-spacing:.06em;line-height:1.5;}
.dp-databanner.is-sample{background:var(--amber);color:var(--ink);}
.dp-databanner.is-sample b{letter-spacing:.14em;}
.dp-databanner.is-live{background:#173D30;color:var(--mint);}
.dp-databanner code{background:rgba(18,23,28,.16);color:inherit;}

/* nav ---------------------------------------------------------------------- */
.dp-nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;
  padding:14px 26px;background:rgba(18,23,28,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.dp-brand{display:flex;align-items:center;gap:9px;background:none;border:0;padding:0;color:var(--txt);}
.dp-brand-mark{width:15px;height:15px;background:var(--amber);clip-path:polygon(50% 0,100% 86%,50% 66%,0 86%);}
.dp-brand-name{font-size:22px;letter-spacing:.02em;}
.dp-brand-tag{font-size:10px;color:var(--amber);border:1px solid var(--amber);padding:1px 4px;border-radius:2px;letter-spacing:.08em;}
.dp-nav-right{display:flex;align-items:center;gap:14px;}
.dp-nav-link{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);background:none;border:0;}
.dp-nav-link:hover{color:var(--txt);}
.dp-avatar{width:32px;height:32px;border-radius:50%;background:var(--amber);color:var(--ink);border:0;font-size:11px;font-weight:600;}

/* buttons + chips ---------------------------------------------------------- */
.dp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:3px;
  border:1px solid transparent;padding:12px 20px;font-size:13px;font-weight:600;letter-spacing:.03em;
  text-transform:uppercase;font-family:'IBM Plex Mono',monospace;transition:background .15s,border-color .15s,color .15s;}
.dp-btn-primary{background:var(--amber);color:var(--ink);}
.dp-btn-primary:hover:not(:disabled){background:#FFC24F;}
.dp-btn-ghost{background:transparent;color:var(--txt);border-color:var(--line);}
.dp-btn-ghost:hover{border-color:var(--muted);}
.dp-btn-locked{background:transparent;color:var(--muted);border:1px dashed var(--line);cursor:not-allowed;}
.dp-btn-sm{padding:9px 13px;font-size:11px;}
.dp-btn-block{width:100%;margin-top:14px;text-decoration:none;}
.dp-btn:disabled{opacity:.55;cursor:not-allowed;}
.dp-chip{display:inline-flex;align-items:center;gap:7px;background:var(--panel-2);color:var(--txt);
  border:1px solid var(--line);border-radius:2px;padding:9px 14px;font-size:13.5px;transition:all .14s;}
.dp-chip:hover{border-color:var(--amber);color:var(--amber);}
.dp-chip.is-active{background:var(--amber);color:var(--ink);border-color:var(--amber);}
.dp-swatch{width:11px;height:11px;border-radius:50%;display:inline-block;border:1px solid rgba(0,0,0,.3);flex:none;}
.dp-eyebrow{font-size:10.5px;letter-spacing:.19em;text-transform:uppercase;margin-bottom:14px;}
.dp-eyebrow.tone-amber{color:var(--amber);}
.dp-eyebrow.tone-ink{color:#6E7566;}
.dp-textlink{background:none;border:0;color:var(--amber);font:inherit;text-decoration:underline;
  text-underline-offset:3px;padding:0 0 0 12px;}

/* hero --------------------------------------------------------------------- */
.dp-hero{max-width:1240px;margin:0 auto;padding:76px 26px 84px;}
.dp-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center;}
.dp-h1{font-size:clamp(46px,6.6vw,86px);margin:0 0 22px;}
.dp-h1-accent{color:var(--amber);}
.dp-h2{font-size:clamp(28px,3.6vw,44px);margin:0 0 16px;}
.dp-lede{font-size:17px;color:#B9C2CB;max-width:48ch;margin:0 0 28px;}
.dp-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.dp-hero-note{font-size:11px;letter-spacing:.07em;text-transform:uppercase;}
.dp-hero-stats{display:flex;gap:34px;margin:44px 0 0;padding-top:22px;border-top:1px solid var(--line);flex-wrap:wrap;}
.dp-hero-stats dt{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.dp-hero-stats dd{margin:5px 0 0;font-size:13.5px;}
.dp-hero-demo{background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;
  box-shadow:0 26px 60px rgba(0,0,0,.4);}
.dp-demo-head{display:flex;align-items:center;gap:9px;padding:12px 16px;border-bottom:1px solid var(--line);
  font-size:10.5px;letter-spacing:.16em;color:var(--muted);}
.dp-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 3px rgba(95,211,165,.16);}
.dp-demo-body{padding:20px 18px 22px;display:flex;flex-direction:column;gap:12px;min-height:250px;}
.dp-demo-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.dp-bubble{padding:12px 15px;border-radius:3px;font-size:14.5px;max-width:88%;}
.dp-bubble-agent{background:var(--panel-2);border-left:2px solid var(--amber);align-self:flex-start;}
.dp-bubble-user{background:var(--amber);color:var(--ink);align-self:flex-end;font-weight:500;}
.dp-anim{animation:dpFade .45s ease both;}
.dp-delay-1{animation-delay:.7s;}
.dp-delay-2{animation-delay:1.4s;}
@keyframes dpFade{from{opacity:0;transform:translateY(7px);}to{opacity:1;transform:none;}}

/* pipeline ----------------------------------------------------------------- */
.dp-band{background:var(--paper);color:var(--ink);}
.dp-band-inner{max-width:1240px;margin:0 auto;padding:70px 26px;}
.dp-pipeline{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--paper-line);}
.dp-stage{padding:26px 24px 30px 0;border-right:1px solid var(--paper-line);}
.dp-stage:last-child{border-right:0;}
.dp-stage:not(:first-child){padding-left:24px;}
.dp-stage-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.dp-stage-n{font-size:11px;letter-spacing:.16em;color:#8A9081;}
.dp-status{font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;padding:2px 6px;border-radius:2px;}
.dp-status.is-live{background:#1F6B4E;color:#DFF6EA;}
.dp-status.is-soon{background:#D9DCD4;color:#6B7064;border:1px dashed #A9AEA1;}
.dp-stage-t{font-size:27px;margin:0 0 8px;}
.dp-stage p{margin:0;font-size:14.5px;color:#4A5049;}

/* spec band ---------------------------------------------------------------- */
.dp-specband{border-top:1px solid var(--line);}
.dp-specband-inner{max-width:1240px;margin:0 auto;padding:74px 26px;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;}
.dp-fieldlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);columns:2;column-gap:26px;}
.dp-fieldlist li{display:flex;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);
  font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;break-inside:avoid;}
.dp-fieldlist-n{color:var(--amber);}

/* intake ------------------------------------------------------------------- */
.dp-intake{max-width:1180px;margin:0 auto;padding:34px 26px 64px;}
.dp-intake-grid{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start;}
.dp-chat{background:var(--panel);border:1px solid var(--line);border-radius:4px;display:flex;flex-direction:column;min-height:540px;}
.dp-chat-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;
  border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;}
.dp-back{background:none;border:0;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;}
.dp-back:hover{color:var(--amber);}
.dp-chat-scroll{flex:1;padding:22px 18px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;max-height:420px;}
.dp-answer{border-top:1px solid var(--line);padding:16px 18px 18px;}
.dp-chips{display:flex;flex-wrap:wrap;gap:8px;}
.dp-chips-sm .dp-chip{padding:6px 11px;font-size:12px;}
.dp-input-row{display:flex;gap:8px;margin-top:14px;}
.dp-input{flex:1;width:100%;background:var(--asphalt);border:1px solid var(--line);border-radius:3px;
  padding:11px 13px;color:var(--txt);font-family:'Barlow',sans-serif;font-size:14.5px;}
.dp-input::placeholder{color:#65717D;}
.dp-input:focus{border-color:var(--amber);outline:none;}
.dp-textarea{resize:vertical;line-height:1.5;}
.dp-send{padding:11px 16px;}
.dp-sheet{background:var(--paper);color:var(--ink);border-radius:4px;overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.32);position:sticky;top:86px;}
.dp-sheet-head{display:flex;justify-content:space-between;padding:12px 16px;background:var(--ink);
  color:var(--paper);font-size:10.5px;letter-spacing:.17em;}
.dp-sheet-list{margin:0;padding:6px 16px 12px;}
.dp-sheet-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--paper-line);font-size:11.5px;}
.dp-sheet-row dt{color:#7A8074;letter-spacing:.09em;text-transform:uppercase;}
.dp-sheet-row dd{margin:0;text-align:right;color:#9DA294;}
.dp-sheet-row.is-set dd{color:var(--ink);font-weight:600;}
.dp-sheet-blank{color:#B4B9AC;}
.dp-sheet-foot{padding:12px 16px;font-size:10.5px;line-height:1.5;background:var(--paper-2);color:#6E7466;}

/* searching ---------------------------------------------------------------- */
.dp-searching{max-width:620px;margin:0 auto;padding:110px 26px 140px;text-align:center;}
.dp-spinner{width:30px;height:30px;margin:0 auto 18px;border:2px solid var(--line);border-top-color:var(--amber);
  border-radius:50%;animation:dpSpin 1s linear infinite;}
@keyframes dpSpin{to{transform:rotate(360deg);}}
.dp-searchlines{list-style:none;padding:0;margin:26px 0 0;display:inline-block;text-align:left;}
.dp-searchlines li{padding:7px 0;font-size:12px;letter-spacing:.05em;color:#5D6975;
  animation:dpOn .4s ease forwards;opacity:0;}
.dp-searchlines li:nth-child(1){animation-delay:.1s;}
.dp-searchlines li:nth-child(2){animation-delay:.5s;}
.dp-searchlines li:nth-child(3){animation-delay:.9s;}
.dp-searchlines li:nth-child(4){animation-delay:1.3s;}
@keyframes dpOn{to{opacity:1;color:var(--txt);}}

/* results ------------------------------------------------------------------ */
.dp-results{max-width:1360px;margin:0 auto;padding:32px 26px 70px;}
.dp-results-sub{font-size:12px;letter-spacing:.05em;margin:6px 0 0;}
.dp-relaxed{background:rgba(255,176,32,.09);border:1px solid rgba(255,176,32,.4);border-left:3px solid var(--amber);
  border-radius:3px;padding:16px 18px;margin:22px 0 0;}
.dp-relaxed strong{display:block;font-size:19px;color:var(--amber);margin-bottom:6px;}
.dp-relaxed p{margin:0;font-size:14.5px;color:#CBD4DD;}
.dp-read{display:flex;background:var(--panel);border:1px solid var(--line);border-radius:4px;margin:22px 0;overflow:hidden;}
.dp-read-rail{width:3px;background:linear-gradient(180deg,var(--amber),var(--mint));flex:none;}
.dp-read-body{padding:24px 28px 26px;}
.dp-read-head{display:flex;align-items:center;gap:9px;font-size:10.5px;letter-spacing:.17em;
  text-transform:uppercase;color:var(--amber);margin-bottom:14px;flex-wrap:wrap;}
.dp-read-head .dp-muted{letter-spacing:.09em;}
.dp-read-loading{font-size:12px;color:var(--muted);letter-spacing:.06em;}
.dp-read-headline{font-size:clamp(22px,2.6vw,32px);margin:0 0 14px;max-width:28ch;}
.dp-read-p{margin:0 0 12px;color:#BCC5CE;max-width:78ch;}
.dp-read-price{margin:16px 0 0;padding:13px 15px;background:var(--panel-2);border-left:2px solid var(--mint);
  color:#DCE6E1;font-size:14.5px;max-width:78ch;}
.dp-read-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px;}
.dp-read-list li{font-size:14px;color:#AFB9C3;padding-left:16px;position:relative;}
.dp-read-list li::before{content:"›";position:absolute;left:0;color:var(--amber);}

.dp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px;}
.dp-sort{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.dp-sort select{background:var(--panel-2);border:1px solid var(--line);border-radius:2px;color:var(--txt);
  padding:8px 11px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;}
.dp-filter-toggle{display:none;}
.dp-results-grid{display:grid;grid-template-columns:250px 1fr;gap:28px;align-items:start;}
.dp-filters{position:sticky;top:86px;background:var(--panel);border:1px solid var(--line);border-radius:4px;}
.dp-filter-inner{padding:16px 18px 20px;}
.dp-filter-head{display:flex;justify-content:space-between;align-items:center;font-size:10.5px;
  letter-spacing:.17em;color:var(--amber);padding-bottom:12px;border-bottom:1px solid var(--line);}
.dp-fieldset{border:0;padding:16px 0 0;margin:0;}
.dp-fieldset legend{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 0 9px;}
.dp-range{width:100%;accent-color:var(--amber);}

/* cards -------------------------------------------------------------------- */
.dp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:20px;}
.dp-card{background:var(--paper);color:var(--ink);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 12px 30px rgba(0,0,0,.28);transition:transform .18s,box-shadow .18s;}
.dp-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(0,0,0,.36);}
.dp-card.is-sample{border:1px dashed #A9AEA1;}
.dp-card-photo{position:relative;background:linear-gradient(160deg,#DFE2DB,#C9CEC4);}
.dp-photo{position:relative;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.dp-photo-svg{width:100%;height:100%;}
.dp-photo-img{width:100%;height:100%;object-fit:cover;}
.dp-photo-tag{position:absolute;bottom:6px;right:9px;font-size:8px;letter-spacing:.13em;color:#8A9082;}
.dp-sample-stamp{position:absolute;bottom:8px;left:10px;font-size:8.5px;letter-spacing:.2em;
  background:var(--ink);color:var(--amber);padding:3px 7px;border-radius:2px;}
.dp-card-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;}
.dp-badge{font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;padding:3px 7px;border-radius:2px;font-weight:600;}
.dp-badge.cond-new{background:var(--ink);color:var(--amber);}
.dp-badge.cond-certified{background:#1F6B4E;color:#DFF6EA;}
.dp-badge.cond-used{background:#5B6152;color:#EDEFE8;}
.dp-badge-match{background:var(--amber);color:var(--ink);}
.dp-save{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;border:0;
  background:rgba(18,23,28,.72);color:#E7EAE5;display:flex;align-items:center;justify-content:center;}
.dp-save.is-saved{color:var(--alert);}
.dp-card-body{padding:16px 17px 18px;display:flex;flex-direction:column;flex:1;}
.dp-card-title{font-size:24px;margin:0;}
.dp-card-trim{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#7A8074;margin-top:3px;}

/* the honesty flags — what this car does NOT satisfy */
.dp-flags{list-style:none;margin:11px 0 0;padding:9px 11px;background:#F6E7CF;border-left:3px solid #C77B1F;border-radius:2px;}
.dp-flags li{font-size:10.5px;line-height:1.6;color:#6B4715;letter-spacing:.02em;}

.dp-card-price{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:14px 0 0;
  padding:12px 0;border-top:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);}
.dp-label{display:block;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:#8A9082;}
.dp-price{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:34px;line-height:1;}
.dp-card-msrp{font-size:11px;text-align:right;color:#6E7466;}
.dp-under{display:block;color:#1F6B4E;font-weight:600;margin-top:3px;}
.dp-over{display:block;color:var(--alert);font-weight:600;margin-top:3px;}
.dp-spec{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;margin:12px 0 0;}
.dp-spec > div{padding:7px 0;border-bottom:1px solid #D6DACF;}
.dp-spec dt{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#8A9082;}
.dp-spec dd{margin:2px 0 0;font-size:12px;display:flex;align-items:center;gap:6px;}
.dp-ids{display:flex;flex-direction:column;gap:3px;margin:11px 0 0;font-size:9.5px;letter-spacing:.06em;color:#8A9082;}
.dp-ids b{color:var(--ink);font-weight:500;}
.dp-dealer{display:flex;gap:9px;align-items:flex-start;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--paper-line);}
.dp-dealer svg{color:#7A8074;margin-top:3px;flex:none;}
.dp-dealer-name{font-weight:600;font-size:14px;}
.dp-dealer .dp-muted{font-size:10px;color:#7A8074;}
.dp-card-actions{display:flex;gap:7px;margin-top:14px;flex-wrap:wrap;}
.dp-card-actions .dp-btn-ghost{color:var(--ink);border-color:#B8BDB0;}
.dp-card-actions .dp-btn-locked{border-color:#C3C8BE;color:#9BA093;}

.dp-empty{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:52px 30px;text-align:center;}
.dp-empty h3{font-size:26px;margin:0 0 8px;}
.dp-empty p{color:var(--muted);margin:0 0 20px;}

/* modals ------------------------------------------------------------------- */
.dp-modal-wrap{position:fixed;inset:0;background:rgba(8,11,14,.74);backdrop-filter:blur(3px);
  display:flex;align-items:center;justify-content:center;padding:22px;z-index:60;overflow-y:auto;}
.dp-modal{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:4px;
  padding:30px;width:100%;max-width:420px;margin:auto;}
.dp-modal.is-wide{max-width:620px;}
.dp-modal-close{position:absolute;top:12px;right:14px;background:none;border:0;color:var(--muted);font-size:16px;}
.dp-modal-title{font-size:28px;margin:0 0 10px;}
.dp-modal-sub{color:#AEB8C2;font-size:14.5px;margin:0 0 22px;}
.dp-auth-stack{display:flex;flex-direction:column;gap:10px;}
.dp-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--paper);
  color:var(--ink);border:0;border-radius:3px;padding:12px;font-size:14px;font-weight:600;}
.dp-auth-btn:hover{background:#fff;}
.dp-auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;margin:6px 0;}
.dp-auth-divider::before,.dp-auth-divider::after{content:"";flex:1;height:1px;background:var(--line);}
.dp-auth-note{font-size:10px;line-height:1.6;margin:16px 0 0;}
.dp-warn{background:rgba(255,176,32,.12);border:1px solid rgba(255,176,32,.4);color:var(--amber);
  padding:9px 12px;border-radius:3px;font-size:11px;margin-bottom:16px;letter-spacing:.04em;}
.dp-form{display:grid;gap:12px;}
.dp-form label{display:grid;gap:5px;}
.dp-form label span{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);}
.dp-detail-spec{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:0;}
.dp-detail-spec > div{padding:8px 0;border-bottom:1px solid var(--line);}
.dp-detail-spec dt{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);}
.dp-detail-spec dd{margin:2px 0 0;font-size:12px;word-break:break-all;}
.dp-locked{display:flex;align-items:center;gap:8px;margin-top:18px;padding:11px 13px;border:1px dashed var(--line);
  border-radius:3px;color:var(--muted);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;}
.dp-modal .dp-photo{border-radius:3px;margin-bottom:18px;background:linear-gradient(160deg,#DFE2DB,#C9CEC4);}

/* footer ------------------------------------------------------------------- */
.dp-footer{border-top:1px solid var(--line);margin-top:30px;}
.dp-footer-inner{max-width:1360px;margin:0 auto;padding:24px 26px;display:flex;justify-content:space-between;
  gap:16px;flex-wrap:wrap;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;}

/* responsive --------------------------------------------------------------- */
@media (max-width:1080px){
  .dp-hero-grid,.dp-specband-inner{grid-template-columns:1fr;gap:40px;}
  .dp-pipeline{grid-template-columns:1fr 1fr;}
  .dp-stage{border-bottom:1px solid var(--paper-line);}
  .dp-stage:nth-child(2n){border-right:0;}
  .dp-intake-grid,.dp-results-grid{grid-template-columns:1fr;}
  .dp-sheet{position:static;}
  .dp-filters{display:none;position:static;}
  .dp-filters.is-open{display:block;margin-bottom:20px;}
  .dp-filter-toggle{display:inline-flex;}
}
@media (max-width:640px){
  .dp-hero{padding:48px 18px 56px;}
  .dp-band-inner,.dp-specband-inner{padding:52px 18px;}
  .dp-results,.dp-intake{padding-left:16px;padding-right:16px;}
  .dp-pipeline{grid-template-columns:1fr;}
  .dp-stage{border-right:0;padding-left:0 !important;}
  .dp-fieldlist{columns:1;}
  .dp-cards,.dp-spec,.dp-detail-spec{grid-template-columns:1fr;}
  .dp-hero-stats{gap:22px;}
  .dp-nav{padding:12px 16px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important;}
  .dp-searchlines li,.dp-anim{opacity:1 !important;}
}
