/* Houston Limo Chauffeur — Request a Quote skin (matches houstonlimochauffeur.com "Empire" theme)
   Drop-in: load this CSS + quote-theme.js on the ?quote=1 page. Form ids (qr_*) and qrSubmit() are untouched. */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

:root{--q-bg:#000;--q-surface:#111;--q-line:#2a2a2a;--q-gold:#BB973A;--q-gold2:#A3832F;--q-text:#fff;--q-muted:#bdbdbd;--q-faint:#8a8a8a}

html.qt-on,html.qt-on body{background:var(--q-bg)!important;margin:0}
#qrroot{background:var(--q-bg)!important;font-family:Lato,"Helvetica Neue",Arial,sans-serif!important;color:var(--q-text);min-height:100vh;-webkit-font-smoothing:antialiased}

/* ---- header ---- */
.qt-hdr{position:sticky;top:0;z-index:20;background:rgba(0,0,0,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--q-line)}
.qt-hdr .qt-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:74px}
.qt-brand{display:flex;flex-direction:column;text-decoration:none;color:#fff;line-height:1.1}
.qt-brand b{font-weight:400;font-size:.95rem;letter-spacing:.32em;text-transform:uppercase}
.qt-brand small{font-size:.55rem;letter-spacing:.32em;text-transform:uppercase;color:var(--q-gold);margin-top:.35rem}
.qt-nav{display:flex;align-items:center;gap:1.6rem}
.qt-nav a{color:#fff;text-decoration:none;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;font-weight:400}
.qt-nav a:hover{color:var(--q-gold)}
.qt-btn{display:inline-block;padding:.75rem 1.6rem;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;text-decoration:none;border:1px solid var(--q-gold);color:var(--q-gold)!important;background:transparent;transition:.2s}
.qt-btn:hover{background:var(--q-gold);color:#000!important}
.qt-btn.solid{background:var(--q-gold);color:#000!important}
.qt-btn.solid:hover{background:#fff;border-color:#fff}
.qt-nav a{white-space:nowrap}
@media(max-width:900px){.qt-nav a:not(.qt-btn){display:none}}

/* ---- hero band ---- */
.qt-hero{position:relative;min-height:340px;display:flex;align-items:center;background:#000 center/cover no-repeat;border-bottom:1px solid var(--q-line)}
.qt-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.75) 70%,#000)}
.qt-hero .qt-wrap{position:relative;padding-top:3rem;padding-bottom:5.5rem;text-align:center}
.qt-eyebrow{font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;color:var(--q-gold);margin-bottom:.8rem}
.qt-hero h1{margin:0;font-weight:300;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(1.9rem,4.2vw,3.2rem);line-height:1.15;color:#fff}
.qt-hero h1 em{font-style:normal;font-weight:400;color:var(--q-gold)}
.qt-hero p{max-width:60ch;margin:.9rem auto 0;color:var(--q-muted);font-size:.85rem;letter-spacing:.12em;text-transform:uppercase}
.qt-rule{width:40px;height:1px;background:var(--q-gold);margin:1.2rem auto 0}

/* ---- layout ---- */
.qt-wrap{max-width:1180px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
.qt-grid{display:grid;grid-template-columns:minmax(0,600px) 1fr;gap:3rem;align-items:start;margin-top:-4rem;position:relative;z-index:2;padding-bottom:4rem}
@media(max-width:960px){.qt-grid{grid-template-columns:1fr;margin-top:-2.5rem}}

/* the original card: #qrroot > div > div:last-child  (white card built by the app) */
#qrroot .qt-card{max-width:none!important;margin:0!important;padding:0!important}
#qrroot .qt-card>div:first-child{display:none!important}               /* app's own small header — replaced by ours */
#qrroot .qt-card>div:last-child{background:#fff!important;border:1px solid var(--q-gold)!important;border-radius:0!important;padding:2rem 2rem 1.6rem!important;box-shadow:0 30px 70px rgba(0,0,0,.6)!important;color:#111}
#qrroot .qt-card>div:last-child>div:first-child{font-family:Lato,sans-serif!important;font-weight:300!important;text-transform:uppercase;letter-spacing:.06em;font-size:1.6rem!important;color:#111!important;margin-bottom:.3rem!important}
#qrroot .qt-card>div:last-child>div:first-child::before{content:"Reserve in seconds";display:block;font-size:.62rem;letter-spacing:.3em;color:var(--q-gold);font-weight:700;margin-bottom:.5rem}
#qrroot .qt-card>div:last-child>div:nth-child(2){color:#666!important;font-size:.85rem!important;margin-bottom:1.4rem!important;padding-bottom:1rem;border-bottom:1px solid #eee}
@media(max-width:700px){#qrroot .qt-card>div:last-child{padding:1.4rem 1.2rem!important}}

/* labels + fields */
#qrroot .qt-card [style*="text-transform:uppercase"]{font-size:.62rem!important;letter-spacing:.22em!important;color:#666!important;font-weight:700!important;margin-bottom:.35rem!important}
#qrroot .qt-card input,#qrroot .qt-card select,#qrroot .qt-card textarea{border:1px solid #d9d9d9!important;border-radius:0!important;background:#faf9f7!important;font-family:Lato,sans-serif!important;font-size:.95rem!important;padding:.8rem .9rem!important;color:#111!important;transition:border-color .15s,box-shadow .15s;outline:none}
#qrroot .qt-card input:focus,#qrroot .qt-card select:focus,#qrroot .qt-card textarea:focus{border-color:var(--q-gold)!important;box-shadow:0 0 0 3px rgba(187,151,58,.18)!important;background:#fff!important}
#qrroot .qt-card input::placeholder,#qrroot .qt-card textarea::placeholder{color:#9a9a9a}
#qrroot .qt-card select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23BB973A' stroke-width='1.6'/></svg>")!important;background-repeat:no-repeat!important;background-position:right .9rem center!important;padding-right:2.4rem!important}
#qrroot .qt-card [style*="display:flex"]{gap:.9rem!important}
@media(max-width:520px){#qrroot .qt-card [style*="display:flex"]{flex-direction:column;gap:0!important}}

/* submit */
#qrroot #qr_submit{background:var(--q-gold)!important;color:#000!important;border-radius:0!important;font-family:Lato,sans-serif!important;font-size:.75rem!important;letter-spacing:.26em!important;text-transform:uppercase;font-weight:700!important;padding:1.05rem!important;transition:.2s}
#qrroot #qr_submit:hover{background:#111!important;color:var(--q-gold)!important}
#qrroot #qr_msg{font-family:Lato,sans-serif;font-size:.85rem!important}
#qrroot .qt-card a[href*="app.houstonlimochauffeur.com"]{color:var(--q-gold2)!important;font-size:.7rem!important;letter-spacing:.2em;text-transform:uppercase;font-weight:700}

/* ---- sidebar ---- */
.qt-side{padding-top:5rem}
@media(max-width:960px){.qt-side{padding-top:0}}
.qt-side h3{margin:0 0 1.4rem;font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:1.1rem;color:#fff}
.qt-side h3 span{color:var(--q-gold)}
.qt-why{display:grid;gap:1.1rem;margin:0 0 2.4rem;padding:0;list-style:none}
.qt-why li{display:grid;grid-template-columns:44px 1fr;gap:1rem;align-items:start}
.qt-why i{width:44px;height:44px;border:1px solid var(--q-gold);display:grid;place-items:center;color:var(--q-gold);font-style:normal;transform:rotate(45deg)}
.qt-why i svg{transform:rotate(-45deg);width:20px;height:20px}
.qt-why b{display:block;font-weight:400;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:#fff;margin-bottom:.2rem}
.qt-why p{margin:0;color:var(--q-muted);font-size:.9rem;line-height:1.6;font-weight:300}
.qt-steps{display:grid;gap:.8rem;margin:0 0 2.4rem;padding:0;list-style:none;counter-reset:s}
.qt-steps li{counter-increment:s;display:flex;gap:1rem;align-items:baseline;padding:.9rem 1rem;background:var(--q-surface);border:1px solid var(--q-line);color:var(--q-muted);font-size:.9rem;font-weight:300}
.qt-steps li::before{content:counter(s,decimal-leading-zero);color:var(--q-gold);font-size:.8rem;letter-spacing:.2em;font-weight:700}
.qt-steps li strong{color:#fff;font-weight:400}
.qt-contact{border-top:1px solid var(--q-line);padding-top:1.4rem;color:var(--q-muted);font-size:.85rem;font-weight:300}
.qt-contact a{color:#fff;text-decoration:none;font-size:1.2rem;letter-spacing:.08em;font-weight:300;display:block;margin:.3rem 0}
.qt-contact a:hover{color:var(--q-gold)}
.qt-contact small{display:block;color:var(--q-faint);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}

/* ---- fleet strip ---- */
.qt-fleet{border-top:1px solid var(--q-line);padding:3.5rem 0 4rem;text-align:center}
.qt-fleet h2{margin:0;font-weight:300;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(1.6rem,3vw,2.4rem);color:#fff}
.qt-fleet h2 em{font-style:normal;font-weight:400;color:var(--q-gold)}
.qt-fleet .qt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:2rem}
.qt-fleet a{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#111 center/cover no-repeat;text-decoration:none;border:1px solid var(--q-line)}
.qt-fleet a span{position:absolute;left:0;right:0;bottom:0;padding:.9rem;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;text-align:left}
.qt-fleet a:hover{border-color:var(--q-gold)}

/* ---- footer ---- */
.qt-foot{border-top:1px solid var(--q-line);padding:1.6rem 0;color:var(--q-faint);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;text-align:center}
.qt-foot a{color:var(--q-muted);text-decoration:none;margin:0 .6rem}
.qt-foot a:hover{color:var(--q-gold)}

/* Google Places dropdown to match */
.qt-on .pac-container{font-family:Lato,sans-serif;border-radius:0;border:1px solid var(--q-gold);box-shadow:0 10px 30px rgba(0,0,0,.3)}
.qt-on .pac-item{padding:.5rem .8rem;font-size:.9rem}
.qt-on .pac-item:hover,.qt-on .pac-item-selected{background:#faf3e0}
@media(max-width:700px){.qt-hdr .qt-wrap{height:64px}.qt-brand b{font-size:.72rem;letter-spacing:.22em;white-space:nowrap}.qt-brand small{font-size:.48rem}.qt-btn{white-space:nowrap;padding:.65rem 1.1rem;font-size:.62rem}.qt-hero{min-height:280px}}
