/*
Theme Name: DIA Ride Source
Theme URI: https://diaridesource.com/
Author: OpenAI
Author URI: https://openai.com/
Description: Custom WordPress theme for DIA Ride Source focused on acquiring vehicle owners for managed Turo income.
Version: 1.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Text Domain: dia-ride-source
*/

:root {
  --bg: #ffffff;
  --bg-soft: #f8fafc;
  --text: #0f172a;
  --muted: #475569;
  --line: #e2e8f0;
  --blue: #1d4ed8;
  --blue-soft: #eff6ff;
  --orange: #f97316;
  --orange-dark: #ea580c;
  --shadow: 0 20px 45px rgba(15, 23, 42, 0.08);
  --radius: 18px;
  --radius-lg: 28px;
  --max: 1200px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.site-main { display: block; }
.drs-container { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; }
.drs-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,0.95); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.drs-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 0; }
.drs-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.drs-brand-badge { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; background: var(--blue-soft); color: var(--blue); font-weight: 700; letter-spacing: 0.08em; border: 1px solid #dbeafe; flex: 0 0 auto; }
.drs-brand-title { font-size: 18px; font-weight: 700; }
.drs-brand-sub { font-size: 11px; text-transform: uppercase; letter-spacing: 0.2em; color: #64748b; margin-top: 2px; }
.drs-brand-logo { max-height: 58px; width: auto; display: block; }
.drs-brand-text { min-width: 0; }
.drs-form-placeholder { margin-top: 22px; border: 1px dashed #cbd5e1; background: #f8fafc; border-radius: 16px; padding: 16px; color: #334155; }
.drs-nav { display: flex; gap: 26px; color: #475569; font-size: 14px; }
.drs-nav a:hover, .drs-footer a:hover { color: var(--text); }
.drs-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 14px; padding: 14px 22px; font-weight: 700; border: 1px solid transparent; transition: 0.2s ease; cursor: pointer; }
.drs-btn-primary { background: var(--orange); color: #fff; box-shadow: 0 12px 30px rgba(249,115,22,.24); }
.drs-btn-primary:hover { background: var(--orange-dark); transform: translateY(-1px); color:#fff; }
.drs-btn-secondary { background:#fff; color: var(--text); border-color:#cbd5e1; }
.drs-btn-secondary:hover { background:#f8fafc; }
.drs-hero { background: linear-gradient(to bottom, #ffffff, #f8fafc); border-bottom: 1px solid var(--line); }
.drs-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:44px; align-items:center; padding:68px 0; }
.drs-eyebrow { display:inline-flex; align-items:center; padding:8px 14px; border-radius:999px; border:1px solid #bfdbfe; background: var(--blue-soft); color:#1e40af; font-size:14px; font-weight:700; margin-bottom:18px; }
.drs-hero h1 { font-size: clamp(40px, 6vw, 62px); line-height:1.05; margin:0; letter-spacing:-.03em; }
.drs-hero-copy p { margin:22px 0 0; font-size:19px; color: var(--muted); max-width:760px; }
.drs-hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.drs-pill-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.drs-pill { padding:10px 15px; border:1px solid var(--line); border-radius:999px; background:#fff; color:#334155; font-size:14px; }
.drs-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:28px; }
.drs-stat { border:1px solid var(--line); border-radius:16px; background:#fff; padding:18px; box-shadow:0 6px 16px rgba(15,23,42,.04); }
.drs-stat-value { font-size:21px; font-weight:700; }
.drs-stat-label { font-size:13px; color:#64748b; margin-top:6px; }
.drs-hero-card { background:#fff; border:1px solid var(--line); border-radius:var(--radius-lg); padding:26px; box-shadow:var(--shadow); }
.drs-hero-visual { border-radius:22px; min-height:520px; border:1px solid var(--line); background: radial-gradient(circle at top right, rgba(249,115,22,.18), transparent 28%), radial-gradient(circle at bottom left, rgba(29,78,216,.12), transparent 30%), linear-gradient(135deg, #ffffff 0%, #f8fafc 100%); position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; padding:28px; }
.drs-visual-top { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.drs-mini-logo { display:inline-flex; align-items:center; gap:12px; }
.drs-mini-badge { width:54px; height:54px; border-radius:16px; display:grid; place-items:center; background:#0f172a; color:#fff; font-weight:700; font-size:18px; letter-spacing:.08em; }
.drs-mini-title { font-weight:700; font-size:24px; line-height:1; }
.drs-mini-sub { margin-top:8px; color:#64748b; font-size:12px; text-transform:uppercase; letter-spacing:.18em; }
.drs-airport-chip { border-radius:999px; background:#fff; border:1px solid var(--line); padding:10px 14px; font-size:12px; font-weight:700; color:#334155; }
.drs-vehicle-illustration { position:relative; height:230px; margin:12px 0 4px; }
.drs-vehicle-body { position:absolute; left:50%; bottom:34px; transform:translateX(-50%); width:86%; height:118px; background:linear-gradient(180deg,#1e293b 0%,#334155 100%); border-radius:28px 42px 18px 18px; box-shadow:0 18px 40px rgba(15,23,42,.18); }
.drs-vehicle-roof { position:absolute; left:50%; bottom:126px; transform:translateX(-50%); width:54%; height:56px; background:linear-gradient(180deg,#475569 0%,#334155 100%); border-radius:28px 32px 8px 8px; }
.drs-window { position:absolute; top:10px; height:32px; background:linear-gradient(180deg,#dbeafe 0%,#bfdbfe 100%); border-radius:10px; }
.drs-window-left { left:12%; width:30%; }
.drs-window-right { right:12%; width:26%; }
.drs-wheel { position:absolute; bottom:12px; width:68px; height:68px; background:#0f172a; border-radius:50%; border:7px solid #94a3b8; }
.drs-wheel-left { left:18%; }
.drs-wheel-right { right:18%; }
.drs-headlight { position:absolute; right:2.6%; top:48px; width:22px; height:14px; background:#f59e0b; border-radius:10px 12px 12px 10px; box-shadow:0 0 18px rgba(245,158,11,.55); }
.drs-plane { position:absolute; top:56px; right:18px; width:120px; height:50px; opacity:.9; }
.drs-plane:before, .drs-plane:after, .drs-plane-body { content:""; position:absolute; background:#2563eb; border-radius:999px; }
.drs-plane-body { left:18px; top:20px; width:86px; height:10px; }
.drs-plane:before { left:40px; top:10px; width:42px; height:8px; transform:rotate(24deg); }
.drs-plane:after { left:40px; top:28px; width:42px; height:8px; transform:rotate(-24deg); }
.drs-tail { position:absolute; left:12px; top:14px; width:18px; height:18px; background:#2563eb; clip-path: polygon(0 100%,100% 0,100% 100%); }
.drs-visual-bottom { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.drs-info-box { background:rgba(255,255,255,.82); border:1px solid var(--line); border-radius:18px; padding:16px; }
.drs-info-kicker { font-size:12px; text-transform:uppercase; letter-spacing:.16em; color:#64748b; margin-bottom:6px; }
.drs-info-main { font-weight:700; font-size:16px; }
.drs-section { padding:72px 0; }
.drs-section-soft { background: var(--bg-soft); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.drs-section-kicker { color:#1d4ed8; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.22em; margin-bottom:10px; }
.drs-section h2 { margin:0; font-size: clamp(30px, 4vw, 42px); line-height:1.12; letter-spacing:-.03em; }
.drs-section-copy { color:var(--muted); font-size:18px; margin-top:16px; max-width:760px; }
.drs-grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.drs-grid-4 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.drs-grid-2 { display:grid; grid-template-columns:1.08fr .92fr; gap:30px; align-items:start; }
.drs-card { background:#fff; border:1px solid var(--line); border-radius:22px; padding:26px; box-shadow:0 8px 24px rgba(15,23,42,.04); }
.drs-step-badge { width:48px; height:48px; border-radius:16px; display:grid; place-items:center; background:var(--blue-soft); color:var(--blue); font-weight:700; margin-bottom:16px; }
.drs-card h3 { margin:0; font-size:22px; }
.drs-card p { margin:12px 0 0; color:var(--muted); font-size:16px; }
.drs-lead-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:28px; align-items:start; }
.drs-lead-notes { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:22px; }
.drs-note { border:1px solid var(--line); background:var(--bg-soft); border-radius:16px; padding:16px; color:#334155; font-size:14px; }
.drs-form-card { background:#fff; border:1px solid var(--line); border-radius:28px; padding:28px; box-shadow:var(--shadow); }
.drs-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.drs-form-card input, .drs-form-card textarea { width:100%; border:1px solid #cbd5e1; border-radius:14px; padding:15px 16px; font:inherit; color:var(--text); background:#fff; }
.drs-form-card textarea { min-height:130px; resize:vertical; }
.drs-form-card input:focus, .drs-form-card textarea:focus { outline:2px solid #bfdbfe; border-color:#93c5fd; }
.drs-cta-box { border:1px solid var(--line); border-radius:30px; background:#fff; padding:36px; box-shadow:0 8px 24px rgba(15,23,42,.04); }
.drs-cta-row { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.drs-feature-boxes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding-top:0; }
.drs-footer { border-top:1px solid var(--line); padding:28px 0 42px; color:#64748b; font-size:14px; }
.drs-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.drs-footer-links { display:flex; gap:20px; }
@media (max-width: 980px) {
  .drs-nav { display:none; }
  .drs-hero-grid, .drs-grid-2, .drs-lead-grid, .drs-cta-row { grid-template-columns:1fr; display:grid; }
  .drs-stats, .drs-grid-3, .drs-grid-4, .drs-feature-boxes, .drs-lead-notes, .drs-form-grid, .drs-visual-bottom { grid-template-columns:1fr 1fr; }
  .drs-hero-card { padding:20px; }
  .drs-vehicle-illustration { height:210px; }
  .drs-header-inner { flex-wrap:wrap; }
}
@media (max-width: 640px) {
  .drs-container { width: min(var(--max), calc(100% - 24px)); }
  .drs-header-inner { justify-content:center; }
  .drs-brand-logo { max-height: 48px; }
  .drs-hero-grid { padding:48px 0; }
  .drs-stats, .drs-grid-3, .drs-grid-4, .drs-feature-boxes, .drs-lead-notes, .drs-form-grid, .drs-visual-bottom { grid-template-columns:1fr; }
  .drs-hero-actions { flex-direction:column; }
  .drs-btn { width:100%; }
  .drs-footer-inner { flex-direction:column; align-items:flex-start; }
}
