.brand-menu-open{overflow:hidden}
.brand-menu-backdrop{position:fixed;inset:var(--header) 0 0;z-index:17;background:#101a1870;cursor:default}
.brand-model-menu{position:fixed;top:var(--header);left:0;right:0;z-index:18;padding:32px var(--gutter) 24px;background:#f9faf7;color:var(--ink);max-height:calc(100svh - var(--header));overflow-y:auto;border-bottom:1px solid #d5dad4}
.brand-menu-top,.brand-menu-tools{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand-menu-top h2{font-size:24px;font-weight:500;letter-spacing:-.025em}
.brand-menu-tools{gap:22px}
.menu-power-filters{display:flex;gap:16px}
.menu-power-filters button{background:transparent;padding:10px 0;min-height:44px;font-size:12px;color:#55645d;border-bottom:1px solid transparent}
.menu-power-filters button[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}
.menu-all-models{display:flex;gap:16px;align-items:center;font-size:12px;min-height:44px}
.menu-close{width:44px;height:44px}
.brand-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px 20px;margin-top:24px}
.brand-menu-model{display:block;background:#ecefea;padding:0 0 15px;overflow:hidden;transition:background .2s}
.brand-menu-model:hover{background:#e1e7de}
.menu-model-picture{height:clamp(140px,14vw,200px);overflow:hidden;background:#d5ded2}
.menu-model-picture img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;transition:transform .5s var(--ease)}
.brand-menu-model:hover img{transform:scale(1.035)}
.menu-model-name,.menu-model-power{display:block;margin-inline:15px}
.menu-model-name{font-size:15px;font-weight:600;margin-top:13px;line-height:1.4}
.menu-model-power{font-size:12px;color:#52604f;margin-top:6px}
.menu-power-key{font-size:12px;color:#53614f;margin-top:23px}
.menu-power-key span{margin-left:18px}
.brand-nav a[aria-expanded=true]{color:#fff}
.brand-nav a[aria-expanded=true]:after{transform:scaleX(1)}
.byd-page{background:#192321}
html:has(.byd-page){scroll-snap-type:none}
.byd-gallery{padding-top:var(--header);display:grid;grid-template-columns:1.68fr repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:3px;min-height:840px;height:100svh;color:#fff;max-height:1300px;background:#192321}
.byd-tile{position:relative;isolation:isolate;overflow:hidden;background:#35413c;min-width:0}
.byd-tile-featured{grid-row:span 2}
.byd-tile>img{width:100%;height:100%;object-fit:cover;object-position:var(--tile-position,50% 50%);transition:transform .8s var(--ease)}
.byd-tile:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#07120f88 0%,#07120f12 31%,#07120f00 50%,#07120f28 69%,#07120fb8 100%)}
@media(hover:hover) and (pointer:fine){.byd-tile:hover>img{transform:scale(1.025)}}
.byd-tile-heading{position:absolute;z-index:1;top:27px;left:15px;right:15px;text-align:center;text-shadow:0 2px 14px #0006}
.byd-tile-heading h1,.byd-tile-heading h2{font-size:clamp(23px,2.05vw,34px);line-height:1.1;font-weight:600;letter-spacing:-.025em}
.byd-tile-heading h1 span{display:block;font-size:18px;line-height:1.6;font-weight:400;letter-spacing:.01em}
.byd-tile-featured .byd-tile-heading{top:49px}
.byd-tile-featured .byd-tile-heading h1{font-size:clamp(45px,4.4vw,68px)}
.byd-tile-heading p{font-size:12px;line-height:1.5;letter-spacing:.02em;margin-top:10px}
.byd-tile-heading .tile-power{font-size:12px;font-weight:600;letter-spacing:.08em;margin-top:9px}
.byd-tile-actions{position:absolute;left:20px;right:20px;bottom:25px;z-index:1;display:flex;justify-content:center;gap:10px}
.byd-tile-actions :is(button,a){background:#ffffffee;color:#18221f;min-height:44px;padding:11px 16px;font-size:12px;font-weight:600;border:1px solid #ffffffa6;min-width:88px;transition:background .2s,color .2s}
.byd-tile-actions :is(button,a):last-child{background:#14251f42;color:#fff}
.byd-tile-actions :is(button,a):hover{background:#fff;color:#15221b}
.byd-tile-actions a{display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.25}
.byd-tile-actions a:last-child:not(:hover){background:#0a0a0ad9;color:#f0f3ef}
.byd-tile-featured .byd-tile-actions{bottom:39px;gap:13px;left:32px;right:32px}
.byd-tile-featured .byd-tile-actions :is(button,a){width:42%;max-width:190px;min-height:48px;font-size:12px}
.byd-collection-note{padding:23px var(--gutter);background:#f3f3ef;color:#52604f;display:flex;gap:24px;align-items:baseline;justify-content:space-between;font-size:12px;line-height:1.8}
.byd-collection-note p:first-child{color:#23382e;white-space:nowrap}
.byd-collection-note span{margin-left:16px}
.byd-detail-dialog{width:1080px;max-width:calc(100vw - 48px);background:#f6f7f3;color:var(--ink);padding:0}
#byd-detail-content{display:grid;grid-template-columns:1fr 1fr;min-height:600px}
.byd-detail-image{min-height:600px;background:#34463b}
.byd-detail-image img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.byd-detail-copy{padding:58px 40px 35px}
.byd-detail-copy h2{font-size:35px;line-height:1.2;font-weight:400;letter-spacing:-.025em}
.byd-detail-copy h2 strong{font-weight:600}
.detail-model-type{font-size:12px;color:#53634f;margin:11px 0 25px}
.byd-detail-copy label{font-size:12px;margin-bottom:8px}
.byd-detail-copy select{font-size:12px;width:100%;background:#fff}
.byd-specs{margin:23px 0 16px}
.byd-specs>div{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-bottom:1px solid #d4dcd1;padding:10px 0;font-size:12px;line-height:1.6}
.byd-specs dt{color:#55664f;max-width:45%}
.byd-specs dd{margin:0;text-align:right;font-weight:600;max-width:60%;font-variant-numeric:tabular-nums}
.byd-reference-note{font-size:12px;color:#53644d;line-height:1.7}
.byd-detail-copy>.button{width:100%;font-size:12px}
.byd-order-dialog{width:560px;background:#f7f8f4;padding:48px 40px 35px;color:var(--ink)}
.byd-order-dialog h2{font-size:32px;letter-spacing:-.025em;font-weight:500}
.order-model-name{font-size:16px;margin:12px 0 26px;font-weight:600}
.byd-order-dialog label{display:block;font-size:12px;margin:16px 0 8px}
.byd-order-dialog input,.byd-order-dialog select,.byd-order-dialog textarea{width:100%;font-size:14px;background:white}
.byd-order-dialog .form-row{gap:16px}
.byd-order-dialog input:user-invalid{border-color:#a44335}
.byd-order-dialog .button{width:100%;margin-top:22px;gap:16px}
.byd-order-dialog .button:disabled{background:#d9dfd5;border-color:#d9dfd5;color:#53634d;opacity:1;cursor:not-allowed}
.order-ready-note{font-size:12px;line-height:1.6;color:#4c6046;margin-top:12px;min-height:18px}
.order-privacy-note{font-size:12px;color:#53644e;line-height:1.7;margin-top:16px}
.byd-footer{background:#202725;padding:28px var(--gutter);display:flex;align-items:center;justify-content:space-between;color:#dae2d6;font-size:12px}
.byd-footer a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
@media(min-width:1700px){.byd-gallery{grid-template-columns:1.9fr repeat(3,minmax(0,1fr))}.byd-tile-heading{top:36px}.byd-tile-heading h2{font-size:35px}.byd-tile-heading p{font-size:12px}.byd-tile-actions{bottom:30px}.byd-tile-actions :is(button,a){min-width:110px;font-size:12px}}
@media(max-width:1100px){.byd-gallery{grid-template-columns:1.5fr repeat(3,minmax(0,1fr));min-height:780px}.byd-tile-actions{left:10px;right:10px;gap:6px}.byd-tile-actions :is(button,a){padding:11px 10px;min-width:0;flex:1}.brand-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.byd-detail-copy{padding:50px 28px 28px}}
@media(max-width:800px){.byd-gallery{height:auto;max-height:none;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:3px}.byd-tile{min-height:440px}.byd-tile-featured{grid-column:span 2;grid-row:auto;min-height:650px;height:calc(100svh - var(--header));max-height:900px}.byd-tile-heading h2{font-size:26px}.byd-tile-featured .byd-tile-heading h1{font-size:52px}.byd-tile-actions{left:16px;right:16px;bottom:23px}.byd-tile-actions :is(button,a){font-size:12px}.brand-menu-top{align-items:flex-start}.brand-menu-top h2{font-size:21px;white-space:nowrap}.brand-menu-tools{gap:12px;flex-wrap:wrap;justify-content:flex-end}.menu-all-models{display:none}.brand-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.menu-model-picture{height:140px}.byd-collection-note{display:block}.byd-collection-note p+p{margin-top:6px}#byd-detail-content{grid-template-columns:1fr}.byd-detail-dialog{max-width:calc(100vw - 20px)}.byd-detail-image{min-height:0;height:230px}.byd-detail-copy{padding:30px 26px}.byd-detail-copy h2{font-size:29px}.byd-order-dialog{padding:46px 26px 26px}}
@media(max-width:480px){.byd-tile{min-height:365px}.byd-tile-featured{min-height:620px}.byd-tile-heading{left:10px;right:10px;top:22px}.byd-tile-heading h2{font-size:22px}.byd-tile-heading p{font-size:12px;margin-top:7px}.byd-tile-heading .tile-power{font-size:12px;margin-top:8px}.byd-tile-actions{left:10px;right:10px;gap:6px;bottom:18px}.byd-tile-actions :is(button,a){font-size:12px;padding:10px 5px}.byd-tile-featured .byd-tile-actions{bottom:30px}.byd-tile-featured .byd-tile-actions :is(button,a){font-size:12px}.brand-model-menu{padding:23px 18px}.brand-menu-top{gap:10px}.brand-menu-tools{gap:8px}.menu-power-filters{gap:12px}.menu-power-filters button{font-size:12px}.menu-close{width:44px}.menu-model-picture{height:115px}.menu-model-name{font-size:13px;margin-inline:12px}.menu-model-power{font-size:12px;margin-inline:12px}.byd-order-dialog input,.byd-order-dialog select,.byd-order-dialog textarea{font-size:16px}.byd-order-dialog .form-row{grid-template-columns:1fr}.byd-specs>div{font-size:12px}.byd-footer{gap:24px;font-size:12px}.byd-footer span{max-width:60%}}
@media(prefers-reduced-motion:reduce){.byd-tile>img,.menu-model-picture img{transition:none}.byd-tile:hover>img,.brand-menu-model:hover img{transform:none}}

.menu-all-models svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}

.byd-tile:not(.byd-tile-featured):after{background:linear-gradient(180deg,#07120fb3 0%,#07120fa6 30%,#07120f00 50%,#07120f28 69%,#07120fb8 100%)}

/* Six secondary scenes share the same tyre-contact line, including on resize. */
.byd-tile.vehicle-aligned{overflow:clip}
.byd-tile.vehicle-aligned>img{position:absolute;max-width:none;object-fit:fill;transition:transform .8s var(--ease)}
.byd-tile.vehicle-aligned:hover>img{transform:none}
.byd-detail-copy>.byd-reference-note{margin-bottom:22px}

@media(hover:hover) and (pointer:fine){.byd-tile.vehicle-aligned:hover>img{transform:scale(1.025)}}
@media(prefers-reduced-motion:reduce){.byd-tile.vehicle-aligned>img{transition:none}.byd-tile.vehicle-aligned:hover>img{transform:none}}

/* The four-model JETOUR collection gives each secondary scene a full-height panel. */
@media(min-width:801px){.gallery-four{grid-template-columns:1.4fr 1fr 1fr}.gallery-four .byd-tile:nth-child(2){grid-column:span 2}.gallery-four .byd-tile:nth-child(2) .byd-tile-heading{left:28px;right:auto;text-align:left}}
@media(max-width:800px){.gallery-four .byd-tile:last-child{grid-column:span 2;min-height:440px}}
@media(min-width:801px) and (max-width:1100px){.site-header{padding-inline:24px;gap:18px}.brand-nav{gap:20px}.header-actions{gap:12px}}
.scene-extension{position:absolute;inset-inline:0;z-index:-1;pointer-events:none;background-repeat:no-repeat}

/* NIO: ES8 spans both rows; five requested models fill the remaining stage. */
@media(min-width:801px){
 .gallery-six{grid-template-columns:1.68fr repeat(6,minmax(0,.5fr))}
 .gallery-six .byd-tile-featured{grid-column:1;grid-row:1 / span 2}
 .gallery-six .byd-tile:nth-child(2){grid-column:2 / span 2}
 .gallery-six .byd-tile:nth-child(3){grid-column:4 / span 2}
 .gallery-six .byd-tile:nth-child(4){grid-column:6 / span 2}
 .gallery-six .byd-tile:nth-child(5){grid-column:2 / span 3}
 .gallery-six .byd-tile:nth-child(6){grid-column:5 / span 3}
}
@media(min-width:1700px){.gallery-six{grid-template-columns:1.9fr repeat(6,minmax(0,.5fr))}}
@media(min-width:801px) and (max-width:1100px){.gallery-six{grid-template-columns:1.5fr repeat(6,minmax(0,.5fr))}}
@media(max-width:800px){.gallery-six .byd-tile:last-child{grid-column:span 2;min-height:440px}}

@media(min-width:801px){
 .gallery-five{grid-template-columns:2fr repeat(2,minmax(0,1fr))}
 .gallery-three{grid-template-columns:1.5fr repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}
 .gallery-three .byd-tile-featured{grid-row:1}
 .gallery-columns{grid-template-columns:2.4fr repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}
 .gallery-columns .byd-tile-featured{grid-row:1}
 .gallery-columns .byd-tile:nth-child(2){grid-column:auto}
 .gallery-columns .byd-tile:nth-child(2) .byd-tile-heading{left:15px;right:15px;text-align:center}
}
