/* START_SECTION:brand-universe (INDEX:6) */
.bu{position:relative;overflow:hidden;background:var(--bu-bg);color:var(--bu-text);font-family:var(--bu-bf)}
.bu *{box-sizing:border-box}
.bu h1,.bu h2,.bu-kw,.bu-model__name,.bu-timeline__year{font-family:var(--bu-hf);font-weight:var(--bu-hw);font-style:var(--bu-hs);letter-spacing:var(--bu-ls);text-transform:var(--bu-tt)}
.bu-hero{position:relative;min-height:88vh;display:grid;place-items:center;text-align:center;padding:14vh 6vw 16vh;isolation:isolate}
.bu-hero__photo{position:absolute;inset:0;z-index:-3}
.bu-hero__photo img{width:100%;height:100%;object-fit:cover}
.bu-hero__photo.is-bw img{filter:grayscale(1) contrast(1.1)}
.bu-hero__photo::after{content:"";position:absolute;inset:0;background:var(--bu-bg);opacity:var(--bu-overlay)}
.bu-motif{position:absolute;inset:-12% -4%;z-index:-1;pointer-events:none;color:var(--bu-motif);opacity:var(--bu-motif-op);will-change:transform}
.bu-motif svg{position:absolute;inset:0;width:100%;height:100%}
.bu-eyebrow{margin:0 0 1.2rem;font-size:.8rem;letter-spacing:.35em;text-transform:uppercase;color:var(--bu-accent)}
.bu-title{margin:0;font-size:clamp(3.2rem,11vw,10.5rem);line-height:.92;color:var(--bu-text)}
.bu-tagline{margin:1.6rem auto 0;max-width:38ch;font-size:clamp(1.05rem,1.8vw,1.5rem);line-height:1.5;color:var(--bu-muted)}
.bu-scroll{position:absolute;left:50%;bottom:5vh;width:1px;height:64px;background:linear-gradient(var(--bu-accent),transparent);animation:bu-drip 2.2s ease-in-out infinite}
@keyframes bu-drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.bu-marquee{overflow:hidden;background:var(--bu-accent);color:var(--bu-bg);padding:.9rem 0;font-family:var(--bu-hf);font-weight:var(--bu-hw);text-transform:uppercase;letter-spacing:.08em;font-size:clamp(1.1rem,2.4vw,2rem)}
.bu-marquee__track{display:flex;gap:3rem;width:max-content;animation:bu-marq 28s linear infinite}
.bu-marquee__track span::after{content:"✦";margin-left:3rem}
@keyframes bu-marq{to{transform:translateX(-50%)}}
.bu-universe{padding:14vh 6vw;text-align:center;background:var(--bu-surface);color:var(--bu-surface-text)}
.bu-kw{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.2em .9em;margin:0;font-size:clamp(2.2rem,6.5vw,5.8rem);line-height:1.05}
.bu-kw span+span::before{content:"";display:inline-block;width:.18em;height:.18em;margin-right:.9em;border-radius:50%;background:var(--bu-accent);vertical-align:middle}
.bu-ambiance{max-width:58ch;margin:2.4rem auto 0;font-size:1.15rem;line-height:1.75;opacity:.85}
.bu-models{position:relative;padding:12vh 5vw 14vh}
.bu-models__title{margin:0 0 6vh;text-align:center;font-size:clamp(1.8rem,4vw,3.2rem)}
.bu-models__grid{display:grid;grid-template-columns:repeat(var(--bu-cols),minmax(0,1fr));gap:4vw;max-width:1400px;margin:0 auto}
.bu-model{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;color:inherit;text-decoration:none}
.bu-model__stage{position:relative;display:grid;place-items:center;width:min(100%,560px);aspect-ratio:1/1;height:auto;flex:none;will-change:transform;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--bu-accent) 30%,var(--bu-bg)) 0 42%,var(--bu-bg) 70.5%)}
.bu-model__disc{position:absolute;inset:7%;border-radius:50%;background:radial-gradient(circle at 50% 42%,var(--bu-disc) 0 58%,color-mix(in srgb,var(--bu-disc) 78%,var(--bu-accent)) 100%);box-shadow:0 0 0 1px color-mix(in srgb,var(--bu-accent) 40%,transparent);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bu-model__img{position:absolute;z-index:1;inset:8%;width:84%;height:84%;max-width:none;object-fit:contain;mix-blend-mode:multiply;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bu-model.has-cutout .bu-model__img{mix-blend-mode:normal;inset:2%;width:96%;height:96%;filter:drop-shadow(0 34px 38px rgba(0,0,0,.45))}
.bu-model__shadow{position:absolute;bottom:4%;left:50%;width:46%;height:5%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(rgba(0,0,0,.45),transparent 70%);filter:blur(6px)}
.bu-model:hover .bu-model__img{transform:scale(1.06) rotate(-3deg)}
.bu-model:hover .bu-model__disc{transform:scale(1.04)}
.bu-model__label{margin-top:1.8rem;padding:.35rem 1rem;border:1px solid var(--bu-accent);border-radius:99px;font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:var(--bu-accent)}
.bu-model__name{margin-top:1rem;font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.2;max-width:24ch}
.bu-model__price{margin-top:.5rem;opacity:.75}
.bu-model__cta{margin-top:1.4rem;padding:.9rem 2rem;background:var(--bu-accent);color:var(--bu-bg);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;transition:transform .3s}
.bu-model:hover .bu-model__cta{transform:translateY(-3px)}
.bu-story{display:grid;grid-template-columns:1.25fr 1fr;gap:7vw;padding:14vh 7vw;background:var(--bu-surface);color:var(--bu-surface-text);align-items:start}
.bu-story h2{margin:0 0 1.6rem;font-size:clamp(2rem,4.5vw,3.6rem);line-height:1}
.bu-rte{font-size:1.12rem;line-height:1.85}
.bu-rte p{margin:0 0 1em}
.bu-timeline{list-style:none;margin:0;padding:0 0 0 1.6rem;border-left:1px solid var(--bu-accent)}
.bu-timeline li{position:relative;padding:0 0 2.2rem}
.bu-timeline li::before{content:"";position:absolute;left:calc(-1.6rem - 6px);top:.55em;width:11px;height:11px;border-radius:50%;background:var(--bu-accent)}
.bu-timeline__year{display:block;font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1;color:var(--bu-accent)}
.bu-timeline__txt{display:block;margin-top:.4rem;opacity:.85}
.bu-reveal{opacity:0;transform:translateY(40px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.bu-reveal.is-in{opacity:1;transform:none}
/* ---- motifs ---- */
.bu--topo .bu-coords{position:absolute;right:8%;bottom:18%;font:500 .8rem/1 monospace;letter-spacing:.3em}
.bu--sun .bu-motif{background:repeating-conic-gradient(from -90deg at 50% 115%,currentColor 0 .6deg,transparent .6deg 7deg)}
.bu--sun .bu-motif::after{content:"";position:absolute;left:0;right:0;top:62%;height:1px;background:currentColor}
.bu--mirror .bu-motif{background:repeating-linear-gradient(135deg,currentColor 0 1px,transparent 1px 26px)}
.bu--mirror .bu-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 35%,color-mix(in srgb,var(--bu-accent) 45%,transparent) 50%,transparent 65%);background-size:300% 100%;animation:bu-sheen 6s ease-in-out infinite}
@keyframes bu-sheen{0%{background-position:100% 0}100%{background-position:-100% 0}}
.bu--citygrid .bu-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,currentColor 0 1px,transparent 1px 72px),repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 72px);transform:perspective(900px) rotateX(55deg) scale(1.6);transform-origin:50% 100%;opacity:.7}
.bu--citygrid .bu-dial{position:absolute;inset:auto;left:50%;top:50%;width:min(110vh,95vw);height:min(110vh,95vw);margin:calc(min(110vh,95vw)/-2) 0 0 calc(min(110vh,95vw)/-2)}
.bu--stripes .bu-motif{background:repeating-linear-gradient(-45deg,currentColor 0 22px,transparent 22px 64px)}
.bu--dots .bu-motif{background:radial-gradient(currentColor 1.3px,transparent 1.8px) 0 0/14px 14px}
.bu--studs .bu-motif{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.8) 0 1.5px,currentColor 2.5px 6px,transparent 6.5px) 0 0/46px 46px}
.bu--leopard .bu-motif{background:
 radial-gradient(ellipse 22px 16px at 20% 25%,transparent 45%,currentColor 50% 72%,transparent 76%),
 radial-gradient(ellipse 18px 22px at 70% 20%,transparent 45%,currentColor 50% 72%,transparent 76%),
 radial-gradient(ellipse 24px 18px at 45% 60%,transparent 45%,currentColor 50% 72%,transparent 76%),
 radial-gradient(ellipse 16px 20px at 85% 70%,transparent 45%,currentColor 50% 72%,transparent 76%),
 radial-gradient(ellipse 20px 15px at 15% 80%,transparent 45%,currentColor 50% 72%,transparent 76%),
 radial-gradient(ellipse 7px 6px at 55% 35%,currentColor 60%,transparent 70%),
 radial-gradient(ellipse 6px 8px at 30% 50%,currentColor 60%,transparent 70%);background-size:200px 200px}
.bu--grain .bu-motif{mix-blend-mode:overlay}
.bu--grain .bu-model__img{filter:contrast(1.08)}
.bu--vintage .bu-motif{background:repeating-conic-gradient(from 0deg at 50% 100%,currentColor 0 6deg,transparent 6deg 12deg)}
.bu--vintage .bu-title{text-shadow:4px 4px 0 var(--bu-accent)}
.bu--jetset .bu-cloud{position:absolute;border-radius:50%;background:radial-gradient(closest-side,currentColor,transparent);filter:blur(10px);animation:bu-drift 40s linear infinite}
.bu--jetset .bu-cloud--1{width:42vw;height:14vw;top:15%;left:-10%}
.bu--jetset .bu-cloud--2{width:30vw;height:10vw;top:55%;left:40%;animation-duration:55s}
.bu--jetset .bu-cloud--3{width:36vw;height:12vw;top:30%;left:70%;animation-duration:48s}
@keyframes bu-drift{to{transform:translateX(-60vw)}}
@media (max-width:749px){
 .bu-hero{min-height:78vh}
 .bu-models__grid{grid-template-columns:1fr;gap:12vh}
 .bu-story{grid-template-columns:1fr}
 .bu-model__stage{width:100%}
}
@media (prefers-reduced-motion:reduce){
 .bu-reveal{opacity:1;transform:none}
 .bu-marquee__track,.bu-scroll,.bu-cloud,.bu--mirror .bu-hero::before{animation:none}
}
/* END_SECTION:brand-universe */
