:root {
  --brand: #1a1aff;
  --brand-dark: #0a0aee;
  --dark: #0a0a0f;
  --surface: #f5f5f7;
  --card: #ffffff;
  --text: #0a0a0f;
  --muted: #6b6b80;
  --border: rgba(0,0,0,0.07);
  --vip: #f59e0b;
  --radius: 20px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--surface);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.font-display{font-family:'Syne',sans-serif}
img{max-width:100%}

/* NAVBAR */
.navbar{background:var(--dark);height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;position:sticky;top:0;z-index:100}
.logo{font-family:'Syne',sans-serif;font-weight:800;font-size:20px;color:#fff;text-decoration:none;letter-spacing:-0.5px}
.logo span{color:var(--brand)}
.logo em{font-style:normal;color:rgba(255,255,255,0.3);font-size:14px;font-weight:400}
.nav-search{flex:1;max-width:320px;margin:0 1rem;position:relative}
.nav-search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,0.35)}
.nav-search input{width:100%;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.1);border-radius:100px;padding:8px 14px 8px 34px;color:#fff;font-size:13px;font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.2s}
.nav-search input::placeholder{color:rgba(255,255,255,0.35)}
.nav-search input:focus{border-color:rgba(26,26,255,0.5)}
.nav-actions{display:flex;align-items:center;gap:8px}
.notif-btn{position:relative;padding:8px;color:rgba(255,255,255,0.6);cursor:pointer;transition:color 0.2s}
.notif-btn:hover{color:#fff}
.notif-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;background:var(--brand);border-radius:50%;border:1.5px solid var(--dark)}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,0.18);color:#fff;padding:6px 14px;border-radius:100px;font-size:12px;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all 0.2s}
.btn-ghost:hover{background:rgba(255,255,255,0.08)}
.btn-primary{background:var(--brand);border:none;color:#fff;padding:7px 16px;border-radius:100px;font-size:12px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background 0.2s}
.btn-primary:hover{background:var(--brand-dark)}
.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--brand),#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Syne',sans-serif;font-weight:800;font-size:12px;cursor:pointer}

/* PAGES */
.page{display:none;min-height:calc(100vh - 56px);padding-bottom:80px}
.page.active{display:block}
.page-inner{max-width:900px;margin:0 auto;padding:1.5rem 1rem}
.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.page-header h2{font-family:'Syne',sans-serif;font-weight:700;font-size:22px}
.back-btn{background:var(--surface);border:none;padding:8px 14px;border-radius:100px;font-size:13px;cursor:pointer;color:var(--muted);font-family:'DM Sans',sans-serif}
.back-btn:hover{color:var(--text)}

/* HERO */
.hero{background:var(--dark);padding:2rem 1.25rem 3rem;position:relative;overflow:hidden}
.hero-glow{position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(26,26,255,0.28) 0%,transparent 70%);top:-120px;right:-60px;pointer-events:none}
.hero-content{max-width:700px;margin:0 auto;position:relative}
.hero-label{color:rgba(255,255,255,0.4);font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:8px}
.hero-title{font-family:'Syne',sans-serif;font-weight:800;font-size:30px;color:#fff;line-height:1.1;margin-bottom:1.5rem}
.hero-title span{color:var(--brand)}
.search-bar{background:#fff;border-radius:16px;padding:10px;display:flex;gap:8px;flex-wrap:wrap;box-shadow:0 20px 60px rgba(0,0,0,0.4)}
.search-field{flex:1;min-width:130px;background:var(--surface);border-radius:10px;padding:8px 12px}
.search-field label{display:block;font-size:10px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:2px}
.search-field input{width:100%;background:transparent;border:none;outline:none;font-size:14px;font-weight:500;color:var(--text);font-family:'DM Sans',sans-serif}
.search-btn{background:var(--brand);color:#fff;border:none;border-radius:10px;padding:0 20px;font-size:13px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:8px;white-space:nowrap;transition:background 0.2s;min-height:52px}
.search-btn:hover{background:var(--brand-dark)}
.popular-routes{display:flex;gap:8px;margin-top:14px;overflow-x:auto;scrollbar-width:none}
.popular-routes::-webkit-scrollbar{display:none}
.popular-routes button{background:rgba(255,255,255,0.09);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.65);font-size:11px;padding:6px 14px;border-radius:100px;cursor:pointer;white-space:nowrap;font-family:'DM Sans',sans-serif;transition:all 0.2s}
.popular-routes button:hover{background:rgba(255,255,255,0.15);color:#fff}

/* FILTERS */
.filters-bar{background:#fff;border-bottom:1px solid var(--border);padding:10px 1rem;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.filters-bar::-webkit-scrollbar{display:none}
.chip{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:100px;border:1px solid var(--border);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;background:#fff;color:var(--text);font-family:'DM Sans',sans-serif;transition:all 0.15s}
.chip:hover{border-color:rgba(0,0,0,0.2)}
.chip.active{background:var(--dark);color:#fff;border-color:var(--dark)}
.chip-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;display:inline-block}

/* MAIN CONTENT */
.main-content{max-width:1400px;margin:0 auto;padding:1.5rem 1rem}
.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1rem}
.section-title{font-family:'Syne',sans-serif;font-size:18px;font-weight:700}
.section-count{font-size:12px;color:var(--muted)}

/* RIDES GRID */
.rides-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:2rem}

/* RIDE CARD */
.ride-card{background:var(--card);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);cursor:pointer;transition:transform 0.2s ease,box-shadow 0.2s ease;animation:fadeUp 0.4s ease both}
.ride-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(0,0,0,0.11)}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

.card-photo{height:148px;background:linear-gradient(135deg,#1a1aff,#0a0a5e);display:flex;flex-direction:column;justify-content:space-between;padding:12px;position:relative}
.card-route{font-family:'Syne',sans-serif;font-weight:700;font-size:15px;color:#fff;display:flex;align-items:center;gap:6px}
.card-route span{opacity:0.6;font-size:12px}
.card-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:100px}
.badge-vip{background:var(--vip);color:#fff}
.badge-boost{background:rgba(255,255,255,0.2);color:#fff;backdrop-filter:blur(4px)}
.badge-new{background:#22c55e;color:#fff}
.card-top{display:flex;justify-content:space-between;align-items:flex-start}
.card-driver{display:flex;align-items:center;gap:10px}
.driver-avatar{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,0.18);backdrop-filter:blur(8px);border:2px solid rgba(255,255,255,0.5);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:14px;color:#fff;flex-shrink:0;position:relative;overflow:hidden}
.driver-avatar img{width:100%;height:100%;object-fit:cover}
.verified-badge{position:absolute;bottom:-1px;right:-1px;width:16px;height:16px;background:#3b82f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px;color:#fff;border:1.5px solid rgba(255,255,255,0.5)}
.driver-name{font-size:13px;font-weight:500;color:#fff;line-height:1.2}
.driver-trips{font-size:11px;color:rgba(255,255,255,0.6)}

.card-body{padding:14px}
.card-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.card-datetime{font-size:12px;color:var(--muted);margin-bottom:5px}
.stars{display:flex;align-items:center;gap:2px}
.star{font-size:11px}
.star-filled{color:var(--vip)}
.star-empty{color:#e5e7eb}
.star-count{font-size:11px;color:var(--muted);margin-left:3px}
.price{font-family:'Syne',sans-serif;font-weight:800;font-size:24px;color:var(--text);line-height:1}
.price-sub{font-size:10px;color:var(--muted);text-align:right}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}
.tag{font-size:11px;padding:3px 9px;border-radius:100px;background:var(--surface);color:var(--muted);font-weight:500}
.tag-seats{background:#dbeafe;color:#1e40af}
.tag-pet{background:#fef9c3;color:#854d0e}
.card-divider{height:1px;background:var(--border);margin-bottom:12px}
.card-footer{display:flex;align-items:center;justify-content:space-between}
.seats-info{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}
.seats-dots{display:flex;gap:3px}
.seat-dot{width:8px;height:8px;border-radius:50%;background:var(--brand)}
.seat-dot.empty{background:#e5e7eb}
.book-btn{background:var(--dark);color:#fff;border:none;border-radius:100px;padding:7px 18px;font-size:12px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background 0.2s}
.book-btn:hover{background:var(--brand)}

/* SKELETON */
.loading-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.skeleton-card{height:280px;border-radius:var(--radius);background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}

/* PROMO BANNER */
.promo-banner{background:var(--dark);border-radius:var(--radius);padding:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:relative;overflow:hidden}
.promo-glow{position:absolute;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(26,26,255,0.35) 0%,transparent 70%);right:-30px;top:-60px;pointer-events:none}
.promo-icons{font-size:20px;margin-bottom:4px}
.promo-text h3{font-family:'Syne',sans-serif;font-weight:700;font-size:16px;color:#fff;margin-bottom:4px}
.promo-text p{font-size:12px;color:rgba(255,255,255,0.5)}
.promo-btn{background:var(--brand);color:#fff;border:none;border-radius:100px;padding:10px 20px;font-size:13px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap;position:relative;z-index:1;transition:background 0.2s}
.promo-btn:hover{background:var(--brand-dark)}

/* FORMS */
.form-card{background:var(--card);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.form-group{margin-bottom:12px}
.form-group label{display:block;font-size:12px;font-weight:500;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:0.05em}
.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--surface);border:1px solid transparent;border-radius:10px;padding:10px 14px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--text);outline:none;transition:border-color 0.2s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--brand);background:#fff}
.form-group textarea{min-height:90px;resize:vertical}
.form-section-title{font-family:'Syne',sans-serif;font-weight:700;font-size:15px;margin:1.5rem 0 0.75rem}
.checkboxes{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.check-item{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;padding:6px 12px;border-radius:100px;background:var(--surface);transition:background 0.2s}
.check-item:hover{background:#e8e8f0}
.check-item input{accent-color:var(--brand)}

/* PROMO PLANS */
.promo-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.5rem}
.promo-plan{cursor:pointer}
.promo-plan input{display:none}
.plan-card{border:1.5px solid var(--border);border-radius:14px;padding:14px;transition:all 0.2s;position:relative}
.promo-plan input:checked + .plan-card{border-color:var(--brand);background:#f0f0ff}
.plan-card.featured{border-color:#93c5fd}
.promo-plan input:checked + .plan-card.featured{border-color:var(--brand);background:#f0f0ff}
.plan-card.vip{border-color:#fcd34d}
.promo-plan input:checked + .plan-card.vip{border-color:var(--vip);background:#fffbeb}
.plan-badge{font-size:10px;padding:2px 8px;border-radius:4px;background:#dbeafe;color:#1e40af;display:inline-block;margin-bottom:6px}
.plan-badge.vip-badge{background:#fef3c7;color:#92400e}
.plan-name{font-family:'Syne',sans-serif;font-weight:700;font-size:15px;margin-bottom:4px}
.plan-price{font-size:18px;font-weight:600;color:var(--brand);margin-bottom:6px}
.plan-features{font-size:11px;color:var(--muted);line-height:1.6}
.submit-btn{width:100%;background:var(--dark);color:#fff;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background 0.2s;margin-top:4px}
.submit-btn:hover{background:var(--brand)}

/* CHAT */
.chat-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;height:calc(100vh - 200px)}
.conversations-list{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);overflow-y:auto}
.convo-item{padding:14px;border-bottom:1px solid var(--border);cursor:pointer;transition:background 0.15s;display:flex;gap:10px;align-items:center}
.convo-item:hover{background:var(--surface)}
.convo-avatar{width:42px;height:42px;border-radius:50%;background:var(--brand);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;flex-shrink:0}
.convo-info{flex:1;min-width:0}
.convo-name{font-weight:500;font-size:13px;margin-bottom:2px}
.convo-last{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.unread-badge{background:var(--brand);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:100px;flex-shrink:0}
.chat-window{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);display:flex;flex-direction:column}
.chat-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px;color:var(--muted)}
.chat-placeholder-icon{font-size:40px}
.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:8px}
.msg{max-width:70%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5}
.msg-out{background:var(--brand);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.msg-in{background:var(--surface);color:var(--text);align-self:flex-start;border-bottom-left-radius:4px}
.msg-time{font-size:10px;opacity:0.6;margin-top:3px}
.chat-input-bar{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border)}
.chat-input-bar input{flex:1;background:var(--surface);border:none;border-radius:100px;padding:10px 16px;font-size:14px;font-family:'DM Sans',sans-serif;outline:none}
.send-btn{background:var(--brand);color:#fff;border:none;border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* MODAL */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:200;padding:1rem;backdrop-filter:blur(4px)}
.modal-overlay.open{display:flex}
.modal{background:#fff;border-radius:24px;padding:2rem;width:100%;max-width:420px;position:relative;animation:modalIn 0.25s ease}
.modal-large{max-width:640px}
@keyframes modalIn{from{opacity:0;transform:scale(0.95)}to{opacity:1;transform:scale(1)}}
.modal-close{position:absolute;top:1rem;right:1rem;background:var(--surface);border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:14px;color:var(--muted);display:flex;align-items:center;justify-content:center}
.modal-tabs{display:flex;gap:4px;background:var(--surface);border-radius:100px;padding:4px;margin-bottom:1.5rem}
.modal-tab{flex:1;padding:8px;border-radius:100px;border:none;background:transparent;font-size:13px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;color:var(--muted);transition:all 0.2s}
.modal-tab.active{background:#fff;color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,0.08)}
.modal-error{color:#ef4444;font-size:13px;margin-bottom:10px;min-height:18px}

/* BOTTOM NAV */
.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:8px 0 12px;z-index:99}
.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;color:var(--muted);cursor:pointer;background:none;border:none;padding:4px 12px;border-radius:10px;font-family:'DM Sans',sans-serif;transition:color 0.15s}
.nav-item.active{color:var(--brand)}
.nav-post{background:var(--dark);color:#fff !important;border-radius:50%;width:48px;height:48px;margin-top:-14px;box-shadow:0 4px 20px rgba(0,0,0,0.3);padding:0;justify-content:center}
.nav-post:hover{background:var(--brand)}

/* EMPTY STATE */
.empty-state{text-align:center;padding:3rem 1rem;color:var(--muted);font-size:14px}

/* TOAST */
.toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--dark);color:#fff;padding:12px 24px;border-radius:100px;font-size:14px;opacity:0;transition:all 0.3s;pointer-events:none;z-index:300;white-space:nowrap}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* PROFILE */
.profile-header{display:flex;align-items:center;gap:1.5rem;background:var(--card);border-radius:var(--radius);padding:1.5rem;margin-bottom:1rem;border:1px solid var(--border)}
.profile-avatar-big{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--brand),#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Syne',sans-serif;font-weight:800;font-size:22px}
.profile-name{font-family:'Syne',sans-serif;font-weight:700;font-size:20px;margin-bottom:4px}
.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1rem}
.stat-card{background:var(--card);border-radius:14px;padding:14px;text-align:center;border:1px solid var(--border)}
.stat-val{font-family:'Syne',sans-serif;font-size:22px;font-weight:700;color:var(--brand)}
.stat-lbl{font-size:11px;color:var(--muted);margin-top:2px}
.logout-btn{width:100%;background:transparent;border:1px solid #ef4444;color:#ef4444;border-radius:12px;padding:12px;font-size:14px;cursor:pointer;font-family:'DM Sans',sans-serif;margin-top:1rem;transition:all 0.2s}
.logout-btn:hover{background:#ef4444;color:#fff}

/* RIDE DETAIL */
.ride-detail-photo{height:160px;border-radius:14px;display:flex;flex-direction:column;justify-content:space-between;padding:14px;margin-bottom:1.25rem}
.detail-driver{display:flex;align-items:center;gap:12px;background:var(--card);border-radius:14px;padding:14px;margin-bottom:1rem;border:1px solid var(--border)}
.detail-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1rem}
.detail-book-btn{width:100%;background:var(--brand);color:#fff;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:500;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background 0.2s}
.detail-book-btn:hover{background:var(--brand-dark)}

@media(max-width:640px){
  .form-row{grid-template-columns:1fr}
  .promo-plans{grid-template-columns:1fr}
  .chat-layout{grid-template-columns:1fr;height:auto}
  .conversations-list{height:200px}
  .hero-title{font-size:24px}
  .search-bar{flex-direction:column}
  .search-btn{justify-content:center}
  .nav-search{display:none}
}

/* ── Polish UI ── */
.modal h3 { font-family: 'Syne', sans-serif; font-weight: 700; font-size: 20px; margin-bottom: 1.25rem; color: var(--text); }
.modal-tabs { margin-bottom: 1.5rem; }
.form-group label { color: var(--muted); font-size: 11px; font-weight: 600; letter-spacing: 0.07em; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  border-color: var(--brand); background: #fff; box-shadow: 0 0 0 3px rgba(26,26,255,0.08);
}
.search-field input:focus { outline: none; }
.search-bar { box-shadow: 0 24px 64px rgba(0,0,0,0.45); }
.submit-btn { letter-spacing: 0.02em; font-size: 14px; }
.submit-btn:active { transform: scale(0.98); }
.book-btn:active { transform: scale(0.96); }
.chip { font-size: 12px; letter-spacing: 0.01em; }
.plan-card { transition: all 0.2s; }
.plan-card:hover { border-color: var(--brand); transform: translateY(-2px); }
.promo-plan input:checked + .plan-card { box-shadow: 0 4px 20px rgba(26,26,255,0.15); }
.modal { box-shadow: 0 24px 80px rgba(0,0,0,0.2); }
.form-group textarea { line-height: 1.6; }
.checkboxes { gap: 8px; }
.check-item { font-size: 13px; border: 1px solid var(--border); }
.check-item:has(input:checked) { background: #e8e8ff; border-color: var(--brand); color: var(--brand); }
.section-title { letter-spacing: -0.3px; }
.hero-title { letter-spacing: -0.5px; }
.logo { letter-spacing: -0.5px; }
.vip-glow { box-shadow: 0 0 0 2px rgba(245,158,11,0.3); }
input[type="date"] { cursor: pointer; }
input[type="time"] { cursor: pointer; }
select { cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b6b80' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; padding-right: 32px; }

/* ── Footer ── */
.site-footer { background: #0a0a0f; padding: 3rem 1.5rem 2rem; margin-top: 2rem; }
.footer-inner { max-width: 1200px; margin: 0 auto; }
.footer-map-wrap { border-radius: 20px; overflow: hidden; margin-bottom: 2.5rem; border: 1px solid rgba(255,210,80,0.15); }
.footer-map-wrap canvas { display: block; width: 100%; height: auto; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 2rem; margin-bottom: 2rem; }
.footer-brand p { color: rgba(255,255,255,0.4); font-size: 13px; margin-top: 10px; line-height: 1.6; max-width: 240px; }
.footer-col h4 { font-family: 'Syne',sans-serif; font-weight: 700; font-size: 13px; color: rgba(255,255,255,0.9); margin-bottom: 12px; letter-spacing: 0.05em; text-transform: uppercase; }
.footer-col a { display: block; color: rgba(255,255,255,0.4); font-size: 13px; text-decoration: none; margin-bottom: 8px; transition: color 0.2s; }
.footer-col a:hover { color: #ffd050; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.07); padding-top: 1.5rem; display: flex; align-items: center; justify-content: space-between; }
.footer-bottom p { color: rgba(255,255,255,0.25); font-size: 12px; }
.footer-social { display: flex; gap: 12px; }
.footer-social a { width: 34px; height: 34px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.4); font-size: 14px; text-decoration: none; transition: all 0.2s; }
.footer-social a:hover { border-color: #ffd050; color: #ffd050; }
@media(max-width:640px) { .footer-grid { grid-template-columns: 1fr 1fr; } }
