/* SwiftDrop Deliveries - styles.css */ :root{ --bg: #0b1020; --text: rgba(255,255,255,0.92); --muted: rgba(255,255,255,0.70); --line: rgba(255,255,255,0.14); --accent: #6ae4ff; --accent-2: #9b7bff; --good: #35d07f; --shadow: 0 18px 50px rgba(0,0,0,0.45); --radius: 18px; } *{ box-sizing:border-box; } html,body{ height:100%; } body{ margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif; color: var(--text); background: radial-gradient(1200px 600px at 20% 10%, rgba(155,123,255,0.40), transparent 55%), radial-gradient(900px 520px at 85% 25%, rgba(106,228,255,0.35), transparent 55%), radial-gradient(1000px 700px at 40% 100%, rgba(53,208,127,0.22), transparent 55%), var(--bg); line-height: 1.55; } a{ color: inherit; text-decoration:none; } a:hover{ opacity: 0.92; } .container{ width: min(1100px, calc(100% - 40px)); margin-inline: auto; } .skip-link{ position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden; } .skip-link:focus{ left: 16px; top: 12px; width:auto; height:auto; padding:10px 12px; background: rgba(0,0,0,0.75); border: 1px solid var(--line); border-radius: 12px; z-index: 1000; } .site-header{ position: sticky; top: 0; z-index: 200; backdrop-filter: blur(14px); background: rgba(11,16,32,0.55); border-bottom: 1px solid rgba(255,255,255,0.08); } .header-inner{ display:flex; align-items:center; justify-content: space-between; gap: 14px; padding: 14px 0; } .brand{ display:flex; align-items:center; gap: 10px; font-weight: 760; letter-spacing: 0.2px; } .brand-mark{ width: 34px; height: 34px; display:grid; place-items:center; border-radius: 12px; background: linear-gradient(135deg, rgba(106,228,255,0.9), rgba(155,123,255,0.9)); color: rgba(11,16,32,0.92); box-shadow: 0 10px 25px rgba(0,0,0,0.35); } .brand-text{ font-size: 1.05rem; } .site-nav{ display:flex; align-items:center; gap: 18px; font-weight: 560; color: rgba(255,255,255,0.86); } .site-nav a{ padding: 10px 10px; border-radius: 12px; } .site-nav a:hover{ background: rgba(255,255,255,0.07); } .btn{ display:inline-flex; align-items:center; justify-content:center; gap: 10px; padding: 12px 16px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.18); background: linear-gradient(135deg, rgba(106,228,255,0.92), rgba(155,123,255,0.92)); color: rgba(11,16,32,0.92); font-weight: 760; box-shadow: 0 18px 50px rgba(0,0,0,0.35); transition: transform 140ms ease, filter 140ms ease; cursor: pointer; } .btn:hover{ transform: translateY(-1px); filter: brightness(1.02); } .btn:active{ transform: translateY(0px); } .btn-small{ padding: 10px 12px; border-radius: 12px; font-size: 0.95rem; } .btn-ghost{ background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.16); color: rgba(255,255,255,0.92); box-shadow: none; } .btn-ghost:hover{ background: rgba(255,255,255,0.10); } .w-full{ width: 100%; } .nav-toggle{ display:none; } .nav-toggle-btn{ display:none; width: 44px; height: 44px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.06); padding: 10px; cursor:pointer; } .nav-toggle-btn span{ display:block; height:2px; background: rgba(255,255,255,0.88); margin: 6px 0; border-radius: 6px; } .hero{ padding: 56px 0 22px; } .hero-grid{ display:grid; grid-template-columns: 1.15fr 0.85fr; gap: 26px; align-items: start; } .pill{ display:inline-flex; padding: 7px 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.85); font-weight: 650; margin: 0 0 14px; } h1{ font-size: clamp(2rem, 3.7vw, 3.1rem); line-height: 1.1; margin: 0 0 12px; } .lead{ font-size: 1.05rem; color: rgba(255,255,255,0.80); margin: 0 0 18px; max-width: 55ch; } .hero-actions{ display:flex; gap: 12px; flex-wrap: wrap; margin-bottom: 22px; } .stats{ display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .stat{ padding: 14px 14px; border-radius: 16px; border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.05); } .stat-value{ font-weight: 820; font-size: 1.25rem; } .stat-label{ color: var(--muted); font-size: 0.92rem; } .card{ border-radius: var(--radius); border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.06); box-shadow: var(--shadow); padding: 18px; } .hero-card .card{ background: radial-gradient(420px 300px at 40% 0%, rgba(106,228,255,0.20), transparent 55%), radial-gradient(460px 320px at 100% 25%, rgba(155,123,255,0.20), transparent 55%), rgba(255,255,255,0.06); } .card-top{ display:flex; align-items:flex-start; justify-content: space-between; gap: 12px; margin-bottom: 14px; } .big{ font-size: 1.1rem; font-weight: 740; margin: 4px 0 0; } .muted{ color: var(--muted); margin: 0; } .badge{ display:inline-flex; align-items:center; padding: 7px 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.16); background: rgba(53,208,127,0.16); color: rgba(255,255,255,0.92); font-weight: 700; white-space: nowrap; } .timeline{ display:grid; gap: 10px; margin: 14px 0 16px; } .step{ display:grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; padding: 10px 10px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.10); background: rgba(255,255,255,0.04); } .step-title{ margin:0; font-weight: 720; } .dot{ width: 12px; height: 12px; border-radius: 999px; margin-top: 4px; background: rgba(255,255,255,0.28); border: 2px solid rgba(255,255,255,0.22); } .step.done .dot{ background: rgba(53,208,127,0.9); border-color: rgba(53,208,127,0.4); } .step.current{ border-color: rgba(106,228,255,0.35); background: rgba(106,228,255,0.08); } .step.current .dot{ background: rgba(106,228,255,0.95); border-color: rgba(106,228,255,0.40); } .card-actions{ display:flex; gap: 10px; } .trust-row{ display:flex; align-items:center; justify-content: space-between; gap: 14px; padding: 18px 0 0; flex-wrap: wrap; } .trust-logos{ display:flex; gap: 14px; flex-wrap: wrap; color: rgba(255,255,255,0.70); } .trust-logos span{ padding: 8px 10px; border: 1px dashed rgba(255,255,255,0.18); border-radius: 12px; background: rgba(255,255,255,0.03); } .section{ padding: 56px 0; } .section.alt{ background: rgba(255,255,255,0.03); border-top: 1px solid rgba(255,255,255,0.06); border-bottom: 1px solid rgba(255,255,255,0.06); } .section-head{ margin-bottom: 20px; } .section-head h2{ margin: 0 0 6px; font-size: clamp(1.5rem, 2.2vw, 2rem); } .section-head p{ margin: 0; } .cards{ display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } .feature .icon{ width: 44px; height: 44px; border-radius: 14px; display:grid; place-items:center; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.14); margin-bottom: 10px; } .feature h3{ margin: 0 0 6px; } .list{ margin: 12px 0 0; padding-left: 18px; color: rgba(255,255,255,0.80); } .list li{ margin: 6px 0; } .split{ display:grid; grid-template-columns: 1.15fr 0.85fr; gap: 16px; align-items: start; } .track-form{ margin-top: 14px; padding: 16px; border-radius: 18px; border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.04); } .label{ display:block; font-weight: 700; margin: 10px 0 8px; } .hint{ color: rgba(255,255,255,0.68); font-size: 0.92rem; margin: 10px 0 0; } .field-row{ display:flex; gap: 10px; flex-wrap: wrap; } input, select{ width: 100%; padding: 12px 12px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.16); background: rgba(11,16,32,0.55); color: rgba(255,255,255,0.92); outline: none; } input::placeholder{ color: rgba(255,255,255,0.55); } input:focus, select:focus{ border-color: rgba(106,228,255,0.55); box-shadow: 0 0 0 4px rgba(106,228,255,0.15); } .field-row input{ flex: 1 1 240px; } .field-row button{ flex: 0 0 auto; } .mini-grid{ margin-top: 14px; display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .mini{ padding: 14px; } .mini-title{ margin: 0 0 4px; font-weight: 760; } .quote h3{ margin: 0 0 6px; } .quote-form .two{ display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 6px; } .pricing{ display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: stretch; } .price h3{ margin: 0 0 2px; } .price-tag{ margin: 10px 0 8px; font-size: 2.1rem; font-weight: 860; } .currency{ font-size: 1.1rem; opacity: 0.85; vertical-align: super; } .per{ font-size: 1rem; opacity: 0.7; font-weight: 700; margin-left: 4px; } .featured{ border-color: rgba(106,228,255,0.38); background: radial-gradient(520px 260px at 35% 0%, rgba(106,228,255,0.18), transparent 55%), radial-gradient(520px 280px at 95% 15%, rgba(155,123,255,0.18), transparent 55%), rgba(255,255,255,0.06); transform: translateY(-4px); } .badge.top{ position:absolute; transform: translateY(-10px); background: rgba(106,228,255,0.18); border-color: rgba(106,228,255,0.24); } .price.featured{ position: relative; } .checklist{ margin-top: 14px; display:grid; gap: 10px; } .check{ display:flex; gap: 10px; align-items:center; padding: 12px 12px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.04); } .check span{ width: 24px; height: 24px; border-radius: 999px; display:grid; place-items:center; background: rgba(53,208,127,0.20); border: 1px solid rgba(53,208,127,0.35); color: rgba(255,255,255,0.95); font-weight: 900; } .cta-row{ margin-top: 16px; display:flex; gap: 12px; flex-wrap: wrap; } .map{ min-height: 260px; display:flex; flex-direction: column; justify-content: space-between; overflow:hidden; background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02)), rgba(255,255,255,0.06); } .map-grid{ position: relative; flex: 1; border-radius: 16px; border: 1px solid rgba(255,255,255,0.10); background: radial-gradient(140px 140px at 35% 40%, rgba(106,228,255,0.18), transparent 60%), radial-gradient(160px 160px at 70% 55%, rgba(155,123,255,0.18), transparent 60%), repeating-linear-gradient(0deg, rgba(255,255,255,0.06), rgba(255,255,255,0.06) 1px, transparent 1px, transparent 16px), repeating-linear-gradient(90deg, rgba(255,255,255,0.06), rgba(255,255,255,0.06) 1px, transparent 1px, transparent 16px); margin-bottom: 14px; } .pin{ position:absolute; width: 14px; height: 14px; border-radius: 999px; background: rgba(53,208,127,0.95); border: 3px solid rgba(11,16,32,0.85); box-shadow: 0 10px 25px rgba(0,0,0,0.35); } .pin.p1{ left: 20%; top: 30%; } .pin.p2{ left: 55%; top: 42%; background: rgba(106,228,255,0.95); } .pin.p3{ left: 72%; top: 62%; background: rgba(155,123,255,0.95); } .pin.p4{ left: 38%; top: 66%; background: rgba(255,255,255,0.85); } .map-caption{ display:flex; align-items: baseline; justify-content: space-between; gap: 10px; } .map-caption .big{ margin: 0; font-size: 1.7rem; } .site-footer{ padding: 44px 0 28px; border-top: 1px solid rgba(255,255,255,0.08); background: rgba(0,0,0,0.10); } .footer-grid{ display:grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 14px; align-items:start; } .site-footer h4{ margin: 0 0 10px; } .site-footer a{ display:block; color: rgba(255,255,255,0.78); padding: 6px 0; } .site-footer a:hover{ color: rgba(255,255,255,0.92); } .footer-brand{ margin-bottom: 10px; } .newsletter{ display:flex; gap: 10px; flex-wrap: wrap; } .newsletter input{ flex: 1 1 190px; } .footer-bottom{ display:flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.08); } .sr-only{ position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip: rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; } /* Responsive */ @media (max-width: 900px){ .hero-grid, .split{ grid-template-columns: 1fr; } .featured{ transform: none; } .cards, .pricing{ grid-template-columns: 1fr; } .mini-grid{ grid-template-columns: 1fr; } .footer-grid{ grid-template-columns: 1fr 1fr; } } @media (max-width: 720px){ .nav-toggle-btn{ display:inline-flex; align-items:center; justify-content:center; } .site-nav{ position: absolute; right: 20px; top: 66px; width: min(320px, calc(100% - 40px)); flex-direction: column; align-items: stretch; gap: 6px; padding: 12px; border-radius: 18px; border: 1px solid rgba(255,255,255,0.14); background: rgba(11,16,32,0.92); box-shadow: var(--shadow); display:none; } .site-nav a{ padding: 12px 12px; } .nav-toggle:checked ~ .site-nav{ display:flex; } .stats{ grid-template-columns: 1fr; } .footer-grid{ grid-template-columns: 1fr; } } @media (prefers-reduced-motion: reduce){ .btn{ transition: none; } }