.hero .hero-side{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,410px);align-items:center;gap:48px;padding-top:140px}
.hero-introduction{display:flex;flex-direction:column;align-items:flex-start;gap:24px;min-width:0;text-align:left}
.hero[data-welcome="1"] .hero-introduction{order:2;align-items:flex-end;text-align:right}
.hero[data-welcome="1"] .taxi-widget{order:1}
.taxi-widget{padding:26px;background:#fffdf7;color:#193c2e;border:1px solid #d9dfce;border-radius:24px;box-shadow:0 24px 70px #071d2940;text-align:left;width:100%;min-width:0;scroll-margin-top:100px}
.taxi-kicker{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#5b7156}.taxi-widget h2{font-size:30px;line-height:1.12;margin:10px 0}.taxi-widget p{font-size:15px;line-height:1.45;margin:8px 0 16px}
.taxi-widget form{display:grid;gap:12px}.taxi-widget label{display:grid;gap:5px;font-size:14px;font-weight:600;min-width:0}.taxi-widget input,.taxi-widget textarea{font:inherit;font-size:16px;width:100%;min-width:0;min-height:44px;border:1px solid #b8c7b4;border-radius:9px;padding:10px;background:#fff;color:#193c2e;box-sizing:border-box}
.taxi-widget input:focus,.taxi-widget textarea:focus{outline:2px solid #39724d;outline-offset:2px}.taxi-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(70px,1fr);gap:12px}.taxi-widget small{font-size:12px;color:#526350;line-height:1.45}.taxi-airport{justify-self:start;border:1px solid #c8d6c2;border-radius:20px;background:#edf2e7;padding:6px 12px;color:#234b36;cursor:pointer;min-height:36px}.taxi-widget summary{cursor:pointer;padding:6px 0;font-size:14px}.taxi-price{display:grid;gap:4px;border-left:3px solid #bc9457;padding:10px 12px;background:#f1eddf;font-size:13px;line-height:1.45}.taxi-widget .btn{white-space:normal;width:100%;text-align:center;justify-content:center}.taxi-widget [role=status]:empty{display:none}
.taxi-section{background:#edf2e8}.taxi-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.taxi-section .lead{margin:20px 0 28px}.taxi-steps{list-style:none;padding:0;display:grid;gap:16px}.taxi-steps li{padding:22px 24px;background:#fffdf7;border:1px solid #d4dfcc;border-radius:16px}.taxi-steps strong{font-size:21px}.taxi-steps p{margin:8px 0 0;line-height:1.6}.taxi-widget h2{scroll-margin-top:110px}
#taxiMessages,.taxi-messages{max-height:300px;overflow:auto;display:grid;gap:8px;padding:8px 0}.taxi-message{padding:12px;border-radius:12px;background:#e9efe3;white-space:pre-wrap;overflow-wrap:anywhere}.taxi-message[data-role=admin]{background:#f1e8d6}.taxi-message small{display:block}.taxi-admin{max-width:1000px;margin:40px auto;padding:24px}.taxi-admin article{border:1px solid #b8c7b4;padding:24px;margin:20px 0;border-radius:16px}.taxi-admin textarea{width:100%;padding:12px;font:inherit}
@media(max-width:1000px){.hero .hero-side{grid-template-columns:1fr;gap:32px;padding-top:120px}.hero-introduction{max-width:720px}.taxi-widget{max-width:600px}.hero[data-welcome="1"] .hero-introduction{order:0;align-items:flex-start;text-align:left}.hero[data-welcome="1"] .taxi-widget{order:0}.hero[data-welcome="1"] .hero-actions,.hero[data-welcome="1"] .hero-facts{justify-content:flex-start}.taxi-section-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:560px){.taxi-widget{padding:22px}.hero .hero-side{padding-bottom:90px}.taxi-widget h2{font-size:28px}.taxi-fields{grid-template-columns:minmax(0,1fr) 80px}}

.taxi-widget input[type=datetime-local]{font-size:14px}
@media(min-width:1001px){.taxi-widget{padding:22px}.taxi-widget form{gap:9px}.taxi-widget h2{font-size:28px}.hero .hero-side{padding-top:110px}}
@media(min-width:1001px){.hero[data-welcome="1"] .hero-side{grid-template-columns:minmax(330px,410px) minmax(0,1fr)}.hero-introduction .hero-lockup{flex-wrap:nowrap;gap:12px}.hero-introduction .wordmark{white-space:nowrap;font-size:clamp(26px,2.7vw,40px)}.hero-introduction .lockup-mark{flex:0 0 36px}.hero h1.hero-tagline{font-size:clamp(38px,4.7vw,68px)}}
/* Decorative taxi, not a driver-location indicator. */
.taxi-widget{position:relative}.taxi-widget>.taxi-kicker{display:block;padding-right:95px;min-height:27px}
.taxi-drive{position:absolute;right:20px;top:16px;width:88px;height:39px;overflow:hidden;pointer-events:none}
.taxi-drive-road{position:absolute;left:0;right:0;bottom:2px;height:2px;background:repeating-linear-gradient(90deg,#91a080 0 8px,transparent 8px 15px);animation:taxi-road 2.8s linear infinite}
.taxi-drive-car{position:absolute;width:62px;height:34px;left:8px;bottom:3px;animation:taxi-cruise 7s ease-in-out infinite;filter:drop-shadow(0 2px 1px #2b48361c)}
@keyframes taxi-road{to{background-position:-30px 0}}
@keyframes taxi-cruise{0%,100%{transform:translateX(-4px) translateY(0)}30%{transform:translateX(9px) translateY(-1px)}60%{transform:translateX(5px) translateY(0)}80%{transform:translateX(1px) translateY(-1px)}}
@media(max-width:560px){.taxi-drive{right:18px;top:17px;width:78px}.taxi-widget>.taxi-kicker{padding-right:80px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.taxi-drive-road,.taxi-drive-car{animation:none}}

/* Contact channels and recoverable mail errors. */
.taxi-contact{border:0;padding:0;margin:16px 0;min-width:0}.taxi-contact[hidden]{display:none}.taxi-contact legend{font-weight:700;margin-bottom:12px}.taxi-contact label{display:block;margin:10px 0}.taxi-contact .taxi-consent{display:flex;gap:9px;align-items:flex-start;font-size:.85rem;line-height:1.5}.taxi-consent input[type=checkbox]{width:18px;min-height:18px;height:18px;flex:0 0 18px;margin-top:3px}.taxi-channel-hint{font-size:.85rem;font-weight:700;margin:16px 0 8px}.taxi-whatsapp{margin-top:8px;text-align:center;white-space:normal}#taxiStatus:empty{display:none}#taxiStatus{line-height:1.6}#taxiStatus[data-state=error]{padding:12px 14px;border-left:3px solid #a56b36;background:#f6edda;color:#59482d}#taxiStatus[data-state=success]{padding:14px;border-left:3px solid #38634d;background:#edf3e9}.taxi-recovery{margin-top:14px;padding-top:12px;border-top:1px solid #d8dfcf}.taxi-recovery p{font-size:.8rem;overflow-wrap:anywhere}.taxi-recovery a{overflow-wrap:anywhere}

.taxi-phone-help{font-size:.78rem;line-height:1.5;color:#536849;margin:10px 0 0}
