body.bp-native-top { --bp-ink:#151515; --bp-line:#dededb; --bp-gutter:clamp(16px,2.7vw,52px); --bp-header:78px; margin:0; background:white; color:var(--bp-ink); font:14px/1.45 "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif; }
.bp-native-top *, .bp-native-top *::before, .bp-native-top *::after { box-sizing:border-box; }
.bp-native-top [hidden] { display:none !important; }
.bp-store { color:var(--bp-ink); }
.bp-store a { color:inherit; text-decoration:none; }
.bp-store button { font:inherit; color:inherit; }
.bp-store :focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.bp-shell { width:min(100%,1920px); margin-inline:auto; padding-inline:var(--bp-gutter); }
.bp-topbar { background:#fff; border-bottom:1px solid var(--bp-line); position:sticky; top:var(--wp-admin--admin-bar--height,0px); z-index:20; }
.bp-topbar .bp-shell { min-height:var(--bp-header); display:flex; align-items:center; justify-content:space-between; gap:16px; }
.bp-brand { display:inline-flex; align-items:center; margin:0; line-height:1; }
.bp-brand img { display:block; width:clamp(170px,19vw,248px); height:auto; }
.bp-top-actions { display:flex; align-items:center; gap:18px; }
.bp-cart-link { display:inline-flex; gap:9px; align-items:center; min-height:44px; font-size:12px; font-weight:700; letter-spacing:.055em; }
.bp-cart-count { min-width:18px; height:18px; padding:0 4px; border-radius:50%; background:#141414; color:white; font:600 10px/18px Arial,sans-serif; text-align:center; }
.bp-menu-button,.bp-close { display:none; }
.bp-layout { display:grid; grid-template-columns:minmax(0,1fr) clamp(160px,14vw,220px); grid-template-areas:"catalog nav"; gap:clamp(25px,3vw,60px); align-items:start; padding-top:32px; padding-bottom:72px; }
.bp-catalog { grid-area:catalog; min-width:0; }
.bp-sidebar { grid-area:nav; position:sticky; top:calc(var(--wp-admin--admin-bar--height,0px) + var(--bp-header) + 20px); max-height:calc(100dvh - var(--wp-admin--admin-bar--height,0px) - var(--bp-header) - 35px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
.bp-store .bp-nav-title { margin:0 0 10px; font:600 10px/1.2 Arial,sans-serif; letter-spacing:.15em; color:#666; }
.bp-filters,.bp-site-links,.bp-social { display:flex; flex-direction:column; align-items:stretch; }
.bp-filters a,.bp-site-links a,.bp-social a { position:relative; display:block; width:100%; padding:4px 0; font-weight:600; line-height:1.35; font-size:13px; letter-spacing:.025em; }
.bp-filters a { padding-left:13px; }
.bp-filters a[aria-current="true"]::before { position:absolute; left:0; top:50%; transform:translateY(-50%); width:5px; height:5px; background:currentColor; border-radius:100%; content:""; }
.bp-site-links,.bp-social { border-top:1px solid var(--bp-line); margin-top:16px; padding-top:13px; }
.bp-site-links a,.bp-social a { font-size:11px; }
.bp-social { flex-direction:row; flex-wrap:wrap; gap:12px; }
.bp-social a { width:auto; font-size:10px; letter-spacing:.05em; }
.bp-site-links a:hover,.bp-social a:hover,.bp-filters a:hover,.bp-footer a:hover,.bp-product-link:hover h2 { text-decoration:underline; text-underline-offset:3px; }
.bp-store .bp-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:31px clamp(12px,1.4vw,25px); padding:0; margin:0; list-style:none; }
.bp-product { min-width:0; margin:0; padding:0; }
.bp-product-link,.bp-photo,.bp-photo img { display:block; }
.bp-photo { width:100%; aspect-ratio:4/5; position:relative; overflow:hidden; background:#fff; }
.bp-photo img { width:100%; height:100%; object-fit:contain; transition:transform .3s ease; }
@media(hover:hover){.bp-product-link:hover .bp-photo img { transform:scale(1.02); }}
.bp-tag,.bp-stock { position:absolute; left:8px; padding:4px 7px; font:700 10px/1.1 Arial,sans-serif; letter-spacing:.06em; }
.bp-tag { top:8px; background:#141414; color:white; }
.bp-stock { bottom:8px; background:#fff; color:#171717; border:1px solid #c4c4c4; }
.bp-store .bp-product h2 { font:600 clamp(12px,1vw,15px)/1.38 "Helvetica Neue",Arial,sans-serif; color:inherit; margin:10px 0 1px; letter-spacing:.005em; overflow-wrap:anywhere; }
.bp-product-meta { display:flex; align-items:center; justify-content:space-between; gap:3px; min-height:26px; }
.bp-price { color:#464646; font-size:12px; font-weight:400; line-height:1.4; }
.bp-buy { width:34px; min-height:32px; margin-left:auto; display:inline-flex; justify-content:flex-end; align-items:center; }
.bp-release .bp-loop-coming-soon { display:flex; flex-wrap:wrap; gap:3px 7px; align-items:center; justify-content:flex-start; margin:3px 0 0; padding:0; color:#222; background:transparent; text-align:left; }
.bp-release .bp-loop-coming-soon__label,.bp-release .bp-loop-coming-soon__date { display:inline; margin:0; padding:0; background:transparent; color:inherit; font:600 10px/1.4 Arial,sans-serif; letter-spacing:.035em; }
.bp-release .bp-loop-coming-soon__date { font-weight:400; }
.bp-footer { border-top:1px solid var(--bp-line); }
.bp-footer .bp-shell { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; padding-block:26px; }
.bp-footer nav { display:flex; flex-wrap:wrap; gap:8px 18px; }
.bp-footer a,.bp-footer small { font-size:11px; }
.bp-cart-panel { position:fixed; inset:0 0 0 auto; margin:0; background:white; color:#121212; border:0; width:min(420px,100%); max-width:100%; height:100%; height:100dvh; max-height:none; padding:24px; overflow:auto; z-index:1000; }
.bp-cart-panel::backdrop { background:rgb(0 0 0/.42); }
.bp-panel-head { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--bp-line); padding-bottom:15px; }
.bp-panel-head h2 { font:bold 20px/1.2 Arial,sans-serif; margin:0; }
.bp-panel-head form { margin:0; }
.bp-panel-head button,.bp-store .bp-close { background:none; color:inherit; border:0; width:44px; height:44px; padding:0; font:300 28px/1 Arial,sans-serif; }
.bp-cart-panel .woocommerce-mini-cart { list-style:none; padding:0; margin:22px 0; }
.bp-cart-panel .mini_cart_item { min-height:60px; padding:12px 24px 12px 0; position:relative; overflow:hidden; border-bottom:1px solid var(--bp-line); }
.bp-cart-panel .mini_cart_item img { float:left; width:56px; height:64px; object-fit:contain; margin-right:12px; }
.bp-cart-panel .mini_cart_item .remove { position:absolute; right:0; top:10px; }
.bp-cart-panel .variation { margin:3px 0; }
.bp-cart-panel .quantity { display:block; }
.bp-cart-panel .woocommerce-mini-cart__buttons { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; }
.bp-cart-panel .button { display:inline-block; padding:10px 14px; background:#171717; color:white; text-decoration:none; }
.bp-cart-panel .bp-cart-page { font-size:12px; text-decoration:underline; }
.bp-cart-panel .woocommerce-mini-cart__buttons + .bp-cart-page { display:none; }
@media(max-width:1000px) and (min-width:701px){.bp-store .bp-products { grid-template-columns:repeat(3,minmax(0,1fr)); }}
@media(max-width:700px){
    body.bp-native-top { --bp-header:58px; --bp-gutter:14px; }
    .bp-topbar { top:0; }
    .admin-bar .bp-topbar { top:var(--wp-admin--admin-bar--height,0px); }
    .bp-brand img { width:clamp(142px,39vw,190px); }
    .bp-top-actions { gap:9px; }
    .bp-cart-link { gap:5px; font-size:10px; }
    .bp-cart-link svg { width:15px; }
    .bp-menu-button { background:none; border:0; display:none; width:44px; height:44px; align-items:center; justify-content:center; padding:0; }
    .bp-ready .bp-menu-button { display:flex; }
    .bp-menu-button span,.bp-menu-button span::before,.bp-menu-button span::after { display:block; width:22px; height:1px; background:#171717; position:relative; }
    .bp-menu-button span::before,.bp-menu-button span::after { content:""; position:absolute; top:-6px; }
    .bp-menu-button span::after { top:6px; }
    .bp-layout { display:flex; flex-direction:column; gap:20px; padding-top:14px; padding-bottom:44px; }
    .bp-catalog,.bp-sidebar { width:100%; }
    .bp-sidebar { position:static; max-height:none; overflow:visible; }
    .bp-ready .bp-sidebar { position:fixed; top:0; right:0; bottom:0; z-index:999999; max-height:100dvh; overflow:auto; overscroll-behavior:contain; background:#151515; color:white; padding:22px max(24px,6vw) max(32px,env(safe-area-inset-bottom)); visibility:hidden; transform:translateX(100%); transition:transform .22s ease,visibility .22s; }
    .bp-ready .bp-sidebar.is-open { visibility:visible; transform:none; }
    .bp-ready .bp-close { display:inline-grid; place-items:center; position:absolute; right:14px; top:10px; }
    .bp-sidebar .bp-nav-title { margin:0 0 15px; color:inherit; }
    .bp-ready .bp-sidebar .bp-nav-title { color:#bababa; }
    .bp-filters a { font-size:16px; padding-block:5px; }
    .bp-site-links a { padding-block:6px; font-size:13px; }
    .bp-sidebar .bp-social,.bp-sidebar .bp-site-links { border-color:#777; }
    .bp-social a { padding-block:8px; }
    .bp-store .bp-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 10px; }
    .bp-store .bp-product h2 { margin-top:7px; }
    .bp-price { font-size:11px; }
    .bp-tag,.bp-stock { left:6px; font-size:9px; }
    .bp-tag { top:6px; } .bp-stock { bottom:6px; }
    .bp-footer .bp-shell { flex-direction:column; align-items:flex-start; }
}
@media(max-width:600px){body.bp-native-top.admin-bar #wpadminbar { position:fixed; }}
@media(prefers-reduced-motion:reduce){.bp-store *, .bp-store *::before, .bp-store *::after { transition:none!important; scroll-behavior:auto!important; }}
body.bp-nav-open { overflow:hidden; }

.bp-store .bp-menu-button,.bp-store .bp-menu-button:hover,.bp-store .bp-menu-button:focus,.bp-store .bp-menu-button:active { background:transparent; color:#151515; box-shadow:none; }
.bp-product .bp-release .bp-loop-coming-soon { flex-direction:row!important; justify-content:flex-start!important; align-items:baseline!important; text-align:left!important; gap:3px 6px!important; }
.bp-product .bp-release .bp-loop-coming-soon span { text-align:left!important; }
.bp-cart-panel .mini_cart_item .variation p { display:inline; margin:0; }
.bp-cart-panel .woocommerce-mini-cart__empty-message { padding:20px 0; }

/* Shared interior layout */
.bp-native-top.bp-inside .bp-inner { width:100%; min-width:0; }
.bp-inside .bp-page-title,.bp-inside .bp-purchase h1 { font:700 clamp(24px,3vw,44px)/1.14 "Helvetica Neue",Arial,sans-serif; letter-spacing:-.035em; margin:0 0 24px; color:#131313; text-wrap:balance; }
.bp-prose { min-width:0; max-width:100%; font-size:15px; line-height:1.75; }
.bp-prose h2,.bp-prose h3 { font-family:inherit; line-height:1.35; color:inherit; margin:1.5em 0 .65em; }
.bp-prose h2 { font-size:clamp(19px,2vw,27px); }
.bp-prose h3 { font-size:18px; }
.bp-prose p { margin:0 0 1em; }
.bp-prose a:not(.button):not([class]) { text-decoration:underline; text-underline-offset:3px; }
.bp-prose :is(input,select,textarea) { max-width:100%; }
.bp-prose img,.bp-inner iframe { max-width:100%; }
.bp-inside .bp-inner .woocommerce a.button,.bp-inside .bp-inner .woocommerce button.button,.bp-inside .bp-inner a.checkout-button,.bp-inside .bp-inner #place_order,.bp-inside .bp-inner .single_add_to_cart_button { background:#171717; color:white; border:1px solid #171717; border-radius:0; }
.bp-inside .bp-inner a.button:hover,.bp-inside .bp-inner button.button:hover { background:#333; color:white; }
.bp-purchase-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:start; gap:clamp(20px,3vw,50px); }
.bp-inside .bp-single-product .bp-purchase { width:auto!important; float:none!important; margin:0!important; }
.bp-purchase h1.product_title { font-size:clamp(23px,2.45vw,38px); }
.bp-inside .bp-purchase .price { margin:0 0 18px; font:600 18px/1.4 Arial,sans-serif; color:#191919; }
.bp-purchase .woocommerce-product-details__short-description { font-size:14px; line-height:1.65; margin:18px 0; }
.bp-inside .bp-purchase table.variations { width:100%; }
.bp-inside .bp-purchase .single_add_to_cart_button { min-height:44px; }
.bp-inner .bp-product-gallery { min-width:0; }
.bp-media-grid,.bp-bike-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.bp-media-grid>a,.bp-bike-grid>a { display:block; min-width:0; }
.bp-media-grid img,.bp-bike-grid img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.bp-bike-grid h2,.bp-prose .bp-bike-grid h2 { font:600 14px/1.35 Arial,sans-serif; margin:9px 0 15px; color:inherit; }
.bp-photo-dialog { border:0; border-radius:0; padding:0; background:rgba(12,12,12,.98); color:white; position:fixed; inset:0; margin:auto; width:100%; height:100%; max-height:none; max-width:none; }
.bp-photo-dialog::backdrop { background:#111; }
.bp-photo-dialog img { width:100%; height:100%; display:block; object-fit:contain; }
.bp-photo-dialog button { position:absolute; border:0; background:rgba(0,0,0,.58); color:white; width:46px; height:46px; padding:0; z-index:1; font:32px/1 Arial,sans-serif; }
.bp-light-close { right:12px; top:12px; }.bp-light-prev { top:50%;left:8px; }.bp-light-next { top:50%;right:8px; }
.bp-editorial-media { margin:20px 0; }.bp-editorial-media img { height:auto; }
.bp-movie { margin:22px 0; max-width:850px; aspect-ratio:16/9; }.bp-movie iframe { border:0;width:100%;height:100%; }
.bp-inner .bp-product-details { margin-top:25px; }
.bp-inner .woocommerce form,.bp-inner .wp-block-woocommerce-cart,.bp-inner .wp-block-woocommerce-checkout { max-width:100%; }
.bp-inner .woocommerce-MyAccount-navigation,.bp-inner .woocommerce-MyAccount-content { margin-bottom:20px; }
.bp-crew-form form { max-width:700px; }.bp-crew-form label { font-weight:600; }
@media(max-width:900px){.bp-purchase-layout { grid-template-columns:1fr 1fr; gap:15px; }.bp-media-grid,.bp-bike-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:700px){.bp-purchase-layout { grid-template-columns:1fr; gap:17px; }.bp-media-grid,.bp-bike-grid { gap:10px; }.bp-prose { font-size:14px; }.bp-inside .bp-page-title { margin-bottom:17px; }.bp-purchase h1.product_title { margin-bottom:10px; }.bp-inside table { max-width:100%; }}


.bp-inside .bp-product-gallery .bp-media-grid { display:flex; flex-direction:column; width:100%; max-width:680px; margin-inline:auto; gap:18px; }
.bp-inside .bp-product-gallery .bp-media-grid > a { display:block; width:100%; aspect-ratio:4/5; overflow:hidden; background:#fff; cursor:zoom-in; }
.bp-inside .bp-product-gallery .bp-media-grid img { display:block; width:100%; height:100%; aspect-ratio:4/5; object-fit:contain; box-shadow:none; }
.bp-jump-buy { display:none; }
#bp-product-info { scroll-margin-top:calc(var(--bp-header) + var(--wp-admin--admin-bar--height,0px) + 14px); }
@media(min-width:701px) and (min-height:650px) {
    .bp-purchase-layout .bp-purchase { position:sticky; top:calc(var(--bp-header) + var(--wp-admin--admin-bar--height,0px) + 16px); }
}
@media(max-width:700px) {
    .bp-inside .bp-product-gallery .bp-media-grid { gap:10px; }
    .bp-inside .bp-jump-buy { display:block; width:fit-content; margin:0 0 9px auto; padding:5px 2px; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
}

/* Keep release information readable in the two-column mobile catalog. */
@media (max-width: 700px) {
    .bp-store .bp-product:has(.bp-release) h2 {
        min-height: 2.76em;
    }
    .bp-product .bp-release .bp-loop-coming-soon {
        display: grid !important;
        justify-items: start;
        gap: 5px !important;
        margin: 6px 0 0;
    }
    .bp-product .bp-release .bp-loop-coming-soon__label,
    #bp-product-info .bp-coming-soon-box .bp-coming-soon-title {
        display: block !important;
        width: fit-content !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 4px 7px !important;
        margin: 0 !important;
        border: 0;
        border-radius: 0;
        background: #171717 !important;
        color: #fff !important;
        font: 700 max(12px, .75rem)/1.2 Arial, sans-serif !important;
        letter-spacing: .065em !important;
    }
    .bp-product .bp-release .bp-loop-coming-soon__date {
        width: auto !important;
        margin: 0;
        color: #222 !important;
        font: 600 max(14px, .875rem)/1.4 Arial, sans-serif !important;
        letter-spacing: .01em !important;
        font-variant-numeric: tabular-nums;
    }

    #bp-product-info .bp-coming-soon-box {
        display: grid;
        grid-template-areas: "status" "date" "timer";
        gap: 9px;
        margin: 24px 0 0;
        padding: 16px 0;
        border-block: 1px solid #cfcfcd;
        text-align: left;
    }
    #bp-product-info .bp-coming-soon-title {
        grid-area: status;
    }
    #bp-product-info .bp-coming-soon-date {
        grid-area: date;
        margin: 0 !important;
        color: #171717;
        font-size: max(16px, 1rem) !important;
        font-weight: 600;
        line-height: 1.5;
        text-align: left !important;
    }
    #bp-product-info .bp-countdown {
        grid-area: timer;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0 !important;
        margin: 6px 0 0 !important;
        padding: 0;
    }
    #bp-product-info .bp-countdown-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center;
        justify-content: center;
        gap: 5px !important;
        width: auto !important;
        min-width: 0;
        padding: 2px 0;
    }
    #bp-product-info .bp-countdown-item + .bp-countdown-item {
        border-inline-start: 1px solid #d6d6d4;
    }
    #bp-product-info .bp-countdown-number {
        color: #151515;
        font: 700 clamp(1.625rem, 7.5vw, 2.125rem)/1 Arial, sans-serif !important;
        font-variant-numeric: tabular-nums !important;
        letter-spacing: -.035em;
    }
    #bp-product-info .bp-countdown-label {
        color: #4a4a4a !important;
        font: 600 max(11px, .75rem)/1.3 Arial, sans-serif !important;
        letter-spacing: .04em;
        text-transform: uppercase;
    }
}
