:root{
  --bg:#07130d;
  --panel:rgba(255,255,255,.06);
  --panel2:rgba(255,255,255,.045);
  --line:rgba(255,255,255,.13);
  --green:#22c55e;
  --blue:#38bdf8;
  --mint:#86efac;
  --dark:#05210f;
  --text:#f5fff7;
  --soft:#cfe8d5;
  --muted:#9fb7a6;
  --warn:#ffe8b8;
}
.dw-page{max-width:1180px}
.dw-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin:18px 0 14px}
.dw-card{background:var(--panel);border:1px solid var(--line);border-radius:30px;padding:18px}
.dw-card h1{font-size:clamp(48px,7vw,84px);line-height:.88;letter-spacing:-.07em;margin:10px 0 12px}
.dw-card h2{font-size:clamp(30px,4.7vw,48px);line-height:.95;letter-spacing:-.055em;margin:0 0 10px}
.dw-card p{color:var(--soft);font-size:17px;line-height:1.45;margin:0 0 10px}
.dw-kicker{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:rgba(34,197,94,.13);border:1px solid rgba(34,197,94,.25);color:#d8ffe3;font-size:12px;font-weight:1000}
.dw-btn{min-height:52px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.08);color:var(--text);display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-weight:1000;padding:0 14px;cursor:pointer}
.dw-btn.primary{background:var(--green);border-color:var(--green);color:var(--dark)}
.dw-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.dw-area{margin-top:12px;padding:11px 13px;border-radius:18px;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.25);color:#d8ffe3;font-weight:900}
.dw-area small{display:block;color:#a7c6ae;margin-top:3px}
.dw-map-wrap{padding:0;overflow:hidden}
#dogWalksLiveMap{height:520px;min-height:520px;width:100%;background:#0c1d13}
.leaflet-container{background:#0c1d13;font-family:inherit}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#07130d;color:#f5fff7;border:1px solid rgba(255,255,255,.16)}
.dw-map-pin{width:34px!important;height:34px!important;margin-left:-17px!important;margin-top:-17px!important;border-radius:999px;border:4px solid #05210f;box-shadow:0 8px 25px rgba(0,0,0,.35)}
.dw-map-pin.walkbuddy{background:#22c55e}
.dw-map-pin.playdate{background:#86efac}
.dw-map-pin.openwalk{background:#38bdf8}
.dw-map-pin.you{background:#f5fff7}
.dw-map-caption{padding:13px 14px;background:rgba(7,19,13,.96);border-top:1px solid var(--line)}
.dw-map-caption strong{display:block;font-size:24px;line-height:1;letter-spacing:-.035em}
.dw-map-caption span{display:block;color:#cfe8d5;margin-top:6px}
.dw-title{margin:18px 0 10px}
.dw-title h2{margin:0;font-size:clamp(30px,4.7vw,48px);line-height:.95;letter-spacing:-.055em}
.dw-title p{color:var(--muted);font-weight:800;margin:4px 0 0}
.dw-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.dw-option{border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:14px;cursor:pointer;text-align:left;color:var(--text)}
.dw-option.active{border-color:rgba(34,197,94,.72);background:rgba(34,197,94,.11)}
.dw-option img{width:48px;height:48px;border-radius:16px;margin-bottom:10px}
.dw-option h3{margin:0 0 6px;font-size:27px;line-height:1;letter-spacing:-.04em}
.dw-option p{margin:0;color:var(--soft);line-height:1.35}
.dw-explain{display:grid;grid-template-columns:.85fr 1.15fr;gap:12px;margin:14px 0}
.dw-explain-row{border-radius:18px;background:rgba(255,255,255,.05);border:1px solid var(--line);padding:11px 12px;margin-bottom:8px}
.dw-explain-row strong{display:block;color:#f5fff7;margin-bottom:3px}
.dw-explain-row span{color:#cfe8d5}
.dw-flow{display:grid;grid-template-columns:.78fr 1.22fr;gap:12px;margin:14px 0}
.dw-side{align-self:start;position:sticky;top:78px}
.dw-search{display:grid;gap:8px}
.dw-search input,.dw-card input,.dw-card select,.dw-card textarea{width:100%;min-height:50px;border-radius:16px;border:1px solid var(--line);background:rgba(7,19,13,.58);color:var(--text);padding:12px 13px;font-size:16px}
.dw-search input{border-radius:999px;padding:0 15px}
.dw-filter{border-radius:20px;border:1px solid var(--line);background:var(--panel2);overflow:hidden}
.dw-filter summary{min-height:50px;display:flex;align-items:center;padding:0 13px;cursor:pointer;color:#d8ffe3;font-weight:1000}
.dw-filter-body{padding:0 13px 13px}
.dw-slider{margin:10px 0}
.dw-slider-head{display:flex;justify-content:space-between;gap:10px;color:#d8ffe3;font-weight:1000;margin-bottom:6px}
.dw-slider input{width:100%;accent-color:#22c55e}
.dw-note{margin-top:10px;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.25);color:#d8ffe3;border-radius:18px;padding:10px 12px;font-weight:900;line-height:1.34}
.dw-note.warn{background:rgba(245,158,11,.11);border-color:rgba(245,158,11,.32);color:var(--warn)}
.dw-results{display:grid;gap:10px}
.dw-result{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px;border-radius:24px;background:var(--panel);border:1px solid var(--line)}
.dw-result-icon{width:54px;height:54px;border-radius:18px;background:#12351f;display:flex;align-items:center;justify-content:center}
.dw-result-icon img{width:34px;height:34px}
.dw-result h3{margin:0 0 4px;font-size:25px;line-height:1;letter-spacing:-.035em}
.dw-result p{margin:0;color:var(--soft);line-height:1.35}
.dw-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.dw-tag{min-height:28px;border-radius:999px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.22);color:#d8ffe3;padding:0 8px;display:inline-flex;align-items:center;font-size:11px;font-weight:900}
.dw-live{display:none;margin-top:12px}
.dw-live.active{display:block}
.dw-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dw-card label{display:block;color:#d8ffe3;font-weight:1000;font-size:13px;margin:8px 0 5px}
.dw-card textarea{min-height:92px}
.dw-paid{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:14px 0;padding:14px;border-radius:24px;background:rgba(255,255,255,.045);border:1px solid var(--line)}
.dw-paid p{margin:0;color:var(--soft)}
@media(max-width:900px){
  .dw-page{padding:10px 10px 104px!important}
  .dw-hero,.dw-options,.dw-explain,.dw-flow,.dw-actions,.dw-paid,.dw-form-grid{grid-template-columns:1fr}
  .dw-card{border-radius:22px;padding:14px}
  .dw-card h1{font-size:clamp(38px,13vw,54px)}
  .dw-card h2,.dw-title h2{font-size:clamp(28px,9vw,38px)}
  #dogWalksLiveMap{height:360px;min-height:360px}
  .dw-side{position:static}
  .dw-option{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}
  .dw-option img{margin:0}
  .dw-result{grid-template-columns:auto 1fr}
  .dw-result .dw-btn{grid-column:1/-1;width:100%}
  .dw-btn{min-height:48px;font-size:14px}
}
