PageSourceSearch

https://www.polestar.com/products/static/assets/route-C57U6rCI.js

js polestar.com collected 2026-09-24 08:33:44 UTC 29,004 bytes, 268 lines download raw bytes

1import{r as l,a as we,u as se,w as et}from"./chunk-BV7QT456-ClmWjlzX.js";import{j as e}from"./index-odidbifR.js";import{S as Ee,m as tt,g as it}from"./SupportDialog-BFmFpije.js";import{cL as ge,an as q,bK as X,E as O,M as E,bI as re,n,ai as F,bG as ye,r as I,S as a,G as W,t as L,bH as ke,b4 as A,u as at,K as V,J as oe,aB as Le,bJ as ne,ba as M,m as G,g as y,ac as le,a_ as Ae,aH as st,c as rt,cM as ot,cN as nt,cp as lt,aw as _,cO as dt,cP as ct,ab as mt,aS as be,W as xt,cQ as ut,af as de,aM as J,V as pt,C as H,aR as ce,cu as gt,k as bt,B as ht,bF as ft,ae as vt,bO as Z,ag as Be,aU as De,cR as Ne,a5 as Te,N as Ce,ah as C,bM as Oe,aV as ee,a as P,aa as S,bP as te,bN as Me,bQ as It,a6 as Q,bR as jt,a7 as he,h as $,a8 as Rt,a9 as $e,w as _e,x as Pe,q as Fe,cS as St,bC as wt,bL as Et,aO as yt,cT as kt,cU as Lt,ay as We,aq as fe,y as At}from"./root-BjqBh5PT.js";import{C as D}from"./Colors-DRjy1RYz.js";import{F as Bt,T as Ve,M as Dt,a as Nt}from"./MicroConfigurator-Dft36k8p.js";import{I as Ge}from"./InitialCssCustomProperties-DGzzNgKp.js";import{E as He}from"./EnergyLabelSection-A3tsxzmI.js";import{g as Ye,S as Ue}from"./getHasSubNavigation-CNTAhfwO.js";import{u as ze}from"./useMultipleInView-BFQbI5V5.js";import{D as ie}from"./Analytics-gDA2l2tW.js";import{I as Tt,C as Ct}from"./CreditsSection-D135ReXI.js";import"./Checkbox-CID76vuT.js";import"./ImageSequence-C4aTCwz6.js";import"./useScrollEdges-tKIybNsc.js";const z=n(F)`
2  ${E.desktop} {
3    position: relative;
4    ${re}
5  }
6`,Ot=n(V)`
7  position: absolute;
8  inset: 0;
9  width: 100%;
10  height: 100%;
11`,Mt=n(V)`
12  width: 100%;
13`,$t=n(X)`
14  position: relative;
15  width: 100%;
16  height: 100%;
17`,_t=n(W,{shouldForwardProp:i=>i!=="direction"})`
18  position: relative;
19  top: 0;
20  ${re}
21  width: 100%;
22  place-items: end start;
23  padding-bottom: ${a.xxxLarge};
24  direction: ltr;
25  > * {
26    direction: ${({direction:i})=>i};
27  }
28`,Xe=n(oe)`
29  line-height: 100%;
30`,ve=({text:i,isMobile:o,sectionId:r})=>{const s=l.useRef(null),d=ye(s),c=o?"-mobile-section":"-tablet-section";return e.jsxs(Mt,{"data-testid":r+c,children:[e.jsx(I,{spacing:{mobile:a.xxLarge,tablet:a.xxLarge}}),e.jsx(W,{children:e.jsxs(L,{ref:s,span:{mobile:4,tablet:8},children:[i&&e.jsx(ke,{isInView:d,index:0,children:e.jsx(Xe,{variant:A.titleResponsive,level:3,children:i})}),e.jsx(I,{spacing:a.small})]})})]})},Pt=({text:i,sectionId:o})=>{const r=l.useRef(null),s=ye(r),{direction:d}=at();return e.jsx(Ot,{"data-testid":o+"-desktop-section",children:e.jsx(_t,{direction:d,children:e.jsx(L,{ref:r,span:{mobile:4,tablet:6,desktop:5},children:i&&e.jsx(ke,{isInView:s,index:0,children:e.jsx(Xe,{variant:A.titleResponsive,level:2,children:i})})})})})},me=l.forwardRef(({text:i,media:o,sectionId:r},s)=>{const d=o?.typeName===ge.VIDEO_AUTOPLAY,c=o?.typeName===ge.IMAGE_SET;return e.jsxs(z,{ref:s,hasBackground:!0,id:r,"data-testid":r,children:[e.jsx(q,{display:{mobile:"block",tablet:"none",desktop:"none"},children:e.jsxs(z,{hasBackground:!0,"data-testid":r+"-mobile",children:[e.jsx(ve,{text:i,isMobile:!0,sectionId:r}),d&&e.jsx(X,{video:o,ariaLabels:o.ariaLabels}),c&&e.jsx(O,{imageSet:o})]})}),e.jsx(q,{display:{mobile:"none",tablet:"block",desktop:"none"},children:e.jsxs(z,{hasBackground:!0,"data-testid":r+"-tablet",children:[e.jsx(ve,{text:i,isMobile:!1,sectionId:r}),d&&e.jsx(X,{video:o,ariaLabels:o.ariaLabels}),c&&e.jsx(O,{imageSet:o})]})}),e.jsx(q,{display:{mobile:"none",tablet:"none",desktop:"block"},children:e.jsxs(z,{hasBackground:!0,"data-testid":r+"-desktop",children:[d&&e.jsx($t,{video:o,ariaLabels:o.ariaLabels}),c&&e.jsx(O,{imageSet:o}),e.jsx(Pt,{text:i,sectionId:r})]})})]})});me.displayName="Infotainment";const Ft=n(G.li)(({configuration:i})=>[y`
31      position: absolute;
32      gap: ${a.medium};
33      display: none;
34
35      ${E.tablet} {
36        display: flex;
37      }
38    `,le(i)]),Wt=n(G.div)(({reversed:i})=>y`
39    width: 100%;
40    height: 1px;
41    background-color: ${D.white};
42    margin-top: ${a.xxSmall};
43    align-self: flex-start;
44    // only apply the reversed styles on tablet and above
45    @media (min-width: ${st.tablet}px) {
46      margin-top: ${!i&&a.xxSmall};
47      margin-bottom: ${i&&a.xxSmall};
48      align-self: ${i?"flex-end":"flex-start"};
49    }
50  `),Vt=n(Ae)`
51  flex-shrink: 0;
52  width: min(100%, 13.5rem);
53  text-wrap: balance;
54
55  a {
56    color: inherit;
57  }
58
59  ${E.tablet} {
60    width: 13.75rem;
61  }
62
63  ${E.desktop} {
64    width: min(15vw, 13.5rem);
65  }
66`,Gt=({text:i,configuration:o,reversed:r})=>{const s=Le(),[d,c]=l.useState(!1),u=!s&&d,{scrollProgressRef:h,progress:g}=ne(),f=M(g,[.15,.35],[0,1]),t=M(g,[.5,.8],[1,0]),v=M(f,m=>`${m*100}%`);return l.useEffect(()=>{c(!0)},[c]),e.jsxs(Ft,{ref:h,configuration:o,style:u?{opacity:t}:void 0,children:[e.jsx(G.div,{style:u?{opacity:f}:void 0,children:e.jsx(Vt,{children:i})}),e.jsx(Wt,{style:u?{width:v}:void 0,reversed:r})]})},xe={modal:J.modal,activeButton:J.modal+1,text:J.modal+2},Ht=bt`
67  0% {
68    scale: 1;
69    opacity: 1;
70  }
71  100% {
72    opacity: 0;
73    scale: 2;
74  }`,Yt=n(G.button)(({configuration:i})=>[y`
75      position: absolute;
76      width: ${a.xLarge};
77      height: ${a.xLarge};
78      padding: 0;
79      border: none;
80      border-radius: 50%;
81      background: ${D.white};
82      color: ${D.black};
83      transition: transform ${_.xFast}ms linear;
84
85      ${E.tablet} {
86        display: none;
87      }
88
89      &::before {
90        content: "";
91        display: block;
92        position: absolute;
93        inset: 0;
94        background: ${D.white};
95        border-radius: 50%;
96
97        @media (prefers-reduced-motion: no-preference) {
98          animation: ${Ht} 3s ease-in-out infinite;
99        }
100      }
101
102      &:hover {
103        cursor: pointer;
104      }
105    `,le(i)]),Ut=n(H)(({open:i})=>y`
106    position: fixed;
107    inset: 0;
108    z-index: ${xe.modal};
109    width: 100vw;
110    height: 100vh;
111    visibility: hidden;
112    pointer-events: none;
113
114    @supports (height: 100dvh) {
115      height: 100dvh;
116    }
117
118    @media (prefers-reduced-motion: no-preference) {
119      transition: visibility ${_.xSlow}ms ease-in-out;
120    }
121
122    ${i&&y`
123      visibility: visible;
124      pointer-events: auto;
125    `}
126  `),zt=n(gt)`
127  align-self: flex-end;
128`,Xt=n.div(({open:i})=>y`
129    position: absolute;
130    background: ${ce(D.black,.6)};
131    width: 100%;
132    height: 100%;
133    opacity: 0;
134
135    @media (prefers-reduced-motion: no-preference) {
136      transition: opacity ${_.normal}ms ease-in-out;
137    }
138
139    ${i&&y`
140      visibility: visible;
141      opacity: 1;
142    `}
143  `),Qt=n(H)(({open:i})=>y`
144    min-height: 270px;
145    background-color: ${D.white};
146    padding: ${a.medium} ${a.medium} ${a.large};
147    margin: ${a.small};
148    transform: translateY(50%);
149    opacity: 0;
150
151    // The active hot spot button is on top of the modal backdrop but should be underneath text block.
152    z-index: ${xe.text};
153
154    @media (prefers-reduced-motion: no-preference) {
155      transition:
156        transform ${_.xSlow}ms cubic-bezier(0.65, 0, 0.25, 1),
157        opacity ${_.xSlow}ms cubic-bezier(0.65, 0, 0.25, 1);
158    }
159
160    ${i&&y`
161      visibility: visible;
162      opacity: 1;
163      transform: translateY(0);
164    `}
165  `),Kt=n(pt)`
166  svg {
167    // for some reason the initial translateY values is set to 1px, causing the icon to be off center
168    // this is a workaround that resets the translateY value to 0
169    transform: translateY(0);
170  }
171`,qt=({text:i,label:o,configuration:r,ariaLabels:s})=>{const d=l.useRef(null),c=l.useRef(null),u=l.useRef(null),{scrollProgressRef:h,progress:g}=ne(),f=rt(c,h),t=Le(),[v,m]=l.useState(!1),R=!t&&v,N=M(g,[0,.2],[0,1]),[b,k]=l.useState(!1);ot(d,b),nt(b,{preventScroll:!0,scrollIntoView:!0}),l.useEffect(()=>{m(!0)},[]),lt({ref:d,open:b,customModal:!0});const T=()=>{k(j=>!j),c.current?.scrollIntoView({behavior:"auto",block:"center",inline:"center"})},w=l.useCallback(()=>{k(!1),c.current?.focus()},[]);return l.useEffect(()=>{let j;return b&&u.current&&(j=setTimeout(()=>u.current?.focus(),t?0:_.xSlow)),()=>{j&&clearTimeout(j)}},[b]),l.useEffect(()=>{const j=B=>{B.key==="Escape"&&b&&w()};return window.document.addEventListener("keydown",j),()=>{window.document.removeEventListener("keydown",j)}},[w,b]),e.jsxs(dt,{children:[e.jsx(Yt,{ref:f,role:"dialog","aria-modal":"true",configuration:r,"aria-label":o,style:{zIndex:b?xe.activeButton:void 0,scale:R?N:1,rotate:b?"45deg":"0"},onClick:T,children:e.jsx(Kt,{icon:ct})}),e.jsxs(Ut,{ref:d,"data-testid":"feature-modal",mainAxisAlignment:be.end,crossAxisAlignment:mt.center,open:b,children:[e.jsx(Xt,{open:b,onClick:w}),e.jsxs(Qt,{mainAxisAlignment:be.spaceBetween,open:b,children:[e.jsx(zt,{ref:u,icon:ut,size:xt.xLarge,color:D.black,"aria-label":s.closeModal,onClick:w}),e.jsx(Ae,{overrideElementMap:{p({children:j}){return e.jsx(de,{variant:A.titleResponsive,children:j})}},children:i})]})]})]})},Jt=n.div`
172  position: relative;
173  display: grid;
174
175  > * {
176    position: relative;
177    grid-area: 1 / 1;
178  }
179`,Zt=n(H)`
180  margin: 0 auto;
181  width: 100%;
182
183  ${E.onlyTablet} {
184    padding-inline: ${vt.tablet};
185  }
186
187  ${E.desktop} {
188    width: min(95%, 1600px);
189  }
190`,ei=n(O)`
191  ${E.desktop} {
192    display: initial;
193  }
194`,Qe=({sectionId:i,text:o,features:r,mediaCar:s,ariaLabels:d})=>{const{name:c}=ht(),{scrollProgressRef:u,progress:h}=ne(),g=r.reduce((t,{key:v,configuration:m})=>m.mediaAnimation?{...t,[v]:{mobile:M(h,m.mediaAnimation.opacity.inputRange.mobile,m.mediaAnimation.opacity.outputRange.mobile),tablet:M(h,m.mediaAnimation.opacity.inputRange.tablet,m.mediaAnimation.opacity.outputRange.tablet)}}:t,{}),f=t=>{if(!g[t])return 0;switch(c){case"mobile":return g[t].mobile;case"tablet":case"desktop":case"desktopWide":return g[t].tablet;default:return 0}};return e.jsx(F,{id:i,"data-testid":i,children:e.jsxs(Jt,{ref:u,children:[e.jsx(O,{imageSet:s,objectFit:"initial"}),r.map(({key:t,media:v})=>v?e.jsx(G.div,{"data-testid":`exterior-feature-media-${t}`,style:{opacity:f(t)},children:e.jsx(ei,{imageSet:v,objectFit:"initial"})},t):null),e.jsx(V,{as:W,children:e.jsxs(L,{span:{mobile:4,tablet:6,desktop:7},children:[e.jsx(I,{spacing:{mobile:a.xxLarge,tablet:a.xxxLarge,desktop:a.xxxxxLarge}}),e.jsx(ft,{variant:A.titleResponsive,level:2,children:o})]})}),e.jsx(Zt,{as:"ul",children:r.map(({key:t,text:v,configuration:m})=>e.jsx(Gt,{text:v,configuration:m.listItem,reversed:m.reversed},t))}),r.map(({key:t,text:v,configuration:m,label:R})=>e.jsx(qt,{text:v,label:R,configuration:m.modalButton,ariaLabels:d},t))]})})},ti={frontAeroWing:{modalButton:{insetBlockStart:{mobile:"22.5%"},insetInlineStart:{mobile:"55%"}}
194,listItem:{insetBlockStart:{mobile:"15.25%",desktop:"16%"},width:{mobile:"60%",desktop:"36%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"row",desktop:"end"}}},lidar:{modalButton:{insetBlockStart:{mobile:"44%"},insetInlineStart:{mobile:"42%"}},listItem:{insetBlockStart:{mobile:"44%"},width:{mobile:"75%",desktop:"48%"},flexDirection:{mobile:"row"}}},panoramicRoof:{modalButton:{insetBlockStart:{mobile:"64.5%"},insetInlineStart:{mobile:"47%"}},listItem:{insetBlockStart:{mobile:"49%",desktop:"49.5%"},width:{mobile:"55%",desktop:"35%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"start",desktop:"end"}}},interior:{modalButton:{insetBlockStart:{mobile:"73%"},insetInlineStart:{mobile:"73%"}},listItem:{insetBlockStart:{mobile:"69.5%",desktop:"68.5%"},width:{mobile:"62%",desktop:"40%"},flexDirection:{mobile:"row",desktop:"row"}},mediaAnimation:{opacity:{inputRange:{mobile:[.6,.65,.67,.72],tablet:[.5,.6,.7,.8]},outputRange:{mobile:[0,1,1,0],tablet:[0,1,1,0]}}}},rearAeroWing:{reversed:!0,modalButton:{insetBlockStart:{mobile:"92%"},insetInlineStart:{mobile:"34%"}},listItem:{insetBlockEnd:{mobile:"9%",desktop:"8%"},width:{mobile:"60%",desktop:"35%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"start",desktop:"end"}}}},ii=n.section`
195  // Custom color only needed for this section.
196  background-color: #717171;
197`,Ie=n(W)`
198  row-gap: ${a.xxLarge};
199
200  ${E.tablet} {
201    // Specific tablet value is needed otherwise Component Warehouse
202    // will overwrite with default spacing.
203    row-gap: ${a.xxLarge};
204  }
205`,ai=n(de)`
206  padding-top: ${a.xSmall};
207`,je=n(oe)`
208  text-wrap: balance;
209`,si=n(O)`
210  max-height: 85vh;
211  margin: 0 auto;
212`,ri=l.forwardRef(({sectionId:i,video:o,text:r,button:s,image:d,statistics:c},u)=>e.jsxs(ii,{ref:u,"data-testid":i,children:[o&&e.jsx(Z,{hasPassePartout:!0,as:"div",sectionId:`${i}-video`,media:o}),e.jsxs(V,{as:"div",children:[e.jsx(I,{spacing:{mobile:a.xxLarge,desktop:a.xxxxLarge}}),e.jsxs(Ie,{children:[e.jsxs(L,{span:{mobile:4,tablet:7,desktop:6},children:[e.jsx(je,{variant:A.titleResponsive,level:2,children:r}),e.jsx(I,{}),e.jsx(Be,{monochrome:!0,label:s.label,href:s.href,variant:s.variant,openInNewTab:s.openInNewTab,icon:s.icon,dataLayer:s.dataLayer})]}),e.jsx(L,{span:{mobile:4,tablet:8,desktop:4,desktopWide:4},offset:{mobile:0,tablet:0,desktop:2,desktopWide:2},children:c.map(({id:h,label:g,text:f},t)=>e.jsxs(H,{children:[e.jsx(je,{as:"p",variant:A.fluid,level:3,children:f}),e.jsx(De,{spacing:a.xSmall,emphasis:Ne.low}),e.jsx(ai,{as:"h3",children:g}),t!==c.length-1&&e.jsx(I,{spacing:a.xLarge})]},h))})]}),e.jsx(I,{spacing:{mobile:a.xxLarge,desktop:a.xxxxLarge}}),e.jsx(Ie,{children:e.jsx(L,{span:{mobile:4,tablet:8,desktop:12},offset:{mobile:0,tablet:0,desktop:0,desktopWide:0},children:e.jsx(si,{imageSet:d})})}),e.jsx(I,{spacing:{mobile:a.xxxLarge,desktop:a.xxxxxxLarge}})]})]}));var x=(i=>(i.HERO="hero",i.DISCLAIMER_BANNER="disclaimer-banner",i.INTRO="intro",i.MINI_CONFIGURATOR="mini-configurator",i.INTERIOR_OVERVIEW="interior-overview",i.EXTERIOR_FEATURES="exterior-features",i.INTERIOR_DETAILS="interior-details",i.MATERIAL_DETAILS="material-details",i.HMI_INTERIOR="hmi-interior",i.AUDIO_SYSTEM="audio-system",i.ACTIVE_AIR_SUSPENSE="active-air-suspense",i.CHARGING="charging",i.WARRANTY_AND_SERVICES="warranty-and-services",i.GALLERY="gallery",i.HAND_OFF="hand-off",i.ENERGY_LABEL="energy-label",i.DISCLAIMER="disclaimer",i.INFOTAINMENT="infotainment",i.TEXT_BANNER="text-banner",i))(x||{});const oi=()=>{const{pathname:i,search:o}=we(),{market:r,layoutData:s,isPreview:d,visualEditingActive:c,version:u,projectCode:h,defaultProjectCode:g,stage:f,overview:t,hasSupportDialog:v,dictionary:m,miniConfigurator:R}=se(),N=l.useRef(null),b=l.useRef(null),k=l.useRef(null),T=l.useRef(null),w=l.useRef(null),j=l.useRef(null),B=l.useRef(null),Y=l.useRef(null),U=l.useRef(null),K=!ze([N,b,k,j,B,T,w,U,Y],!0),ue={enablePreview:Fe(f),isPreview:d,isVisualEditingEnabled:c,previewApiEndpoint:Pe(d,i,o),ephemeralDeploymentId:u,projectCode:h,defaultProjectCode:g},Ke=Ye(t.subNavigation);return e.jsxs(Te,{children:[e.jsx(Ge,{hasOfferBar:!!t.offerBar,hasSubNavigation:Ke}),e.jsx(Ce,{offerBar:t.offerBar,market:r,importerBanner:s.importerBanner,megaMenu:s.megaMenu?{actions:s.megaMenu.actions,navigation:s.megaMenu.navigation,ariaLabels:s.megaMenu.ariaLabels,subNavigation:[{id:"polestar-3-overview-sub-navigation",node:t.subNavigation&&e.jsx(Ue,{locationPathname:i,mainButton:t.subNavigation.mainButton,menuItems:t.subNavigation.menuItems,testDriveButton:t.subNavigation.testDriveButton,buttons:t.subNavigation.buttons,ariaLabel:t.subNavigationAriaLabel}),bleed:!0}]}:void 0,dictionary:s.dictionary,previewConfig:ue}),e.jsxs("main",{id:"main-content","data-testid":"main-content",children:[t.heroWithStatistics&&e.jsx(C,{children:e.jsx(Oe,{sectionId:x.HERO,title:t.heroWithStatistics?.title,priorityItems:t.heroWithStatistics?.priorityItems,secondaryItems:t.heroWithStatistics?.secondaryItems,background:t.heroWithStatistics?.media})}),t.heroDisclaimer?.disclaimerBanner&&e.jsx(ee,{sectionId:x.DISCLAIMER_BANNER,text:t.heroDisclaimer.disclaimerBanner.text,variant:t.heroDisclaimer.disclaimerBanner.variant}),t.intro&&e.jsx(C,{children:e.jsx(Bt,{ref:b,sectionId:x.INTRO,text:t.intro.text,button:t.intro.button,media:t.intro.media})}),t.textBanner&&e.jsx(Ve,{textBanner:t.textBanner}),R&&e.jsx(Dt,{ref:k,data:R.data,gallery:R.gallery,dataLayerEvent:R.dataLayerEvent,sectionId:x.MINI_CONFIGURATOR}),t.exteriorFeatures&&e.jsx(C,{children:e.jsx(Qe,{sectionId:x.EXTERIOR_FEATURES,text:t.exteriorFeatures.text,features:t.exteriorFeatures.features.flatMap(({key:pe,text:qe,label:Je,media:Ze})=>[{key:pe,text:qe,label:Je,media:Ze,configuration:ti[pe]}]),mediaCar:t.exteriorFeatures.mediaCar,ariaLabels:t.exteriorFeatures.ariaLabels})}),t.interiorOverview&&e.jsxs(e.Fragment,{children:[e.jsx(I,{spacing:{mobile:a.xLarge,tablet:a.xxLarge}}),e.jsx(Z,{ref:T,hasPassePartout:!0,sectionId:x.INTERIOR_OVERVIEW,media:t.interiorOverview.media})]}),t.interiorDetails&&e.jsxs(P,{id:x.INTERIOR_DETAILS,"data-testid":x.INTERIOR_DETAILS,children:[e.jsx(S,{spacing:{mobile:a.xxxLarge}}),e.jsx(te,{text:t.interiorDetails.text,tiles:t.interiorDetails.tiles,button:t.interiorDetails.button}),e.jsx(S,{spacing:{mobile:a.xxxLarge}})]}),t.hmiInterior&&e.jsx(Z,{hasPassePartout:!0,sectionId:x.HMI_INTERIOR,media:t.hmiInterior.media}),t.materialDetails&&e.jsxs(P,{id:x.MATERIAL_DETAILS,"data-testid":x.MATERIAL_DETAILS,children:[e.jsx(S,{spacing:{mobile:a.xxxLarge}}),e.jsx(te,{text:t.materialDetails.text,tiles:t.materialDetails.tiles,button:t.materialDetails.button}),e.jsx(S,{spacing:{mobile:a.xxxLarge}})]}
212),t.activeAirSuspense&&e.jsx(Me,{ref:w,sectionId:x.ACTIVE_AIR_SUSPENSE,text:t.activeAirSuspense.text,media:t.activeAirSuspense.media}),t.audioSystem&&e.jsx(C,{children:e.jsx(ri,{ref:B,sectionId:t.audioSystem.sectionId,video:t.audioSystem.video,text:t.audioSystem.text,button:t.audioSystem.button,image:t.audioSystem.image,statistics:t.audioSystem.statistics})}),e.jsxs(C,{children:[t.charging&&e.jsx(It,{sectionId:x.CHARGING,body:t.charging.body,button:t.charging.button,images:t.charging.images}),t.infotainment&&e.jsx(me,{sectionId:x.INFOTAINMENT,ref:U,text:t.infotainment.text,media:t.infotainment.media}),t.warrantyAndServices&&e.jsxs(Q,{sectionId:x.WARRANTY_AND_SERVICES,children:[e.jsx(S,{spacing:{mobile:a.xxxxLarge}}),e.jsx(Q.Inner,{title:t.warrantyAndServices.title,items:t.warrantyAndServices.items,dataLayerEvent:ie.PS3_PDP}),e.jsx(S,{spacing:{mobile:a.xxxxLarge}})]}),t.gallery&&e.jsx(jt,{sectionId:x.GALLERY,datalayerEvent:ie.PS3_PDP,slides:t.gallery.slides,ariaLabels:{next:m.Next,previous:m.Previous}})]}),t.handOff&&e.jsxs(he,{sectionId:x.HAND_OFF,backgroundColor:$.black,children:[e.jsx(S,{spacing:{mobile:a.xxxLarge,tablet:a.xxxxxLarge}}),e.jsx(he.Inner,{title:t.handOff.title,tiles:t.handOff.tiles,theme:{color:$.safetyOrange,tile:{extends:Rt.white,backgroundColor:$.safetyOrange,monochrome:!0}}}),e.jsx(S,{spacing:{mobile:a.xxxLarge,tablet:a.xxxxxLarge}})]}),t.energyLabelTitle&&e.jsx(He,{sectionId:x.ENERGY_LABEL,title:t.energyLabelTitle}),e.jsx($e,{sectionId:x.DISCLAIMER,orderedList:t.disclaimerOrderedList,unorderedList:t.disclaimerUnorderedList})]}),e.jsx(Ee,{isSupportButtonVisible:K,locale:r?.cmsLocale,stage:f,marketHasSupportDialog:v}),e.jsx(_e,{ref:Y,importerBanner:s.importerBanner,market:r,pathname:i,footer:s.footer,doormat:s.doormat,newsletterSignup:s.newsletterSignup,marketSelector:s.marketSelector,previewConfig:ue})]})},ni={frontAeroWing:{modalButton:{insetBlockStart:{mobile:"11.5%"},insetInlineStart:{mobile:"52%"}},listItem:{insetBlockStart:{mobile:"10%",desktop:"8.5%"},width:{mobile:"55%",desktop:"40%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"row",desktop:"end"}}},panoramicRoof:{modalButton:{insetBlockStart:{mobile:"24%"},insetInlineStart:{mobile:"33%"}},listItem:{insetBlockStart:{mobile:"28%",tablet:"28%",desktop:"28%"},width:{mobile:"50%",desktop:"40%"},flexDirection:{mobile:"row",desktop:"row"}}},electrochromicRoof:{modalButton:{insetBlockStart:{mobile:"30.5%"},insetInlineStart:{mobile:"42%"}},listItem:{insetBlockStart:{mobile:"33%",desktop:"33%"},width:{mobile:"50%",tablet:"58%",desktop:"42%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"row",desktop:"end"}},mediaAnimation:{opacity:{inputRange:{mobile:[.28,.33,.37,.42],tablet:[.28,.33,.37,.42]},outputRange:{mobile:[0,1,1,0],tablet:[0,1,1,0]}}}},interior:{modalButton:{insetBlockStart:{mobile:"37%"},insetInlineStart:{mobile:"63%"}},listItem:{insetBlockStart:{mobile:"40%",desktop:"40.5%"},width:{mobile:"55%",desktop:"40%"},flexDirection:{mobile:"row",desktop:"row"}},mediaAnimation:{opacity:{inputRange:{mobile:[.37,.42,.47,.52],tablet:[.37,.42,.47,.52]},outputRange:{mobile:[0,1,1,0],tablet:[0,1,1,0]}}}},rearAeroWing:{modalButton:{insetBlockStart:{mobile:"43%"},insetInlineStart:{mobile:"30%"}},listItem:{insetBlockStart:{mobile:"51.5%",desktop:"51%"},width:{mobile:"55%",desktop:"38%"},flexDirection:{mobile:"row",desktop:"row-reverse"},alignSelf:{mobile:"start",desktop:"end"}}}},li=n(W)`
213  row-gap: ${a.xxLarge};
214
215  ${E.tablet} {
216    // Specific tablet value is needed otherwise Component Warehouse
217    // will overwrite with default spacing.
218    row-gap: ${a.xxLarge};
219  }
220`,di=n(de)`
221  padding-top: ${a.xSmall};
222`,Re=n(oe)`
223  text-wrap: balance;
224`,ci=l.forwardRef(({sectionId:i,text:o,button:r,statistics:s},d)=>e.jsx("section",{ref:d,"data-testid":i,children:e.jsxs(V,{as:"div",children:[e.jsx(I,{spacing:{mobile:a.xxLarge,desktop:a.xxxxLarge}}),e.jsxs(li,{children:[e.jsxs(L,{span:{mobile:4,tablet:7,desktop:6},children:[e.jsx(Re,{variant:A.titleResponsive,level:2,children:o}),r&&e.jsxs(e.Fragment,{children:[e.jsx(I,{}),e.jsx(Be,{monochrome:!0,label:r.label,href:r.href,variant:r.variant,openInNewTab:r.openInNewTab,icon:r.icon,dataLayer:r.dataLayer})]})]}),e.jsx(L,{span:{mobile:4,tablet:8,desktop:4,desktopWide:4},offset:{mobile:0,tablet:0,desktop:2,desktopWide:2},children:s.map(({id:c,label:u,text:h},g)=>
224e.jsxs(H,{children:[e.jsx(Re,{as:"p",variant:A.fluid,level:3,children:h}),e.jsx(De,{spacing:a.xSmall,emphasis:Ne.low}),e.jsx(di,{as:"h3",children:u}),g!==s.length-1&&e.jsx(I,{spacing:a.xLarge})]},c))})]}),e.jsx(I,{spacing:{mobile:a.xxLarge,desktop:a.xxxxLarge}})]})})),mi=n(F)`
225  ${re}
226  padding: 10vh 0 10vh 0;
227
228  // Overrides the max-height set by CWGallery
229  > div {
230    max-height: none;
231  }
232`,xi=({slides:i,sectionId:o})=>{const{content:r}=St({slides:i,widths:wt});return e.jsx(mi,{id:o,"data-testid":o,children:e.jsx(Tt,{hideIndicator:!0,content:r})})};var p=(i=>(i.HERO="hero",i.HERO_DISCLAIMER="hero-disclaimer",i.TEXT_BANNER="text-banner",i.INTRO="intro",i.EXTERIOR_FEATURES="exterior-features",i.CHARGING="charging",i.GALLERY="gallery",i.MICRO_CONFIGURATOR="micro-configurator",i.INTERIOR_OVERVIEW="interior-overview",i.INTERIOR_DETAILS="interior-details",i.HMI_INTERIOR="hmi-interior",i.INFOTAINMENT="infotainment",i.WARRANTY_AND_SERVICES="warranty-and-services",i.CREDITS="credits",i.CREDITS_DISCLAIMER_BANNER="credits-disclaimer-banner",i.HAND_OFF="hand-off",i.ENERGY_LABEL="energy-label",i.DISCLAIMER="disclaimer",i))(p||{}),ae=(i=>(i[i.Black=$.black]="Black",i.Grey="#5D5D5D",i))(ae||{});const Se=({children:i,backgroundColor:o})=>e.jsx(C,{children:e.jsx(F,{as:"div",backgroundColor:o,children:i})}),ui=n.div`
233  position: relative;
234  overflow: hidden;
235`,pi=n.div`
236  position: absolute;
237  height: 8%;
238  width: 100%;
239  bottom: 0;
240  background: linear-gradient(
241    180deg,
242    ${ce("#5D5D5D",We.none)} 0%,
243    ${"#5D5D5D"} 90%
244  );
245`,gi=n.div`
246  position: relative;
247
248  ${le({marginTop:{mobile:"-280%",tablet:"-180%",desktop:"-105%"}})};
249
250  // Override for wide screens (wider than max container width)
251  // Use a fixed pixel value to prevent position changes as viewport width increases
252  @media (min-width: ${fe}px) {
253    margin-top: calc(-1.05 * ${fe}px);
254  }
255`,bi=n.div`
256  position: relative;
257`,hi=n.div`
258  position: absolute;
259  bottom: 0;
260  height: 8vh;
261  max-height: ${a.xxxLarge};
262  width: 100%;
263  background: linear-gradient(
264    0deg,
265    ${$.black} 0%,
266    ${ce($.black,We.none)} 100%
267  );
268`,fi=()=>{const{pathname:i,search:o}=we(),{market:r,layoutData:s,isPreview:d,visualEditingActive:c,version:u,projectCode:h,defaultProjectCode:g,stage:f,overview:t,hasSupportDialog:v}=se(),m=l.useRef(null),R=l.useRef(null),N=l.useRef(null),b=l.useRef(null),k=l.useRef(null),T=!ze([m,R,N,b,k],!0),w={enablePreview:Fe(f),isPreview:d,isVisualEditingEnabled:c,previewApiEndpoint:Pe(d,i,o),ephemeralDeploymentId:u,projectCode:h,defaultProjectCode:g},j=Ye(t.subNavigation);return e.jsxs(Te,{children:[e.jsx(Ge,{hasOfferBar:!1,hasSubNavigation:j}),e.jsx(Ce,{market:r,importerBanner:s.importerBanner,megaMenu:s.megaMenu?{actions:s.megaMenu.actions,navigation:s.megaMenu.navigation,ariaLabels:s.megaMenu.ariaLabels,variant:Et.performance,subNavigation:[{id:"polestar-3-overview-sub-navigation",node:t.subNavigation&&e.jsx(Ue,{locationPathname:i,mainButton:t.subNavigation.mainButton,menuItems:t.subNavigation.menuItems,testDriveButton:t.subNavigation.testDriveButton,buttons:t.subNavigation.buttons,ariaLabel:t.subNavigationAriaLabel}),bleed:!0}]}:void 0,dictionary:s.dictionary,previewConfig:w}),e.jsxs("main",{id:"main-content","data-testid":"main-content",children:[t.heroWithStatistics&&e.jsx(yt,{type:t.heroWithStatistics.theme,children:e.jsx(Oe,{ref:m,sectionId:p.HERO,title:t.heroWithStatistics?.title,priorityItems:t.heroWithStatistics?.priorityItems,secondaryItems:t.heroWithStatistics?.secondaryItems,background:t.heroWithStatistics?.media})}),t.heroDisclaimerBanner?.disclaimerBanner&&e.jsx(F,{as:"div",children:e.jsx(ee,{sectionId:p.HERO_DISCLAIMER,text:t.heroDisclaimerBanner.disclaimerBanner.text,variant:t.heroDisclaimerBanner?.disclaimerBanner.variant})}),t.textBanner&&e.jsx(Ve,{textBanner:t.textBanner}),e.jsxs(Se,{backgroundColor:"#5D5D5D",children:[t.intro&&e.jsx(Me,{backgroundColor:"#5D5D5D",sectionId:p.INTRO,text:t.intro.text,media:t.intro.media,button:t.intro.button,showMediaGradient:!0}),e.jsxs(ui,{children:[t.exteriorFeatures&&e.jsx(Qe,{sectionId:p.EXTERIOR_FEATURES,text:t.exteriorFeatures.text,features:t.exteriorFeatures.features.flatMap(({key:B,text:Y,label:U,media:K})=>[{key:B,text:Y,label:U,media:K,configuration:ni[B]}]),mediaCar:t.exteriorFeatures.mediaCar,ariaLabels:t.exteriorFeatures.ariaLabels}),e.jsx(pi,{}),e.jsxs(gi,{children:[t.charging&&e.jsx(ci,{sectionId:t.charging.sectionId,text:t.charging.text,button:t.charging.button,statistics:t.charging.statistics}),t.gallery?.galleryItems&&e.jsx(xi,{sectionId:p.GALLERY,slides:t.gallery.galleryItems.slides})]})]})]}),t.microConfigurator&&e.jsx(Nt,{ref:N,sectionId:p.MICRO_CONFIGURATOR,bodyLabel:t.microConfigurator.bodyLabel,claddingLabel:t.microConfigurator.claddingLabel,options:t.microConfigurator.options,configurations:t.microConfigurator.configurations,dataLayerEvent:t.microConfigurator.dataLayerEvent}),t.interiorOverview&&e.jsxs(P,{ref:R,id:p.INTERIOR_OVERVIEW,"data-testid":p.INTERIOR_OVERVIEW,children:[e.jsx(I,{spacing:{mobile:a.xxxLarge,tablet:a.xxxxLarge,desktop:a.medium}}),e.jsx(X,{video:t.interiorOverview.media,ariaLabels:t.interiorOverview.media.ariaLabels})]}),t.interiorDetails&&e.jsxs(P,{id:p.INTERIOR_DETAILS,"data-testid":p.INTERIOR_DETAILS,children:[e.jsx(S,{spacing:{mobile:a.xxxLarge}}),e.jsx(te,{text:t.interiorDetails.text,tiles:t.interiorDetails.tiles,button:t.interiorDetails.button}),e.jsx(I,{spacing:{mobile:a.large,desktop:a.xLarge}})]}),t.hmiInterior&&e.jsxs(P,{id:p.HMI_INTERIOR,"data-testid":p.HMI_INTERIOR,children:[e.jsx(kt,{media:t.hmiInterior.media}),e.jsx(I,{spacing:{mobile:a.large,tablet:a.xxLarge,desktop:a.xxxxLarge}})]}),e.jsxs(Se,{backgroundColor:ae.Black,children:[t.infotainment&&e.jsxs(bi,{children:[e.jsx(me,{ref:b,sectionId:p.INFOTAINMENT,text:t.infotainment.text,media:t.infotainment.media}),e.jsx(hi,{})]}),t.warrantyAndServices&&e.jsxs(Q,{sectionId:p.WARRANTY_AND_SERVICES,children:[e.jsx(S,{spacing:{mobile:a.xxxxLarge}}),e.jsx(Q.Inner,{title:t.warrantyAndServices.title,items:t.warrantyAndServices.items,dataLayerEvent:ie.PS3_PDP}),e.jsx(S,{spacing:{mobile:a.xxxxLarge}})]}),t.credits&&e.jsx(Ct,{sectionId:p.CREDITS,media:t.credits.media,creditsItems:t.credits.texts.creditsItems,creditsStatisticsItems:t.credits.texts.creditsStatisticsItems,handOff:t.credits.handOff,backgroundColor:ae.Black}),t.creditsDisclaimerBanner&&e.jsx(ee,{sectionId:p.CREDITS_DISCLAIMER_BANNER,text:t.creditsDisclaimerBanner.text,variant:Lt.black}),t.energyLabelTitle&&e.jsx(He,{sectionId:p.ENERGY_LABEL,title:t.energyLabelTitle}),e.jsx($e,{sectionId:p.DISCLAIMER,orderedList:t.disclaimerOrderedList,unorderedList:t.disclaimerUnorderedList})]})]}),e.jsx(Ee,{stage:f,locale:r?.cmsLocale,isSupportButtonVisible:T,marketHasSupportDialog:v}),e.jsx(_e,{ref:k,market:r,pathname:i,importerBanner:s.importerBanner,footer:s.footer,doormat:s.doormat,newsletterSignup:s.newsletterSignup,marketSelector:s.marketSelector,previewConfig:w})]})},Oi=tt(({data:i,location:o})=>{if(!i)return[];const{publishedMarkets:r,seo:{title:s,description:d,image:c,twitterCard:u,noIndex:h,structuredVideoData:g,breadcrumbs:f}}=i.overview.meta;return[...At({title:s,description:d,image:c.url,twitterCard:u,noIndex:h}),...it(o.pathname,r,i.isChina),...g,f]}),vi=()=>{const{overview:{template:i}}=se();switch(i){case"MY25-26":return e.jsx(oi,{});case"MY27":return e.jsx(fi,{})}},Mi=et(vi);export{Mi as default,Oi as meta};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.