:root{--navy-deep:#060b16;--navy:#0d1a30;--navy-soft:#16233d;--brand-red:#f81c14;--brand-blue:#1f7ecc;--brand-red-bright:#ff4a40;--label-accent:var(--steel-bright);--steel:#aebac8;--steel-bright:#eef2f7;--hairline:#aebac829;--danger:#e05a4e;--success:#6fbf8b}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--navy-deep);background-image:radial-gradient(ellipse 90% 55% at 50% 0%, #ffffff14 0%, #ffffff05 45%, transparent 72%), linear-gradient(180deg, var(--navy-deep) 0%, var(--navy) 55%, var(--navy-soft) 100%);color:var(--steel-bright);background-attachment:fixed;font-family:Barlow,-apple-system,Segoe UI,Helvetica,Arial,sans-serif}a{color:inherit}h1,h2,h3{text-transform:uppercase;letter-spacing:.02em;font-family:Oswald,sans-serif}.site{flex-direction:column;min-height:100%;display:flex}.topbar{background:var(--navy-deep);border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 32px;font-size:.82rem;display:flex}.topbar-left{align-items:center;gap:24px;display:flex}.topbar-item{align-items:center;display:flex;position:relative}.topbar-trigger{color:var(--steel-bright);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:4px 0;display:flex}.topbar-address .topbar-trigger:hover,.topbar-hours-trigger:hover{color:var(--brand-red-bright)}.topbar-hours-trigger{font-weight:500}.topbar-popover{background:var(--navy);border:1px solid var(--hairline);z-index:20;border-radius:8px;min-width:220px;padding:16px;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 12px 32px #00000073}.topbar-popover p{color:var(--steel-bright);margin-bottom:12px;line-height:1.5}.topbar-hours-popover{min-width:240px;padding:10px;left:auto;right:0}.hours-row{color:var(--steel);border-radius:4px;justify-content:space-between;gap:20px;padding:6px 10px;display:flex}.hours-row-today{color:var(--steel-bright);background:var(--navy-soft);font-weight:600}@media (width<=760px){.topbar-address-text{display:none}}.site-header{border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:22px 32px;display:flex}.brand{align-items:center;gap:14px;text-decoration:none;display:flex}.brand-logo{width:68px;height:auto;display:block}.brand span{letter-spacing:.04em;font-family:Oswald,sans-serif;font-size:1.4rem;font-weight:700}.site-nav{gap:28px;display:flex}.site-nav a{color:var(--steel);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid #0000;padding-bottom:4px;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s,border-color .2s}.site-nav a:hover,.site-nav a.active{color:var(--brand-red-bright);border-bottom-color:var(--brand-red-bright)}.horizon{background:linear-gradient(90deg, transparent 0%, var(--steel) 12%, var(--steel-bright) 50%, var(--steel) 88%, transparent 100%);width:min(420px,80%);height:2px;margin:22px auto;position:relative;overflow:hidden visible}.horizon:after{content:"";background:linear-gradient(90deg,#0000,#5ac8fa 50%,#0000);width:40%;animation:6s ease-in-out infinite shimmer;position:absolute;inset:0;box-shadow:0 0 14px 4px #5ac8fad9}@keyframes shimmer{0%{transform:translate(-120%)}50%{transform:translate(260%)}to{transform:translate(260%)}}@media (prefers-reduced-motion:reduce){.horizon:after{animation:none;display:none}}.site-main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:40px 32px 80px}.site-footer{border-top:1px solid var(--hairline);text-align:center;color:var(--steel);padding:24px 32px;font-size:.82rem}.site-footer-tagline{color:#4c5a70;margin-top:6px;font-style:italic}.page-title{margin-bottom:8px;font-size:clamp(1.6rem,4vw,2.4rem)}.page-subtitle{color:var(--steel);max-width:640px;margin-bottom:32px}.home-page{text-align:center}.home-page .page-subtitle{margin-left:auto;margin-right:auto}.welcome-banner{margin-bottom:16px}.welcome-banner p{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-red-bright);font-family:Oswald,sans-serif;font-size:clamp(2.2rem,5.5vw,3.4rem);font-weight:700;line-height:1.1}.home-cta-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;max-width:780px;margin:8px auto 0;display:grid}.home-cta-card{background:var(--navy-soft);border:1px solid var(--hairline);color:inherit;text-align:left;border-radius:10px;padding:28px 26px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.home-cta-card:hover{border-color:var(--brand-red);transform:translateY(-3px)}.home-cta-card h2{text-transform:none;letter-spacing:0;margin-bottom:8px;font-size:1.15rem}.home-cta-card p{color:var(--steel);margin-bottom:16px;font-size:.92rem}.home-cta-link{color:var(--brand-red-bright);text-transform:uppercase;letter-spacing:.04em;font-size:.88rem;font-weight:600}.muted{color:var(--steel)}.muted.small{margin-top:6px;font-size:.82rem}.error-text{color:var(--danger);margin:8px 0}.success-text{color:var(--success);margin:8px 0}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;margin-top:24px;display:grid}.vehicle-card-link{color:inherit;text-decoration:none}.vehicle-card{background:var(--navy-soft);border:1px solid var(--hairline);border-radius:10px;transition:transform .15s,border-color .15s;overflow:hidden}.vehicle-card-link:hover .vehicle-card{border-color:var(--brand-red);transform:translateY(-3px)}.vehicle-card-photo{aspect-ratio:4/3;background:var(--navy);position:relative}.vehicle-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.vehicle-card-photo-placeholder{background:var(--navy);width:100%;height:100%}.vehicle-card-body{padding:14px 16px 18px}.vehicle-card-body h2{text-transform:none;letter-spacing:0;font-size:1.05rem}.vehicle-trim{color:var(--steel);margin-top:2px;font-size:.88rem}.vehicle-price{color:var(--brand-red-bright);margin-top:8px;font-size:1.1rem;font-weight:600}.vehicle-card-sold{opacity:.85}.sold-banner{background:var(--brand-red);color:#fff;letter-spacing:.08em;white-space:nowrap;padding:4px 40px;font-family:Oswald,sans-serif;font-size:.78rem;font-weight:700;position:absolute;top:14px;left:-34px;transform:rotate(-38deg);box-shadow:0 2px 8px #0006}.pending-banner{background:var(--brand-blue);padding:4px 26px}.back-link{color:var(--steel);margin-bottom:20px;font-size:.88rem;text-decoration:none;display:inline-block}.back-link:hover{color:var(--brand-red-bright)}.vehicle-detail-layout{grid-template-columns:1.3fr 1fr;gap:40px;display:grid}.vehicle-gallery-main{aspect-ratio:4/3;background:var(--navy-soft);border:1px solid var(--hairline);border-radius:10px;overflow:hidden}.vehicle-gallery-main img{object-fit:cover;width:100%;height:100%;display:block}.vehicle-gallery-thumbs{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.vehicle-gallery-thumb{background:var(--navy-soft);cursor:pointer;border:2px solid #0000;border-radius:6px;width:64px;height:48px;padding:0;overflow:hidden}.vehicle-gallery-thumb.active{border-color:var(--brand-red)}.vehicle-gallery-thumb img{object-fit:cover;width:100%;height:100%;display:block}.vehicle-detail-info h1{font-size:clamp(1.5rem,3.4vw,2.1rem)}.vehicle-price-large{color:var(--brand-red-bright);margin:14px 0;font-size:1.6rem;font-weight:600}.vehicle-specs{grid-template-columns:auto 1fr;gap:6px 16px;margin-bottom:20px;display:grid}.vehicle-specs dt{color:var(--steel)}.vehicle-features{margin-top:22px}.vehicle-features h2{margin-bottom:8px;font-size:1rem}.vehicle-features ul{color:var(--steel-bright);padding-left:20px}.vehicle-notes{margin-top:22px}.vehicle-notes h2{margin-bottom:8px;font-size:1rem}.btn-primary,.btn-secondary{letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-align:center;border:none;border-radius:6px;padding:12px 22px;font-family:Barlow,sans-serif;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.btn-primary{background:var(--brand-red);color:#fff}.btn-primary:hover{background:var(--brand-red-bright)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{color:var(--steel-bright);border:1px solid var(--hairline);background:0 0}.btn-secondary:hover{border-color:var(--brand-red);color:var(--brand-red-bright)}.btn-test-drive{margin:8px 0 20px}.btn-danger-text{color:var(--danger);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.form{flex-direction:column;gap:14px;max-width:480px;display:flex}.form-narrow{max-width:340px}.form label{color:var(--steel);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.form input,.form textarea,.vin-lookup-row input{background:var(--navy-soft);border:1px solid var(--hairline);color:var(--steel-bright);border-radius:6px;padding:10px 12px;font-family:inherit;font-size:.95rem}.form input:focus,.form textarea:focus,.vin-lookup-row input:focus{border-color:var(--brand-red);outline:none}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px;max-width:640px;display:grid}.contact-layout{grid-template-columns:1fr 1.2fr;gap:40px;display:grid}.contact-details>div{margin-bottom:22px}.contact-details h2{color:var(--label-accent);margin-bottom:6px;font-size:.95rem}.contact-map{border:1px solid var(--hairline);border-radius:10px;min-height:320px;overflow:hidden}.contact-map iframe{border:0;width:100%;height:100%;min-height:320px}.modal-backdrop{z-index:50;background:#060b16c7;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--navy);border:1px solid var(--hairline);border-radius:12px;width:100%;max-width:420px;padding:32px;position:relative}.modal-close{color:var(--steel);cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1;position:absolute;top:14px;right:16px}.modal h2{margin-bottom:4px;font-size:1.2rem}.temp-password-display{letter-spacing:.04em;background:var(--navy-soft);border:1px solid var(--hairline);text-align:center;-webkit-user-select:all;user-select:all;border-radius:6px;margin:14px 0;padding:12px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.3rem}.admin-dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.admin-dashboard-actions{gap:10px;display:flex}.admin-table{border-collapse:collapse;width:100%}.admin-table th{text-align:left;color:var(--steel);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--hairline);padding:10px 12px;font-size:.8rem;font-weight:500}.admin-table td{border-bottom:1px solid var(--hairline);padding:10px 12px;font-size:.9rem}.admin-table-thumb{object-fit:cover;border-radius:4px;width:56px;height:42px;display:block}.admin-table-actions{white-space:nowrap;align-items:center;gap:12px;display:flex}.admin-table-actions a{color:var(--brand-red-bright);font-size:.85rem;text-decoration:none}.admin-table-actions button{color:var(--steel-bright);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.status-sold{color:var(--danger)}.status-active{color:var(--success)}.vin-lookup-row{gap:10px;max-width:480px;margin-top:20px;display:flex}.vin-lookup-row input{flex:1}.admin-photos-section{max-width:640px;margin-top:36px}.admin-photo-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-bottom:16px;display:grid}.admin-photo-tile{text-align:center}.admin-photo-tile img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--hairline);border-radius:6px;width:100%}.admin-photo-tile button{margin-top:4px}.feedback-widget{z-index:40;position:fixed;bottom:24px;right:24px}.feedback-fab{background:var(--brand-red);color:#fff;letter-spacing:.03em;cursor:pointer;border:none;border-radius:999px;padding:14px 22px;font-family:Barlow,sans-serif;font-size:.9rem;font-weight:600;box-shadow:0 8px 24px #0006}.feedback-fab:hover{background:var(--brand-red-bright)}.feedback-panel{background:var(--navy);border:1px solid var(--hairline);border-radius:10px;width:320px;padding:18px;position:absolute;bottom:calc(100% + 12px);right:0;box-shadow:0 12px 32px #00000073}.feedback-panel-header{justify-content:space-between;align-items:center;margin-bottom:4px;font-weight:600;display:flex}.feedback-panel textarea{background:var(--navy-soft);border:1px solid var(--hairline);color:var(--steel-bright);resize:vertical;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:.9rem}@media (width<=860px){.vehicle-detail-layout,.contact-layout,.form-grid{grid-template-columns:1fr}}
