/* Bicycle editorial showcase; original product photographs stay intact. */
body.atelier .bicycle-showcase{--bike-dark:var(--theme-primary,#273c31);--bike-light:var(--theme-primary_text,#fff);--bike-accent:var(--theme-accent,#e8c389);padding:38px;margin-top:28px;margin-bottom:28px;background:var(--bike-dark);color:var(--bike-light);border-radius:12px;overflow:hidden}
.bicycle-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:6px 8px 36px}.bicycle-kicker{display:flex;align-items:center;gap:10px;margin:0 0 20px;font-size:11px;font-weight:700;letter-spacing:2px;color:inherit}.bicycle-kicker>span{width:7px;height:7px;border-radius:50%;background:var(--bike-accent)}
body.atelier .bicycle-heading h2{font-size:clamp(44px,5.6vw,80px);line-height:1.02;font-weight:800;letter-spacing:-3px;margin:0;color:inherit}.bicycle-heading h2 em{font-family:Georgia,serif;font-weight:400;color:var(--bike-accent)}
.bicycle-intro{padding-bottom:7px;min-width:240px}.bicycle-edition{font-size:10px;font-weight:650;letter-spacing:2px;opacity:.7}.bicycle-intro p{font-size:19px;line-height:1.5;margin:14px 0 20px;color:inherit}.bicycle-intro a{color:inherit;font-size:13px;display:inline-flex;align-items:center;gap:40px;text-decoration:none;border-bottom:1px solid #ffffff55;padding-bottom:8px}.bicycle-intro a>span{font-size:22px}
.bicycle-models{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;scroll-margin-top:100px}.bicycle-card{background:var(--theme-surface,#fff);color:var(--theme-text,#202b24);border-radius:8px;min-width:0;overflow:hidden;padding:24px 26px 26px;position:relative}.bicycle-card.bicycle-magnum{background:var(--theme-soft,#f3f0e9)}
.bicycle-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;letter-spacing:1.5px;font-weight:700}.bicycle-wheel{font-size:22px;letter-spacing:-1px;white-space:nowrap}.bicycle-wheel small{font-size:9px;letter-spacing:1px;margin-left:5px}
body.atelier .bicycle-card h3{font-size:clamp(32px,4.3vw,62px);font-weight:850;letter-spacing:-2px;line-height:1.1;margin:22px 0 0;color:inherit}.bicycle-image{position:relative;display:block;aspect-ratio:1.5;width:100%;padding:0;margin:10px 0 18px;border:0;border-radius:0;overflow:hidden;background:transparent;cursor:zoom-in}.bicycle-image img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:none;height:auto;max-height:none;object-fit:contain;mix-blend-mode:multiply}.bicycle-image:hover img{transform:translate(-50%,-50%) scale(1.015)}
.bicycle-zoom{position:absolute;right:2px;bottom:2px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--theme-line,#cdd4cc);border-radius:50%;color:var(--theme-text,#273c31);font-size:18px;background:var(--theme-surface,#ffffffb8)}
.bicycle-card-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--theme-line,#d8ddd6)}.bicycle-caption{display:block;font-size:9px;letter-spacing:1px;font-weight:650;margin-bottom:7px;color:var(--theme-muted,#5a665d)}.bicycle-card-bottom strong{font-size:clamp(24px,2.6vw,35px);letter-spacing:-1px;white-space:nowrap;line-height:1.2}.bicycle-card-bottom strong small{font-size:14px;font-weight:500;letter-spacing:0;margin-left:4px}
.bicycle-contact{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:12px 16px;background:var(--bike-dark);color:var(--bike-light)!important;border:1px solid var(--bike-dark);border-radius:5px;white-space:nowrap;font-size:12px;font-weight:700;text-decoration:none}.bicycle-contact:hover{filter:brightness(1.15)}.bicycle-contact>span{font-size:19px}.bicycle-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 8px 0;font-size:11px;line-height:1.6}.bicycle-foot>span{opacity:.75}.bicycle-foot a{color:inherit;text-decoration:none;border-bottom:1px solid #ffffff66}.bicycle-foot a>span{margin-left:14px}
body.atelier .bicycle-showcase:not([hidden])~.intro{min-height:300px}.bicycle-photo-dialog{padding:18px;border:1px solid #d2d8d0;border-radius:12px;max-width:min(96vw,1000px);width:1000px;background:var(--theme-surface,#fff);color:var(--theme-text,#202b24)}.bicycle-photo-dialog::backdrop{background:#07140fbb;backdrop-filter:blur(5px)}.bicycle-photo-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.bicycle-photo-head button{min-width:44px;height:44px;font-size:24px;border:1px solid #cdd4cc;border-radius:8px;background:transparent;color:inherit}.bicycle-photo-dialog img{display:block;width:100%;height:70dvh;object-fit:contain}.bicycle-photo-dialog :focus-visible,.bicycle-showcase :focus-visible{outline:3px solid var(--theme-focus,#ddad54);outline-offset:4px}
@media(max-width:1000px){body.atelier .bicycle-showcase{padding:24px}.bicycle-card{padding:20px}.bicycle-card-bottom{align-items:stretch;flex-direction:column}.bicycle-contact{align-self:stretch;justify-content:space-between}.bicycle-heading{padding-left:0;padding-right:0}}
@media(max-width:620px){body.atelier .bicycle-showcase{margin-top:16px;padding:20px 14px;border-radius:9px}.bicycle-heading{gap:22px;padding:3px 8px 26px;display:block}.bicycle-kicker{font-size:9px;letter-spacing:1.6px;margin-bottom:20px}body.atelier .bicycle-heading h2{font-size:54px;letter-spacing:-2px}.bicycle-intro{min-width:0;padding-top:18px;padding-bottom:0}.bicycle-edition{display:none}.bicycle-intro p{font-size:14px;line-height:1.6;margin:0 0 12px}.bicycle-intro p br{display:none}.bicycle-intro p br::after{content:' '}.bicycle-intro a{font-size:12px;gap:30px}.bicycle-models{grid-template-columns:minmax(0,1fr);gap:16px}.bicycle-card{padding:20px 18px}.bicycle-card h3{margin-top:18px!important;font-size:44px!important}.bicycle-image{margin:4px 0 12px}.bicycle-card-bottom{flex-direction:row;flex-wrap:wrap;align-items:flex-end;padding-top:16px}.bicycle-card-bottom strong{font-size:30px}.bicycle-contact{width:100%;margin-top:4px}.bicycle-foot{display:block;padding:20px 8px 0;font-size:11px}.bicycle-foot a{display:inline-block;margin-top:9px}.bicycle-photo-dialog{padding:12px;max-width:96vw}.bicycle-photo-dialog img{height:60dvh}}
@media(prefers-reduced-motion:no-preference){.bicycle-image img{transition:transform .2s ease}.bicycle-contact{transition:filter .2s ease}}

.bicycle-campaign:not([hidden]){display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 7px}
.bicycle-campaign[hidden]{display:none!important}
.bicycle-campaign del{font-size:15px;line-height:1.4;color:var(--theme-muted,#5a665d);text-decoration-thickness:1.5px}
.bicycle-campaign>span{display:inline-flex;padding:4px 7px;border-radius:3px;background:var(--bike-dark);color:var(--bike-light);font-size:9px;line-height:1.5;font-weight:750;letter-spacing:.8px}

/* A prominent campaign band without covering the product photograph. */
.bicycle-campaign-banner:not([hidden]){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:14px 16px;margin:20px 0 -5px;border-radius:6px;background:var(--theme-accent,#edb552);color:var(--theme-accent_text,#202a23)}
.bicycle-campaign-banner[hidden]{display:none!important}
.bicycle-campaign-banner>span{font-size:12px;line-height:1.4;letter-spacing:1.1px;font-weight:850}
.bicycle-campaign-banner>strong{font-size:18px;line-height:1.3;letter-spacing:-.35px;white-space:nowrap}
.bicycle-card.has-campaign{box-shadow:inset 0 0 0 2px var(--theme-accent,#edb552)}
.has-campaign .bicycle-card-bottom{padding:18px;border:1px solid var(--theme-accent,#edb552);border-radius:6px;background:var(--theme-surface,#fff)}
.has-campaign .bicycle-card-bottom strong{font-size:38px;line-height:1.15;color:var(--theme-price,var(--theme-text,#202b24));font-weight:850}
.has-campaign .bicycle-card-bottom strong small{font-size:15px}
.has-campaign .bicycle-campaign:not([hidden]){gap:8px;margin-bottom:9px}
.has-campaign .bicycle-campaign del{font-size:19px;font-weight:550}
.has-campaign .bicycle-campaign>span{font-size:12px;letter-spacing:0;font-weight:500;padding:0;background:transparent;color:var(--theme-muted,#5a665d)}
@media(max-width:620px){.bicycle-campaign-banner:not([hidden]){padding:12px;margin-top:16px}.bicycle-campaign-banner>span{font-size:11px}.bicycle-campaign-banner>strong{font-size:17px}.has-campaign .bicycle-card-bottom{padding:16px 14px}.has-campaign .bicycle-card-bottom strong{font-size:36px}.has-campaign .bicycle-card-bottom .bicycle-contact{margin-top:6px}}
