:root { --ink:#071016; --ink-soft:#15232b; --paper:#f5f6f2; --white:#fff; --mist:#e7ece9; --line:rgba(7,16,22,.12); --muted:#66737a; --shadow:0 20px 55px rgba(7,16,22,.12); --ease:cubic-bezier(.23,1,.32,1); --header-height:112px; --journey-height:106px; --scroll-offset:234px; }
* { box-sizing:border-box; } html { overflow-x:hidden; scroll-behavior:smooth; scroll-padding-top:var(--scroll-offset); } body { margin:0; overflow-x:clip; background:var(--paper); color:var(--ink); font-family:"Kia Signature","Noto Sans",Arial,sans-serif; -webkit-font-smoothing:antialiased; } main { padding-top:var(--header-height); } @font-face { font-family:"Kia Signature"; src:url("assets/KiaSignatureRegular.woff2") format("woff2"); font-weight:400; font-display:swap; } a { color:inherit; text-decoration:none; } button { font:inherit; cursor:pointer; } .container { width:min(1180px,calc(100% - 96px)); margin:0 auto; }
.site-header { position:fixed; z-index:1004; top:0; right:0; left:0; height:var(--header-height); background:#000; color:#fff; box-shadow:0 1px 0 rgba(255,255,255,.22); } .utility-bar { display:flex; align-items:center; gap:16px; height:32px; padding:0 32px; overflow:hidden; white-space:nowrap; background:#06141e; color:rgba(255,255,255,.72); font-size:9px; } .utility-bar a { color:rgba(255,255,255,.72); transition:color .2s ease; } .utility-bar a:hover,.utility-bar a:focus-visible { color:#fff; }.utility-spacer { flex:1; }
.main-nav { position:relative; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; height:80px; padding:0 44px; border-bottom:1px solid rgba(255,255,255,.28); background:#000; }.wordmark { display:block; width:101px; height:25px; background:url("assets/images/kia-logo-midnight.webp") center/contain no-repeat; font-size:0; }.main-nav>.wordmark { grid-column:2; }.wordmark-light { background-image:url("assets/images/kia-logo-white.webp"); }.desktop-nav { display:flex; align-items:center; gap:clamp(20px,3vw,48px); font-size:14px; font-weight:700; }.main-nav>.desktop-nav { grid-column:1; grid-row:1; justify-self:start; }.nav-actions { grid-column:3; grid-row:1; display:flex; align-items:center; justify-self:end; gap:31px; }.desktop-nav-right { gap:clamp(20px,3vw,42px); }.desktop-nav a,.nav-actions a { transition:color .2s ease; }.desktop-nav a:hover,.desktop-nav a:focus-visible,.nav-actions a:hover,.nav-actions a:focus-visible { color:#aeb6ba; }.menu-toggle { display:none; border:0; background:transparent; padding:10px 0 10px 10px; }.menu-toggle span { display:block; width:22px; height:1px; margin:4px 0; background:#fff; }.mobile-nav { display:none; }
.hero { position:relative; min-height:620px; overflow:hidden; color:#fff; background:#243237; }.hero-art,.hero-overlay,.support-image,.support-overlay { position:absolute; inset:0; }.hero-art { background:#243237 url("assets/images/kia-ev9-electrico-horizontal-v2.webp") center 53%/cover no-repeat; }.hero-poster { position:absolute; inset:0; z-index:0; display:block; opacity:1; transition:opacity .32s ease; }.hero-poster img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 53%; }.motion-video { position:absolute; inset:0; z-index:1; display:block; width:100%; height:100%; pointer-events:none; object-fit:cover; object-position:center 53%; opacity:1; transition:opacity .32s ease; }.hero:not(.is-video-ready) .motion-video { opacity:0; }.hero.is-video-ready .hero-poster { opacity:0; pointer-events:none; }.motion-video img { display:block; width:100%; height:100%; object-fit:cover; }.hero-overlay { background:linear-gradient(90deg,rgba(5,12,15,.72),rgba(5,12,15,.2) 52%,transparent); }.hero-content { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:flex-start; min-height:620px; padding-top:138px; }.hero-copy { max-width:570px; }.hero h1,.section-heading h2,.range-intro h2,.charging-copy h2,.support-content h2,.safety-head h2,.range-card h3,.adas-card h3 { margin-top:0; font-family:"Kia Signature",Arial,sans-serif; font-weight:700; letter-spacing:-.035em; }.hero h1 { max-width:690px; margin-bottom:26px; font-size:clamp(56px,7.5vw,106px); line-height:.9; }.hero h1 em,.section-heading h2 em,.range-intro h2 em,.charging-copy h2 em,.support-content h2 em,.safety-head h2 em,.range-card h3 em { color:inherit; font-style:normal; }.hero-lede { max-width:430px; margin:0 0 36px; color:rgba(255,255,255,.78); font-size:15px; line-height:1.7; }.button-row { display:flex; align-items:center; flex-wrap:wrap; gap:27px; }.button { display:inline-flex; align-items:center; justify-content:space-between; gap:25px; min-height:48px; padding:0 17px 0 19px; border:1px solid transparent; border-radius:3px; font-size:11px; font-weight:800; transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease); }.button:hover { transform:translateY(-2px); }.button:active { transform:scale(.97); }.button-light { background:#fff; color:var(--ink); }.button-light:hover { background:#e8ecea; }.button-dark { background:var(--ink); color:#fff; }.button-dark:hover { background:#3b525b; }.button span { font-size:17px; font-weight:400; }
.journey-nav { position:sticky; top:var(--header-height); z-index:1002; background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); backdrop-filter:blur(15px); }.journey-inner { display:grid; grid-template-columns:repeat(5,1fr); }.journey-item { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; min-height:var(--journey-height); padding:14px 8px 12px; border-right:1px solid var(--line); color:#7b8588; font-size:12px; font-weight:700; text-align:center; transition:min-height .28s var(--ease),padding .28s var(--ease),gap .28s var(--ease),font-size .28s var(--ease),color .2s ease; }.journey-item:first-child { border-left:1px solid var(--line); }.journey-item:hover,.journey-item.is-active { color:var(--ink); }.journey-item::after { position:absolute; right:18%; bottom:-1px; left:18%; height:3px; background:var(--ink); content:""; opacity:0; transform:scaleX(.2); transition:opacity .2s ease,transform .25s var(--ease); }.journey-item.is-active::after,.journey-item:hover::after { opacity:1; transform:scaleX(1); }.journey-icon { display:grid; place-items:center; width:34px; height:34px; transition:width .28s var(--ease),height .28s var(--ease); }.journey-icon svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; transition:width .28s var(--ease),height .28s var(--ease); }.journey-nav.is-compact .journey-item { min-height:62px; padding:6px 8px 5px; gap:2px; font-size:10px; }.journey-nav.is-compact .journey-icon { width:24px; height:24px; }.journey-nav.is-compact .journey-icon svg { width:22px; height:22px; }.journey-nav.no-transition .journey-item,.journey-nav.no-transition .journey-icon,.journey-nav.no-transition .journey-icon svg { transition:none; }
.section { padding:136px 0; }.portfolio-section { padding-top:84px; } #portfolio,#charging,#range,#support,#safety,#ev-tips { scroll-margin-top:var(--scroll-offset); }.section-heading,.range-intro,.safety-head { display:grid; grid-template-columns:1.2fr .72fr; align-items:end; column-gap:80px; margin-bottom:48px; }.section-heading h2,.range-intro h2,.safety-head h2 { font-size:clamp(43px,5vw,72px); line-height:.96; }.section-heading>p,.range-intro>p,.safety-head>p { max-width:330px; margin:0 0 4px; color:var(--muted); font-size:14px; line-height:1.75; }
.vehicle-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }.vehicle-card { display:flex; flex-direction:column; overflow:hidden; background:#fff; box-shadow:0 0 0 1px rgba(7,16,22,.07); transition:transform .35s var(--ease),box-shadow .35s var(--ease); }.vehicle-card:hover { box-shadow:var(--shadow); transform:translateY(-6px); }.vehicle-image { flex:0 0 220px; min-height:220px; background-position:center; background-size:90% auto; background-repeat:no-repeat; background-color:#eef0ed; transition:transform .6s var(--ease),filter .4s ease; }.vehicle-card:hover .vehicle-image { filter:saturate(1.05); transform:scale(1.04); }.image-ev2 { background-image:url("assets/images/ev2.webp"); }.image-ev3 { background-image:url("assets/images/ev3.webp"); }.image-ev4 { background-image:url("assets/images/ev4.webp"); }.image-ev5 { background-image:url("assets/images/ev5.webp"); }.image-ev6 { background-image:url("assets/images/ev6.webp"); }.image-ev9 { background-image:url("assets/images/ev9.webp"); }.image-pv5-passenger { background-image:url("assets/images/pv5-pasajeros.webp"); }.image-pv5 { background-image:url("assets/images/pv5-cargo.webp"); }.vehicle-meta { display:flex; flex:1; flex-direction:column; gap:6px; min-height:125px; padding:18px 19px 19px; }.vehicle-meta>span { font:600 24px/1 "Kia Signature",sans-serif; letter-spacing:-.06em; }.vehicle-meta b { margin-top:auto; font-size:10px; font-weight:800; }.section-cta { display:flex; justify-content:center; margin-top:44px; }.section-cta .button { width:min(100%,370px); min-height:76px; padding:0 30px 0 34px; border-color:#071016; border-radius:4px; background:#071016; color:#fff; box-shadow:0 14px 30px rgba(7,16,22,.2); font-size:17px; letter-spacing:-.01em; }.section-cta .button::after { margin-left:auto; content:"↗"; font-size:23px; font-weight:400; transition:transform .25s var(--ease); }.section-cta .button:hover { background:#14242d; box-shadow:0 19px 38px rgba(7,16,22,.28); transform:translateY(-4px); }.section-cta .button:hover::after { transform:translate(3px,-3px); }.section-cta .button:focus-visible { outline:3px solid rgba(7,16,22,.28); outline-offset:4px; }
.charging-section { position:relative; overflow:hidden; padding:120px 0; color:#fff; background:#070f16; }.charging-section::before { position:absolute; top:-200px; right:-180px; width:600px; height:600px; border:1px solid rgba(255,255,255,.14); border-radius:50%; content:""; }.charging-layout { position:relative; z-index:1; display:grid; grid-template-columns:1.06fr .94fr; align-items:center; gap:clamp(54px,8vw,115px); }.charging-visual { position:relative; display:grid; place-items:center; min-height:500px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:#07141e; }.charging-map-image { display:block; width:100%; height:auto; max-height:500px; object-fit:contain; }.charging-label { position:absolute; top:26px; right:26px; display:flex; align-items:center; gap:8px; padding:9px 12px; background:rgba(5,15,22,.7); color:rgba(255,255,255,.78); font-size:11px; }.status-dot { width:10px; height:10px; border:3px solid rgba(255,255,255,.82); border-radius:50%; box-shadow:0 0 0 3px rgba(255,255,255,.12); }.charging-copy { max-width:500px; }.charging-copy h2 { font-size:clamp(52px,6vw,82px); line-height:.88; }.charging-copy>p { max-width:450px; margin:30px 0 35px; color:rgba(255,255,255,.7); font-size:16px; line-height:1.7; }.charge-stat { display:flex; flex-direction:column; gap:6px; margin-bottom:38px; padding-left:18px; border-left:2px solid #fff; }.charge-stat strong { font-size:17px; }.charge-stat span { color:rgba(255,255,255,.58); font-size:12px; line-height:1.5; }
.range-section { background:#eef0ed; }.range-intro { align-items:end; }.range-cards { display:grid; grid-template-columns:1.06fr .97fr .97fr; gap:18px; }.range-card { display:flex; flex-direction:column; min-height:430px; overflow:hidden; background:#fff; }.range-card-feature { justify-content:space-between; padding:28px 30px 25px; color:#fff; background:#15242c; }.range-card-top { display:flex; justify-content:space-between; color:rgba(255,255,255,.64); font-size:10px; letter-spacing:.13em; }.range-card-feature .card-arrow { font-size:17px; }.range-graphic { margin-top:20px; }.range-number { font-size:clamp(72px,8vw,120px); letter-spacing:-.08em; line-height:.8; }.range-number span { font-size:23px; letter-spacing:-.02em; }.range-line { width:100%; height:1px; margin:24px 0 14px; background:rgba(255,255,255,.3); }.range-line i { display:block; width:58%; height:2px; background:#fff; }.range-graphic p { margin:0; color:rgba(255,255,255,.67); font-size:12px; line-height:1.5; }.range-card-bottom { display:flex; flex-direction:column; gap:7px; padding-top:17px; border-top:1px solid rgba(255,255,255,.24); }.range-card-bottom strong { font-size:12px; }.range-card-bottom span { color:rgba(255,255,255,.55); font-size:10px; line-height:1.45; }.range-card-image { flex:0 0 210px; min-height:210px; background-position:center; background-size:cover; }.range-e-gmp { background-image:url("assets/images/range-egmp.webp"); }.range-app { background-image:url("assets/images/range-app.webp"); }.range-card-copy { display:flex; flex:1; flex-direction:column; padding:23px 24px 24px; }.card-index { display:block; margin-bottom:21px; color:var(--muted); font-size:10px; letter-spacing:.13em; }.range-card-copy h3 { font-size:31px; line-height:.94; }.range-card-copy p { margin:15px 0 20px; color:var(--muted); font-size:12px; line-height:1.6; }.range-card-copy a { margin-top:auto; font-size:10px; font-weight:800; }.range-card-copy a b { font-size:15px; font-weight:400; }
.support-section { position:relative; min-height:580px; overflow:hidden; color:#fff; }.support-image { background:#1b282e url("assets/images/maintenance-kia.webp") center/cover; }.support-image video { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; }.support-overlay { background:linear-gradient(90deg,rgba(2,8,11,.82),rgba(2,8,11,.35) 58%,rgba(2,8,11,.1)); }.support-content { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; min-height:580px; }.support-content h2 { max-width:620px; font-size:clamp(52px,6vw,84px); line-height:.9; }.support-content>p { max-width:440px; margin:28px 0 34px; color:rgba(255,255,255,.78); font-size:15px; line-height:1.65; }.support-badge { position:absolute; right:8%; bottom:45px; display:flex; flex-direction:column; align-items:flex-end; color:#fff; }.support-badge span,.support-badge small { font-size:10px; }.support-badge strong { font-size:52px; line-height:1; }
.safety-section { background:#fff; }.safety-head { align-items:start; }.safety-head h2 { max-width:650px; }.adas-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }.adas-card { position:relative; display:flex; flex-direction:column; min-height:360px; overflow:hidden; background:#f1f3f1; transition:transform .35s var(--ease),box-shadow .35s var(--ease); }.adas-card:hover { box-shadow:var(--shadow); transform:translateY(-5px); }.adas-main { grid-column:span 2; display:grid; grid-template-columns:1.08fr .92fr; color:#fff; background:#07131c; }.adas-image { min-height:100%; background-position:center; background-size:cover; }.adas-front { background-image:url("assets/images/adas-front.webp"); }.adas-copy { display:flex; flex-direction:column; padding:25px 23px 22px; }.adas-tag { margin-bottom:17px; color:var(--muted); font-size:10px; letter-spacing:.13em; }.adas-main .adas-tag { color:rgba(255,255,255,.55); }.adas-icon { display:grid; place-items:center; width:55px; height:55px; margin-bottom:20px; border:1px solid currentColor; border-radius:50%; color:var(--ink); }.adas-icon-feature { color:#fff; }.adas-icon img { width:33px; height:33px; }.adas-card h3 { font-size:26px; line-height:.97; }.adas-card p { margin:14px 0 18px; color:var(--muted); font-size:12px; line-height:1.55; }.adas-main p { color:rgba(255,255,255,.64); }.watch-link { display:flex; align-items:center; gap:8px; margin-top:auto; font-size:10px; font-weight:800; }.play-icon { display:grid; place-items:center; width:24px; height:24px; border:1px solid currentColor; border-radius:50%; font-size:8px; }.legal-note { max-width:830px; margin:37px 0 0; color:var(--muted); font-size:10px; line-height:1.6; }.legal-note a { color:var(--ink); font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.site-footer { color:rgba(255,255,255,.76); background:#000; }.footer-content { display:grid; grid-template-columns:190px minmax(0,1fr); gap:52px; padding-top:58px; padding-bottom:48px; }.footer-brand p { margin:16px 0 25px; color:rgba(255,255,255,.7); font-size:10px; }.footer-ec { display:block; margin-top:15px; font-size:11px; }.social-row { display:flex; gap:8px; }.social-row a { display:grid; place-items:center; width:25px; height:25px; border:1px solid rgba(255,255,255,.55); border-radius:50%; font-size:11px; }.footer-columns { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:34px; }.footer-column { display:flex; flex-direction:column; align-items:flex-start; gap:8px; font-size:10px; line-height:1.35; }.footer-label { margin-bottom:6px; color:#fff; font-size:11px; font-weight:800; }.footer-column a:hover,.footer-column a:focus-visible { color:#fff; }.footer-copy-area { display:flex; gap:28px; padding:17px 0 22px; border-top:1px solid rgba(255,255,255,.25); color:rgba(255,255,255,.55); font-size:9px; }
.reveal { opacity:0; transform:translateY(22px); transition:opacity .75s var(--ease),transform .75s var(--ease); }.reveal.is-visible { opacity:1; transform:none; }.reveal-delay-1 { transition-delay:.08s; }.reveal-delay-2 { transition-delay:.16s; }
@media (max-width:900px) { :root { --header-height:98px; --journey-height:92px; --scroll-offset:190px; }.container { width:min(100% - 44px,680px); }.utility-bar { padding:0 18px; gap:10px; }.utility-bar a:nth-last-child(-n+3) { display:none; }.main-nav { height:66px; padding:0 22px; }.desktop-nav { display:none; }.nav-actions a { display:none; }.menu-toggle { display:block; }.mobile-nav { position:absolute; top:var(--header-height); right:0; left:0; flex-direction:column; padding:8px 22px 17px; border-top:1px solid rgba(255,255,255,.2); background:#07141f; box-shadow:0 12px 24px rgba(7,16,22,.2); }.menu-open .mobile-nav { display:flex; }.mobile-nav a { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.15); color:#fff; font-size:14px; font-weight:700; }.hero,.hero-content { min-height:570px; }.hero-content { padding-top:124px; }.hero-art { background-position:64% center; }.motion-video { object-position:64% center; }.journey-item { min-height:var(--journey-height); gap:7px; font-size:10px; }.journey-icon { width:28px; height:28px; }.journey-icon svg { width:27px; height:27px; }.section { padding:90px 0; }.section-heading,.range-intro,.safety-head { grid-template-columns:1fr; gap:25px; margin-bottom:38px; }.section-heading>p,.range-intro>p,.safety-head>p { max-width:480px; }.portfolio-section { padding-top:76px; }.vehicle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.vehicle-image { flex-basis:205px; min-height:205px; }.charging-layout { grid-template-columns:1fr; gap:55px; }.charging-visual { min-height:410px; }.charging-section { padding:90px 0; }.range-cards { grid-template-columns:repeat(2,1fr); }.range-card-feature { grid-column:span 2; min-height:360px; }.adas-grid { grid-template-columns:repeat(2,1fr); }.adas-main { grid-column:span 2; }.support-section,.support-content { min-height:580px; }.support-badge { right:22px; bottom:30px; }.footer-content { grid-template-columns:1fr; gap:55px; min-height:auto; }.footer-columns { grid-template-columns:repeat(3,1fr); gap:38px 24px; }.footer-copy-area { flex-wrap:wrap; }.site-header { box-shadow:0 2px 14px rgba(7,16,22,.09); } }
@media (max-width:560px) { :root { --journey-height:76px; --scroll-offset:190px; }.container { width:calc(100% - 34px); }.utility-bar { padding:0 12px; }.main-nav { padding:0 17px; }.footer-content { gap:45px; }.footer-columns { grid-template-columns:repeat(2,1fr); gap:32px 20px; }.footer-brand { grid-column:1/-1; }.hero { min-height:530px; }.hero-content { min-height:530px; padding-top:108px; }.hero-art { background-position:67% center; }.motion-video { object-position:67% center; }.hero-overlay { background:linear-gradient(90deg,rgba(5,12,15,.76),rgba(5,12,15,.2)); }.hero h1 { font-size:clamp(50px,16vw,76px); }.hero-lede { max-width:315px; font-size:13px; }.button-row { gap:18px; }.journey-inner { width:100%; overflow:visible; grid-template-columns:repeat(5,minmax(0,1fr)); }.journey-item { min-height:var(--journey-height); padding-right:3px; padding-left:3px; font-size:8px; }.journey-nav.is-compact .journey-item { min-height:54px; padding:4px 2px 3px; font-size:8px; }.journey-nav.is-compact .journey-icon { width:21px; height:21px; }.journey-nav.is-compact .journey-icon svg { width:19px; height:19px; }.section { padding:75px 0; }.portfolio-section { padding-top:60px; }.section-heading h2,.range-intro h2,.safety-head h2 { font-size:clamp(42px,13vw,61px); }.vehicle-grid { grid-template-columns:1fr; gap:14px; }.vehicle-image { flex-basis:220px; min-height:220px; }.vehicle-meta { min-height:118px; padding:15px; }.charging-section { padding:75px 0; }.charging-visual { min-height:320px; }.charging-copy h2 { font-size:47px; }.range-cards { grid-template-columns:1fr; }.range-card-feature { grid-column:auto; min-height:400px; }.range-card { min-height:420px; }.range-card-image { min-height:180px; }.support-section,.support-content { min-height:600px; }.support-image { background-position:66% center; }.support-content>p { max-width:295px; }.support-badge { display:none; }.adas-grid { grid-template-columns:1fr; }.adas-main { grid-column:auto; display:flex; flex-direction:column; }.adas-image { min-height:215px; }.adas-card { min-height:325px; }.footer-copy-area { font-size:8px; gap:10px 18px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.reveal { opacity:1; transform:none; }.motion-video { display:none; }.hero-art,.support-image { background-size:cover; }.vehicle-card,.button,.adas-card,.vehicle-image,.tip-card { transition:none; } }

.tips-section { background:#eef0ed; }
.tips-head { display:grid; grid-template-columns:1.2fr .72fr; align-items:end; column-gap:80px; margin-bottom:48px; }
.section-kicker { display:block; margin-bottom:19px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.14em; }
.tips-head h2 { max-width:650px; margin:0; font-family:"Kia Signature",Arial,sans-serif; font-size:clamp(43px,5vw,72px); font-weight:700; letter-spacing:-.035em; line-height:.96; }
.tips-head h2 em { font-style:normal; }
.tips-head>p { max-width:330px; margin:0 0 4px; color:var(--muted); font-size:14px; line-height:1.75; }
.tips-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.tip-card { position:relative; display:flex; flex-direction:column; min-height:282px; padding:21px 19px 18px; background:#fff; border:0; border-top:1px solid rgba(7,16,22,.22); transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s ease,background .35s ease; }
.tip-card::after { position:absolute; right:18px; bottom:18px; width:20px; height:1px; background:var(--ink); content:""; opacity:.16; transform:scaleX(.4); transform-origin:right; transition:opacity .3s ease,transform .3s var(--ease); }
.tip-card:hover,.tip-card:focus-visible { border-color:var(--ink); box-shadow:var(--shadow); transform:translateY(-5px); }
.tip-card:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.tip-card:hover::after { opacity:.8; transform:scaleX(1); }
.tip-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.12em; }
.tip-index { color:var(--ink); }
.tip-date { white-space:nowrap; }
.tip-icon { position:relative; display:grid; place-items:center; width:64px; height:64px; margin-bottom:20px; border:0; border-radius:4px; background:linear-gradient(135deg,#e8eeeb 0%,#e3eae6 100%); color:var(--ink); }
.tip-icon::before,.tip-icon::after { position:absolute; width:13px; height:13px; content:""; opacity:.7; transition:opacity .25s ease,transform .25s var(--ease); }
.tip-icon::before { top:7px; left:7px; border-top:1px solid var(--ink); border-left:1px solid var(--ink); }
.tip-icon::after { right:7px; bottom:7px; border-right:1px solid var(--ink); border-bottom:1px solid var(--ink); }
.tip-card:hover .tip-icon::before { opacity:1; transform:translate(-2px,-2px); }
.tip-card:hover .tip-icon::after { opacity:1; transform:translate(2px,2px); }
.tip-icon img { position:relative; z-index:1; width:34px; height:34px; transition:transform .35s var(--ease); }
.tip-card:hover .tip-icon img { transform:scale(1.06); }
.tip-card h3 { max-width:220px; margin:0; font-family:"Kia Signature",Arial,sans-serif; font-size:24px; font-weight:700; letter-spacing:-.035em; line-height:.98; }
.tip-card p { max-width:220px; margin:12px 0 18px; color:var(--muted); font-size:11px; line-height:1.5; }
.tip-link { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); font-size:10px; font-weight:800; }
.tip-link b { font-size:15px; font-weight:400; }
@media (max-width:900px) { .tips-head { grid-template-columns:1fr; gap:25px; margin-bottom:38px; }.tips-head>p { max-width:480px; }.tips-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .tips-grid { grid-template-columns:1fr; gap:14px; }.tip-card { min-height:240px; }.tip-card h3,.tip-card p { max-width:none; } }

/* Charging map: full-bleed composition with a more legible scroll scrub. */
.charging-layout { grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr); gap:clamp(42px,6vw,92px); }
.charging-layout { align-items:start; }
.charging-visual { min-height:620px; overflow:visible; border:0; border-radius:0; background:transparent; }
.charging-map-card.reveal { opacity:1; transform:none; }
.charging-map-image { width:125%; max-width:none; max-height:620px; filter:brightness(calc(.94 + var(--map-progress, 0) * .14)) contrast(calc(1 + var(--map-progress, 0) * .12)); transform:translate3d(calc((var(--map-progress, 0) - .5) * 22px),calc((.5 - var(--map-progress, 0)) * 12px),0) scale(calc(1.03 + var(--map-progress, 0) * .08)); transition:transform .2s ease-out,filter .2s ease-out; }
.charging-label { right:2%; }
.charge-stat { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 16px; margin-bottom:38px; padding:0; border-left:0; }
.charge-stat::before,.charge-stat::after { display:flex; flex-direction:column; justify-content:center; min-height:72px; padding:14px 15px; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.035); white-space:pre-line; }
.charge-stat::before { content:"+20\\A Electrolineras\\A a nivel nacional"; }
.charge-stat::after { content:"+200\\A Puntos de carga\\A a nivel nacional"; }
.charge-stat strong,.charge-stat span { grid-column:1 / -1; }
.charge-stat strong { margin-top:7px; }
.charge-stat span { margin-top:-1px; }
.charge-stat { position:relative; display:block; padding-top:88px; }
.charge-stat::before,.charge-stat::after { position:absolute; top:0; width:calc(50% - 7px); box-sizing:border-box; min-height:72px; }
.charge-stat::before { left:0; content:"+20\A Electrolineras\A a nivel nacional"; }
.charge-stat::after { right:0; content:"+200\A Puntos de carga\A a nivel nacional"; }
.charge-stat strong,.charge-stat span { display:block; }

@media (max-width:900px) {
  .charging-layout { grid-template-columns:1fr; gap:55px; }
  .charging-visual { min-height:520px; }
  .charging-map-image { width:115%; max-height:520px; }
}
@media (max-width:560px) {
  .charging-visual { min-height:360px; }
  .charging-map-image { width:116%; max-height:400px; }
  .charge-stat { gap:10px; padding-top:80px; }
  .charge-stat::before,.charge-stat::after { min-height:66px; padding:12px; font-size:10px; }
}

/* Autonomy carousel: an internal information layer for the EV journey. */
.range-carousel { position:relative; }
.range-carousel-bar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; }
.range-carousel-label { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.14em; }
.range-controls { display:flex; gap:7px; }
.range-control { display:grid; place-items:center; width:39px; height:39px; border:1px solid rgba(7,16,22,.2); border-radius:50%; color:var(--ink); background:transparent; font-size:19px; line-height:1; transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s var(--ease); }
.range-control:hover,.range-control:focus-visible { border-color:var(--ink); color:#fff; background:var(--ink); transform:translateY(-2px); }
.range-control:focus-visible,.range-dot:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.range-viewport { overflow:hidden; background:#15242c; color:#fff; outline:none; }
.range-viewport:focus-visible { box-shadow:0 0 0 3px rgba(7,16,22,.2); }
.range-track { display:flex; width:100%; transition:transform .7s var(--ease); will-change:transform; }
.range-slide { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); flex:0 0 100%; min-height:438px; opacity:.95; }
.range-slide-visual { position:relative; display:flex; flex-direction:column; justify-content:center; min-height:438px; overflow:hidden; padding:40px 46px; background:#102029; }
.range-slide-visual::before { position:absolute; top:-96px; right:-116px; width:420px; height:420px; border:1px solid rgba(255,255,255,.1); border-radius:50%; content:""; }
.range-visual-kicker { position:absolute; top:27px; left:30px; color:rgba(255,255,255,.55); font-size:9px; font-weight:800; letter-spacing:.15em; }
.range-slide-copy { display:flex; flex-direction:column; justify-content:center; padding:40px 46px 36px; color:var(--ink); background:#fff; }
.range-slide-copy .card-index { margin-bottom:22px; }
.range-slide-copy h3 { margin:0; font-family:"Kia Signature",Arial,sans-serif; font-size:clamp(34px,4vw,56px); font-weight:700; letter-spacing:-.045em; line-height:.92; }
.range-slide-copy h3 em { font-style:normal; }
.range-slide-copy p { max-width:430px; margin:20px 0 24px; color:var(--muted); font-size:13px; line-height:1.7; }
.range-fact-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:auto; padding-top:17px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; line-height:1.4; }
.range-fact-row span { padding-right:13px; border-right:1px solid var(--line); }
.range-fact-row span:last-child { padding-right:0; border-right:0; }
.range-fact-row b { color:var(--ink); }
.range-carousel-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 4px 0; }
.range-dots { display:flex; align-items:center; gap:8px; }
.range-dot { display:grid; place-items:center; width:28px; height:22px; padding:0; border:0; background:transparent; }
.range-dot span { display:block; width:7px; height:7px; border:1px solid var(--ink); border-radius:50%; opacity:.42; transition:width .3s var(--ease),border-radius .3s var(--ease),background .3s ease,opacity .3s ease; }
.range-dot.is-active span { width:25px; border-radius:4px; background:var(--ink); opacity:1; }
.range-counter { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.12em; }
.range-counter b { color:var(--ink); }
.range-legal { max-width:950px; margin:25px 0 0; color:var(--muted); font-size:10px; line-height:1.6; }

/* Two required autonomy pillars: WLTP and the E-GMP foundation. */
.range-details { display:none; }
.range-detail-card { display:flex; flex-direction:column; min-height:515px; overflow:hidden; background:#fff; }
.range-detail-media { position:relative; display:flex; flex-direction:column; justify-content:flex-end; min-height:245px; overflow:hidden; padding:25px 28px; color:#fff; background-position:center; background-size:cover; }
.range-detail-media::after { position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,16,22,.04),rgba(7,16,22,.76)); content:""; }
.range-detail-wltp { background-image:url("assets/images/hero-ev3.webp"); background-position:center 57%; }
.range-detail-egmp { background-image:url("assets/images/range-egmp.webp"); background-position:center; }
.range-detail-media-label { position:absolute; z-index:1; top:23px; left:28px; color:rgba(255,255,255,.77); font-size:9px; font-weight:800; letter-spacing:.14em; }
.range-detail-metric { position:relative; z-index:1; display:flex; align-items:baseline; gap:9px; }
.range-detail-metric strong { font-size:clamp(70px,7vw,104px); font-weight:400; letter-spacing:-.09em; line-height:.77; }
.range-detail-metric span { color:rgba(255,255,255,.78); font-size:20px; }
.range-detail-copy { display:flex; flex:1; flex-direction:column; padding:24px 28px 25px; }
.range-detail-copy .card-index { margin-bottom:18px; }
.range-detail-copy h3 { margin:0; font-family:"Kia Signature",Arial,sans-serif; font-size:clamp(30px,3.2vw,43px); font-weight:700; letter-spacing:-.045em; line-height:.92; }
.range-detail-copy h3 em { font-style:normal; }
.range-detail-copy p { max-width:520px; margin:16px 0 20px; color:var(--muted); font-size:12px; line-height:1.65; }
.range-detail-note { display:flex; gap:14px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); font-size:10px; line-height:1.45; }
.range-detail-note b { flex:0 0 auto; color:var(--ink); }
.range-detail-note span { color:var(--muted); }

/* Official Kia imagery for the two lead slides. */
.range-visual-photo { justify-content:flex-end; background-repeat:no-repeat; }
.range-visual-wltp { background-color:#17252b; background-position:center; background-size:cover; }
.range-visual-wltp.is-bg-ready { background-image:linear-gradient(180deg,rgba(7,16,22,.04) 15%,rgba(7,16,22,.78) 100%),url("assets/images/range-wltp-ev3.webp"); }
.range-photo-metric { position:relative; z-index:1; display:flex; align-items:baseline; gap:10px; margin-top:auto; }
.range-photo-metric strong { color:#fff; font-size:clamp(78px,9vw,132px); font-weight:400; letter-spacing:-.1em; line-height:.77; }
.range-photo-metric span { color:rgba(255,255,255,.8); font-size:20px; }
.range-photo-caption { position:relative; z-index:1; margin-top:13px; color:rgba(255,255,255,.65); font-size:10px; font-weight:800; letter-spacing:.14em; }
.range-visual-egmp { background-color:#16262e; background-position:center 56%; background-size:92% auto; }
.range-visual-egmp.is-bg-ready { background-image:url("assets/images/range-egmp-platform.webp"); }
.range-platform-lockup { position:relative; z-index:1; display:flex; align-items:baseline; justify-content:space-between; margin-top:auto; padding-top:14px; border-top:1px solid rgba(255,255,255,.36); }
.range-platform-lockup strong { color:#fff; font-size:clamp(44px,5vw,76px); font-weight:400; letter-spacing:-.08em; line-height:.8; }
.range-platform-lockup span { color:rgba(255,255,255,.72); font-size:9px; font-weight:800; letter-spacing:.12em; }

/* Small E-GMP schematic layered over the existing local Kia EV image. */
.platform-art { position:relative; z-index:1; width:min(100%,320px); height:142px; margin:0 auto; }
.platform-battery { position:absolute; top:38px; left:39px; width:242px; height:49px; border:1px solid rgba(255,255,255,.9); background:rgba(7,16,22,.7); transform:skewY(-5deg); }
.platform-battery::after { position:absolute; top:10px; right:16px; left:16px; height:1px; background:rgba(255,255,255,.52); box-shadow:0 10px rgba(255,255,255,.25),0 20px rgba(255,255,255,.25); content:""; }
.platform-wheel { position:absolute; z-index:2; display:block; width:34px; height:34px; border:5px solid #fff; border-radius:50%; background:#15242c; }
.platform-wheel-one { top:22px; left:29px; }.platform-wheel-two { top:93px; left:54px; }.platform-wheel-three { top:18px; right:31px; }.platform-wheel-four { top:89px; right:55px; }
.platform-art b { position:absolute; top:55px; left:0; right:0; color:#fff; font-size:12px; letter-spacing:.22em; text-align:center; }

/* Slide 01 — distance */
.range-distance { position:relative; z-index:1; display:flex; align-items:baseline; gap:11px; margin-top:24px; }
.range-distance strong { font-size:clamp(92px,10vw,150px); font-weight:400; letter-spacing:-.1em; line-height:.8; }
.range-distance span { color:rgba(255,255,255,.7); font-size:24px; }
.range-distance-line { position:relative; z-index:1; width:88%; height:1px; margin:30px 0 13px; background:rgba(255,255,255,.3); }
.range-distance-line i { display:block; width:69%; height:2px; background:#fff; }
.range-distance-points { position:relative; z-index:1; display:flex; justify-content:space-between; width:88%; color:rgba(255,255,255,.58); font-size:10px; }

/* Slide 02 — fast charge */
.range-visual-charge { background:#1d3038; }
.range-charge-label { position:relative; z-index:1; display:flex; flex-direction:column; gap:4px; margin-top:27px; }
.range-charge-label strong { font-size:clamp(48px,5vw,76px); font-weight:400; letter-spacing:-.07em; line-height:.9; }
.range-charge-label span { color:rgba(255,255,255,.6); font-size:12px; }
.range-charge-line { position:relative; z-index:1; width:90%; height:12px; margin:32px 0 24px; border:1px solid rgba(255,255,255,.42); border-radius:9px; }
.range-charge-line i { display:block; width:70%; height:100%; border-radius:9px; background:#fff; }
.range-charge-time { position:relative; z-index:1; display:flex; align-items:baseline; gap:9px; color:#fff; }
.range-charge-time b { font-size:55px; font-weight:400; letter-spacing:-.07em; }
.range-charge-time span { color:rgba(255,255,255,.62); font-size:11px; }

/* Slide 03 — regeneration */
.range-visual-regeneration { background:#15242c; }
.regen-road { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; gap:13px; width:100%; margin-top:28px; }
.regen-node { display:grid; place-items:center; width:72px; height:72px; border:1px solid rgba(255,255,255,.65); border-radius:50%; color:#fff; font-size:9px; font-weight:800; letter-spacing:.1em; text-align:center; }
.regen-node-brake { border-color:#fff; background:#fff; color:var(--ink); }
.regen-arrow { color:rgba(255,255,255,.65); font-size:25px; font-style:normal; }
.regen-arrow-back { position:absolute; right:21%; bottom:-52px; color:#fff; transform:rotate(-24deg); }
.regen-battery { display:grid; place-items:center; width:94px; height:59px; padding:7px; border:1px solid rgba(255,255,255,.65); color:rgba(255,255,255,.7); font-size:8px; letter-spacing:.1em; text-align:center; }
.regen-battery b { color:#fff; font-size:9px; }
.regen-caption { position:relative; z-index:1; margin-top:55px; color:rgba(255,255,255,.56); font-size:10px; text-align:center; }

/* Slide 04 — route planner */
.range-visual-route { background:#111f27; }
.route-map { position:relative; z-index:1; width:245px; height:190px; margin:20px auto 0; border:1px solid rgba(255,255,255,.16); background:linear-gradient(135deg,transparent 49%,rgba(255,255,255,.11) 50%,transparent 51%),linear-gradient(25deg,transparent 49%,rgba(255,255,255,.08) 50%,transparent 51%); background-size:51px 51px,37px 37px; }
.route-ring { position:absolute; border:1px solid rgba(255,255,255,.16); border-radius:50%; }
.route-ring-one { top:14px; left:34px; width:116px; height:116px; }
.route-ring-two { right:13px; bottom:16px; width:93px; height:93px; }
.route-route-line { position:absolute; top:50px; left:50px; width:155px; height:97px; border:1px solid #fff; border-top:0; border-left:0; border-radius:0 0 80px 0; transform:rotate(-14deg); }
.route-pin { position:absolute; z-index:2; display:grid; place-items:center; width:28px; height:28px; border:1px solid #fff; border-radius:50%; color:#fff; background:#111f27; font-size:11px; }
.route-pin small { position:absolute; top:31px; color:rgba(255,255,255,.55); font-size:7px; letter-spacing:.08em; white-space:nowrap; }
.route-pin-start { top:34px; left:31px; }
.route-pin-charge { right:70px; bottom:29px; color:var(--ink); background:#fff; }
.route-pin-charge small { color:#fff; }
.route-pin-end { right:14px; top:12px; }
.route-status { position:relative; z-index:1; display:flex; flex-direction:column; gap:5px; margin:25px auto 0; padding-left:12px; border-left:1px solid #fff; color:#fff; font-size:10px; }
.route-status span { color:rgba(255,255,255,.55); }

/* Slide 05 — battery care */
.range-visual-battery { background:#10252d; }
.battery-gauge { position:relative; z-index:1; width:min(100%,305px); margin:31px auto 0; }
.battery-gauge-head { display:flex; align-items:baseline; justify-content:space-between; color:rgba(255,255,255,.6); font-size:9px; letter-spacing:.12em; }
.battery-gauge-head b { color:#fff; font-size:43px; font-weight:400; letter-spacing:-.07em; }
.battery-gauge-track { height:15px; margin:18px 0 12px; border:1px solid rgba(255,255,255,.46); border-radius:10px; }
.battery-gauge-track i { display:block; width:80%; height:100%; border-radius:10px; background:#fff; }
.battery-gauge-scale { display:flex; justify-content:space-between; color:rgba(255,255,255,.48); font-size:9px; }
.battery-chip { position:relative; z-index:1; width:165px; margin:42px auto 0; padding:12px 13px; border:1px solid rgba(255,255,255,.28); color:rgba(255,255,255,.63); font-size:8px; letter-spacing:.12em; line-height:1.5; }
.battery-chip b { color:#fff; font-size:9px; }

@media (max-width:900px) {
  .range-slide { grid-template-columns:1fr; }
  .range-slide-visual { min-height:315px; padding:32px 36px; }
  .range-slide-copy { min-height:350px; padding:32px 36px 30px; }
  .range-distance strong { font-size:clamp(90px,16vw,135px); }
  .range-visual-kicker { top:22px; left:25px; }
  .route-map { margin-top:10px; }
  .regen-road { margin-top:18px; }
  .regen-caption { margin-top:35px; }
}
@media (max-width:560px) {
  .range-visual-wltp { background-position:center; }
  .range-visual-egmp { background-size:105% auto; }
  .range-photo-metric strong { font-size:104px; }
  .range-platform-lockup strong { font-size:58px; }
  .range-carousel-bar { align-items:flex-start; }
  .range-carousel-label { max-width:180px; line-height:1.4; }
  .range-control { width:35px; height:35px; }
  .range-slide-visual { min-height:285px; padding:28px 24px; }
  .range-slide-copy { min-height:415px; padding:29px 24px 25px; }
  .range-slide-copy h3 { font-size:39px; }
  .range-slide-copy p { margin:17px 0 22px; font-size:12px; }
  .range-fact-row { gap:7px; }
  .range-fact-row span { padding-right:8px; }
  .range-carousel-footer { padding-top:13px; }
  .range-legal { margin-top:20px; font-size:9px; }
  .range-distance strong { font-size:104px; }
  .range-distance-line,.range-distance-points { width:100%; }
  .range-charge-line { width:100%; }
  .regen-road { gap:7px; transform:scale(.84); }
  .regen-arrow-back { right:12%; }
  .route-map { transform:scale(.86); transform-origin:center top; margin-bottom:-18px; }
  .route-status { margin-top:3px; }
  .battery-gauge { margin-top:19px; }
  .battery-chip { margin-top:30px; }
}
@media (prefers-reduced-motion:reduce) {
  .range-track,.range-control,.range-dot span { transition:none; }
}

/* Compact autonomy section: keep only the two requested information pillars. */
.range-section { padding:24px 0 44px; }
.range-section .range-intro { margin-bottom:14px; }
.range-section .range-intro h2 { margin-bottom:0; font-size:clamp(30px,2.7vw,40px); line-height:.9; }
.range-section .range-intro > p { font-size:11px; line-height:1.45; }
.range-section .section-kicker,
.range-section .range-carousel-label,
.range-section .range-carousel-footer { display:none; }
.range-section .range-carousel-bar { margin-bottom:6px; }
.range-section .range-slide:nth-child(n+3) { display:none; }
.range-section .range-slide { min-height:360px; }
.range-section .range-slide-visual,
.range-section .range-slide-copy { min-height:360px; }
.range-section .range-slide-visual { padding:26px 34px; }
.range-section .range-slide-copy { padding:30px 36px 26px; }
.range-section .range-visual-egmp { background-position:center clamp(48px,6vw,72px); background-size:86% auto; }
.range-section .range-visual-egmp .range-visual-kicker { top:20px; left:24px; padding:5px 7px; background:rgba(11,28,36,.62); }
.range-section .range-visual-egmp .range-platform-lockup { padding-top:10px; }
.range-section .range-visual-egmp .range-platform-lockup strong { font-size:clamp(38px,4vw,58px); }
.range-section .range-slide-copy h3 { font-size:clamp(30px,3.2vw,44px); }
.range-section .range-slide-copy p { margin:14px 0 16px; font-size:12px; line-height:1.55; }
.range-section .range-slide-copy .card-index { margin-bottom:18px; font-size:0; }
.range-section .range-slide:nth-child(1) .card-index::after { content:"AUTONOMÍA WLTP"; font-size:10px; }
.range-section .range-slide:nth-child(2) .card-index::after { content:"PLATAFORMA E-GMP"; font-size:10px; }

@media (max-width:900px) {
  .range-section { padding:22px 0 38px; }
  .range-section .range-intro { margin-bottom:12px; }
  .range-section .range-slide-visual { min-height:300px; }
  .range-section .range-slide-copy { min-height:0; }
}

@media (max-width:560px) {
  .range-section { padding:18px 0 34px; }
  .range-section .range-intro { margin-bottom:10px; gap:12px; }
  .range-section .range-intro h2 { font-size:clamp(30px,9vw,38px); }
  .range-section .range-slide-visual { min-height:260px; padding:22px 24px; }
  .range-section .range-slide-copy { min-height:0; padding:23px 24px 25px; }
  .range-section .range-slide-copy h3 { font-size:33px; }
}

/* Charging map: fixed large scale and compact section composition. */
.charging-section { padding:76px 0; }
.charging-layout { align-items:start; }
.charging-visual { min-height:480px; overflow:visible; border:0; border-radius:0; background:transparent; }
.charging-map-card.reveal { opacity:1; transform:none; }
.charging-map-image { width:125%; max-width:none; max-height:500px; filter:brightness(calc(.94 + var(--map-progress, 0) * .14)) contrast(calc(1 + var(--map-progress, 0) * .12)); transform:translate3d(calc((var(--map-progress, 0) - .5) * 16px),calc((.5 - var(--map-progress, 0)) * 8px),0) scale(1.04); }
.charging-copy h2 { font-size:clamp(46px,5vw,64px); line-height:.92; }
.charging-copy>p { margin:22px 0 24px; }
.charge-stat { position:relative; display:block; padding-top:76px; margin-bottom:28px; }
.charge-stat::before,.charge-stat::after { position:absolute; top:0; width:calc(50% - 7px); box-sizing:border-box; min-height:62px; padding:12px 13px; font-size:10px; }
.charge-stat::before { left:0; content:"+20\A Electrolineras\A a nivel nacional"; }
.charge-stat::after { right:0; content:"+200\A Puntos de carga\A a nivel nacional"; }
.charge-stat strong,.charge-stat span { display:block; }
@media (max-width:900px) {
  .charging-layout { grid-template-columns:1fr; gap:55px; }
  .charging-visual { min-height:430px; }
  .charging-map-image { width:115%; max-height:460px; }
}
@media (max-width:560px) {
  .charging-section { padding:58px 0; }
  .charging-visual { min-height:330px; }
  .charging-map-image { width:116%; max-height:360px; }
  .charging-copy h2 { font-size:46px; }
  .charge-stat { padding-top:72px; }
  .charge-stat::before,.charge-stat::after { min-height:66px; padding:12px; font-size:10px; }
}

/* EV Tips taxonomy: keep assistance beside ADAS and leave the feature grid for onboard technology. */
.adas-secondary { margin-top:64px; }
.adas-secondary-head { display:grid; grid-template-columns:1.2fr .72fr; align-items:end; column-gap:80px; margin-bottom:28px; }
.adas-secondary-head h3 { margin:0; font-family:"Kia Signature",Arial,sans-serif; font-size:clamp(36px,4vw,54px); font-weight:700; letter-spacing:-.035em; line-height:.94; }
.adas-secondary-head h3 em { font-style:normal; }
.adas-secondary-head>p { max-width:330px; margin:0 0 3px; color:var(--muted); font-size:13px; line-height:1.65; }
.safety-tip-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:none; }
.safety-tip-grid .tip-card { min-height:272px; }
.safety-section .adas-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:900px) {
  .safety-section .adas-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .adas-secondary-head { grid-template-columns:1fr; gap:25px; }
  .safety-tip-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:none; }
}
@media (max-width:560px) {
  .safety-section .adas-grid { grid-template-columns:1fr; }
  .adas-secondary { margin-top:48px; }
  .adas-secondary-head h3 { font-size:clamp(39px,12vw,52px); }
  .safety-tip-grid { grid-template-columns:1fr; }
}

/* Unified gallery treatment: taxonomy stays in one continuous section. */
.gallery-amenities { padding-top:96px; border-top:1px solid var(--line); }
.gallery-security { padding-top:2px; }
.gallery-group-kicker { margin:0 0 25px; }
.tip-top,.adas-tag { display:none; }
.safety-section .adas-icon { width:88px; height:88px; margin-bottom:24px; border:0; border-radius:4px; background:linear-gradient(135deg,#e8eeeb 0%,#e3eae6 100%); color:var(--ink); }
.safety-section .adas-icon-feature { background:rgba(255,255,255,.1); color:#fff; }
.safety-section .adas-icon img { width:50px; height:50px; }
.safety-section .tip-icon { width:88px; height:88px; margin-bottom:24px; }
.safety-section .tip-icon img { width:50px; height:50px; }
.safety-section .adas-card { min-height:390px; }
.safety-section .adas-main { min-height:390px; }
.safety-section .safety-tip-grid .tip-card { min-height:300px; }
.safety-section .tips-grid .tip-card { min-height:310px; }
.watch-link,.tip-link { justify-content:flex-end; font-size:0; }
.watch-link .play-icon { display:none; }
.watch-link b,.tip-link b { font-size:22px; line-height:1; font-weight:400; }
.tips-grid { margin-top:0; }
.gallery-amenities { background:#fff; }
.gallery-amenities .tip-icon { width:88px; height:88px; margin-bottom:24px; }
.gallery-amenities .tip-icon img { width:50px; height:50px; }
.gallery-amenities .tip-card { min-height:310px; }
@media (max-width:900px) {
  .gallery-amenities { padding-top:72px; }
  .safety-section .adas-card,.safety-section .adas-main { min-height:360px; }
  .gallery-amenities .tip-card { min-height:290px; }
}
@media (max-width:560px) {
  .gallery-amenities { padding-top:58px; }
  .safety-section .adas-icon,.safety-section .tip-icon { width:82px; height:82px; }
  .safety-section .adas-icon img,.safety-section .tip-icon img { width:47px; height:47px; }
  .safety-section .adas-card,.safety-section .adas-main,.safety-section .safety-tip-grid .tip-card,.safety-section .tips-grid .tip-card { min-height:300px; }
  .gallery-amenities .tip-icon { width:82px; height:82px; }
  .gallery-amenities .tip-icon img { width:47px; height:47px; }
  .gallery-amenities .tip-card { min-height:270px; }
}

/* One compact safety story: equal cards, icon-led hierarchy, discreet category labels. */
.safety-section { padding-top:96px; padding-bottom:48px; }
.safety-head { margin-bottom:40px; }
.safety-head h2 { font-size:clamp(48px,6vw,78px); }
.safety-head>p { margin-bottom:3px; }
.safety-section .adas-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.safety-section .adas-card,.safety-section .adas-main { grid-column:auto; display:flex; min-height:244px; color:var(--ink); background:#f1f3f1; }
.safety-section .adas-image { display:none; }
.safety-section .adas-copy,.safety-section .adas-main .adas-copy { padding:20px 17px 17px; }
.safety-section .adas-main .adas-tag { color:var(--muted); }
.safety-section .adas-main p { color:var(--muted); }
.safety-section .adas-icon { width:76px; height:76px; margin-bottom:19px; border:0; border-radius:4px; background:linear-gradient(135deg,#e8eeeb 0%,#e3eae6 100%); color:var(--ink); }
.safety-section .adas-icon-feature { background:linear-gradient(135deg,#e8eeeb 0%,#e3eae6 100%); color:var(--ink); }
.safety-section .adas-icon img { width:47px; height:47px; }
.safety-section .adas-card h3 { font-size:21px; line-height:.98; }
.safety-section .adas-card p { margin:10px 0 12px; font-size:10px; line-height:1.45; }
.adas-secondary { margin-top:43px; }
.adas-secondary-head,.gallery-amenities .tips-head { display:none; }
.adas-secondary::before,.gallery-amenities::before { display:block; margin-bottom:19px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.14em; }
.adas-secondary::before { display:none; }
.gallery-group-label,.gallery-subgroup-label { margin-bottom:19px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.14em; }
.safety-tip-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:none; }
.safety-section .safety-tip-grid .tip-card { min-height:244px; padding:20px 17px 17px; }
.safety-section .safety-tip-grid .tip-icon { width:76px; height:76px; margin-bottom:19px; }
.safety-section .safety-tip-grid .tip-icon img { width:47px; height:47px; }
.safety-section .safety-tip-grid .tip-card h3 { font-size:21px; }
.safety-section .safety-tip-grid .tip-card p { margin:10px 0 12px; font-size:10px; }
.gallery-amenities { margin-top:0; padding-top:48px; border-top:0; background:#fff; }
.gallery-amenities::before { width:min(1180px,calc(100% - 96px)); margin-right:auto; margin-left:auto; content:"TECNOLOGÍA Y CONFORT"; }
.gallery-amenities .tips-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.gallery-amenities .tip-card { min-height:240px; padding:20px 17px 17px; }
.gallery-amenities .tip-icon { width:76px; height:76px; margin-bottom:19px; }
.gallery-amenities .tip-icon img { width:47px; height:47px; }
.gallery-amenities .tip-card h3 { font-size:21px; }
.gallery-amenities .tip-card p { margin:10px 0 12px; font-size:10px; }
.gallery-security { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.gallery-security .gallery-group-label,.gallery-security .gallery-subgroup-label { grid-column:1/-1; }
.gallery-security .adas-grid,.gallery-security .adas-secondary,.gallery-security .safety-tip-grid { display:contents; }
.gallery-security .adas-card,.gallery-security .safety-tip-grid .tip-card { grid-column:auto; }
.tip-card:not(a)::after { display:none; }
@media (max-width:900px) {
  .safety-section { padding-top:78px; }
  .gallery-security { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .gallery-amenities .tips-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .gallery-amenities::before { width:min(calc(100% - 48px),1180px); }
}
@media (max-width:560px) {
  .safety-section { padding-top:60px; padding-bottom:34px; }
  .safety-head { margin-bottom:31px; }
  .safety-head h2 { font-size:clamp(43px,12vw,58px); }
  .safety-section .adas-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .safety-section .adas-card,.safety-section .adas-main,.safety-section .safety-tip-grid .tip-card,.gallery-amenities .tip-card { min-height:224px; }
  .safety-section .adas-card h3,.safety-section .safety-tip-grid .tip-card h3,.gallery-amenities .tip-card h3 { font-size:19px; }
  .safety-section .adas-icon,.safety-section .safety-tip-grid .tip-icon,.gallery-amenities .tip-icon { width:68px; height:68px; margin-bottom:16px; }
  .safety-section .adas-icon img,.safety-section .safety-tip-grid .tip-icon img,.gallery-amenities .tip-icon img { width:42px; height:42px; }
  .gallery-security { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gallery-amenities { padding-top:38px; }
  .gallery-amenities::before { width:calc(100% - 36px); margin-bottom:17px; }
  .gallery-amenities .tips-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .gallery-amenities .tip-card { padding:16px 13px 14px; }
}

/* Editorial spacing pass: smaller heading, breathing room inside squares, quieter legal close. */
.safety-head h2 { max-width:700px; font-size:clamp(42px,4.7vw,64px); line-height:.94; }
.safety-head { margin-bottom:32px; }
.safety-section { padding-top:78px; }
.gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding-bottom:28px; }
.gallery-security .adas-card p,.gallery-security .tip-card p,.gallery-amenities .tip-card p { margin-bottom:0; }
.gallery-amenities .legal-note { max-width:980px; margin-top:42px; padding-bottom:34px; }
@media (max-width:900px) {
  .safety-section { padding-top:64px; }
  .safety-head h2 { max-width:620px; font-size:clamp(42px,7vw,58px); }
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding-bottom:24px; }
}
@media (max-width:560px) {
  .safety-section { padding-top:52px; }
  .safety-head h2 { font-size:clamp(40px,11vw,54px); }
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding-bottom:20px; }
  .gallery-amenities .legal-note { margin-top:34px; padding-bottom:28px; }
}

/* Final card standard: square canvas and arrow anchored to the upper-right corner. */
.gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { aspect-ratio:1 / 1; min-height:0; }
.gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding:20px 17px 17px; }
.gallery-security .watch-link,.gallery-security .tip-link,.gallery-amenities .tip-link { position:absolute; top:19px; right:17px; z-index:2; display:block; width:auto; margin:0; padding:0; border:0; }
.gallery-security .watch-link b,.gallery-security .tip-link b,.gallery-amenities .tip-link b { display:block; font-size:21px; line-height:1; }
.gallery-security .tip-card::after,.gallery-amenities .tip-card::after { display:none; }
.gallery-security .adas-card h3,.gallery-security .tip-card h3,.gallery-amenities .tip-card h3 { padding-right:16px; }
@media (max-width:560px) {
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding:13px 12px 12px; }
  .gallery-security .watch-link,.gallery-security .tip-link,.gallery-amenities .tip-link { top:13px; right:12px; }
  .gallery-security .watch-link b,.gallery-security .tip-link b,.gallery-amenities .tip-link b { font-size:18px; }
  .safety-section .adas-icon,.safety-section .safety-tip-grid .tip-icon,.gallery-amenities .tip-icon { width:58px; height:58px; margin-bottom:12px; }
  .safety-section .adas-icon img,.safety-section .safety-tip-grid .tip-icon img,.gallery-amenities .tip-icon img { width:36px; height:36px; }
  .safety-section .adas-card h3,.safety-section .safety-tip-grid .tip-card h3,.gallery-amenities .tip-card h3 { font-size:16px; }
  .safety-section .adas-card p,.safety-section .safety-tip-grid .tip-card p,.gallery-amenities .tip-card p { margin:7px 0 10px; font-size:9px; line-height:1.35; }
}

/* Content safe area: remove nested ADAS padding and keep descriptions off the edge. */
.gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding:20px 17px 28px; }
.gallery-security .adas-card .adas-copy { flex:1; min-height:0; padding:0; }
.gallery-security .adas-card p,.gallery-security .tip-card p,.gallery-amenities .tip-card p { margin-top:auto; margin-bottom:0; }
.gallery-security .adas-card p b,.gallery-security .tip-card p b,.gallery-amenities .tip-card p b { color:var(--ink); font-weight:800; }
@media (max-width:560px) {
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { padding:13px 12px 20px; }
}

/* ADAS fit pass: four wider squares keep long technical names and descriptions visible. */
.gallery-security { grid-template-columns:repeat(4,minmax(0,1fr)); }
.gallery-security .adas-card { padding:18px 15px 22px; }
.gallery-security .adas-card .adas-icon { width:64px; height:64px; margin-bottom:14px; }
.gallery-security .adas-card .adas-icon img { width:40px; height:40px; }
.gallery-security .adas-card h3 { font-size:19px; line-height:1; }
.gallery-security .adas-card p { font-size:9.5px; line-height:1.4; }
.gallery-security .adas-card .watch-link { top:17px; right:15px; }
@media (max-width:900px) {
  .gallery-security { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .gallery-security { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gallery-security .adas-card { padding:13px 12px 18px; }
  .gallery-security .adas-card .adas-icon { width:54px; height:54px; margin-bottom:10px; }
  .gallery-security .adas-card .adas-icon img { width:34px; height:34px; }
  .gallery-security .adas-card h3 { font-size:15px; }
  .gallery-security .adas-card p { font-size:8.5px; line-height:1.3; }
  .gallery-security .adas-card .watch-link { top:12px; right:11px; }
}

/* Keep one consistent vertical rhythm between the safety gallery groups. */
.safety-section { padding-bottom:0; }
.gallery-amenities { padding-top:43px; }
.gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { aspect-ratio:1.1 / 1; }
.gallery-security .adas-card p,.gallery-security .tip-card p,.gallery-amenities .tip-card p { margin-top:14px; }
.gallery-amenities .tip-icon { margin-bottom:15px; }
.gallery-amenities .tip-card h3 { line-height:1; }
@media (max-width:900px) {
  .gallery-amenities { padding-top:38px; }
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { min-height:220px; aspect-ratio:auto; }
}
@media (max-width:560px) {
  .gallery-amenities { padding-top:32px; }
  .gallery-security .adas-card,.gallery-security .tip-card,.gallery-amenities .tip-card { min-height:200px; aspect-ratio:auto; }
  .gallery-security .adas-card p,.gallery-security .tip-card p,.gallery-amenities .tip-card p { margin-top:9px; }
}

/* Mobile header: compact, in normal flow and free of duplicated black spacing. */
@media (max-width:560px) {
  :root { --header-height:66px; --scroll-offset:76px; }
  .site-header { position:relative; height:66px; box-shadow:none; }
  .utility-bar { display:none; }
  .main-nav { height:66px; }
  .mobile-nav { top:66px; }
  main { padding-top:0; }
  .journey-nav { top:0; }
}

/* Lighthouse accessibility pass: stronger contrast and comfortable tap areas. */
.journey-item { color:#626d72; }
.range-legal { color:#566269; }
.footer-column a { display:flex; align-items:center; min-width:24px; min-height:24px; }
@media (max-width:560px) {
  .journey-item,.journey-nav.is-compact .journey-item { font-size:9px; }
}

/* Final autonomy UX pass: clean vehicle imagery, visible blog cards and technology accents. */
.range-section { position:relative; overflow:hidden; background:#e9eeeb; }
.range-section::before { position:absolute; top:0; right:-12%; width:62%; height:360px; background:linear-gradient(135deg,transparent 0 49%,rgba(7,16,22,.06) 49.2% 49.5%,transparent 49.7% 100%),linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.54)); content:""; pointer-events:none; }
.range-section .container { position:relative; z-index:1; }
.range-section .container { width:min(1400px,calc(100% - 96px)); }
.range-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-bottom:28px; }
.range-detail-card { min-height:0; border:1px solid rgba(7,16,22,.09); border-radius:24px; box-shadow:0 18px 50px rgba(7,16,22,.1); transition:transform .35s var(--ease),box-shadow .35s var(--ease); }
.range-detail-card:hover { transform:translateY(-6px); box-shadow:0 28px 70px rgba(7,16,22,.16); }
.range-detail-media { min-height:330px; padding:0; background-color:#d9e2df; }
.range-detail-media::after { display:none; }
.range-detail-media-label,.range-detail-metric,.range-detail-media .platform-art { display:none; }
.range-detail-wltp { background-position:center 58%; background-size:cover; }
.range-detail-egmp { background-position:center; background-size:cover; }
.range-detail-copy { min-height:275px; padding:28px 30px 27px; background:linear-gradient(180deg,#fff 0%,#f7faf8 100%); }
.range-blog-kicker { display:block; margin-bottom:16px; color:#1d6974; font-size:10px; font-weight:800; letter-spacing:.16em; }
.range-detail-copy .card-index { display:none; }
.range-detail-copy h3 { max-width:430px; font-size:clamp(32px,3.2vw,48px); }
.range-detail-copy p { max-width:560px; margin-top:18px; font-size:13px; line-height:1.7; }
.range-detail-note { margin-top:20px; padding:14px 0 0; }
.range-blog-link { display:inline-flex; align-items:center; gap:18px; margin-top:25px; padding:13px 17px 13px 18px; border:1px solid rgba(7,16,22,.2); border-radius:999px; color:var(--ink); font-size:11px; font-weight:800; letter-spacing:.01em; transition:background .25s ease,color .25s ease,transform .25s var(--ease); }
.range-blog-link span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--ink); color:#fff; font-size:16px; font-weight:400; }
.range-blog-link:hover,.range-blog-link:focus-visible { background:var(--ink); color:#fff; transform:translateY(-2px); }
.range-blog-link:hover span,.range-blog-link:focus-visible span { background:#fff; color:var(--ink); }
.range-carousel { margin-top:34px; padding:24px; border:1px solid rgba(7,16,22,.11); border-radius:24px; background:rgba(255,255,255,.48); box-shadow:0 14px 38px rgba(7,16,22,.06); }
@media (max-width:900px) { .range-details { grid-template-columns:1fr; }.range-detail-media { min-height:300px; }.range-detail-copy { min-height:0; }.range-carousel { padding:18px; } }
@media (max-width:560px) { .range-detail-card { border-radius:18px; }.range-detail-media { min-height:245px; }.range-detail-copy { padding:23px 20px 22px; }.range-detail-copy h3 { font-size:34px; }.range-blog-link { width:100%; justify-content:space-between; }.range-carousel { margin-top:24px; padding:14px; border-radius:18px; } }

/* Horizontal editorial layout: give the headline and the EVs room to breathe. */
.portfolio-section { overflow:hidden; }
.portfolio-section .section-heading { grid-template-columns:minmax(0,1.5fr) minmax(250px,.62fr); align-items:center; column-gap:clamp(36px,8vw,128px); margin-bottom:58px; }
.portfolio-section .section-heading h2 { max-width:980px; font-size:clamp(46px,5.25vw,82px); line-height:.9; text-wrap:balance; }
.portfolio-section .section-heading h2 br,.range-section #range-title br { display:none; }
.portfolio-section .section-heading h2 em { display:inline-block; margin-left:clamp(18px,4vw,72px); color:var(--muted); }
.portfolio-section .section-heading > p { max-width:330px; justify-self:end; margin:0; padding-left:26px; border-left:1px solid rgba(7,16,22,.22); font-size:15px; line-height:1.72; }
.portfolio-section .vehicle-grid { gap:16px; }
.portfolio-section .vehicle-card { border-radius:18px; box-shadow:0 0 0 1px rgba(7,16,22,.08),0 18px 38px rgba(7,16,22,.06); }
.portfolio-section .vehicle-image { min-height:238px; flex-basis:238px; background-size:88% auto; }
.portfolio-section .vehicle-meta { min-height:112px; padding:18px 20px 20px; }
.portfolio-section .vehicle-meta > span { font-size:25px; }

/* Autonomy cards now read as two wide editorial stories: the vehicle stays clear on the left, copy lives on the right. */
.range-section .range-intro { grid-template-columns:minmax(0,1.16fr) minmax(300px,.84fr); align-items:center; column-gap:clamp(42px,10vw,156px); margin-bottom:54px; }
.range-section .range-intro h2 { max-width:760px; font-size:clamp(46px,5.3vw,82px); line-height:.88; text-wrap:balance; }
.range-section #range-title em { display:inline-block; margin-left:clamp(18px,4vw,72px); color:#1d6974; }
.range-section .range-intro > p { max-width:430px; margin:0; padding-left:26px; border-left:1px solid rgba(7,16,22,.22); font-size:15px; line-height:1.72; }
.range-details { grid-template-columns:1fr; gap:26px; }
.range-detail-card { display:grid; grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr); min-height:410px; }
.range-detail-media { min-height:410px; }
.range-detail-copy { min-height:410px; padding:42px clamp(30px,4.4vw,66px); justify-content:center; }
.range-detail-copy h3 { max-width:520px; font-size:clamp(36px,3.6vw,56px); line-height:.91; }
.range-detail-copy p { max-width:570px; margin-top:20px; font-size:13px; line-height:1.75; }
.range-detail-note { max-width:520px; margin-top:24px; }
.range-blog-link { align-self:flex-start; }
.range-tech-line { position:absolute; top:74px; left:50%; width:min(35vw,440px); height:1px; background:linear-gradient(90deg,rgba(29,105,116,0),rgba(29,105,116,.72),rgba(29,105,116,0)); transform-origin:left center; pointer-events:none; }

@media (max-width:1100px) {
  .portfolio-section .section-heading { column-gap:44px; }
  .portfolio-section .section-heading h2 { font-size:clamp(43px,5.8vw,68px); }
  .range-detail-card { grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); }
  .range-detail-copy { padding-right:34px; padding-left:34px; }
}
@media (max-width:900px) {
  .portfolio-section .section-heading,.range-section .range-intro { grid-template-columns:1fr; gap:24px; margin-bottom:40px; }
  .portfolio-section .section-heading h2,.range-section .range-intro h2 { max-width:720px; }
  .portfolio-section .section-heading h2 em,.range-section #range-title em { margin-left:0; }
  .portfolio-section .section-heading > p,.range-section .range-intro > p { justify-self:start; max-width:520px; padding-left:0; border-left:0; }
  .range-detail-card { grid-template-columns:minmax(0,1.08fr) minmax(290px,.92fr); }
  .range-detail-media,.range-detail-copy { min-height:360px; }
  .range-detail-copy { padding:32px 28px; }
  .range-detail-copy h3 { font-size:clamp(34px,5vw,48px); }
  .range-tech-line { top:52px; left:auto; right:22px; width:30vw; }
}
@media (max-width:560px) {
  .portfolio-section .section-heading h2,.range-section .range-intro h2 { font-size:clamp(42px,12.5vw,60px); }
  .portfolio-section .section-heading > p,.range-section .range-intro > p { font-size:13px; }
  .portfolio-section .vehicle-image { min-height:220px; flex-basis:220px; }
  .range-detail-card { display:grid; grid-template-columns:1fr; }
  .range-detail-media { min-height:245px; }
  .range-detail-copy { min-height:0; padding:25px 21px 24px; }
  .range-detail-copy h3 { font-size:34px; }
  .range-detail-copy p { font-size:12px; line-height:1.65; }
  .range-tech-line { display:none; }
}

/* Charging stat: one clear vertical stack, without duplicated pseudo-content. */
.charging-copy .charge-stat { display:flex; flex-direction:column; gap:8px; margin-bottom:28px; padding:0; border-left:0; }
.charging-copy .charge-stat::before,.charging-copy .charge-stat::after { display:none; content:none; }
.charging-copy .charge-stat-item { display:flex; flex-direction:column; gap:3px; width:min(100%,280px); padding:11px 14px; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.035); }
.charging-copy .charge-stat-item strong { font-size:20px; line-height:1; }

/* Portfolio reference layout: airy editorial headline, feature rail and one-line model gallery. */
.portfolio-section { position:relative; overflow:hidden; background-color:#f6f7f5; background-image:linear-gradient(rgba(7,16,22,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(7,16,22,.032) 1px,transparent 1px),radial-gradient(ellipse at 50% 116%,transparent 0 48%,rgba(29,105,116,.09) 48.2% 48.35%,transparent 48.6% 55%,rgba(29,105,116,.055) 55.2% 55.32%,transparent 55.6%); background-size:160px 160px,160px 160px,100% 100%; }
.portfolio-section::after { position:absolute; right:-8%; bottom:-180px; left:-8%; height:330px; border-top:1px solid rgba(29,105,116,.08); border-radius:50% 50% 0 0; box-shadow:0 -14px 0 rgba(29,105,116,.035),0 -30px 0 rgba(29,105,116,.025); content:""; pointer-events:none; }
.portfolio-section .container { position:relative; z-index:1; }
.portfolio-section .section-heading { grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr); align-items:center; column-gap:clamp(45px,8vw,150px); margin-bottom:52px; }
.portfolio-section .section-heading h2 { max-width:900px; font-size:clamp(52px,5.9vw,90px); line-height:.88; letter-spacing:-.055em; text-wrap:balance; }
.portfolio-section .section-heading h2 br { display:block; }
.portfolio-section .section-heading h2 em { display:block; margin-left:0; color:#6b777d; }
.portfolio-section .section-heading > p { max-width:360px; justify-self:end; margin:0; padding:8px 0 8px 27px; border-left:2px solid #19b8cf; color:#445158; font-size:16px; line-height:1.6; }
.portfolio-highlights { display:flex; align-items:center; gap:0; min-height:64px; margin-bottom:26px; padding:0 36px; border:1px solid rgba(7,16,22,.18); border-radius:999px; background:rgba(255,255,255,.4); box-shadow:0 10px 30px rgba(7,16,22,.035); }
.portfolio-highlight { display:flex; align-items:center; gap:12px; flex:1; min-width:0; padding:0 25px; border-right:1px solid rgba(7,16,22,.15); color:#566168; font-size:11px; letter-spacing:.04em; white-space:nowrap; }
.portfolio-highlight:first-child { padding-left:0; }
.portfolio-highlight:nth-of-type(4) { border-right:0; }
.portfolio-highlight-icon { display:grid; flex:0 0 28px; place-items:center; width:28px; height:28px; color:#071016; }
.portfolio-highlight-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; }
.portfolio-progress { display:flex; align-items:center; gap:10px; padding-left:25px; }
.portfolio-progress i { display:block; width:26px; height:2px; background:#c4cacc; }
.portfolio-progress i.is-active { background:#16b9cd; box-shadow:0 0 10px rgba(22,185,205,.55); }
.portfolio-section .vehicle-grid { grid-template-columns:repeat(7,minmax(0,1fr)); gap:12px; }
.portfolio-section .vehicle-card { min-width:0; border:1px solid rgba(7,16,22,.15); border-radius:18px; background:rgba(255,255,255,.25); box-shadow:none; }
.portfolio-section .vehicle-card:hover { border-color:rgba(22,185,205,.45); background:rgba(255,255,255,.7); box-shadow:0 18px 34px rgba(7,16,22,.09); }
.portfolio-section .vehicle-image { min-height:170px; flex-basis:170px; background-color:transparent; background-size:94% auto; }
.portfolio-section .vehicle-meta { min-height:82px; padding:15px 18px 16px; }
.portfolio-section .vehicle-meta > span { font-size:22px; letter-spacing:-.055em; }
.portfolio-section .vehicle-meta b { display:flex; align-items:center; gap:9px; font-size:10px; font-weight:700; }
.portfolio-section .vehicle-meta b i { color:#12b5ca; font-size:18px; font-style:normal; font-weight:400; line-height:1; }
.portfolio-section .section-cta { position:relative; z-index:1; margin-top:31px; }
.portfolio-section .section-cta .button { min-height:74px; border:1px solid #12b5ca; border-radius:11px; background:#06121a; box-shadow:0 12px 28px rgba(7,16,22,.22),0 0 18px rgba(18,181,202,.14); }
.portfolio-section .section-cta .button::after { color:#12b5ca; }

@media (max-width:1200px) {
  .portfolio-highlights { padding:0 24px; }
  .portfolio-highlight { padding:0 15px; font-size:10px; }
  .portfolio-progress { gap:7px; padding-left:15px; }
  .portfolio-progress i { width:18px; }
  .portfolio-section .vehicle-image { min-height:150px; flex-basis:150px; }
}
@media (max-width:900px) {
  .portfolio-section .section-heading { grid-template-columns:1fr; gap:27px; margin-bottom:40px; }
  .portfolio-section .section-heading > p { justify-self:start; max-width:500px; }
  .portfolio-highlights { flex-wrap:wrap; gap:0; min-height:0; padding:12px 18px; border-radius:24px; }
  .portfolio-highlight { flex:1 1 45%; min-height:42px; padding:0 12px; }
  .portfolio-highlight:first-child { padding-left:12px; }
  .portfolio-highlight:nth-of-type(2) { border-right:0; }
  .portfolio-progress { flex:1 1 100%; justify-content:center; padding:11px 0 2px; }
  .portfolio-section .vehicle-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .portfolio-section .vehicle-image { min-height:175px; flex-basis:175px; }
}
@media (max-width:560px) {
  .portfolio-section .section-heading h2 { font-size:clamp(47px,14vw,70px); }
  .portfolio-section .section-heading > p { font-size:13px; }
  .portfolio-highlights { align-items:stretch; padding:10px 13px; }
  .portfolio-highlight { flex-basis:50%; padding:8px 6px; font-size:9px; }
  .portfolio-highlight-icon { flex-basis:24px; width:24px; height:24px; }
  .portfolio-highlight-icon svg { width:24px; height:24px; }
  .portfolio-progress i { width:20px; }
  .portfolio-section .vehicle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .portfolio-section .vehicle-image { min-height:155px; flex-basis:155px; }
  .portfolio-section .vehicle-meta { min-height:78px; padding:13px 13px 14px; }
  .portfolio-section .vehicle-meta > span { font-size:19px; }
  .portfolio-section .vehicle-meta b { font-size:9px; }
  .portfolio-section .section-cta .button { width:100%; }
}

/* Compact portfolio pass: keep the model name and CTA close to the vehicle image. */
.portfolio-section { padding:78px 0 56px; }
.portfolio-section .section-heading { column-gap:clamp(35px,6vw,104px); margin-bottom:34px; }
.portfolio-section .section-heading h2 { font-size:clamp(48px,5vw,80px); line-height:.86; }
.portfolio-section .section-heading > p { font-size:14px; line-height:1.55; }
.portfolio-highlights { min-height:56px; margin-bottom:18px; padding:0 27px; }
.portfolio-highlight { padding-right:19px; padding-left:19px; font-size:10px; }
.portfolio-highlight-icon { flex-basis:25px; width:25px; height:25px; }
.portfolio-highlight-icon svg { width:25px; height:25px; }
.portfolio-progress { gap:8px; padding-left:19px; }
.portfolio-progress i { width:22px; }
.portfolio-section .vehicle-grid { gap:10px; }
.portfolio-section .vehicle-card { border-radius:14px; }
.portfolio-section .vehicle-image { min-height:148px; flex-basis:148px; background-size:92% auto; }
.portfolio-section .vehicle-meta { flex:0 0 auto; min-height:0; gap:8px; padding:11px 14px 13px; }
.portfolio-section .vehicle-meta > span { font-size:20px; }
.portfolio-section .vehicle-meta b { margin-top:0; gap:7px; font-size:9px; }
.portfolio-section .vehicle-meta b i { font-size:16px; }
.portfolio-section .section-cta { margin-top:24px; }
.portfolio-section .section-cta .button { min-height:62px; }
@media (max-width:1200px) {
  .portfolio-section { padding-top:68px; }
  .portfolio-section .vehicle-image { min-height:132px; flex-basis:132px; }
  .portfolio-section .vehicle-meta { padding:10px 12px 12px; }
}
@media (max-width:900px) {
  .portfolio-section { padding:64px 0 48px; }
  .portfolio-section .section-heading { margin-bottom:30px; }
  .portfolio-highlights { margin-bottom:16px; }
  .portfolio-section .vehicle-image { min-height:158px; flex-basis:158px; }
}
@media (max-width:560px) {
  .portfolio-section { padding:52px 0 40px; }
  .portfolio-highlights { margin-bottom:13px; }
  .portfolio-section .vehicle-image { min-height:143px; flex-basis:143px; }
  .portfolio-section .vehicle-meta { padding:10px 11px 11px; }
  .portfolio-section .vehicle-meta > span { font-size:18px; }
}

/* Hero + journey tab: let the navigation sit over the image and slide into a compact sticky rail. */
.hero { min-height:610px; }
.hero-content { min-height:610px; padding-top:145px; }
.hero-art { background-position:center 58%; }
.motion-video { object-position:center 58%; }
.hero-overlay { background:linear-gradient(90deg,rgba(3,11,16,.76) 0%,rgba(3,11,16,.38) 43%,rgba(3,11,16,.08) 76%,transparent 100%); }
.hero-copy { max-width:560px; }
.hero h1 { max-width:660px; margin-bottom:24px; font-size:clamp(52px,5.6vw,86px); line-height:.94; letter-spacing:-.05em; }
.hero-lede { max-width:430px; margin-bottom:31px; font-size:16px; line-height:1.55; }
.hero .button-light { border:1px solid rgba(255,255,255,.55); background:rgba(4,13,19,.76); color:#fff; box-shadow:0 10px 22px rgba(0,0,0,.2); }
.hero .button-light:hover { background:#fff; color:var(--ink); }
.journey-nav { top:var(--header-height); width:min(1180px,calc(100% - 96px)); margin:-62px auto 0; border:1px solid rgba(7,16,22,.14); border-radius:0; background:rgba(255,255,255,.97); box-shadow:0 16px 36px rgba(7,16,22,.13); backdrop-filter:blur(18px); }
.journey-inner { min-height:124px; }
.journey-item { min-height:124px; gap:10px; color:#6c777c; font-size:13px; }
.journey-item::after { right:17%; left:17%; height:4px; background:#071016; }
.journey-icon { width:40px; height:40px; }
.journey-icon svg { width:38px; height:38px; stroke-width:1.45; }
.journey-nav.is-compact .journey-item { min-height:64px; gap:4px; font-size:10px; }
.journey-nav.is-compact .journey-icon { width:26px; height:26px; }
.journey-nav.is-compact .journey-icon svg { width:24px; height:24px; }

@media (max-width:900px) {
  .hero,.hero-content { min-height:570px; }
  .hero-content { padding-top:128px; }
  .journey-nav { width:min(100% - 44px,680px); margin-top:-48px; }
  .journey-inner { min-height:92px; }
  .journey-item { min-height:92px; gap:7px; font-size:10px; }
  .journey-icon { width:29px; height:29px; }
  .journey-icon svg { width:28px; height:28px; }
}
@media (max-width:560px) {
  .hero,.hero-content { min-height:530px; }
  .hero-content { padding-top:106px; }
  .hero h1 { font-size:clamp(49px,15vw,72px); }
  .hero-lede { max-width:290px; font-size:13px; }
  .journey-nav { width:calc(100% - 20px); margin-top:-35px; }
  .journey-inner { min-height:76px; }
  .journey-item { min-height:76px; gap:5px; font-size:8px; }
  .journey-icon { width:24px; height:24px; }
  .journey-icon svg { width:23px; height:23px; }
  .journey-nav.is-compact .journey-item { min-height:54px; }
}

/* Electric energy layer + card fit: motion in the background, no artificial height in the cards. */
.portfolio-section::before { position:absolute; inset:-16% -8%; z-index:0; background:repeating-radial-gradient(ellipse at 50% 118%,transparent 0 11%,rgba(18,185,205,.08) 11.15% 11.3%,transparent 11.55% 16%),linear-gradient(108deg,transparent 18%,rgba(18,185,205,.055) 18.2%,transparent 18.45% 64%,rgba(18,185,205,.045) 64.2%,transparent 64.5%); opacity:.62; animation:portfolio-energy-flow 18s ease-in-out infinite alternate; content:""; pointer-events:none; }
@keyframes portfolio-energy-flow { from { transform:translate3d(-1.5%,0,0) scale(1); } to { transform:translate3d(1.5%,-1%,0) scale(1.035); } }
.portfolio-section .vehicle-grid { align-items:start; }
.portfolio-section .vehicle-card { align-self:start; }
.portfolio-section .vehicle-image { height:148px; min-height:148px; flex:0 0 148px; }
.portfolio-section .vehicle-meta { display:grid; align-content:start; flex:0 0 auto; gap:7px; min-height:0; }
.portfolio-section .vehicle-meta b { align-self:start; }
.portfolio-highlight-icon { color:#12b9d1; }
.portfolio-highlight { border-color:rgba(18,185,205,.22); }
.portfolio-section .section-cta { margin-top:36px; }
.portfolio-section .section-cta .button { width:min(100%,338px); min-height:60px; justify-content:center; gap:34px; padding:0 24px; font-size:15px; }
.portfolio-section .section-cta .button::after { margin-left:0; }
@media (prefers-reduced-motion:reduce) {
  .portfolio-section::before { animation:none; }
}
@media (max-width:900px) {
  .portfolio-section .vehicle-image { height:158px; min-height:158px; flex-basis:158px; }
  .portfolio-section .section-cta { margin-top:30px; }
}
@media (max-width:560px) {
  .portfolio-section .vehicle-image { height:143px; min-height:143px; flex-basis:143px; }
  .portfolio-section .section-cta { margin-top:26px; }
  .portfolio-section .section-cta .button { width:100%; min-height:58px; gap:24px; }
}

/* Sticky journey rail: compact enough to guide the scroll without covering the next section. */
.journey-nav { margin-top:-46px; }
.journey-inner { min-height:88px; }
.journey-item { min-height:88px; gap:6px; padding:9px 8px 8px; font-size:11px; }
.journey-icon { width:30px; height:30px; }
.journey-icon svg { width:29px; height:29px; }
.journey-nav.is-compact .journey-item { min-height:54px; gap:2px; padding:5px 8px 4px; font-size:9px; }
.journey-nav.is-compact .journey-icon { width:22px; height:22px; }
.journey-nav.is-compact .journey-icon svg { width:21px; height:21px; }
@media (max-width:900px) {
  .journey-nav { margin-top:-38px; }
  .journey-inner { min-height:76px; }
  .journey-item { min-height:76px; }
}
@media (max-width:560px) {
  .journey-nav { margin-top:-28px; }
  .journey-inner { min-height:64px; }
  .journey-item { min-height:64px; gap:3px; padding:6px 3px 5px; font-size:8px; }
  .journey-icon { width:22px; height:22px; }
  .journey-icon svg { width:21px; height:21px; }
  .journey-nav.is-compact .journey-item { min-height:48px; padding:4px 2px 3px; }
}

/* Charging network reference layout: dark immersive field, live map and luminous metrics. */
.charging-section { position:relative; overflow:hidden; padding:108px 0 96px; color:#f7fbfc; background:#020a13; background-image:radial-gradient(circle at 24% 52%,rgba(20,188,213,.13),transparent 28%),radial-gradient(circle at 78% 30%,rgba(11,62,82,.22),transparent 34%),linear-gradient(180deg,#020811 0%,#03111c 100%); }
.charging-section::before { position:absolute; inset:0; background-image:linear-gradient(rgba(30,150,174,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(30,150,174,.055) 1px,transparent 1px); background-size:74px 74px; opacity:.22; content:""; pointer-events:none; }
.charging-section::after { position:absolute; right:-10%; bottom:-270px; left:-10%; height:560px; background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 9%,rgba(14,171,198,.1) 9.15% 9.35%,transparent 9.6% 14%),linear-gradient(0deg,rgba(9,130,157,.13),transparent 64%); transform:perspective(520px) rotateX(56deg); content:""; opacity:.5; pointer-events:none; }
.charging-section .container { position:relative; z-index:1; }
.charging-kicker { position:absolute; top:34px; left:max(32px,calc((100% - 1180px) / 2)); z-index:2; display:flex; align-items:center; gap:12px; color:rgba(245,252,253,.9); font-size:12px; font-weight:800; letter-spacing:.14em; }
.charging-kicker::after { position:absolute; top:28px; left:0; width:105px; height:2px; background:linear-gradient(90deg,#17d5e6,transparent); content:""; }
.charging-kicker .status-dot { width:8px; height:8px; border:0; background:#25d5e4; box-shadow:0 0 0 4px rgba(37,213,228,.1),0 0 16px rgba(37,213,228,.9); }
.charging-layout { grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); align-items:center; gap:clamp(48px,6vw,100px); }
.charging-visual { min-height:650px; overflow:visible; border:0; border-radius:0; background:transparent; }
.charging-visual::before { position:absolute; inset:10% 0 4%; background:repeating-radial-gradient(ellipse at 49% 49%,transparent 0 8%,rgba(13,183,211,.1) 8.15% 8.35%,transparent 8.7% 13%); opacity:.58; content:""; pointer-events:none; }
.charging-visual::after { position:absolute; right:-12%; bottom:-2%; left:-12%; height:30%; background:linear-gradient(180deg,transparent,rgba(8,89,112,.2)),repeating-linear-gradient(90deg,rgba(23,190,216,.15) 0 1px,transparent 1px 54px); transform:perspective(280px) rotateX(58deg); transform-origin:bottom; content:""; opacity:.45; pointer-events:none; }
.charging-map-image { position:relative; z-index:1; width:124%; max-width:none; max-height:650px; filter:brightness(1.12) contrast(1.12) drop-shadow(0 0 26px rgba(0,195,222,.18)); transform:translate3d(calc((var(--map-progress, 0) - .5) * 18px),calc((.5 - var(--map-progress, 0)) * 10px),0) scale(calc(1.04 + var(--map-progress, 0) * .06)); }
.charging-label { top:28px; right:5%; z-index:2; border:1px solid rgba(29,190,215,.24); border-radius:999px; background:rgba(2,15,25,.76); color:rgba(235,251,253,.82); font-size:10px; letter-spacing:.08em; }
.charging-network-badge { position:absolute; top:128px; right:4%; z-index:2; display:flex; align-items:center; gap:13px; min-width:240px; padding:14px 17px; border:1px solid rgba(62,188,211,.27); border-radius:10px; background:rgba(3,18,29,.75); box-shadow:0 12px 30px rgba(0,0,0,.2),0 0 20px rgba(19,181,207,.08); backdrop-filter:blur(10px); }
.network-pulse { display:block; flex:0 0 18px; width:18px; height:18px; border:3px solid #20d2e5; border-radius:50%; box-shadow:0 0 0 4px rgba(32,210,229,.09),0 0 18px rgba(32,210,229,.72); }
.charging-network-badge b,.charging-network-badge small { display:block; }
.charging-network-badge b { color:#29d2e2; font-size:13px; }
.charging-network-badge small { margin-top:3px; color:rgba(239,250,252,.75); font-size:11px; }
.charging-copy { max-width:535px; }
.charging-copy h2 { max-width:590px; color:#fff; font-size:clamp(46px,5.15vw,78px); line-height:.9; letter-spacing:-.05em; }
.charging-copy h2 em { color:#fff; }
.charging-copy > p { max-width:480px; margin:28px 0 24px; color:rgba(238,248,250,.76); font-size:16px; line-height:1.65; }
.charging-copy .charge-stat { gap:10px; margin:0 0 28px; padding:0; border:0; }
.charging-copy .charge-stat-item { width:min(100%,420px); min-height:76px; padding:12px 18px; border:1px solid rgba(64,200,220,.34); border-radius:9px; background:linear-gradient(100deg,rgba(7,35,49,.72),rgba(2,16,27,.42)); box-shadow:inset 3px 0 0 #17d5e6,0 0 22px rgba(13,148,174,.08); }
.charging-copy .charge-stat-item strong { color:#36d8e6; font-size:34px; line-height:1; letter-spacing:-.04em; }
.charging-copy .charge-stat-item span { color:rgba(241,250,251,.78); font-size:14px; line-height:1.35; }
.charging-copy .button-light { min-width:310px; min-height:58px; border-radius:8px; background:#fff; color:#071016; box-shadow:0 12px 30px rgba(20,197,219,.2); font-size:14px; }
.charging-copy .button-light:hover { background:#dffafd; }
@media (max-width:900px) {
  .charging-section { padding:96px 0 76px; }
  .charging-kicker { left:22px; font-size:10px; }
  .charging-layout { grid-template-columns:1fr; gap:26px; }
  .charging-visual { min-height:500px; }
  .charging-map-image { width:115%; max-height:520px; }
  .charging-network-badge { top:94px; right:2%; }
  .charging-copy { max-width:620px; }
}
@media (max-width:560px) {
  .charging-section { padding:82px 0 62px; }
  .charging-kicker { top:23px; left:17px; gap:8px; font-size:8px; letter-spacing:.1em; }
  .charging-kicker::after { top:22px; width:72px; }
  .charging-visual { min-height:330px; }
  .charging-map-image { width:116%; max-height:380px; }
  .charging-label { top:8px; right:0; padding:7px 9px; font-size:8px; }
  .charging-network-badge { top:58px; right:0; min-width:190px; padding:10px 12px; }
  .charging-network-badge b { font-size:11px; }
  .charging-network-badge small { font-size:9px; }
  .charging-copy h2 { font-size:clamp(42px,11vw,55px); }
  .charging-copy > p { margin:20px 0; font-size:13px; }
  .charging-copy .charge-stat-item { min-height:66px; padding:10px 14px; }
  .charging-copy .charge-stat-item strong { font-size:28px; }
  .charging-copy .charge-stat-item span { font-size:12px; }
  .charging-copy .button-light { width:100%; min-width:0; }
}

/* Mobile charging proposal: message first, map as the visual anchor, metrics and CTA last. */
@media (max-width:560px) {
  .charging-layout { grid-template-areas:"charging-title" "charging-intro" "charging-map" "charging-stats" "charging-cta"; gap:0; }
  .charging-copy { display:contents; }
  .charging-copy h2 { grid-area:charging-title; max-width:100%; margin:0 0 18px; font-size:clamp(40px,10.5vw,52px); line-height:.91; }
  .charging-copy > p { grid-area:charging-intro; max-width:100%; margin:0 0 22px; font-size:14px; line-height:1.55; }
  .charging-visual { grid-area:charging-map; min-height:310px; margin:0 0 20px; }
  .charging-map-image { width:150%; max-height:420px; }
  .charging-copy .charge-stat { grid-area:charging-stats; margin:0 0 14px; }
  .charging-copy > .button-light { grid-area:charging-cta; }
}

/* Autonomy reference layout: dark energy field, two editorial stories and bright blog CTAs. */
.range-section { position:relative; overflow:hidden; padding:108px 0 92px; color:#f7fbfc; background:#020a13; background-image:radial-gradient(circle at 50% 20%,rgba(12,73,99,.2),transparent 34%),linear-gradient(180deg,#020a13 0%,#031522 100%); }
.range-section::before { position:absolute; inset:0; background-image:linear-gradient(rgba(23,138,164,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(23,138,164,.055) 1px,transparent 1px); background-size:78px 78px; opacity:.32; content:""; pointer-events:none; }
.range-section::after { position:absolute; right:-12%; bottom:-270px; left:-12%; height:560px; background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 8%,rgba(14,171,198,.1) 8.15% 8.35%,transparent 8.7% 13%),linear-gradient(0deg,rgba(9,130,157,.16),transparent 68%); transform:perspective(520px) rotateX(56deg); content:""; opacity:.55; pointer-events:none; }
.range-section .container { position:relative; z-index:1; }
.range-section .range-intro { grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); align-items:center; column-gap:clamp(48px,9vw,142px); margin-bottom:52px; }
.range-section .range-intro > div { position:relative; padding-left:34px; }
.range-section .range-intro > div::before { position:absolute; top:5px; bottom:5px; left:0; width:2px; background:#1bd4e6; box-shadow:0 0 14px rgba(27,212,230,.35); content:""; }
.range-section .range-intro h2 { max-width:700px; font-size:clamp(50px,5.5vw,82px); line-height:.86; letter-spacing:-.05em; text-wrap:balance; }
.range-section .range-intro h2 br { display:block; }
.range-section #range-title em { display:block; margin-left:0; color:#25d2e4; }
.range-section .range-intro > p { max-width:470px; margin:0; padding-left:26px; border-left:1px solid rgba(27,212,230,.72); color:rgba(236,247,249,.78); font-size:16px; line-height:1.62; }
.range-details { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:0; }
.range-detail-card { display:flex; flex-direction:column; min-height:0; overflow:hidden; border:1px solid rgba(103,200,215,.5); border-radius:18px; background:#031522; box-shadow:0 22px 58px rgba(0,0,0,.28),0 0 22px rgba(0,158,183,.06); transition:transform .4s var(--ease),border-color .4s ease,box-shadow .4s ease; }
.range-detail-card:hover { border-color:rgba(40,218,233,.9); box-shadow:0 28px 72px rgba(0,0,0,.34),0 0 30px rgba(0,181,207,.12); transform:translateY(-5px); }
.range-detail-media { height:330px; min-height:330px; flex:0 0 330px; background-color:#0a2531; }
.range-detail-wltp { background-image:url("assets/images/range-wltp-ev3.webp"); background-position:center; background-size:cover; }
.range-detail-egmp { background-image:url("assets/images/range-egmp.webp"); background-position:center; background-size:cover; }
.range-detail-copy { position:relative; min-height:310px; padding:22px 36px 30px; background-color:#031522; background-image:radial-gradient(circle at 78% 78%,rgba(14,137,166,.2),transparent 30%),linear-gradient(180deg,rgba(3,21,34,.96),rgba(2,12,22,.98)); }
.range-detail-copy::after { position:absolute; right:-5%; bottom:-23%; width:68%; height:62%; border:1px solid rgba(18,161,190,.22); border-radius:50%; box-shadow:0 0 0 15px rgba(18,161,190,.035),0 0 0 31px rgba(18,161,190,.025); content:""; pointer-events:none; }
.range-detail-card:nth-child(2) .range-detail-copy::before { position:absolute; right:23px; bottom:18px; width:145px; height:86px; border:1px solid rgba(47,194,217,.22); border-radius:50%; transform:rotate(-14deg); content:""; opacity:.6; pointer-events:none; }
.range-blog-kicker { position:relative; z-index:1; display:block; margin-bottom:13px; color:#1dd7e8; font-size:11px; font-weight:800; letter-spacing:.14em; }
.range-detail-copy h3 { position:relative; z-index:1; max-width:540px; color:#f5fbfc; font-size:clamp(34px,3.2vw,48px); line-height:.93; letter-spacing:-.045em; }
.range-detail-copy h3 em { color:#f5fbfc; }
.range-detail-copy h3::after { display:block; width:45px; height:2px; margin-top:20px; background:#1dd7e8; box-shadow:0 0 10px rgba(29,215,232,.45); content:""; }
.range-detail-copy p { position:relative; z-index:1; max-width:590px; margin:17px 0 0; color:rgba(231,245,247,.74); font-size:13px; line-height:1.65; }
.range-detail-note { display:none; }
.range-blog-link { position:relative; z-index:1; display:inline-flex; align-items:center; gap:18px; margin-top:28px; padding:12px 18px; border:1px solid #1bd4e6; border-radius:999px; color:#f5fbfc; font-size:12px; font-weight:700; transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s var(--ease); }
.range-blog-link span { display:grid; place-items:center; width:22px; height:22px; color:#1bd4e6; font-size:22px; line-height:1; }
.range-blog-link:hover,.range-blog-link:focus-visible { background:#1bd4e6; color:#02111a; box-shadow:0 0 20px rgba(27,212,230,.26); transform:translateY(-2px); }
.range-blog-link:hover span,.range-blog-link:focus-visible span { color:#02111a; }
.range-section .range-carousel { margin-top:26px; border-color:rgba(27,212,230,.2); background:rgba(3,22,34,.5); box-shadow:none; }
.range-section .range-legal { color:rgba(222,241,244,.58); }
@media (max-width:900px) {
  .range-section { padding:88px 0 72px; }
  .range-section .range-intro { grid-template-columns:1fr; gap:28px; margin-bottom:38px; }
  .range-section .range-intro > p { max-width:560px; }
  .range-details { grid-template-columns:1fr; gap:20px; }
  .range-detail-media { height:300px; min-height:300px; flex-basis:300px; }
  .range-detail-copy { min-height:0; padding:22px 28px 28px; }
}
@media (max-width:560px) {
  .range-section { padding:70px 0 58px; }
  .range-section .range-intro > div { padding-left:24px; }
  .range-section .range-intro h2 { font-size:clamp(46px,12.5vw,62px); }
  .range-section .range-intro > p { padding-left:18px; font-size:13px; }
  .range-detail-card { border-radius:14px; }
  .range-detail-media { height:230px; min-height:230px; flex-basis:230px; }
  .range-detail-copy { padding:19px 20px 23px; }
  .range-detail-copy h3 { font-size:34px; }
  .range-detail-copy p { font-size:12px; line-height:1.6; }
  .range-blog-link { width:100%; justify-content:space-between; margin-top:23px; }
}

/* Map scale correction: the source artwork has transparent margins, so its visible Ecuador map needs a larger canvas. */
.charging-visual { min-height:720px; }
.charging-map-image { width:238%; max-height:820px; transform:translate3d(calc((var(--map-progress, 0) - .5) * 18px - 24px),calc((.5 - var(--map-progress, 0)) * 10px),0) scale(calc(1.04 + var(--map-progress, 0) * .06)); }
.charging-visual::before { inset:5% -5% 0; opacity:.72; }
@media (max-width:900px) {
  .charging-visual { min-height:540px; }
  .charging-map-image { width:182%; max-height:620px; transform:translate3d(calc((var(--map-progress, 0) - .5) * 12px - 16px),calc((.5 - var(--map-progress, 0)) * 8px),0) scale(calc(1.03 + var(--map-progress, 0) * .05)); }
}
@media (max-width:560px) {
  .charging-visual { min-height:360px; }
.charging-map-image { width:154%; max-height:460px; transform:translate3d(-10px,0,0) scale(1.02); }
}
/* Autonomy section: light editorial reference layout with restrained electric accents. */
.range-section { position:relative; overflow:hidden; padding:82px 0 76px; color:#071016; background:#f8f9f7; background-image:linear-gradient(rgba(16,116,151,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(16,116,151,.045) 1px,transparent 1px),radial-gradient(circle at 77% 18%,rgba(92,206,239,.16),transparent 27%); background-size:76px 76px,76px 76px,100% 100%; }
.range-section::before { position:absolute; inset:0; background:repeating-radial-gradient(ellipse at 75% 110%,transparent 0 7%,rgba(7,169,218,.09) 7.1% 7.25%,transparent 7.5% 11%),linear-gradient(135deg,transparent 0 57%,rgba(7,169,218,.06) 57.2% 57.35%,transparent 57.6% 100%); content:""; opacity:.8; pointer-events:none; }
.range-section::after { position:absolute; right:-12%; bottom:-225px; left:22%; height:470px; background:repeating-radial-gradient(ellipse at 72% 100%,transparent 0 8%,rgba(8,172,222,.16) 8.1% 8.25%,transparent 8.55% 12%),linear-gradient(0deg,rgba(144,225,247,.12),transparent 70%); transform:perspective(650px) rotateX(56deg); content:""; opacity:.62; pointer-events:none; }
.range-section .container { position:relative; z-index:1; }
.range-section .range-intro { grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr); align-items:center; column-gap:clamp(48px,9vw,142px); margin-bottom:48px; }
.range-section .range-intro > div { position:relative; padding-left:34px; }
.range-section .range-intro > div::before { position:absolute; top:3px; bottom:3px; left:0; width:2px; background:#04aee5; box-shadow:0 0 12px rgba(4,174,229,.22); content:""; }
.range-section .range-intro .section-kicker { display:none; }
.range-section .range-intro h2 { max-width:640px; color:#080d10; font-size:clamp(52px,5.5vw,82px); line-height:.88; letter-spacing:-.055em; text-wrap:balance; }
.range-section .range-intro h2 br { display:block; }
.range-section #range-title em { display:block; margin:0; color:#08a9df; }
.range-section .range-intro > p { max-width:470px; margin:0; padding-left:26px; border-left:1px solid #0bb3e4; color:#253239; font-size:16px; line-height:1.62; }
.range-details { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:0; }
.range-detail-card { display:flex; flex-direction:column; min-height:0; overflow:hidden; border:1px solid rgba(7,16,22,.14); border-radius:20px; background:#fff; box-shadow:0 15px 35px rgba(7,16,22,.09); transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s ease; }
.range-detail-card:hover { border-color:rgba(6,170,222,.55); box-shadow:0 22px 48px rgba(7,16,22,.13); transform:translateY(-4px); }
.range-detail-media { height:330px; min-height:330px; flex:0 0 330px; background-color:#e6ebea; }
.range-detail-media::after { display:none; }
.range-detail-media-label,.range-detail-metric,.range-detail-media .platform-art { display:none; }
.range-detail-wltp { background-position:center; background-size:cover; }
.range-detail-egmp { background-position:center; background-size:cover; }
.range-detail-copy { position:relative; min-height:324px; justify-content:flex-start; padding:24px 36px 28px; color:#080d10; background-color:#fff; background-image:linear-gradient(rgba(19,141,176,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(19,141,176,.035) 1px,transparent 1px),radial-gradient(ellipse at 88% 108%,rgba(94,211,242,.16),transparent 36%); background-size:56px 56px,56px 56px,100% 100%; }
.range-detail-copy::after { position:absolute; right:-10%; bottom:-24%; width:62%; height:76%; border:1px solid rgba(7,174,224,.19); border-radius:50%; box-shadow:0 0 0 16px rgba(7,174,224,.035),0 0 0 32px rgba(7,174,224,.025); content:""; pointer-events:none; }
.range-detail-card:nth-child(2) .range-detail-copy::before { position:absolute; right:24px; bottom:22px; width:148px; height:86px; border:1px solid rgba(7,174,224,.2); border-radius:50%; transform:rotate(-14deg); content:""; opacity:.7; pointer-events:none; }
.range-blog-kicker { position:relative; z-index:1; display:block; margin-bottom:13px; color:#00a8df; font-size:11px; font-weight:800; letter-spacing:.14em; }
.range-detail-copy .card-index { display:none; }
.range-detail-copy h3 { position:relative; z-index:1; max-width:540px; color:#080d10; font-size:clamp(36px,3.2vw,50px); line-height:.92; letter-spacing:-.05em; }
.range-detail-copy h3 em { color:#080d10; }
.range-detail-copy h3::after { display:block; width:45px; height:2px; margin-top:19px; background:#08b2e5; content:""; }
.range-detail-copy p { position:relative; z-index:1; max-width:590px; margin:17px 0 0; color:#46535a; font-size:14px; line-height:1.68; }
.range-detail-note { display:none; }
.range-blog-link { position:relative; z-index:1; display:inline-flex; align-items:center; gap:18px; min-height:48px; margin-top:26px; padding:0 17px 0 18px; border:1px solid #08b2e5; border-radius:999px; color:#16242b; font-size:12px; font-weight:700; transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s var(--ease); }
.range-blog-link span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; color:#08a9df; font-size:22px; line-height:1; }
.range-blog-link:hover,.range-blog-link:focus-visible { background:#08b2e5; color:#fff; box-shadow:0 8px 20px rgba(8,178,229,.22); transform:translateY(-2px); }
.range-blog-link:hover span,.range-blog-link:focus-visible span { color:#fff; }
.range-section .range-legal { color:#5b686e; }
.range-tech-line { background:linear-gradient(90deg,transparent,rgba(4,174,229,.52),transparent); }
@media (max-width:900px) {
  .range-section { padding:72px 0 62px; }
  .range-section .container { width:min(100% - 44px,680px); }
  .range-section .range-intro { grid-template-columns:1fr; gap:26px; margin-bottom:38px; }
  .range-section .range-intro > p { max-width:560px; }
  .range-details { grid-template-columns:1fr; gap:20px; }
  .range-detail-media { height:300px; min-height:300px; flex-basis:300px; }
  .range-detail-copy { min-height:0; padding:24px 28px 28px; }
}
@media (max-width:560px) {
  .range-section { padding:60px 0 52px; }
  .range-section .container { width:calc(100% - 34px); }
  .range-section .range-intro > div { padding-left:24px; }
  .range-section .range-intro h2 { font-size:clamp(46px,12.5vw,62px); }
  .range-section .range-intro > p { padding-left:18px; font-size:15px; }
  .range-detail-card { border-radius:16px; }
  .range-detail-media { height:245px; min-height:245px; flex-basis:245px; }
  .range-detail-copy { padding:21px 20px 24px; }
  .range-detail-copy h3 { font-size:34px; }
  .range-detail-copy p { font-size:16px; line-height:1.58; }
  .range-blog-link { width:100%; justify-content:space-between; margin-top:23px; }
}
.charging-copy .charge-stat-item span { max-width:none; color:rgba(255,255,255,.7); font-size:12px; line-height:1.35; }
@media (max-width:560px) {
  .charging-copy .charge-stat-item { width:100%; padding:10px 12px; }
}

/* Support reference layout: full-bleed service visual with a focused editorial CTA. */
.support-section {
  min-height:650px;
  background:#1a252a;
}
.support-image {
  background:#1a252a url("assets/images/maintenance-kia.webp") 65% center/cover no-repeat;
}
.support-image video {
  object-position:65% center;
  filter:brightness(.88) contrast(1.06) saturate(.9);
}
.support-overlay {
  background:
    linear-gradient(90deg,rgba(3,9,13,.88) 0%,rgba(3,9,13,.7) 32%,rgba(3,9,13,.25) 67%,rgba(3,9,13,.06) 100%),
    linear-gradient(0deg,rgba(3,9,13,.32),transparent 48%);
}
.support-content {
  min-height:650px;
  padding-top:20px;
}
.support-content h2 {
  max-width:700px;
  font-size:clamp(58px,6.7vw,100px);
  line-height:.86;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.support-content>p {
  max-width:560px;
  margin:36px 0 38px;
  color:rgba(255,255,255,.82);
  font-size:17px;
  line-height:1.58;
}
.support-content .button-row { gap:0; }
.support-content .button-light {
  min-width:260px;
  min-height:62px;
  border-radius:7px;
  background:#fff;
  color:#071016;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  font-size:14px;
}
.support-content .button-light:hover,
.support-content .button-light:focus-visible {
  background:#dffafd;
  color:#071016;
  box-shadow:0 14px 32px rgba(0,0,0,.28),0 0 0 3px rgba(8,178,229,.22);
}
.support-content .button-light span { color:#071016; font-size:20px; }
@media (max-width:900px) {
  .support-section,.support-content { min-height:560px; }
  .support-image { background-position:65% center; }
  .support-image video { object-position:65% center; }
  .support-content h2 { max-width:560px; font-size:clamp(50px,8vw,76px); }
  .support-content>p { max-width:460px; font-size:15px; }
}
@media (max-width:560px) {
  .support-section,.support-content { min-height:560px; }
  .support-image { background-position:70% center; }
  .support-image video { object-position:70% center; }
  .support-overlay { background:linear-gradient(90deg,rgba(3,9,13,.88),rgba(3,9,13,.45)); }
  .support-content { padding-top:30px; }
  .support-content h2 { max-width:330px; font-size:clamp(48px,14vw,70px); }
  .support-content>p { max-width:310px; margin:26px 0 29px; font-size:13px; }
  .support-content .button-light { width:100%; min-width:0; min-height:56px; }
}
@media (prefers-reduced-motion:reduce) {
  .support-image video { filter:none; }
}

/* Support reference layout: light editorial copy, full-width service visual and compact carousel. */
.support-section { min-height:820px; color:#071016; background:#f7f9f8; }
.support-image { top:0; right:0; bottom:0; left:31%; background:#dfe7e6 url("assets/images/maintenance-kia.webp") 65% center/cover no-repeat; }
.support-image video { object-position:65% center; filter:brightness(.9) contrast(1.06) saturate(.9); }
.support-overlay { background:linear-gradient(90deg,#f7f9f8 0%,#f7f9f8 18%,rgba(247,249,248,.96) 33%,rgba(247,249,248,.62) 52%,rgba(247,249,248,.1) 77%,transparent 100%),linear-gradient(0deg,rgba(247,249,248,.34),transparent 64%); }
.support-content { width:min(1520px,calc(100% - 96px)); min-height:820px; justify-content:flex-start; padding-top:34px; padding-bottom:270px; }
.support-brand { display:flex; align-items:center; gap:14px; margin-bottom:73px; color:#071016; }
.support-brand img { display:block; width:70px; height:auto; }
.support-brand span { padding-left:14px; border-left:1px solid rgba(7,16,22,.28); font-size:17px; font-weight:700; }
.support-kicker { display:flex; align-items:center; gap:12px; margin-bottom:17px; color:#00a8d8; font-size:11px; font-weight:800; letter-spacing:.18em; }
.support-kicker svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.support-content h2 { max-width:570px; color:#071016; font-size:clamp(58px,6.7vw,100px); line-height:.86; letter-spacing:-.055em; text-wrap:balance; }
.support-content>p { max-width:560px; margin:31px 0 28px; color:#34434a; font-size:16px; line-height:1.58; }
.support-content .button-light { min-width:225px; min-height:54px; border-radius:7px; background:#071016; color:#fff; box-shadow:0 10px 24px rgba(7,16,22,.18); font-size:13px; }
.support-content .button-light:hover,.support-content .button-light:focus-visible { background:#18303a; color:#fff; box-shadow:0 12px 26px rgba(7,16,22,.26),0 0 0 3px rgba(8,178,229,.2); }
.support-content .button-light span { color:#fff; font-size:19px; }
.support-services { position:absolute; bottom:67px; left:0; width:min(100%,820px); margin:0; }
.support-services-head { position:absolute; inset:0; z-index:4; display:block; margin:0; pointer-events:none; }
.support-services-head > div:first-child { display:none; }
.support-services-controls { position:absolute; top:50%; right:-80px; left:-80px; display:flex; align-items:center; justify-content:space-between; transform:translateY(-50%); pointer-events:none; }
.support-service-control { width:58px; height:58px; border:1px solid rgba(8,178,229,.26); color:#071016; background:rgba(255,255,255,.9); box-shadow:0 7px 18px rgba(7,16,22,.08); pointer-events:auto; }
.support-service-control:hover,.support-service-control:focus-visible { border-color:#08b2e5; background:#08b2e5; color:#fff; }
.support-services-viewport { min-height:250px; border:1px solid rgba(8,178,229,.2); border-radius:14px; background:#fff; box-shadow:0 14px 32px rgba(7,16,22,.1); }
.support-services-track { transition:transform .7s var(--ease); }
.support-service-card { position:relative; display:block; min-height:250px; padding:43px 82px 30px 46%; color:#071016; background:#fff; }
.support-service-card::before { position:absolute; top:0; bottom:0; left:0; width:43%; background:#eef5f5 url("assets/images/maintenance-kia.webp") 65% center/cover no-repeat; content:""; }
.support-service-card:nth-child(2)::before { background-image:url("assets/images/range-wltp-ev3.webp"); }
.support-service-card:nth-child(3)::before { background-image:url("assets/images/range-app.webp"); }
.support-service-card:nth-child(4)::before { background-image:url("assets/images/range-egmp.webp"); }
.support-service-card:nth-child(5)::before { background-image:url("assets/images/maintenance-kia.webp"); }
.support-service-card::after { position:absolute; top:27px; left:15%; width:88px; height:88px; border:1px solid rgba(39,212,229,.75); border-radius:50%; box-shadow:0 0 0 15px rgba(39,212,229,.08); content:""; opacity:.9; }
.support-service-card > div { position:relative; z-index:1; max-width:310px; }
.support-service-icon { position:absolute; z-index:2; top:25px; right:27px; display:grid; place-items:center; width:54px; height:54px; border:1px solid #08b2e5; border-radius:14px; color:#08b2e5; background:rgba(255,255,255,.72); }
.support-service-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-service-index { display:block; margin-bottom:12px; color:#5e6d73; font-size:10px; font-weight:800; letter-spacing:.14em; }
.support-service-card h3 { margin:0; color:#071016; font-size:clamp(28px,2.5vw,38px); line-height:.94; letter-spacing:-.045em; }
.support-service-card p { max-width:310px; margin:16px 0 0; color:#46545a; font-size:13px; line-height:1.5; }
.support-service-more { display:inline-flex; align-items:center; gap:14px; min-height:40px; margin-top:17px; padding:0 13px; border:1px solid rgba(7,16,22,.22); border-radius:7px; color:#071016; font-size:11px; font-weight:800; transition:background .2s ease,color .2s ease,transform .25s var(--ease); }
.support-service-more span { font-size:17px; font-weight:400; }
.support-service-more:hover,.support-service-more:focus-visible { background:#071016; color:#fff; transform:translateY(-2px); }
.support-services-footer { padding:11px 4px 0; }
.support-service-dot span { border-color:#08b2e5; }
.support-service-dot.is-active span { background:#08b2e5; }
.support-services-counter { color:#5e6d73; }
.support-services-counter b { color:#08a9df; }
.support-proof-rail { position:absolute; right:0; bottom:46px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:min(100%,770px); min-height:112px; padding:22px 24px; border:1px solid rgba(7,16,22,.05); border-radius:25px; background:rgba(255,255,255,.94); box-shadow:0 14px 32px rgba(7,16,22,.09); }
.support-proof-item { display:flex; align-items:center; gap:12px; min-width:0; padding:0 17px; border-right:1px solid rgba(7,16,22,.1); }
.support-proof-item:first-child { padding-left:8px; }
.support-proof-item:last-child { padding-right:0; border-right:0; }
.support-proof-icon { display:grid; flex:0 0 31px; place-items:center; width:31px; height:31px; color:#071016; }
.support-proof-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-proof-item strong,.support-proof-item small { display:block; }
.support-proof-item strong { color:#071016; font-size:12px; line-height:1.05; }
.support-proof-item small { margin-top:7px; color:#68757a; font-size:9px; line-height:1.25; }
.charging-copy .charge-stat-item { display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:14px; min-height:86px; padding:12px 18px; }
.charging-copy .charge-stat-icon { display:block; order:2; flex:0 0 52px; width:52px; height:52px; margin-left:auto; object-fit:contain; opacity:.96; filter:drop-shadow(0 0 9px rgba(19,201,235,.28)); }
.charging-copy .charge-stat-copy { display:flex; order:1; min-width:0; flex:1 1 auto; flex-direction:column; gap:3px; }
.charging-copy .charge-stat-copy strong { display:block; }
.charging-copy .charge-stat-copy span { display:block; }
@media (max-width:1100px) {
  .support-content { width:min(100% - 64px,1100px); }
  .support-services { width:min(100%,720px); }
  .support-proof-rail { width:min(100%,650px); }
  .support-proof-item { padding-right:10px; padding-left:10px; }
}
@media (max-width:900px) {
  .support-section { min-height:900px; }
  .support-image { right:0; bottom:auto; left:0; height:360px; background-position:center; }
  .support-image video { object-position:center; }
  .support-overlay { background:linear-gradient(180deg,rgba(247,249,248,.02) 0%,rgba(247,249,248,.1) 16%,#f7f9f8 42%,#f7f9f8 100%); }
  .support-content { width:min(100% - 44px,680px); min-height:900px; padding-top:55px; padding-bottom:38px; }
  .support-brand { margin-bottom:235px; }
  .support-services { position:relative; bottom:auto; left:auto; width:100%; margin-top:34px; }
  .support-services-controls { right:8px; left:8px; }
  .support-service-control { width:48px; height:48px; }
  .support-proof-rail { position:relative; right:auto; bottom:auto; width:100%; margin-top:24px; }
}
@media (max-width:560px) {
  .support-section { min-height:1040px; }
  .support-image { height:300px; }
  .support-content { min-height:1040px; width:calc(100% - 34px); padding-top:28px; }
  .support-brand { margin-bottom:182px; }
  .support-brand img { width:62px; }
  .support-brand span { font-size:15px; }
  .support-kicker { font-size:9px; letter-spacing:.12em; }
  .support-content h2 { font-size:clamp(48px,14vw,70px); }
  .support-content>p { margin:25px 0 27px; font-size:15px; }
  .support-content .button-light { width:100%; }
  .support-services { margin-top:30px; }
  .support-services-viewport { min-height:248px; }
  .support-service-card { min-height:248px; padding:32px 18px 25px 43%; }
  .support-service-card::before { width:38%; }
  .support-service-card::after { left:9%; width:58px; height:58px; }
  .support-service-icon { top:18px; right:16px; width:43px; height:43px; border-radius:11px; }
  .support-service-icon svg { width:23px; height:23px; }
  .support-service-card h3 { font-size:24px; }
  .support-service-card p { margin-top:12px; font-size:14px; }
  .support-service-more { margin-top:14px; }
  .support-services-controls { top:-25px; right:0; left:auto; gap:8px; transform:none; }
  .support-service-control { width:42px; height:42px; }
  .support-proof-rail { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 4px; min-height:0; padding:18px 12px; border-radius:18px; }
  .support-proof-item,.support-proof-item:first-child,.support-proof-item:last-child { padding:0 6px; border-right:0; }
  .support-proof-item strong { font-size:11px; }
  .support-proof-item small { font-size:8px; }
  .charging-copy .charge-stat-item { min-height:72px; gap:11px; padding:10px 12px; }
  .charging-copy .charge-stat-icon { flex-basis:42px; width:42px; height:42px; }
  .charging-copy .charge-stat-copy strong { font-size:28px; }
  .charging-copy .charge-stat-copy span { font-size:12px; }
}

/* Mobile support redesign: separate the vehicle visual from the service story. */
@media (max-width:560px) {
  .support-section { min-height:0; padding:0 0 34px; background:#f7f9f8; }
  .support-image { top:0; right:0; bottom:auto; left:0; height:248px; border-radius:0 0 28px 28px; background-position:67% center; box-shadow:0 16px 28px rgba(7,16,22,.12); }
  .support-image video { object-position:67% center; filter:brightness(.94) contrast(1.05) saturate(.92); }
  .support-overlay { background:linear-gradient(180deg,rgba(7,16,22,.08) 0%,rgba(7,16,22,.04) 43%,#f7f9f8 100%); }
  .support-content { width:calc(100% - 34px); min-height:0; padding:206px 0 0; }
  .support-brand { display:none; }
  .support-top-action { top:15px; right:15px; min-height:42px; padding:0 11px; border-radius:13px; background:rgba(255,255,255,.92); font-size:10px; }
  .support-top-action svg { width:18px; height:18px; }
  .support-kicker { margin-bottom:13px; font-size:9px; letter-spacing:.15em; }
  .support-content h2 { max-width:100%; font-size:clamp(49px,14vw,68px); line-height:.86; }
  .support-content>p { max-width:100%; margin:20px 0 22px; font-size:15px; line-height:1.5; }
  .support-content .button-row { width:100%; }
  .support-content .button-light { width:100%; min-width:0; min-height:52px; }
  .support-services { display:none; }
  .support-proof-rail { position:relative; right:auto; bottom:auto; left:auto; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; width:100%; min-height:0; margin-top:29px; padding:8px; border:1px solid rgba(8,178,229,.22); border-radius:22px; background:rgba(255,255,255,.94); box-shadow:0 14px 30px rgba(7,16,22,.08),0 0 0 5px rgba(8,178,229,.035); }
  .support-proof-item,.support-proof-item:first-child,.support-proof-item:last-child { align-items:flex-start; gap:8px; min-height:108px; padding:15px 12px !important; border-right:1px solid rgba(7,16,22,.1); border-bottom:1px solid rgba(7,16,22,.1); }
  .support-proof-item:nth-child(2n) { border-right:0; }
  .support-proof-item:nth-child(n+3) { border-bottom:0; }
  .support-proof-icon { flex:0 0 34px; width:34px; height:34px; border:1px solid rgba(8,178,229,.32); border-radius:11px; color:#08a9df; background:#effcff; }
  .support-proof-icon svg { width:24px; height:24px; }
  .support-proof-item strong { font-size:12px; line-height:1.08; }
  .support-proof-item small { margin-top:6px; font-size:9px; line-height:1.28; }
}

/* Mobile support redesign: separate the vehicle visual from the service story. */
@media (max-width:560px) {
  .support-section {
    min-height:0;
    padding:0 0 34px;
    background:#f7f9f8;
  }
  .support-image {
    top:0;
    right:0;
    bottom:auto;
    left:0;
    height:248px;
    border-radius:0 0 28px 28px;
    background-position:67% center;
    box-shadow:0 16px 28px rgba(7,16,22,.12);
  }
  .support-image video { object-position:67% center; filter:brightness(.94) contrast(1.05) saturate(.92); }
  .support-overlay { background:linear-gradient(180deg,rgba(7,16,22,.08) 0%,rgba(7,16,22,.04) 43%,#f7f9f8 100%); }
  .support-content {
    width:calc(100% - 34px);
    min-height:0;
    padding:206px 0 0;
  }
  .support-brand { display:none; }
  .support-top-action {
    top:15px;
    right:15px;
    min-height:42px;
    padding:0 11px;
    border-radius:13px;
    background:rgba(255,255,255,.92);
    font-size:10px;
  }
  .support-top-action svg { width:18px; height:18px; }
  .support-kicker { margin-bottom:13px; font-size:9px; letter-spacing:.15em; }
  .support-content h2 {
    max-width:100%;
    font-size:clamp(49px,14vw,68px);
    line-height:.86;
  }
  .support-content>p { max-width:100%; margin:20px 0 22px; font-size:15px; line-height:1.5; }
  .support-content .button-row { width:100%; }
  .support-content .button-light { width:100%; min-width:0; min-height:52px; }
  .support-services { display:none; }
  .support-proof-rail {
    position:relative;
    right:auto;
    bottom:auto;
    left:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    width:100%;
    min-height:0;
    margin-top:29px;
    padding:8px;
    border:1px solid rgba(8,178,229,.22);
    border-radius:22px;
    background:rgba(255,255,255,.94);
    box-shadow:0 14px 30px rgba(7,16,22,.08),0 0 0 5px rgba(8,178,229,.035);
  }
  .support-proof-item,
  .support-proof-item:first-child,
  .support-proof-item:last-child {
    align-items:flex-start;
    gap:8px;
    min-height:108px;
    padding:15px 12px !important;
    border-right:1px solid rgba(7,16,22,.1);
    border-bottom:1px solid rgba(7,16,22,.1);
  }
  .support-proof-item:nth-child(2n) { border-right:0; }
  .support-proof-item:nth-child(n+3) { border-bottom:0; }
  .support-proof-icon {
    flex:0 0 34px;
    width:34px;
    height:34px;
    border:1px solid rgba(8,178,229,.32);
    border-radius:11px;
    color:#08a9df;
    background:#effcff;
  }
  .support-proof-icon svg { width:24px; height:24px; }
  .support-proof-item strong { font-size:12px; line-height:1.08; }
  .support-proof-item small { margin-top:6px; font-size:9px; line-height:1.28; }
}

/* Mobile support redesign: separate the vehicle visual from the service story. */
@media (max-width:560px) {
  .support-section {
    min-height:0;
    padding:0 0 34px;
    background:#f7f9f8;
  }
  .support-image {
    top:0;
    right:0;
    bottom:auto;
    left:0;
    height:248px;
    border-radius:0 0 28px 28px;
    background-position:67% center;
    box-shadow:0 16px 28px rgba(7,16,22,.12);
  }
  .support-image video { object-position:67% center; filter:brightness(.94) contrast(1.05) saturate(.92); }
  .support-overlay { background:linear-gradient(180deg,rgba(7,16,22,.08) 0%,rgba(7,16,22,.04) 43%,#f7f9f8 100%); }
  .support-content {
    width:calc(100% - 34px);
    min-height:0;
    padding:206px 0 0;
  }
  .support-brand { display:none; }
  .support-top-action {
    top:15px;
    right:15px;
    min-height:42px;
    padding:0 11px;
    border-radius:13px;
    background:rgba(255,255,255,.92);
    font-size:10px;
  }
  .support-top-action svg { width:18px; height:18px; }
  .support-kicker { margin-bottom:13px; font-size:9px; letter-spacing:.15em; }
  .support-content h2 {
    max-width:100%;
    font-size:clamp(49px,14vw,68px);
    line-height:.86;
  }
  .support-content>p { max-width:100%; margin:20px 0 22px; font-size:15px; line-height:1.5; }
  .support-content .button-row { width:100%; }
  .support-content .button-light { width:100%; min-width:0; min-height:52px; }
  .support-services { display:none; }
  .support-proof-rail {
    position:relative;
    right:auto;
    bottom:auto;
    left:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    width:100%;
    min-height:0;
    margin-top:29px;
    padding:8px;
    border:1px solid rgba(8,178,229,.22);
    border-radius:22px;
    background:rgba(255,255,255,.94);
    box-shadow:0 14px 30px rgba(7,16,22,.08),0 0 0 5px rgba(8,178,229,.035);
  }
  .support-proof-item,
  .support-proof-item:first-child,
  .support-proof-item:last-child {
    align-items:flex-start;
    gap:8px;
    min-height:108px;
    padding:15px 12px !important;
    border-right:1px solid rgba(7,16,22,.1);
    border-bottom:1px solid rgba(7,16,22,.1);
  }
  .support-proof-item:nth-child(2n) { border-right:0; }
  .support-proof-item:nth-child(n+3) { border-bottom:0; }
  .support-proof-icon {
    flex:0 0 34px;
    width:34px;
    height:34px;
    border:1px solid rgba(8,178,229,.32);
    border-radius:11px;
    color:#08a9df;
    background:#effcff;
  }
  .support-proof-icon svg { width:24px; height:24px; }
  .support-proof-item strong { font-size:12px; line-height:1.08; }
  .support-proof-item small { margin-top:6px; font-size:9px; line-height:1.28; }
}

/* Mobile autonomy blogs: one compact touch carousel with the editorial essentials only. */
@media (max-width:560px) {
  .range-details {
    display:flex;
    gap:14px;
    margin:0 -1px;
    padding:3px 1px 12px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:var(--electric) rgba(7,16,22,.1);
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  .range-details::-webkit-scrollbar { height:4px; }
  .range-details::-webkit-scrollbar-track { border-radius:99px; background:rgba(7,16,22,.1); }
  .range-details::-webkit-scrollbar-thumb { border-radius:99px; background:var(--electric); }
  .range-detail-card {
    flex:0 0 min(86vw,360px);
    scroll-snap-align:start;
  }
  .range-detail-media { height:190px; min-height:190px; flex-basis:190px; }
  .range-detail-copy { min-height:148px; padding:17px 18px 18px; }
  .range-blog-kicker { margin-bottom:8px; font-size:10px; }
  .range-detail-copy h3 { font-size:29px; line-height:.94; }
  .range-detail-copy h3::after { width:36px; margin-top:12px; }
  .range-detail-copy > p { display:none; }
  .range-blog-link { width:auto; min-height:40px; justify-content:flex-start; margin-top:14px; padding:0 13px 0 14px; font-size:11px; }
  .range-blog-link span { width:20px; height:20px; font-size:19px; }
}

/* Global Kia EV visual system: one light canvas, one electric accent and one card language. */
:root {
  --electric:#13c9eb;
  --electric-deep:#008fba;
  --electric-glow:rgba(19,201,235,.24);
  --canvas:#f6f9fa;
  --surface:#fff;
  --surface-soft:#edf6f8;
  --dark:#06141e;
  --dark-soft:#0b202b;
  --line-soft:rgba(7,16,22,.11);
  --card-radius:18px;
  --card-shadow:0 14px 34px rgba(7,16,22,.08);
}
body { background:var(--canvas); }
.section-heading h2 em,
.range-intro h2 em,
.charging-copy h2 em,
.support-content h2 em { color:var(--electric); font-style:normal; }
.section-heading h2,
.range-intro h2,
.charging-copy h2,
.support-content h2,
.safety-head h2,
.safety-subsection-heading h3 { text-wrap:balance; }
.journey-item::after { background:var(--electric); }
.journey-item:hover,.journey-item.is-active { color:var(--electric-deep); }
.button { border-radius:8px; }
.button-light:hover,.button-light:focus-visible { background:var(--electric); color:var(--dark); }
.button-dark { background:var(--dark); }
.button-dark:hover,.button-dark:focus-visible { background:var(--dark-soft); box-shadow:0 0 0 3px var(--electric-glow); }
.portfolio-section,
.range-section,
.safety-section,
.gallery-amenities { background:var(--canvas); }
.portfolio-section,
.range-section,
.safety-section { border-top:1px solid rgba(19,201,235,.08); }
.section-heading>p,
.range-intro>p,
.safety-head>p,
.safety-subsection-heading p { color:#52656d; }
.portfolio-highlights { border-color:rgba(19,201,235,.27); background:rgba(255,255,255,.72); box-shadow:0 12px 28px rgba(7,16,22,.05); }
.portfolio-highlight { color:var(--dark); }
.portfolio-highlight-icon { color:var(--electric-deep); }
.vehicle-card,
.range-card,
.range-detail-card { border:1px solid var(--line-soft); border-radius:var(--card-radius); box-shadow:var(--card-shadow); }
.vehicle-card:hover,
.range-card:hover,
.range-detail-card:hover { box-shadow:0 19px 42px rgba(7,16,22,.12); }
.vehicle-image { background-color:var(--surface-soft); }
.section-cta .button { border-color:var(--dark); border-radius:10px; background:var(--dark); box-shadow:0 12px 28px rgba(7,16,22,.15),0 0 0 1px rgba(19,201,235,.18); }
.section-cta .button:hover,.section-cta .button:focus-visible { background:var(--dark-soft); box-shadow:0 16px 32px rgba(7,16,22,.2),0 0 0 3px var(--electric-glow); }
.charging-section { background:radial-gradient(circle at 18% 48%,rgba(19,201,235,.12),transparent 34%),linear-gradient(135deg,#04101a 0%,var(--dark) 58%,#081d28 100%); }
.charging-section::before { border-color:rgba(19,201,235,.18); }
.charging-visual { border-color:rgba(19,201,235,.28); box-shadow:0 0 0 1px rgba(19,201,235,.05),0 18px 42px rgba(0,0,0,.18); }
.charging-label { border:1px solid rgba(19,201,235,.3); border-radius:999px; }
.status-dot { border-color:var(--electric); box-shadow:0 0 0 3px rgba(19,201,235,.16),0 0 16px var(--electric-glow); }
.charge-stat { border-left-color:var(--electric); }
.range-card-feature { background:linear-gradient(145deg,var(--dark-soft),var(--dark)); }
.range-card-image { background-color:var(--surface-soft); }
.range-detail-media { background-color:var(--dark-soft); }
.support-kicker,
.safety-kicker,
.safety-subsection-heading > span { color:var(--electric-deep); }
.support-kicker svg { color:var(--electric); }
.support-content .button-light { border-color:var(--dark); }
.support-content .button-light:hover,.support-content .button-light:focus-visible { background:var(--electric); color:var(--dark); }
.support-proof-rail { border-color:rgba(19,201,235,.18); box-shadow:var(--card-shadow); }
.support-proof-icon { color:var(--electric-deep); }
.gallery-amenities { border-top:1px solid rgba(19,201,235,.12); }
.safety-kicker i { background:linear-gradient(90deg,var(--electric),rgba(19,201,235,.12)); }
.safety-kicker i::before,.safety-kicker i::after { background:var(--electric); }
.safety-head>p { border-left-color:var(--electric); }
.safety-swipe { color:var(--electric-deep); }
.site-footer { background:var(--dark); }
.kia-proof { color:var(--electric) !important; font-style:normal; }
.hero .kia-proof { display:inline-block; color:#70eaff !important; text-shadow:0 0 22px rgba(19,201,235,.28); }
.safety-head .kia-proof,
.safety-subsection-heading .kia-proof { display:inline-block; font-size:.72em; line-height:1; letter-spacing:-.04em; }
.charging-copy h2 em { color:inherit; }
.hero-subtitle { max-width:420px; margin:30px 0 0; color:rgba(255,255,255,.9); font-size:clamp(18px,2vw,26px); font-weight:400; letter-spacing:-.02em; line-height:1.15; }
@media (max-width:560px) { .hero-subtitle { margin-top:24px; font-size:18px; } }
.hero-art { width:100%; height:100%; overflow:hidden; }
.hero-art .motion-video { min-width:100%; min-height:100%; object-fit:cover; transform:scale(1.06); transform-origin:center center; }
@media (max-width:560px) { .hero-art .motion-video { transform:scale(1.08); } }
.journey-nav { scroll-margin-top:0; }
@media (max-width:900px) {
  .journey-nav { top:var(--header-height); margin-top:calc(-1 * var(--header-height)); }
}
@media (max-width:560px) {
  .journey-nav { top:0; margin-top:calc(-1 * var(--header-height)); }
}
@media (max-width:900px) {
  .journey-nav { margin-top:-20px; }
}
@media (max-width:560px) {
  .journey-nav { margin-top:0; }
}

/* Mobile hero: portrait framing without cropping the vehicle from the source video. */
@media (max-width:560px) {
  .hero { min-height:0; aspect-ratio:9 / 16; }
  .hero-content { min-height:0; height:100%; padding-bottom:42px; }
  .hero-art { background-image:url("assets/images/kia-ev9-electrico-vertical.webp"); background-position:center; background-size:cover; }
  .hero-poster img { object-fit:contain; object-position:center; }
  .hero-art .motion-video { min-width:100%; min-height:100%; object-fit:contain; object-position:center; transform:none; background:#243237 url("assets/images/kia-ev9-electrico-vertical.webp") center / cover no-repeat; }
  .hero-art .motion-video img { object-fit:contain; }
}

/* Keep the EV For all message visible above the overlapping desktop journey rail. */
@media (min-width:901px) {
  .hero, .hero-content { min-height:680px; }
  .journey-nav { margin-top:-28px; }
  .hero-content { padding-top:116px; }
  .hero h1 { margin-bottom:0; }
  .hero-subtitle { margin:10px 0 24px; }
  .hero-lede { margin-bottom:24px; }
}
@media (max-width:560px) {
  .hero-subtitle { margin:12px 0 22px; }
}

/* Hero hierarchy: EV For all is the primary message; the original claim is secondary. */
.hero-primary-title { max-width:760px; margin:0; font-size:clamp(64px,7.3vw,112px); line-height:.88; }
.hero-primary-title em { color:#fff; font-style:normal; }
.hero-primary-title, .hero-secondary-title, .hero-lede { text-shadow:0 3px 14px rgba(0,0,0,.72),0 1px 3px rgba(0,0,0,.9); }
.hero-secondary-title { max-width:560px; margin:22px 0 0; color:rgba(255,255,255,.94); font-family:"Kia Signature",Arial,sans-serif; font-size:clamp(18px,2vw,27px); font-weight:400; letter-spacing:-.02em; line-height:1.25; }
@media (max-width:560px) {
  .hero-primary-title { max-width:355px; font-size:clamp(48px,14vw,72px); line-height:.9; }
  .hero-secondary-title { max-width:340px; margin-top:18px; font-size:18px; line-height:1.25; }
}

/* The support section is intentionally kept focused; remove the secondary carousel from the composition. */
.support-services { display:none !important; }

/* Portfolio highlights carousel: compact on smaller screens and fully visible on desktop. */
.portfolio-progress-button { display:block; min-width:32px; min-height:32px; padding:13px 3px; border:0; background:transparent; cursor:pointer; }
.portfolio-progress-button span { display:block; width:22px; height:2px; margin:0 auto; background:#c4cacc; transition:width .3s ease,background .3s ease,box-shadow .3s ease; }
.portfolio-progress-button.is-active span { width:28px; background:#16b9cd; box-shadow:0 0 10px rgba(22,185,205,.55); }
.portfolio-highlight.is-active { color:var(--dark); }
.portfolio-highlight.is-active .portfolio-highlight-icon { color:var(--electric-deep); }
@keyframes portfolio-highlight-enter { from { opacity:0; transform:translateX(22px); } to { opacity:1; transform:translateX(0); } }
@media (max-width:900px) {
  .portfolio-highlights { display:grid; grid-template-columns:1fr; align-items:stretch; }
  .portfolio-highlights .portfolio-highlight { display:none; flex:none; min-height:42px; border-right:0; }
  .portfolio-highlights .portfolio-highlight.is-active { display:flex; animation:portfolio-highlight-enter .45s var(--ease) both; }
  .portfolio-progress { justify-content:center; padding:8px 0 1px; }
  .portfolio-progress-button { min-height:28px; padding:10px 3px; }
}
@media (max-width:560px) {
  .portfolio-highlights { display:flex; width:100%; max-width:400px; min-height:0; margin-right:auto; margin-left:auto; padding:7px 12px 5px; border-radius:18px; }
  .portfolio-highlights .portfolio-highlight { min-height:32px; justify-content:center; gap:8px; padding:3px 4px; font-size:10px; letter-spacing:.055em; }
  .portfolio-highlights .portfolio-highlight.is-active { align-self:center; width:100%; }
  .portfolio-highlight-icon { flex-basis:22px; width:22px; height:22px; }
  .portfolio-highlight-icon svg { width:22px; height:22px; }
  .portfolio-progress { align-self:center; width:max-content; flex:0 0 auto; min-height:19px; gap:9px; margin-right:auto; margin-left:auto; padding:2px 0 0; justify-content:center; }
  .portfolio-progress-button { display:grid; min-width:32px; min-height:19px; padding:6px 2px; place-items:center; }
  .portfolio-progress-button span { width:16px; }
  .portfolio-progress-button.is-active span { width:22px; }
}
@media (prefers-reduced-motion:reduce) {
  .portfolio-highlights .portfolio-highlight.is-active { animation:none; }
  .portfolio-progress-button span { transition:none; }
}

/* Vehicle gallery: one breathable horizontal row with touch-friendly snapping. */
.portfolio-section .vehicle-grid { display:flex; flex-wrap:nowrap; align-items:stretch; gap:14px; overflow-x:auto; overflow-y:hidden; padding:4px 4px 16px; scroll-padding-inline:4px; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:rgba(18,181,202,.65) transparent; }
.portfolio-section .vehicle-card { flex:0 0 clamp(220px,22vw,260px); scroll-snap-align:start; }
.portfolio-section .vehicle-grid::-webkit-scrollbar { height:6px; }
.portfolio-section .vehicle-grid::-webkit-scrollbar-track { background:transparent; }
.portfolio-section .vehicle-grid::-webkit-scrollbar-thumb { border-radius:999px; background:rgba(18,181,202,.65); }
@media (max-width:900px) {
  .portfolio-section .vehicle-card { flex-basis:240px; }
}
@media (max-width:560px) {
  .portfolio-section .vehicle-grid { gap:12px; padding:3px 3px 14px; }
  .portfolio-section .vehicle-card { flex-basis:min(78vw,250px); }
}

/* Support polish: remove the brand lockup and give the benefit rail more breathing room. */
.support-brand { display:none !important; }
.support-content { padding-top:104px; }
.support-proof-rail { right:auto; bottom:82px; left:50%; width:min(100%,820px); transform:translateX(-50%); }
.support-proof-item { align-items:center; }
.support-proof-item > span:last-child { display:flex; min-height:56px; flex-direction:column; justify-content:center; }
.support-proof-item strong { line-height:1.12; }
.support-proof-item small { margin-top:8px; line-height:1.35; }
@media (max-width:900px) {
  .support-content { padding-top:370px; }
  .support-proof-rail { right:auto; bottom:auto; left:auto; width:100%; margin-top:37px; transform:none; }
}
@media (max-width:560px) {
  .support-content { padding-top:300px; }
  .support-proof-rail { margin-top:34px; }
}

/* Support rail v2: centered four-column rhythm with vertically balanced content. */
/* Cascade guard: keep the final rail geometry stable after the legacy support rules. */
.support-brand { display:none !important; }
.support-services { display:none !important; }
.support-content { padding-top:104px !important; }
.support-proof-rail { position:absolute !important; right:auto !important; bottom:104px !important; left:50% !important; display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; width:min(100%,1020px) !important; min-height:148px !important; padding:22px 30px !important; transform:translateX(-50%) !important; }
.support-proof-item { display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; gap:9px !important; min-width:0 !important; padding:0 22px !important; text-align:center !important; }
.support-proof-item:first-child,.support-proof-item:last-child { padding-right:22px !important; padding-left:22px !important; border-right:0 !important; }
.support-proof-icon { display:grid !important; flex:0 0 34px !important; place-items:center !important; width:34px !important; height:34px !important; }
.support-proof-icon svg { width:31px !important; height:31px !important; }
.support-proof-item > span:last-child { display:flex !important; min-height:0 !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; }
.support-proof-item strong { color:#071016 !important; font-size:13px !important; line-height:1.15 !important; }
.support-proof-item small { margin-top:6px !important; color:#647278 !important; font-size:10px !important; line-height:1.3 !important; }
@media (max-width:1100px) {
  .support-proof-rail { width:min(100%,820px) !important; padding-right:18px !important; padding-left:18px !important; }
  .support-proof-item { padding-right:12px !important; padding-left:12px !important; }
  .support-proof-item:first-child,.support-proof-item:last-child { padding-right:12px !important; padding-left:12px !important; }
}
@media (max-width:900px) {
  .support-content { padding-top:370px !important; }
  .support-proof-rail { position:relative !important; right:auto !important; bottom:auto !important; left:auto !important; width:100% !important; min-height:0 !important; margin-top:37px !important; padding:20px 14px !important; transform:none !important; }
  .support-proof-item { padding-right:8px !important; padding-left:8px !important; }
  .support-proof-item:first-child,.support-proof-item:last-child { padding-right:8px !important; padding-left:8px !important; }
}
@media (max-width:560px) {
  .support-content { padding-top:300px !important; }
  .support-proof-rail { margin-top:34px !important; padding:18px 12px !important; }
  .support-proof-item { gap:7px !important; padding-right:5px !important; padding-left:5px !important; }
  .support-proof-item:first-child,.support-proof-item:last-child { padding-right:5px !important; padding-left:5px !important; }
  .support-proof-icon { flex-basis:29px !important; width:29px !important; height:29px !important; }
  .support-proof-icon svg { width:27px !important; height:27px !important; }
  .support-proof-item strong { font-size:11px !important; }
  .support-proof-item small { font-size:8px !important; }
}
.support-proof-rail { right:auto; bottom:104px; left:50%; width:min(100%,1020px); min-height:148px; padding:22px 30px; transform:translateX(-50%); }
.support-proof-item { flex-direction:column; align-items:center; justify-content:center; gap:9px; padding:0 22px; text-align:center; }
.support-proof-item:first-child { padding-left:22px; }
.support-proof-item:last-child { padding-right:22px; }
.support-proof-icon { flex-basis:34px; width:34px; height:34px; }
.support-proof-icon svg { width:31px; height:31px; }
.support-proof-item > span:last-child { min-height:0; align-items:center; }
.support-proof-item strong { font-size:13px; line-height:1.15; }
.support-proof-item small { margin-top:6px; font-size:10px; line-height:1.3; }
@media (max-width:1100px) {
  .support-proof-rail { width:min(100%,820px); padding-right:18px; padding-left:18px; }
  .support-proof-item { padding-right:12px; padding-left:12px; }
  .support-proof-item:first-child { padding-left:12px; }
  .support-proof-item:last-child { padding-right:12px; }
}
@media (max-width:900px) {
  .support-proof-rail { right:auto; bottom:auto; left:auto; width:100%; min-height:0; margin-top:37px; padding:20px 14px; transform:none; }
  .support-proof-item { padding:0 8px; }
  .support-proof-item:first-child,.support-proof-item:last-child { padding-right:8px; padding-left:8px; }
}
@media (max-width:560px) {
  .support-proof-rail { margin-top:34px; padding:18px 12px; }
  .support-proof-item { gap:7px; padding:0 5px; }
  .support-proof-item:first-child,.support-proof-item:last-child { padding-right:5px; padding-left:5px; }
  .support-proof-icon { flex-basis:29px; width:29px; height:29px; }
  .support-proof-icon svg { width:27px; height:27px; }
  .support-proof-item strong { font-size:11px; }
  .support-proof-item small { font-size:8px; }
}

/* Support composition v2: clear left copy, full-bleed workshop visual and a compact service card. */
.support-section { min-height:820px; color:#071016; background:#edf2f2; }
.support-image { top:0; right:0; bottom:0; left:0; background:#dfe7e6 url("assets/images/maintenance-kia.webp") 68% center/cover no-repeat; }
.support-image video { object-position:68% center; filter:brightness(.94) contrast(1.04) saturate(.88); }
.support-overlay { background:linear-gradient(90deg,#f6f8f7 0%,rgba(246,248,247,.99) 23%,rgba(246,248,247,.91) 34%,rgba(246,248,247,.58) 49%,rgba(246,248,247,.13) 72%,transparent 100%),linear-gradient(0deg,rgba(246,248,247,.18),transparent 55%); }
.support-content { width:min(1580px,calc(100% - 144px)); min-height:820px; justify-content:flex-start; padding-top:35px; padding-bottom:228px; }
.support-brand { display:flex; align-items:center; gap:14px; margin-bottom:70px; color:#071016; }
.support-brand img { width:70px; }
.support-brand span { padding-left:14px; border-left:1px solid rgba(7,16,22,.28); font-size:18px; font-weight:700; }
.support-kicker { display:flex; align-items:center; gap:12px; margin-bottom:18px; color:#00a8d8; font-size:11px; font-weight:800; letter-spacing:.2em; }
.support-kicker svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.support-content h2 { max-width:610px; color:#071016; font-size:clamp(64px,6.2vw,104px); line-height:.86; letter-spacing:-.06em; }
.support-content h2 em { color:#071016; }
.support-content>p { max-width:500px; margin:29px 0 28px; color:#38474d; font-size:17px; line-height:1.55; }
.support-content .button-light { min-width:266px; min-height:57px; border-radius:7px; background:#071016; color:#fff; box-shadow:0 11px 24px rgba(7,16,22,.16); font-size:13px; }
.support-content .button-light span { color:#fff; font-size:20px; }
.support-content .button-light:hover,.support-content .button-light:focus-visible { background:#19303a; color:#fff; }
.support-top-action { position:absolute; z-index:3; top:28px; right:4.5%; display:inline-flex; align-items:center; gap:20px; min-height:56px; padding:0 21px; border:1px solid rgba(7,16,22,.08); border-radius:18px; color:#071016; background:rgba(255,255,255,.88); box-shadow:0 10px 24px rgba(7,16,22,.09); font-size:13px; font-weight:800; backdrop-filter:blur(8px); transition:transform .25s var(--ease),background .2s ease,box-shadow .2s ease; }
.support-top-action svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-top-action:hover,.support-top-action:focus-visible { background:#fff; box-shadow:0 14px 28px rgba(7,16,22,.15); transform:translateY(-2px); }
.support-services { position:absolute; right:0; bottom:40px; left:auto; width:min(100%,690px); margin:0; }
.support-services-head { position:absolute; inset:0; z-index:4; display:block; margin:0; pointer-events:none; }
.support-services-head > div:first-child { display:none; }
.support-services-controls { position:absolute; top:50%; right:-70px; left:auto; display:flex; align-items:center; justify-content:flex-end; gap:8px; transform:translateY(-50%); pointer-events:none; }
.support-service-control { width:52px; height:52px; border:1px solid rgba(7,16,22,.16); color:#071016; background:rgba(255,255,255,.92); box-shadow:0 8px 20px rgba(7,16,22,.1); pointer-events:auto; }
.support-service-control:hover,.support-service-control:focus-visible { border-color:#08b2e5; color:#fff; background:#08b2e5; }
.support-services-viewport { min-height:220px; border:1px solid rgba(255,255,255,.72); border-radius:21px; background:rgba(255,255,255,.88); box-shadow:0 18px 36px rgba(7,16,22,.13); backdrop-filter:blur(10px); }
.support-services-track { transition:transform .7s var(--ease); }
.support-service-card { position:relative; display:block; min-height:220px; padding:42px 120px 30px 50px; color:#071016; background:transparent; }
.support-service-card::before,.support-service-card::after { display:none; }
.support-service-card > div { position:relative; z-index:1; max-width:450px; }
.support-service-icon { position:absolute; z-index:2; top:30px; right:35px; display:grid; place-items:center; width:70px; height:70px; border:1px solid #08b2e5; border-radius:50%; color:#08b2e5; background:rgba(255,255,255,.45); box-shadow:0 0 0 14px rgba(8,178,229,.08); }
.support-service-icon svg { width:36px; height:36px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-service-index { display:block; margin-bottom:10px; color:#00a8d8; font-size:10px; font-weight:800; letter-spacing:.16em; }
.support-service-card h3 { max-width:370px; margin:0; color:#071016; font-size:clamp(30px,2.7vw,42px); line-height:.93; letter-spacing:-.05em; }
.support-service-card p { max-width:380px; margin:14px 0 0; color:#4d5a60; font-size:14px; line-height:1.48; }
.support-service-more { min-height:38px; margin-top:14px; padding:0 13px; border-color:rgba(7,16,22,.18); color:#071016; }
.support-service-more:hover,.support-service-more:focus-visible { background:#071016; color:#fff; }
.support-services-footer { position:absolute; right:0; bottom:-26px; left:0; display:flex; justify-content:center; padding:0; }
.support-service-dots { gap:5px; }
.support-service-dot { width:24px; height:20px; }
.support-service-dot span { width:6px; height:6px; border-color:#08b2e5; }
.support-service-dot.is-active span { width:20px; background:#08b2e5; }
.support-services-counter { display:none; }
.support-proof-rail { position:absolute; right:auto; bottom:46px; left:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:min(100%,770px); min-height:112px; padding:21px 25px; border:1px solid rgba(255,255,255,.65); border-radius:24px; background:rgba(255,255,255,.84); box-shadow:0 15px 30px rgba(7,16,22,.1); backdrop-filter:blur(10px); }
.support-proof-item { gap:11px; padding:0 16px; border-right:1px solid rgba(7,16,22,.12); }
.support-proof-item:first-child { padding-left:8px; }
.support-proof-item:last-child { padding-right:0; border-right:0; }
.support-proof-icon { flex-basis:31px; width:31px; height:31px; color:#071016; }
.support-proof-icon svg { width:28px; height:28px; }
.support-proof-item strong { color:#071016; font-size:12px; line-height:1.05; }
.support-proof-item small { margin-top:7px; color:#647278; font-size:9px; line-height:1.25; }
.support-content::after { position:absolute; bottom:14px; left:18px; padding-left:39px; color:#1c333a; content:"Cuidamos tu Kia eléctrico,\A cuidamos el futuro."; white-space:pre; font-size:11px; line-height:1.35; }
.support-content::before { position:absolute; bottom:22px; left:0; width:24px; height:24px; border:2px solid #20c9b1; border-radius:50% 50% 50% 4px; content:""; transform:rotate(-28deg); }
@media (max-width:1100px) {
  .support-content { width:min(100% - 72px,1200px); }
  .support-services { width:min(100%,610px); }
  .support-proof-rail { width:min(100%,650px); }
  .support-proof-item { padding-right:9px; padding-left:9px; }
  .support-services-controls { right:-58px; }
}
@media (max-width:900px) {
  .support-section { min-height:1160px; }
  .support-image { height:390px; bottom:auto; }
  .support-image video { object-position:68% center; }
  .support-overlay { background:linear-gradient(180deg,rgba(246,248,247,.04) 0%,rgba(246,248,247,.08) 18%,rgba(246,248,247,.88) 38%,#f6f8f7 53%,#f6f8f7 100%); }
  .support-content { width:min(100% - 44px,680px); min-height:1160px; padding-top:370px; padding-bottom:265px; }
  .support-brand { position:absolute; top:26px; left:0; margin:0; }
  .support-top-action { top:20px; right:22px; min-height:48px; padding:0 15px; border-radius:14px; font-size:11px; }
  .support-top-action svg { width:20px; height:20px; }
  .support-content h2 { max-width:550px; font-size:clamp(58px,9vw,84px); }
  .support-content>p { max-width:500px; font-size:15px; }
  .support-services { position:relative; right:auto; bottom:auto; width:100%; margin-top:45px; }
  .support-services-controls { right:7px; left:auto; transform:none; top:-23px; }
  .support-service-control { width:45px; height:45px; }
  .support-proof-rail { position:relative; right:auto; bottom:auto; left:auto; width:100%; margin-top:37px; }
  .support-content::after,.support-content::before { display:none; }
}
@media (max-width:560px) {
  .support-section { min-height:1260px; }
  .support-image { height:315px; background-position:70% center; }
  .support-image video { object-position:70% center; }
  .support-content { width:calc(100% - 34px); min-height:1260px; padding-top:300px; padding-bottom:305px; }
  .support-brand { top:20px; }
  .support-brand img { width:61px; }
  .support-brand span { font-size:15px; }
  .support-top-action { top:16px; right:17px; gap:8px; min-height:42px; padding:0 10px; font-size:10px; }
  .support-top-action svg { width:18px; height:18px; }
  .support-kicker { gap:8px; margin-bottom:14px; font-size:9px; letter-spacing:.14em; }
  .support-content h2 { font-size:clamp(51px,14vw,70px); }
  .support-content>p { margin:23px 0 25px; font-size:14px; }
  .support-content .button-light { width:100%; min-width:0; min-height:53px; }
  .support-services { margin-top:38px; }
  .support-services-viewport { min-height:205px; border-radius:17px; }
  .support-service-card { min-height:205px; padding:33px 72px 26px 25px; }
  .support-service-icon { top:22px; right:19px; width:52px; height:52px; box-shadow:0 0 0 9px rgba(8,178,229,.08); }
  .support-service-icon svg { width:27px; height:27px; }
  .support-service-card h3 { font-size:29px; }
  .support-service-card p { margin-top:11px; font-size:13px; }
  .support-service-more { display:none; }
  .support-services-footer { bottom:-24px; }
  .support-proof-rail { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 4px; min-height:0; margin-top:34px; padding:18px 12px; border-radius:18px; }
  .support-proof-item,.support-proof-item:first-child,.support-proof-item:last-child { padding:0 6px; border-right:0; }
  .support-proof-item strong { font-size:11px; }
  .support-proof-item small { font-size:8px; }
}

/* Support carousel: postventa benefits with a compact, touch-friendly rail. */
.support-services { width:min(100%,760px); margin-top:42px; }
.support-services-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:14px; }
.support-services-kicker { display:block; margin-bottom:8px; color:#27d4e5; font-size:10px; font-weight:800; letter-spacing:.16em; }
.support-services-head strong { color:#fff; font-size:20px; font-weight:700; letter-spacing:-.02em; }
.support-services-head em { color:#27d4e5; font-style:normal; }
.support-services-controls { display:flex; gap:8px; }
.support-service-control { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid rgba(255,255,255,.45); border-radius:50%; color:#fff; background:rgba(3,14,20,.32); font-size:20px; transition:background .2s ease,border-color .2s ease,transform .25s var(--ease); }
.support-service-control:hover,.support-service-control:focus-visible { border-color:#27d4e5; background:#27d4e5; color:#071016; transform:translateY(-2px); }
.support-service-control:focus-visible,.support-service-dot:focus-visible { outline:2px solid #27d4e5; outline-offset:3px; }
.support-services-viewport { overflow:hidden; touch-action:pan-x pan-y; border:1px solid rgba(89,210,226,.42); border-radius:12px; background:rgba(3,16,24,.62); box-shadow:0 14px 30px rgba(0,0,0,.18); backdrop-filter:blur(9px); }
.support-services-viewport:focus-visible { outline:2px solid #27d4e5; outline-offset:4px; }
.support-services-track { display:flex; width:100%; transition:transform .65s var(--ease); will-change:transform; }
.support-service-card { display:grid; grid-template-columns:58px minmax(0,1fr); align-items:center; gap:20px; flex:0 0 100%; min-height:142px; padding:22px 25px; }
.support-service-icon { display:grid; place-items:center; width:58px; height:58px; border:1px solid rgba(39,212,229,.75); border-radius:50%; color:#27d4e5; background:rgba(39,212,229,.08); box-shadow:0 0 22px rgba(39,212,229,.14); }
.support-service-icon svg { width:30px; height:30px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-service-index { display:block; margin-bottom:7px; color:#27d4e5; font-size:10px; font-weight:800; letter-spacing:.14em; }
.support-service-card h3 { margin:0; color:#fff; font-size:clamp(23px,2.2vw,31px); line-height:.98; letter-spacing:-.035em; }
.support-service-card p { max-width:500px; margin:8px 0 0; color:rgba(238,248,250,.76); font-size:13px; line-height:1.45; }
.support-services-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 4px 0; }
.support-service-dots { display:flex; align-items:center; gap:7px; }
.support-service-dot { display:grid; place-items:center; width:28px; height:22px; padding:0; border:0; background:transparent; }
.support-service-dot span { display:block; width:7px; height:7px; border:1px solid #27d4e5; border-radius:50%; opacity:.6; transition:width .3s var(--ease),background .3s ease,opacity .3s ease; }
.support-service-dot.is-active span { width:24px; border-radius:5px; background:#27d4e5; opacity:1; }
.support-services-counter { color:rgba(238,248,250,.68); font-size:10px; font-weight:800; letter-spacing:.12em; }
.support-services-counter b { color:#27d4e5; }
@media (max-width:900px) {
  .support-services { margin-top:34px; }
  .support-content { padding-bottom:46px; }
}
@media (max-width:560px) {
  .support-services { margin-top:30px; }
  .support-services-head { align-items:flex-start; }
  .support-services-head strong { font-size:18px; }
  .support-service-card { grid-template-columns:48px minmax(0,1fr); gap:14px; min-height:154px; padding:20px 18px; }
  .support-service-icon { width:48px; height:48px; }
  .support-service-icon svg { width:25px; height:25px; }
  .support-service-card h3 { font-size:24px; }
  .support-service-card p { font-size:15px; line-height:1.42; }
}
@media (prefers-reduced-motion:reduce) {
  .support-services-track { transition:none; }
  .support-service-control,.support-service-icon { transition:none; }
}

/* Support refinement: keep the video visible while giving the service story a precise editorial composition. */
.support-section { min-height:820px; color:#071016; background:#f7f9f8; }
.support-image { top:0; right:0; bottom:0; left:31%; background:#dfe7e6 url("assets/images/maintenance-kia.webp") 65% center/cover no-repeat; }
.support-image video { object-position:65% center; filter:brightness(.9) contrast(1.06) saturate(.9); }
.support-overlay { background:linear-gradient(90deg,#f7f9f8 0%,#f7f9f8 18%,rgba(247,249,248,.96) 33%,rgba(247,249,248,.62) 52%,rgba(247,249,248,.1) 77%,transparent 100%),linear-gradient(0deg,rgba(247,249,248,.34),transparent 64%); }
.support-content { width:min(1520px,calc(100% - 96px)); min-height:820px; justify-content:flex-start; padding-top:34px; padding-bottom:270px; }
.support-brand { display:flex; align-items:center; gap:14px; margin-bottom:73px; color:#071016; }
.support-brand img { display:block; width:70px; height:auto; }
.support-brand span { padding-left:14px; border-left:1px solid rgba(7,16,22,.28); font-size:17px; font-weight:700; }
.support-kicker { display:flex; align-items:center; gap:12px; margin-bottom:17px; color:#00a8d8; font-size:11px; font-weight:800; letter-spacing:.18em; }
.support-kicker svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.support-content h2 { max-width:570px; color:#071016; font-size:clamp(58px,6.7vw,100px); line-height:.86; letter-spacing:-.055em; text-wrap:balance; }
.support-content>p { max-width:560px; margin:31px 0 28px; color:#34434a; font-size:16px; line-height:1.58; }
.support-content .button-light { min-width:225px; min-height:54px; border-radius:7px; background:#071016; color:#fff; box-shadow:0 10px 24px rgba(7,16,22,.18); font-size:13px; }
.support-content .button-light:hover,.support-content .button-light:focus-visible { background:#18303a; color:#fff; box-shadow:0 12px 26px rgba(7,16,22,.26),0 0 0 3px rgba(8,178,229,.2); }
.support-content .button-light span { color:#fff; font-size:19px; }
.support-services { position:absolute; bottom:67px; left:0; width:min(100%,820px); margin:0; }
.support-services-head { position:absolute; inset:0; z-index:4; display:block; margin:0; pointer-events:none; }
.support-services-head > div:first-child { display:none; }
.support-services-controls { position:absolute; top:50%; right:-80px; left:-80px; display:flex; align-items:center; justify-content:space-between; transform:translateY(-50%); pointer-events:none; }
.support-service-control { width:58px; height:58px; border:1px solid rgba(8,178,229,.26); color:#071016; background:rgba(255,255,255,.9); box-shadow:0 7px 18px rgba(7,16,22,.08); pointer-events:auto; }
.support-service-control:hover,.support-service-control:focus-visible { border-color:#08b2e5; background:#08b2e5; color:#fff; }
.support-services-viewport { min-height:250px; border:1px solid rgba(8,178,229,.2); border-radius:14px; background:#fff; box-shadow:0 14px 32px rgba(7,16,22,.1); }
.support-services-track { transition:transform .7s var(--ease); }
.support-service-card { position:relative; display:block; min-height:250px; padding:43px 82px 30px 46%; color:#071016; background:#fff; }
.support-service-card::before { position:absolute; top:0; bottom:0; left:0; width:43%; background:#eef5f5 url("assets/images/maintenance-kia.webp") 65% center/cover no-repeat; content:""; }
.support-service-card:nth-child(2)::before { background-image:url("assets/images/range-wltp-ev3.webp"); }
.support-service-card:nth-child(3)::before { background-image:url("assets/images/range-app.webp"); }
.support-service-card:nth-child(4)::before { background-image:url("assets/images/range-egmp.webp"); }
.support-service-card:nth-child(5)::before { background-image:url("assets/images/maintenance-kia.webp"); }
.support-service-card::after { position:absolute; top:27px; left:15%; width:88px; height:88px; border:1px solid rgba(39,212,229,.75); border-radius:50%; box-shadow:0 0 0 15px rgba(39,212,229,.08); content:""; opacity:.9; }
.support-service-card > div { position:relative; z-index:1; max-width:310px; }
.support-service-icon { position:absolute; z-index:2; top:25px; right:27px; display:grid; place-items:center; width:54px; height:54px; border:1px solid #08b2e5; border-radius:14px; color:#08b2e5; background:rgba(255,255,255,.72); }
.support-service-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-service-index { display:block; margin-bottom:12px; color:#5e6d73; font-size:10px; font-weight:800; letter-spacing:.14em; }
.support-service-card h3 { margin:0; color:#071016; font-size:clamp(28px,2.5vw,38px); line-height:.94; letter-spacing:-.045em; }
.support-service-card p { max-width:310px; margin:16px 0 0; color:#46545a; font-size:13px; line-height:1.5; }
.support-service-more { display:inline-flex; align-items:center; gap:14px; min-height:40px; margin-top:17px; padding:0 13px; border:1px solid rgba(7,16,22,.22); border-radius:7px; color:#071016; font-size:11px; font-weight:800; transition:background .2s ease,color .2s ease,transform .25s var(--ease); }
.support-service-more span { font-size:17px; font-weight:400; }
.support-service-more:hover,.support-service-more:focus-visible { background:#071016; color:#fff; transform:translateY(-2px); }
.support-services-footer { padding:11px 4px 0; }
.support-service-dot span { border-color:#08b2e5; }
.support-service-dot.is-active span { background:#08b2e5; }
.support-services-counter { color:#5e6d73; }
.support-services-counter b { color:#08a9df; }
.support-proof-rail { position:absolute; right:0; bottom:46px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:min(100%,770px); min-height:112px; padding:22px 24px; border:1px solid rgba(7,16,22,.05); border-radius:25px; background:rgba(255,255,255,.94); box-shadow:0 14px 32px rgba(7,16,22,.09); }
.support-proof-item { display:flex; align-items:center; gap:12px; min-width:0; padding:0 17px; border-right:1px solid rgba(7,16,22,.1); }
.support-proof-item:first-child { padding-left:8px; }
.support-proof-item:last-child { padding-right:0; border-right:0; }
.support-proof-icon { display:grid; flex:0 0 31px; place-items:center; width:31px; height:31px; color:#071016; }
.support-proof-icon svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.support-proof-item strong,.support-proof-item small { display:block; }
.support-proof-item strong { color:#071016; font-size:12px; line-height:1.05; }
.support-proof-item small { margin-top:7px; color:#68757a; font-size:9px; line-height:1.25; }
@media (max-width:1100px) {
  .support-content { width:min(100% - 64px,1100px); }
  .support-services { width:min(100%,720px); }
  .support-proof-rail { width:min(100%,650px); }
  .support-proof-item { padding-right:10px; padding-left:10px; }
}
@media (max-width:900px) {
  .support-section { min-height:900px; }
  .support-image { right:0; bottom:auto; left:0; height:360px; background-position:center; }
  .support-image video { object-position:center; }
  .support-overlay { background:linear-gradient(180deg,rgba(247,249,248,.02) 0%,rgba(247,249,248,.1) 16%,#f7f9f8 42%,#f7f9f8 100%); }
  .support-content { width:min(100% - 44px,680px); min-height:900px; padding-top:55px; padding-bottom:38px; }
  .support-brand { margin-bottom:235px; }
  .support-services { position:relative; bottom:auto; left:auto; width:100%; margin-top:34px; }
  .support-services-controls { right:8px; left:8px; }
  .support-service-control { width:48px; height:48px; }
  .support-proof-rail { position:relative; right:auto; bottom:auto; width:100%; margin-top:24px; }
}
@media (max-width:560px) {
  .support-section { min-height:1040px; }
  .support-image { height:300px; }
  .support-content { min-height:1040px; width:calc(100% - 34px); padding-top:28px; }
  .support-brand { margin-bottom:182px; }
  .support-brand img { width:62px; }
  .support-brand span { font-size:15px; }
  .support-kicker { font-size:9px; letter-spacing:.12em; }
  .support-content h2 { font-size:clamp(48px,14vw,70px); }
  .support-content>p { margin:25px 0 27px; font-size:15px; }
  .support-content .button-light { width:100%; }
  .support-services { margin-top:30px; }
  .support-services-viewport { min-height:248px; }
  .support-service-card { min-height:248px; padding:32px 18px 25px 43%; }
  .support-service-card::before { width:38%; }
  .support-service-card::after { left:9%; width:58px; height:58px; }
  .support-service-icon { top:18px; right:16px; width:43px; height:43px; border-radius:11px; }
  .support-service-icon svg { width:23px; height:23px; }
  .support-service-card h3 { font-size:24px; }
  .support-service-card p { margin-top:12px; font-size:14px; }
  .support-service-more { margin-top:14px; }
  .support-services-controls { top:-25px; right:0; left:auto; gap:8px; transform:none; }
  .support-service-control { width:42px; height:42px; }
  .support-proof-rail { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 4px; min-height:0; padding:18px 12px; border-radius:18px; }
  .support-proof-item,.support-proof-item:first-child,.support-proof-item:last-child { padding:0 6px; border-right:0; }
  .support-proof-item strong { font-size:11px; }
  .support-proof-item small { font-size:8px; }
}

/* Final support visual override: use the supplied static workshop image across the full section. */
.support-image {
  background-image:url("assets/images/kia-support-technician-v2.webp") !important;
  background-size:cover !important;
  background-position:65% center !important;
}
.support-image video { display:none !important; }
@media (max-width:560px) {
  .support-image { background-position:70% center !important; }
}
