:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #818cf8;--secondary: #0ea5e9;--accent: #10b981;--dark: #0f172a;--dark-light: #1e293b;--gray-900: #111827;--gray-800: #1f2937;--gray-700: #374151;--gray-600: #4b5563;--gray-500: #6b7280;--gray-400: #9ca3af;--gray-300: #d1d5db;--gray-200: #e5e7eb;--gray-100: #f3f4f6;--white: #ffffff;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-sm: .375rem;--radius: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--gray-100);color:var(--gray-900);line-height:1.6;min-height:100vh}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.header{background:var(--white);border-bottom:1px solid var(--gray-200);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2}.header .container{display:flex;align-items:center;justify-content:space-between;height:4rem}.logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#8b5cf6,#ec4899,#06b6d4);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:24px;box-shadow:0 0 20px #8b5cf666}.logo-lambda{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-text{font-size:1.35rem;font-weight:800;color:var(--gray-900);letter-spacing:-.02em}.logo-core{color:var(--gray-500);font-weight:500}.demo-badge{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--white);padding:.375rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500}.hero{background:linear-gradient(135deg,var(--dark) 0%,var(--dark-light) 100%);color:var(--white);padding:3rem 0;text-align:center}.hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,var(--white) 0%,var(--gray-300) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.125rem;color:var(--gray-400);max-width:700px;margin:0 auto;line-height:1.7}.main-content{padding:3rem 0}.grid-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}@media (max-width: 1024px){.grid-layout{grid-template-columns:1fr}}.section-header{margin-bottom:1.5rem}.section-header.centered{text-align:center}.section-header h2{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin-bottom:.5rem}.section-header p{color:var(--gray-600);font-size:.9375rem}.voice-agent-card{background:var(--white);border-radius:var(--radius-xl);padding:2.5rem;text-align:center;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}.agent-avatar{position:relative;width:120px;height:120px;margin:0 auto 1.5rem}.avatar-ring{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);padding:4px;animation:pulse-ring 2s ease-in-out infinite}.avatar-inner{width:100%;height:100%;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center}.avatar-inner svg{width:48px;height:48px;color:var(--primary)}.pulse-ring{position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;border-radius:50%;border:2px solid var(--primary);opacity:0;animation:pulse-outer 2s ease-in-out infinite}@keyframes pulse-ring{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes pulse-outer{0%{transform:scale(.95);opacity:0}50%{opacity:.3}to{transform:scale(1.1);opacity:0}}.voice-agent-card h3{font-size:1.375rem;font-weight:600;color:var(--gray-900);margin-bottom:.5rem}.agent-description{color:var(--gray-600);font-size:.9375rem;margin-bottom:1.5rem;max-width:300px;margin-left:auto;margin-right:auto}.start-call-btn{display:inline-flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,var(--accent) 0%,#059669 100%);color:var(--white);border:none;padding:1rem 2rem;border-radius:var(--radius-lg);font-size:1.0625rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #10b98159}.start-call-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98173}.start-call-btn:active{transform:translateY(0)}.btn-icon svg{width:22px;height:22px}#elevenlabs-widget-container{margin-bottom:1.5rem}.agent-features{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.feature-tag{background:var(--gray-100);color:var(--gray-700);padding:.375rem .875rem;border-radius:9999px;font-size:.8125rem;font-weight:500}.calendar-card{background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}.calendar-header-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.calendar-status{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--gray-700)}.status-dot{width:8px;height:8px;background:var(--success);border-radius:50%;animation:status-pulse 2s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.5}}.refresh-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--white);border:1px solid var(--gray-300);border-radius:var(--radius);cursor:pointer;transition:all .2s ease}.refresh-btn:hover{background:var(--gray-100);border-color:var(--gray-400)}.refresh-btn svg{width:18px;height:18px;color:var(--gray-600)}.refresh-btn.refreshing svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bookings-card{background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}.bookings-header-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.bookings-list{min-height:400px;max-height:500px;overflow-y:auto}.bookings-loading,.bookings-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;min-height:300px;color:var(--gray-500)}.bookings-empty svg{width:64px;height:64px;margin-bottom:1rem;color:var(--gray-400)}.bookings-empty p{font-size:1.125rem;font-weight:600;color:var(--gray-700);margin-bottom:.25rem}.bookings-empty span{font-size:.875rem;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.booking-item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--gray-100);transition:background .15s ease}.booking-item:last-child{border-bottom:none}.booking-item:hover{background:var(--gray-50)}.booking-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:60px;padding:.75rem;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:var(--radius-md);color:#fff;text-align:center}.booking-date .day{font-size:1.5rem;font-weight:700;line-height:1}.booking-date .month{font-size:.75rem;font-weight:500;text-transform:uppercase;margin-top:.25rem}.booking-details{flex:1;min-width:0}.booking-name{font-size:1rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.booking-time{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--gray-600);margin-bottom:.5rem}.booking-time svg{width:14px;height:14px}.booking-vehicle{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;background:var(--gray-100);border-radius:9999px;font-size:.75rem;font-weight:500;color:var(--gray-700)}.booking-vehicle svg{width:12px;height:12px}.booking-status{display:flex;align-items:center;justify-content:center;padding:.375rem;border-radius:var(--radius);background:var(--gray-100)}.booking-status.confirmed{background:#10b9811a;color:var(--success)}.booking-status svg{width:18px;height:18px}.calendar-placeholder span{font-size:.875rem}.calendar-placeholder.hidden{display:none}.vehicles-section{margin-top:1rem}.vehicles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}@media (max-width: 900px){.vehicles-grid{grid-template-columns:1fr}}.vehicle-card{background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200);transition:transform .2s ease,box-shadow .2s ease}.vehicle-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.vehicle-image{position:relative;height:240px;background:var(--gray-200);overflow:hidden}.vehicle-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.vehicle-card:hover .vehicle-image img{transform:scale(1.05)}.vehicle-badge{position:absolute;top:1rem;right:1rem;background:var(--accent);color:var(--white);padding:.375rem .875rem;border-radius:9999px;font-size:.8125rem;font-weight:600}.vehicle-details{padding:1.5rem}.vehicle-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.25rem}.vehicle-header h3{font-size:1.25rem;font-weight:700;color:var(--gray-900)}.vehicle-price{font-size:1.25rem;font-weight:700;color:var(--primary)}.vehicle-variant{color:var(--gray-600);font-size:.9375rem;margin-bottom:1.25rem}.vehicle-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius-md);margin-bottom:1rem}.spec{text-align:center}.spec-label{display:block;font-size:.75rem;color:var(--gray-500);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.025em}.spec-value{display:block;font-size:.875rem;font-weight:600;color:var(--gray-900)}.vehicle-features{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.vehicle-features span{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--white);padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.vehicle-description{color:var(--gray-600);font-size:.875rem;line-height:1.6}.footer{background:var(--dark);color:var(--gray-400);padding:2.5rem 0;margin-top:2rem}.footer-content{text-align:center}.footer-brand{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.footer-brand .logo-lambda{font-size:1.5rem}.footer-brand span:last-child{font-size:1rem;font-weight:600;color:var(--gray-300)}.footer-text{font-size:.875rem;line-height:1.7;margin-bottom:1.5rem}.footer-text a{color:var(--primary-light);text-decoration:none;font-weight:500}.footer-text a:hover{text-decoration:underline}.footer-tech{display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:.8125rem}.tech-badge{background:var(--dark-light);padding:.375rem .75rem;border-radius:var(--radius);border:1px solid var(--gray-700)}@media (max-width: 640px){.hero h1{font-size:1.875rem}.hero-subtitle{font-size:1rem}.voice-agent-card{padding:1.5rem}.vehicle-specs{grid-template-columns:repeat(2,1fr)}.vehicle-header{flex-direction:column;gap:.5rem}}.call-interface{margin-bottom:1.5rem;min-height:80px;display:flex;align-items:center;justify-content:center}.call-state{display:flex;flex-direction:column;align-items:center;gap:1rem}.hidden{display:none!important}.ringing-state{padding:1.5rem}.ringing-animation{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem}.ring-circle{width:12px;height:12px;background:var(--primary);border-radius:50%;animation:ring-bounce 1.4s ease-in-out infinite}.ring-circle:nth-child(1){animation-delay:0s}.ring-circle:nth-child(2){animation-delay:.2s}.ring-circle:nth-child(3){animation-delay:.4s}@keyframes ring-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.ringing-text{color:var(--gray-600);font-size:1rem;font-weight:500}.connected-state{padding:1rem;width:100%}.call-timer{font-size:2rem;font-weight:700;color:var(--gray-900);font-variant-numeric:tabular-nums;margin-bottom:1rem}.audio-visualizer{display:flex;align-items:center;justify-content:center;gap:4px;height:40px;margin-bottom:1.5rem}.audio-visualizer .bar{width:4px;height:20px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:2px;animation:audio-wave 1s ease-in-out infinite}.audio-visualizer .bar:nth-child(1){animation-delay:0s}.audio-visualizer .bar:nth-child(2){animation-delay:.1s}.audio-visualizer .bar:nth-child(3){animation-delay:.2s}.audio-visualizer .bar:nth-child(4){animation-delay:.3s}.audio-visualizer .bar:nth-child(5){animation-delay:.4s}@keyframes audio-wave{0%,to{height:8px}50%{height:32px}}.audio-visualizer.speaking .bar{animation-duration:.4s}.audio-visualizer.idle .bar{animation:none;height:8px}.end-call-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--error);color:var(--white);border:none;padding:.875rem 1.75rem;border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #ef444459}.end-call-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 6px 20px #ef444473}.end-call-btn:active{transform:translateY(0)}.end-call-btn svg{width:20px;height:20px}.agent-description.status-ringing{color:var(--primary);font-weight:500}.agent-description.status-connected{color:var(--success);font-weight:500}.voice-agent-card.ringing .avatar-ring{animation:avatar-ringing .5s ease-in-out infinite}.voice-agent-card.connected .avatar-ring{background:linear-gradient(135deg,var(--success) 0%,#059669 100%)}.voice-agent-card.connected .pulse-ring{border-color:var(--success)}.voice-agent-card.connected .avatar-inner svg{color:var(--success)}@keyframes avatar-ringing{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
