/* Focused desktop art direction and finishing details from the latest review. */
@media (min-width: 901px) {
  .appointment-grid {
    grid-template-columns: minmax(0, 1fr) minmax(430px, 1.08fr) !important;
    grid-template-rows: auto auto;
    align-items: stretch !important;
    column-gap: clamp(34px, 5vw, 76px) !important;
    row-gap: 22px !important;
  }
  .appointment-intro { grid-column: 1; grid-row: 1; align-self: end; max-width: 580px; }
  .appointment-office { grid-column: 1; grid-row: 2; width: min(100%, 520px); align-self: start; }
  .appointment-office img { aspect-ratio: 1.72 !important; object-position: center 55% !important; }
  .appointment #appointment-form { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
  .location-top {
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr) !important;
    align-items: center !important;
    justify-items: stretch !important;
    gap: clamp(35px, 8vw, 120px) !important;
    max-width: 1260px;
    margin: 0 auto 48px;
    text-align: left !important;
  }
  .location-top h2 { max-width: 680px; text-align: left !important; margin: 0 !important; }
  .location-top>div { justify-self: end !important; width: min(100%, 350px); text-align: left !important; }
  .location-top p { text-align: left !important; }
  .hyundai-section {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) !important;
    align-items: center !important;
    gap: clamp(40px, 7vw, 112px) !important;
    min-height: 0 !important;
    padding-block: clamp(72px, 8vw, 118px) !important;
  }
  .hyundai-image { height: clamp(440px, 42vw, 610px) !important; min-height: 0 !important; overflow: hidden; }
  .hyundai-image img { width: 100%; height: 100% !important; object-fit: cover; object-position: center; }
  .hyundai-copy { max-width: 600px; }
  .subaru-section .japan-gallery { grid-template-columns: minmax(0, 1.02fr) repeat(2, minmax(0, .94fr)) !important; max-width: 1380px !important; }
  .subaru-photo img { width: 100%; aspect-ratio: .94 !important; object-fit: cover; }
  .intro-feature { grid-template-columns: minmax(0, 1.12fr) minmax(370px, .88fr) !important; gap: clamp(42px, 7vw, 110px) !important; }
  .intro-feature-image .slide-stage { aspect-ratio: 1.55 !important; }
}

.instagram-stories {
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  width: 100%;
  min-height: 116px;
  margin: 27px 0 20px !important;
  padding: 21px 23px !important;
  border: 1px solid rgba(99, 204, 213, .31) !important;
  border-radius: 15px !important;
  background: linear-gradient(115deg, rgba(43, 183, 194, .12), rgba(14, 28, 31, .8) 58%), #111a1c !important;
  box-shadow: 0 12px 32px rgba(4, 14, 16, .16), inset 0 1px rgba(255,255,255,.05) !important;
}
.instagram-stories .instagram-mark { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(113, 223, 225, .55); border-radius: 14px; background: #19292b; }
.instagram-stories .instagram-mark img { width: 24px; height: 24px; }
.instagram-stories strong { display: block; color: #f3f7f6; font-size: 14px; letter-spacing: -.01em; }
.instagram-stories p { margin: 5px 0 9px !important; color: #afc0c2 !important; font-size: 11px !important; line-height: 1.55 !important; }
.instagram-stories a { color: #76d2d7 !important; font-size: 10px !important; font-weight: 650; text-decoration: none; }
.instagram-stories a:hover { color: #fff !important; }

.why-card .why-number { align-self: start; min-width: 52px; color: #52c4cf !important; font-size: clamp(34px, 3.4vw, 48px) !important; line-height: .95 !important; font-weight: 650 !important; letter-spacing: -.075em; }
.why-card { min-height: 156px; }
.service-title-row { display: flex; align-items: center; gap: 13px; margin: 9px 0 8px; }
.service-title-row h3 { margin: 0 !important; }
.service-icon { display: grid; flex: 0 0 42px; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(35, 176, 191, .28); border-radius: 13px; background: linear-gradient(145deg, #edfafa, #f7f9f7); color: #189cac; box-shadow: 0 5px 14px rgba(22, 120, 133, .08); }
.service-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.service-card-copy .service-title-row h3 { margin-block: 0 !important; }

#appointment-form {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(130, 185, 188, .24) !important;
  border-radius: 22px !important;
  background: radial-gradient(ellipse at 100% 0%, rgba(42, 180, 191, .15), transparent 38%), linear-gradient(145deg, #172426, #101719 72%) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,.24), inset 0 1px rgba(255,255,255,.04) !important;
}
#appointment-form::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #38bdc9 22%, #83e0dc 53%, transparent); opacity: .86; }
#appointment-form .field-shell input, #appointment-form .field-shell textarea { transition: border-color .2s, background .2s, box-shadow .2s; }
#appointment-form .field-shell:focus-within input, #appointment-form .field-shell:focus-within textarea { border-color: #47c4ce !important; background: rgba(44, 190, 200, .045) !important; box-shadow: 0 0 0 3px rgba(48, 190, 201, .09); }
#appointment-form .priority-choice label>span { border-radius: 11px !important; transition: border-color .2s, background .2s, transform .2s; }
#appointment-form .priority-choice input:checked+span { border-color: rgba(63, 193, 202, .72) !important; background: rgba(39, 167, 180, .13) !important; }
#appointment-form .button.primary { min-height: 58px; border-radius: 999px !important; box-shadow: 0 12px 26px rgba(24, 170, 184, .22); }

.arrival-directions { min-height: 56px !important; padding: 15px 19px !important; border: 1px solid #172629 !important; border-radius: 12px !important; background: #142124 !important; color: #f2f8f7 !important; box-shadow: 0 8px 20px rgba(8, 28, 31, .13); }
.arrival-directions span { color: #55cad2 !important; }
.arrival-directions>span { position: relative; display: inline-block; width: 14px; height: 14px; overflow: hidden; font-size: 0 !important; }
.arrival-directions>span::before,.film-caption a::after { content: ""; display: inline-block; width: 7px; height: 7px; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; }
.arrival-directions>span::after { content: ""; position: absolute; left: 2px; bottom: 3px; width: 10px; height: 1.5px; background: currentColor; transform: rotate(-45deg); transform-origin: left center; }
.arrival-directions:hover { background: #1c3336 !important; border-color: #36b9c5 !important; color: #fff !important; transform: translateY(-2px); }
.footer-brand .brand-art { width: clamp(250px, 25vw, 320px) !important; height: 78px !important; }

.assistant-launcher { position: fixed !important; display: grid !important; place-items: center !important; width: 72px !important; height: 72px !important; min-width: 72px !important; padding: 9px !important; border-radius: 50% !important; background: linear-gradient(145deg, rgba(17,40,43,.98), rgba(8,20,23,.98)) !important; border: 1px solid rgba(91,211,216,.6) !important; box-shadow: 0 12px 32px rgba(0,0,0,.34), 0 0 0 5px rgba(67,194,203,.08), inset 0 1px rgba(255,255,255,.12) !important; backdrop-filter: blur(14px); }
.assistant-launcher:hover { transform: translateY(-3px) scale(1.025); box-shadow: 0 16px 38px rgba(0,0,0,.4), 0 0 0 6px rgba(67,194,203,.1), inset 0 1px rgba(255,255,255,.15) !important; }
.assistant-launcher-avatar { width: 48px !important; height: 48px !important; border-radius: 50% !important; }
.assistant-launcher-copy,.assistant-launcher-arrow { display: none !important; }
.assistant-launcher::before { content: "Asistente MOTORLOZ"; position: absolute; right: calc(100% + 12px); top: 50%; transform: translate(5px,-50%); width: max-content; padding: 10px 13px; border: 1px solid rgba(91,211,216,.25); border-radius: 10px; background: rgba(12,25,28,.96); color: #f2f8f7; font-size: 11px; font-weight: 650; letter-spacing: .01em; opacity: 0; pointer-events: none; box-shadow: 0 8px 24px rgba(0,0,0,.22); transition: opacity .18s ease, transform .18s ease; }
.assistant-launcher:hover::before,.assistant-launcher:focus-visible::before { opacity: 1; transform: translate(0,-50%); }

.hero h1 { max-width: 7.4ch; font-size: clamp(82px, 9.4vw, 142px) !important; line-height: .91 !important; letter-spacing: -.075em !important; text-wrap: balance; }
.hero h1 em { color: #46bdca !important; font-style: normal; }
.hero-copy .eyebrow { letter-spacing: .16em; }
.hero-description { max-width: 34ch; color: rgba(235,244,243,.82); }
.hero .button.light { border: 1px solid rgba(255,255,255,.38); border-radius: 999px; background: rgba(248,251,249,.95); color: #132024; box-shadow: 0 12px 32px rgba(0,0,0,.16); }
.hero .button.light:hover { background: #fff; transform: translateY(-2px); }
.intro-feature-copy h2 em, .location-top h2 em { color: #152023 !important; font-style: normal; }
.intro-feature-copy h2 em { color:#35b9c8!important; }
#diagnostic-story-title em, #reference-bridge-title em { color: #39b9c8 !important; font-style: normal; }
.diagnostic-story-copy .button.outline { background: #35b8c7 !important; border-color: #35b8c7 !important; color: #08272d !important; box-shadow: 0 9px 22px rgba(18,166,180,.19); }
.diagnostic-story-copy .button.outline:hover { background: #54c9d4 !important; border-color: #54c9d4 !important; }
.films-grid .film-card { overflow: hidden; border: 1px solid rgba(131, 190, 192, .19); border-radius: 17px; background: linear-gradient(145deg,#132124,#0d1416); box-shadow: 0 18px 42px rgba(0,0,0,.2); }
.films-grid .film-card .film-caption { gap: 7px !important; padding: 18px 20px 20px !important; }
.films-grid .film-card .film-caption small { display: flex; align-items: center; gap: 9px; }
.films-grid .film-card .film-caption small::before { content: ""; width: 16px; height: 1px; background: #45c4cd; }
.films-grid .film-card .film-caption strong { font-size: clamp(19px, 2.2vw, 27px) !important; letter-spacing: -.035em; }
.films-grid .film-card .film-caption a { color: #d4e7e7 !important; }
.films-grid .film-card .film-caption a::after { position: relative; margin: 0 0 2px 7px; transform: translateY(1px); }
.films-grid .film-card .film-caption a:hover { color: #72d5db !important; }

@media (max-width: 760px) {
  .why-card .why-number { min-width: 38px; font-size: 30px !important; }
  .why-card { min-height: 112px; }
  .service-title-row { gap: 10px; }
  .service-icon { flex-basis: 37px; width: 37px; height: 37px; border-radius: 11px; }
  .service-icon svg { width: 21px; height: 21px; }
  .footer-brand .brand-art { width: clamp(220px, 64vw, 270px) !important; height: 70px !important; }
  .instagram-stories { grid-template-columns: 42px minmax(0,1fr) !important; min-height: 0; gap: 13px !important; padding: 16px !important; }
  .instagram-stories .instagram-mark { width: 40px; height: 40px; border-radius: 12px; }
  .instagram-stories strong { font-size: 12px; }
  .instagram-stories p { font-size: 10px !important; }
}

@media (max-width: 600px) {
  .assistant-launcher { width: 62px !important; height: 62px !important; min-width: 62px !important; right: 13px !important; bottom: calc(15px + env(safe-area-inset-bottom,0px) + 60px) !important; }
  .assistant-launcher-avatar { width: 42px !important; height: 42px !important; }
  .films-grid .film-card { border-radius: 13px; }
  .films-grid .film-card .film-caption { padding: 13px 14px 15px !important; }
}

@media (prefers-reduced-motion: no-preference) {
  .arrival-directions, .hero .button.light { transition: transform .22s ease, background .22s ease, border-color .22s ease, color .22s ease; }
}

/* A single continuous paper field keeps the horizontal tiles aligned across sections. */
main#contenido {
  --tile-drift:0px;
  position:relative!important;
  isolation:isolate;
  background-color:#ecefec!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='590' height='154' viewBox='0 0 590 154'%3E%3Cg transform='skewX(-8)' fill='%23d7dfdc' fill-opacity='.12' stroke='%239baead' stroke-opacity='.17' stroke-width='1'%3E%3Crect x='4' y='2' width='108' height='68' rx='12'/%3E%3Crect x='122' y='2' width='108' height='68' rx='12'/%3E%3Crect x='240' y='2' width='108' height='68' rx='12'/%3E%3Crect x='358' y='2' width='108' height='68' rx='12'/%3E%3Crect x='476' y='2' width='108' height='68' rx='12'/%3E%3Crect x='-55' y='78' width='108' height='68' rx='12'/%3E%3Crect x='63' y='78' width='108' height='68' rx='12'/%3E%3Crect x='181' y='78' width='108' height='68' rx='12'/%3E%3Crect x='299' y='78' width='108' height='68' rx='12'/%3E%3Crect x='417' y='78' width='108' height='68' rx='12'/%3E%3Crect x='535' y='78' width='108' height='68' rx='12'/%3E%3C/g%3E%3C/svg%3E")!important;
  background-size:590px 154px!important;
  background-position:calc(var(--tile-x,0px) + var(--tile-drift,0px)) 0!important;
  background-repeat:repeat!important;
  animation:paper-tile-drift 42s ease-in-out infinite alternate;
}
@property --tile-drift { syntax:'<length>';inherits:false;initial-value:0px; }
@keyframes paper-tile-drift { from { --tile-drift:-10px; } to { --tile-drift:10px; } }
main#contenido>.background-tile-trace {
  position:absolute!important;z-index:0!important;pointer-events:none!important;
  left:-200px;top:-200px;width:108px;height:68px;opacity:0;
  border:0!important;border-radius:12px;
  background:rgba(37,72,74,.13);
  box-shadow:none!important;outline:0!important;
  transform:skewX(-8deg);transform-origin:top left;
  transition:opacity 1.05s ease,background-color .25s ease;
}
main#contenido>.background-tile-trace.is-active {opacity:1}
main#contenido>:not(.background-tile-trace) {position:relative;z-index:1}
.intro,.services,.reviews,.location,.subaru-section,.hyundai-section,.reference-bridge,.contact-bridge,.customer-gallery,.electric-mobility {
  background-color:transparent!important;background-image:none!important;
}

/* Tighten joins between the light sections so they read as one continuous sheet. */
@media(min-width:761px) {
  .intro.section,.subaru-section.section,.hyundai-section.section,.reference-bridge.section,
  .reviews.section,.location.section {padding-block:clamp(50px,4.5vw,70px)!important;}
  .intro.section {padding-bottom:clamp(26px,3vw,44px)!important;}
  .hyundai-section.section {padding-block:clamp(42px,3.5vw,58px)!important;}
  .reference-bridge.section {padding-block:clamp(28px,3.4vw,48px)!important;}
  .reviews.section {padding-bottom:12px!important;}
  .customer-gallery {margin-block:0!important;padding-block:12px clamp(34px,4vw,56px)!important;}
  .location.section {padding-top:clamp(40px,4vw,60px)!important;}
}
@media(prefers-reduced-motion:reduce) {
  main#contenido {animation:none!important;--tile-drift:0px!important;}
  main#contenido>.background-tile-trace {transition:none!important;}
}

/* The review rail keeps moving on its own; its thin divider and manual controls add clutter. */
.google-review-bar { border-bottom:0!important; }
.review-controls { display:none!important; }

/* Restore the brand colors and give the map column a finished, even surface. */
.location-top h2 em,.contact-bridge-card h2 em { color:#36b9c8!important; font-style:normal!important; }
.location .arrival-grid { align-items:stretch!important; }
.location .map-panel {
  min-height:clamp(360px,33vw,460px)!important;
  background-color:#dbe5e1!important;
  background-image:
    linear-gradient(32deg,transparent 44%,rgba(255,255,255,.8) 44.5%,rgba(255,255,255,.8) 47%,transparent 47.5%),
    linear-gradient(118deg,transparent 65%,rgba(255,255,255,.72) 65.5%,rgba(255,255,255,.72) 68%,transparent 68.5%),
    linear-gradient(86deg,transparent 20%,rgba(255,255,255,.58) 20.5%,rgba(255,255,255,.58) 22%,transparent 22.5%),
    radial-gradient(ellipse at 18% 85%,rgba(75,162,137,.2),transparent 22%),
    linear-gradient(145deg,#e8eeea,#cfded9)!important;
}
.location .map-panel iframe { opacity:.16!important; transition:opacity .28s ease; }
.location .map-panel:hover iframe,.location .map-panel:focus-within iframe { opacity:.94!important; }
.location .map-panel::before { content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,rgba(71,145,133,.55) 50%,transparent 50.3%),linear-gradient(0deg,transparent 55%,rgba(71,145,133,.4) 55.3%,transparent 55.7%);opacity:.62; }
.location .map-address,.location .map-focus { z-index:2!important; }
.location .map-address { bottom:14px!important; }
.location .arrival-photos { align-self:stretch; }
.location .arrival-slide-figure { margin:0; }
.location .arrival-story .slide-stage { aspect-ratio:1.28!important; }
.location .arrival-directions { margin-top:12px; }
.location .arrival-grid,.location .map-footer { width:min(100%,1440px);margin-inline:auto; }
.hyundai-section { display:block!important;min-height:0!important;padding-block:clamp(64px,7vw,112px)!important; }
.hyundai-inner { display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(36px,6vw,92px);width:min(100%,1380px);margin-inline:auto; }
.hyundai-image { width:100%;height:auto!important;min-height:0!important;aspect-ratio:1.26;overflow:hidden;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important; }
.hyundai-image img { display:block;width:100%;height:100%!important;min-height:0!important;aspect-ratio:1.26;object-fit:cover;object-position:center 48%;border:0!important;outline:0!important;box-shadow:none!important;clip-path:inset(2px 4px 2px 0)!important;transform:none!important; }
.hyundai-copy { max-width:590px; }

@media(max-width:760px) {
  .location .map-panel { min-height:340px!important; }
  .location .arrival-story .slide-stage { aspect-ratio:1.25!important; }
}
@media(max-width:900px) {
  .hyundai-section { padding-block:42px!important; }
  .hyundai-inner { grid-template-columns:minmax(0,1fr);gap:24px;width:100%; }
  .hyundai-image { aspect-ratio:1.45;width:100%; }
  .hyundai-image img { aspect-ratio:1.45;object-position:center 44%; }
  .hyundai-copy { max-width:680px; }
}
@media(prefers-reduced-motion:reduce) {
  .location .map-panel iframe { transition:none!important; }
}

/* Mobile contact stays on one screen; the two-by-two links keep hours visible. */
@media(max-width:760px) {
  .contact-dialog[open] {
    width:min(490px,calc(100% - 28px))!important;
    max-height:calc(100svh - 24px)!important;
    overflow:hidden!important;
    padding:30px 18px 20px!important;
  }
  .contact-dialog>.eyebrow { margin:0 0 7px!important;font-size:9px!important; }
  .contact-brand { margin:0 auto 5px!important; }
  .contact-brand img { height:39px!important; }
  #contact-explanation { font-size:12px!important;line-height:1.35!important; }
  .contact-dialog-links { grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:12px!important; }
  .contact-dialog-links>a { grid-template-columns:30px minmax(0,1fr)!important;gap:7px!important;min-height:53px;padding:7px 8px!important; }
  .contact-icon { width:29px!important;height:29px!important;border-radius:8px!important; }
  .contact-icon svg { width:17px!important;height:17px!important; }
  .contact-icon img { width:19px!important;height:19px!important; }
  .contact-item-copy { gap:2px!important; }
  .contact-item-copy small { font-size:9px!important;line-height:1.2!important; }
  .contact-item-copy strong { font-size:11px!important;line-height:1.2!important; }
  .contact-hours { margin-top:11px!important;padding-top:9px!important;gap:2px!important;text-align:center!important; }
  .contact-hours>span { font-size:8px!important; }
  .contact-hours>strong,.contact-hours>p { font-size:11px!important;line-height:1.25!important; }
  .contact-hours>small { font-size:9px!important;line-height:1.25!important; }
}
@media(max-width:760px) and (max-height:600px) {
  .contact-dialog[open] { padding-top:20px!important;padding-bottom:14px!important; }
  .contact-brand img { height:30px!important; }
  #contact-explanation { display:none!important; }
  .contact-dialog-links { margin-top:8px!important; }
  .contact-hours { margin-top:8px!important;padding-top:7px!important; }
}

/* Keep the assistant bubble clear of the separate WhatsApp contact shortcut. */
.floating-booking { display:flex!important;opacity:1!important;visibility:visible!important;z-index:101!important; }
.floating-whatsapp { flex:none!important;width:56px!important;height:56px!important;border:2px solid rgba(255,255,255,.92)!important;box-shadow:0 7px 21px rgba(0,0,0,.3),0 0 0 4px rgba(35,182,75,.17)!important; }
.floating-whatsapp svg { display:block!important;width:31px!important;height:31px!important;stroke-width:2!important; }
@media(max-width:600px) {
  .assistant-launcher { z-index:100!important;bottom:calc(100px + env(safe-area-inset-bottom,0px))!important;right:14px!important; }
  .floating-booking { right:14px!important;bottom:calc(15px + env(safe-area-inset-bottom,0px))!important; }
  .floating-help-label { display:none!important; }
  .floating-whatsapp { width:52px!important;height:52px!important; }
}
@media(prefers-reduced-motion:reduce) { .customer-gallery-track { animation:none!important; } }

/* En táctil, el estado hover puede quedarse activo tras un toque y congelar la galería. */
@media (hover:none), (pointer:coarse), (max-width:760px) {
  .customer-gallery:hover .customer-gallery-track,
  .customer-gallery:focus-within .customer-gallery-track {
    animation-play-state:running;
  }
}

/* Keep the Subaru illustration, caption and copy in separate, predictable rows. */
.subaru-section .japan-gallery { align-items:start!important; }
.subaru-section .japan-heading { align-self:start!important; }
.subaru-section figure.engine-sketch {
  position:relative!important;z-index:0!important;display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;align-items:center!important;justify-items:center!important;
  width:min(100%,410px)!important;height:clamp(150px,17vw,205px)!important;
  margin:10px auto 5px!important;overflow:hidden!important;
}
.subaru-section .engine-sketch img {
  grid-row:1!important;align-self:center!important;justify-self:center!important;
  width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;
}
.subaru-section .engine-sketch figcaption {
  position:static!important;grid-row:2!important;display:block!important;
  margin:2px 0 0!important;color:#607176!important;font:9px/1.3 var(--mono)!important;
  letter-spacing:.1em!important;text-align:center!important;
}
.subaru-section .japan-brand-pair { justify-content:center!important;gap:20px!important;margin:17px 0 14px!important; }
.subaru-section .japan-flag { flex:none!important;width:68px!important;height:46px!important;box-shadow:0 5px 15px rgba(20,38,42,.1)!important; }
.subaru-section .japan-flag i { width:18px!important;height:18px!important; }
.subaru-section .brand-separator { height:40px!important; }
.subaru-section .subaru-lockup { display:flex!important;align-items:center!important; }
.subaru-section .subaru-lockup img { width:96px!important;height:58px!important; }
@media(max-width:760px) {
  .subaru-section figure.engine-sketch { width:min(100%,400px)!important;height:clamp(142px,40vw,188px)!important;margin:7px auto 4px!important; }
  .subaru-section .japan-brand-pair { gap:17px!important;margin:15px 0 12px!important; }
  .subaru-section .japan-flag { width:64px!important;height:43px!important; }
  .subaru-section .japan-flag i { width:17px!important;height:17px!important; }
  .subaru-section .subaru-lockup img { width:88px!important;height:53px!important; }
}

/* Pair the MOTORLOZ assistant and WhatsApp actions as one quiet, aligned dock. */
.floating-booking {
  right:max(20px,env(safe-area-inset-right))!important;
  bottom:calc(18px + env(safe-area-inset-bottom,0px))!important;
  gap:0!important;width:50px!important;height:50px!important;min-height:50px!important;
  padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;
  box-shadow:none!important;opacity:1!important;visibility:visible!important;z-index:101!important;
}
.floating-help-label { display:none!important; }
.floating-whatsapp {
  display:grid!important;place-items:center!important;width:50px!important;height:50px!important;
  border:1px solid rgba(255,255,255,.88)!important;border-radius:50%!important;
  background:#18b967!important;box-shadow:0 4px 13px rgba(9,35,25,.28)!important;
}
.floating-whatsapp svg { width:27px!important;height:27px!important; }
.assistant-launcher {
  right:max(20px,env(safe-area-inset-right))!important;
  bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;
  display:grid!important;place-items:center!important;width:50px!important;height:50px!important;min-width:50px!important;
  padding:0!important;border:1px solid rgba(60,181,192,.72)!important;border-radius:50%!important;
  background:#11191c!important;box-shadow:0 4px 14px rgba(8,29,32,.24)!important;z-index:102!important;
}
.assistant-launcher:hover { transform:translateY(-2px)!important;box-shadow:0 7px 18px rgba(8,29,32,.28)!important; }
.assistant-launcher-avatar {
  display:grid!important;place-items:center!important;width:100%!important;height:100%!important;
  border:0!important;border-radius:50%!important;background:transparent!important;
}
.assistant-launcher-avatar img { display:block!important;width:30px!important;height:30px!important;object-fit:contain!important; }
.assistant-launcher-avatar>span,.assistant-launcher-copy,.assistant-launcher-arrow { display:none!important; }
.assistant-launcher-avatar>span { visibility:hidden!important;opacity:0!important;width:0!important;height:0!important; }
.assistant-launcher-avatar img { filter:none!important; }
.subaru-section figure.engine-sketch { margin-bottom:28px!important; }
.subaru-section .japan-heading h2 { margin-top:0!important; }
.subaru-section .engine-sketch figcaption { margin-top:5px!important; }
@media(max-width:600px) {
  .floating-booking { right:max(16px,env(safe-area-inset-right))!important;bottom:calc(15px + env(safe-area-inset-bottom,0px))!important;width:48px!important;height:48px!important;min-height:48px!important; }
  .floating-whatsapp { width:48px!important;height:48px!important; }
  .floating-whatsapp svg { width:26px!important;height:26px!important; }
  .assistant-launcher { right:max(16px,env(safe-area-inset-right))!important;bottom:calc(71px + env(safe-area-inset-bottom,0px))!important;width:48px!important;height:48px!important;min-width:48px!important; }
  .assistant-launcher-avatar img { width:29px!important;height:29px!important; }
}

/* Use the quiet location illustration without the map provider's mobile chrome. */
.location .map-directions-link { display:none!important; }
.location .map-panel { background:#e8eeeb url('assets/map-streets.svg') center/cover no-repeat!important; }
.location .map-panel iframe { display:none!important; }
.location .map-focus { display:none!important; }
.location .map-address {
  position:absolute!important;top:14px!important;right:14px!important;bottom:auto!important;left:14px!important;
  width:auto!important;max-width:none!important;pointer-events:auto!important;
}
.location .map-address>span { margin-top:2px!important; }
.location .map-address .map-open-link { width:100%!important;justify-content:flex-start!important; }
@media(max-width:600px) {
  .location .map-address { top:12px!important;right:12px!important;bottom:auto!important;left:12px!important;padding:15px!important; }
}

/* Final pass: stronger service symbols, clean labels, and a visible real map. */
.service-title-row { display:flex!important;min-height:54px!important;align-items:center!important;gap:15px!important;margin:9px 0 12px!important; }
.service-title-row h3 { flex:1 1 0!important;min-width:0!important;margin:0!important;padding-left:2px!important;text-align:left!important;line-height:1.18!important; }
.service-icon { display:grid!important;flex:0 0 44px!important;width:44px!important;height:44px!important;place-items:center!important;border:1px solid rgba(8,139,157,.3)!important;border-radius:14px!important;background:linear-gradient(145deg,#d9f7f8 0%,#f0fbfa 58%,#d9eeee 100%)!important;color:#087f91!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 14px rgba(8,100,115,.13)!important; }
.service-icon svg { display:block!important;width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important; }
.service-card-copy>a[data-service] { display:inline-flex!important;align-items:center!important;gap:0!important; }
.service-card-copy>a[data-service]>b { display:none!important; }
.service-card-copy>a[data-service]::after { content:none!important; }
.people-text>a.text-link>span { display:none!important; }
.instagram-stories>div>a { font-size:0!important; }
.instagram-stories>div>a::before { content:"Explorar @motorloz";font-size:10px; }
.instagram-stories>div>a::after { content:"";display:inline-block;width:5px;height:5px;margin:0 0 1px 8px;border-radius:50%;background:currentColor; }
.location .map-panel { background:#e8eeeb!important; }
.location .map-panel iframe { position:absolute!important;inset:0!important;display:block!important;visibility:visible!important;width:100%!important;height:100%!important;opacity:1!important;pointer-events:auto!important; }
.location .map-address { display:none!important; }
#review-track .google-review-card:nth-child(5n + 1) .review-avatar { background:linear-gradient(145deg,#66518d,#8a72b0)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 2) .review-avatar { background:linear-gradient(145deg,#397764,#62a18a)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 3) .review-avatar { background:linear-gradient(145deg,#a16b31,#c28c4e)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 4) .review-avatar { background:linear-gradient(145deg,#3f6e98,#6a92b6)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n) .review-avatar { background:linear-gradient(145deg,#9a536a,#bd7b8f)!important;color:#fff!important; }
#review-track .review-avatar { border:2px solid rgba(255,255,255,.88)!important;box-shadow:0 2px 8px rgba(24,47,53,.16)!important;font-family:var(--body),"Segoe UI",sans-serif!important;font-weight:750!important; }
@media(max-width:600px) {
  .service-title-row { min-height:52px!important;gap:13px!important; }
  .service-icon { flex-basis:42px!important;width:42px!important;height:42px!important;border-radius:13px!important; }
  .service-icon svg { width:24px!important;height:24px!important; }
}

/* Keep service titles balanced while giving each symbol enough presence to read. */
.service-title-row { display:flex!important;min-height:54px!important;align-items:center!important;gap:15px!important;margin:9px 0 12px!important; }
.service-title-row h3 { flex:1 1 0!important;min-width:0!important;margin:0!important;padding-left:2px!important;text-align:left!important;line-height:1.18!important; }
.service-icon { display:grid!important;flex:0 0 44px!important;width:44px!important;height:44px!important;place-items:center!important;border:1px solid rgba(8,139,157,.3)!important;border-radius:14px!important;background:linear-gradient(145deg,#d9f7f8 0%,#f0fbfa 58%,#d9eeee 100%)!important;color:#087f91!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 14px rgba(8,100,115,.13)!important; }
.service-icon svg { display:block!important;width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important; }
.service-card-copy>a[data-service] { display:inline-flex!important;align-items:center!important;gap:0!important; }
.service-card-copy>a[data-service]>b { display:none!important; }
.service-card-copy>a[data-service]::after { content:"";display:inline-block;width:5px;height:5px;margin-left:9px;border-radius:50%;background:#087f91;box-shadow:0 0 0 3px rgba(8,127,145,.1); }
.people-text>a.text-link>span { display:none!important; }
.instagram-stories>div>a { font-size:0!important; }
.instagram-stories>div>a::before { content:"Explorar @motorloz";font-size:10px; }
.instagram-stories>div>a::after { content:"";display:inline-block;width:5px;height:5px;margin:0 0 1px 8px;border-radius:50%;background:currentColor; }

/* The map is a live Google Maps embed; keep the whole map visible and unobstructed. */
.location .map-panel { background:#e8eeeb!important; }
.location .map-panel iframe { position:absolute!important;inset:0!important;display:block!important;visibility:visible!important;width:100%!important;height:100%!important;opacity:1!important;pointer-events:auto!important; }
.location .map-address { display:none!important; }
@media(max-width:600px) {
  .service-title-row { min-height:52px!important;gap:13px!important; }
  .service-icon { flex-basis:42px!important;width:42px!important;height:42px!important;border-radius:13px!important; }
  .service-icon svg { width:24px!important;height:24px!important; }
}

/* Use the live Google map; keep the address and directions above it. */
.location .location-directions {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  min-height:46px!important;margin-top:10px!important;padding:11px 16px!important;border-radius:7px!important;
  background:#30b7c7!important;color:#09282d!important;font-size:12px!important;font-weight:700!important;
  text-decoration:none!important;box-shadow:0 7px 18px rgba(22,106,117,.14)!important;
}
.location .location-directions svg { width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important; }
.location .map-panel { background:#e8eeeb!important; }
.location .map-panel iframe { position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;opacity:1!important;filter:none!important;border:0!important;pointer-events:auto!important; }
@media(max-width:760px) {
  .location .location-top>div { width:min(100%,430px)!important;margin:16px auto 0!important; }
  .location .location-directions { margin-inline:auto!important; }
}

/* Give the first three proof points definition and a subtle lift. */
.intro-proof-row { gap:14px!important;margin-top:clamp(28px,5vw,58px)!important;border:0!important; }
.intro-proof-row article,.intro-proof-row article:first-child,.intro-proof-row article:last-child {
  min-width:0!important;min-height:105px!important;padding:18px!important;border:1px solid rgba(69,112,116,.13)!important;
  border-radius:12px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(232,241,239,.94))!important;
  box-shadow:0 9px 24px rgba(24,52,55,.09),inset 0 1px rgba(255,255,255,.9)!important;
}
.intro-proof-row .proof-index { color:#168fa0!important;font-size:12px!important;font-weight:700!important; }
.intro-proof-row b { color:#1a282b!important;font-size:14px!important; }
.intro-proof-row small { color:#607176!important;font-size:11px!important; }

/* Let the workshop carousel reach both phone edges without stretching vertically. */
@media(max-width:760px) {
  #taller.intro.section { padding-inline:0!important; }
  #taller>.section-label { margin-inline:22px!important; }
  #taller .intro-feature { display:flex!important;flex-direction:column!important;gap:0!important;width:100%!important; }
  #taller .intro-feature-image { width:100vw!important;max-width:none!important;margin:0 0 0 calc(50% - 50vw)!important;overflow:hidden!important; }
  #taller .intro-feature-image .slide-stage { width:100%!important;height:auto!important;aspect-ratio:1.25!important;border-radius:0!important; }
  #taller .intro-feature-image .slide-frame img { width:100%!important;height:100%!important;object-fit:cover!important; }
  #taller .intro-feature-image .slide-toolbar { margin:0!important;border-radius:0!important; }
  #taller .intro-feature-copy { width:100%!important;padding:22px 22px 0!important; }
  #taller .intro-proof-row { grid-template-columns:minmax(0,1fr)!important;gap:10px!important;margin:28px 22px 0!important; }
  #taller .intro-proof-row article,#taller .intro-proof-row article:first-child,#taller .intro-proof-row article:last-child { min-height:88px!important;padding:15px 14px!important; }
  .subaru-section .japan-brand-pair { gap:19px!important; }
  .subaru-section .japan-flag { width:72px!important;height:49px!important; }
  .subaru-section .japan-flag i { width:19px!important;height:19px!important; }
  .subaru-section .subaru-lockup img { width:98px!important;height:60px!important; }
  .hyundai-badge { gap:14px!important; }
  .hyundai-badge img { width:82px!important;height:55px!important; }
  .hyundai-badge span { font-size:22px!important; }
  .hyundai-badge i { font-size:10px!important; }
  footer .footer-brand { justify-content:center!important; }
  footer .footer-brand .brand-art { display:block!important;margin-inline:auto!important;object-fit:contain!important;object-position:center!important;transform:translateX(5px)!important; }
  footer .footer-links { display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;margin:25px auto!important;padding:0 0 24px!important; }
  footer .footer-links a,footer .footer-links a:last-child { display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-height:34px!important;margin:0!important;text-align:center!important; }
}

/* Short, plain-language policy notes and the contact details that matter. */
.footer-policies { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:min(100%,940px);margin:0 auto 28px;padding:18px 0;border-top:1px solid rgba(190,215,216,.16);border-bottom:1px solid rgba(190,215,216,.16); }
.footer-policies article { min-width:0; }
.footer-policies h2 { margin:0 0 7px;color:#d9eeee;font-size:12px;letter-spacing:.01em; }
.footer-policies p { margin:0;color:#9eb3b5;font-size:10px;line-height:1.55; }
.footer-policies a { color:#72d1d9;text-underline-offset:2px; }
@media(max-width:760px) {
  .footer-policies { grid-template-columns:minmax(0,1fr);gap:15px;width:100%;margin:0 auto 24px;padding:17px 0;text-align:center; }
  .footer-policies h2 { font-size:12px; }
  .footer-policies p { max-width:42ch;margin-inline:auto;font-size:10px; }
}

/* Enlarge the direct-contact dialog without turning it into a full-screen sheet. */
@media(max-width:760px) {
  .contact-dialog[open] { width:min(520px,calc(100% - 24px))!important;max-height:min(82svh,580px)!important;overflow:hidden!important;padding:34px 22px 24px!important; }
  .contact-dialog>.eyebrow { margin-bottom:10px!important;font-size:10px!important; }
  .contact-brand { margin:0 auto 8px!important; }
  .contact-brand img { height:49px!important; }
  #contact-explanation { font-size:13px!important;line-height:1.4!important; }
  .contact-dialog-links { gap:9px!important;margin-top:15px!important; }
  .contact-dialog-links>a { min-height:59px!important;padding:9px 10px!important; }
  .contact-item-copy small { font-size:10px!important; }
  .contact-item-copy strong { font-size:12px!important;line-height:1.3!important; }
  .contact-hours { margin-top:13px!important;padding-top:11px!important; }
  .contact-hours>span { font-size:9px!important; }
  .contact-hours>strong,.contact-hours>p { font-size:12px!important; }
  .contact-hours>small { font-size:10px!important; }
}
@media(max-width:760px) and (max-height:620px) {
  .contact-dialog[open] { max-height:calc(100svh - 20px)!important;padding:20px 18px 14px!important; }
  .contact-brand img { height:36px!important; }
  #contact-explanation { display:none!important; }
  .contact-dialog-links { margin-top:9px!important; }
  .contact-dialog-links>a { min-height:50px!important; }
  .contact-hours { margin-top:8px!important;padding-top:7px!important; }
}

/* Center the diagnostic copy as one editorial block on narrow screens. */
@media(max-width:760px) {
  .diagnostic-story-copy { display:flex!important;flex-direction:column!important;align-items:center!important;width:min(100%,430px)!important;margin-inline:auto!important;text-align:center!important; }
  .diagnostic-story-copy>.eyebrow,.diagnostic-story-copy h2,.diagnostic-story-copy>p:not(.eyebrow),.diagnostic-story-copy>.diagnostic-story-note { width:100%!important;margin-inline:auto!important;text-align:center!important; }
  .diagnostic-story-copy>p:not(.eyebrow) { max-width:38ch!important; }
  .diagnostic-story-copy>.button { align-self:center!important;margin-inline:auto!important; }
}

/* Make both workshop clips share the same caption rows and outer height. */
.films-grid { align-items:stretch!important;grid-auto-rows:1fr!important; }
.films-grid .film-card { align-self:stretch!important;height:100%!important; }
.films-grid .film-caption { display:grid!important;grid-template-rows:auto minmax(2.4em,auto) minmax(2.7em,auto)!important;align-content:start!important; }
.films-grid .film-caption strong { display:block!important;min-height:2.4em!important;line-height:1.2!important; }
.films-grid .film-caption a { display:block!important;min-height:2.7em!important;margin-top:2px!important; }

/* Stack the Instagram symbol above a properly centered message. */
.instagram-stories { grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;justify-items:center!important;text-align:center!important; }
.instagram-stories>.instagram-mark { grid-column:1!important;grid-row:1!important;justify-self:center!important;margin:0 auto 4px!important; }
.instagram-stories>div { grid-column:1!important;grid-row:2!important;display:grid!important;justify-items:center!important;width:100%!important;text-align:center!important; }
.instagram-stories>div>strong,.instagram-stories>div>p,.instagram-stories>div>a { width:100%!important;text-align:center!important; }

/* Replace the narrow monospaced step counter with a stronger matching sans. */
.why-card .why-number { font-family:var(--body),"Segoe UI",sans-serif!important;font-size:clamp(29px,3vw,38px)!important;font-weight:700!important;letter-spacing:-.055em!important;line-height:1!important;font-variant-numeric:tabular-nums!important; }
@media(max-width:760px) { .why-card .why-number { font-size:32px!important; } }

/* Keep the map section free of a second directions strip and footer overlap. */
.location .arrival-directions,.location .map-footer { display:none!important; }

/* Vehicle and year are separate, aligned fields; keep the year compact on phones. */
#appointment-form .vehicle-year-row { display:grid!important;grid-template-columns:minmax(0,1fr) minmax(100px,.32fr)!important;gap:14px!important; }
@media(max-width:420px) {
  #appointment-form .vehicle-year-row { grid-template-columns:minmax(0,1fr) 96px!important;gap:10px!important; }
}

/* The selected request priority needs unmistakable contrast on the dark form. */
#appointment-form .priority-choice input:checked+span {
  border:2px solid #65e4eb!important;background:linear-gradient(135deg,#47cad5,#2db7c5)!important;
  color:#082b2f!important;box-shadow:0 5px 17px rgba(45,183,197,.28)!important;transform:translateY(-1px)!important;
}
#appointment-form .priority-choice input:checked+span b { color:#082b2f!important;font-weight:750!important; }
#appointment-form .priority-choice input:checked+span small { color:#12464b!important; }
#appointment-form .priority-choice input:checked+span::after { background:#0d5961!important;color:#fff!important; }
#appointment-form .priority-choice input:focus-visible+span { outline:3px solid #a5eef3!important;outline-offset:3px!important; }
.priority-choice input:checked+span {
  border:2px solid #65e4eb!important;background:linear-gradient(135deg,#47cad5,#2db7c5)!important;
  color:#082b2f!important;box-shadow:0 5px 17px rgba(45,183,197,.28)!important;transform:translateY(-1px)!important;
}
.priority-choice input:checked+span b { color:#082b2f!important;font-weight:750!important; }
.priority-choice input:checked+span small { color:#12464b!important; }
.priority-choice input:checked+span::after { background:#0d5961!important;color:#fff!important; }
.priority-choice input:focus-visible+span { outline:3px solid #a5eef3!important;outline-offset:3px!important; }

/* Center and enlarge the desktop review introduction; keep its rating readable. */
@media(min-width:761px) {
  .reviews>.section-label>span:last-child { display:none!important; }
  .reviews-intro { display:flex!important;justify-content:center!important;width:100%!important;margin-inline:auto!important; }
  .reviews-heading { width:min(100%,920px)!important;margin-inline:auto!important;text-align:center!important; }
  .reviews-heading>.eyebrow,.reviews-heading>p:last-child { margin-inline:auto!important; }
  .reviews-heading h2 { margin-inline:auto!important;font-size:clamp(58px,6.2vw,84px)!important; }
  .reviews-rating { display:grid!important;grid-template-columns:auto auto;justify-content:center!important;align-items:center!important;column-gap:13px!important;row-gap:5px!important;margin:14px auto 24px!important; }
  .reviews-rating>strong { font-size:clamp(27px,2.6vw,36px)!important; }
  .reviews-rating>.gold-stars { font-size:clamp(34px,3.2vw,44px)!important; }
  .reviews-rating>small { grid-column:1/-1!important;text-align:center!important;font-size:13px!important; }
}
.customer-gallery-toggle { display:none!important; }

/* The step number, service icon and label share a clean, centered baseline. */
.why-card { grid-template-columns:58px 34px minmax(0,1fr) 20px!important;align-items:center!important; }
.why-card .why-number { display:block!important;align-self:center!important;justify-self:center!important;min-width:0!important;width:100%!important;padding:0!important;text-align:center!important;line-height:1!important;font-size:clamp(30px,3vw,40px)!important; }
.why-card>svg { align-self:center!important;justify-self:center!important;width:32px!important;height:32px!important;margin:0!important; }
.service-title-row { min-height:48px!important;align-items:center!important;gap:12px!important; }
.service-title-row h3 { flex:1 1 auto!important;align-self:center!important;line-height:1.22!important;text-align:left!important; }
.service-icon { align-self:center!important; }
@media(max-width:600px) {
  .why-card { grid-template-columns:48px 30px minmax(0,1fr) 20px!important; }
  .why-card .why-number { font-size:32px!important; }
  .why-card>svg { width:26px!important;height:26px!important; }
  .service-title-row { min-height:44px!important;gap:10px!important; }
}

.hyundai-badge { gap:13px!important;margin-block:17px 24px!important; }
.hyundai-badge img { width:72px!important;height:48px!important; }
.hyundai-badge span { font-size:clamp(18px,1.8vw,22px)!important; }
.hyundai-badge i { font-size:9px!important; }
.subaru-photo img,.hyundai-image img,.intro-story .slide-stage,.location .map-panel { box-shadow:0 12px 28px rgba(31,58,60,.1)!important; }
.engine-sketch { display:grid;place-items:center;width:min(100%,390px);height:clamp(112px,14vw,168px);margin:12px auto 14px;overflow:visible;background:transparent; }
.engine-sketch::after { display:none!important; }
.engine-sketch img { display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:none;mix-blend-mode:normal; }
.japan-heading h2 { position:relative;z-index:1; }

/* A real, legible map with fixed bounds prevents the mobile layout from stretching. */
.location .arrival-grid { min-width:0!important;align-items:start!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important; }
.location .map-panel { position:relative!important;width:100%!important;min-width:0!important;min-height:0!important;height:clamp(320px,34vw,460px)!important;max-height:460px!important;overflow:hidden!important;border:1px solid rgba(41,77,78,.13)!important;border-radius:12px!important;box-shadow:0 12px 30px rgba(22,44,45,.1)!important; }
.location .map-panel { background:#e8eeeb url('assets/map-streets.svg') center/cover no-repeat!important; }
.location .map-panel iframe { position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;opacity:.18!important;filter:none!important;transition:opacity .28s ease!important; }
.location .map-panel:hover iframe,.location .map-panel:focus-within iframe { opacity:1!important; }
.location .map-panel::before,.location .map-focus { display:none!important; }
.location .map-address { bottom:12px!important;left:12px!important;max-width:min(340px,calc(100% - 24px))!important; }
.location .arrival-photos { min-width:0!important;width:100%!important; }
.light-copy-wash { position:relative!important;z-index:0!important;isolation:isolate; }
.light-copy-wash::before { content:"";position:absolute;z-index:-1;inset:-20px -34px;pointer-events:none;background:radial-gradient(ellipse at center,rgba(245,247,245,.94) 0%,rgba(245,247,245,.76) 48%,rgba(245,247,245,0) 84%);filter:blur(11px); }
.reviews-heading,.services-heading,.hyundai-copy,.location-top>div,.intro-feature-copy,.customer-gallery-heading>div { position:relative!important;z-index:0!important;isolation:isolate; }
.reviews-heading::before,.services-heading::before,.hyundai-copy::before,.location-top>div::before,.intro-feature-copy::before,.customer-gallery-heading>div::before { content:"";position:absolute;z-index:-1;inset:-20px -34px;pointer-events:none;background:radial-gradient(ellipse at center,rgba(245,247,245,.94) 0%,rgba(245,247,245,.76) 48%,rgba(245,247,245,0) 84%);filter:blur(11px); }
@media(max-width:1050px) {
  .location .arrival-grid { grid-template-columns:minmax(0,1fr)!important;gap:18px!important; }
  .location .map-panel { height:clamp(290px,58vw,420px)!important;max-height:420px!important; }
}
@media(max-width:600px) {
  .location .map-panel { height:clamp(270px,68vw,360px)!important;max-height:360px!important;border-radius:10px!important; }
  .location .map-address { top:9px!important;bottom:auto!important;left:9px!important;padding:12px!important; }
  .location .map-open-link { min-height:42px!important; }
}
@media(max-width:760px) {
  .engine-sketch { width:min(100%,360px);height:clamp(104px,34vw,148px);margin:5px auto 12px; }
  .hyundai-badge img { width:62px!important;height:42px!important; }
}

.diagnostic-tile .diagnostic-slide-stage { position:relative;width:100%;aspect-ratio:1.22;overflow:hidden;border-radius:7px; }
.diagnostic-tile img.diagnostic-slide { position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;border-radius:7px;opacity:0;transition:opacity .55s ease!important; }
.diagnostic-tile img.diagnostic-slide.is-active { opacity:1; }
@media(prefers-reduced-motion:reduce) { .diagnostic-tile img.diagnostic-slide { transition:none!important; } }

/* Final map overrides must follow the earlier responsive iframe rules. */
.location .map-directions-link { display:none!important; }
.location .map-panel { background:#e8eeeb url('assets/map-streets.svg') center/cover no-repeat!important; }
.location .map-panel iframe { display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important; }
.location .map-focus { display:none!important; }
.location .map-address {
  position:absolute!important;top:14px!important;right:14px!important;bottom:auto!important;left:14px!important;
  width:auto!important;max-width:none!important;pointer-events:auto!important;
}
.location .map-address .map-open-link { width:100%!important;justify-content:flex-start!important; }
@media(max-width:600px) {
  .location .map-address { top:12px!important;right:12px!important;bottom:auto!important;left:12px!important;padding:15px!important; }
}

/* Final overrides after the original theme layers. */
.service-title-row { display:flex!important;min-height:54px!important;align-items:center!important;gap:15px!important;margin:9px 0 12px!important; }
.service-title-row h3 { flex:1 1 0!important;min-width:0!important;margin:0!important;padding-left:2px!important;text-align:left!important;line-height:1.18!important; }
.service-icon { display:grid!important;flex:0 0 44px!important;width:44px!important;height:44px!important;place-items:center!important;border:1px solid rgba(8,139,157,.3)!important;border-radius:14px!important;background:linear-gradient(145deg,#d9f7f8 0%,#f0fbfa 58%,#d9eeee 100%)!important;color:#087f91!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 14px rgba(8,100,115,.13)!important; }
.service-icon svg { display:block!important;width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important; }
.service-card-copy>a[data-service] { display:inline-flex!important;align-items:center!important;gap:0!important; }
.service-card-copy>a[data-service]>b { display:none!important; }
.service-card-copy>a[data-service]::after { content:none!important; }
.people-text>a.text-link>span { display:none!important; }
.instagram-stories>div>a { font-size:0!important; }
.instagram-stories>div>a::before { content:"Explorar @motorloz";font-size:10px; }
.instagram-stories>div>a::after { content:"";display:inline-block;width:5px;height:5px;margin:0 0 1px 8px;border-radius:50%;background:currentColor; }
.location .map-panel { background:#e8eeeb!important; }
.location .map-panel iframe { position:absolute!important;inset:0!important;display:block!important;visibility:visible!important;width:100%!important;height:100%!important;opacity:1!important;pointer-events:auto!important; }
.location .map-address { display:none!important; }
#review-track .google-review-card:nth-child(5n + 1) .review-avatar { background:linear-gradient(145deg,#66518d,#8a72b0)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 2) .review-avatar { background:linear-gradient(145deg,#397764,#62a18a)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 3) .review-avatar { background:linear-gradient(145deg,#a16b31,#c28c4e)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n + 4) .review-avatar { background:linear-gradient(145deg,#3f6e98,#6a92b6)!important;color:#fff!important; }
#review-track .google-review-card:nth-child(5n) .review-avatar { background:linear-gradient(145deg,#9a536a,#bd7b8f)!important;color:#fff!important; }
#review-track .review-avatar { border:2px solid rgba(255,255,255,.88)!important;box-shadow:0 2px 8px rgba(24,47,53,.16)!important;font-family:var(--body),"Segoe UI",sans-serif!important;font-weight:750!important; }
@media(max-width:600px) {
  .service-title-row { min-height:52px!important;gap:13px!important; }
  .service-icon { flex-basis:42px!important;width:42px!important;height:42px!important;border-radius:13px!important; }
  .service-icon svg { width:24px!important;height:24px!important; }
}

/* Final mobile cleanup: one-line service titles with clear, premium automotive symbols. */
.service-title-row { display:flex!important;width:100%!important;min-height:58px!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;margin:8px 0 11px!important; }
.service-icon { box-sizing:border-box!important;display:grid!important;flex:0 0 56px!important;width:56px!important;height:56px!important;place-items:center!important;border:1px solid rgba(80,202,211,.62)!important;border-radius:17px!important;background:radial-gradient(circle at 28% 18%,#28555b 0%,#16353a 54%,#10272c 100%)!important;color:#a9f3f4!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.23),0 8px 20px rgba(9,75,84,.19)!important; }
.service-icon svg { display:block!important;width:37px!important;height:37px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.05!important;stroke-linecap:round!important;stroke-linejoin:round!important; }
.service-title-row h3 { flex:1 1 auto!important;min-width:0!important;margin:0!important;padding:0 0 0 2px!important;font-size:clamp(15px,4.35vw,18px)!important;font-weight:750!important;letter-spacing:-.035em!important;line-height:1.1!important;text-align:left!important;white-space:nowrap!important; }
.service-card-copy { padding:18px 17px 17px!important; }
.service-card-copy>a[data-service]>b { display:none!important; }
.service-card-copy>a[data-service]::after { content:none!important; }
@media(max-width:600px) {
  .service-title-row { min-height:56px!important;gap:11px!important; }
  .service-icon { flex-basis:54px!important;width:54px!important;height:54px!important;border-radius:16px!important; }
  .service-icon svg { width:36px!important;height:36px!important; }
  .service-title-row h3 { font-size:clamp(15px,4.35vw,17px)!important; }
}

/* Give the Subaru engine image more room without changing the following copy layout. */
.subaru-section figure.engine-sketch { width:min(100%,500px)!important;height:clamp(190px,23vw,250px)!important;margin:10px auto 6px!important; }
.subaru-section .engine-sketch img { width:100%!important;height:100%!important;object-fit:contain!important; }
@media(max-width:760px) {
  .subaru-section figure.engine-sketch { width:min(100%,470px)!important;height:clamp(190px,53vw,225px)!important;margin:8px auto 6px!important; }
}

/* Both clip titles now have matching single-line length. */
.films-grid .film-caption strong { font-size:clamp(15px,4.1vw,18px)!important;line-height:1.2!important;white-space:nowrap!important;letter-spacing:-.025em!important; }

/* Larger, more legible symbols for the six care steps. */
.why-card { grid-template-columns:48px 46px minmax(0,1fr) 18px!important;column-gap:10px!important; }
.why-card>svg { box-sizing:border-box!important;display:block!important;width:42px!important;height:42px!important;padding:8px!important;border:1px solid rgba(79,201,211,.36)!important;border-radius:14px!important;background:linear-gradient(145deg,#17373b,#102629)!important;color:#7edee3!important;stroke:currentColor!important;stroke-width:1.75!important;filter:drop-shadow(0 5px 9px rgba(0,0,0,.16)); }
@media(max-width:600px) {
  .why-card { grid-template-columns:44px 44px minmax(0,1fr) 16px!important;column-gap:8px!important; }
  .why-card>svg { width:40px!important;height:40px!important;padding:7px!important;border-radius:13px!important; }
}

/* Keep the footer compact until someone opens its single policy button. */
.footer-policies { display:block!important;width:min(100%,940px)!important;margin:0 auto 18px!important;padding:0!important;border:0!important; }
.footer-policies>summary { display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:max-content!important;max-width:100%!important;min-height:40px!important;margin:0 auto!important;padding:8px 15px!important;border:1px solid rgba(109,194,199,.3)!important;border-radius:999px!important;background:rgba(20,45,48,.72)!important;color:#c8dddd!important;cursor:pointer!important;font-size:11px!important;font-weight:650!important;letter-spacing:.02em!important; }
.footer-policies>summary::-webkit-details-marker { display:none!important; }
.footer-policies>summary::after { content:"+";color:#64d2d8!important;font-size:17px!important;line-height:1!important; }
.footer-policies[open]>summary::after { content:"−"; }
.footer-policies-content { display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important;margin:14px auto 0!important;padding:16px!important;border:1px solid rgba(109,194,199,.18)!important;border-radius:14px!important;background:rgba(8,20,23,.54)!important;text-align:left!important; }
.footer-policies-content article { min-width:0!important; }
.footer-policies-content h2 { margin:0 0 7px!important;color:#d9eeee!important;font-size:12px!important; }
.footer-policies-content p { margin:0!important;color:#9eb3b5!important;font-size:10px!important;line-height:1.55!important; }
.footer-policies-content a { color:#72d1d9!important;text-underline-offset:2px!important; }
@media(max-width:760px) {
  .footer-policies>summary { min-height:38px!important;padding:7px 14px!important; }
  .footer-policies-content { grid-template-columns:minmax(0,1fr)!important;gap:14px!important;padding:14px!important;text-align:center!important; }
  .footer-policies-content p { max-width:42ch!important;margin-inline:auto!important; }
}

@media (max-width: 600px) {
  .service-title-row h3 { font-size: clamp(13px, 4vw, 16px) !important; }
}
