/* ==========================================================================
   Colat — Drive with Us (becomeapartner.html)
   Inherits from /assets/styles.css. Adds driver hero, dashboard mock,
   stats strip, benefits, requirements, process, application form.
   ========================================================================== */

/* ============= HERO — split (text + stacked cards) ============= */
.dvr-hero{
  position:relative;max-width:var(--max);margin:0 auto;
  padding:clamp(7rem,12vh,10rem) clamp(1.25rem,4vw,3rem) clamp(4rem,8vh,6rem);
}
.dvr-hero-grid{
  display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,5rem);
  align-items:center;min-height:520px;
}
.dvr-hero-text{max-width:560px}

/* ============= HERO STACKED CARDS ============= */
.dvr-stack{
  position:relative;width:100%;height:440px;
  perspective:1400px;
}
.dvr-stack-card{
  position:absolute;
  background:var(--surface);
  border:1px solid var(--line);border-radius:16px;
  padding:1.15rem 1.25rem 1.2rem;
  display:flex;flex-direction:column;gap:.7rem;
  box-shadow:
    0 1px 0 rgba(255,255,255,.6) inset,
    0 6px 18px rgba(10,49,77,.08),
    0 24px 48px rgba(10,49,77,.10);
  transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out);
  will-change:transform;
  transform-origin:center center;
}

/* Shared row + tag styles */
.dvr-stack-row{
  display:flex;align-items:center;justify-content:space-between;gap:.7rem;
}
.dvr-stack-tag{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.28rem .6rem;border-radius:100px;
  font-family:var(--sans);font-size:.62rem;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--slate);background:var(--soft);
}
.dvr-stack-tag--live{color:var(--green-darker);background:var(--green-mist)}
.dvr-stack-dot{
  width:6px;height:6px;border-radius:50%;background:var(--green);
  box-shadow:0 0 0 0 rgba(87,163,49,.5);
  animation:dvrStackPulse 1.8s ease-out infinite;
}
@keyframes dvrStackPulse{0%{box-shadow:0 0 0 0 rgba(87,163,49,.5)}70%{box-shadow:0 0 0 8px rgba(87,163,49,0)}100%{box-shadow:0 0 0 0 rgba(87,163,49,0)}}
.dvr-stack-meta{font-family:var(--sans);font-size:.72rem;color:var(--slate);font-variant-numeric:tabular-nums}

/* Card 1: New trip */
.dvr-stack-card--trip{
  top:0;right:0;width:300px;z-index:3;
  transform:rotate(-6deg);
}
.dvr-stack-route{
  display:flex;align-items:center;gap:.55rem;
  font-family:var(--sans);font-weight:700;color:var(--ink);
  letter-spacing:-.015em;font-size:1.05rem;line-height:1.15;
}
.dvr-stack-city{white-space:nowrap}
.dvr-stack-arrow{width:28px;height:8px;color:var(--slate-2);flex-shrink:0}
.dvr-stack-foot{
  display:flex;align-items:baseline;justify-content:space-between;gap:.7rem;
  padding-top:.7rem;border-top:1px solid var(--line);
  font-family:var(--sans);font-size:.78rem;color:var(--slate);
}
.dvr-stack-foot strong{color:var(--ink);font-weight:700}
.dvr-stack-fare{font-size:.95rem;font-weight:700;color:var(--ink)}

/* Card 2: This week */
.dvr-stack-card--week{
  top:130px;left:0;width:300px;z-index:2;
  transform:rotate(4deg);
}
.dvr-stack-delta{
  display:inline-flex;align-items:center;gap:.3rem;
  font-family:var(--sans);font-size:.72rem;font-weight:700;
  color:var(--green-darker);font-variant-numeric:tabular-nums;
}
.dvr-stack-delta svg{width:11px;height:11px;color:var(--green-darker)}
.dvr-stack-amount{
  font-family:var(--sans);font-weight:700;
  font-size:2.1rem;line-height:.95;letter-spacing:-.035em;
  color:var(--ink);font-variant-numeric:tabular-nums;
}
.dvr-stack-spark{width:100%;height:34px;display:block;margin:.1rem 0 .2rem}
.dvr-stack-meta-row{
  display:flex;justify-content:space-between;gap:.7rem;
  font-family:var(--sans);font-size:.7rem;color:var(--slate);
  padding-top:.6rem;border-top:1px solid var(--line);
}

/* Card 3: Payout notification (wider, more horizontal) */
.dvr-stack-card--payout{
  bottom:0;right:20px;width:340px;z-index:1;
  transform:rotate(-3deg);
  padding:1rem 1.2rem;
}
.dvr-stack-payout{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;
}
.dvr-stack-check{
  width:36px;height:36px;border-radius:50%;
  background:var(--green-mist);color:var(--green-darker);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.dvr-stack-check svg{width:18px;height:18px}
.dvr-stack-payout-body{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.dvr-stack-payout-title{font-family:var(--sans);font-weight:700;font-size:.92rem;color:var(--ink);letter-spacing:-.01em}
.dvr-stack-payout-meta{font-family:var(--sans);font-size:.7rem;color:var(--slate);font-variant-numeric:tabular-nums}
.dvr-stack-payout-amt{
  font-family:var(--sans);font-weight:700;font-size:1rem;
  color:var(--green-darker);letter-spacing:-.01em;
}

/* Hover — fan out / straighten */
.dvr-stack:hover .dvr-stack-card--trip{transform:rotate(-3deg) translateY(-6px);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 12px 28px rgba(10,49,77,.12),0 32px 60px rgba(10,49,77,.14)}
.dvr-stack:hover .dvr-stack-card--week{transform:rotate(2deg) translateY(-6px);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 12px 28px rgba(10,49,77,.12),0 32px 60px rgba(10,49,77,.14)}
.dvr-stack:hover .dvr-stack-card--payout{transform:rotate(-1deg) translateY(-6px);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 12px 28px rgba(10,49,77,.12),0 32px 60px rgba(10,49,77,.14)}

@media (prefers-reduced-motion: reduce){
  .dvr-stack-card,.dvr-stack:hover .dvr-stack-card--trip,.dvr-stack:hover .dvr-stack-card--week,.dvr-stack:hover .dvr-stack-card--payout{transition:none;transform:none}
  .dvr-stack-dot{animation:none}
}
.dvr-hero h1{
  font-family:var(--sans);font-weight:700;
  font-size:clamp(2.6rem,5.6vw,4.6rem);line-height:1.02;letter-spacing:-.035em;
  color:var(--ink);margin-bottom:1.3rem;text-wrap:balance;
}
.dvr-hero h1 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--green);letter-spacing:-.025em}
.dvr-hero .dvr-sub{
  font-family:var(--sans);font-size:clamp(1rem,1.25vw,1.15rem);
  color:var(--slate);line-height:1.6;max-width:48ch;margin-bottom:1.8rem;
}
.dvr-hero-actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}
.dvr-cta{
  display:inline-flex;align-items:center;gap:.7rem;
  padding:1.1rem 1.7rem;
  font-family:var(--sans);font-size:.92rem;font-weight:600;letter-spacing:-.005em;
  color:#fff;background:var(--ink);
  border:1.5px solid var(--ink);border-radius:12px;
  transition:background-color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease);
}
.dvr-cta:hover{background:var(--navy);border-color:var(--navy);transform:translateY(-1px);box-shadow:0 10px 22px rgba(10,49,77,.18)}
.dvr-cta svg{transition:transform .25s var(--ease)}
.dvr-cta:hover svg{transform:translateX(3px)}
.dvr-link{
  font-family:var(--sans);font-size:.92rem;font-weight:600;color:var(--ink);
  text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px;
  text-decoration-color:var(--line-strong);
  transition:text-decoration-color .25s var(--ease);
}
.dvr-link:hover{text-decoration-color:var(--ink)}

/* ============= SECTION COMMONS ============= */
.dvr-sec{max-width:var(--max);margin:0 auto;padding:clamp(5rem,9vh,7.5rem) clamp(1.25rem,4vw,3rem)}
.dvr-sec-head{
  display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:end;
  margin-bottom:clamp(2.4rem,5vw,3.6rem);
  padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--line);
}
.dvr-sec-head h2{
  font-family:var(--sans);font-weight:700;
  font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1;letter-spacing:-.035em;
  color:var(--ink);max-width:14ch;text-wrap:balance;
}
.dvr-sec-head h2 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--green);letter-spacing:-.025em}
.dvr-sec-head p{font-family:var(--sans);font-size:1rem;color:var(--slate);line-height:1.55;max-width:46ch;align-self:end;font-weight:400}

/* ============= BENEFITS BENTO ============= */
.dvr-bento{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:minmax(180px,auto);
  gap:14px;
}
.dvr-bento-cell{
  position:relative;display:flex;flex-direction:column;gap:.65rem;
  padding:1.5rem 1.5rem 1.6rem;
  background:var(--surface);
  border:1px solid var(--line);border-radius:18px;
  transition:border-color .35s var(--ease),transform .35s var(--ease),box-shadow .35s var(--ease);
  overflow:hidden;isolation:isolate;
}
.dvr-bento-cell:hover{border-color:var(--line-2);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.dvr-bento-tag{
  font-family:var(--sans);font-size:.6rem;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;color:var(--slate);
}
.dvr-bento-cell h3{
  font-family:var(--sans);font-size:clamp(1.05rem,1.4vw,1.25rem);font-weight:700;
  color:var(--ink);letter-spacing:-.02em;line-height:1.2;text-wrap:balance;
  margin-top:.2rem;
}
.dvr-bento-cell h3 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--green);letter-spacing:-.015em}
.dvr-bento-cell p{font-family:var(--sans);font-size:.9rem;color:var(--slate);line-height:1.55;max-width:42ch}

/* ----- Spans + cell variants ----- */
.dvr-bento-payouts{grid-column:span 2;grid-row:span 1;background:#0a0908;color:#fff;border-color:#0a0908;padding-bottom:1.4rem}
.dvr-bento-payouts .dvr-bento-tag{color:rgba(255,255,255,.55)}
.dvr-bento-payouts h3{color:#fff;font-size:clamp(1.5rem,2vw,2rem);line-height:1.05;max-width:14ch;letter-spacing:-.025em}
.dvr-bento-payouts h3 em{color:var(--green)}
.dvr-bento-payouts p{color:rgba(255,255,255,.65);font-size:.95rem;max-width:38ch}

.payouts-cal{
  display:grid;grid-template-columns:repeat(7,1fr);gap:6px;
  margin-top:auto;padding-top:1.1rem;
}
.payouts-cal .cal-day{
  display:flex;align-items:center;justify-content:center;
  height:36px;border-radius:8px;
  font-family:var(--sans);font-size:.78rem;font-weight:700;
  color:rgba(255,255,255,.6);
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}
.payouts-cal .cal-day.muted{opacity:.5}
.payouts-cal .cal-day.is-payday{
  background:var(--green);color:#fff;border-color:var(--green);
  box-shadow:0 0 0 3px rgba(87,163,49,.22),0 6px 14px rgba(87,163,49,.25);
  position:relative;
}
.payouts-cal .cal-day.is-payday::after{
  content:'';position:absolute;top:-3px;right:-3px;
  width:8px;height:8px;border-radius:50%;background:var(--green);
  border:2px solid #0a0908;
}
.payouts-meta{
  display:flex;justify-content:space-between;align-items:baseline;
  font-family:var(--sans);font-size:.78rem;color:rgba(255,255,255,.6);
  font-variant-numeric:tabular-nums;padding-top:.4rem;
}
.payouts-meta strong{color:#fff;font-weight:700}

/* Fair commission cell */
.dvr-bento-fair{grid-column:span 1}
.fair-pct{display:flex;flex-direction:column;gap:.2rem;margin-top:.3rem}
.fair-pct .num{
  font-family:var(--sans);font-size:2.8rem;font-weight:700;color:var(--ink);
  letter-spacing:-.035em;line-height:.9;font-variant-numeric:tabular-nums;
  display:inline-flex;align-items:baseline;gap:.05em;
}
.fair-pct .num small{font-size:.45em;font-weight:600;color:var(--slate)}
.fair-pct .lab{font-family:var(--sans);font-size:.68rem;color:var(--slate);letter-spacing:.04em;text-transform:uppercase;font-weight:600}

/* Insurance cell */
.dvr-bento-insurance{grid-column:span 1;background:linear-gradient(165deg,var(--green-mist) 0%,#f3faec 100%);border-color:rgba(87,163,49,.18)}
.dvr-bento-insurance .dvr-bento-tag{color:var(--green-darker)}
.dvr-bento-insurance h3{color:var(--green-deep)}
.dvr-bento-insurance p{color:var(--green-darker);opacity:.85}
.insurance-shield{align-self:flex-start;margin-top:.2rem}
.insurance-shield svg{width:54px;height:54px;display:block}

/* Support cell (wide, dark) */
.dvr-bento-support{grid-column:span 2;background:#0a0908;color:#fff;border-color:#0a0908}
.dvr-bento-support .dvr-bento-tag{color:rgba(255,255,255,.55)}
.dvr-bento-support h3{color:#fff;font-size:clamp(1.4rem,1.85vw,1.85rem);max-width:18ch;letter-spacing:-.025em;line-height:1.1}
.dvr-bento-support h3 em{color:var(--green)}
.dvr-bento-support p{color:rgba(255,255,255,.65);font-size:.95rem;max-width:42ch}
.support-stack{
  display:flex;align-items:center;justify-content:space-between;gap:1.2rem;
  margin-top:auto;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.10);
}
.support-avatars{display:flex;align-items:center}
.support-avatar{
  width:36px;height:36px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--sans);font-weight:700;font-size:.7rem;letter-spacing:.02em;
  color:#fff;border:2px solid #0a0908;
}
.support-avatar + .support-avatar{margin-left:-12px}
.support-wave{flex:1;height:36px;max-width:200px}

/* Flex schedule cell */
.dvr-bento-flex{grid-column:span 1}
.flex-dial{align-self:flex-start;margin-top:.2rem}
.flex-dial svg{width:58px;height:58px;display:block}

/* Routes cell */
.dvr-bento-routes{grid-column:span 1}
.routes-mini{display:flex;flex-direction:column;gap:.3rem;margin-top:.2rem}
.routes-mini svg{width:100%;height:50px;display:block}
.routes-mini-labels{
  display:flex;justify-content:space-between;
  font-family:var(--sans);font-size:.7rem;font-weight:600;color:var(--slate);
  letter-spacing:-.005em;
}
.routes-mini-labels span:last-child{color:var(--green-darker)}

/* ============= REQUIREMENTS — hairline list ============= */
.dvr-requirements{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid var(--line-strong);
}
.req{
  display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;
  padding:1.2rem 1.4rem 1.2rem 0;
  border-bottom:1px solid var(--line);
}
.req:nth-child(odd){padding-right:1.4rem}
.req:nth-child(even){padding-left:1.4rem;border-left:1px solid var(--line)}
.req-num{
  font-family:var(--serif);font-style:italic;font-weight:500;
  font-size:1.4rem;color:var(--green-darker);font-variant-numeric:tabular-nums;
  width:2rem;text-align:left;line-height:1;
}
.req-body{display:flex;flex-direction:column;gap:.15rem}
.req-title{font-family:var(--sans);font-size:.95rem;font-weight:700;color:var(--ink);letter-spacing:-.01em;line-height:1.25}
.req-meta{font-family:var(--sans);font-size:.78rem;color:var(--slate);line-height:1.4}
.req-check{
  width:24px;height:24px;border-radius:50%;background:var(--green-mist);
  display:flex;align-items:center;justify-content:center;
  color:var(--green-darker);flex-shrink:0;
}
.req-check svg{width:12px;height:12px}

/* ============= PROCESS — 4 step cards with connector ============= */
.dvr-process-wrap{position:relative}

/* Animated dashed line behind the cards */
.dvr-process-line{
  position:absolute;left:0;right:0;
  top:34px; /* centered behind the badge */
  width:100%;height:8px;
  z-index:0;pointer-events:none;
}
.dvr-process-line path{
  stroke-dasharray:2 5;
  animation:procDash 18s linear infinite;
}
@keyframes procDash{to{stroke-dashoffset:-140}}
@media (prefers-reduced-motion: reduce){.dvr-process-line path{animation:none}}

.dvr-process{
  position:relative;z-index:1;
  list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:0;padding:0;
}

.dvr-step{
  display:flex;flex-direction:column;align-items:center;gap:.85rem;
  text-align:center;
}

.dvr-step-badge{
  display:flex;align-items:center;justify-content:center;
  width:56px;height:56px;border-radius:50%;
  background:var(--surface);
  border:1.5px solid var(--line-strong);
  font-family:var(--sans);font-weight:700;font-size:1.15rem;color:var(--ink);
  font-variant-numeric:tabular-nums;
  position:relative;z-index:2;flex-shrink:0;
  transition:background-color .3s var(--ease),border-color .3s var(--ease),color .3s var(--ease),transform .3s var(--ease);
}
.dvr-step:hover .dvr-step-badge{transform:translateY(-2px);border-color:var(--ink)}
.dvr-step.is-active .dvr-step-badge{
  background:var(--green);color:#fff;border-color:var(--green);
  box-shadow:0 0 0 6px var(--green-mist),0 8px 18px rgba(87,163,49,.25);
}

.dvr-step-card{
  position:relative;flex:1;width:100%;
  display:flex;flex-direction:column;align-items:center;gap:.65rem;
  padding:1.4rem 1.2rem 1.2rem;
  background:var(--surface);
  border:1px solid var(--line);border-radius:14px;
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease);
}
.dvr-step:hover .dvr-step-card{border-color:var(--line-2);box-shadow:var(--shadow-md);transform:translateY(-2px)}
.dvr-step.is-active .dvr-step-card{border-color:rgba(87,163,49,.4);box-shadow:0 8px 24px rgba(87,163,49,.10)}

.dvr-step-icon{
  width:36px;height:36px;border-radius:50%;
  background:var(--soft);color:var(--ink-2);
  display:flex;align-items:center;justify-content:center;
}
.dvr-step-icon svg{width:18px;height:18px}
.dvr-step.is-active .dvr-step-icon{background:var(--green-mist);color:var(--green-darker)}

.dvr-step h4{
  font-family:var(--sans);font-size:1rem;font-weight:700;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;
}
.dvr-step p{
  font-family:var(--sans);font-size:.85rem;color:var(--slate);line-height:1.55;
  max-width:24ch;
}

.dvr-step-chip{
  display:inline-flex;align-items:center;
  padding:.32rem .65rem;margin-top:.2rem;
  font-family:var(--sans);font-size:.7rem;font-weight:700;letter-spacing:.04em;
  color:var(--ink);background:var(--soft);
  border-radius:100px;font-variant-numeric:tabular-nums;
  text-transform:uppercase;
}
.dvr-step.is-active .dvr-step-chip{color:var(--green-darker);background:var(--green-mist)}

/* ============= APPLICATION FORM ============= */
.dvr-form-section{
  max-width:var(--max);margin:0 auto;
  padding:clamp(3rem,6vh,5rem) clamp(1.25rem,4vw,3rem) clamp(5rem,9vh,7rem);
}
.dvr-form-grid{
  display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,5vw,5rem);
  align-items:start;
}
.dvr-form-intro h2{
  font-family:var(--sans);font-weight:700;
  font-size:clamp(2rem,4vw,3.2rem);line-height:1.02;letter-spacing:-.035em;
  color:var(--ink);margin-bottom:1.1rem;max-width:14ch;text-wrap:balance;
}
.dvr-form-intro h2 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--green);letter-spacing:-.025em}
.dvr-form-intro p{font-family:var(--sans);font-size:1rem;color:var(--slate);line-height:1.6;max-width:36ch}

.dvr-form-intro .dvr-form-quotes{
  margin-top:2.2rem;padding-top:1.6rem;border-top:1px solid var(--line);
  display:flex;flex-direction:column;gap:1.4rem;max-width:40ch;
}
.dvr-form-quote{
  display:flex;flex-direction:column;gap:.6rem;
}
.dvr-form-quote-text{
  font-family:var(--serif);font-size:1rem;color:var(--ink);line-height:1.45;font-style:italic;
}
.dvr-form-quote-by{
  display:flex;align-items:center;gap:.6rem;
  font-family:var(--sans);font-size:.78rem;color:var(--slate);
}
.dvr-form-quote-by strong{color:var(--ink);font-weight:700;letter-spacing:-.005em}
.dvr-form-quote-by .dvr-form-quote-avatar{
  width:28px;height:28px;border-radius:50%;
  background:linear-gradient(135deg,var(--navy),var(--ink));color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:700;font-size:.7rem;letter-spacing:.02em;flex-shrink:0;
}

/* The form itself */
.dvr-form{
  display:flex;flex-direction:column;gap:.7rem;
  padding:1.8rem 1.8rem 1.8rem;
  background:var(--surface);
  border:1px solid var(--line);border-radius:18px;
  box-shadow:0 1px 0 rgba(255,255,255,.5) inset,0 6px 18px rgba(10,49,77,.07);
}
.dvr-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.dvr-form-field{display:flex;flex-direction:column;gap:.35rem}
.dvr-form-field label{
  font-family:var(--sans);font-size:.65rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--slate);
}
.dvr-form-field input,.dvr-form-field select,.dvr-form-field textarea{
  width:100%;padding:.9rem 1rem;
  font-family:var(--sans);font-size:.95rem;font-weight:500;color:var(--ink);
  background:var(--soft);border:1.5px solid transparent;border-radius:10px;
  outline:none;transition:background-color .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease);
  appearance:none;resize:vertical;
}
.dvr-form-field input:hover,.dvr-form-field select:hover,.dvr-form-field textarea:hover{background:var(--soft-2)}
.dvr-form-field input:focus,.dvr-form-field select:focus,.dvr-form-field textarea:focus{background:var(--surface);border-color:var(--ink);box-shadow:0 0 0 4px rgba(12,34,54,.08)}
.dvr-form-field input::placeholder,.dvr-form-field textarea::placeholder{color:var(--slate-2)}
.dvr-form-field input.invalid,.dvr-form-field select.invalid,.dvr-form-field textarea.invalid{border-color:#c0392b;background:#fdf3f2}
.dvr-form-field select{
  cursor:pointer;padding-right:2.4rem;
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%231a1816' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 1rem center;
}
.dvr-form-field textarea{min-height:100px;line-height:1.5}

.dvr-form-error{
  display:none;align-items:center;gap:.5rem;
  padding:.7rem .9rem;margin-top:.4rem;
  font-family:var(--sans);font-size:.83rem;font-weight:500;color:#a52818;
  background:#fdecea;border:1px solid #f5c6c1;border-radius:10px;
}
.dvr-form-error.show{display:flex}

.dvr-form-submit{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  width:100%;margin-top:.5rem;padding:1.1rem;
  font-family:var(--sans);font-size:.95rem;font-weight:600;letter-spacing:-.005em;
  color:#fff;background:var(--ink);border:1.5px solid var(--ink);
  border-radius:12px;cursor:pointer;
  transition:background-color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease);
}
.dvr-form-submit:hover{background:var(--navy);border-color:var(--navy);transform:translateY(-1px);box-shadow:0 10px 22px rgba(10,49,77,.18)}
.dvr-form-submit[disabled]{opacity:.7;cursor:wait}

.dvr-form-foot{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--sans);font-size:.78rem;color:var(--slate);
  margin-top:.5rem;
}
.dvr-form-foot svg{color:var(--green);flex-shrink:0}

.dvr-form-success{
  display:none;flex-direction:column;align-items:center;gap:1.1rem;
  padding:2rem 1.5rem;text-align:center;
}
.dvr-form-success.show{display:flex}
.dvr-form-success-icon{
  width:56px;height:56px;border-radius:50%;
  background:var(--green-mist);color:var(--green-darker);
  display:flex;align-items:center;justify-content:center;
}
.dvr-form-success-icon svg{width:28px;height:28px}
.dvr-form-success h3{
  font-family:var(--sans);font-size:1.4rem;font-weight:700;color:var(--ink);
  letter-spacing:-.02em;line-height:1.15;
}
.dvr-form-success h3 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--green)}
.dvr-form-success p{font-family:var(--sans);font-size:.92rem;color:var(--slate);line-height:1.55;max-width:36ch}

/* ============= RESPONSIVE ============= */
@media(max-width:1024px){
  .dvr-hero-grid{grid-template-columns:1fr;gap:3rem;min-height:auto}
  .dvr-stack{height:auto;min-height:auto;display:flex;flex-direction:column;gap:1rem;perspective:none}
  .dvr-stack-card,
  .dvr-stack:hover .dvr-stack-card--trip,
  .dvr-stack:hover .dvr-stack-card--week,
  .dvr-stack:hover .dvr-stack-card--payout{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:100%;max-width:420px;margin:0 auto;transform:none}
  .dvr-sec-head{grid-template-columns:1fr;gap:1.2rem;align-items:start}
  .dvr-sec-head p{align-self:start}
  .dvr-bento{grid-template-columns:repeat(2,1fr)}
  .dvr-bento-payouts{grid-column:span 2;grid-row:auto}
  .dvr-bento-support{grid-column:span 2}
  .dvr-bento-fair,.dvr-bento-insurance,.dvr-bento-flex,.dvr-bento-routes{grid-column:span 1}
  .dvr-requirements{grid-template-columns:1fr}
  .req:nth-child(odd),.req:nth-child(even){padding:1rem 0;border-left:none}
  .dvr-process{grid-template-columns:repeat(2,1fr);gap:1.4rem 1rem}
  .dvr-process-line{display:none}
  .dvr-form-grid{grid-template-columns:1fr;gap:2.5rem}
}
@media(max-width:680px){
  .dvr-hero h1{font-size:clamp(2.2rem,9vw,2.8rem)}
  .dvr-bento{grid-template-columns:1fr;grid-auto-rows:auto}
  .dvr-bento-payouts,.dvr-bento-fair,.dvr-bento-insurance,.dvr-bento-support,.dvr-bento-flex,.dvr-bento-routes{grid-column:span 1}
  .dvr-bento-payouts,.dvr-bento-support{padding:1.5rem}
  .dvr-process{grid-template-columns:1fr;gap:1.2rem}
  .dvr-step-card{padding:1.2rem 1.1rem 1.1rem}
  .dvr-form-row{grid-template-columns:1fr}
  .dvr-form{padding:1.5rem}
}
