/* ==========================================================================
   Al Wajba Motors — one shell, three identities.

   Every colour, font and radius below reads a --awm-* custom property.
   AWM Core prints the house set on :root and the brand set on .awm-brand,
   which is why the header and footer keep the house identity while the
   content area takes the brand's. Never hard-code a brand value here.
   ========================================================================== */

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}
body{
	margin:0;
	background:var(--awm-bg);
	color:var(--awm-ink);
	font-family:var(--awm-font-body,"Barlow"),"IBM Plex Sans Arabic",system-ui,sans-serif;
	font-size:16px;
	font-weight:300;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
}
body[dir="rtl"],html[dir="rtl"] body{font-family:"IBM Plex Sans Arabic","Barlow",system-ui,sans-serif}

img,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
	outline:2px solid var(--awm-accent);outline-offset:3px
}

h1,h2,h3,h4{
	font-family:var(--awm-font-display,"Marcellus"),"Noto Kufi Arabic",Georgia,serif;
	font-weight:400;
	letter-spacing:var(--awm-display-track,0);
	text-transform:var(--awm-display-case,none);
	text-wrap:balance;
	margin:0;
	line-height:1.15;
}
h1{font-size:clamp(2.25rem,6vw,4.5rem)}
h2{font-size:clamp(1.6rem,3.4vw,2.6rem)}
h3{font-size:clamp(1.15rem,2vw,1.5rem)}
p{margin:0 0 1em}

.label{
	font-family:var(--awm-font-label,"Barlow Condensed"),"IBM Plex Sans Arabic",sans-serif;
	font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;
	color:var(--awm-ink-muted);display:inline-block;
}
.num{font-variant-numeric:tabular-nums}

/* --- layout ------------------------------------------------------------ */
.wrap{width:min(1400px,100% - 3rem);margin-inline:auto}
.wrap--narrow{width:min(760px,100% - 3rem)}
.section{padding-block:clamp(3.5rem,8vw,7rem)}
.section--tight{padding-block:clamp(2rem,4vw,3.5rem)}
.stack>*+*{margin-block-start:1rem}
.skip-link{position:absolute;inset-inline-start:-9999px}
.skip-link:focus{inset-inline-start:1rem;inset-block-start:1rem;z-index:100;background:var(--awm-accent);color:var(--awm-accent-ink);padding:.6rem 1rem}

/* --- buttons ----------------------------------------------------------- */
.btn{
	display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
	padding:.9rem 1.9rem;border:var(--awm-border-w,1px) solid var(--awm-ink);
	border-radius:var(--awm-btn-radius,0);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;
	background:transparent;color:var(--awm-ink);cursor:pointer;
	transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.btn:hover{background:var(--awm-ink);color:var(--awm-bg)}
.btn--accent{background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)}
.btn--accent:hover{background:transparent;color:var(--awm-accent)}
.btn--ghost{border-color:var(--awm-line)}
.btn--sm{padding:.6rem 1.2rem;font-size:.72rem}
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem}

/* --- header ------------------------------------------------------------ */
.site-header{
	position:sticky;top:0;z-index:60;
	background:color-mix(in srgb,var(--awm-bg) 88%,transparent);
	backdrop-filter:blur(14px);
	border-block-end:1px solid var(--awm-line);
}
.site-header__bar{
	display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;
	min-height:74px;
}
.site-header__left,.site-header__right{display:flex;align-items:center;gap:1.25rem}
.site-header__right{justify-content:flex-end}
.brandmarks{display:flex;align-items:center;justify-content:center;gap:clamp(.75rem,2vw,1.4rem)}
.brandmarks__rule{width:1px;height:26px;background:var(--awm-line);flex:none}
.brandmark{display:flex;align-items:center;justify-content:center;gap:.6rem}
.brandmark img{height:34px;width:auto;max-width:170px;object-fit:contain;display:block}
.brandmark--marque img{height:26px;max-width:130px}
@media(max-width:640px){
	.brandmark img{height:26px;max-width:120px}
	.brandmark--marque img{height:20px;max-width:92px}
	.brandmarks__rule{height:18px}
}
.brandmark__text{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:1.05rem;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap
}
.menu-toggle{
	display:inline-flex;align-items:center;gap:.55rem;background:none;border:0;padding:.4rem 0;
	color:var(--awm-ink);cursor:pointer;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;
}
.menu-toggle__icon{display:block;width:22px;height:9px;position:relative}
.menu-toggle__icon::before,.menu-toggle__icon::after{
	content:"";position:absolute;inset-inline:0;height:1px;background:currentColor;transition:transform .3s ease
}
.menu-toggle__icon::before{top:0}
.menu-toggle__icon::after{bottom:0}
.menu-toggle[aria-expanded="true"] .menu-toggle__icon::before{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle__icon::after{transform:translateY(-4px) rotate(-45deg)}

/* nav panel */
.nav-panel{
	position:fixed;inset:0;z-index:55;background:var(--awm-bg);
	overflow-y:auto;padding-block:calc(74px + 2rem) 4rem;
	opacity:0;visibility:hidden;transform:translateY(-8px);
	transition:opacity .28s ease,transform .28s ease,visibility .28s;
}
body.admin-bar .nav-panel{inset-block-start:32px}
@media screen and (max-width:782px){body.admin-bar .nav-panel{inset-block-start:46px}}
.nav-panel.is-open{opacity:1;visibility:visible;transform:none}
.nav-panel__cols{display:grid;gap:2.5rem;grid-template-columns:1fr}
@media(min-width:900px){.nav-panel__cols{grid-template-columns:minmax(200px,240px) 1fr}}
.nav-primary{list-style:none;margin:0;padding:0}
.nav-primary li{border-block-end:1px solid var(--awm-line)}
.nav-primary a{
	display:block;padding:.85rem 0;
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.3rem;
	transition:color .2s ease
}
.nav-primary a:hover{color:var(--awm-accent)}

/* --- hero --------------------------------------------------------------- */
.hero{position:relative;isolation:isolate;min-height:min(78vh,760px);display:flex;align-items:flex-end}
.hero__media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero__media img,.hero__media video{width:100%;height:100%;object-fit:cover}
.hero::after{
	content:"";position:absolute;inset:0;z-index:-1;
	background:linear-gradient(to top,color-mix(in srgb,var(--awm-bg) 92%,transparent) 0%,color-mix(in srgb,var(--awm-bg) 35%,transparent) 45%,transparent 75%)
}
.hero__body{padding-block:3.5rem 4rem;max-width:56ch}
.hero__body .label{margin-block-end:.75rem}
.hero__tagline{color:var(--awm-ink-muted);font-size:1.05rem;margin-block:1rem 1.75rem}
.hero--compact{min-height:min(58vh,540px)}

/* --- cards -------------------------------------------------------------- */
.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.card{
	background:var(--awm-surface);border:1px solid var(--awm-line);
	border-radius:var(--awm-radius,0);overflow:hidden;display:flex;flex-direction:column;
	transition:border-color .25s ease,transform .25s ease;
}
.card:hover{border-color:color-mix(in srgb,var(--awm-accent) 60%,transparent);transform:translateY(-2px)}
.card__media{position:relative;aspect-ratio:var(--awm-card-ratio,16/10);overflow:hidden;background:var(--awm-surface-2,#1a1d1a)}
.card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.card:hover .card__media img{transform:scale(1.03)}
.card__body{padding:1.1rem 1.15rem 1.35rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.card__brand{font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-accent)}
.card__title{font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.22rem;line-height:1.2}
.card__meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.85rem;color:var(--awm-ink-muted);margin-block-start:.15rem}
.card__price{margin-block-start:auto;padding-block-start:.75rem;font-size:1rem;letter-spacing:.02em}
.card__badge{
	position:absolute;inset-block-start:.7rem;inset-inline-start:.7rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
	padding:.28rem .7rem;background:var(--awm-bg);color:var(--awm-ink);border:1px solid var(--awm-line)
}
.card__badge--reserved{background:#8a6410;border-color:#8a6410;color:#fff}
.card__badge--sold{background:color-mix(in srgb,var(--awm-bg) 70%,#000);color:var(--awm-ink-muted)}
.card--sold .card__media img{filter:grayscale(1) brightness(.7)}

/* --- filter bar ---------------------------------------------------------- */
.filters{
	display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;
	padding-block:1rem;border-block-end:1px solid var(--awm-line);margin-block-end:2rem
}
.filters__group{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.chip{
	display:inline-block;padding:.42rem 1rem;border:1px solid var(--awm-line);
	border-radius:999px;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--awm-ink-muted);
	transition:border-color .2s ease,color .2s ease
}
.chip:hover{color:var(--awm-ink);border-color:var(--awm-ink)}
.chip.is-active{background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)}
.filters__count{margin-inline-start:auto;font-size:.85rem;color:var(--awm-ink-muted)}

/* --- section nav (model page) -------------------------------------------- */
.section-nav{position:sticky;top:74px;z-index:40;background:color-mix(in srgb,var(--awm-bg) 92%,transparent);backdrop-filter:blur(10px);border-block-end:1px solid var(--awm-line)}
.section-nav ul{list-style:none;display:flex;gap:1.75rem;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}
.section-nav ul::-webkit-scrollbar{display:none}
.section-nav a{
	display:block;padding:1rem 0;white-space:nowrap;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted);
	border-block-end:2px solid transparent
}
.section-nav a:hover,.section-nav a.is-active{color:var(--awm-ink);border-block-end-color:var(--awm-accent)}

/* --- specs --------------------------------------------------------------- */
.specs{display:grid;gap:2.5rem;grid-template-columns:1fr}
@media(min-width:820px){.specs{grid-template-columns:repeat(3,1fr)}}
.specs__group h3{font-size:1rem;padding-block-end:.6rem;border-block-end:1px solid var(--awm-line);margin-block-end:.4rem}
.specs__row{display:flex;justify-content:space-between;gap:1.5rem;padding-block:.55rem;border-block-end:1px solid color-mix(in srgb,var(--awm-line) 60%,transparent)}
.specs__row dt{color:var(--awm-ink-muted);font-size:.9rem}
.specs__row dd{margin:0;font-variant-numeric:tabular-nums;text-align:end}
.figures{display:grid;gap:1px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));background:var(--awm-line);border:1px solid var(--awm-line)}
.figure{background:var(--awm-bg);padding:1.4rem 1.2rem;text-align:center}
.figure__v{display:block;font-family:var(--awm-font-display,"Marcellus"),serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1;font-variant-numeric:tabular-nums}
.figure__u{font-size:.9rem;color:var(--awm-ink-muted)}
.figure__k{display:block;margin-block-start:.5rem;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)}

/* --- gallery -------------------------------------------------------------- */
.gallery{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.gallery figure{margin:0;overflow:hidden;background:var(--awm-surface)}
.gallery img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .7s ease}
.gallery figure:hover img{transform:scale(1.03)}
.gallery--wide figure:first-child{grid-column:1/-1}
.gallery--wide figure:first-child img{aspect-ratio:21/9}

/* --- forms ---------------------------------------------------------------- */
.form{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.form .full{grid-column:1/-1}
.field{display:flex;flex-direction:column;gap:.4rem}
.field label{font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)}
.field input,.field select,.field textarea{
	background:transparent;border:0;border-block-end:1px solid var(--awm-line);
	color:var(--awm-ink);padding:.7rem 0;font:inherit;font-size:1rem;border-radius:0
}
.field input:focus,.field select:focus,.field textarea:focus{border-block-end-color:var(--awm-accent);outline:none}
.field select option{background:var(--awm-bg);color:var(--awm-ink)}
.form__note{font-size:.82rem;color:var(--awm-ink-muted)}
.form__msg{grid-column:1/-1;padding:.9rem 1.1rem;border:1px solid var(--awm-line);display:none}
.form__msg.is-visible{display:block}
.form__msg.is-ok{border-color:#3f7d5a;color:#8fd3ae}
.form__msg.is-error{border-color:#8a3a34;color:#e5a09a}

/* --- footer ---------------------------------------------------------------- */
.site-footer{border-block-start:1px solid var(--awm-line);background:var(--awm-bg);margin-block-start:auto}
.site-footer__cols{display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding-block:3.5rem}
.site-footer h4{font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted);margin-block-end:.9rem}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.site-footer a:hover{color:var(--awm-accent)}
.site-footer__legal{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:space-between;padding-block:1.25rem;border-block-start:1px solid var(--awm-line);font-size:.8rem;color:var(--awm-ink-muted)}
.disclaimer{padding-block:1rem;font-size:.72rem;line-height:1.6;color:color-mix(in srgb,var(--awm-ink-muted) 80%,transparent);border-block-start:1px solid var(--awm-line)}

/* --- brand scope ------------------------------------------------------------ */
.awm-brand{background:var(--awm-bg);color:var(--awm-ink)}

/* --- page furniture --------------------------------------------------------- */
.site{display:flex;flex-direction:column;min-height:100vh}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;padding-block:1rem;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted)}
.breadcrumb a:hover{color:var(--awm-accent)}
.breadcrumb span[aria-hidden]{opacity:.5}
.page-head{padding-block:clamp(2.5rem,6vw,4.5rem) 1.5rem}
.page-head p{color:var(--awm-ink-muted);max-width:62ch;margin-block-start:.8rem}
.prose{max-width:70ch}
.prose h2,.prose h3{margin-block:2rem .6rem}
.prose a{color:var(--awm-accent);text-decoration:underline;text-underline-offset:3px}
.empty{padding:4rem 0;text-align:center;color:var(--awm-ink-muted)}
.pagination{display:flex;gap:.5rem;flex-wrap:wrap;padding-block:2.5rem}
.pagination .page-numbers{padding:.5rem .9rem;border:1px solid var(--awm-line);font-size:.85rem}
.pagination .current{background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ==========================================================================
   Boutique — WooCommerce, wearing the house design system.
   ========================================================================== */

.awm-shop{padding-block-end:4rem}
.woocommerce-notices-wrapper:empty{display:none}

ul.products{list-style:none;margin:0;padding:0;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
ul.products::before,ul.products::after{display:none}
/* WooCommerce still lays its grid out with floats and percentage widths, and
   it does so from `.woocommerce ul.products li.product` — a selector that
   outranks anything shorter. Inside a CSS grid those percentages read as a
   quarter-width tile sitting in each cell, so they are undone at matching
   weight before the tile is styled at all. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products li.product-category,
.woocommerce-page ul.products li.product-category{
	float:none;width:auto;clear:none;margin:0
}
.woocommerce ul.products,
.woocommerce-page ul.products{margin:0;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after,
.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{content:none;display:none}
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img{width:100%;margin:0;box-shadow:none}

ul.products li.product{
	background:var(--awm-surface);border:1px solid var(--awm-line);
	border-radius:var(--awm-radius,0);overflow:hidden;
	display:flex;flex-direction:column;position:relative;
	transition:border-color .25s ease,transform .25s ease;
	margin:0;padding:0;text-align:start;
}
ul.products li.product:hover{border-color:color-mix(in srgb,var(--awm-accent) 60%,transparent);transform:translateY(-2px)}
ul.products li.product > a{display:flex;flex-direction:column;flex:1;padding:0}
ul.products li.product img{width:100%;aspect-ratio:1/1;object-fit:cover;margin:0;background:var(--awm-surface-2,#1a1d1a);transition:transform .6s ease}
ul.products li.product:hover img{transform:scale(1.04)}
ul.products li.product .woocommerce-loop-product__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.02rem;line-height:1.3;
	padding:0 1rem;margin:.2rem 0 .35rem;color:var(--awm-ink);font-weight:400
}
ul.products li.product .card__brand{display:block;padding:1rem 1rem 0;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-accent)}
ul.products li.product .price{display:block;padding:0 1rem 1.15rem;margin-block-start:auto;font-size:.98rem;color:var(--awm-ink);font-variant-numeric:tabular-nums}
ul.products li.product .price del{opacity:.5;margin-inline-end:.4rem}
ul.products li.product .price ins{text-decoration:none}
.price--request{color:var(--awm-ink-muted);font-size:.9rem}
/* WooCommerce wraps the request note in its own .price span, so the padding
   applied to .price landed twice and "Price on request" sat a step in from
   the figures beside it. */
ul.products li.product .price .price--request{display:inline;padding:0;margin:0}
ul.products li.product .onsale{
	position:absolute;inset-block-start:.7rem;inset-inline-start:.7rem;z-index:2;
	background:var(--awm-accent);color:var(--awm-accent-ink);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:.24rem .65rem;border-radius:0
}
ul.products li.product-category .woocommerce-loop-category__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.1rem;padding:1rem;color:var(--awm-ink)
}
ul.products li.product-category mark{background:none;color:var(--awm-ink-muted);font-size:.85rem}

.woocommerce-ordering select,.woocommerce-ordering{margin-block-end:1.5rem}
.woocommerce-ordering select{
	background:var(--awm-surface);border:1px solid var(--awm-line);color:var(--awm-ink);
	padding:.55rem .8rem;font:inherit;font-size:.85rem;border-radius:0
}
.woocommerce-pagination ul{list-style:none;display:flex;gap:.5rem;padding:0;margin:2.5rem 0 0;border:0}
.woocommerce-pagination li{border:0}
.woocommerce-pagination a,.woocommerce-pagination span{
	display:block;padding:.5rem .9rem;border:1px solid var(--awm-line);font-size:.85rem;color:var(--awm-ink)
}
.woocommerce-pagination .current{background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)}

/* single product */
.single-product div.product{display:grid;gap:2.5rem;grid-template-columns:1fr;padding-block:1.5rem 3rem}
@media(min-width:900px){.single-product div.product{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}}
.single-product .woocommerce-product-gallery{margin:0}
.single-product .woocommerce-product-gallery__image img{border-radius:var(--awm-radius,0)}
.single-product .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;list-style:none;margin:.6rem 0 0;padding:0}
.single-product .flex-control-thumbs img{opacity:.55;cursor:pointer;transition:opacity .2s ease}
.single-product .flex-control-thumbs img.flex-active,.single-product .flex-control-thumbs img:hover{opacity:1}
.single-product .summary{margin:0}
.single-product .product_title{font-size:clamp(1.7rem,3.4vw,2.6rem);margin-block-end:.75rem}
.single-product .summary .price{font-size:1.35rem;margin-block-end:1.25rem;display:block;font-variant-numeric:tabular-nums}
.single-product .woocommerce-product-details__short-description{color:var(--awm-ink-muted);max-width:60ch}
.single-product .product_meta{margin-block-start:1.5rem;padding-block-start:1.25rem;border-block-start:1px solid var(--awm-line);font-size:.85rem;color:var(--awm-ink-muted)}
.single-product .product_meta a{color:var(--awm-ink)}
.single-product .related.products{grid-column:1/-1;margin-block-start:2rem}
.single-product .related.products > h2{margin-block-end:1.5rem;font-size:1.4rem}

.quantity input[type=number]{
	background:transparent;border:1px solid var(--awm-line);color:var(--awm-ink);
	padding:.7rem .6rem;width:5rem;font:inherit
}
.button,button.button,input.button,a.button,.woocommerce a.button,.woocommerce button.button{
	display:inline-flex;align-items:center;justify-content:center;
	padding:.9rem 1.9rem;border:1px solid var(--awm-accent);border-radius:var(--awm-btn-radius,0);
	background:var(--awm-accent);color:var(--awm-accent-ink);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;
	transition:background .25s ease,color .25s ease
}
.button:hover,button.button:hover,a.button:hover{background:transparent;color:var(--awm-accent)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
	border:1px solid var(--awm-line);border-inline-start:2px solid var(--awm-accent);
	background:var(--awm-surface);padding:1rem 1.25rem;margin-block-end:1.5rem;list-style:none
}

/* cart / checkout / account */
.woocommerce table.shop_table{border:1px solid var(--awm-line);border-collapse:collapse;width:100%}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-block-end:1px solid var(--awm-line);padding:.9rem 1rem;text-align:start}
.woocommerce table.shop_table th{background:var(--awm-surface);font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:var(--awm-ink-muted)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{
	background:transparent;border:0;border-block-end:1px solid var(--awm-line);color:var(--awm-ink);
	padding:.7rem 0;font:inherit;border-radius:0
}
.woocommerce form .form-row label{font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)}
.woocommerce .cart_totals h2,.woocommerce-billing-fields h3,.woocommerce-checkout h3{font-size:1.2rem;margin-block-end:1rem}

/* Category tiles. A brand card without a photograph still has to look like
   something, so the tile keeps its shape and carries the name and count. */
ul.products li.product-category{position:relative}
ul.products li.product-category > a{position:relative;display:block;padding:0;height:100%}
ul.products li.product-category img{aspect-ratio:4/5;object-fit:cover}
ul.products li.product-category > a::before{
	content:"";display:block;aspect-ratio:4/5;background:var(--awm-surface-2,#1a1d1a)
}
ul.products li.product-category > a:has(img)::before{display:none}
ul.products li.product-category .woocommerce-loop-category__title{
	position:absolute;inset-inline:0;inset-block-end:0;margin:0;padding:1.5rem 1.15rem 1.15rem;
	background:linear-gradient(to top,color-mix(in srgb,var(--awm-bg) 92%,transparent),transparent);
	font-size:1.25rem;line-height:1.2;color:var(--awm-ink);
	font-family:var(--awm-font-display,"Marcellus"),serif
}
ul.products li.product-category .woocommerce-loop-category__title mark{
	display:block;background:none;color:var(--awm-ink-muted);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;margin-block-start:.35rem
}

/* ==========================================================================
   Navigation — sections, what is inside them, and one photograph.
   Three columns so the whole menu is in view at once; the picture is a
   reference, not the subject, so it stays small.
   ========================================================================== */

/* Not height:100% — inside the fixed panel that pinned the menu to the
   viewport's height, so on a phone an opened section spilled out of it and
   the Book a Test Drive buttons below were painted over the logos. */
.nav{min-height:0}
.nav__cols{
	width:min(1400px,100% - 3rem);margin-inline:auto;
	display:grid;gap:2rem;grid-template-columns:1fr;align-items:start
}
@media(min-width:900px){
	/* The photograph is the reason the third column exists, so it gets real
	   width — at 280px it read as a thumbnail lost in a black page. The grid
	   also fills the panel's height, so the menu never ends half-way down. */
	.nav__cols{grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(300px,420px);gap:3rem;min-height:calc(100vh - 74px - 6rem)}
}

.nav__list{list-style:none;margin:0;padding:0}
.nav__row{border-block-end:1px solid var(--awm-line)}
.nav__row:first-child{border-block-start:1px solid var(--awm-line)}
.nav__link{
	display:flex;align-items:center;justify-content:space-between;gap:1rem;
	padding:.62rem 0;
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:1.05rem;line-height:1.25;
	letter-spacing:var(--awm-display-track,0);text-transform:var(--awm-display-case,none);
	color:var(--awm-ink-muted);
	transition:color .18s ease,padding-inline-start .18s ease
}
.nav__link:hover,.nav__link:focus-visible,.nav__link.is-open,.nav__link.is-current{
	color:var(--awm-ink);padding-inline-start:.5rem
}
.nav__link.is-open{color:var(--awm-accent)}
.nav__chevron{
	width:7px;height:7px;border-inline-end:1px solid currentColor;border-block-start:1px solid currentColor;
	transform:rotate(45deg);flex:none;opacity:.5;transition:opacity .18s ease,transform .18s ease
}
.nav__link.is-open .nav__chevron{opacity:1}
[dir="rtl"] .nav__chevron{transform:rotate(225deg)}

/* column two ------------------------------------------------------------- */
.nav__detail{min-height:1px}
.nav__pane{display:none}
.nav__pane.is-active{display:block;animation:awm-nav-in .3s cubic-bezier(.22,.61,.36,1) both}
@keyframes awm-nav-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.nav__pane__label,.nav__marque__label{
	display:block;margin-block-end:1rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.nav__pane__all{
	display:inline-block;margin-block-start:1.5rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent)
}
.nav__pane__all:hover{color:var(--awm-ink)}

.nav__marque-rows{list-style:none;margin:0;padding:0;max-width:34rem}
.nav__marque-row{
	display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
	padding:1.35rem 0;min-height:84px;border-block-end:1px solid var(--awm-line);
	transition:padding-inline-start .2s ease
}
.nav__marque-rows li:first-child .nav__marque-row{border-block-start:1px solid var(--awm-line)}
.nav__marque-row:hover,.nav__marque-row:focus-visible{padding-inline-start:.5rem}
img.nav__logo{width:auto;max-width:170px;object-fit:contain;object-position:left center;
	opacity:.92;transition:opacity .2s ease}
[dir="rtl"] .nav__logo{object-position:right center}
.nav__marque-row:hover .nav__logo,.nav__marque-row:focus-visible .nav__logo{opacity:1}
.nav__marque-row__name{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.1rem;color:var(--awm-ink)
}
.nav__marque-row__count{
	flex:none;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted);opacity:.7
}
.nav__marque-row:hover .nav__marque-row__count{color:var(--awm-accent);opacity:1}

.nav__stories{list-style:none;margin:0;padding:0;display:grid;gap:.1rem;max-width:46ch}
.nav__stories a{
	display:block;padding:.6rem 0;border-block-end:1px solid var(--awm-line);
	color:var(--awm-ink-muted);font-size:.95rem;line-height:1.35;transition:color .18s ease
}
.nav__stories a:hover{color:var(--awm-ink)}
.nav__stories__date{
	display:block;margin-block-end:.2rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent);opacity:.8
}

/* the three marques as logos ---------------------------------------------- */
.marques{display:flex;flex-wrap:wrap;gap:.9rem}
.marque{
	flex:1 1 150px;min-width:130px;display:flex;flex-direction:column;align-items:center;
	justify-content:center;gap:.7rem;padding:1.4rem 1rem;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	transition:border-color .25s ease,background .25s ease,transform .25s ease
}
.marque:hover{border-color:var(--awm-accent);transform:translateY(-2px)}
.marque__logo{max-height:38px;max-width:100%;width:auto;object-fit:contain}
.marque__name,.marque__all{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted);text-align:center
}
.marque:hover .marque__name,.marque:hover .marque__all{color:var(--awm-ink)}
.marque--all{background:transparent;border-style:dashed}
.marque--all .marque__all{color:var(--awm-accent)}

/* column three ------------------------------------------------------------ */
.nav__preview{position:relative;display:none}
@media(min-width:900px){.nav__preview{display:block}}
.nav__preview__img{
	display:block;width:100%;aspect-ratio:3/2;
	object-fit:cover;border-radius:var(--awm-radius,0);
	background:var(--awm-surface);transition:opacity .28s ease
}
.nav__preview__img.is-swapping{opacity:0}
.nav__preview__caption{
	display:block;margin-block-start:.75rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.nav__preview__sub{
	display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem 1.1rem;
	margin-block-start:.9rem;padding-block-start:.9rem;
	border-block-start:1px solid var(--awm-line);
	animation:awm-sub-in .3s ease both
}
.nav__preview__sub-label{
	flex-basis:100%;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;
	color:var(--awm-ink-muted);opacity:.7;margin-block-end:.1rem
}
.nav__preview__sub a{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
	color:var(--awm-ink-muted);transition:color .18s ease
}
.nav__preview__sub a:hover,.nav__preview__sub a:focus-visible{color:var(--awm-accent)}
@keyframes awm-sub-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

@media(max-width:899px){
	/* The opened section sits inside its own row, under the name that was
	   tapped. The detail column then holds only the closed panes (display:none)
	   and takes no room. */
	.nav__row > .nav__pane.is-active{
		margin-block:.4rem 1.2rem;padding-inline-start:1rem;
		border-inline-start:1px solid var(--awm-accent)
	}
	.nav__row > .nav__pane .nav__marque-row{padding:.9rem 0;min-height:64px}
	.nav__row > .nav__pane .brand-bentley .nav__logo{width:136px;height:34px}
	.nav__row > .nav__pane .brand-bugatti .nav__logo{width:96px;height:22px}
	.nav__row > .nav__pane .brand-lamborghini .nav__logo{width:38px;height:44px}
	.nav__row > .nav__pane .marques{gap:.6rem}
	.nav__row > .nav__pane .marque{flex:1 1 40%;min-width:0;padding:1rem .5rem}
	/* The chevron is drawn with borders, so padding would enlarge the arrow
	   itself; the tap target grows through the row's own padding instead. */
	.nav__link{padding-block:.95rem}
	.nav__link.is-open .nav__chevron{transform:rotate(135deg)}
	[dir="rtl"] .nav__link.is-open .nav__chevron{transform:rotate(135deg)}
	.nav__detail{order:2}
	.nav-panel{padding-block-start:calc(74px + .75rem)}
}

/* header icons + search --------------------------------------------------- */
.icon-btn{
	position:relative;display:inline-flex;align-items:center;justify-content:center;
	width:36px;height:36px;border:0;background:none;color:var(--awm-ink);cursor:pointer
}
.icon-btn:hover{color:var(--awm-accent)}
.icon-btn__count{
	position:absolute;inset-block-start:2px;inset-inline-end:0;
	min-width:16px;height:16px;padding:0 4px;border-radius:999px;
	background:var(--awm-accent);color:var(--awm-accent-ink);
	font-size:10px;line-height:16px;text-align:center;font-variant-numeric:tabular-nums
}
/* On a phone the primary action stays in the header — it used to disappear
   under 640px and only exist inside the menu. The word "Menu" goes instead
   (the icon says it), and the button drops to two words. */
@media(max-width:640px){
	.menu-toggle__text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
	.site-header__left,.site-header__right{gap:.6rem}
	.site-header__cta{padding-inline:.7rem;font-size:.62rem;letter-spacing:.12em;white-space:nowrap}
	.site-header__cta .cta-long{display:none}
}
@media(min-width:641px){.site-header__cta .cta-short{display:none}}
.site-search{border-block-start:1px solid var(--awm-line);background:var(--awm-bg)}
.site-search__form{display:flex;gap:1rem;align-items:center;padding-block:1.1rem}
.site-search input[type=search]{
	flex:1;background:transparent;border:0;border-block-end:1px solid var(--awm-line);
	color:var(--awm-ink);padding:.65rem 0;font:inherit;font-size:1.05rem;border-radius:0
}
.site-search input[type=search]:focus{outline:none;border-block-end-color:var(--awm-accent)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* boutique filter bar ------------------------------------------------------ */
.shop-filters{display:grid;gap:.9rem;margin-block-end:2rem}
.shop-filters__row{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.shop-filters__label{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted);
	min-width:84px
}
.shop-filters select{
	background:var(--awm-surface);border:1px solid var(--awm-line);color:var(--awm-ink);
	padding:.5rem .75rem;font:inherit;font-size:.85rem;border-radius:0
}

/* ==========================================================================
   WooCommerce blocks — cart, checkout and account.
   The block templates bring their own light-theme assumptions; these rules
   put them back into the house palette rather than restyling each block.
   ========================================================================== */

.wc-block-components-title,
.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wc-block-components-product-name,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__description,
.wc-block-components-checkout-step__title,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-address-form label{
	color:var(--awm-ink)
}

.wc-block-components-product-metadata,
.wc-block-components-totals-item__description,
.wc-block-components-checkout-step__description,
.wc-block-components-order-summary-item__individual-prices{
	color:var(--awm-ink-muted)
}

.wc-block-cart-items,
.wc-block-components-sidebar,
.wc-block-components-panel,
.wp-block-woocommerce-checkout-order-summary-block{
	background:var(--awm-surface);
	border:1px solid var(--awm-line);
	border-radius:var(--awm-radius,0)
}
.wc-block-cart-items{background:transparent;border:0}
.wc-block-cart-items__header{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.wc-block-cart-items__row{border-block-end:1px solid var(--awm-line)}

.wc-block-components-button:not(.is-link){
	background:var(--awm-accent)!important;color:var(--awm-accent-ink)!important;
	border:1px solid var(--awm-accent)!important;border-radius:var(--awm-btn-radius,0)!important;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.16em;text-transform:uppercase;font-size:.8rem;padding:.85rem 1.6rem!important
}
.wc-block-components-button:not(.is-link):hover{filter:brightness(1.08)}

.wc-block-components-text-input input,
.wc-block-components-select select,
.wc-block-components-textarea{
	background:var(--awm-bg)!important;color:var(--awm-ink)!important;
	border:1px solid var(--awm-line)!important;border-radius:0!important
}
.wc-block-components-text-input input:focus,
.wc-block-components-select select:focus{border-color:var(--awm-accent)!important;outline:none}

/* The country/state combobox is a different control again, and ships light. */
.wc-block-components-combobox .components-combobox-control__suggest-current,
.wc-block-components-combobox input,
.wc-block-components-combobox-control input,
.components-combobox-control__suggestions-container input,
.wc-blocks-components-select__select{
	background:var(--awm-bg)!important;color:var(--awm-ink)!important;
	border:1px solid var(--awm-line)!important;border-radius:0!important
}
.components-form-token-field__suggestions-list,
.components-combobox-control__suggestions-container ul{
	background:var(--awm-surface);color:var(--awm-ink);border:1px solid var(--awm-line)
}
.components-form-token-field__suggestion.is-selected{background:var(--awm-accent);color:var(--awm-accent-ink)}
.wc-block-components-checkout-step{border-color:var(--awm-line)}

.wc-block-components-notice-banner{
	background:var(--awm-surface);border:1px solid var(--awm-line);color:var(--awm-ink)
}
.wc-block-components-totals-wrapper{border-block-start:1px solid var(--awm-line)}
.wc-block-components-radio-control__option{border-color:var(--awm-line)}

/* The empty-cart view: keep it quiet and give the reader somewhere to go. */
.wp-block-woocommerce-empty-cart-block h2,
.wp-block-woocommerce-empty-cart-block .wp-block-heading{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-weight:400
}

/* My account -------------------------------------------------------------- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-navigation li{border-block-end:1px solid var(--awm-line)}
.woocommerce-MyAccount-navigation a{
	display:block;padding:.75rem 0;color:var(--awm-ink-muted);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.8rem;letter-spacing:.14em;text-transform:uppercase
}
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation a:hover{color:var(--awm-accent)}
@media(min-width:820px){
	.woocommerce-account .woocommerce{display:grid;grid-template-columns:220px 1fr;gap:3rem;align-items:start}
}

/* Price-on-request pieces should not look broken next to priced ones. */
.awm-on-request{
	display:inline-block;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-accent)
}

/* ==========================================================================
   Composition and motion.

   The rule for movement here: nothing moves to be noticed. Sections settle
   into place as you reach them, images breathe slowly behind their type, and
   anything a visitor can trigger twice in a row does not animate at all.
   Everything below is switched off entirely under prefers-reduced-motion.
   ========================================================================== */

/* Brand mark in a hero ---------------------------------------------------- */
.hero__mark{margin:0 0 .35rem;line-height:1}
.hero__logo{
	max-height:clamp(46px,7vw,88px);width:auto;display:block;
	filter:drop-shadow(0 2px 18px rgba(0,0,0,.55))
}
.hero--compact .hero__body .btn-row{margin-block-start:1.6rem}

/* The hero photograph drifts, very slowly, so a still page is not static. */
.hero__media img{
	animation:awm-drift 26s ease-in-out infinite alternate;
	transform-origin:center 62%
}
@keyframes awm-drift{from{transform:scale(1.015)}to{transform:scale(1.075)}}

/* Sections settle in ------------------------------------------------------ */
html.awm-anim [data-reveal]{
	opacity:0;transform:translateY(18px);
	transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)
}
html.awm-anim [data-reveal].is-in{opacity:1;transform:none}
/* Cards in a row arrive in sequence rather than all at once. */
[data-reveal] .card:nth-child(1){transition-delay:0ms}
[data-reveal] .card:nth-child(2){transition-delay:70ms}
[data-reveal] .card:nth-child(3){transition-delay:140ms}
[data-reveal] .card:nth-child(4){transition-delay:210ms}
[data-reveal] .card:nth-child(5){transition-delay:280ms}
[data-reveal] .card:nth-child(6){transition-delay:350ms}

/* Cards ------------------------------------------------------------------- */
.card{transition:border-color .3s ease,transform .45s cubic-bezier(.22,.61,.36,1)}
.card:hover{transform:translateY(-3px)}
.card__media{overflow:hidden;display:block}
.card__media img{transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.card:hover .card__media img{transform:scale(1.045)}

/* Section rhythm ---------------------------------------------------------- */
.section{padding-block:clamp(3.5rem,7vw,6.5rem)}
.section--tight{padding-block:clamp(2.5rem,4.5vw,4rem)}
.section + .section{padding-block-start:0}
.section__head{
	display:flex;align-items:end;justify-content:space-between;gap:2rem;flex-wrap:wrap;
	margin-block-end:clamp(1.5rem,3vw,2.5rem)
}
.section__head h2{margin:.5rem 0 0}
.section__head .btn{flex:none}

/* Specification ----------------------------------------------------------- */
.specs{margin-block-start:2.5rem;display:grid;gap:2.5rem}
@media(min-width:900px){.specs{grid-template-columns:repeat(3,1fr);gap:3rem}}
.specs__group h3{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;
	color:var(--awm-ink-muted);margin:0 0 .9rem;font-weight:400
}
.specs__row{
	display:flex;justify-content:space-between;gap:1.5rem;
	padding-block:.72rem;border-block-end:1px solid var(--awm-line)
}
.specs__row dt{color:var(--awm-ink-muted);font-size:.92rem}
.specs__row dd{margin:0;text-align:end;font-variant-numeric:tabular-nums}

.specs__more{margin-block-start:2.5rem;border-block-start:1px solid var(--awm-line);padding-block-start:1.25rem}
.specs__more summary{
	cursor:pointer;list-style:none;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent)
}
.specs__more summary::-webkit-details-marker{display:none}
.specs__more summary::after{content:" +";opacity:.7}
.specs__more[open] summary::after{content:" –"}
.specs__table{margin:1.5rem 0 0;columns:1}
@media(min-width:820px){.specs__table{columns:2;column-gap:3rem}}
.specs__table .specs__row{break-inside:avoid}

/* Headline figures -------------------------------------------------------- */
.figures{
	display:grid;gap:1px;background:var(--awm-line);
	border:1px solid var(--awm-line);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))
}
.figure{background:var(--awm-bg);padding:1.4rem 1.25rem;text-align:center}
.figure__v{
	display:block;font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1;font-variant-numeric:tabular-nums
}
.figure__u{font-size:.5em;color:var(--awm-ink-muted);letter-spacing:.04em}
.figure__k{
	display:block;margin-block-start:.55rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}

/* Gallery ----------------------------------------------------------------- */
.gallery{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.gallery figure{margin:0;overflow:hidden;background:var(--awm-surface)}
.gallery img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.gallery figure:hover img{transform:scale(1.04)}
/* The first frame of a wide gallery earns twice the room. */
@media(min-width:900px){
	.gallery--wide{grid-template-columns:repeat(6,1fr)}
	.gallery--wide figure{grid-column:span 2}
	.gallery--wide figure:first-child{grid-column:span 4}
	.gallery--wide figure:first-child img{aspect-ratio:16/9}
}

/* Section nav ------------------------------------------------------------- */
.section-nav{
	position:sticky;inset-block-start:74px;z-index:20;
	background:color-mix(in srgb,var(--awm-bg) 92%,transparent);
	backdrop-filter:blur(10px);
	border-block:1px solid var(--awm-line)
}
body.admin-bar .section-nav{inset-block-start:106px}
.section-nav ul{display:flex;gap:1.75rem;list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}
.section-nav ul::-webkit-scrollbar{display:none}
.section-nav a{
	display:block;padding:.95rem 0;white-space:nowrap;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;
	color:var(--awm-ink-muted);border-block-end:1px solid transparent;transition:color .25s ease,border-color .25s ease
}
.section-nav a:hover,.section-nav a.is-active{color:var(--awm-ink);border-block-end-color:var(--awm-accent)}

@media(prefers-reduced-motion:reduce){
	.hero__media img{animation:none}
	[data-reveal]{opacity:1;transform:none;transition:none}
	.card,.card__media img,.gallery img{transition:none}
	.card:hover{transform:none}
}

/* ==========================================================================
   Owner's Room
   ========================================================================== */

.owners__gate{display:grid;gap:2.5rem}
@media(min-width:900px){.owners__gate{grid-template-columns:1fr minmax(320px,400px);gap:5rem;align-items:start}}
.owners__gate-form{
	background:var(--awm-surface);border:1px solid var(--awm-line);
	padding:clamp(1.5rem,3vw,2.25rem);border-radius:var(--awm-radius,0)
}
.owners__gate-form label{
	display:block;margin-block-end:.4rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.owners__gate-form input[type=text],
.owners__gate-form input[type=password]{
	width:100%;background:var(--awm-bg);border:1px solid var(--awm-line);
	color:var(--awm-ink);padding:.75rem .85rem;font:inherit;border-radius:0
}
.owners__gate-form input:focus{outline:none;border-color:var(--awm-accent)}
.owners__gate-form p{margin-block:0 1.1rem}
.owners__gate-form .login-remember label{
	display:inline;text-transform:none;letter-spacing:0;font-size:.85rem;
	font-family:inherit;color:var(--awm-ink-muted)
}
/* The invited owner's first screen: the same door, a different question. */
.owners__setup-title{margin:.4rem 0 .6rem;font-size:1.45rem}
.owners__setup-lede{color:var(--awm-ink-muted);font-size:.94rem;line-height:1.6;margin:0 0 1.4rem}
.owners__setup-lede strong{color:var(--awm-ink);font-weight:500}
.owners__setup-error{
	margin:0 0 1.2rem;padding:.7rem .9rem;border:1px solid var(--awm-accent);
	color:var(--awm-ink);font-size:.9rem;line-height:1.5
}
.owners__gate-form .login-submit input[type=submit]{
	width:100%;background:var(--awm-accent);color:var(--awm-accent-ink);
	border:1px solid var(--awm-accent);padding:.9rem 1.5rem;cursor:pointer;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;border-radius:var(--awm-btn-radius,0)
}
.owners__lost{margin-block-start:1rem;font-size:.85rem}
.owners__lost a{color:var(--awm-ink-muted)}
.owners__lost a:hover{color:var(--awm-accent)}

.owners__head{display:flex;align-items:end;justify-content:space-between;gap:2rem;flex-wrap:wrap}
/* The welcome belongs in the corner. An owner opening this page is looking for
   their cars, not for their own name in display type. */
.owners__who{display:flex;align-items:center;gap:1rem}
.owners__hi{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:var(--awm-ink-muted)
}
/* Already asked for: the answer to "did that go through?", on the button itself. */
.perk__done{
	display:inline-flex;align-items:center;gap:.5rem;margin:0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;
	color:var(--awm-accent,#c9a227)
}
/* A standing note under a form, rather than a promise attached to a button. */
.form__note--standalone{color:var(--awm-ink-muted);font-size:.88rem;line-height:1.5;margin-block:.2rem .4rem}
/* Offers arrive as an e-flyer: the artwork is the offer, so it leads. */
#offers .perk{grid-template-columns:1fr}
#offers .perk__media img{aspect-ratio:auto;height:auto;max-height:none}
.owners__subhead{
	margin-block:3rem 1.25rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted);font-weight:400
}

.owners__cars{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(210px,240px));justify-content:start}
.owners__car{
	background:var(--awm-surface);border:1px solid var(--awm-line);
	padding:1.1rem 1.2rem;border-radius:var(--awm-radius,0)
}
.owners__car h3{font-size:1.02rem;line-height:1.25;margin:0}
.owners__car dl{margin-block-start:.7rem}
.owners__car dt,.owners__car dd{font-size:.78rem}
.owners__car h3{margin:0 0 1rem;font-size:1.15rem}
.owners__car dl{margin:0;display:grid;gap:.5rem}
.owners__car dl div{display:flex;justify-content:space-between;gap:1rem;font-size:.88rem}
.owners__car dt{color:var(--awm-ink-muted)}
.owners__car dd{margin:0;text-align:end}

.owners__add{margin-block-start:1.75rem;border-block-start:1px solid var(--awm-line);padding-block-start:1.25rem}
.owners__add summary{
	cursor:pointer;list-style:none;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent)
}
.owners__add summary::-webkit-details-marker{display:none}
.owners__add summary::after{content:" +";opacity:.7}
.owners__add[open] summary::after{content:" –"}
.owners__add form{margin-block-start:1.75rem}

.owners__requests{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--awm-line);border:1px solid var(--awm-line)}
.owners__requests li{background:var(--awm-bg);padding:1.2rem 1.35rem}
.owners__requests p{margin:.6rem 0 0;color:var(--awm-ink-muted);font-size:.92rem}
.owners__req-kind{font-weight:500}
.owners__req-date{margin-inline-start:.9rem;color:var(--awm-ink-muted);font-size:.85rem}
.owners__req-stage{
	float:inline-end;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
	padding:.2rem .6rem;border:1px solid var(--awm-line);color:var(--awm-ink-muted)
}
.owners__req-stage.is-new{border-color:var(--awm-accent);color:var(--awm-accent)}
.owners__req-stage.is-completed,.owners__req-stage.is-closed{opacity:.55}

/* Save a model ------------------------------------------------------------ */
.save-btn{
	display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;
	padding:0;cursor:pointer;color:var(--awm-ink-muted);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;transition:color .25s ease
}
.save-btn:hover,.save-btn.is-saved{color:var(--awm-accent)}
.save-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4}
.save-btn.is-saved svg{fill:currentColor}

/* Card copy --------------------------------------------------------------- */
.card__lede{
	margin:.45rem 0 0;color:var(--awm-ink-muted);font-size:.9rem;line-height:1.5;
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
.card__note{
	margin:.6rem 0 0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted);opacity:.75
}
.card__body{display:flex;flex-direction:column;gap:0}
.card__meta{margin-block-start:auto;padding-block-start:.7rem}

/* Editorial two-column ---------------------------------------------------- */
.editorial{display:grid;gap:2.5rem}
@media(min-width:1000px){
	.editorial{grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:clamp(3rem,6vw,6rem);align-items:start}
	/* Clears the sticky section bar, which itself clears the header. */
	.editorial__aside{position:sticky;inset-block-start:138px}
	body.admin-bar .editorial__aside{inset-block-start:170px}
}
.editorial__copy{max-width:66ch}
.editorial__links{display:flex;flex-direction:column;gap:.65rem;margin-block-start:1.75rem;align-items:start}
.figures--stack{grid-template-columns:1fr}
@media(max-width:999px){.figures--stack{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
.figures--stack .figure{text-align:start;padding:1.15rem 1.25rem}

/* Navigation, refined ------------------------------------------------------
   The panel is the most-used surface on the site, so the movement in it is
   the most restrained: rows lift a hair, the photograph cross-fades, and the
   column beside them slides only as far as the eye needs to know it changed. */

.nav__sections .nav__row{animation:awm-nav-row .4s cubic-bezier(.22,.61,.36,1) both}
.nav__sections .nav__row:nth-child(1){animation-delay:.02s}
.nav__sections .nav__row:nth-child(2){animation-delay:.04s}
.nav__sections .nav__row:nth-child(3){animation-delay:.06s}
.nav__sections .nav__row:nth-child(4){animation-delay:.08s}
.nav__sections .nav__row:nth-child(5){animation-delay:.1s}
.nav__sections .nav__row:nth-child(6){animation-delay:.12s}
.nav__sections .nav__row:nth-child(7){animation-delay:.14s}
.nav__sections .nav__row:nth-child(n+8){animation-delay:.16s}
@keyframes awm-nav-row{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* A hairline that draws itself under the row you are on. */
.nav__row{position:relative}
.nav__row::after{
	content:"";position:absolute;inset-block-end:-1px;inset-inline-start:0;
	width:0;height:1px;background:var(--awm-accent);
	transition:width .4s cubic-bezier(.22,.61,.36,1)
}
.nav__row:hover::after,.nav__row:focus-within::after,.nav__row:has(.is-open)::after{width:100%}

.nav__preview__img{transition:opacity .3s ease}
.hero__logo{align-self:flex-start;object-fit:contain;object-position:left center}

/* On a phone there is no third column, so the rows get the room instead. */
@media(max-width:899px){
	.nav__cols{padding-block-end:2rem}
	.nav__link{font-size:1.18rem;padding-block:.95rem}
}

@media(prefers-reduced-motion:reduce){
	.nav__sections .nav__row,.nav__pane.is-active{animation:none}
	.nav__row::after{transition:none}
	.nav__preview__img{transition:opacity .2s ease}
}

/* Owner's Room forms follow the house field style. */
.form__actions{display:flex;align-items:end}
.form__actions .btn{align-self:start}
.owners__add .form,.owners__requests + .form{margin-block-start:1.5rem}
.field textarea{
	background:transparent;border:1px solid var(--awm-line);padding:.75rem .85rem;
	min-height:6.5rem;resize:vertical
}
.field textarea:focus{border-color:var(--awm-accent)}

/* ==========================================================================
   Brand page
   ========================================================================== */

.hero--brand .hero__body{padding-block-end:clamp(2.5rem,6vw,5rem)}

/* Three doors ------------------------------------------------------------- */
.doors{display:grid;gap:1px;background:var(--awm-line);border:1px solid var(--awm-line)}
@media(min-width:760px){.doors{grid-template-columns:repeat(3,1fr)}}
.door{
	display:grid;gap:.4rem;align-content:start;
	background:var(--awm-bg);padding:clamp(1.5rem,3vw,2.25rem);
	transition:background .3s ease
}
.door:hover{background:var(--awm-surface)}
.door__k{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.24em;color:var(--awm-accent)
}
.door__t{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(1.2rem,2.2vw,1.6rem);color:var(--awm-ink);line-height:1.2
}
.door__d{color:var(--awm-ink-muted);font-size:.9rem}

/* The range, family by family --------------------------------------------- */
.families{display:grid;gap:clamp(1.25rem,2.5vw,2rem)}
@media(min-width:820px){.families{grid-template-columns:repeat(2,1fr)}}
.family{
	display:grid;background:var(--awm-surface);
	border:1px solid var(--awm-line);overflow:hidden;
	transition:border-color .3s ease
}
.family:hover{border-color:color-mix(in srgb,var(--awm-accent) 55%,transparent)}
@media(min-width:560px){.family{grid-template-columns:minmax(0,42%) minmax(0,1fr)}}
.family__media{overflow:hidden;background:var(--awm-bg);display:block}
.family__media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.family:hover .family__media img{transform:scale(1.05)}
.family__body{padding:clamp(1.15rem,2.2vw,1.6rem);display:flex;flex-direction:column;gap:.5rem}
.family__body h3{
	margin:0;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:400;
	font-family:var(--awm-font-display,"Marcellus"),serif;
	letter-spacing:var(--awm-display-track,0);text-transform:var(--awm-display-case,none)
}
.family__figures{margin:0;color:var(--awm-ink-muted);font-size:.88rem}
.family__kids{
	list-style:none;margin:auto 0 0;padding:.85rem 0 0;
	border-block-start:1px solid var(--awm-line);
	display:flex;flex-wrap:wrap;gap:.3rem .95rem
}
.family__kids a{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.family__kids a:hover{color:var(--awm-accent)}

/* Editorial panels -------------------------------------------------------- */
.panel__inner{display:grid;gap:clamp(1.75rem,4vw,3.5rem);align-items:center}
@media(min-width:900px){
	.panel__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.panel--flip .panel__media{order:2}
}
.panel__media{overflow:hidden;background:var(--awm-surface)}
.panel__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.panel__media:empty{display:none}
.panel__copy{max-width:56ch}
.panel__copy h2{margin:.5rem 0 1rem}
.panel__copy p{color:var(--awm-ink-muted);line-height:1.75}
.panel__cta{margin-block-start:1.75rem}

/* ==========================================================================
   Home — chapters.

   Each chapter holds its photograph still while the words travel over it.
   The pinning is a sticky media layer inside a taller section, so it costs
   nothing in JavaScript and degrades to a plain stack when sticky is not
   supported or motion is not wanted.
   ========================================================================== */

.home-reel{overflow:clip}

.chapter{position:relative;background:var(--awm-bg)}
.chapter__media{
	position:sticky;inset-block-start:0;height:100svh;overflow:hidden;
	display:grid;place-items:center
}
.chapter__media img{
	width:100%;height:100%;object-fit:cover;display:block;
	transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,.61,.36,1)
}
.chapter.is-here .chapter__media img{transform:scale(1)}

/* A veil so type stays readable over any photograph, however bright. The
   type sits bottom-left, so that corner is weighted hardest. */
.chapter__veil{
	position:absolute;inset:0;pointer-events:none;
	background:
		linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 97%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 78%,transparent) 28%,
			color-mix(in srgb,var(--awm-bg) 30%,transparent) 58%,
			transparent 88%),
		linear-gradient(to right,
			color-mix(in srgb,var(--awm-bg) 80%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 30%,transparent) 42%,
			transparent 70%)
}
/* The opening carries a headline across the whole frame, so it gets an even
   wash on top of the two gradients. */
.chapter--opening .chapter__veil{
	background:
		linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 96%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 62%,transparent) 45%,
			color-mix(in srgb,var(--awm-bg) 40%,transparent) 100%),
		linear-gradient(to right,
			color-mix(in srgb,var(--awm-bg) 72%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 26%,transparent) 55%,
			transparent 85%)
}

.chapter__panels{position:relative;margin-block-start:-100svh}
.chapter__panel{
	min-height:100svh;display:flex;align-items:flex-end;
	padding-block:clamp(3rem,10vh,7rem)
}
/* Every chapter sets its words in the same place: the bottom-left, where the
   veil is heaviest and where the eye lands after the photograph. */
.chapter--opening .chapter__panel{align-items:flex-end}

.chapter__inner{max-width:min(760px,100%)}
html.awm-anim .chapter__inner{
	opacity:0;transform:translateY(26px);
	transition:opacity .9s cubic-bezier(.22,.61,.36,1),transform .9s cubic-bezier(.22,.61,.36,1)
}
html.awm-anim .chapter__inner.is-in{opacity:1;transform:none}

.chapter__index{
	display:block;margin-block-end:1.1rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.32em;color:var(--awm-accent)
}
.chapter__title{
	margin:.4rem 0 1.1rem;line-height:1.02;
	font-size:clamp(2.9rem,8vw,6.5rem);font-weight:400;
	font-family:var(--awm-font-display,"Marcellus"),serif;
	letter-spacing:var(--awm-display-track,0);text-transform:var(--awm-display-case,none)
}
.chapter__mark{margin-block:.2rem 1.4rem}
.chapter__mark img{
	height:clamp(44px,7vw,86px);width:auto;max-width:min(360px,72vw);
	object-fit:contain;object-position:left center;display:block;
	filter:drop-shadow(0 2px 22px rgba(0,0,0,.6))
}
.chapter__lede{
	max-width:52ch;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7;
	color:var(--awm-ink);margin:0 0 .9rem
}
.chapter__meta{
	margin:0 0 1.8rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted)
}

/* The little cue that says the page continues. */
.chapter__cue{
	position:absolute;inset-block-end:2.2rem;inset-inline-start:50%;
	transform:translateX(-50%);width:26px;height:42px;
	border:1px solid color-mix(in srgb,var(--awm-ink) 45%,transparent);
	border-radius:14px;display:grid;justify-items:center;padding-block-start:8px;z-index:3
}
.chapter__cue span{
	width:2px;height:7px;border-radius:2px;background:var(--awm-ink);
	animation:awm-cue 1.9s ease-in-out infinite
}
@keyframes awm-cue{0%,100%{opacity:0;transform:translateY(0)}35%{opacity:1}70%{opacity:0;transform:translateY(11px)}}

/* Owner's Room invitation -------------------------------------------------- */
/* =====================================================================
   One marque, then its range
   ===================================================================== */
/* Each marque's mark sits top right of its own chapter — the one corner all
   three marques permit, so a single rule serves Bentley, Lamborghini and
   Bugatti without any of them being placed wrongly. */
.chapter__mark--corner{
	position:absolute;z-index:3;
	inset-block-start:clamp(1.4rem,4vw,3rem);
	inset-inline-end:clamp(1.4rem,4vw,3rem);
	margin:0;pointer-events:none;
}
.chapter__mark--corner img{
	display:block;width:auto;object-fit:contain;
	height:clamp(30px,4vw,54px);
	filter:drop-shadow(0 2px 14px rgba(0,0,0,.45));
}
/* The marks are drawn to different proportions: Bentley's carries its wordmark
   beneath the wings and so is nearly square, Bugatti's is a long word. Sized by
   height alone one would tower over the next, so each is given its own. */
.brand-bentley .chapter__mark--corner img{height:clamp(40px,5.4vw,74px)}
.brand-bugatti .chapter__mark--corner img{height:clamp(18px,2.4vw,30px)}
.brand-lamborghini .chapter__mark--corner img{height:clamp(44px,5.8vw,78px)}

.range{background:var(--awm-bg);color:var(--awm-ink)}
.range .section__head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
/* Five across on a wide screen, so a marque's range reads as one row rather
   than four and a straggler. */
.range__row{
	display:grid;gap:clamp(.9rem,1.6vw,1.4rem);
	grid-template-columns:repeat(5,1fr);
}
@media (max-width:1100px){.range__row{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.range__row{grid-template-columns:repeat(2,1fr)}}
.range__card{display:block;color:inherit;text-decoration:none}
.range__frame{
	display:block;overflow:hidden;background:var(--awm-surface);
	border-radius:var(--awm-radius,0);
}
/* The model photography is landscape — 760 by 480, every one of them. A tall
   frame looked handsome in the abstract and cropped more than half the car
   away, so the frame follows the picture instead of the other way round. */
.range__frame img{
	display:block;width:100%;aspect-ratio:3/2;object-fit:cover;
	transition:transform .9s cubic-bezier(.22,.61,.36,1);
}
.range__card:hover .range__frame img{transform:scale(1.04)}
.range__body{display:block;padding-block-start:.85rem}
.range__title{display:block;font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.06rem;line-height:1.25}
.range__meta{
	display:block;margin-block-start:.35rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;color:var(--awm-accent)
}

/* The owner's room, given the width it was asking for. */
.invite--full{position:relative;overflow:hidden;border:0;min-height:clamp(380px,56vh,560px);display:grid;align-items:center}
.invite--full .invite__media{position:absolute;inset:0;z-index:0}
.invite--full .invite__media img{width:100%;height:100%;object-fit:cover;display:block}
.invite--full .invite__veil{
	position:absolute;inset:0;
	background:linear-gradient(to right,rgba(0,0,0,.86) 0%,rgba(0,0,0,.66) 46%,rgba(0,0,0,.28) 100%);
}
.invite--full .invite__inner{position:relative;z-index:1;display:block;max-width:62ch}
.invite--full h2{font-size:clamp(2rem,4.6vw,3.4rem);margin:.4rem 0 1rem}

/* The marque's own bar, beneath the house's. */
.marque-bar{
	background:var(--awm-bg);border-block-end:1px solid var(--awm-line);
	position:relative;z-index:8;
}
.marque-bar__in{
	display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
	min-height:46px;flex-wrap:wrap;
}
/* The marque's own mark, back where it belongs. An emblem alone leaves a
   visitor guessing, so a mark that is not already a wordmark keeps the name
   beside it. */
.marque-bar__name{
	display:inline-flex;align-items:center;gap:.7rem;
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:1.02rem;letter-spacing:.02em;color:var(--awm-ink);text-decoration:none;
	text-transform:var(--awm-display-case,none);
	padding-block:.45rem;
}
/* Qualified with the element, not left as a lone class: WooCommerce ships
   `.woocommerce img, .woocommerce-page img{height:auto}` at two units of
   specificity, and WordPress puts `woocommerce-page` on the body of pages that
   have nothing to do with the shop — every brand page here. A single class
   loses to it, which is how the marque's mark came out at its full 300 by 150
   and made the bar 232px tall. `img.x` ties on specificity and wins on order,
   because main.css is enqueued after WooCommerce's. */
img.marque-bar__logo{height:clamp(18px,2.1vw,26px);width:auto;display:block}
.marque-bar__word{display:block}
.marque-bar__links{display:flex;align-items:center;gap:clamp(.9rem,2.2vw,2rem);flex-wrap:wrap}
.marque-bar__links a{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;
	color:var(--awm-ink-muted);text-decoration:none;padding-block:.75rem;
	transition:color .3s ease;
}
.marque-bar__links a:hover{color:var(--awm-accent)}
/* The bar's link rule is two classes deep and was quietly beating .btn--accent,
   so the one button meant to look the same everywhere came out muted grey at
   link size. A button inside the bar is a button. */
.marque-bar__links a.btn{
	color:var(--awm-ink);padding:.6rem 1.2rem;font-size:.72rem;letter-spacing:.16em;
}
.marque-bar__links a.btn--accent{color:var(--awm-accent-ink)}
.marque-bar__links a.btn--accent:hover{background:transparent;color:var(--awm-accent)}
/* The range, as this marque's own list, opened from the bar. */
.marque-drop{position:relative}
.marque-drop__trigger{
	display:inline-flex;align-items:center;gap:.45rem;
	background:none;border:0;padding:.75rem 0;cursor:pointer;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;
	color:var(--awm-ink-muted);transition:color .3s ease;
}
.marque-drop__trigger:hover,
.marque-drop.is-open .marque-drop__trigger{color:var(--awm-accent)}
.marque-drop__chev{
	width:7px;height:7px;border-inline-end:1px solid currentColor;border-block-end:1px solid currentColor;
	transform:translateY(-2px) rotate(45deg);transition:transform .25s ease
}
.marque-drop.is-open .marque-drop__chev{transform:translateY(1px) rotate(225deg)}
.marque-drop__list{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}
.marque-drop__list a{
	display:block;padding:.45rem 0;color:var(--awm-ink);text-decoration:none;
	font-size:.95rem;transition:color .25s ease
}
.marque-drop__list a:hover{color:var(--awm-accent)}
.marque-drop__all{
	display:block;margin-block-start:.8rem;padding-block-start:.8rem;
	border-block-start:1px solid var(--awm-line);color:var(--awm-ink-muted);text-decoration:none;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.14em;text-transform:uppercase;font-size:.66rem
}
.marque-drop__all:hover{color:var(--awm-accent)}

/* The primary action keeps one shape everywhere: the header's button, the
   marque bar's button and the menu's button are the same button. */
.marque-bar__cta{margin-inline-start:.4rem}

@media (max-width:860px){
	.marque-bar__in{gap:.75rem}
	.marque-bar__links{gap:.9rem}
}
@media (max-width:640px){
	/* On a phone the bar was 146px tall: the mark on one line, the links
	   wrapped onto two more, and its own green button under those — a second
	   Test Drive 60px below the header's. The mark and the links now share
	   one row that scrolls sideways, and the header's button does the asking. */
	.marque-bar__in{justify-content:flex-start;flex-wrap:nowrap;gap:1rem;min-height:44px}
	.marque-bar__name{flex:none;gap:.5rem;width:auto}
	img.marque-bar__logo{height:18px}
	.marque-bar__word{font-size:.72rem}
	.marque-bar__links{
		flex:1 1 auto;flex-wrap:nowrap;gap:1.1rem;
		overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
		padding-block:.55rem;margin-inline-end:calc(-1 * var(--awm-gutter,1.5rem));
		padding-inline-end:var(--awm-gutter,1.5rem);
		mask-image:linear-gradient(to right,#000 calc(100% - 2rem),transparent)
	}
	.marque-bar__links::-webkit-scrollbar{display:none}
	.marque-bar__links a,.marque-bar__links .marque-drop,.marque-drop__trigger{white-space:nowrap;flex:none}
	.marque-bar__cta{display:none}
	.marque-drop__chev{display:none}
	/* A thumb-sized target for the range button (it was 37px tall). */
	.marque-drop__trigger{min-height:44px}
}
/* The house mark carries the header alone now, so it can be read across a room. */
.brandmark img{height:clamp(36px,4vw,54px);width:auto}

.invite{background:var(--awm-surface);border-block:1px solid var(--awm-line)}
.invite__copy{min-width:0}
.invite__copy h2{font-size:clamp(1.7rem,3.4vw,2.6rem)}
.invite__inner{display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}
@media(min-width:900px){.invite__inner{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
.invite h2{margin:.5rem 0 1rem}
.invite p{color:var(--awm-ink-muted);max-width:52ch;line-height:1.75}
.invite .btn-row{margin-block-start:1.75rem}
.invite__list{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--awm-line);border:1px solid var(--awm-line)}
.invite__list li{background:var(--awm-surface);padding:1.05rem 1.25rem;color:var(--awm-ink-muted);font-size:.94rem}
.invite__list li::before{content:"—";color:var(--awm-accent);margin-inline-end:.7rem}

@media(prefers-reduced-motion:reduce){
	.chapter__media{position:relative;height:70svh}
	.chapter__panels{margin-block-start:0}
	.chapter__panel{min-height:0;padding-block:clamp(2rem,6vh,4rem)}
	.chapter__media img,.chapter__inner{transition:none;transform:none;opacity:1}
	.chapter__cue{display:none}
}

/* Events and offers -------------------------------------------------------- */
.perks{display:grid;gap:1.25rem}
@media(min-width:780px){.perks{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}
.perk{
	display:flex;flex-direction:column;
	background:var(--awm-surface);border:1px solid var(--awm-line);
	overflow:hidden;transition:border-color .3s ease
}
.perk:hover{border-color:color-mix(in srgb,var(--awm-accent) 55%,transparent)}
.perk__media{overflow:hidden;background:var(--awm-bg)}
.perk__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.perk:hover .perk__media img{transform:scale(1.04)}
.perk__body{padding:clamp(1.15rem,2.2vw,1.6rem);display:flex;flex-direction:column;gap:.55rem;flex:1}
.perk__body h3{margin:0;font-size:1.2rem;font-weight:400;font-family:var(--awm-font-display,"Marcellus"),serif}
.perk__facts{
	margin:0;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-accent)
}
.perk__copy{color:var(--awm-ink-muted);font-size:.94rem;line-height:1.65}
.perk__copy p{margin:0 0 .6rem}
.perk__form{margin-block-start:auto;padding-block-start:.9rem}

/* A direct line to management ---------------------------------------------- */
.direct{
	display:grid;gap:clamp(1.75rem,4vw,3.5rem);align-items:start;
	background:var(--awm-surface);border:1px solid var(--awm-line);
	padding:clamp(1.5rem,3.5vw,3rem)
}
@media(min-width:900px){.direct{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.direct h2{margin:.5rem 0 1rem}
.direct p{color:var(--awm-ink-muted);line-height:1.75;max-width:48ch}
.direct__form{grid-template-columns:1fr}

/* ---------------------------------------------------------------------------
   Product page — the boutique's own furniture
   ------------------------------------------------------------------------ */
.label--link{display:inline-block;color:var(--awm-ink-muted);text-decoration:none;transition:color .2s ease}
.label--link:hover{color:var(--awm-accent)}
.product-enquire{
	margin-block:1.5rem;padding:1.25rem 1.35rem;border:1px solid var(--awm-line);
	background:var(--awm-surface)
}
.product-enquire p{margin:0 0 1rem;color:var(--awm-ink-muted);font-size:.92rem}
.product-service{
	margin-block-start:1.75rem;padding-block-start:1.4rem;border-block-start:1px solid var(--awm-line);
	display:grid;gap:1rem
}
.product-service dt{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent);
	margin-block-end:.3rem
}
.product-service dd{margin:0;color:var(--awm-ink-muted);font-size:.9rem;line-height:1.6}
.product-story{border-block-start:1px solid var(--awm-line);margin-block-start:1rem}
.single-product .related.products ul.products{margin-block-start:1.25rem}

/* ---------------------------------------------------------------------------
   Home — the longer read
   ------------------------------------------------------------------------ */

/* Lines of display type that rise out of a clip rather than fading in. */
.mask{display:block;overflow:hidden}
.mask__in{
	display:block;transform:translateY(105%);opacity:0;
	transition:transform .9s cubic-bezier(.22,.8,.28,1),opacity .9s ease
}
[data-mask].is-in .mask__in{transform:translateY(0);opacity:1}

/* The band of figures. */
.band{
	border-block:1px solid var(--awm-line);
	background:
		radial-gradient(120% 140% at 50% 0%,color-mix(in srgb,var(--awm-accent) 8%,transparent),transparent 60%),
		var(--awm-surface);
	padding-block:clamp(3rem,7vw,5.5rem)
}
.band__head{text-align:center;max-width:52ch;margin-inline:auto;margin-block-end:3rem}
.band__head h2{font-size:clamp(1.6rem,3.4vw,2.6rem);margin-block:.6rem 0}
.band__grid{
	display:grid;gap:2.5rem 1.5rem;
	grid-template-columns:repeat(2,minmax(0,1fr));text-align:center
}
@media(min-width:800px){.band__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.band__v{
	display:block;font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(2.4rem,6vw,4rem);line-height:1;color:var(--awm-ink);
	font-variant-numeric:tabular-nums
}
.band__k{
	display:block;margin-block-start:.7rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.band__note{display:block;margin-block-start:.35rem;font-size:.82rem;color:var(--awm-ink-muted);opacity:.75}

/* The rail: pinned while its contents travel sideways. */
.rail{position:relative}
.rail__stage{
	display:flex;align-items:center;
	overflow-x:auto;overflow-y:hidden;
	padding-inline:clamp(1.25rem,5vw,4rem);padding-block:clamp(2.5rem,6vw,4.5rem);
	scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch
}
.rail.is-pinned .rail__stage{
	position:sticky;top:0;height:100vh;overflow:hidden;padding-block:0
}
.rail__track{display:flex;gap:1.5rem;align-items:center;will-change:transform}
.rail__intro{
	flex:0 0 min(30rem,72vw);padding-inline-end:2rem;scroll-snap-align:start
}
.rail__intro h2{font-size:clamp(1.7rem,3.6vw,2.8rem);margin-block:.6rem 1rem}
.rail__intro p{color:var(--awm-ink-muted);max-width:36ch}
.rail__card{
	flex:0 0 clamp(15rem,24vw,21rem);position:relative;scroll-snap-align:center;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	text-decoration:none;color:inherit;overflow:hidden;
	transition:border-color .3s ease,transform .5s cubic-bezier(.22,.8,.28,1)
}
.rail__card:hover{border-color:var(--awm-accent);transform:translateY(-6px)}
.rail__card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.rail__card__body{display:block;padding:1.1rem 1.15rem 1.35rem}
.rail__card__brand{
	display:block;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-accent)
}
.rail__card__title{
	display:block;font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.15rem;
	margin-block:.4rem .3rem;line-height:1.25
}
.rail__card__meta{display:block;font-size:.82rem;color:var(--awm-ink-muted);font-variant-numeric:tabular-nums;margin:0}
.rail__end{
	flex:0 0 min(22rem,70vw);display:flex;flex-direction:column;justify-content:center;
	gap:1rem;padding-inline:1.5rem;scroll-snap-align:center
}

/* A single sentence, held on its own. */
.statement{
	position:relative;padding-block:clamp(5rem,14vw,10rem);text-align:center;
	border-block-end:1px solid var(--awm-line)
}
.statement blockquote{
	margin:0 auto;max-width:22ch;
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(1.9rem,5.5vw,4rem);line-height:1.12;color:var(--awm-ink)
}
.statement cite{
	display:block;margin-block-start:2rem;font-style:normal;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.statement__rule{
	display:block;width:1px;height:clamp(2.5rem,7vw,5rem);margin:0 auto 2.5rem;
	background:linear-gradient(to bottom,transparent,var(--awm-accent))
}

@media(prefers-reduced-motion:reduce){
	.mask__in{transform:none;opacity:1;transition:none}
	.rail.is-pinned .rail__stage{position:static;height:auto;overflow-x:auto}
	.rail{height:auto !important}
	.rail__track{transform:none !important}
}

/* The description sits inside Woo's own product grid, so it has to be told to
   span it — otherwise a full-width essay renders in a half-width column. */
.single-product div.product > .product-story{grid-column:1/-1;padding-block:2.5rem 0}
.single-product div.product > .product-story > .wrap{width:100%}
.single-product div.product > .related.products{grid-column:1/-1}

/* Woo's add-to-cart carries the admin colour scheme unless we claim it. */
.woocommerce div.product form.cart .button,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.single-product .single_add_to_cart_button{
	background:var(--awm-accent);border:1px solid var(--awm-accent);color:var(--awm-accent-ink);
	border-radius:var(--awm-btn-radius,0)
}
.woocommerce div.product form.cart .button:hover,
.single-product .single_add_to_cart_button:hover{background:transparent;color:var(--awm-accent)}
.woocommerce div.product form.cart{display:flex;gap:.75rem;align-items:stretch;flex-wrap:wrap}
.woocommerce div.product form.cart .quantity{margin:0}

/* A small product photograph should still fill its column: the frame holds the
   shape, the photograph sits in the middle of it at its own size. */
/* Woo halves the gallery for its own float layout; our column is already the
   right width, so take it back. */
.woocommerce .single-product div.product .woocommerce-product-gallery,
.single-product div.product .woocommerce-product-gallery,
.woocommerce div.product div.images{width:100%;float:none;margin:0}
.single-product div.product .summary,
.woocommerce div.product div.summary{width:100%;float:none;margin:0}
.single-product .woocommerce-product-gallery{background:var(--awm-surface);padding:1.5rem}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image img{
	display:block;width:auto;max-width:100%;max-height:min(60vh,640px);
	margin-inline:auto;object-fit:contain
}
.single-product .woocommerce-product-gallery__trigger{display:none}
.single-product .flex-control-thumbs{margin-block-start:1rem}

/* The marque chooser on the inventory page. */
.chooser{margin-block:1.5rem 2.25rem}
.chooser .label{display:block;margin-block-end:1rem}
.chooser .marque{padding-block:2rem}
.chooser .marque__logo{max-height:52px}
.marque__meta{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
	color:var(--awm-accent);opacity:.85
}

/* ==========================================================================
   The diary — a month you can read, not a list you have to scan.
   ========================================================================== */
.cal{display:grid;gap:2rem;align-items:start}
@media(min-width:900px){.cal{grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:3rem}}

.cal__grid{border:1px solid var(--awm-line);background:var(--awm-surface);padding:1.25rem}
.cal__nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-block-end:1rem}
.cal__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.15rem;color:var(--awm-ink)
}
.cal__arrow{
	width:34px;height:34px;border:1px solid var(--awm-line);background:none;color:var(--awm-ink-muted);
	cursor:pointer;font-size:1.1rem;line-height:1;transition:border-color .2s ease,color .2s ease
}
.cal__arrow:hover:not(:disabled){border-color:var(--awm-accent);color:var(--awm-accent)}
.cal__arrow:disabled{opacity:.3;cursor:default}

.cal__week{
	display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-block-end:.4rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted);text-align:center
}
.cal__month{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.cal__month[hidden]{display:none}
.cal__day{
	position:relative;aspect-ratio:1;display:flex;flex-direction:column;
	align-items:center;justify-content:center;gap:.2rem;
	border:1px solid transparent;background:none;padding:0;
	font-variant-numeric:tabular-nums;font-size:.88rem;color:var(--awm-ink-muted);opacity:.55
}
.cal__day--empty{opacity:0}
.cal__day.is-today{color:var(--awm-ink);opacity:1;border-color:var(--awm-line)}
.cal__day.has-event{
	opacity:1;color:var(--awm-ink);cursor:pointer;background:var(--awm-surface-2,#1a1d1a);
	border-color:var(--awm-line);transition:border-color .2s ease,background .2s ease
}
.cal__day.has-event:hover,.cal__day.is-picked{border-color:var(--awm-accent);background:var(--awm-bg)}
.cal__day.is-picked{color:var(--awm-accent)}
.cal__dot{display:block;width:4px;height:4px;border-radius:999px;background:var(--awm-accent)}
.cal__legend{
	display:flex;align-items:center;gap:.5rem;margin-block:1rem 0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted)
}

.cal__list{display:grid;gap:1.25rem}
.cal__card{
	display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;
	border:1px solid var(--awm-line);background:var(--awm-surface);padding:1.25rem;
	transition:border-color .25s ease
}
.cal__card[hidden]{display:none}
.cal__card.is-picked{border-color:var(--awm-accent)}
.cal__card__date{
	display:flex;flex-direction:column;align-items:center;justify-content:center;
	min-width:64px;padding:.6rem .5rem;border:1px solid var(--awm-line);background:var(--awm-bg);
	align-self:start
}
.cal__card__d{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.6rem;line-height:1;color:var(--awm-ink)
}
.cal__card__m{
	margin-block-start:.2rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent);text-align:center;line-height:1.3
}
.cal__card__body h3{font-size:1.15rem;margin:0 0 .35rem}
.cal__card__facts{
	margin:0 0 .6rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.cal__card__copy{color:var(--awm-ink-muted);font-size:.92rem;line-height:1.65}
.cal__card__copy p{margin:0 0 .6rem}
.cal__empty{color:var(--awm-ink-muted);font-size:.92rem}
.cal__empty[hidden]{display:none}

/* ==========================================================================
   Page furniture — a masthead, a lede, and an index for long copy.
   ========================================================================== */
.page-head--wide{
	padding-block:clamp(2.5rem,6vw,5rem) clamp(1.5rem,3vw,2.5rem);
	border-block-end:1px solid var(--awm-line)
}
.page-head--wide h1{font-size:clamp(2.1rem,5.5vw,4rem);line-height:1.04;margin-block:.6rem 0}
.page-head__lede{
	max-width:52ch;margin-block-start:1.1rem;
	font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.65;color:var(--awm-ink-muted)
}

/* One column on phones that can never grow past the screen: the On-this-page
   chips scroll sideways inside it (5 Oct) instead of widening the page. */
.reading{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr)}
.reading > *{min-width:0}
@media(min-width:1000px){
	.reading{grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:4rem;align-items:start}
	.reading__index{position:sticky;inset-block-start:110px}
	body.admin-bar .reading__index{inset-block-start:142px}
}
.reading__index ul{list-style:none;margin:.9rem 0 0;padding:0;display:grid;gap:.1rem}
.reading__index a{
	display:block;padding:.42rem 0;border-block-end:1px solid var(--awm-line);
	font-size:.9rem;color:var(--awm-ink-muted);transition:color .2s ease,padding-inline-start .2s ease
}
.reading__index a:hover{color:var(--awm-accent);padding-inline-start:.3rem}
.reading__copy{max-width:70ch}
.reading__copy--alone{max-width:70ch;margin-inline:auto}
.prose h2{margin-block:2.5rem 1rem;font-size:clamp(1.35rem,2.4vw,1.85rem);scroll-margin-block-start:120px}
.prose h2:first-child{margin-block-start:0}
.prose h3{margin-block:1.75rem .6rem;font-size:1.15rem}
.prose p{margin-block:0 1.1rem;line-height:1.75;color:var(--awm-ink-muted)}
.prose ul,.prose ol{margin-block:0 1.2rem;padding-inline-start:1.2rem;color:var(--awm-ink-muted);line-height:1.7}
.prose li{margin-block-end:.35rem}
.prose strong{color:var(--awm-ink);font-weight:500}
.prose hr{border:0;border-block-start:1px solid var(--awm-line);margin-block:2.5rem}

/* ==========================================================================
   Contact — the rooms, with their maps.
   ========================================================================== */
.contact-strip{
	list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;
	grid-template-columns:repeat(auto-fit,minmax(190px,1fr))
}
.contact-strip li{
	border-inline-start:1px solid var(--awm-line);padding-inline-start:1.1rem
}
.contact-strip__k{
	display:block;margin-block-end:.35rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.contact-strip__v{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.05rem;color:var(--awm-ink);
	word-break:break-word
}
.contact-strip__v:hover{color:var(--awm-accent)}

/* Decided 25 September: the contact page lists the rooms plainly — name,
   address, telephone, Directions — without an embedded map per room. */
.places{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.place{
	display:grid;gap:0;border:1px solid var(--awm-line);background:var(--awm-surface);overflow:hidden
}
.place .place__body{display:flex;flex-direction:column;height:100%}
.place .place__body .btn-row{margin-block-start:auto;padding-block-start:1.2rem}
.place__map{position:relative;min-height:260px;background:var(--awm-surface-2,#1a1d1a)}
.place__map iframe{
	position:absolute;inset:0;width:100%;height:100%;border:0;
	filter:grayscale(1) invert(.92) contrast(.88);opacity:.85;transition:filter .4s ease,opacity .4s ease
}
.place:hover .place__map iframe{opacity:1}
.place__body{padding:clamp(1.4rem,3vw,2.25rem);display:flex;flex-direction:column;gap:.55rem}
.place__mark img{max-height:30px;width:auto;object-fit:contain;object-position:left center}
[dir="rtl"] .place__mark img{object-position:right center}
.place__body h3{font-size:1.3rem;margin-block:.5rem 0}
.place__address{margin:0;color:var(--awm-ink-muted);font-size:.95rem}
.place__note{margin:0;color:var(--awm-ink-muted);font-size:.9rem;opacity:.8;max-width:44ch}
.place__facts{display:grid;gap:.55rem;margin-block:1rem 0;padding-block-start:1rem;border-block-start:1px solid var(--awm-line)}
.place__facts dt{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted);margin-block-end:.15rem
}
.place__facts dd{margin:0;color:var(--awm-ink);font-size:.95rem}
.place__facts a:hover{color:var(--awm-accent)}
.place .btn-row{margin-block-start:1.25rem}

/* ==========================================================================
   A card that shows you the rest of the set.
   ========================================================================== */
.card__media img.is-fading{opacity:0}
.card__media img{transition:transform .6s ease,opacity .16s ease}
.card__ticks{
	position:absolute;inset-inline:.7rem;inset-block-end:.7rem;
	display:flex;gap:3px;opacity:0;transition:opacity .25s ease;pointer-events:none
}
.card__media.is-flicking .card__ticks{opacity:1}
.card__ticks i{
	flex:1;height:2px;background:color-mix(in srgb,var(--awm-ink) 30%,transparent);
	transition:background .3s ease
}
.card__ticks i.is-on{background:var(--awm-accent)}

/* ==========================================================================
   The reel — one photograph at a time, advanced by the scroll.
   ========================================================================== */
.reel{position:relative}
.reel__stage{
	position:sticky;inset-block-start:0;height:100svh;
	display:grid;place-items:center;overflow:hidden;background:var(--awm-bg)
}
.reel__frames{position:relative;width:100%;height:100%}
.reel__frame{
	position:absolute;inset:0;margin:0;
	opacity:0;transform:scale(1.04);
	transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform 1.2s cubic-bezier(.22,.61,.36,1)
}
.reel__frame.is-on{opacity:1;transform:scale(1)}
.reel__frame img{width:100%;height:100%;object-fit:cover}
.reel__hud{
	position:absolute;inset-block-end:clamp(1.25rem,4vw,2.5rem);inset-inline:0;
	display:flex;align-items:center;justify-content:center;gap:1.25rem;
	padding-inline:1.25rem;pointer-events:none
}
.reel__dots{display:flex;gap:.4rem;pointer-events:auto}
.reel__dot{
	width:26px;height:2px;border:0;padding:0;cursor:pointer;
	background:color-mix(in srgb,#fff 35%,transparent);transition:background .3s ease
}
.reel__dot.is-on{background:var(--awm-accent)}
.reel__count{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.2em;color:#fff;opacity:.8;font-variant-numeric:tabular-nums
}
.reel__caption{
	position:absolute;inset-block-start:clamp(1.25rem,4vw,2.5rem);inset-inline-start:clamp(1.25rem,4vw,2.5rem);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;opacity:.75
}
.reel.is-static{height:auto!important}
.reel.is-static .reel__stage{position:static;height:auto;display:block}
.reel.is-static .reel__frames{display:grid;gap:1rem;height:auto}
.reel.is-static .reel__frame{position:static;opacity:1;transform:none}
.reel.is-static .reel__hud{display:none}
@media(max-width:640px){
	.reel__stage{height:70svh}
}

/* ==========================================================================
   The cursor.
   ========================================================================== */
.cursor{
	position:fixed;inset-block-start:0;inset-inline-start:0;z-index:200;
	width:34px;height:34px;border:1px solid color-mix(in srgb,var(--awm-accent) 70%,transparent);
	border-radius:999px;pointer-events:none;opacity:0;
	display:grid;place-items:center;
	transition:width .28s cubic-bezier(.22,.61,.36,1),height .28s cubic-bezier(.22,.61,.36,1),
		opacity .25s ease,background .28s ease,border-color .28s ease
}
.cursor.is-live{opacity:1}
.cursor__dot{
	width:3px;height:3px;border-radius:999px;background:var(--awm-accent);
	transition:opacity .2s ease,transform .28s ease
}
.cursor__label{
	position:absolute;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;
	color:var(--awm-accent-ink,#0A0B0A);opacity:0;transition:opacity .2s ease;white-space:nowrap
}
.cursor.is-active{width:46px;height:46px;border-color:var(--awm-accent)}
.cursor.is-active .cursor__dot{opacity:0}
.cursor.has-label{
	width:74px;height:74px;background:var(--awm-accent);border-color:var(--awm-accent)
}
.cursor.has-label .cursor__label{opacity:1}
.cursor.has-label .cursor__dot{opacity:0}
.cursor.is-down{transform-origin:center;width:28px;height:28px}

/* The native pointer stays put on anything you actually type into. */
@media(hover:hover) and (pointer:fine){
	html.has-cursor,
	html.has-cursor a,
	html.has-cursor button,
	html.has-cursor summary,
	html.has-cursor [role="button"],
	html.has-cursor .card,
	html.has-cursor .marque{cursor:none}
	html.has-cursor input,
	html.has-cursor textarea,
	html.has-cursor select,
	html.has-cursor iframe,
	html.has-cursor .woocommerce-product-gallery{cursor:auto}
}
/* A modal <dialog> lives in the browser's top layer, above the ring, so
   inside a pop-up the ring was hidden and the native pointer was switched
   off — no cursor at all. While any dialog is open the native pointer comes
   back everywhere and the ring steps aside. */
@media(hover:hover) and (pointer:fine){
	html.has-cursor dialog[open],
	html.has-cursor dialog[open] *{cursor:auto}
	html.has-cursor dialog[open] a,
	html.has-cursor dialog[open] button,
	html.has-cursor dialog[open] summary,
	html.has-cursor dialog[open] label,
	html.has-cursor dialog[open] select,
	html.has-cursor dialog[open] [role="button"]{cursor:pointer}
	html.has-cursor dialog[open] input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
	html.has-cursor dialog[open] textarea{cursor:text}
	html:has(dialog[open]) .cursor{opacity:0}
}
@media(prefers-reduced-motion:reduce){
	.cursor{display:none}
	html.has-cursor,html.has-cursor *{cursor:auto}
}

/* ==========================================================================
   Home — what we are, in three lines.
   ========================================================================== */
.promises{border-block-end:1px solid var(--awm-line)}
.promise-row{display:grid;gap:2rem;grid-template-columns:1fr}
@media(min-width:820px){.promise-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}}
.promise{
	display:flex;flex-direction:column;gap:.6rem;
	padding-block-start:1.5rem;border-block-start:1px solid var(--awm-line)
}
.promise__n{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.24em;color:var(--awm-accent);font-variant-numeric:tabular-nums
}
.promise h2{font-size:clamp(1.25rem,2.2vw,1.65rem);margin:0;line-height:1.15}
.promise p{margin:0;color:var(--awm-ink-muted);font-size:.95rem;line-height:1.7;max-width:36ch}
.promise__go{
	margin-block-start:auto;padding-block-start:.75rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink);
	transition:color .2s ease
}
.promise__go::after{content:" →";color:var(--awm-accent)}
.promise__go:hover{color:var(--awm-accent)}

.section__lede{margin-block:.75rem 0;max-width:52ch;color:var(--awm-ink-muted);line-height:1.65}
.band__lede{margin-block-start:1rem;color:var(--awm-ink-muted);line-height:1.7}

/* Three marks of very different shape have to be balanced by eye, not by a
   single rule: a wordmark reads large at the same height as a shield. */
/* Sized by the ink each file actually carries: Bentley's PNG is mostly
   transparent padding, Bugatti's has none, so equal heights looked like three
   different sizes (44×22, 36×40, 65×15 in the menu). These read as one weight. */
img.nav__logo{width:auto;max-width:170px}
.brand-bentley .nav__logo{width:170px;height:42px}
.brand-bugatti .nav__logo{width:118px;height:27px}
.brand-lamborghini .nav__logo{width:46px;height:52px}
.marque__logo{max-height:40px;max-width:150px}
.brand-bentley .marque__logo{max-height:38px}
.brand-bugatti .marque__logo{max-height:20px}
.brand-lamborghini .marque__logo{max-height:52px}
.chooser .brand-bentley .marque__logo{max-height:44px}
.chooser .brand-bugatti .marque__logo{max-height:30px}
.chooser .brand-lamborghini .marque__logo{max-height:66px}
.place__mark img{max-height:28px}
.place.brand-bugatti .place__mark img{max-height:18px}
.place.brand-lamborghini .place__mark img{max-height:40px}

/* ==========================================================================
   The people.
   ========================================================================== */
.team{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));margin-block-start:1.5rem}
.person{background:var(--awm-surface);border:1px solid var(--awm-line);transition:border-color .25s ease,transform .25s ease}
.person:hover{border-color:color-mix(in srgb,var(--awm-accent) 55%,transparent);transform:translateY(-2px)}
.person[hidden]{display:none}
.person__media{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--awm-surface-2,#1a1d1a);display:grid;place-items:center}
.person__media img{width:100%;height:100%;object-fit:cover;object-position:center 12%;filter:grayscale(1) contrast(1.02);transition:filter .45s ease,transform .6s ease}
.person:hover .person__media img{filter:none;transform:scale(1.02)}
.person__initials{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:2rem;color:var(--awm-ink-muted);opacity:.5
}
.person__body{padding:.9rem 1rem 1.15rem}
.person__name{font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.02rem;line-height:1.25;margin:0}
.person__role{
	margin:.35rem 0 0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)
}
/* A chip that is also a button must not lose the active fill to the reset. */
.filters button.chip{
	cursor:pointer;font:inherit;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;
	background:none;color:var(--awm-ink-muted)
}
.filters button.chip.is-active{
	background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)
}

/* Pillars: history, mission, values. */
.pillars{display:grid;gap:2rem;grid-template-columns:1fr}
@media(min-width:820px){.pillars{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}}
.pillar{border-block-start:1px solid var(--awm-line);padding-block-start:1.5rem}
.pillar__n{
	display:block;margin-block-end:.5rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--awm-accent)
}
.pillar h2{font-size:clamp(1.25rem,2.2vw,1.6rem);margin:0 0 .6rem}
.pillar p{margin:0;color:var(--awm-ink-muted);line-height:1.7;font-size:.95rem}

/* Awards, with the photograph the showroom keeps. */
.awards-grid{
	display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
	margin-block-start:2rem
}
.award{
	display:flex;flex-direction:column;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	transition:border-color .25s ease,transform .25s ease
}
.award:hover{border-color:color-mix(in srgb,var(--awm-accent) 55%,transparent);transform:translateY(-2px)}
/* The trophies arrived from the old site as dark bronze artwork on a
   transparent background — invisible against a dark card, which is how ten
   awards read as ten empty rectangles. They are given the light panel the old
   site set them against, and shown whole rather than cropped: an award is a
   shape, and cropping one is the same mistake as cropping a logo. */
.award__media{
	aspect-ratio:3/4;overflow:hidden;
	background:linear-gradient(170deg,#f4f3ef 0%,#e4e2dc 100%);
	display:grid;place-items:center;padding:1.1rem
}
.award__media img{
	width:100%;height:100%;object-fit:contain;
	filter:drop-shadow(0 6px 14px rgba(0,0,0,.18))
}
.award__body{padding:1rem 1.1rem 1.25rem;display:flex;flex-direction:column;gap:.3rem}
.award__year{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.2em;color:var(--awm-accent);font-variant-numeric:tabular-nums
}
.award__name{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.05rem;line-height:1.25;margin:0
}
.award__who{
	margin:0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--awm-ink-muted)
}

/* Menu: a section with no list still says something. */
.nav__pane--note{max-width:34rem}
.nav__note{margin:0 0 1rem;color:var(--awm-ink-muted);line-height:1.7;font-size:.95rem}
.nav__ranges{display:grid;gap:1.5rem 2rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.nav__range__label{
	display:block;margin-block-end:.6rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.nav__models{list-style:none;margin:0;padding:0;display:grid;gap:.05rem}
.nav__models a{
	display:block;padding:.26rem 0;font-size:.92rem;color:var(--awm-ink-muted);
	transition:color .18s ease,padding-inline-start .18s ease
}
.nav__models a:hover,.nav__models a:focus-visible{color:var(--awm-accent);padding-inline-start:.3rem}

/* ==========================================================================
   Boutique photography sits on white.
   The marques shoot their collections as cut-outs; on a dark card a
   transparent PNG loses its edges, so every product photograph gets the
   ground it was shot against.
   ========================================================================== */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
ul.products li.product img{background:#fff}
.woocommerce ul.products li.product-category img,
ul.products li.product-category img{background:var(--awm-surface-2,#1a1d1a)}
.single-product .woocommerce-product-gallery{background:#fff}
.single-product .flex-control-thumbs img{background:#fff}
.single-product .related.products ul.products li.product a img{background:#fff}

/* ==========================================================================
   Spacing, put straight.
   A few sections gained a lede and a head after the fact; these set the
   rhythm between them again rather than leaving it to whichever margin
   happened to win.
   ========================================================================== */
.section__head{
	display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;
	gap:1.25rem 2rem;margin-block-end:2rem
}
.section__head > div{max-width:62ch}
.section__head h2{margin-block:.55rem 0}
.section__head .section__lede{margin-block-start:.75rem}
.section--tight .section__head{margin-block-end:1.5rem}

.page-head--wide + .section{padding-block-start:clamp(2.5rem,5vw,4rem)}
.promises + #marques{margin-block-start:0}
.band + .section{padding-block-start:clamp(3rem,6vw,5rem)}
.rail + .band{border-block-start:1px solid var(--awm-line)}

/* A grid that follows a head should not also carry the head's margin. */
.section__head + .grid,
.section__head + .team,
.section__head + .awards-grid,
.section__head + .cal{margin-block-start:0}

/* The marque chooser and the filter bar are two rows of the same idea. */
.chooser + .filters{margin-block-start:0;padding-block-start:0;border-block-start:0}
.filters{margin-block-end:2rem}

/* Cards should never sit tight against the rule above them. */
.grid{margin-block-start:0}
.wrap > .page-head{padding-block-end:1.5rem}

/* An award with no photograph of the trophy gets a plate instead of a hole. */
.award__plate{
	display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;
	width:100%;height:100%;
	background:
		radial-gradient(120% 140% at 50% 0%,color-mix(in srgb,var(--awm-accent) 10%,transparent),transparent 65%),
		var(--awm-surface-2,#1a1d1a);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--awm-ink-muted);
	text-align:center;padding:1rem
}
.award__plate__year{
	font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.8rem;letter-spacing:.04em;
	color:var(--awm-accent);opacity:.8
}
.award--plain .award__year{visibility:hidden}

/* ==========================================================================
   The home page's scroll language
   --------------------------------------------------------------------------
   Three ideas, borrowed from the way the marques present a car and adapted
   to a dealership that has four things to say rather than one:

   · a photograph travels slower than its frame, so a full-bleed stage reads
     as depth rather than wallpaper;
   · type arrives a line at a time out of a clip;
   · a picture wipes open from its leading edge and the words follow it.

   All of it stops dead under prefers-reduced-motion.
   ========================================================================== */

/* The parallax layer is oversized so the slower travel never shows an edge. */
.chapter__media{overflow:hidden}
.chapter__layer{
	position:absolute;inset:-12% 0;
	will-change:transform
}
.chapter__layer img{width:100%;height:100%;object-fit:cover;display:block}

/* Lines of display type. */
.mask{display:block;overflow:hidden;padding-block-end:.06em;margin-block-end:-.06em}
html.awm-anim .mask__in{
	display:block;transform:translateY(108%);opacity:0;
	transition:transform 1s cubic-bezier(.19,1,.22,1),opacity .9s ease
}
[data-lines].is-in .mask__in,[data-mask].is-in .mask__in{transform:translateY(0);opacity:1}

/* ---- what we do -------------------------------------------------------- */
.doing{border-block-start:1px solid var(--awm-line)}
.doing__list{display:grid;gap:clamp(3rem,7vw,6rem)}
.doing__item{
	display:grid;gap:1.75rem;align-items:center;grid-template-columns:1fr
}
@media(min-width:900px){
	.doing__item{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem)}
	/* Alternate the side the picture opens from, so the eye is never sure
	   what is coming and the column never reads as a list. */
	.doing__item:nth-child(even) .doing__media{order:2}
}
.doing__media{position:relative;overflow:hidden;background:var(--awm-surface)}
html.awm-anim .doing__media{clip-path:inset(0 100% 0 0);transition:clip-path 1.2s cubic-bezier(.19,1,.22,1)}
html.awm-anim .doing__item:nth-child(even) .doing__media{clip-path:inset(0 0 0 100%)}
html.awm-anim .doing__media.is-in,
html.awm-anim .doing__item:nth-child(even) .doing__media.is-in{clip-path:inset(0 0 0 0)}
.doing__media img{width:100%;height:100%;object-fit:cover;display:block}
html.awm-anim .doing__media img{transform:scale(1.1);transition:transform 1.8s cubic-bezier(.19,1,.22,1)}
html.awm-anim .doing__media.is-in img{transform:scale(1)}

.doing__body{display:flex;flex-direction:column;align-items:start;gap:.55rem}
html.awm-anim .doing__body{opacity:0;transform:translateY(26px);transition:opacity 1s ease .2s,transform 1s cubic-bezier(.19,1,.22,1) .2s}
html.awm-anim .doing__item.is-in .doing__body{opacity:1;transform:none}
.doing__n{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.24em;color:var(--awm-accent);opacity:.7
}
.doing__body h3{font-size:clamp(1.35rem,2.8vw,2.1rem);line-height:1.12;margin:.2rem 0 0;max-width:18ch}
.doing__body p{margin:.5rem 0 0;color:var(--awm-ink-muted);line-height:1.75;max-width:46ch}
.doing__go{
	margin-block-start:1rem;padding-block-end:.35rem;
	border-block-end:1px solid color-mix(in srgb,var(--awm-accent) 45%,transparent);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink);
	transition:color .25s ease,border-color .25s ease
}
.doing__go::after{content:" →";color:var(--awm-accent)}
.doing__go:hover{color:var(--awm-accent);border-color:var(--awm-accent)}

/* ---- where you are ----------------------------------------------------- */
.pager{
	position:fixed;inset-inline-end:1.15rem;inset-block-start:50%;transform:translateY(-50%);
	z-index:45;display:flex;flex-direction:column;gap:.85rem;align-items:flex-end
}
.pager__dot{
	display:flex;align-items:center;gap:.6rem;background:none;border:0;padding:0;cursor:pointer;
	color:var(--awm-ink-muted)
}
.pager__dot::after{
	content:"";width:18px;height:1px;background:currentColor;opacity:.4;
	transition:width .35s cubic-bezier(.19,1,.22,1),opacity .3s ease,background .3s ease
}
.pager__dot:hover::after{opacity:.8}
.pager__dot.is-on::after{width:34px;opacity:1;background:var(--awm-accent)}
.pager__label{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
	opacity:0;transform:translateX(6px);transition:opacity .3s ease,transform .3s ease;
	white-space:nowrap
}
.pager__dot:hover .pager__label,.pager__dot.is-on .pager__label{opacity:1;transform:none}
.pager__dot.is-on .pager__label{color:var(--awm-ink)}
@media(max-width:899px){.pager{display:none}}

@media(prefers-reduced-motion:reduce){
	.chapter__layer{position:absolute;inset:0;transform:none!important}
	.mask__in{transform:none;opacity:1;transition:none}
	.doing__media{clip-path:none!important;transition:none}
	.doing__media img{transform:none;transition:none}
	.doing__body{opacity:1;transform:none;transition:none}
	.pager__dot::after{transition:none}
}

/* The rail card, finished: the photograph is held in a frame that crops it,
   so it can grow under the pointer without pushing the card about, and the
   circle says "there is a page behind this" without a word. */
.rail__card__frame{
	position:relative;display:block;overflow:hidden;aspect-ratio:4/3;background:var(--awm-surface-2,#1a1d1a)
}
.rail__card__frame img{
	width:100%;height:100%;object-fit:cover;display:block;
	transition:transform .8s cubic-bezier(.19,1,.22,1)
}
.rail__card:hover .rail__card__frame img{transform:scale(1.07)}
.rail__card__go{
	position:absolute;inset-block-end:.8rem;inset-inline-end:.8rem;
	width:38px;height:38px;border-radius:999px;
	border:1px solid color-mix(in srgb,#fff 55%,transparent);
	background:color-mix(in srgb,var(--awm-bg) 45%,transparent);
	backdrop-filter:blur(6px);
	display:grid;place-items:center;
	opacity:0;transform:translateY(8px);
	transition:opacity .35s ease,transform .45s cubic-bezier(.19,1,.22,1),background .3s ease
}
.rail__card__go::before{
	content:"";width:8px;height:8px;
	border-inline-end:1px solid #fff;border-block-start:1px solid #fff;transform:rotate(45deg) translate(-1px,1px)
}
.rail__card:hover .rail__card__go,.rail__card:focus-visible .rail__card__go{opacity:1;transform:none}
.rail__card:hover .rail__card__go{background:var(--awm-accent);border-color:var(--awm-accent)}
.rail__card:hover .rail__card__go::before{border-color:var(--awm-accent-ink,#0A0B0A)}
@media(prefers-reduced-motion:reduce){
	.rail__card__frame img,.rail__card__go{transition:none}
	.rail__card__go{opacity:1;transform:none}
}

/* ==========================================================================
   The way in, the running line, and the range read marque by marque
   ========================================================================== */

/* The curtain over the first view. The mark is drawn, a rule crosses it, and
   the panel lifts — once per visit, never on a return from a model page. */
/* Without the script there is no curtain at all — a fixed panel that nothing
   can remove is the worst failure this page could have. */
.curtain{display:none}
html.awm-anim .curtain{
	position:fixed;inset:0;z-index:120;pointer-events:none;
	display:grid;place-items:center
}
html.awm-entering,html.awm-entering body{overflow:hidden}
.curtain__panel{
	position:absolute;inset:0;background:var(--awm-bg);
	transform-origin:top;
	transition:transform 1.15s cubic-bezier(.76,0,.24,1)
}
.curtain__mark{
	position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem;
	transition:opacity .55s ease,transform .8s cubic-bezier(.76,0,.24,1)
}
.curtain__mark img{
	max-height:64px;width:auto;opacity:0;transform:translateY(10px);
	animation:awm-enter-mark 1s cubic-bezier(.19,1,.22,1) .15s forwards
}
.curtain__rule{
	display:block;width:0;height:1px;background:var(--awm-accent);opacity:.85;
	animation:awm-enter-rule 1.1s cubic-bezier(.76,0,.24,1) .5s forwards
}
@keyframes awm-enter-mark{to{opacity:1;transform:none}}
@keyframes awm-enter-rule{0%{width:0}100%{width:160px}}
.curtain.is-going .curtain__panel{transform:scaleY(0)}
.curtain.is-going .curtain__mark{opacity:0;transform:translateY(-14px)}

/* The running line of names. */
.marquee{
	overflow:hidden;border-block:1px solid var(--awm-line);
	background:var(--awm-surface);padding-block:1.15rem
}
.marquee__row{display:flex;width:max-content;will-change:transform}
.marquee__set{display:flex;align-items:center;gap:0}
.marquee__set span{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(1.1rem,2.4vw,1.9rem);color:var(--awm-ink-muted);
	white-space:nowrap;padding-inline:1.1rem;opacity:.75
}
.marquee__set i{
	display:block;width:5px;height:5px;border-radius:999px;background:var(--awm-accent);opacity:.7;flex:none
}

/* The range, marque by marque. */
.rail__marque{
	flex:0 0 clamp(13rem,18vw,17rem);align-self:stretch;display:flex;scroll-snap-align:start
}
.rail__marque__in{
	display:flex;flex-direction:column;justify-content:center;gap:.9rem;
	width:100%;padding:2rem 1.5rem;
	border-inline-start:1px solid var(--awm-line);
	border-inline-end:1px solid var(--awm-line);
	background:linear-gradient(to bottom,color-mix(in srgb,var(--awm-accent) 7%,transparent),transparent 60%);
	transition:background .4s ease
}
.rail__marque__in:hover{background:linear-gradient(to bottom,color-mix(in srgb,var(--awm-accent) 14%,transparent),transparent 70%)}
.rail__marque__logo{max-height:46px;max-width:150px;width:auto;object-fit:contain;object-position:left center}
.brand-bentley .rail__marque__logo{max-height:38px}
.brand-bugatti .rail__marque__logo{max-height:24px}
.brand-lamborghini .rail__marque__logo{max-height:58px}
[dir="rtl"] .rail__marque__logo{object-position:right center}
.rail__marque__name{font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.5rem;color:var(--awm-ink)}
.rail__marque__count,.rail__marque__go{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.68rem;letter-spacing:.2em;text-transform:uppercase
}
.rail__marque__count{color:var(--awm-ink-muted)}
.rail__marque__go{color:var(--awm-accent)}
.rail__marque__go::after{content:" →"}
.rail__hint{
	display:block;margin-block-start:1.5rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--awm-ink-muted);opacity:.7
}
.rail__hint::after{content:" ⟶";display:inline-block;animation:awm-hint 2.4s ease-in-out infinite}
@keyframes awm-hint{0%,100%{transform:translateX(0)}50%{transform:translateX(7px)}}

/* The card, now name-first. */
.rail__card__body{display:block;padding:.9rem .1rem 0}
.rail__card__title{
	display:block;font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:1.12rem;line-height:1.25;color:var(--awm-ink)
}
.rail__card__meta{
	display:block;margin-block-start:.25rem;font-size:.8rem;color:var(--awm-ink-muted);
	font-variant-numeric:tabular-nums
}
.rail__card{border:0;background:none}
.rail__card:hover{transform:translateY(-5px)}

/* What we do, at full width. */
.doing{border-block-start:1px solid var(--awm-line);padding-block-end:clamp(3rem,7vw,6rem)}
.doing__list{display:grid;gap:clamp(4rem,9vw,8rem)}
.doing__grid{display:grid;gap:1.75rem;align-items:center;grid-template-columns:1fr}
@media(min-width:900px){
	.doing__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2.5rem,5vw,5rem)}
	.doing__item:nth-child(even) .doing__media{order:2}
}
.doing__media{aspect-ratio:5/4}
.doing__layer{position:absolute;inset:-9% 0;will-change:transform}
.doing__n{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(2.2rem,5vw,3.4rem);line-height:1;
	color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--awm-accent) 55%,transparent);
	margin-block-end:.35rem
}

/* A line at the foot of the band that fills as the range passes. */
.rail__bar{
	position:absolute;inset-block-end:0;inset-inline:0;height:1px;
	background:var(--awm-line);z-index:3;pointer-events:none
}
.rail.is-pinned .rail__bar{position:sticky;inset-block-end:0;margin-block-start:-1px}
.rail__bar span{
	display:block;height:100%;background:var(--awm-accent);
	transform:scaleX(0);transform-origin:left center
}
[dir="rtl"] .rail__bar span{transform-origin:right center}
.doing__n{color:color-mix(in srgb,var(--awm-accent) 55%,transparent)}
@supports((-webkit-text-stroke:1px red)){
	.doing__n{color:transparent}
}

/* ==========================================================================
   The rhythm
   --------------------------------------------------------------------------
   Spacing was being written per section, so every band had its own idea of
   how much air it deserved and the page read as a stack of unrelated pieces.
   From here one scale governs the whole site: a movement is separated by
   --awm-rhythm, a sub-movement by --awm-rhythm-tight, and a heading is
   parted from its content by --awm-head-gap. Nothing below invents a number.
   ========================================================================== */
:root{
	--awm-rhythm:clamp(4.5rem,9vw,8rem);
	--awm-rhythm-tight:clamp(2.75rem,5.5vw,4.75rem);
	--awm-head-gap:clamp(2rem,4vw,3.25rem);
	--awm-page-gutter:3rem;
}
@media(min-width:1100px){:root{--awm-page-gutter:7rem}}
@media(min-width:1500px){:root{--awm-page-gutter:9rem}}

.wrap{width:min(1400px,100% - var(--awm-page-gutter))}
.wrap--narrow{width:min(760px,100% - var(--awm-page-gutter))}

.section{padding-block:var(--awm-rhythm)}
.section--tight{padding-block:var(--awm-rhythm-tight)}
.band{padding-block:var(--awm-rhythm)}
.doing{padding-block-end:var(--awm-rhythm)}
.statement{padding-block:calc(var(--awm-rhythm) * 1.35)}

.section__head{margin-block-end:var(--awm-head-gap)}
.section--tight .section__head{margin-block-end:calc(var(--awm-head-gap) * .7)}
.band__head{margin-block-end:var(--awm-head-gap)}

/* Two bands that both carry their own rule do not need two full rhythms
   between them — the rule is already the pause. */
.band + .section,
.marquee + .section,
.invite + .section,
.doing + .band{padding-block-start:var(--awm-rhythm)}
.section + .section{padding-block-start:0}

/* The sections that carry a photographic band of their own start against the
   chapter above them, not after a gap the chapter has already given. */
#marques + .rail{margin-block-start:0}

/* ---- where you are: a rail that never sits on the words ----------------- */
/* The label used to stay lit on the active mark, which put a line of type
   over whatever the section was showing. Now the marks are always there and
   the names arrive only when the pointer asks, or for a moment after the
   page has moved to a new chapter. */
.pager{
	inset-inline-end:clamp(1rem,2.2vw,2rem);
	gap:1.05rem;
	padding-block:.75rem;
	padding-inline:.75rem .25rem
}
.pager__label{
	opacity:0;transform:translateX(8px);pointer-events:none;
	transition:opacity .35s ease,transform .45s cubic-bezier(.19,1,.22,1)
}
.pager__dot.is-on .pager__label{opacity:0}
.pager:hover .pager__dot.is-on .pager__label,
.pager:focus-within .pager__dot.is-on .pager__label,
.pager.is-live .pager__dot.is-on .pager__label,
.pager__dot:hover .pager__label,
.pager__dot:focus-visible .pager__label{opacity:1;transform:none}
.pager:hover .pager__label,
.pager:focus-within .pager__label,
.pager.is-live .pager__label{
	text-shadow:0 0 14px var(--awm-bg),0 0 5px var(--awm-bg)
}
@media(max-width:1099px){.pager__label{display:none}}

/* ---- what we do: a picture that fills its half -------------------------- */
/* The media column was given a fixed 5:4 crop inside a column that is often
   taller than that, so every other item had a pond of empty floor beside it.
   The picture now takes the full height of the row and the words centre
   against it. */
@media(min-width:900px){
	.doing__grid{
		grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
		gap:clamp(2.5rem,4.5vw,4.5rem);
		align-items:stretch
	}
	.doing__media{aspect-ratio:auto;min-height:clamp(24rem,40vw,36rem)}
	.doing__body{justify-content:center;padding-block:clamp(.5rem,1.5vw,1.5rem)}
	.doing__body h3{max-width:15ch}
	.doing__body p{max-width:42ch}
}
.doing__list{gap:var(--awm-rhythm)}

/* ---- the range: a band that is filled, not floated in ------------------- */
/* Pinned, the stage is a whole viewport tall. Cards cropped at 4:3 used a
   third of it and left a field of nothing underneath, so the cards now
   stretch to the height of the band and the photograph takes whatever is
   left above the name. */
@media(min-width:900px){
	.rail.is-pinned .rail__stage{
		height:100svh;
		padding-block:clamp(4.5rem,9svh,7rem) clamp(3.5rem,7svh,5.5rem);
		align-items:stretch
	}
	.rail.is-pinned .rail__track{align-items:stretch;height:100%;gap:clamp(1rem,1.6vw,1.75rem)}
	.rail.is-pinned .rail__card{
		flex:0 0 clamp(15rem,23vw,20rem);
		display:flex;flex-direction:column
	}
	.rail.is-pinned .rail__card__frame{flex:1 1 auto;aspect-ratio:auto;min-height:0}
	.rail.is-pinned .rail__card__body{flex:0 0 auto}
	.rail.is-pinned .rail__intro{
		display:flex;flex-direction:column;justify-content:center;
		flex-basis:min(28rem,68vw)
	}
	.rail.is-pinned .rail__end{flex-basis:min(21rem,64vw)}
}

/* The row is a plain block: its one child is the grid. The older rule made
   .doing__item itself a two-column grid, so the whole row — picture and
   words together — was squeezed into the first column and half the page
   was floor. */
.doing__item{display:block;gap:0;grid-template-columns:none}
@media(min-width:900px){.doing__item{grid-template-columns:none}}

/* A section that carries its own ground keeps its own air, whatever sits
   above it: with no padding its first line would rest on its own border. */
.section.invite,
.section.doing,
.section.has-ground{padding-block:var(--awm-rhythm)}
.section + .section.invite,
.section + .section.doing,
.section + .section.has-ground{padding-block-start:var(--awm-rhythm)}

/* ---- cars on their way -------------------------------------------------- */
/* An arriving car has no mileage and no price to quote, so the card says what
   it does know: which one it is, one line about it, and the way to ask. */
.card__badge--soon{
	background:color-mix(in srgb,var(--awm-bg) 55%,transparent);
	border-color:color-mix(in srgb,var(--awm-accent) 70%,transparent);
	color:var(--awm-ink);backdrop-filter:blur(6px)
}
.card__go{
	display:inline-block;align-self:flex-start;
	margin-block-start:auto;padding-block:.75rem .3rem;
	border-block-end:1px solid color-mix(in srgb,var(--awm-accent) 45%,transparent);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink);
	transition:color .25s ease,border-color .25s ease
}
.card__go::after{content:" →";color:var(--awm-accent)}
.card__go:hover{color:var(--awm-accent);border-color:var(--awm-accent)}

/* A section that follows a band with its own ground starts a fresh movement:
   the band's own padding sits inside its border and is not the gap between
   them. Written with the ground's own class so it outranks the rule that
   collapses the gap between two plain sections.
   
   The step is the small one, not the large one. The band has already paid a
   full rhythm below its own last line; a second full rhythm on top of that
   measured 256px between "What we do" and the cars arriving, which reads as
   the page having ended rather than as a change of subject. 128 + 76 is the
   same 204 that every other movement on the page already uses. */
.section.invite + .section,
.section.doing + .section,
.band + .section,
.marquee + .section{padding-block-start:var(--awm-rhythm-tight)}

/* The rail's closing panel: a column of words, not a stretched button. */
.rail__end{align-items:flex-start;text-align:start}
.rail__end p{margin:0}

/* The names on the page index are only shown automatically when there is
   room for them beside the text column; narrower than that, the pointer has
   to ask. */
@media(max-width:1399px){
	.pager.is-live .pager__label,
	.pager.is-live .pager__dot.is-on .pager__label{opacity:0;transform:translateX(8px)}
	.pager:hover .pager__label,
	.pager:focus-within .pager__label,
	.pager__dot:hover .pager__label,
	.pager__dot:focus-visible .pager__label{opacity:1;transform:none}
}
@media(min-width:1400px){:root{--awm-page-gutter:10rem}}

/* A row of cars arrives one after another, however many of them there are. */
[data-reveal] .card:nth-child(7){transition-delay:420ms}
[data-reveal] .card:nth-child(8){transition-delay:490ms}
[data-reveal] .card:nth-child(9){transition-delay:560ms}

/* ==========================================================================
   The way into the Owner's Room
   --------------------------------------------------------------------------
   The gate used to be two paragraphs and a form, stacked. It is now a plate:
   a photograph of something that happens inside, the invitation, three lines
   saying what is behind the door, and the door itself beside them.
   ========================================================================== */
.owners-gate__grid{display:grid;gap:clamp(2.5rem,5vw,4.5rem);align-items:start}
@media(min-width:980px){
	.owners-gate__grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}
}
.owners-gate__media{
	margin:0 0 clamp(1.75rem,3vw,2.5rem);overflow:hidden;
	border:1px solid var(--awm-line);background:var(--awm-surface)
}
.owners-gate__media img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.owners-gate__title{font-size:clamp(1.8rem,4vw,3rem);line-height:1.1;margin-block:.7rem 1rem}
.owners-gate__lede{color:var(--awm-ink-muted);line-height:1.75;max-width:52ch;margin-block-end:2rem}
.owners-gate__facts{
	list-style:none;margin:0;padding:0;
	display:grid;gap:1px;background:var(--awm-line);border:1px solid var(--awm-line)
}
.owners-gate__facts li{background:var(--awm-bg);padding:1.1rem 1.25rem;display:grid;gap:.3rem}
.owners-gate__facts__k{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent)
}
.owners-gate__facts__v{color:var(--awm-ink-muted);font-size:.94rem;line-height:1.6}
.owners-gate__door{display:grid;gap:1.5rem;position:sticky;top:calc(74px + 1.5rem)}
@media(max-width:979px){.owners-gate__door{position:static}}
.owners-gate__door .owners__gate-form .label{display:block;margin-block-end:1.1rem}
/* What membership gives you: four columns, each carrying a picture. */
.owners-why__row{
	display:grid;gap:clamp(1.2rem,2.4vw,2rem);
	grid-template-columns:repeat(4,1fr);
}
@media(max-width:1000px){.owners-why__row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.owners-why__row{grid-template-columns:1fr}}
.owners-why__card{display:block}
.owners-why__frame{
	display:block;margin:0 0 1rem;overflow:hidden;
	background:var(--awm-surface);border-radius:var(--awm-radius,0);
}
.owners-why__frame img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.owners-why__title{font-size:1.1rem;line-height:1.3;margin:0 0 .5rem}
.owners-why__copy{color:var(--awm-ink-muted);font-size:.94rem;line-height:1.7;margin:0}
.owners-why__foot{margin-block-start:clamp(2rem,4vw,3rem)}

/* ---- a menu that knows which marque you are in -------------------------- */
.nav__marque-head{margin-block-end:1.25rem;padding-block-end:1.25rem;border-block-end:1px solid var(--awm-line)}
.nav__marque-head a{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}
.nav__marque-head .nav__logo{max-height:42px;max-width:190px;width:auto;object-fit:contain;object-position:left center}
.brand-bugatti .nav__marque-head .nav__logo{max-height:24px}
.brand-lamborghini .nav__marque-head .nav__logo{max-height:54px}
.nav__marque-head__note{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.nav__row--out{margin-block-start:1.25rem;padding-block-start:1.25rem;border-block-start:1px solid var(--awm-line)}
.nav__row--out .nav__link{color:var(--awm-ink-muted);font-size:.95rem}
.nav__row--out .nav__link:hover{color:var(--awm-accent)}

/* ==========================================================================
   The boutique, finished
   ========================================================================== */

/* The plate that opens a marque's collection. */
.goods-plate{
	display:grid;gap:0;align-items:stretch;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	margin-block-end:var(--awm-rhythm-tight);overflow:hidden
}
@media(min-width:820px){.goods-plate{grid-template-columns:minmax(220px,.38fr) minmax(0,1fr)}}
.goods-plate__word{
	display:flex;flex-direction:column;justify-content:center;gap:1rem;
	padding:clamp(1.75rem,4vw,3rem);
	background:linear-gradient(to bottom,color-mix(in srgb,var(--awm-accent) 10%,transparent),transparent 70%)
}
.goods-plate__logo{max-height:52px;max-width:190px;width:auto;object-fit:contain;object-position:left center}
.brand-bugatti .goods-plate__logo{max-height:28px}
.brand-lamborghini .goods-plate__logo{max-height:66px}
.goods-plate__kind{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.goods-plate__media{overflow:hidden;min-height:clamp(200px,32vw,340px)}
.goods-plate__media img{width:100%;height:100%;object-fit:cover;display:block}

/* The three collections, on the way in. */
.goods-choose{display:grid;gap:1.25rem;margin-block-end:var(--awm-rhythm-tight)}
@media(min-width:780px){.goods-choose{grid-template-columns:repeat(3,minmax(0,1fr))}}
.goods-choose__card{
	position:relative;display:block;overflow:hidden;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	transition:border-color .3s ease,transform .5s cubic-bezier(.22,.8,.28,1)
}
.goods-choose__card:hover{border-color:var(--awm-accent);transform:translateY(-4px)}
.goods-choose__card img:first-child{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;opacity:.85;transition:opacity .4s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
.goods-choose__card:hover img:first-child{opacity:1;transform:scale(1.04)}
.goods-choose__body{
	position:absolute;inset-inline:0;inset-block-end:0;
	display:flex;align-items:end;justify-content:space-between;gap:1rem;
	padding:1rem 1.15rem;
	background:linear-gradient(to top,color-mix(in srgb,var(--awm-bg) 92%,transparent),transparent)
}
.goods-choose__logo{max-height:34px;max-width:140px;width:auto;object-fit:contain;object-position:left bottom}
.brand-bugatti .goods-choose__logo{max-height:18px}
.brand-lamborghini .goods-choose__logo{max-height:44px}
.goods-choose__name{font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.1rem}
.goods-choose__n{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}

/* Colours, as colours. */
.swatches{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-block-start:.65rem}
.swatches--live{margin-block:.2rem 1rem;gap:.55rem}
.swatch{
	display:inline-block;width:20px;height:20px;border-radius:999px;
	background:var(--swatch,var(--awm-surface-2,#1a1d1a));
	border:1px solid color-mix(in srgb,var(--awm-ink) 28%,transparent);
	padding:0;cursor:pointer;
	transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease
}
.swatches--live .swatch{width:26px;height:26px}
.swatch:hover{transform:scale(1.12);border-color:var(--awm-accent)}
.swatch.is-on{
	border-color:var(--awm-accent);
	box-shadow:0 0 0 2px var(--awm-bg),0 0 0 3px var(--awm-accent)
}
.swatch--word{
	width:auto;height:auto;border-radius:0;background:transparent;
	padding:.35rem .7rem;color:var(--awm-ink-muted);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.14em;text-transform:uppercase
}
.swatch--word:hover,.swatch--word.is-on{color:var(--awm-ink);border-color:var(--awm-accent)}
.swatch--more{
	width:auto;height:auto;border:0;background:none;color:var(--awm-ink-muted);
	font-size:.72rem;letter-spacing:.1em;cursor:default
}
/* Woo still needs the select; it simply is not what the eye is given. */
select.is-quiet{
	position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
	clip:rect(0 0 0 0);white-space:nowrap;border:0
}
.variations td.label,.variations th.label{padding-block-end:.2rem}

/* ---- the bar that follows you down the page ---------------------------- */
/* Logged in, the admin bar sits on top of a sticky header; the section nav
   already knew that and the header did not. And once the page has moved, the
   bar draws itself in: shorter, darker, and definite. */
body.admin-bar .site-header{inset-block-start:32px}
@media(max-width:782px){body.admin-bar .site-header{inset-block-start:46px}}
@media screen and (max-width:600px){body.admin-bar .site-header{inset-block-start:0}}
.site-header{transition:background .35s ease,box-shadow .35s ease,border-color .35s ease}
.site-header__bar{transition:min-height .35s cubic-bezier(.22,.61,.36,1)}
.site-header .brandmark img{transition:height .35s cubic-bezier(.22,.61,.36,1)}
body.is-scrolled .site-header{
	background:color-mix(in srgb,var(--awm-bg) 96%,transparent);
	box-shadow:0 18px 40px -34px rgba(0,0,0,.9)
}
body.is-scrolled .site-header__bar{min-height:58px}
body.is-scrolled .site-header .brandmark img{height:26px}
body.is-scrolled .site-header .brandmark--marque img{height:20px}
@media(prefers-reduced-motion:reduce){
	.site-header,.site-header__bar,.site-header .brandmark img{transition:none}
}

/* ==========================================================================
   Cars read one at a time
   --------------------------------------------------------------------------
   The reel already held photographs; it now holds a car — the photograph
   full bleed, and beside it the name, the figures and the two things you can
   do about it. The panel is the part that changes, so it is the part that
   moves.
   ========================================================================== */
.carreel__head{padding-block-end:clamp(1.5rem,3vw,2.5rem)}
.carreel .reel__frame img{width:100%;height:100%;object-fit:cover}
.carreel__veil{
	position:absolute;inset:0;pointer-events:none;
	background:
		linear-gradient(to right,
			color-mix(in srgb,var(--awm-bg) 92%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 62%,transparent) 34%,
			color-mix(in srgb,var(--awm-bg) 10%,transparent) 62%,
			transparent 85%),
		linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 70%,transparent) 0%,
			transparent 45%)
}
.carreel__panel{
	position:absolute;inset-block:0;inset-inline-start:0;
	width:min(34rem,92%);
	display:grid;align-content:center;
	padding-inline:clamp(1.25rem,5vw,4.5rem);
	padding-block:clamp(4rem,10vh,7rem)
}
.carreel__panel > *{grid-area:1/1}
.reel__slide{
	display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;
	opacity:0;visibility:hidden;transform:translateY(22px);
	transition:opacity .55s ease,transform .8s cubic-bezier(.19,1,.22,1),visibility .55s
}
.reel__slide.is-on{opacity:1;visibility:visible;transform:none}
.reel__slide__n{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.24em;color:var(--awm-ink-muted)
}
.reel__slide__n i{font-style:normal;opacity:.5;margin-inline:.15rem}
.reel__slide__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(1.8rem,4.4vw,3.2rem);line-height:1.06;margin:.15rem 0 .2rem
}
.reel__facts{
	list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;margin:.35rem 0 0;padding:0
}
.reel__facts li{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.reel__facts li + li{position:relative;padding-inline-start:1.1rem}
.reel__facts li + li::before{
	content:"";position:absolute;inset-inline-start:0;inset-block-start:50%;
	width:4px;height:4px;border-radius:999px;background:var(--awm-accent);transform:translateY(-50%);opacity:.8
}
.reel__slide__note{
	margin:.9rem 0 0;color:var(--awm-ink-muted);line-height:1.7;max-width:40ch;font-size:.96rem
}
.reel__slide .btn-row{margin-block-start:1.5rem}
.carreel .reel__hud{justify-content:flex-end;padding-inline:clamp(1.25rem,5vw,4.5rem)}
.carreel .reel__dot{width:34px}
@media(max-width:899px){
	.carreel__panel{width:100%;align-content:end;padding-block-end:clamp(4.5rem,14vh,7rem)}
	.carreel__veil{background:linear-gradient(to top,color-mix(in srgb,var(--awm-bg) 94%,transparent) 0%,color-mix(in srgb,var(--awm-bg) 55%,transparent) 42%,transparent 78%)}
}
.reel.is-static .reel__slide{position:static;opacity:1;visibility:visible;transform:none}
.reel.is-static .carreel__panel{position:static;width:auto;padding-block:2rem}
@media(prefers-reduced-motion:reduce){
	.reel__slide{transition:none}
}

/* ==========================================================================
   The enquiry door
   ========================================================================== */
.ask{
	border:1px solid var(--awm-line);background:var(--awm-bg);color:var(--awm-ink);
	width:min(56rem,calc(100% - 2rem));max-width:none;max-height:min(88vh,900px);
	padding:0;overflow:auto;box-shadow:0 40px 120px -40px rgba(0,0,0,.9)
}
.ask::backdrop{background:color-mix(in srgb,#000 72%,transparent);backdrop-filter:blur(6px)}
html.has-ask,html.has-ask body{overflow:hidden}
.ask__shut{position:sticky;inset-block-start:0;z-index:2;display:flex;justify-content:flex-end;padding:.65rem .65rem 0}
.ask__x{
	width:38px;height:38px;border-radius:999px;cursor:pointer;line-height:1;font-size:1.3rem;
	background:var(--awm-surface);border:1px solid var(--awm-line);color:var(--awm-ink);
	transition:border-color .25s ease,color .25s ease
}
.ask__x:hover{border-color:var(--awm-accent);color:var(--awm-accent)}
.ask__body{padding:0 clamp(1.25rem,4vw,2.75rem) clamp(1.75rem,4vw,2.75rem)}
.ask__title{font-size:clamp(1.5rem,3.4vw,2.4rem);margin-block:.5rem .6rem}
.ask__intro{color:var(--awm-ink-muted);margin-block-end:1.75rem;max-width:56ch}
.ask__form{margin:0}
.ask__picks{border:0;padding:0;margin:0 0 1.5rem}
.ask__picks legend{
	padding:0;margin-block-end:.7rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.ask__grid{
	display:grid;gap:.75rem;
	grid-template-columns:repeat(auto-fill,minmax(120px,1fr))
}
.ask__pick{display:block;cursor:pointer}
.ask__pick input{position:absolute;opacity:0;width:1px;height:1px}
.ask__pick__media{
	position:relative;display:block;overflow:hidden;
	border:1px solid var(--awm-line);background:var(--awm-surface);
	transition:border-color .25s ease,transform .35s cubic-bezier(.22,.8,.28,1)
}
.ask__pick__media img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;opacity:.7;transition:opacity .25s ease}
.ask__pick:hover .ask__pick__media{border-color:color-mix(in srgb,var(--awm-accent) 60%,transparent);transform:translateY(-2px)}
.ask__pick:hover .ask__pick__media img{opacity:.9}
.ask__pick__tick{
	position:absolute;inset-block-start:.4rem;inset-inline-end:.4rem;
	width:20px;height:20px;border-radius:999px;
	border:1px solid color-mix(in srgb,#fff 55%,transparent);
	background:color-mix(in srgb,var(--awm-bg) 55%,transparent);
	display:grid;place-items:center;opacity:0;transition:opacity .25s ease
}
.ask__pick__tick::before{
	content:"";width:9px;height:5px;border-inline-start:1.5px solid var(--awm-accent-ink,#0A0B0A);
	border-block-end:1.5px solid var(--awm-accent-ink,#0A0B0A);transform:rotate(-45deg) translateY(-1px)
}
.ask__pick input:checked ~ .ask__pick__media{border-color:var(--awm-accent)}
.ask__pick input:checked ~ .ask__pick__media img{opacity:1}
.ask__pick input:checked ~ .ask__pick__media .ask__pick__tick{opacity:1;background:var(--awm-accent)}
.ask__pick input:focus-visible ~ .ask__pick__media{outline:2px solid var(--awm-accent);outline-offset:2px}
.ask__pick__name{
	display:block;margin-block-start:.5rem;font-size:.86rem;line-height:1.35;color:var(--awm-ink-muted)
}
.ask__pick input:checked ~ .ask__pick__name{color:var(--awm-ink)}
.ask__pick__name em{
	display:block;font-style:normal;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent);opacity:.85
}

/* The progress line belongs to the band, not to the section: pinned to the
   section it travelled up through the middle of the screen as the range
   ended, and read as a black rule drawn across the cars. */
.rail__stage{background:var(--awm-bg)}
.rail__bar{position:absolute;inset-block-end:0;inset-inline:0;z-index:4}
.rail.is-pinned .rail__bar{position:absolute;inset-block-end:0;margin-block-start:0}

/* One car leaves before the next arrives: stacked in the same cell, a long
   cross-fade let two names be read at once. */
.reel__slide{
	transition:opacity .3s ease,transform .55s cubic-bezier(.19,1,.22,1),visibility 0s linear .3s
}
.reel__slide.is-on{
	transition:opacity .5s ease .14s,transform .85s cubic-bezier(.19,1,.22,1) .14s,visibility 0s
}

/* ==========================================================================
   The boutique card, settled
   --------------------------------------------------------------------------
   WooCommerce styles the card from `.woocommerce ul.products li.product …`,
   which outranks anything written without the body class — which is why the
   names were sitting against the edge of their own tile whatever padding was
   asked for. Everything below is written at Woo's own weight.
   ========================================================================== */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:1rem;line-height:1.35;font-weight:400;color:var(--awm-ink);
	padding:0 1.05rem;margin:.15rem 0 .4rem;
	/* Two lines, always: a one-line name and a three-line name should not
	   make two different cards. */
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
	overflow:hidden;min-height:2.7em
}
.woocommerce ul.products li.product .card__brand,
.woocommerce-page ul.products li.product .card__brand{
	display:block;padding:1rem 1.05rem 0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--awm-accent)
}
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
	display:block;padding:0 1.05rem;margin-block:0 0;
	font-size:.95rem;color:var(--awm-ink);font-variant-numeric:tabular-nums
}
.woocommerce ul.products li.product .swatches,
.woocommerce-page ul.products li.product .swatches{
	padding:.7rem 1.05rem 0;margin:0
}
/* The tile ends on a line of its own, whatever the last thing in it was. */
.woocommerce ul.products li.product::after,
.woocommerce-page ul.products li.product::after{content:"";display:block;height:1.15rem}
.woocommerce ul.products li.product > a,
.woocommerce-page ul.products li.product > a{flex:1}

/* A piece we cannot send today says so, on the photograph, and steps back a
   shade — but it keeps its page, because it is still ours to talk about. */
.woocommerce ul.products li.product.outofstock > a::after,
.woocommerce-page ul.products li.product.outofstock > a::after{
	content:"Sold out";
	position:absolute;inset-block-start:.7rem;inset-inline-start:.7rem;z-index:2;
	background:color-mix(in srgb,var(--awm-bg) 82%,transparent);
	border:1px solid color-mix(in srgb,var(--awm-ink) 30%,transparent);
	color:var(--awm-ink);backdrop-filter:blur(6px);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;padding:.26rem .65rem
}
.woocommerce ul.products li.product.outofstock img,
.woocommerce-page ul.products li.product.outofstock img{opacity:.55;filter:saturate(.6)}
.woocommerce ul.products li.product.outofstock:hover img,
.woocommerce-page ul.products li.product.outofstock:hover img{opacity:.75}
.woocommerce ul.products li.product.outofstock .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product.outofstock .woocommerce-loop-product__title{color:var(--awm-ink-muted)}

/* On the piece's own page the same fact is a line, not a shout. */
.awm-stock{
	display:inline-flex;align-items:center;gap:.55rem;margin-block:.2rem 1.1rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.awm-stock::before{
	content:"";width:7px;height:7px;border-radius:999px;background:var(--awm-accent);opacity:.85
}
.awm-stock--out::before{background:color-mix(in srgb,var(--awm-ink) 45%,transparent)}
.awm-stock--out{color:var(--awm-ink-muted)}

/* An award with no photograph of the trophy wears the marque's own mark. */
.award__plate__mark{max-height:54px;max-width:150px;width:auto;object-fit:contain;opacity:.9}
.brand-bugatti .award__plate__mark{max-height:26px}
.brand-lamborghini .award__plate__mark{max-height:64px}
.award__plate{gap:1rem}

/* Names of different lengths should not make cards of different heights. */
.team__name{min-height:2.6em}

/* ==========================================================================
   Three corrections
   ========================================================================== */

/* 1 · The words over a car are not in a box.
   `.awm-brand` paints the brand's ground so a brand page is the brand's
   colour; on a slide laid over a photograph that ground became a hard black
   rectangle with a visible edge. The slide wants the marque's tokens, not
   its floor. */
.reel__slide.awm-brand,
.carreel__panel .awm-brand{background:transparent}

/* The panel keeps its own soft scrim instead, so the type is readable on a
   bright photograph without drawing a rectangle around itself. */
.carreel__panel::before{
	content:"";position:absolute;inset:0;pointer-events:none;
	background:linear-gradient(to right,
		color-mix(in srgb,var(--awm-bg) 78%,transparent) 0%,
		color-mix(in srgb,var(--awm-bg) 40%,transparent) 55%,
		transparent 100%)
}
.carreel__panel > *{position:relative}
@media(max-width:899px){
	.carreel__panel::before{
		background:linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 82%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 30%,transparent) 70%,
			transparent 100%)
	}
}

/* 2 · The range keeps a proper margin before it starts to travel. */
.rail__stage{padding-inline:clamp(1.5rem,6vw,5.5rem)}
.rail.is-pinned .rail__stage{padding-inline:clamp(1.5rem,6vw,5.5rem)}
.rail__card__body{padding-inline:.15rem}

/* 3 · The enquiry door: a head that stays, a body that scrolls. */
/* A closed dialog is hidden by the browser's own `dialog:not([open])` rule —
   and an author rule that sets `display` on the element itself beats it,
   whatever its specificity. That is how the enquiry form came to be sitting
   in the middle of the page. The layout belongs to the open state only. */
dialog.ask:not([open]){display:none}
.ask[open]{
	display:flex;flex-direction:column
}
.ask{
	width:min(54rem,calc(100% - 2rem));
	max-height:min(86vh,860px);
	padding:0;overflow:hidden
}
.ask__top{
	flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;
	padding:clamp(1.1rem,3vw,1.75rem) clamp(1.25rem,4vw,2.5rem) 1rem;
	border-block-end:1px solid var(--awm-line);
	background:var(--awm-bg)
}
.ask__top .ask__title{margin-block:.4rem 0}
.ask__shut{margin:0;line-height:0}
.ask__body{
	flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
	padding:clamp(1.1rem,3vw,1.75rem) clamp(1.25rem,4vw,2.5rem) clamp(1.5rem,4vw,2.5rem);
	scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--awm-ink) 30%,transparent) transparent
}
.ask__body::-webkit-scrollbar{width:8px}
.ask__body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--awm-ink) 26%,transparent);border-radius:99px}
.ask__intro{margin-block:0 1.5rem}
.ask__grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:.65rem}
.ask__pick__name{font-size:.8rem}
@media(max-width:640px){
	.ask{width:calc(100% - 1rem);max-height:92vh}
	.ask__grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}
}

/* The scroll cue sat in the middle of the opening frame, which is where the
   second button ends. It moves to the far side, where nothing else is. */
.chapter__cue{
	inset-inline-start:auto;inset-inline-end:clamp(1.25rem,4vw,3rem);
	inset-block-end:clamp(1.5rem,4vh,2.6rem);
	transform:none
}
[dir="rtl"] .chapter__cue{inset-inline-end:clamp(1.25rem,4vw,3rem)}
@media(max-width:640px){
	.chapter__cue{inset-inline-end:1rem;inset-block-end:1rem;width:22px;height:34px}
}

/* Belt and braces on the lock: the page keeps its scrollbar width so nothing
   jumps sideways when the door opens, and the panel owns its own wheel. */
html.has-ask{scrollbar-gutter:stable}
.ask__body{overscroll-behavior:contain;touch-action:pan-y}

/* ==========================================================================
   The responsive pass
   --------------------------------------------------------------------------
   Everything below came out of walking all twenty pages at 390, 430, 768,
   1280 and 1920 and measuring what actually overflowed rather than what
   looked about right.
   ========================================================================== */

/* 1 · The header, on a small phone.
   Two marks, a rule and two icon buttons need more than 390px allows, and
   the Bugatti wordmark is the widest of the three — so that page, and only
   that page, pushed 22px past the screen. The marks step down and nothing
   in the bar is allowed to force the row wider than its share. */
.site-header__bar > *{min-width:0}
.brandmarks{min-width:0}
@media(max-width:480px){
	.brandmarks{gap:.55rem}
	.brandmark img{height:22px;max-width:92px}
	.brandmark--marque img{height:16px;max-width:74px}
	.site-header__left,.site-header__right{gap:.9rem}
	.brandmarks__rule{height:16px}
}

/* 2 · The variation select is meant to be invisible, not merely quiet.
   WooCommerce sets `width:100%` on it from a longer selector, which beat the
   visually-hidden rule and pushed the product page 31px wide on a tablet. */
.woocommerce div.product form.cart .variations select.is-quiet,
.woocommerce-page div.product form.cart .variations select.is-quiet,
select.is-quiet{
	position:absolute;width:1px;height:1px;min-width:0;padding:0;margin:-1px;
	overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0
}

/* 3 · A marque's mark is not the card's photograph.
   `.goods-choose__card img:first-child` was written for the cover, but the
   logo is also the first child of its own span — so it inherited the cover's
   full width and 16:10 crop, and the wings filled the whole tile. */
.goods-choose__card > img{
	width:100%;aspect-ratio:16/10;object-fit:cover;display:block;opacity:.85;
	transition:opacity .4s ease,transform .8s cubic-bezier(.22,.61,.36,1)
}
.goods-choose__card:hover > img{opacity:1;transform:scale(1.04)}
.goods-choose__body .goods-choose__logo{
	width:auto;max-width:140px;max-height:34px;
	aspect-ratio:auto;object-fit:contain;object-position:left bottom
}
.brand-bugatti .goods-choose__body .goods-choose__logo{max-height:18px}
.brand-lamborghini .goods-choose__body .goods-choose__logo{max-height:44px}

/* 4 · A car on a phone gets the whole screen.
   The reel's stage was 70svh on a phone, so the words sat halfway up and the
   bottom third of the screen was empty floor under the photograph. */
@media(max-width:640px){
	.carreel .reel__stage{height:100svh}
	.carreel__panel{padding-inline:clamp(1.15rem,5vw,2rem)}
	.reel__slide__title{font-size:clamp(1.7rem,8vw,2.4rem)}
	.reel__slide__note{font-size:.92rem;max-width:34ch}
	.carreel .reel__hud{padding-inline:clamp(1.15rem,5vw,2rem)}
}

/* 5 · The opening photograph, whole.
   Three cars across a road is a 21:9 picture; a phone screen crops it to one
   car and a lot of sky. Narrow screens get the whole frame instead, held in
   the upper part of the stage with the words underneath. */
@media(max-width:760px){
	.chapter--opening .chapter__layer{inset:0}
	.chapter--opening .chapter__layer img{
		object-fit:contain;object-position:center 28%
	}
	.chapter--opening .chapter__veil{
		background:linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 97%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 82%,transparent) 38%,
			color-mix(in srgb,var(--awm-bg) 25%,transparent) 62%,
			transparent 86%)
	}
	.chapter--opening .chapter__panel{align-items:flex-end}
}

/* 6 · A two-pixel line is not a button.
   The reel's dots stay two pixels tall and gain a finger's worth of padding
   around them, which the eye never sees and the thumb always finds. */
.reel__dot{
	height:22px;padding-block:10px;background-clip:content-box;
	box-sizing:content-box
}
.reel__dots{gap:.55rem}

/* 7 · The range, swiped on a phone: a real scroller, without the grey bar. */
.rail__stage{scrollbar-width:none}
.rail__stage::-webkit-scrollbar{display:none}

/* The mark still lost to `img:first-child`, which also carries the cover's
   crop. Written long enough to win outright. */
.goods-choose__card .goods-choose__body img.goods-choose__logo{
	width:auto;height:auto;max-width:140px;
	aspect-ratio:auto;object-fit:contain;object-position:left bottom;opacity:1
}
.goods-choose__card.brand-bentley .goods-choose__body img.goods-choose__logo{max-height:30px}
.goods-choose__card.brand-lamborghini .goods-choose__body img.goods-choose__logo{max-height:40px}
.goods-choose__card.brand-bugatti .goods-choose__body img.goods-choose__logo{max-height:16px}

/* The opening photograph keeps the top of the frame to itself, so three cars
   and a headline are two things rather than one pile. */
@media(max-width:760px){
	.chapter--opening .chapter__layer{inset:0 0 34% 0}
	.chapter--opening .chapter__layer img{object-position:center center}
	.chapter--opening .chapter__panel{padding-block-end:clamp(2.5rem,8vh,5rem)}
}

/* The mobile veil was written for a photograph that filled the frame; over a
   letterboxed one it simply painted the picture out. It now darkens only the
   lower third, where the words are. */
@media(max-width:760px){
	.chapter--opening .chapter__veil{
		background:linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 96%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 88%,transparent) 24%,
			color-mix(in srgb,var(--awm-bg) 28%,transparent) 40%,
			transparent 52%)
	}
}

/* Simpler and certain: on a phone the opening frame has no veil at all. The
   picture is left alone and the words carry their own ground, so nothing can
   paint over three cars again. */
@media(max-width:760px){
	.chapter--opening .chapter__veil{display:none}
	.chapter--opening .chapter__panel{position:relative}
	.chapter--opening .chapter__panel::before{
		content:"";position:absolute;inset-inline:0;inset-block:auto 0;height:62%;
		pointer-events:none;
		background:linear-gradient(to top,
			color-mix(in srgb,var(--awm-bg) 97%,transparent) 0%,
			color-mix(in srgb,var(--awm-bg) 90%,transparent) 42%,
			transparent 100%)
	}
	.chapter--opening .chapter__inner{position:relative;z-index:1}
}

/* The dot is still a two-pixel line; only its reach is finger-sized. The
   previous attempt painted the whole padded box and turned the row into a
   line of grey blocks. */
.reel__dot{
	height:2px;padding-block:12px;box-sizing:content-box;background-clip:content-box
}
.reel__count{white-space:nowrap}
@media(max-width:640px){
	.carreel .reel__hud{gap:.85rem}
	.carreel .reel__dot{width:22px}
}

/* ==========================================================================
   The opening, on a phone: a picture, then the words
   --------------------------------------------------------------------------
   A full-height stage with the type laid over it is a desktop idea. Three
   cars across a road is a very wide photograph, and on a phone it either
   crops to one car or floats in the middle of a black screen. So on a phone
   the chapter stops being a stage: the photograph sits against the header at
   the top of the page, at its own shape, and the words follow underneath on
   the ground — which is what a phone does well.
   ========================================================================== */
@media(max-width:760px){
	.chapter--opening .chapter__media{
		position:static;height:auto;display:block;overflow:hidden
	}
	.chapter--opening .chapter__layer{
		position:static;inset:auto;transform:none!important;will-change:auto
	}
	.chapter--opening .chapter__layer img{
		width:100%;height:auto;aspect-ratio:2/1;
		object-fit:cover;object-position:center 55%;
		transform:none!important
	}
	.chapter--opening .chapter__panels{margin-block-start:0}
	.chapter--opening .chapter__panel{
		min-height:0;
		padding-block:clamp(1.75rem,5vh,2.75rem) clamp(2.25rem,7vh,3.5rem)
	}
	/* The words are on the page's own ground now, so neither the veil nor the
	   scrim under them has anything to do. */
	.chapter--opening .chapter__veil{display:none}
	.chapter--opening .chapter__panel::before{display:none}
	.chapter--opening .chapter__cue{display:none}
	.chapter--opening .chapter__title{margin-block:.5rem .9rem}
}

/* Two pieces to a row on a phone.
   The grid asked for a 240px minimum, which on a 390px screen is one column
   and a very long scroll. A boutique reads better two-up, so below 640 the
   count is fixed rather than fitted, and the card's type comes down with it. */
@media(max-width:640px){
	ul.products,
	.woocommerce ul.products,
	.woocommerce-page ul.products{
		grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
		font-size:.9rem;padding-inline:.75rem;min-height:2.6em
	}
	.woocommerce ul.products li.product .card__brand,
	.woocommerce-page ul.products li.product .card__brand{padding:.8rem .75rem 0;font-size:.6rem;letter-spacing:.16em}
	.woocommerce ul.products li.product .price,
	.woocommerce-page ul.products li.product .price{padding-inline:.75rem;font-size:.86rem}
	.woocommerce ul.products li.product .swatches,
	.woocommerce-page ul.products li.product .swatches{padding:.55rem .75rem 0;gap:.35rem}
	.swatches .swatch{width:16px;height:16px}
	.woocommerce ul.products li.product::after,
	.woocommerce-page ul.products li.product::after{height:.85rem}
	.woocommerce ul.products li.product.outofstock > a::after,
	.woocommerce-page ul.products li.product.outofstock > a::after{
		font-size:.56rem;padding:.2rem .45rem;inset-block-start:.45rem;inset-inline-start:.45rem
	}
	/* The same row of two for the cards the rest of the site uses. */
	.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
	.card__title{font-size:1rem}
	.card__lede{font-size:.84rem}
}
@media(max-width:400px){
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-page ul.products li.product .woocommerce-loop-product__title{font-size:.86rem}
}

/* The tabs inside a car's page pin themselves directly under the header.
   The offset was a fixed 74px (106 with the admin bar), so once the header
   drew itself in at 58px there was a band of page showing between them. It
   now follows whatever the header actually measures. */
.section-nav{inset-block-start:var(--awm-head-bottom,74px)}
body.admin-bar .section-nav{inset-block-start:var(--awm-head-bottom,106px)}
@media(prefers-reduced-motion:no-preference){
	.section-nav{transition:inset-block-start .35s cubic-bezier(.22,.61,.36,1)}
}

/* WooCommerce's own phone rules are written as
   `.woocommerce ul.products[class*=columns-] li.product`, which outranks the
   reset that undoes its float grid — so on a phone the tiles went back to
   floating at a percentage width and sat as narrow columns inside the grid
   cells. Same selector shape, so the reset wins again. */
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product,
.woocommerce ul.products[class*="columns-"] li.product-category,
.woocommerce-page ul.products[class*="columns-"] li.product-category{
	float:none;clear:none;width:auto;margin:0
}
@media(max-width:640px){
	.woocommerce ul.products[class*="columns-"],
	.woocommerce-page ul.products[class*="columns-"]{
		grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem
	}
}

/* A story is read, not compared: on a phone the news cards take the width one
   at a time, where two-up leaves a headline and an excerpt fighting over
   160 pixels. */
@media(max-width:640px){
	.grid--reading{grid-template-columns:1fr;gap:1.25rem}
	.grid--reading .card__title{font-size:1.15rem}
	.grid--reading .card__meta{font-size:.9rem}
}

/* ==========================================================================
   The conversation, in the Owner's Room
   --------------------------------------------------------------------------
   A request used to be a line with a status on it. It is a conversation now:
   what the owner asked, what the showroom answered, and a box to carry on in.
   ========================================================================== */
.owners__req{position:relative}
.owners__req.has-new{border-color:color-mix(in srgb,var(--awm-accent) 55%,transparent)}
.owners__req-new{
	display:inline-block;margin-inline-start:.6rem;padding:.15rem .5rem;
	background:var(--awm-accent);color:var(--awm-accent-ink,#0A0B0A);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.62rem;letter-spacing:.14em;text-transform:uppercase
}
.owners__req-said{margin:.6rem 0 0;color:var(--awm-ink-muted);line-height:1.7}

.thread{
	list-style:none;margin:1rem 0 0;padding:1rem 0 0;
	border-block-start:1px solid var(--awm-line);
	display:grid;gap:.75rem
}
.thread__msg{
	display:grid;gap:.3rem;padding:.75rem .9rem;
	background:var(--awm-surface);border:1px solid var(--awm-line);
	max-width:min(38rem,100%)
}
.thread__msg--desk{
	justify-self:end;
	background:color-mix(in srgb,var(--awm-accent) 10%,var(--awm-surface));
	border-color:color-mix(in srgb,var(--awm-accent) 35%,transparent)
}
.thread__who{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-ink-muted)
}
.thread__who time{margin-inline-start:.5rem;opacity:.7;letter-spacing:.08em}
.thread__msg p{margin:0;line-height:1.65;white-space:pre-wrap}
.thread__reply{
	display:flex;gap:.6rem;align-items:flex-end;margin-block-start:1rem;flex-wrap:wrap
}
.thread__reply textarea{
	flex:1 1 16rem;min-height:2.9rem;resize:vertical;
	background:var(--awm-bg);border:1px solid var(--awm-line);color:var(--awm-ink);
	padding:.6rem .75rem;font:inherit;font-size:.95rem;border-radius:0
}
.thread__reply textarea:focus{outline:none;border-color:var(--awm-accent)}
.thread__shut{
	margin:.9rem 0 0;font-size:.86rem;color:var(--awm-ink-muted);font-style:italic
}
@media(max-width:640px){
	.thread__msg{max-width:100%}
	.thread__msg--desk{justify-self:stretch}
	.thread__reply .btn{width:100%}
}

/* Two actions can sit at the head of a section — "what is in stock" and the
   marque's own configurator — without one pushing the other off a phone. */
.section__head__acts{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}

/* =====================================================================
   The opening — a pinned stage the scroll wheel drives
   =====================================================================
   A tall rail gives the move its length; the stage inside it sticks to the
   top of the screen and holds still while the page scrolls past. Everything
   that moves is one transform on one layer, which is what keeps it smooth on
   a telephone. Nothing here is hidden behind a reveal: the first frame and
   the first card are on screen the moment the page arrives. */

.open{position:relative;background:#000}
.open__rail{
	position:relative;
	/* One screen of scroll per beat, plus a little to settle on. */
	height:calc(var(--open-beats,4) * 100svh);
}
.open__stage{
	position:sticky;top:0;
	height:100svh;min-height:520px;
	overflow:hidden;
	display:grid;place-items:end start;
	isolation:isolate;
}

/* ---- the moving picture ------------------------------------------- */
.open__shot{
	position:absolute;inset:0;z-index:0;
	transform-origin:50% 50%;
	will-change:transform;
	backface-visibility:hidden;
}

/* The travelling frame is laid out as the whole photograph at the stage's
   height — wider than the stage whenever the picture is wider than the screen,
   which on a telephone held upright it very much is. Letting it overflow is
   what makes the camera's reach a property of the photograph rather than of
   the window: the move that finds the far car on a desktop finds it on a
   phone too. */
.open__frame{
	position:absolute;top:0;left:50%;z-index:0;
	height:100%;
	/* The script widens this to the whole photograph once it knows the
	   picture's shape; until then it is an ordinary full-bleed image. */
	width:100%;
	transform-origin:50% 50%;
	translate:-50% 0;
	will-change:transform;
	backface-visibility:hidden;
}
.open__frame img,
.open__shot img,
.open__film{
	width:100%;height:100%;
	/* Centred on purpose: the camera does all the aiming, and it can only do
	   the arithmetic if it knows the picture starts in the middle. */
	object-fit:cover;object-position:50% 50%;
	display:block;
}

/* ---- the film ------------------------------------------------------ */
/* The one-photograph opening lays its frame out wider than the stage so the
   camera can travel; the film does not travel, so its frame is simply the
   stage. */
.open--film .open__frame{
	left:0;width:100%;translate:none;transform:none;
}
.open__film{background:#000}

/* The card's opacity is a scroll position here, not a state, so a transition
   would only put it half a second behind the wheel. */
.open--film .open__card{transition:none}
.open--film .open__hint{transition:opacity .4s ease}
.open--film.is-moved .open__hint{animation:none;opacity:0}

/* Held upright, a wide frame cropped to a tall screen keeps about a quarter of
   its width — which on this film means one car and no road. So on a portrait
   screen the whole frame is shown, sitting high, and the words take the black
   below it. The cinematography survives the phone. */
@media (max-aspect-ratio:4/5){
	.open--film .open__vignette{opacity:.45}
	.open--film .open__card{padding-block-end:clamp(1.8rem,5vh,3rem)}
}

/* Version B stacks a shot per car; only the one being looked at is drawn. */
.open--sequence .open__shot{opacity:0;visibility:hidden;transition:opacity .5s ease}
.open--sequence .open__shot.is-on{opacity:1;visibility:visible}
.open__cel{position:absolute;inset:0;opacity:0}
.open__cel.is-on{opacity:1}

/* ---- the grade ----------------------------------------------------- */
/* The photographs are bright desert; the words are white. The veil is what
   makes the second thing possible on top of the first. */
.open__veil{
	position:absolute;inset:0;z-index:1;pointer-events:none;
	background:
		linear-gradient(to top,rgba(0,0,0,.86) 0%,rgba(0,0,0,.55) 26%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.34) 100%);
}
.open__vignette{
	position:absolute;inset:0;z-index:1;pointer-events:none;
	background:radial-gradient(120% 90% at 50% 45%,transparent 45%,rgba(0,0,0,.5) 100%);
}

/* ---- the cards ----------------------------------------------------- */
.open__card{
	position:absolute;inset:auto 0 0 0;z-index:3;
	padding-block:0 clamp(3.5rem,9vh,7rem);
	opacity:0;visibility:hidden;
	transform:translate3d(0,26px,0);
	/* The card leaving goes quickly and the card arriving waits for it, so the
	   two are never both legible at once — which is what made a fast scroll
	   read as two cars talking over each other. */
	transition:opacity .22s ease,transform .5s ease,visibility .22s;
	pointer-events:none;
}
.open__card.is-on{
	opacity:1;visibility:visible;transform:none;pointer-events:auto;
	transition:opacity .5s ease .16s,transform .8s cubic-bezier(.16,1,.3,1) .16s,visibility 0s;
}
.open__card .wrap{max-width:var(--awm-wrap,1320px)}
.open.is-handing .open__card,
.open.is-handing .open__marks{transition:none}

/* The card wears a marque's palette so its accent, rules and type match the
   car being looked at — but a palette also carries a page background, and a
   card is not a page. Left alone it painted a black band over the bottom
   half of the photograph. The tokens stay; the paint goes. */
.open__card.awm-brand,
.open__card .awm-brand{background:transparent}

.open__title{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-weight:400;line-height:.95;letter-spacing:-.02em;
	font-size:clamp(3rem,10vw,7.5rem);
	margin:.6rem 0 1rem;text-wrap:balance;
}
.open__name{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-weight:400;line-height:1;letter-spacing:-.015em;
	font-size:clamp(2.8rem,8vw,6rem);
	margin:.3rem 0 .7rem;text-wrap:balance;
}
.open__lede{
	max-width:46ch;color:rgba(255,255,255,.82);
	font-size:clamp(.98rem,1.5vw,1.12rem);line-height:1.6;margin:0 0 1.5rem;
}
.open__marque img{height:clamp(30px,4.4vw,52px);width:auto;object-fit:contain;display:block;margin-block-end:.2rem}

/* The standing line: what the house is to this marque, said before the marque
   is named. It is small and in the marque's own accent, so the eye reads the
   claim first and the name second — which is the order that matters here. */
.open__standing{
	display:block;
	/* Each marque's accent, lifted towards white. Bugatti's red is beautiful and
	   almost unreadable on asphalt; a little white keeps the hue and gives the
	   line back to the eye, on every photograph and every marque. */
	color:var(--awm-accent,#c9a227);
	color:color-mix(in srgb,var(--awm-accent,#c9a227) 76%,#fff);
	text-shadow:0 1px 10px rgba(0,0,0,.7);
	margin-block-start:.55rem;
}
.open__card .open__lede{
	max-width:46ch;color:rgba(255,255,255,.82);
	margin-block:.1rem 1.5rem;
	font-size:clamp(.98rem,1.5vw,1.15rem);line-height:1.5;
}
.brand-bugatti .open__marque img{height:clamp(20px,2.8vw,32px)}
.brand-lamborghini .open__marque img{height:clamp(40px,5.6vw,68px)}

.open__figures{
	list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;
	margin:0 0 1.15rem;padding:0;
}
.open__figures li{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.14em;text-transform:uppercase;
	font-size:clamp(.78rem,1.3vw,.95rem);
	color:var(--awm-accent,#c9a227);
	font-variant-numeric:tabular-nums;
}
.open__figures li + li{position:relative}
.open__figures li + li::before{
	content:"";position:absolute;inset-block:.15em;inset-inline-start:-.85rem;
	width:1px;background:rgba(255,255,255,.28);
}

.open__hint{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	letter-spacing:.3em;text-transform:uppercase;font-size:.72rem;
	color:rgba(255,255,255,.55);margin:1.6rem 0 0;
	animation:open-breathe 2.6s ease-in-out infinite;
}
@keyframes open-breathe{0%,100%{opacity:.4}50%{opacity:.95}}

/* ---- the marks ----------------------------------------------------- */
/* Three ticks that say how far through the move you are, and which marque is
   being shown. They are a read-out, not a control — the scroll is the control. */
.open__marks{
	position:absolute;z-index:4;
	inset-block-start:50%;inset-inline-end:clamp(.9rem,2.4vw,2.2rem);
	transform:translateY(-50%);
	display:flex;flex-direction:column;gap:1.1rem;align-items:flex-end;
}
.open__mark{display:flex;align-items:center;gap:.6rem}
.open__mark i{
	display:block;width:26px;height:1px;background:rgba(255,255,255,.3);
	transition:background .4s ease,width .4s ease;
}
.open__mark em{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	font-style:normal;letter-spacing:.2em;text-transform:uppercase;font-size:.66rem;
	color:rgba(255,255,255,.34);
	opacity:0;transform:translateX(6px);
	transition:opacity .4s ease,transform .4s ease,color .4s ease;
	order:-1;
}
.open__mark i{transition:background .25s ease,width .25s ease}
.open__mark.is-on i{background:var(--awm-accent,#c9a227);width:44px}
.open__mark.is-on em{opacity:1;transform:none;color:rgba(255,255,255,.8)}

/* ---- short screens -------------------------------------------------- */
/* A laptop at 1366x650, or any window with the browser's own furniture eating
   into it, leaves the card and the photograph fighting over the same inches.
   The card gives way: the sentence goes, the type tightens, and the car gets
   the room — because on a page whose whole job is to show the car, the car
   wins. */
@media (max-height:700px){
	.open__card{padding-block-end:clamp(1.6rem,4vh,2.6rem)}
	.open__card--house .open__lede{display:none}
	.open__card .open__lede{margin-block-end:1rem;font-size:.95rem}
	.open__name{font-size:clamp(2.1rem,5.5vw,3.6rem);margin:.2rem 0 .45rem}
	.open__title{font-size:clamp(2.4rem,7vw,4.6rem);margin:.4rem 0 .7rem}
	.open__figures{margin-block-end:.85rem}
	.open__marque img{height:clamp(24px,3.4vw,38px)}
	.open__hint{margin-block-start:.9rem}
}

/* ---- phones -------------------------------------------------------- */
@media (max-width:860px){
	.open__rail{height:calc(var(--open-beats,4) * 86svh)}
	.open__marks{
		inset-block-start:auto;inset-block-end:1rem;inset-inline:0;
		transform:none;flex-direction:row;justify-content:center;gap:.7rem;
	}
	.open__mark em{display:none}
	.open__mark i{width:18px}
	.open__mark.is-on i{width:30px}
	.open__card{padding-block-end:clamp(4.5rem,14vh,7rem)}
	.open__figures{gap:.4rem 1.2rem}
}

/* ---- when motion is not wanted ------------------------------------- */
/* No pin, no camera move: the photograph, then each car as a plain panel.
   The same information, arrived at by scrolling normally. */
@media (prefers-reduced-motion:reduce){
	.open__rail{height:auto}
	.open__stage{position:relative;height:auto;min-height:0;display:block}
	.open__frame,.open__shot{position:relative;left:auto;width:100%;height:70svh;translate:none;transform:none!important}
	.open--sequence .open__shot{opacity:1;visibility:visible}
	.open--sequence .open__shot:not(.is-on){display:none}
	.open__cel:not(.is-on){display:none}
	.open__veil,.open__vignette{position:absolute;inset:0}
	.open__card,
	.open__card.awm-brand{
		position:relative;opacity:1;visibility:visible;transform:none;
		pointer-events:auto;padding-block:2.5rem 3rem;background:#000;
	}
	.open__marks,.open__hint{display:none}
}

/* Before the script runs, the stage is the first frame and the first card —
   which is a complete, readable page on its own. */
.no-js .open__rail{height:100svh}

/* ==================================================================== *
 * The marque pages.
 *
 * Each maker's own site has a grammar — Bentley reads centred on green,
 * Bugatti banners and tracks on black, Lamborghini cuts the car out on
 * white and puts the configurator in front of you. One layout for all
 * three would have been three compromises, so each has its own, built
 * from that marque's colour tokens and our own header, footer and forms.
 * ==================================================================== */

.marque-page{background:var(--awm-bg);color:var(--awm-ink)}
.marque-page .wrap{width:min(1400px,100% - 3rem)}

/* ---- Bentley ------------------------------------------------------- */

.bl-open{position:relative;min-height:min(86vh,820px);display:grid;place-items:center;overflow:hidden}
.bl-open__media{position:absolute;inset:0}
.bl-open__media img{width:100%;height:100%;object-fit:cover;display:block}
.bl-open__veil{
	position:absolute;inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.15) 40%,var(--awm-bg) 100%);
}
.bl-open__body{
	position:relative;z-index:1;text-align:center;
	width:min(900px,100% - 3rem);padding-block:clamp(4rem,10vh,8rem);
}
.bl-open__mark img{height:clamp(34px,5vw,54px);width:auto;margin-inline:auto;display:block}
.bl-open__eyebrow{
	display:block;margin-block-start:1.6rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.28em;font-size:.72rem;color:var(--awm-ink-muted)
}
.bl-open__title{
	font-size:clamp(2.2rem,5.6vw,4.2rem);line-height:1.08;margin-block:.4rem 1rem;font-weight:400;
}
.bl-open__lede{color:var(--awm-ink-muted);line-height:1.8;max-width:56ch;margin-inline:auto}
.bl-open__acts{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-block-start:2.2rem}

.bl-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
	padding:.85rem 1.7rem;border:1px solid currentColor;color:var(--awm-ink);
	text-decoration:none;border-radius:var(--awm-btn-radius,0);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.2em;font-size:.74rem;line-height:1;
	transition:background .3s ease,color .3s ease;
}
.bl-btn:hover{background:var(--awm-ink);color:var(--awm-bg)}
.bl-btn--solid{background:var(--awm-accent);border-color:var(--awm-accent);color:var(--awm-accent-ink)}
.bl-btn--solid:hover{background:transparent;border-color:var(--awm-ink);color:var(--awm-ink)}
.bl-btn--sm{padding:.65rem 1.2rem;font-size:.68rem}

.bl-band{padding-block:clamp(3.5rem,7vw,6.5rem)}
.bl-band--tight{padding-block:clamp(2.2rem,4.5vw,4rem)}
.bl-head{text-align:center;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:400;margin:0}
.bl-sub{
	text-align:center;color:var(--awm-ink-muted);max-width:60ch;
	margin:.8rem auto 0;line-height:1.75
}
.bl-foot{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-block-start:2.5rem}

.bl-models{
	display:grid;gap:clamp(1.5rem,3vw,2.5rem);margin-block-start:clamp(2rem,4vw,3.5rem);
	grid-template-columns:repeat(3,1fr);
}
@media(max-width:1000px){.bl-models{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.bl-models{grid-template-columns:1fr}}
/* One model line has derivatives, the next has none, the third has no figures
   either — left to themselves the Explore buttons landed at three different
   heights. The card is a column and the button is pushed to the floor of it. */
.bl-models{align-items:stretch}
.bl-model{text-align:center;display:flex;flex-direction:column}
.bl-model__media{display:block;overflow:hidden;background:var(--awm-surface)}
.bl-model__media img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.bl-model:hover .bl-model__media img{transform:scale(1.04)}
.bl-model__name{font-size:1.25rem;font-weight:400;margin:1.1rem 0 .35rem}
.bl-model__name a{color:inherit;text-decoration:none}
.bl-model__figs{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--awm-accent);margin:0
}
.bl-model__kids{
	list-style:none;padding:0;margin:.8rem 0 0;
	display:flex;gap:.4rem 1rem;justify-content:center;flex-wrap:wrap
}
.bl-model__kids a{color:var(--awm-ink-muted);font-size:.88rem;text-decoration:none;border-bottom:1px solid transparent}
.bl-model__kids a:hover{color:var(--awm-ink);border-bottom-color:currentColor}
.bl-model .bl-btn{
	align-self:center;
	/* `auto` takes up whatever the shortest card leaves over, so all three
	   buttons land on one line; the padding keeps it off the text above. */
	margin-block-start:auto;padding-block-start:0;
}
.bl-model__name,.bl-model__figs,.bl-model__kids{margin-block-end:1.2rem}
.bl-model__name{margin-block-end:.35rem}

.bl-teasers{
	display:grid;gap:clamp(1.2rem,2.4vw,2rem);margin-block-start:clamp(1.8rem,3.5vw,3rem);
	grid-template-columns:repeat(3,1fr);
}
@media(max-width:1000px){.bl-teasers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.bl-teasers{grid-template-columns:1fr}}
.bl-teaser{background:var(--awm-surface);display:flex;flex-direction:column}
.bl-teaser__media{position:relative;display:block;overflow:hidden}
.bl-teaser__media img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.bl-chip{
	position:absolute;inset-block-start:0;inset-inline-end:1rem;
	background:var(--awm-bg);color:var(--awm-ink);padding:.4rem .8rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.16em;font-size:.64rem
}
.bl-teaser__body{padding:1.25rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
.bl-teaser__title{font-size:1.1rem;font-weight:400;margin:0}
.bl-teaser__copy{color:var(--awm-ink-muted);font-size:.9rem;line-height:1.65;margin:0;flex:1}
.bl-teaser__body .bl-btn{align-self:flex-start}

/* ---- Bugatti -------------------------------------------------------- */

.bg-open{position:relative;min-height:min(88vh,880px);display:grid;place-items:center;overflow:hidden}
.bg-open__media{position:absolute;inset:0}
.bg-open__media img{width:100%;height:100%;object-fit:cover;display:block}
.bg-open__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.2) 45%,var(--awm-bg) 100%)}
.bg-open__body{position:relative;z-index:1;text-align:center;width:min(1000px,100% - 3rem)}
.bg-open__script{
	font-family:var(--awm-font-display,"Marcellus"),serif;
	font-size:clamp(2.6rem,8vw,6rem);line-height:1;margin:0;font-weight:400;font-style:italic;
}
.bg-open__line{
	margin-block:1.2rem 2rem;color:var(--awm-ink);
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.3em;font-size:.72rem;line-height:2
}
.bg-pill{
	display:inline-flex;align-items:center;justify-content:center;
	padding:.9rem 2.2rem;border:1px solid var(--awm-ink);border-radius:999px;
	color:var(--awm-ink);text-decoration:none;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;line-height:1;
	transition:background .3s ease,color .3s ease
}
.bg-pill:hover{background:var(--awm-ink);color:var(--awm-bg)}

.bg-band{padding-block:clamp(3rem,6vw,5.5rem)}
.bg-band--tight{padding-block:clamp(2rem,4vw,3.5rem)}
.bg-head{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.14em;font-size:clamp(1.3rem,2.6vw,2rem);
	font-weight:600;margin:0 0 clamp(1.5rem,3vw,2.5rem)
}
.bg-more{
	display:inline-block;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.2em;font-size:.66rem;color:var(--awm-ink);
	text-decoration:none;border-bottom:1px solid currentColor;padding-block-end:.2rem
}
.bg-foot{margin-block-start:1.8rem}

.bg-doors{display:grid;gap:clamp(1.2rem,2.5vw,2rem);grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.bg-doors{grid-template-columns:1fr}}
.bg-door{display:block;color:inherit;text-decoration:none}
.bg-door__media{display:block;overflow:hidden;background:var(--awm-surface)}
.bg-door__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.bg-door:hover .bg-door__media img{transform:scale(1.05)}
.bg-door__t{
	display:block;margin-block:1rem .5rem;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.06em;font-size:1.15rem;font-weight:600
}

.bg-banner{position:relative;min-height:min(56vh,520px);display:grid;place-items:center;overflow:hidden;margin-block:clamp(1.5rem,3vw,2.5rem)}
.bg-banner__media{position:absolute;inset:0}
.bg-banner__media img{width:100%;height:100%;object-fit:cover;display:block}
.bg-banner__veil{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.bg-banner__body{position:relative;z-index:1;text-align:center;width:min(900px,100% - 3rem);padding-block:3rem}
.bg-banner__t{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.04em;font-size:clamp(1.8rem,5vw,3.4rem);
	font-weight:600;margin:0;color:#fff
}
.bg-banner__s{
	margin-block:1rem 2rem;color:#fff;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;line-height:2
}
.bg-banner .bg-pill{border-color:#fff;color:#fff}
.bg-banner .bg-pill:hover{background:#fff;color:#000}

.bg-cars{display:grid;gap:clamp(1.2rem,2.5vw,2rem);grid-template-columns:repeat(2,1fr)}
@media(max-width:800px){.bg-cars{grid-template-columns:1fr}}
.bg-car{position:relative;display:block;color:inherit;text-decoration:none;overflow:hidden}
.bg-car__media{display:block;position:relative}
.bg-car__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.bg-car__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.65))}
.bg-car:hover .bg-car__media img{transform:scale(1.04)}
.bg-car__body{position:absolute;inset-block-end:0;inset-inline:0;padding:clamp(1.2rem,2.5vw,2rem);text-align:center}
.bg-car__script{
	display:block;font-family:var(--awm-font-display,"Marcellus"),serif;font-style:italic;
	font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.1;color:#fff
}
.bg-car__figs{
	display:block;margin-block:.5rem .9rem;color:#fff;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.2em;font-size:.66rem
}
.bg-car .bg-more{color:#fff}

.bg-live{display:grid;gap:clamp(1rem,2vw,1.5rem);grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.bg-live{grid-template-columns:1fr}}
.bg-live__tile{position:relative;display:block;color:inherit;text-decoration:none;overflow:hidden;background:var(--awm-surface)}
.bg-live__tile img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.bg-live__t{
	position:absolute;inset-block-end:0;inset-inline:0;padding:1rem;
	background:linear-gradient(180deg,transparent,rgba(0,0,0,.8));color:#fff;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;
	text-transform:uppercase;letter-spacing:.1em;font-size:.86rem
}

/* ---- Lamborghini ---------------------------------------------------- */

/* Lamborghini's own stage is a cut-out car on a plain field; ours is
   photography, 760 by 480. `contain` letterboxed every dark photograph with
   white bars on a white section, so the frame takes the photograph's own
   shape and fills it. */

.bg-story{max-width:72ch;margin-inline:auto;text-align:center}
.bg-story__copy{color:var(--awm-ink-muted);line-height:1.85}
.bg-story__copy p{margin-block:0 1rem}

/* The menu's own copy of the primary action, so the button a visitor is
   looking for is in the one place they opened to look for it. */
.nav-panel__act{
	display:flex;gap:.75rem;flex-wrap:wrap;
	margin-block-start:clamp(2rem,4vw,3rem);padding-block-start:clamp(1.5rem,3vw,2rem);
	border-block-start:1px solid var(--awm-line);
}
@media(max-width:560px){.nav-panel__act .btn{flex:1 1 100%}}

/* ---- the marque's opening film ---------------------------------------- */
/* The film sits on the still and the still stays underneath: it is the
   poster while the film loads, and the whole picture where autoplay is
   refused. The film fades in only once it is actually playing, so a slow
   connection never shows a black frame where the car should be. */
.bl-open__media,.lb-open__media,.bg-open__media{overflow:hidden}
.marque-open__film{
	position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;
	display:block;background:transparent;opacity:0;transition:opacity .8s ease
}
.marque-open__film.is-playing{opacity:1}
@media(prefers-reduced-motion:reduce){.marque-open__film{display:none}}

/* The owner's garage: a box per car, the marque's mark on it. */
.owners__car-mark{display:block;height:34px;margin-block-end:.9rem}
.owners__car-mark img{height:100%;width:auto;max-width:150px;object-fit:contain;object-position:left center;opacity:.9}
.owners__car.brand-bugatti .owners__car-mark img{height:20px;margin-block:7px}
.owners__car.brand-lamborghini .owners__car-mark img{height:34px}
/* An event card carries its picture beside the date. */
.cal__card__media{grid-column:1 / -1;margin:0}
.cal__card__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
@media(min-width:640px){
	.cal__card:has(.cal__card__media){grid-template-columns:auto 160px minmax(0,1fr)}
	.cal__card__media{grid-column:auto}
	.cal__card__media img{aspect-ratio:4/3}
}

/* ---- the three marques, side by side ------------------------------------ */
/* One column per marque, the mark in the top-right corner of its own column,
   Bentley → Lamborghini → Bugatti. On a phone the columns stack in that order. */
.marques-row__grid{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:760px){.marques-row__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}
.marque-col{
	position:relative;display:block;aspect-ratio:4/5;min-height:340px;overflow:hidden;
	border:1px solid var(--awm-line);background:var(--awm-surface);color:var(--awm-ink);
	transition:transform .35s cubic-bezier(.22,.61,.36,1),border-color .35s ease
}
@media(min-width:760px){.marque-col{aspect-ratio:3/4}}
.marque-col:hover{transform:translateY(-3px);border-color:var(--awm-accent)}
.marque-col__media{position:absolute;inset:0}
.marque-col__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.marque-col:hover .marque-col__media img{transform:scale(1.04)}
.marque-col__veil{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.25) 45%,rgba(0,0,0,.15) 100%)}
.marque-col__mark{position:absolute;top:1.25rem;right:1.25rem;display:block;height:34px}
.marque-col__mark img{height:100%;width:auto;max-width:150px;object-fit:contain;object-position:right center}
.marque-col.brand-bentley .marque-col__mark{height:40px}
.marque-col.brand-bugatti .marque-col__mark{height:22px;margin-top:9px}
.marque-col.brand-lamborghini .marque-col__mark{height:44px}
.marque-col__body{position:absolute;inset-inline:1.5rem;bottom:1.5rem;display:grid;gap:.35rem}
.marque-col__name{font-family:var(--awm-font-display,"Marcellus"),serif;font-size:clamp(1.6rem,2.4vw,2.1rem);line-height:1.05;letter-spacing:var(--awm-display-track,0);text-transform:var(--awm-display-case,none);color:#fff}
.marque-col__meta{font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.marque-col__go{margin-top:.6rem;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--awm-accent)}
.marque-col:hover .marque-col__go{color:#fff}

/* ---- the owner's room, full width --------------------------------------- */
.invite--full{position:relative;overflow:hidden;min-height:min(78vh,720px);display:flex;align-items:center;border-block:0;background:#0a0a0a}
.invite__media{position:absolute;inset:0}
.invite__layer{position:absolute;inset:-8% 0}
.invite__layer img{width:100%;height:100%;object-fit:cover;display:block}
.invite__veil{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.86) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.15) 100%)}
.invite--full .invite__inner{position:relative;display:block}
.invite--full .invite__copy{max-width:36rem}
.invite--full h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem)}
.invite--full p{color:rgba(255,255,255,.78)}
.invite__signin{margin-block-start:1.2rem;font-size:.9rem}
.invite__signin a{color:#fff;text-decoration:underline;text-underline-offset:.2em}
@media(max-width:640px){.invite--full{min-height:70vh}.invite__veil{background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.5) 55%,rgba(0,0,0,.2) 100%)}}

/* "Configure your new car" belongs to three marques, so its picture is three. */
.doing__media--sliced{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:var(--awm-line)}
.doing__slice{position:relative;overflow:hidden;min-height:100%}
.doing__slice img{width:100%;height:100%;object-fit:cover;display:block}

/* ==================================================================== *
 * The marque pages, 26 Sep 2026 — each one a copy of the manufacturer's
 * own home page (bentleymotors.com, lamborghini.com, bugatti.com), in the
 * manufacturer's colours and type, with our header, footer and forms.
 * The palettes are pinned here so a Brand Kit default can never turn
 * Bentley black again.
 * ==================================================================== */

/* ---- Bentley: near-black to Bentley green, light geometric type ----- */

.marque-page--bentley{
	--awm-bg:#183319;--awm-surface:#12291a;--awm-ink:#fff;--awm-ink-muted:#c7d3c6;
	--awm-line:rgba(255,255,255,.22);--awm-accent:#fff;--awm-accent-ink:#183319;
	--awm-font-display:"Jost","Bentley",arial,sans-serif;--awm-font-body:"Jost",arial,sans-serif;
	--awm-font-label:"Jost",arial,sans-serif;
	background:var(--awm-bg);color:var(--awm-ink);
	font-family:var(--awm-font-body);
}
.marque-page--bentley h1,.marque-page--bentley h2,.marque-page--bentley h3{font-family:var(--awm-font-display);font-weight:300;letter-spacing:.01em}
.marque-page--bentley .bl-btn{font-family:"Jost",arial,sans-serif;font-weight:500;letter-spacing:.18em;font-size:.72rem;padding:.95rem 1.9rem;border-color:#fff;color:#fff}
.marque-page--bentley .bl-btn:hover{background:#fff;color:#183319}
.marque-page--bentley .bl-btn--sm{padding:.75rem 1.4rem;font-size:.66rem}

.bl-launch{position:relative;min-height:min(92vh,880px);display:grid;place-items:center;overflow:hidden;background:#040404}
.bl-launch__media{position:absolute;inset:0}
.bl-launch__media img{width:100%;height:100%;object-fit:cover;object-position:center 60%;display:block}
.bl-launch::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,4,4,.35),rgba(4,4,4,0) 35%,rgba(24,51,25,.25) 80%,#183319 100%)}
.bl-launch__body{position:relative;z-index:1;text-align:center;width:min(900px,100% - 3rem);padding-block:clamp(5rem,14vh,9rem) clamp(3rem,10vh,6rem);align-self:start}
.bl-launch__mark img{height:clamp(34px,5vw,54px);width:auto;margin:0 auto 1.4rem;display:block}
.bl-launch__new{display:block;font-size:.95rem;color:#b5c2b4;letter-spacing:.04em}
.bl-launch__title{font-size:clamp(2.4rem,6vw,4.4rem);line-height:1.05;margin:.35rem 0 0;font-weight:300}
.bl-launch__acts{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-block-start:clamp(14rem,34vh,22rem)}
@media(max-width:700px){.bl-launch__acts{margin-block-start:clamp(8rem,28vh,14rem)}}

.bl-wide{position:relative;margin:0;line-height:0}
.bl-wide img{width:100%;height:auto;aspect-ratio:7/3;object-fit:cover;display:block}
.bl-wide__cap{position:absolute;inset-inline-start:clamp(1rem,4vw,3rem);inset-block-end:1rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#fff;line-height:1.6;opacity:.85}

.marque-page--bentley .bl-head{font-size:clamp(1.6rem,3vw,2.2rem)}
.marque-page--bentley .bl-band--rule{border-top:1px solid var(--awm-line)}
.marque-page--bentley .bl-teasers{gap:clamp(1rem,1.6vw,1.4rem)}
.marque-page--bentley .bl-teaser{background:linear-gradient(180deg,rgba(4,4,4,0) 40%,rgba(4,4,4,.75));border:1px solid rgba(255,255,255,.55);position:relative;overflow:hidden;min-height:clamp(420px,52vw,640px)}
.marque-page--bentley .bl-teaser__media{position:absolute;inset:0}
.marque-page--bentley .bl-teaser__media img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.marque-page--bentley .bl-teaser__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,4,4,0) 45%,rgba(4,4,4,.82))}
.marque-page--bentley .bl-chip{inset-inline-end:auto;inset-inline-start:50%;transform:translateX(-50%);background:rgba(24,51,25,.85);padding:.45rem 1.6rem;font-size:.7rem;letter-spacing:.02em;text-transform:none;border:1px solid rgba(255,255,255,.25);border-top:0}
.marque-page--bentley .bl-teaser__body{position:relative;z-index:1;flex:0 0 auto;margin-block-start:auto;padding:1.6rem 1.5rem 1.5rem;gap:.55rem}
.marque-page--bentley .bl-teaser__copy{flex:0 0 auto}
.marque-page--bentley .bl-teaser__title{font-size:1.35rem}
.marque-page--bentley .bl-teaser__copy{color:#e6ece6;font-size:.92rem}
.marque-page--bentley .bl-model{border:1px solid rgba(255,255,255,.18);padding-block-end:1.4rem}
.marque-page--bentley .bl-model__media img{aspect-ratio:16/10}
.marque-page--bentley .bl-model__name{font-size:1.35rem}
.bl-model__acts{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-block-start:auto;padding-inline:1rem}
.marque-page--bentley .bl-model .bl-btn{margin:0}
.marque-page--bentley .card,.marque-page--bentley .card__body{background:var(--awm-surface)}

/* ---- Lamborghini: black, white, condensed uppercase ----------------- */

.marque-page--lamborghini{
	--awm-bg:#000;--awm-surface:#181818;--awm-ink:#fff;--awm-ink-muted:#c4c4c4;--awm-line:#313131;
	--awm-accent:#ffc000;--awm-accent-ink:#000;
	--awm-font-display:"Oswald","LamboType",Roboto,"Helvetica Neue",Arial,sans-serif;
	--awm-font-body:"Barlow",Roboto,"Helvetica Neue",Arial,sans-serif;
	--awm-font-label:"Oswald",Roboto,Arial,sans-serif;
	background:#000;color:#fff;
}
.marque-page--lamborghini h1,.marque-page--lamborghini h2,.marque-page--lamborghini h3{font-family:var(--awm-font-display);text-transform:uppercase;font-weight:700;letter-spacing:-.01em}

.marque-page--lamborghini .card,.marque-page--lamborghini .card__body{background:#181818}

/* ---- Bugatti: black and white, the script wordmarks ----------------- */

.marque-page--bugatti{
	--awm-bg:#000;--awm-surface:#111;--awm-ink:#fff;--awm-ink-muted:#c4c4c4;--awm-line:#2a2a2a;
	--awm-accent:#fff;--awm-accent-ink:#000;
	--awm-font-display:"Manrope","Bugatti Display",system-ui,sans-serif;
	--awm-font-body:"Manrope","Bugatti Text",system-ui,sans-serif;
	--awm-font-label:"Manrope",system-ui,sans-serif;
	background:#000;color:#fff;font-family:var(--awm-font-body);
}
.marque-page--bugatti h1,.marque-page--bugatti h2,.marque-page--bugatti h3{font-family:var(--awm-font-display);font-weight:500;letter-spacing:.01em}
.marque-page--bugatti .bg-open__script{font-style:normal;margin:0 auto;width:min(60%,440px)}
.marque-page--bugatti .bg-open__script img{width:100%;height:auto;display:block;filter:invert(1)}
.marque-page--bugatti .bg-open__line{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:.02em;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.5;font-weight:500}
.marque-page--bugatti .bg-pill{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:.01em;font-size:.9rem;font-weight:600;padding:.95rem 1.9rem;background:#fff;color:#000;border-color:#fff}
.marque-page--bugatti .bg-pill:hover{background:transparent;color:#fff}
.marque-page--bugatti .bg-head{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500}
.marque-page--bugatti .bg-more{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:600}
.marque-page--bugatti .bg-door__t{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:1.25rem;font-weight:500;display:block;margin:.9rem 0 .4rem}
.marque-page--bugatti .bg-door__media img{aspect-ratio:3/2}
.bg-solitaire{background:#000;border-block:1px solid #2a2a2a;padding-block:clamp(3rem,7vw,6rem)}
.bg-solitaire__inner{display:grid;gap:1.2rem;justify-items:center;text-align:center}
.bg-solitaire__mark{width:min(70%,520px);height:auto;filter:invert(1)}
.marque-page--bugatti .bg-banner{min-height:min(64vh,600px)}
.marque-page--bugatti .bg-banner__t{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:clamp(1.8rem,4vw,3rem);font-weight:500}
.marque-page--bugatti .bg-banner__s{font-family:"Manrope",system-ui,sans-serif;text-transform:none;letter-spacing:0;font-size:1.05rem;line-height:1.7;max-width:56ch;margin-inline:auto}
.bg-life{display:grid;gap:clamp(1.2rem,2.5vw,2rem);grid-template-columns:repeat(2,1fr)}
@media(max-width:700px){.bg-life{grid-template-columns:1fr}}
.bg-life__card{display:grid;gap:.4rem;color:inherit;text-decoration:none;align-content:start}
.bg-life__media{display:block;overflow:hidden}
.bg-life__media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.bg-life__card:hover .bg-life__media img{transform:scale(1.04)}
.bg-life__t{font-size:1.25rem;font-weight:500;margin-block-start:.8rem}
.bg-life__s{color:#c4c4c4;font-size:.95rem}
.bg-hyper{display:grid;gap:clamp(1.2rem,2.5vw,2rem);grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.bg-hyper{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.bg-hyper{grid-template-columns:1fr}}
.bg-hyper__car{display:grid;gap:.6rem;justify-items:center;text-align:center;color:inherit;text-decoration:none;align-content:start}
.bg-hyper__mark{display:block;width:min(70%,300px)}
.bg-hyper__mark img{width:100%;height:auto;display:block;filter:invert(1)}
.bg-hyper__media{display:block;width:100%;overflow:hidden}
.bg-hyper__media img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.bg-hyper__car:hover .bg-hyper__media img{transform:scale(1.04)}
.bg-hyper__line{font-size:1.05rem;margin-block-start:.4rem}
.bg-claim{display:grid;place-items:center;padding-block:clamp(3rem,7vw,6rem);border-top:1px solid #2a2a2a}
.bg-claim img{width:min(80%,900px);height:auto;filter:invert(1)}
.marque-page--bugatti .bg-live{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.marque-page--bugatti .bg-live{grid-template-columns:repeat(2,1fr)}}
.marque-page--bugatti .card,.marque-page--bugatti .card__body{background:#111}

/* Every marque page: the Al Wajba forms sit on the marque's ground. */
.marque-page .lead-form,.marque-page .ask{color:inherit}

.marque-page--bugatti .lead-form h2,.marque-page--bugatti .ask__title{text-transform:none;letter-spacing:0;font-family:"Manrope",system-ui,sans-serif;font-weight:500}
.marque-page--bugatti .bg-life__card .bg-more,.marque-page--bugatti .bg-door .bg-more{justify-self:start}
.marque-page--bugatti .bg-door{display:grid;gap:.2rem;align-content:start}

/* The 2026 Bentley mark carries the word under the wings, so it needs a little more height than a bare wing. */
.marque-bar.brand-bentley img.marque-bar__logo{height:clamp(30px,3.2vw,42px)}

.owners__welcome{font-size:clamp(1.6rem,3.2vw,2.4rem);margin:.3rem 0 0;font-weight:400}
.owners__head{align-items:flex-start}

/* A form inside a pop-up is not a page section: no section padding, no page gutter. */
.ask__body > .section,.ask__body .lead-form.section{padding-block:0}
.ask__body .section .wrap{width:100%}
.ask__body .section > .wrap > .label,.ask__body .section > .wrap > h2:empty{display:none}
.ask__body .section .form{margin-block-start:1rem!important}

/* Boutique marque chips carry the marque's mark. */
.chip--mark{display:inline-flex;align-items:center;gap:.5rem}
.chip img.chip__mark,.chip__mark{height:16px!important;width:auto!important;max-width:64px;object-fit:contain;display:block}
.chip.is-active .chip__mark{filter:invert(1)}
/* Bugatti's mark is its name already. */
.chip--mark-bugatti .chip__text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.chip--mark-bugatti .chip__mark{height:14px!important}

/* The opening's still: under the film, full bleed, there from the first paint. */
.open--film .open__still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block;z-index:0}
.open--film .open__film{position:relative;z-index:1;opacity:0;transition:opacity .4s ease}
.open--film.is-live .open__film{opacity:1}
@media (max-aspect-ratio:4/5){
	/* Held upright the film fills the glass (26 Sep, Ramzy: no black gap
	   between the menu and the picture). The camera move still finds the cars. */
	.open--film .open__still{object-position:50% 45%}
	.open--film .open__film{object-fit:cover;object-position:50% 45%;background:transparent}
	.open--film .open__veil{background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.15) 55%,rgba(0,0,0,0) 100%)}
}

/* Inside a marque, the bar carries the call to action; the header does not repeat it. */
@media (min-width:641px){body:has(.marque-bar) .site-header__cta{display:none}}
.owners__car-note{margin:.6rem 0 0;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--awm-accent)}

/* Lamborghini opening on a phone: the manufacturer's cut-out is a wide
   banner, so at 390px it sat as a 140px sliver in a black screen. Let it
   run wider than the screen, sit under the marque bar, and put the words
   straight beneath it. */

/* Contact: the one line that swaps the message form for the test-drive form. */
.contact-form__swap{margin:-4.5rem auto 4rem;font-size:.9rem;color:var(--awm-muted,#9aa)}
.contact-form__swap a{color:inherit;text-decoration:underline;text-underline-offset:.2em}
.contact-form__swap a:hover{color:var(--awm-ink,#fff)}

/* Spec tables pasted into a car's description (four columns, a VIN in one
   of them) must never push the page wider than the phone. */
.prose table{width:100%;max-width:100%;border-collapse:collapse;font-size:.9rem}
.prose th,.prose td{padding:.6rem .6rem;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid var(--awm-line,rgba(255,255,255,.12));text-align:left}
.prose td strong{font-weight:600;color:var(--awm-muted,#bbb)}
@media (max-width:640px){
	.prose table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:.82rem}
	.prose table tbody{display:table;width:100%;min-width:100%}
	.prose th,.prose td{padding:.4rem .4rem}
}

/* The door's good news (a reset link on its way) is not an error. */
.owners__setup-ok{
	margin:0 0 1.2rem;padding:.7rem .9rem;border:1px solid var(--awm-line);
	border-inline-start:2px solid var(--awm-accent);color:var(--awm-ink);font-size:.9rem;line-height:1.5
}
.owners__gate-form .login-remember input{margin-inline-end:.4rem;accent-color:var(--awm-accent)}

/* The pre-owned reel's four doors, under its lede. */
.carreel__chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-block-start:1rem}

/* ==========================================================================
   Home — the Owner's Room (30 Sep): words and the four benefits on the left,
   the photograph on the right, never behind the words.
   ========================================================================== */
.room-intro{background:var(--awm-surface);border-block:1px solid var(--awm-line)}
.room-intro__grid{
	display:grid;gap:clamp(1.5rem,3.5vw,2.75rem) clamp(2rem,5vw,5rem);
	grid-template-columns:minmax(0,1fr);
	grid-template-areas:"head" "media" "body"
}
.room-intro__head{grid-area:head;min-width:0}
.room-intro__media{grid-area:media;margin:0;position:relative;overflow:hidden;aspect-ratio:4/3;max-width:100%;background:var(--awm-bg)}
.room-intro__body{grid-area:body;min-width:0}
.room-intro__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}
.room-intro h2{font-size:clamp(2rem,4vw,3.2rem);margin:.5rem 0 1rem;text-wrap:balance}
.room-intro__lede{color:var(--awm-ink-muted);line-height:1.75;max-width:52ch;margin:0}
.room-intro__list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-block-start:1px solid var(--awm-line)}
.room-intro__item{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:1rem;padding-block:1.15rem;border-block-end:1px solid var(--awm-line)}
.room-intro__n{
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.78rem;letter-spacing:.16em;
	color:var(--awm-accent);padding-block-start:.3rem;font-variant-numeric:tabular-nums
}
.room-intro__item h3{font-size:1.08rem;margin:0 0 .3rem;font-weight:500}
.room-intro__item p{margin:0;color:var(--awm-ink-muted);font-size:.92rem;line-height:1.65;max-width:56ch}
.room-intro__acts{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem;margin-block-start:1.75rem}
.room-intro__signin{margin:0;font-size:.9rem;color:var(--awm-ink-muted)}
.room-intro__signin a{color:var(--awm-ink);text-decoration:underline;text-underline-offset:.2em}
.room-intro__signin a:hover{color:var(--awm-accent)}
/* Two benefits side by side once there is room for them to breathe. */
@media(min-width:640px) and (max-width:999px){
	.room-intro__list{grid-template-columns:1fr 1fr;column-gap:2rem}
}
@media(min-width:1000px){
	.room-intro__grid{
		grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
		grid-template-areas:"head media" "body media";
		grid-template-rows:auto 1fr;align-items:start
	}
	.room-intro__media{aspect-ratio:auto;align-self:stretch;min-height:clamp(520px,44vw,760px)}
}
html.awm-anim .room-intro__media{clip-path:inset(0 0 0 100%);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1)}
html.awm-anim .room-intro__media.is-in{clip-path:inset(0 0 0 0)}
@media(prefers-reduced-motion:reduce){html.awm-anim .room-intro__media{clip-path:none;transition:none}}

/* Inside the room: the owner's name is the first line, Sign out beside it. */
.page-head__member{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem}
.page-head__member h1{margin-block-end:0;overflow-wrap:anywhere}

/* ==========================================================================
   Every screen, not just the one it was drawn on (30 Sep).
   ========================================================================== */

/* A range row is as many columns as the marque has cards (up to five), so
   three Lamborghinis fill the row instead of stopping two-fifths short. */
@media (min-width:1101px){.range__row{grid-template-columns:repeat(var(--range-cols,5),minmax(0,1fr))}}

/* Three stories on the home page are three columns on anything wide enough,
   never three cards and an empty slot. */
@media (min-width:900px){.grid--reading{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* The Bugatti cover is the W16 Mistral under Mount Fuji; on a wide or a tall
   crop the car sits low in the frame, so the crop follows it down. */
.chapter--marque.brand-bugatti .chapter__media img{object-position:50% 82%}

/* Large displays: the page grows with the screen instead of leaving a narrow
   column in the middle of a 27-inch monitor, and the type grows with it. */
@media (min-width:1800px){
	.wrap{width:min(1600px,100% - var(--awm-page-gutter,9rem))}
	.wrap--narrow{width:min(820px,100% - var(--awm-page-gutter,9rem))}
}
@media (min-width:2200px){
	html{font-size:18px}
	.wrap{width:min(1840px,100% - var(--awm-page-gutter,9rem))}
	.wrap--narrow{width:min(900px,100% - var(--awm-page-gutter,9rem))}
}
@media (min-width:3000px){
	html{font-size:20px}
	.wrap{width:min(2200px,100% - var(--awm-page-gutter,9rem))}
}
.owners__notice{padding-block-start:clamp(1.5rem,3vw,2.5rem)}
.owners__notice .form__msg{margin:0}
/* The member's name sits on the right of the welcome line. */
.page-head__member{align-items:flex-end}
.page-head__who{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;text-align:end;padding-block-end:.35rem}
.page-head__name{font-family:var(--awm-font-display,"Marcellus"),Georgia,serif;font-size:clamp(1.15rem,1.8vw,1.5rem);color:var(--awm-ink);line-height:1.2}
.page-head__out{font-size:.82rem;color:var(--awm-ink-muted);text-decoration:underline;text-underline-offset:.2em}
.page-head__out:hover{color:var(--awm-accent)}
@media(max-width:640px){.page-head__who{align-items:flex-start;text-align:start;flex-direction:row;gap:1rem;align-items:baseline}}

/* ==========================================================================
   Lamborghini (1 Oct) — rebuilt on lamborghini.com's home page: the film,
   MODELS on white behind hexagonal arrows, the dealer band, CONFIGURE YOUR
   on near-black. Condensed capitals throughout, gold and yellow buttons
   72px tall, square corners.
   ========================================================================== */
.marque-page--lamborghini{background:#000;color:#fff}
.marque-page--lamborghini .lx-ico{width:20px;height:20px;flex:none;display:block}
.lx-btn{
	display:inline-flex;align-items:center;justify-content:space-between;gap:1.6rem;
	min-height:72px;padding:0 1.6rem;border:1px solid transparent;border-radius:0;
	font-family:"Oswald",Arial,sans-serif;font-weight:500;font-size:1rem;line-height:1;
	letter-spacing:.02em;text-transform:uppercase;text-decoration:none;white-space:nowrap;
	transition:background .25s ease,color .25s ease,border-color .25s ease
}
.lx-btn--white{background:#fff;color:#000}
.lx-btn--white:hover{background:#c4c4c4;color:#000}
.lx-btn--gold{background:#917300;color:#fff}
.lx-btn--gold:hover{background:#6e5700;color:#fff}
.lx-btn--yellow{background:#ffc000;color:#000}
.lx-btn--yellow:hover{background:#fff;color:#000}
.lx-btn--outline{border-color:#fff;color:#fff;background:transparent}
.lx-btn--outline:hover{background:#fff;color:#000}
.lx-btn--line{min-height:72px;padding:0 .2rem;color:#181818;border-bottom:1px solid #181818;gap:1.1rem}
.lx-btn--line:hover{color:#917300;border-bottom-color:#917300}
.lx-btn--plain{min-height:72px;padding:0 .2rem;color:#181818;gap:1.1rem}
.lx-btn--plain:hover{color:#917300}
.lx-btn--light{color:#fff;min-height:48px}
.lx-btn--light:hover{color:#ffc000}

/* the film */
.lx-hero{position:relative;background:#000;color:#fff;overflow:hidden;
	min-height:max(560px,calc(100svh - 120px));display:grid;align-items:end}
.lx-hero__media{position:absolute;inset:0}
.lx-hero__still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lx-hero__media .marque-open__film{object-fit:cover}
.lx-hero__veil{position:absolute;inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.55) 0,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 55%,rgba(0,0,0,.72) 100%)}
.lx-hero__body{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;
	gap:2rem;flex-wrap:wrap;padding-block:6rem clamp(2.5rem,7vh,4.5rem)}
.lx-hero__over{margin:0 0 .5rem;font-family:"Oswald",Arial,sans-serif;font-weight:500;
	font-size:clamp(1rem,1.4vw,1.15rem);letter-spacing:.02em;text-transform:uppercase;color:#fff}
.lx-hero__title{margin:0;font-family:"Oswald",Arial,sans-serif;font-weight:700;
	font-size:clamp(3.4rem,8.4vw,8.4rem);line-height:.9;letter-spacing:-.01em;text-transform:uppercase;color:#fff}

/* MODELS, on white */
.lx-models{position:relative;background:#fff;color:#181818;padding-block:clamp(3rem,6vw,5rem) clamp(3rem,6vw,4.5rem)}
.lx-anchor{position:absolute;inset-block-start:0}
.lx-models__t{margin:0 0 clamp(1.5rem,3vw,2.5rem);font-family:"Oswald",Arial,sans-serif;font-weight:500;
	font-size:clamp(2rem,3.4vw,2.8rem);line-height:1;text-transform:uppercase;letter-spacing:.01em;color:#181818}
.lx-car{position:relative;width:min(1400px,100%);margin-inline:auto}
.lx-car__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;outline:0}
.lx-car__track::-webkit-scrollbar{display:none}
.lx-slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;display:grid;justify-items:center;
	text-align:center;padding-inline:clamp(1rem,7vw,7rem)}
.lx-slide__head{display:grid;justify-items:center;gap:.5rem;min-height:clamp(70px,8vw,96px);align-content:center}
.lx-slide__logo{display:block;width:min(340px,70vw);height:auto}
.lx-slide__line{margin:0;font-family:"Oswald",Arial,sans-serif;font-weight:500;text-transform:uppercase;
	font-size:clamp(1.3rem,2.4vw,2rem);line-height:1;letter-spacing:-.005em;color:#3c3c3c}
.lx-slide__cars{display:grid;width:min(1180px,100%);margin-block:clamp(1.5rem,3vw,2.5rem) clamp(1rem,2vw,1.5rem)}
.lx-slide__car{grid-area:1/1;width:100%;height:auto;aspect-ratio:1600/400;object-fit:contain;object-position:center bottom;
	opacity:0;transition:opacity .45s ease;pointer-events:none}
.lx-slide__car.is-on{opacity:1}
.lx-tabs{display:flex;justify-content:center;gap:clamp(1rem,3vw,2.5rem);flex-wrap:wrap;margin-block-end:clamp(1.5rem,3vw,2.25rem)}
.lx-tab{appearance:none;background:none;border:0;border-bottom:2px solid #d0d0d0;border-radius:0;cursor:pointer;
	padding:.85rem .3rem;min-width:clamp(120px,14vw,190px);
	font-family:"Oswald",Arial,sans-serif;font-weight:500;font-size:.98rem;letter-spacing:.02em;text-transform:uppercase;
	color:#9a9a9a;transition:color .2s ease,border-color .2s ease}
.lx-tab:hover{color:#181818}
.lx-tab.is-on{color:#181818;border-bottom-color:#917300}
.lx-tabs--one .lx-tab{cursor:default}
.lx-acts{display:flex;justify-content:center;align-items:center;gap:clamp(1rem,2.6vw,2.4rem);flex-wrap:wrap}
.lx-acts--start{justify-content:flex-start}
.lx-hex{position:absolute;inset-block-start:clamp(10px,2vw,30px);z-index:2;width:clamp(44px,4vw,56px);height:auto;aspect-ratio:48/50;
	appearance:none;background:none;border:0;padding:0;cursor:pointer;color:#bdbdbd;transition:color .2s ease}
.lx-hex svg{width:100%;height:100%;display:block}
.lx-hex:hover,.lx-hex:focus-visible{color:#181818}
.lx-hex--prev{inset-inline-start:clamp(.5rem,4vw,4rem)}
.lx-hex--next{inset-inline-end:clamp(.5rem,4vw,4rem)}

/* the dealer band */
.lx-locator{position:relative;background:#000;color:#fff;overflow:hidden;min-height:clamp(320px,30vw,560px);display:grid;align-items:center}
.lx-locator__media,.lx-locator__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lx-locator::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.1) 60%)}
.lx-locator__body{position:relative;z-index:1;display:grid;justify-items:start;gap:1rem;padding-block:3rem}
.lx-locator__t{margin:0;font-family:"Oswald",Arial,sans-serif;font-weight:700;text-transform:uppercase;
	font-size:clamp(2.6rem,6.4vw,6.4rem);line-height:.9;color:#fff}
.lx-locator__where{margin:0 0 .6rem;font-family:"Oswald",Arial,sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:1rem;color:#fff}

/* CONFIGURE YOUR, on near-black */
.lx-config{background:#181818;color:#fff;padding-block:clamp(3rem,6vw,5rem)}
.lx-config__tabs{display:flex;gap:clamp(.75rem,2.4vw,2rem);overflow-x:auto;scrollbar-width:none;
	margin-block-end:clamp(2rem,4vw,3.5rem);border-bottom:1px solid #3a3a3a}
.lx-config__tabs::-webkit-scrollbar{display:none}
.lx-config__tabs .lx-tab{flex:none;color:#8c8c8c;border-bottom-color:transparent;margin-bottom:-1px}
.lx-config__tabs .lx-tab:hover{color:#fff}
.lx-config__tabs .lx-tab.is-on{color:#fff;border-bottom-color:#ffc000}
.lx-config__inner{display:grid;gap:clamp(1.5rem,3vw,3rem);align-items:center}
@media(min-width:960px){.lx-config__inner{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
.lx-config__over{margin:0 0 .4rem;font-family:"Oswald",Arial,sans-serif;font-weight:500;font-size:clamp(1.4rem,2.4vw,2rem);
	text-transform:uppercase;color:#fff;line-height:1}
.lx-config__t{margin:0 0 clamp(1.5rem,3vw,2.5rem);font-family:"Oswald",Arial,sans-serif;font-weight:700;text-transform:uppercase;
	font-size:clamp(2.8rem,6.6vw,6.6rem);line-height:.9;color:#f5f5f5;overflow-wrap:anywhere}
.lx-config__media{display:grid}
.lx-config__car{grid-area:1/1;width:100%;height:auto;aspect-ratio:1800/684;object-fit:contain;opacity:0;transition:opacity .45s ease}
.lx-config__car.is-on{opacity:1}

/* what only we can offer, in the same voice */
.lx-band{background:#000;color:#fff;padding-block:clamp(3rem,6vw,5rem);border-top:1px solid #262626}
.lx-row{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;margin-block-end:clamp(1.5rem,3vw,2.5rem)}
.lx-band__t{margin:0;font-family:"Oswald",Arial,sans-serif;font-weight:500;text-transform:uppercase;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1;color:#fff}
.marque-page--lamborghini .lead,.marque-page--lamborghini #enquire{border-top:1px solid #262626}

@media(max-width:760px){
	.lx-btn{min-height:60px;padding:0 1.2rem;gap:1.1rem;font-size:.92rem}
	.lx-btn--line,.lx-btn--plain{min-height:52px}
	.lx-hero__body{padding-block:10rem 2.25rem}
	.lx-hero__body .lx-btn{width:100%}
	.lx-slide{padding-inline:1rem}
	.lx-hex{inset-block-start:auto;inset-block-end:auto;top:clamp(8px,1vw,12px);width:40px}
	.lx-acts{flex-direction:column;align-items:stretch;gap:.5rem;width:100%}
	.lx-acts .lx-btn{justify-content:space-between}
	.lx-acts--start{flex-direction:column}
	.lx-tab{min-width:0;padding-inline:.4rem}
}

/* ==========================================================================
   Bentley (1 Oct) — the Torcal unveiled on scroll, as bentleymotors.com
   does it: the title stays at the top, the car is unveiled beneath it frame
   by frame as the page scrolls, and the two buttons arrive at the end.
   Without the frames (or with less motion asked for) it is one still
   screen with the buttons on it.
   ========================================================================== */
.bl-mol{position:relative;background:#000;color:#fff}
.bl-mol__stage{position:relative;height:max(560px,calc(100svh - 120px));overflow:hidden;display:grid;
	grid-template-rows:auto 1fr auto;justify-items:center;text-align:center}
.bl-mol__still,.bl-mol__canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.bl-mol__still{object-fit:cover;object-position:center 60%}
.bl-mol__canvas{opacity:0;transition:opacity .5s ease;background:#000}
.bl-mol.is-drawn .bl-mol__canvas{opacity:1}
.bl-mol__stage::after{content:"";position:absolute;inset:0;pointer-events:none;
	background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,0) 26%,rgba(0,0,0,0) 72%,rgba(0,0,0,.6) 100%)}
.bl-mol__top{position:relative;z-index:1;grid-row:1;padding-block:clamp(2rem,6vh,3.5rem) 0;width:min(900px,100% - 3rem)}
.bl-mol__top .bl-launch__title{margin:.3rem 0 0}
.bl-mol__end{position:relative;z-index:1;grid-row:3;display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;
	padding-block:0 clamp(2rem,7vh,4rem);transition:opacity .5s ease,transform .5s ease}
.bl-mol__hint{position:absolute;z-index:1;inset-inline:0;inset-block-end:clamp(1.25rem,4vh,2.5rem);display:grid;justify-items:center;gap:.6rem;
	font-family:"Jost",arial,sans-serif;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#d7dfd6;
	transition:opacity .4s ease;pointer-events:none}
.bl-mol__chev{width:10px;height:10px;border-inline-end:1px solid currentColor;border-block-end:1px solid currentColor;transform:rotate(45deg);
	animation:bl-chev 1.8s ease-in-out infinite}
@keyframes bl-chev{0%,100%{transform:translateY(-3px) rotate(45deg);opacity:.5}50%{transform:translateY(3px) rotate(45deg);opacity:1}}
.bl-mol--seq .bl-mol__hint{opacity:0}
/* live: the section is tall and the stage stays put while the car turns */
.bl-mol.is-live{height:calc(380svh + 120px)}
.bl-mol.is-live .bl-mol__stage{position:sticky;top:58px;height:calc(100svh - 58px)}
.bl-mol.is-live .bl-mol__hint{opacity:1}
.bl-mol.is-live.is-started .bl-mol__hint{opacity:0}
.bl-mol.is-live .bl-mol__end{opacity:0;transform:translateY(12px);pointer-events:none}
.bl-mol.is-live.is-ended .bl-mol__end{opacity:1;transform:none;pointer-events:auto}
body.admin-bar .bl-mol.is-live .bl-mol__stage{top:90px;height:calc(100svh - 90px)}
@media(max-width:700px){.bl-mol.is-live{height:calc(300svh + 120px)}}
@media(prefers-reduced-motion:reduce){.bl-mol__chev{animation:none}}

/* the film from Crewe: the still, a play button, then the film with sound */
.bl-film{position:relative;margin:0;background:#000;line-height:0;overflow:hidden;
	aspect-ratio:1600/1106;max-height:88svh;width:100%}
.bl-film:not(.bl-film--live){aspect-ratio:7/3}
.bl-film__poster,.bl-film__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.bl-film__video{object-fit:contain;background:#000}
.bl-film__play{position:absolute;inset:0;margin:auto;width:clamp(64px,7vw,88px);height:clamp(64px,7vw,88px);
	appearance:none;background:none;border:0;padding:0;cursor:pointer;z-index:1;transition:transform .3s ease}
.bl-film__play svg{width:100%;height:100%;display:block}
.bl-film__play:hover{transform:scale(1.06)}
.bl-film.is-playing .bl-film__play,.bl-film.is-playing .bl-film__poster,.bl-film.is-playing .bl-wide__cap{display:none}
.bl-film .bl-wide__cap{z-index:1}

/* read more: one band, three tall stories to a row, as on bentleymotors.com;
   on a phone the row swipes sideways like theirs */
.marque-page--bentley .bl-band--read{padding-block:clamp(2.5rem,4vw,3.5rem) clamp(3rem,5vw,4.5rem)}
.marque-page--bentley .bl-teasers--read{gap:16px;margin-block-start:clamp(1.5rem,2.5vw,2.25rem)}
.marque-page--bentley .bl-teasers--read .bl-teaser{min-height:0;aspect-ratio:2/3}
@media(max-width:1000px){
	.marque-page--bentley .bl-teasers--read{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
		margin-inline:calc(-1 * var(--awm-gutter,1.5rem));padding-inline:var(--awm-gutter,1.5rem)}
	.marque-page--bentley .bl-teasers--read::-webkit-scrollbar{display:none}
	.marque-page--bentley .bl-teasers--read .bl-teaser{flex:0 0 min(78vw,420px);scroll-snap-align:start}
}
/* even rhythm between the bands below */
.marque-page--bentley .bl-band{padding-block:clamp(3rem,5.5vw,5rem)}
.marque-page--bentley .bl-band .bl-head + .bl-sub{margin-block-start:.6rem}
.marque-page--bentley .bl-band .bl-head + .bl-teasers,.marque-page--bentley .bl-band .bl-head + .grid{margin-block-start:clamp(1.5rem,2.5vw,2.25rem)}
.marque-page--bentley #stock .bl-sub + .grid{margin-block-start:clamp(1.5rem,2.5vw,2.25rem)}
.marque-page--bentley .bl-models{margin-block-start:clamp(1.5rem,2.5vw,2.25rem)}
.marque-page--bentley .bl-foot{margin-block-start:clamp(1.75rem,3vw,2.5rem)}

/* ==========================================================================
   The marque bar's range (1 Oct): the models in pictures, the width of the
   bar, the way the manufacturers' own menus open — Lamborghini's cars cut
   out side-on, Bugatti's tall portraits, Bentley's photographs.
   ========================================================================== */
.marque-bar .marque-drop{position:static}
/* 5 Oct: the panel is a child of the bar itself, not of the row of links,
   so nothing that scrolls or fades that row can clip it. */
.marque-bar .marque-range{
	position:absolute;inset-inline:0;inset-block-start:100%;z-index:12;min-width:0;
	padding:clamp(1.25rem,2.4vw,2rem) 0 clamp(1.1rem,2vw,1.6rem);
	background:var(--awm-bg);border:0;border-block:1px solid var(--awm-line);
	box-shadow:0 34px 60px -20px rgba(0,0,0,.55);
	max-height:calc(100svh - 140px);overflow-y:auto;overscroll-behavior:contain
}
.marque-bar .marque-drop__list{
	list-style:none;margin:0;padding:0;display:grid;gap:clamp(.8rem,1.6vw,1.4rem);
	grid-template-columns:repeat(auto-fill,minmax(200px,1fr))
}
.marque-bar .marque-drop__list--lamborghini{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.marque-bar .marque-drop__list--bugatti{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.marque-bar .marque-drop__list a.marque-drop__card{
	display:grid;gap:.55rem;padding:0;text-decoration:none;color:var(--awm-ink);
	font-family:var(--awm-font-body,inherit);letter-spacing:normal;text-transform:none;font-size:1rem
}
.marque-drop__pic{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--awm-surface)}
.marque-drop__list--bugatti .marque-drop__pic{aspect-ratio:4/5}
.marque-drop__pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
	transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.marque-drop__pic--contain{background:transparent;aspect-ratio:2.6/1}
.marque-drop__pic--contain img{object-fit:contain;object-position:center bottom}
.marque-drop__card:hover .marque-drop__pic img,.marque-drop__card:focus-visible .marque-drop__pic img{transform:scale(1.045)}
.marque-drop__name{display:block;font-family:var(--awm-font-display,"Marcellus"),serif;font-size:1.02rem;line-height:1.2;
	text-transform:var(--awm-display-case,none);color:var(--awm-ink)}
.marque-drop__go{display:block;font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;font-size:.64rem;letter-spacing:.18em;
	text-transform:uppercase;color:var(--awm-ink-muted);transition:color .2s ease}
.marque-drop__card:hover .marque-drop__go,.marque-drop__card:focus-visible .marque-drop__go{color:var(--awm-accent)}
.marque-range[hidden]{display:none}
.marque-bar .marque-range a.marque-drop__all{
	display:inline-flex;gap:.5rem;align-items:center;margin-block-start:clamp(1rem,2vw,1.5rem);padding:0;border:0;
	font-family:var(--awm-font-label,"Barlow Condensed"),sans-serif;letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;
	color:var(--awm-ink-muted)
}
.marque-bar .marque-range a.marque-drop__all:hover{color:var(--awm-accent)}
.brand-lamborghini .marque-drop__name{font-family:"Oswald",Arial,sans-serif;font-weight:500;text-transform:uppercase;font-size:1.1rem}
.brand-bugatti .marque-drop__name{text-transform:uppercase;letter-spacing:.04em}
@media(max-width:640px){
	.marque-bar .marque-range{inset-inline:0;padding-block:1rem 1.1rem}
	.marque-bar .marque-drop__list,.marque-bar .marque-drop__list--lamborghini,.marque-bar .marque-drop__list--bugatti{
		display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:.8rem;
		margin-inline:calc(-1 * var(--awm-gutter,1.5rem));padding-inline:var(--awm-gutter,1.5rem)
	}
	.marque-bar .marque-drop__list::-webkit-scrollbar{display:none}
	.marque-bar .marque-drop__list > li{flex:0 0 62%;scroll-snap-align:start}
	.marque-bar .marque-drop__list--bugatti > li{flex-basis:44%}
	.marque-bar .marque-drop__list--lamborghini > li{flex-basis:72%}
	.marque-drop__chev{display:inline-block}
}

/* Bugatti's opening (1 Oct): the Destrier's script name over its film. */
.marque-page--bugatti .bg-open__script img.bg-open__destrier{width:min(72vw,620px);max-width:none}
.marque-page--bugatti .bg-open__script:has(.bg-open__destrier){width:auto}
.bg-open__media .marque-open__film{object-fit:cover}

/* ==========================================================================
   The main menu's photograph (1 Oct): larger and in one proportion for
   every row, so the panel no longer reads as a list with a stamp in the
   corner. 4:3 holds a car whole; the column grows with the screen.
   ========================================================================== */
@media(min-width:900px){
	.nav__cols{grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(360px,min(38vw,620px))}
	.nav__preview__img{aspect-ratio:4/3;max-height:calc(100svh - 74px - 12rem)}
}
@media(min-width:1800px){
	.nav__cols{grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(420px,min(36vw,760px))}
}

/* WooCommerce's `.woocommerce-page img{height:auto}` (two units) beat the
   one-class rules above on every brand page, so on a phone the opening
   still stopped at its own height and left the screen black beneath it.
   Element-qualified, these tie and win on order. */
img.lx-hero__still,img.bl-mol__still,img.bl-film__poster{height:100%}
.lx-locator__media img{height:100%}
.lx-config__car{aspect-ratio:16/7}
/* The cards share the row out between them rather than leaving a gap at
   the end of it (five Bentleys, three Lamborghinis, six Bugattis). */
.marque-bar .marque-drop__list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.marque-bar .marque-drop__list--lamborghini{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.marque-bar .marque-drop__list--bugatti{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
@media(min-width:1200px){.marque-bar .marque-drop__list--lamborghini{max-width:1200px}}
.marque-page--bugatti .bg-open__script:has(.bg-open__destrier){margin-block-end:clamp(1.25rem,3vw,2.25rem)}
.bl-film__video[hidden]{display:none}
@media(min-width:960px){
	.lx-config__inner{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}
	.lx-config__car{transform:scale(1.16);transform-origin:60% 55%}
}
/* A row that snaps to its start was snapping its first card to the very
   edge of the screen, past the gutter the padding gave it. */
@media(max-width:640px){.marque-bar .marque-drop__list{scroll-padding-inline:var(--awm-gutter,1.5rem)}}
@media(max-width:1000px){.marque-page--bentley .bl-teasers--read{scroll-padding-inline:var(--awm-gutter,1.5rem)}}

/* ==========================================================================
   Bugatti type (1 Oct), as bugatti.com sets it: headings in its display
   face — capitals, squared, a little condensed (Barlow Condensed stands in)
   — and every small line, label and button in its monospace (IBM Plex Mono
   stands in), capitals, spaced. The pill is outlined until it is pointed at.
   ========================================================================== */
.marque-page--bugatti{--bg-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--bg-disp:"Barlow Condensed","Bugatti Display",system-ui,sans-serif}
.marque-page--bugatti .bg-head,.marque-page--bugatti .bg-door__t,.marque-page--bugatti .bg-life__t,.marque-page--bugatti .bg-live__t,
.marque-page--bugatti .bg-banner__t,.marque-page--bugatti .lead-form h2,.marque-page--bugatti .section h2,.marque-page--bugatti .bg-band h2{
	font-family:var(--bg-disp);text-transform:uppercase;font-weight:500;letter-spacing:.01em
}
.marque-page--bugatti .bg-head{font-size:clamp(1.9rem,3vw,2.6rem);line-height:1.05}
.marque-page--bugatti .bg-door__t,.marque-page--bugatti .bg-life__t{font-size:clamp(1.35rem,1.9vw,1.6rem);line-height:1.1}
.marque-page--bugatti .bg-more,.marque-page--bugatti .bg-open__line,.marque-page--bugatti .bg-life__s,.marque-page--bugatti .bg-hyper__line,
.marque-page--bugatti .bg-banner__s,.marque-page--bugatti .bg-live__t + *{
	font-family:var(--bg-mono);text-transform:uppercase;letter-spacing:.1em;font-weight:400
}
.marque-page--bugatti .bg-more{font-size:.74rem;text-decoration:underline;text-underline-offset:.35em}
.marque-page--bugatti .bg-open__line{font-size:clamp(.8rem,1.1vw,.95rem);line-height:1.6}
.marque-page--bugatti .bg-life__s,.marque-page--bugatti .bg-hyper__line{font-size:.78rem}
.marque-page--bugatti .bg-pill{font-family:var(--bg-mono);text-transform:uppercase;letter-spacing:.1em;font-weight:500;font-size:.76rem;
	background:transparent;color:#fff;border:1px solid rgba(255,255,255,.85);border-radius:999px;padding:.95rem 1.8rem}
.marque-page--bugatti .bg-pill:hover{background:#fff;color:#000;border-color:#fff}
.marque-page--bugatti .bg-open__script:has(.bg-open__destrier){margin-block-end:clamp(2rem,4.5vw,3.75rem)}
img.bg-open__still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}
/* The enlarged car must not push the page sideways. */
.lx-config{overflow:hidden}
@supports (overflow:clip){.lx-config{overflow:visible;overflow-x:clip}}
/* On a phone the opening frame is cropped to its middle, which is trees;
   the car comes in on the right. */
@media(max-width:760px){
	img.lx-hero__still{object-position:90% 50%}
	.lx-hero .marque-open__film{object-position:72% 50%}
}
/* The stage is the height of the first screen under the two bars, so
   "Scroll to unveil" is in view the moment the page opens; once it sticks
   under the header the strip left below it is the same black. */
.bl-mol.is-live .bl-mol__stage{height:max(480px,calc(100svh - 120px))}
body.admin-bar .bl-mol.is-live .bl-mol__stage{height:max(480px,calc(100svh - 152px))}
/* Six Bentleys (the Torcal first) on one row. */
.marque-bar .marque-drop__list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.marque-page--bugatti .bg-banner__s{font-size:clamp(.74rem,1vw,.86rem);line-height:1.75}
/* Five Lamborghinis on one row, as in lamborghini.com's own menu. */
.marque-bar .marque-drop__list--lamborghini{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));max-width:none}
/* Brand pages: three cards fill the row rather than leaving a fourth column
   empty; on Bentley, whose headings are centred, one or two cards sit centred. */
.marque-page .grid:has(> :nth-child(3):last-child){grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
.marque-page--bentley .grid:has(> :last-child:nth-child(-n+2)){grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),420px));justify-content:center}
/* A lone card takes the row on a phone rather than half of it. */
@media(max-width:640px){.grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}}
