/* Luxury Car Service pages (24 Sep): /luxury-car-service/ and /luxury-car-service-nyc/.
   Light sections take their tokens from light-sections.css; .il-tone-paper sections stay charcoal. */

.il-lx-section {padding-block:96px}
.il-lx-heading h2 {font-size:clamp(30px,3.1vw,44px);line-height:1.14;letter-spacing:-.035em;max-width:820px;margin:0}
.il-lx-section p {font-size:16px;line-height:1.75;color:var(--muted)}
.il-lx-section p a {color:var(--text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--gold);text-decoration-thickness:1px}
.il-lx-section .il-symbol {color:#b3861b}
.il-lx-section.il-tone-paper .il-symbol {color:#d8b451}
.il-lx-intro-line {font-size:17px!important;margin:0}
.il-lx-split-heading {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px 64px;align-items:end;margin-bottom:44px}
.il-lx-split-heading:not(:has(.il-lx-intro-line)) {grid-template-columns:1fr}
.il-lx-actions {margin-top:32px}
.il-lx-number {font-size:15px;font-weight:650;letter-spacing:.08em;color:#8f6c16;font-variant-numeric:tabular-nums}
.il-tone-paper .il-lx-number {color:#d8b451}

/* Hero: the shared split hero, plus the homepage assurance strip below it. */
.il-lx-hero .il-hero-photo {object-position:center}
.il-lx-trust {background:#171e21;border-block:1px solid #313b40}
.il-lx-assurances {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding-block:24px}
.il-lx-assurances>div {display:flex;align-items:center;gap:14px}
.il-lx-assurances .il-symbol {width:28px;height:28px;color:#cbb77d}
.il-lx-assurances p {margin:0;font-size:14px;font-weight:500;line-height:1.45;color:#e3e7e6}

/* Introduction: large lead beside a tall photograph. */
.il-lx-intro {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:center}
.il-lx-intro .il-lx-lead {font-size:clamp(20px,1.7vw,24px)!important;line-height:1.55!important;color:var(--text)!important;font-weight:450;border-left:2px solid var(--gold);padding-left:26px;margin:0 0 24px}
.il-lx-intro-copy>p:not(.il-lx-lead) {padding-left:28px;margin:0}
.il-lx-intro-photo {margin:0;height:500px;border-radius:8px;overflow:hidden}
.il-lx-intro-photo img,.il-lx-story-photo img {width:100%;height:100%;object-fit:cover;border-radius:0!important;margin:0!important}

/* Photo story: image and editorial copy side by side. */
.il-lx-story {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.il-lx-story-reverse>.il-lx-story-photo {order:2}
.il-lx-story-photo {margin:0;height:520px;border-radius:8px;overflow:hidden}
.il-lx-story-copy .il-lx-heading {margin-bottom:28px}
.il-lx-story-copy .il-lx-statement {font-size:20px!important;line-height:1.6!important;color:var(--text)!important;font-weight:450;margin:0 0 20px}
.il-lx-story-copy p {margin:0}
.il-lx-story-copy p+p {margin-top:20px}
.il-lx-story-copy p+.il-lx-statement {margin:26px 0 6px;padding:4px 0 4px 24px;border-left:2px solid var(--gold)}
.il-lx-focus-left img {object-position:0% 50%}

/* Photo cards and icon cards. */
.il-lx-photo-grid,.il-lx-card-grid,.il-lx-vehicle-grid,.il-lx-link-grid {display:grid;gap:22px}
.il-lx-cols-2 {grid-template-columns:repeat(2,minmax(0,1fr))}
.il-lx-cols-4 {grid-template-columns:repeat(4,minmax(0,1fr))}
.il-lx-cols-5 {grid-template-columns:repeat(5,minmax(0,1fr))}
.il-lx-card-grid.il-lx-cols-5 {grid-template-columns:repeat(6,minmax(0,1fr))}
.il-lx-card-grid.il-lx-cols-5>:nth-child(-n+3) {grid-column:span 2}
.il-lx-card-grid.il-lx-cols-5>:nth-child(n+4) {grid-column:span 3}
.il-lx-photo-card,.il-lx-card,.il-lx-vehicle {min-width:0;background:var(--surface-raised);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.il-tone-paper :is(.il-lx-photo-card,.il-lx-card) {background:#222c31;border-color:#3a474e}
.il-lx-photo-card figure {margin:0;aspect-ratio:4/3;overflow:hidden}
.il-lx-photo-card img {width:100%;height:100%;object-fit:cover;border-radius:0!important;margin:0!important;transition:transform 450ms cubic-bezier(.2,.65,.3,1)}
.il-lx-photo-card p {margin:0;padding:22px 22px 26px;font-size:15px!important;line-height:1.7!important}
.il-lx-card {display:flex;flex-direction:column;gap:20px;padding:30px 28px}
.il-lx-card .il-symbol {width:32px;height:32px}
.il-lx-card p {margin:0;font-size:15px!important;line-height:1.72!important}
.il-lx-card .il-lx-number {font-size:30px;font-weight:500;letter-spacing:-.02em;line-height:1}

/* Booking: numbered steps beside the quote form. */
.il-lx-booking {display:grid;grid-template-columns:minmax(0,1fr) 468px;gap:clamp(48px,6vw,96px);align-items:start}
.il-lx-booking-copy .il-lx-heading {margin-bottom:22px}
.il-lx-steps {list-style:none;margin:36px 0 0;padding:0;counter-reset:none}
.il-lx-steps li {display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;padding:24px 0;border-top:1px solid var(--line)}
.il-lx-steps li:last-child {border-bottom:1px solid var(--line)}
.il-lx-steps .il-lx-number {font-size:24px;font-weight:500;letter-spacing:-.02em;line-height:1.3}
.il-lx-steps p {margin:0}
.il-lx-quote {
  --ink:#172024;--text:#172024;--muted:#526065;--line:#c5ccce;--cream:#e9edec;--paper:#f3f5f2;
  position:sticky;top:104px;color-scheme:light;color:#172024;background:#f3f5f2;padding:28px;border-radius:8px;border:1px solid #dfe4e2;box-shadow:0 16px 48px #070d1424;
}
.il-lx-quote-title {font-size:22px!important;font-weight:600;line-height:1.3!important;letter-spacing:-.025em;color:#172024!important;margin:0 0 20px}
.il-lx-quote .il-quote-tabs {display:flex;gap:4px;border:0;background:#e3e8e6;border-radius:5px;padding:4px;margin-bottom:22px}
.il-lx-quote .il-quote-tabs button {flex:1;min-width:0;min-height:44px;padding:8px 5px;border:0;border-radius:3px;color:#4a595f;background:transparent;font-size:11px;line-height:1.3;font-weight:650}
.il-lx-quote .il-quote-tabs button[aria-selected=true] {background:#172024;color:#f3f5f2}
.il-lx-quote .il-quote-fields {grid-template-columns:1fr 1fr;gap:14px 12px}
.il-lx-quote .il-quote-fields :is(.il-quote-location,.il-quote-name) {grid-column:1/-1}
.il-lx-quote .il-quote-fields .il-quote-phone {grid-column:auto}
.il-lx-quote :is(.il-quote-field,.il-form-field) {font-size:12px;gap:6px;font-weight:600;color:#35474e}
.il-lx-quote :is(.il-quote-field,.il-form-field) :where(input,select,textarea) {border:1px solid #b2bec2;background:#fff;color:#172024;font-size:14px;min-height:48px;padding:10px 12px;box-shadow:none}
.il-lx-quote :where(input,textarea)::placeholder {color:#65737a}
.il-lx-quote :where(input,select,textarea,button,a):focus-visible {outline-color:#6c5416;outline-offset:2px}
.il-lx-quote .il-quote-submit {grid-column:1/-1;justify-content:space-between;margin-top:4px;min-height:50px;font-size:14px;color:#172024}
.il-lx-quote .il-form-grid {gap:16px 12px}
.il-lx-quote .il-form-field textarea {min-height:104px}
.il-lx-quote .il-form-field:last-of-type {grid-column:1/-1}
.il-lx-quote .il-quote-status {color:#526065;font-size:13px;line-height:1.5}
.il-lx-quote .il-quote-status[data-state=error] {color:#9a2924}

/* Vehicles: the homepage fleet card treatment. */
.il-lx-vehicle figure {margin:0;background:#e8eae7;border-bottom:1px solid #d6dbd8}
.il-lx-vehicle img {width:100%;height:190px;object-fit:contain;padding:18px;mix-blend-mode:multiply;border-radius:0!important;margin:0!important}
.il-lx-vehicle p {margin:0;padding:20px 22px 24px;font-size:15px!important;line-height:1.7!important}
.il-lx-vehicle-grid.il-lx-cols-5 .il-lx-vehicle img {height:150px;padding:10px}
.il-lx-note {display:flex;align-items:center;gap:14px;margin:30px 0 0!important;padding:18px 22px;border:1px solid var(--line);border-radius:6px;background:var(--surface-raised);color:var(--text)!important;font-size:15px!important}
.il-lx-note .il-symbol {width:24px;height:24px}

/* Coverage tiles under the "why" cards. */
.il-lx-coverage {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:40px;align-items:center;margin-top:56px;padding-top:44px;border-top:1px solid var(--line)}
.il-lx-coverage-lead {font-size:21px!important;line-height:1.45!important;color:var(--text)!important;font-weight:500;margin:0}
.il-lx-coverage ul {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.il-lx-coverage li {display:flex;flex-direction:column;gap:16px;padding:24px;border-radius:8px;background:var(--surface-raised);border:1px solid var(--line)}
.il-lx-coverage li .il-symbol {width:28px;height:28px}
.il-lx-coverage li p {margin:0;font-size:15px!important;line-height:1.65!important;color:var(--text)!important}

/* Reviews reuse the shared Endorsal strip. */
.il-lx-reviews {padding-block:72px}

/* Related pages: photo link cards. */
.il-lx-links-copy {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px 64px;align-items:end;margin-bottom:44px}
.il-lx-links-copy p {margin:0}
.il-lx-link-card {position:relative;display:block;min-width:0;border-radius:8px;overflow:hidden;background:#222c31;border:1px solid #3a474e;color:#f3f4f2;text-decoration:none}
.il-lx-link-card figure {margin:0;aspect-ratio:16/10;overflow:hidden}
.il-lx-link-grid.il-lx-cols-2 .il-lx-link-card figure {aspect-ratio:21/9}
.il-lx-link-grid.il-lx-cols-5 .il-lx-link-card figure {aspect-ratio:4/3}
.il-lx-link-card img {width:100%;height:100%;object-fit:cover;border-radius:0!important;margin:0!important;transition:transform 450ms cubic-bezier(.2,.65,.3,1)}
.il-lx-link-card span {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px 22px;font-size:18px;font-weight:550;letter-spacing:-.02em}
.il-lx-link-grid.il-lx-cols-5 .il-lx-link-card span {font-size:15px;padding:16px 18px}
.il-lx-link-card svg {width:22px;height:22px;flex:none;color:#d8b451;transition:transform 200ms}
.il-lx-link-card:focus-visible {outline:3px solid #e6c775;outline-offset:4px}

/* Closing panel: the shared closing CTA with the doc's heading and paragraph. */
.il-lx-closing .il-shared-closing-panel {align-items:center}
.il-lx-closing .il-shared-closing-copy {max-width:640px}
.il-lx-closing .il-shared-closing-copy p {margin:18px 0 0;font-size:16px;line-height:1.7;color:#d7dedf}
.il-lx-closing-actions {display:flex;flex-wrap:wrap;gap:12px;flex:none}
.il-lx-closing-actions .il-button-ghost {color:#f3f4f2;border:1px solid #8a969b;background:#11181a80;gap:10px}
.il-lx-closing-actions .il-button-ghost .il-symbol {width:18px;height:18px;color:#d8b451}

@media(hover:hover) and (pointer:fine) {
  .il-lx-photo-card:hover img,.il-lx-link-card:hover img {transform:scale(1.045)}
  .il-lx-link-card:hover svg {transform:translateX(3px)}
  .il-lx-link-card:hover {border-color:#6f8189}
  .il-lx-quote .il-quote-tabs button:not([aria-selected=true]):hover {background:#d3ddda;color:#172024}
}
@media(max-width:1200px) {
  .il-lx-cols-5 {grid-template-columns:repeat(3,minmax(0,1fr))}
  .il-lx-booking {grid-template-columns:minmax(0,1fr) 420px;gap:44px}
}
@media(max-width:1024px) {
  .il-lx-section {padding-block:72px}
  .il-lx-intro,.il-lx-story,.il-lx-booking,.il-lx-split-heading,.il-lx-links-copy,.il-lx-coverage {grid-template-columns:1fr;gap:32px}
  .il-lx-story-reverse>.il-lx-story-photo {order:0}
  .il-lx-intro-photo,.il-lx-story-photo {height:400px}
  .il-lx-cols-4,.il-lx-card-grid.il-lx-cols-5 {grid-template-columns:repeat(2,minmax(0,1fr))}
  .il-lx-card-grid.il-lx-cols-5>* {grid-column:auto!important}
  .il-lx-assurances {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
  .il-lx-quote {position:static;max-width:560px}
  .il-lx-split-heading,.il-lx-links-copy {margin-bottom:32px}
}
@media(max-width:767px) {
  .il-lx-section {padding-block:56px}
  .il-lx-cols-2,.il-lx-cols-4,.il-lx-cols-5,.il-lx-card-grid.il-lx-cols-5,.il-lx-coverage ul {grid-template-columns:1fr}
  .il-lx-vehicle-grid.il-lx-cols-4,.il-lx-vehicle-grid.il-lx-cols-5,.il-lx-link-grid.il-lx-cols-5 {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .il-lx-vehicle img,.il-lx-vehicle-grid.il-lx-cols-5 .il-lx-vehicle img {height:110px;padding:10px}
  .il-lx-vehicle p {padding:14px 14px 18px;font-size:13.5px!important}
  .il-lx-link-grid.il-lx-cols-5 .il-lx-link-card span {font-size:13.5px;padding:12px 13px}
  .il-lx-intro-photo,.il-lx-story-photo {height:260px}
  .il-lx-photo-card figure {aspect-ratio:16/10}
  .il-lx-intro .il-lx-lead {padding-left:18px}
  .il-lx-intro-copy>p:not(.il-lx-lead) {padding-left:20px}
  .il-lx-assurances {padding-block:20px}
  .il-lx-assurances p {font-size:13px}
  .il-lx-card {padding:24px 22px}
  .il-lx-quote {padding:22px 18px}
  .il-lx-steps li {grid-template-columns:44px minmax(0,1fr);gap:12px}
  .il-lx-closing-actions {margin-top:24px}
  .il-lx-closing-actions .il-button {flex:1 1 100%;justify-content:space-between}
}
@media(prefers-reduced-motion:reduce) {
  .il-lx-photo-card img,.il-lx-link-card img,.il-lx-link-card svg {transition:none!important;transform:none!important}
}
