:root { --red:#ff6a00; --red-dark:#c94f00; --car-red:#c6302c; --ink:#1e2926; --muted:#66706b; --cream:#f7f2e8; --sand:#eadfcd; --green:#1e3b34; --white:#fffdf8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--white); color:var(--ink); font-family:var(--font-sans),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:82px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(22px,5vw,80px); background:rgba(255,253,248,.94); position:relative; z-index:10; border-bottom:1px solid rgba(30,41,38,.08); }
.brand { display:flex; align-items:center; gap:11px; font-size:18px; letter-spacing:-.4px; white-space:nowrap; }
.brand strong { display:block; font-size:11px; color:var(--red); text-transform:uppercase; letter-spacing:1.8px; }
.brand-mark { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:var(--red); color:white; font-family:var(--font-display); font-weight:800; font-size:24px; transform:rotate(-3deg); }
nav { display:flex; gap:32px; font-size:14px; font-weight:650; }
nav a:hover { color:var(--red); }
.language-switch{display:flex;align-items:center;gap:3px;padding:4px;border:1px solid #ded7ca;border-radius:999px;background:#fff}
.language-switch a{min-width:31px;padding:6px 7px;border-radius:999px;text-align:center;font-size:11px;font-weight:800;letter-spacing:.4px;color:var(--muted)}
.language-switch a:hover,.language-switch a.active{background:var(--ink);color:#fff}
.button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:51px; padding:0 22px; border-radius:999px; font-weight:750; transition:.2s ease; }
.button-whatsapp { background:#1f8e5b; color:white; box-shadow:0 8px 24px rgba(31,142,91,.2); }
.button-whatsapp > span:first-child { color:#fff; font-size:10px; box-shadow:0 0 0 4px rgba(255,255,255,.18); border-radius:50%; }
.button:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(31,142,91,.28); }
.button-arrow { margin-left:4px; font-size:18px; }
.header-cta { min-height:43px; padding:0 20px; font-size:14px; }
.hero { min-height:680px; display:grid; grid-template-columns:45% 55%; background:var(--cream); overflow:hidden; }
.hero-copy { padding:clamp(60px,8vw,118px) 5vw clamp(60px,8vw,110px); align-self:center; position:relative; z-index:2; }
.eyebrow { margin:0 0 18px; color:var(--red); font-size:12px; font-weight:800; letter-spacing:2.1px; text-transform:uppercase; }
h1,h2 { margin:0; font-family:var(--font-display),Georgia,serif; font-weight:620; line-height:.98; letter-spacing:-2.5px; }
h1 { max-width:670px; font-size:clamp(52px,6vw,88px); }
h1 em { color:var(--red); font-weight:500; }
h2 { font-size:clamp(42px,5vw,67px); }
.hero-lede { max-width:580px; margin:28px 0 32px; color:#4f5b56; font-size:18px; line-height:1.65; }
.hero-actions { display:flex; align-items:center; gap:25px; flex-wrap:wrap; }
.text-link { font-weight:750; border-bottom:1px solid var(--ink); padding-bottom:5px; }
.text-link span { margin-left:8px; color:var(--red); }
.trust-row { display:flex; gap:22px; flex-wrap:wrap; margin-top:44px; font-size:13px; font-weight:650; color:#45504c; }
.trust-row span::first-letter { color:var(--red); }
.hero-visual { position:relative; min-height:600px; }
.hero-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,var(--cream) 0%,transparent 18%,transparent 75%,rgba(30,41,38,.12)); pointer-events:none; }
.hero-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:55% center; }
.price-float { position:absolute; z-index:2; left:8%; bottom:72px; width:126px; height:126px; border-radius:50%; background:var(--red); color:white; display:flex; flex-direction:column; align-items:center; justify-content:center; transform:rotate(-5deg); box-shadow:0 12px 34px rgba(91,20,18,.3); }
.price-float small { font-size:11px; text-transform:uppercase; letter-spacing:1.4px; }
.price-float strong { font-family:var(--font-display); font-size:30px; line-height:1.1; }
.price-float span { font-size:12px; }
.image-note { position:absolute; z-index:2; right:18px; bottom:13px; margin:0; color:white; background:rgba(20,25,23,.72); padding:7px 11px; border-radius:6px; font-size:11px; }
.section { padding:110px clamp(22px,7vw,110px); }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:48px; }
.section-heading > p { max-width:430px; color:var(--muted); line-height:1.65; font-size:16px; }
.vehicle-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
.vehicle-card { padding:13px 13px 16px; border:1px solid #e4ded2; border-radius:24px; background:white; box-shadow:0 14px 45px rgba(32,43,40,.07); }
.vehicle-image { height:355px; position:relative; overflow:hidden; border-radius:16px; background:#e7dfd2; }
.vehicle-image img { position:absolute; inset:0; height:100%; object-fit:cover; width:200%!important; max-width:none!important; }
.vehicle-red img { object-position:0 center; }
.vehicle-white img { object-position:100% center; left:auto!important; right:0!important; }
.vehicle-image > span { position:absolute; right:12px; bottom:12px; background:rgba(255,253,248,.9); color:#4f5955; padding:6px 9px; border-radius:6px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; }
.vehicle-info { display:flex; align-items:end; justify-content:space-between; gap:18px; padding:22px 10px 17px; }
.vehicle-kicker { margin:0 0 7px; color:var(--red); font-size:11px; font-weight:800; letter-spacing:1.6px; }
h3 { margin:0; font-size:23px; letter-spacing:-.6px; }
h3 span { font-weight:450; color:#59625e; }
.vehicle-price { text-align:right; white-space:nowrap; }
.vehicle-price strong { display:block; font-family:var(--font-display); font-size:31px; line-height:1; }
.vehicle-price span { color:var(--muted); font-size:12px; }
.vehicle-card > .button { width:100%; }
.steps { background:var(--cream); }
.centered { display:block; text-align:center; }
.step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; max-width:1100px; margin:auto; border-radius:22px; overflow:hidden; box-shadow:0 10px 40px rgba(30,41,38,.06); }
.step-grid article { position:relative; padding:40px; background:var(--white); min-height:265px; }
.step-grid article > span { position:absolute; right:24px; top:21px; font-family:var(--font-display); color:#d8d2c6; font-size:17px; }
.step-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:50%; background:#f5ded8; color:var(--red); font-size:22px; margin-bottom:28px; }
.step-grid p { color:var(--muted); line-height:1.6; }
.transparency { display:grid; grid-template-columns:.9fr 1.1fr; gap:9vw; background:var(--green); color:white; align-items:center; }
.eyebrow.light { color:#f4a39a; }
.transparency-intro > p:not(.eyebrow) { max-width:520px; color:#cbd6d2; line-height:1.7; font-size:17px; }
.benefit-list { display:grid; gap:13px; margin-top:34px; color:#edf5f1; font-weight:650; }
.benefit-list span::first-letter { color:#f4a39a; }
.terms-card { background:var(--white); color:var(--ink); border-radius:24px; padding:36px; box-shadow:0 25px 60px rgba(0,0,0,.15); }
.term-row { display:grid; grid-template-columns:1fr 1.2fr; gap:32px; align-items:center; }
.term-row small { display:block; margin-bottom:10px; color:var(--red); font-weight:800; text-transform:uppercase; letter-spacing:1.3px; }
.term-row strong { font-family:var(--font-display); font-size:46px; }
.term-row strong span { font-family:var(--font-sans); font-size:14px; font-weight:600; color:var(--muted); }
.term-row p { color:var(--muted); line-height:1.6; }
.divider { height:1px; background:#e8e1d6; margin:28px 0; }
.notice { display:flex; gap:14px; margin-top:28px; padding:17px; border-radius:12px; background:#f8efe2; color:#5b544c; font-size:13px; line-height:1.55; }
.notice span { flex:0 0 24px; height:24px; border-radius:50%; display:grid; place-items:center; background:var(--red); color:white; font-weight:800; font-family:serif; }
.notice p { margin:0; }
.requirements { display:grid; grid-template-columns:.7fr 1.3fr; gap:9vw; position:relative; }
.requirements-copy { color:var(--muted); max-width:350px; line-height:1.65; }
.requirement-list { display:grid; }
.requirement-list article { display:flex; gap:24px; padding:24px 0; border-bottom:1px solid #ddd7cb; }
.requirement-list article > span { color:var(--red); font-family:var(--font-display); font-size:19px; }
.requirement-list p { margin:8px 0 0; color:var(--muted); line-height:1.5; }
.privacy-note { position:absolute; bottom:40px; left:7vw; padding-left:15px; border-left:3px solid var(--red); color:var(--muted); font-size:12px; }
.final-cta { padding:100px 24px; text-align:center; background:var(--red); color:white; position:relative; overflow:hidden; isolation:isolate; }
.final-cta > * { position:relative; z-index:1; }
.final-cta .carlos-portrait { position:absolute; z-index:0; inset:0 0 0 auto; width:min(42vw,600px); height:100%; object-fit:cover; object-position:center; opacity:.34; pointer-events:none; }
.final-cta h2 { max-width:780px; margin:auto; }
.final-cta > p:not(.eyebrow) { max-width:650px; margin:24px auto 30px; color:#ffe9e4; font-size:17px; line-height:1.6; }
.final-cta .button-whatsapp { background:white; color:var(--green); }
.final-cta > small { display:block; margin-top:24px; color:#ffd6d0; }
footer { min-height:120px; padding:32px clamp(22px,5vw,80px); display:flex; align-items:center; justify-content:space-between; gap:30px; background:#172621; color:#dce5e1; font-size:12px; }
footer .brand { color:white; }
footer p:nth-child(2) { color:#9fb0aa; }

@media (max-width:900px) {
  nav { display:none; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { padding-top:72px; }
  .hero-visual { min-height:470px; }
  .hero-visual::after { background:linear-gradient(180deg,var(--cream),transparent 20%); }
  .vehicle-image { height:290px; }
  .transparency { grid-template-columns:1fr; }
  .requirements { grid-template-columns:1fr; }
  .privacy-note { position:static; margin-top:28px; }
}

/* Admin intake overrides public-page privacy note positioning. */
.intake-form .privacy-note{position:static;inset:auto;width:auto;margin:18px 0 0;font-size:13px;border-left:3px solid var(--red);padding-left:14px}
@media (max-width:700px) {
  .site-header { height:72px; }
  .header-cta { font-size:0; width:43px; padding:0; }
  .header-cta .button-arrow { font-size:18px; margin:0; }
  .header-cta > span:first-child { display:none; }
  .brand { font-size:16px; }
  .brand-mark { width:34px; height:34px; }
  .language-switch{margin-left:auto}
  .header-cta{display:none}
  h1 { font-size:clamp(48px,14vw,66px); }
  h2 { font-size:43px; letter-spacing:-1.7px; }
  .hero { min-height:auto; }
  .hero-copy { padding:58px 22px 46px; }
  .hero-lede { font-size:16px; margin-top:22px; }
  .hero-actions .button { width:100%; }
  .text-link { margin:auto; }
  .trust-row { margin-top:34px; gap:10px 18px; }
  .hero-visual { min-height:370px; }
  .hero-visual img { object-position:center; }
  .price-float { width:100px; height:100px; bottom:45px; }
  .price-float strong { font-size:25px; }
  .section { padding:76px 20px; }
  .section-heading { display:block; }
  .section-heading > p { margin-top:20px; }
  .vehicle-grid,.step-grid { grid-template-columns:1fr; }
  .vehicle-image { height:265px; }
  .vehicle-info { align-items:center; }
  h3 { font-size:20px; }
  .vehicle-price strong { font-size:27px; }
  .step-grid article { min-height:220px; padding:32px; }
  .term-row { grid-template-columns:1fr; gap:5px; }
  .terms-card { padding:25px; }
  .transparency { gap:50px; }
  .final-cta .carlos-portrait { width:78vw; opacity:.2; object-position:58% center; }
  footer { flex-direction:column; align-items:flex-start; }
}

/* Booking and operations */
.button-primary{background:var(--red);color:#fff;box-shadow:none}.header-cta{background:var(--ink);color:#fff}.hero-actions .button{min-width:190px}.vehicle-reserve{display:inline-block;margin-left:2px;padding-bottom:6px;border-bottom:2px solid var(--red);font-weight:800}
.booking{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;background:#e8dfd0;align-items:start}.booking-intro{position:sticky;top:110px}.booking-intro>p:not(.eyebrow){max-width:430px;line-height:1.7;color:var(--muted)}.availability-key{display:flex;gap:22px;margin-top:32px;font-size:13px}.availability-key i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px}.availability-key .available{background:#2c8b5b}.availability-key .busy{background:var(--red)}
.booking-panel{background:#fffdf8;border-top:5px solid var(--red);padding:clamp(24px,4vw,48px)}.booking-panel fieldset{border:0;padding:0 0 34px;margin:0 0 30px;border-bottom:1px solid #ded7ca}.booking-panel legend,.intake-form h2{font-family:var(--font-display);font-size:27px;font-weight:650;margin-bottom:20px}.vehicle-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vehicle-choice label{border:1px solid #d7d0c4;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:3px 12px;cursor:pointer}.vehicle-choice label.selected{border:2px solid var(--ink);padding:17px}.vehicle-choice input{position:absolute;opacity:0}.vehicle-choice small{grid-column:2;color:var(--muted)}.car-dot{width:14px;height:14px;border-radius:50%;grid-row:1/3}.car-dot.red{background:var(--car-red)}.car-dot.white{background:#eee;border:1px solid #aaa}.date-grid,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-panel label,.intake-form label{display:grid;gap:8px;font-size:12px;font-weight:800;letter-spacing:.35px}.booking-panel input,.booking-panel textarea,.intake-form input,.intake-form select{width:100%;border:1px solid #cfc8bc;background:#fff;padding:13px;font:inherit;font-size:15px}.full{grid-column:1/-1}.date-status{margin-top:14px;padding:12px 14px;font-weight:750;font-size:13px}.date-status.yes{background:#e5f3eb;color:#185f3e}.date-status.no{background:#f8dfdc;color:#8e211e}.consent{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important;line-height:1.5}.consent input{width:auto}.form-success,.form-error{margin-top:16px;padding:15px}.form-success{background:#e5f3eb;color:#185f3e}.form-error{background:#f8dfdc;color:#8e211e}
.admin-shell{min-height:100vh;background:#f4efe6;padding:clamp(24px,6vw,80px);color:var(--ink)}.admin-shell h1{font-size:clamp(48px,7vw,88px)}.admin-head{display:flex;justify-content:space-between;gap:30px;align-items:end;padding-bottom:30px;border-bottom:1px solid #cfc6b8}.admin-head>div:last-child{display:flex;gap:18px;align-items:center}.admin-signout{text-decoration:underline}.admin-list{margin-top:30px}.reservation-row{display:grid;grid-template-columns:90px 1fr auto;gap:25px;padding:25px 0;border-bottom:1px solid #cfc6b8}.reservation-row p{margin:8px 0}.reservation-row small{color:var(--muted)}.reservation-row blockquote{margin:12px 0 0;padding-left:12px;border-left:2px solid var(--red);color:var(--muted)}.admin-car{padding:10px;text-align:center;font-weight:800;height:max-content}.admin-car.red{background:#f2d5d1;color:#8b1e1b}.admin-car.white{background:#fff;border:1px solid #ccc}.status-actions{display:grid;justify-items:end;gap:10px}.status{font-size:11px;text-transform:uppercase;letter-spacing:1px}.status.confirmed{color:#18704a}.status.cancelled{color:#9b2924}.status-actions select{padding:8px}.status-actions a{font-weight:800;color:var(--red)}
.intake-shell{max-width:1050px;margin:auto}.intake-lede{max-width:700px;line-height:1.6}.intake-form{margin-top:40px;display:grid;gap:24px}.intake-form section{background:#fff;padding:clamp(22px,4vw,42px);border-top:4px solid var(--ink)}.intake-form section>p{color:var(--muted)}.upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.contract-summary{background:#eee7da;padding:20px;margin-bottom:20px}
.step-label{color:var(--red)!important;font-size:11px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}.privacy-note{font-size:13px;border-left:3px solid var(--red);padding-left:14px}.intake-form .capture-first{order:-1;border-top-color:var(--red)}.camera-field{position:relative;border:1px solid #d7d0c4;padding:20px;background:#faf7f1;cursor:pointer;display:grid;gap:14px}.camera-field input{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.camera-field span{display:block;margin:0;background:var(--red);color:#fff;padding:14px 12px;text-align:center;border-radius:999px;font-size:14px;font-weight:850}.camera-field:hover span,.camera-field:focus-within span{background:#d95a00}.camera-field.has-photo{border-color:#18704a;background:#f0faf4}.camera-field.has-photo span{background:#18704a}.intake-submit{position:static;background:var(--ink);color:#fff;padding:20px 22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.intake-submit p{margin:0}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end}.table-action{display:inline-block;margin-top:10px;color:var(--red);font-weight:800}.contract-status{font-weight:850}.contract-status.signed{color:#18704a}.contract-status.draft{color:var(--red)}
.ocr-panel{margin-top:22px;padding:20px;border:1px solid #d7d0c4;background:#f4efe6;display:grid;grid-template-columns:1fr auto;gap:14px 20px;align-items:center}.ocr-panel p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.ocr-progress{grid-column:1/-1;padding-top:12px;border-top:1px solid #d7d0c4;font-size:13px;font-weight:750}.ocr-panel details{grid-column:1/-1}.ocr-panel pre{white-space:pre-wrap;max-height:240px;overflow:auto;background:#fff;padding:14px;font-size:11px}.ocr-filled{border-color:#18704a!important;background:#f0faf4!important}.ocr-badge{color:#18704a;font-weight:800;margin-top:-3px}
.contract-page{max-width:900px;margin:30px auto;padding:60px;background:#fff;color:#171d1b;box-shadow:0 10px 40px #0002;font-family:Arial,sans-serif}.contract-toolbar{display:flex;justify-content:space-between;margin:-30px 0 45px;color:#666}.contract-page header{border-bottom:3px solid #222;padding-bottom:24px}.contract-page header h1{font-family:Georgia,serif;font-size:44px;margin:25px 0 8px}.contract-page section{padding:25px 0;border-bottom:1px solid #ccc}.contract-page h2{font-family:Georgia,serif;font-size:24px;letter-spacing:0}.contract-page dl{display:grid;grid-template-columns:170px 1fr;gap:10px}.contract-page dt{font-weight:700}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:90px}.signature-grid div{border-top:1px solid #222;padding-top:10px}
.contract-toolbar>div{display:flex;gap:10px}.legal-draft{margin:24px 0;padding:16px 18px;background:#fff1dc;border-left:5px solid var(--red);line-height:1.5}.contract-clauses{padding-left:22px}.contract-clauses li{margin:0 0 12px;line-height:1.6}.document-links{display:flex;gap:10px;flex-wrap:wrap}.signature-capture{border:0!important;background:#f4efe6;padding:28px!important}.signature-capture canvas{display:block;width:100%;height:220px;background:#fff;border:2px solid #18211f;touch-action:none}.signature-actions{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:16px}.signature-consent{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:13px;line-height:1.45}.signed-block img{max-width:420px;width:100%;height:auto;border-bottom:1px solid #222}.signed-block code{font-size:11px}.contract-footer{margin-top:50px;color:#666;font-size:11px;text-align:center}
@media(max-width:800px){.booking{grid-template-columns:1fr}.booking-intro{position:static}.reservation-row{grid-template-columns:1fr}.status-actions{justify-items:start}.upload-grid{grid-template-columns:1fr}.admin-head{display:block}.admin-head>div:last-child{margin-top:25px;flex-wrap:wrap}.contract-page{margin:0;padding:30px 20px;box-shadow:none}.contract-page dl{grid-template-columns:1fr}.signature-grid{gap:25px}.intake-submit,.section-head{position:static;display:grid}.signature-actions{grid-template-columns:1fr}.contract-toolbar,.contract-toolbar>div{align-items:stretch;display:grid}.contract-page header h1{font-size:34px}.ocr-panel{grid-template-columns:1fr}.ocr-panel .button{width:100%}}
@media print{.contract-toolbar,.no-print{display:none}.contract-page{margin:0;box-shadow:none;max-width:none}.site-header{display:none}}
.admin-secondary{background:#fff;border:1px solid #cfc6b8;color:var(--ink)}
.content-shell{max-width:1180px;margin:auto}.content-manager{display:grid;gap:26px;margin-top:44px}.content-slot{background:#fff;padding:clamp(22px,4vw,40px);border-top:4px solid var(--ink)}.content-slot>div:first-child{display:flex;justify-content:space-between;gap:20px;align-items:end}.content-slot h2,.future-updater h2{font-size:32px;letter-spacing:-1px}.content-slot form{display:grid;grid-template-columns:1fr auto;gap:16px;margin:22px 0}.content-slot input[type=file]{padding:13px;border:1px dashed #aaa;background:#faf8f2}.version-list{border-top:1px solid #ded7ca}.version-list article{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #e7e1d6}.version-list small{display:block;margin-top:5px;color:var(--muted)}.version-list button{border:0;background:transparent;color:var(--red);font-weight:800;cursor:pointer}.active-version{color:#18704a;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:1px}.future-updater{margin-top:38px;padding:32px;background:var(--ink);color:#fff}.future-updater p{max-width:760px;color:#cbd6d2;line-height:1.6}.future-updater span{display:block;margin-top:18px;color:#f3a39a;font-size:12px;text-transform:uppercase;letter-spacing:1.2px}
@media(max-width:800px){.content-slot form{grid-template-columns:1fr}.content-slot>div:first-child{display:block}}
.vehicle-choice label{position:relative}.booking-panel input.vehicle-radio{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;border:0!important;left:0;top:0;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}.vehicle-choice label:focus-within{outline:3px solid rgba(193,43,39,.25);outline-offset:3px}
.pricing-admin{margin:0 0 34px;padding:clamp(22px,4vw,36px);background:#fffdf8;border-top:5px solid var(--red);display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,1.5fr);gap:clamp(24px,4vw,48px)}.pricing-admin h2{font-family:var(--font-display);font-size:clamp(28px,4vw,42px);margin:4px 0 10px}.pricing-admin>div>p:last-child{color:var(--muted);line-height:1.55}.pricing-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pricing-admin form{border:1px solid #d7d0c4;padding:20px;display:grid;gap:14px}.pricing-admin h3{display:flex;align-items:center;gap:10px;margin:0 0 4px}.pricing-admin label{display:grid;gap:7px;font-size:12px;font-weight:800}.pricing-admin input{width:100%;border:1px solid #cfc8bc;padding:11px;font:inherit}.price-saved{color:#185f3e;font-weight:800}.quoted-total{display:block;color:var(--red);margin:5px 0}
.fleet-admin,.calendar-admin{margin:0 0 34px;padding:clamp(22px,4vw,36px);background:#fffdf8;border-top:5px solid var(--green)}.fleet-admin{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,1.5fr);gap:clamp(24px,4vw,48px)}.fleet-admin h2,.calendar-admin h2{font-family:var(--font-display);font-size:clamp(28px,4vw,42px);margin:4px 0 10px}.fleet-admin>div>p:last-child{color:var(--muted);line-height:1.55}.fleet-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fleet-toggle{border:1px solid #d7d0c4;padding:18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}.fleet-toggle small{display:block;margin-top:4px;color:var(--muted)}.fleet-toggle.is-inactive{background:#f3e7e4;border-color:#d9aaa4}.vehicle-choice label.is-inactive{opacity:.55;cursor:not-allowed;background:#eee9df}.calendar-admin>header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.calendar-admin>header nav{display:flex;gap:8px;flex-wrap:wrap}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{text-align:center;padding:8px;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.calendar-day{min-height:116px;border:1px solid #ded7ca;margin:-1px 0 0 -1px;padding:10px;background:#fff}.calendar-day.is-empty{background:#f3efe7}.calendar-day.is-today{box-shadow:inset 0 0 0 2px var(--red)}.calendar-day>strong{display:block;margin-bottom:9px}.calendar-car{display:block;padding:6px 7px;margin-top:5px;font-size:11px;font-weight:800}.calendar-car.is-free{background:#e3f1e8;color:#185f3e}.calendar-car.is-busy{background:#f4d9d5;color:#8e211e}.calendar-car.white{border-left:3px solid #a8a39a}.calendar-car.red{border-left:3px solid var(--red)}
@media(max-width:760px){.fleet-admin,.pricing-admin{grid-template-columns:1fr}.fleet-toggle-grid,.pricing-admin-grid{grid-template-columns:1fr}.calendar-admin{overflow-x:auto}.calendar-admin>header{align-items:start;flex-direction:column}.calendar-weekdays,.calendar-grid{min-width:680px}.calendar-day{min-height:104px}}
@media(max-width:760px){.pricing-admin{grid-template-columns:1fr}.pricing-admin-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--cream)}.login-card{width:min(460px,100%);background:#fff;padding:clamp(28px,6vw,52px);border-top:6px solid var(--red)}.login-card h1{font-size:48px;margin-bottom:12px}.login-card>p{color:var(--muted);line-height:1.55}.stack-form{display:grid;gap:18px;margin-top:28px}.stack-form label{display:grid;gap:8px;font-size:12px;font-weight:800}.stack-form input,.stack-form select{width:100%;padding:13px;border:1px solid #cfc8bc;font:inherit}.stack-form .button{border:0;cursor:pointer}.alert{padding:14px;margin:16px 0}.alert.error{background:#f8dfdc;color:#8e211e}.alert.success{background:#e5f3eb;color:#185f3e}.admin-nav{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.admin-section{margin-top:32px;background:#fff;padding:clamp(22px,4vw,38px);border-top:4px solid var(--ink)}.admin-section h2{font-size:38px;letter-spacing:-1px;margin-bottom:18px}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:13px 10px;border-bottom:1px solid #e0d8cb;vertical-align:top}.admin-table form{display:flex;gap:8px}.admin-table select{padding:7px}.update-drop{padding:24px;border:2px dashed #b8aea0;background:#faf7f0}.update-history{margin-top:24px}.muted{color:var(--muted)}code{background:#eee7da;padding:2px 5px}@media(max-width:760px){.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block}.admin-table thead{display:none}.admin-table tr{padding:18px 0;border-bottom:1px solid #ccc}.admin-table td{border:0;padding:5px 0}}

/* 2026 editorial refresh — a locally grounded, vehicle-first system */
:root { --red:#ff6a00; --red-dark:#c94f00; --car-red:#c6302c; --ink:#162521; --cream:#f3eee3; --sand:#ded0bb; --green:#173c32; --white:#fffdf8; }
body { background:#f8f5ee; }
.site-header { height:88px; padding-inline:clamp(20px,4.8vw,74px); background:rgba(248,245,238,.96); border-bottom:1px solid rgba(22,37,33,.14); }
.brand { gap:13px; font-size:19px; font-weight:650; line-height:1; }
.brand strong { margin-top:5px; font-size:10px; letter-spacing:2.35px; }
.brand-mark { width:46px; height:46px; object-fit:cover; border-radius:13px; background:var(--red); transform:none; box-shadow:0 0 0 1px rgba(22,37,33,.08); }
nav { gap:36px; font-size:13px; letter-spacing:.15px; }
.header-cta { background:var(--ink); box-shadow:none; }
.hero { min-height:720px; grid-template-columns:48% 52%; background:var(--cream); border-bottom:1px solid rgba(22,37,33,.14); }
.hero-copy { padding:clamp(72px,8vw,118px) clamp(26px,6vw,96px); }
.eyebrow { font-size:11px; letter-spacing:2.55px; }
h1 { font-family:var(--font-sans),Arial,sans-serif; font-weight:720; font-size:clamp(54px,5.65vw,82px); line-height:.94; letter-spacing:-4.8px; }
h1 em { display:block; margin-top:10px; font-family:var(--font-display),Georgia,serif; font-weight:450; letter-spacing:-2.8px; }
.hero-lede { max-width:540px; font-size:17px; }
.hero-visual { min-height:720px; border-left:1px solid rgba(22,37,33,.14); }
.hero-visual::after { background:linear-gradient(90deg,var(--cream) 0%,transparent 15%); }
.price-float { left:auto; right:34px; bottom:34px; width:118px; height:118px; border-radius:22px; transform:none; box-shadow:none; border:1px solid rgba(255,255,255,.28); }
.trust-row { padding-top:24px; border-top:1px solid rgba(22,37,33,.15); }
.section { padding-block:clamp(84px,9vw,132px); }
.section-heading { align-items:start; border-top:1px solid rgba(22,37,33,.18); padding-top:24px; }
.section-heading h2 { font-size:clamp(46px,5vw,70px); }
.fleet { background:#f8f5ee; }
.vehicle-grid { gap:18px; }
.vehicle-card { padding:0 0 18px; border:0; border-radius:0; background:transparent; box-shadow:none; border-bottom:1px solid rgba(22,37,33,.22); }
.vehicle-image { height:410px; border-radius:3px; }
.vehicle-info { padding:22px 2px 18px; }
.vehicle-card > .button { width:auto; margin-left:2px; min-height:46px; background:transparent; color:var(--ink); padding:0; border-radius:0; box-shadow:none; border-bottom:2px solid var(--red); }
.vehicle-card > .button:hover { transform:none; box-shadow:none; color:var(--red); }
.vehicle-card > .button > span:first-child { display:none; }
.steps { background:#e8dfd0; }
.steps .centered { text-align:left; max-width:1100px; margin-inline:auto; border-top:1px solid rgba(22,37,33,.2); padding-top:24px; }
.step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-radius:0; box-shadow:none; overflow:visible; border-top:1px solid rgba(22,37,33,.2); border-bottom:1px solid rgba(22,37,33,.2); }
.step-grid article { min-height:230px; padding:34px 36px 38px; background:transparent; border-right:1px solid rgba(22,37,33,.2); }
.step-grid article:last-child { border-right:0; }
.step-grid article > span { position:static; display:block; margin-bottom:44px; color:var(--red); font-family:var(--font-sans); font-weight:800; font-size:12px; letter-spacing:1.8px; }
.step-icon { display:none; }
.step-grid p { max-width:270px; }
.transparency { background:var(--ink); gap:7vw; }
.terms-card { border-radius:3px; box-shadow:none; border-top:5px solid var(--red); }
.notice { border-radius:2px; }
.requirements { background:#f8f5ee; }
.requirement-list article { padding-block:28px; }
.final-cta { min-height:530px; display:flex; flex-direction:column; justify-content:center; align-items:center; background:var(--red); }
.final-cta::before { content:"CARLOS · SANTO DOMINGO"; position:absolute; inset:26px auto auto 32px; color:rgba(255,255,255,.7); font-size:10px; font-weight:800; letter-spacing:2.4px; }
.final-cta .carlos-portrait { display:none; }
.final-cta h2 { font-size:clamp(50px,6.2vw,84px); max-width:900px; }
footer { border-top:1px solid rgba(255,255,255,.12); }
footer .brand-mark { width:42px; height:42px; border-radius:11px; }
.brand-vision { display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); gap:clamp(36px,7vw,100px); align-items:center; background:#ece2d2; }
.brand-vision-copy { max-width:500px; }
.brand-vision h2 { font-size:clamp(44px,5vw,68px); margin:12px 0 24px; }
.brand-vision-copy>p:last-of-type { color:var(--muted); font-size:17px; line-height:1.7; }
.brand-swatch { margin-top:34px; display:grid; grid-template-columns:54px auto; column-gap:15px; align-items:center; }
.brand-swatch span { width:54px; height:54px; grid-row:1/3; background:#ff6a00; border-radius:50%; box-shadow:0 0 0 1px rgba(22,37,33,.12); }
.brand-swatch strong { font-size:20px; letter-spacing:.4px; }
.brand-swatch small { color:var(--muted); }
.brand-vision figure { margin:0; position:relative; }
.brand-vision figure img { width:100%; height:min(720px,70vw); object-fit:cover; object-position:center 46%; display:block; border-radius:3px; }
.brand-vision figcaption { margin-top:12px; max-width:720px; color:var(--muted); font-size:12px; line-height:1.55; }

@media (max-width:900px) {
  .hero { grid-template-columns:1fr; }
  .hero-visual { border-left:0; border-top:1px solid rgba(22,37,33,.14); }
  .step-grid article { padding-inline:25px; }
  .brand-vision { grid-template-columns:1fr; }
  .brand-vision figure img { height:min(720px,105vw); }
}
@media (max-width:700px) {
  .site-header { height:74px; }
  .brand-mark { width:40px; height:40px; border-radius:11px; }
  .brand { font-size:16px; }
  h1 { font-size:clamp(49px,14vw,64px); letter-spacing:-3.3px; }
  h1 em { letter-spacing:-1.8px; }
  .hero-copy { padding:60px 20px 46px; }
  .hero-visual { min-height:410px; }
  .price-float { right:18px; bottom:18px; width:98px; height:98px; border-radius:17px; }
  .trust-row { font-size:12px; }
  .section-heading { padding-top:18px; }
  .vehicle-grid { gap:54px; }
  .vehicle-image { height:280px; }
  .step-grid { grid-template-columns:1fr; }
  .step-grid article { min-height:auto; border-right:0; border-bottom:1px solid rgba(22,37,33,.2); }
  .step-grid article:last-child { border-bottom:0; }
  .step-grid article > span { margin-bottom:24px; }
  .final-cta { min-height:560px; align-items:flex-start; text-align:left; padding-inline:22px; }
  .final-cta h2 { font-size:48px; }
  .final-cta > p:not(.eyebrow) { margin-inline:0; }
  .final-cta .button { width:100%; }
  .final-cta > small { align-self:center; }
  .final-cta::before { left:22px; }
}

/* Public calendar and confirmation workflow */
.menu-button{display:none;width:46px;height:46px;border-radius:50%;background:var(--ink);align-items:center;justify-content:center;flex-direction:column;gap:4px}.menu-button span{width:19px;height:2px;background:#fff;border-radius:2px}
.public-calendar{margin-bottom:20px;border:1px solid #d7d0c4;background:#f8f4eb}.public-calendar>header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:10px;border-bottom:1px solid #d7d0c4}.public-calendar>header strong{text-align:center;text-transform:capitalize}.public-calendar>header button{height:36px;border:0;background:#fff;color:var(--ink);font-size:18px;cursor:pointer}.public-calendar-weekdays,.public-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.public-calendar-weekdays span{text-align:center;padding:9px 2px;color:var(--muted);font-size:10px;font-weight:900}.public-calendar-day{min-height:66px;border:0;border-top:1px solid #e5ded2;border-left:1px solid #e5ded2;background:#fff;display:grid;align-content:space-between;justify-items:start;padding:7px;cursor:pointer;color:var(--ink)}.public-calendar-day:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--red)}.public-calendar-day:disabled{cursor:not-allowed;background:#eee9df;color:#a39c90}.public-calendar-day.is-selected{background:#ffeadc}.public-calendar-day.is-edge{background:var(--red);color:#fff}.public-calendar-day>span{display:flex;gap:3px}.mini-car{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;font-style:normal;font-size:8px;font-weight:900}.mini-car.red{background:#c6302c;color:#fff}.mini-car.white{background:#fff;color:#37413d;border:1px solid #9f9b93}.mini-car.off{opacity:.2;text-decoration:line-through}.calendar-help{margin:0;padding:10px 12px;color:var(--muted);font-size:11px}.calendar-help .mini-car{vertical-align:middle;margin:0 3px}.reservation-rules{margin:0 0 24px;padding:18px;border-left:4px solid var(--red);background:#f8efe2;font-size:13px;line-height:1.55}.reservation-rules p{margin:8px 0 0}.brand-vision figure{margin-bottom:0}.brand-vision figure img{display:block}.workflow-actions{display:grid;gap:7px;min-width:230px}.workflow-actions a,.workflow-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 11px;border:1px solid #cfc8bc;background:#fff;color:var(--ink);font:inherit;font-size:12px;font-weight:800;cursor:pointer}.workflow-actions a{background:#1f8e5b;color:#fff;border-color:#1f8e5b}.workflow-meta{display:block;margin-top:7px;color:var(--muted);line-height:1.45}.status.expired,.status.no_show{color:#8e211e}
@media(max-width:900px){.site-header>nav,.header-cta{display:none}.menu-button{display:flex}}
@media(max-width:600px){.public-calendar-day{min-height:58px;padding:5px}.date-grid{grid-template-columns:1fr}.vehicle-choice{grid-template-columns:1fr}.booking-panel{padding-inline:18px}.public-calendar{margin-inline:-7px}}
