:root{--bg:#090a0c;--panel:#121419;--panel2:#191c22;--line:#292d35;--text:#f5f6f8;--muted:#a9afb9;--accent:#c63d00;--accent2:#ff8a43;--ok:#60d394;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.wrap{width:min(calc(100% - 32px),var(--max));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(9,10,12,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-weight:900;letter-spacing:.08em;font-size:1.15rem}.brand span{color:var(--accent2)}nav{display:flex;gap:22px;color:#d5d8dd;font-size:.92rem}
.hero{min-height:620px;display:grid;align-items:center;background:linear-gradient(90deg,rgba(5,6,8,.96) 0%,rgba(5,6,8,.76) 45%,rgba(5,6,8,.15) 100%),url("https://cdn.shopify.com/s/files/1/0548/1918/8865/files/BT_Moto_BMW_M1000RR.jpg?v=1657285450") center/cover}.eyebrow{color:var(--accent2);font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1{max-width:760px;font-size:clamp(2.5rem,6vw,5.8rem);line-height:1.03;margin:.25em 0}.hero p{max-width:620px;color:#d5d8dd;font-size:1.08rem}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:#fff;font-weight:800;cursor:pointer}.btn-primary{border-color:var(--accent);background:var(--accent)}.btn:hover{filter:brightness(1.1)}
section{padding:82px 0}.section-dark{background:#0d0f12}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-head h2,.content h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.15;margin:0}.muted,.price-note{color:var(--muted)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:26px}.filters input,.filters select,.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--text);padding:13px 14px}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product-card{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:.2s}.product-card:hover{transform:translateY(-4px);border-color:#4b505b}.product-card img{aspect-ratio:4/3;object-fit:cover;background:#fff}.product-body{padding:20px;display:flex;flex:1;flex-direction:column}.product-meta{color:var(--accent2);font-size:.78rem;font-weight:800;letter-spacing:.08em}.product-body h3{font-size:1.08rem;line-height:1.45;margin:7px 0 16px}.product-bottom{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:10px}.bt-price{font-size:1.2rem;font-weight:900}.price-loading{color:var(--muted);font-size:.9rem}.empty{display:none;padding:28px;border:1px dashed var(--line);color:var(--muted);text-align:center}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{padding:26px;background:var(--panel);border:1px solid var(--line)}.feature strong{display:block;font-size:1.15rem;margin-bottom:8px}.step{color:var(--accent2);font-size:2rem;font-weight:900}.notice{padding:18px 20px;border-left:4px solid var(--accent);background:#17130f;color:#ddd}
.product-detail{display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:start}.product-detail .visual{background:#fff}.product-detail h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.15;margin:.2em 0}.price-panel{margin:24px 0;padding:22px;background:var(--panel);border:1px solid var(--line)}.price-panel .bt-price{font-size:2rem}.paypal-slot{margin-top:12px}.status{padding:12px;margin-top:12px;background:var(--panel2);color:var(--muted)}.status.error{color:#ff9a9a}.status.success{color:var(--ok)}
.content{width:min(calc(100% - 32px),860px);margin:auto;padding:72px 0}.content h2{margin-top:2em;border-bottom:1px solid var(--line);padding-bottom:.35em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{margin-bottom:16px}.form-field label{display:block;font-weight:750;margin-bottom:5px}.form-field.full{grid-column:1/-1}.form-help{font-size:.84rem;color:var(--muted)}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.alert{padding:14px 16px;margin:16px 0;border:1px solid #794031;background:#251612}.alert.ok{border-color:#2f7550;background:#10251b}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--line)}.table th{width:30%;color:#cdd1d7}
.site-footer{border-top:1px solid var(--line);background:#07080a;padding:44px 0;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:26px}.footer-grid strong{color:#fff}.footer-links{display:grid;gap:7px}.copyright{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);font-size:.8rem}
@media(max-width:850px){nav{display:none}.hero{min-height:540px;background-position:60% center}.product-grid,.feature-grid{grid-template-columns:repeat(2,1fr)}.product-detail{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
@media(max-width:560px){section{padding:56px 0}.product-grid,.feature-grid,.footer-grid{grid-template-columns:1fr}.hero h1{font-size:2.75rem}.section-head{align-items:start;flex-direction:column}.product-bottom{align-items:start;flex-direction:column}}

/* Existing PHP template compatibility */
.topbar{padding:7px 4vw;text-align:center;background:var(--accent);font-size:.78rem;font-weight:800}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(4vw,20px);min-height:72px;background:rgba(9,10,12,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.logo{display:flex;align-items:baseline;gap:6px;letter-spacing:.1em}.logo span{color:var(--accent2);font-size:.72rem}.header nav{display:flex}.header-button{padding:9px 14px;border:1px solid var(--accent);font-size:.84rem;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:#fff;font-weight:800;cursor:pointer}.button.primary{background:var(--accent);border-color:var(--accent)}
.hero{position:relative;grid-template-columns:1.15fr .85fr;padding:80px max(5vw,24px);overflow:hidden}.hero-copy{position:relative;z-index:2}.hero h1 em{color:var(--accent2);font-style:normal}.hero-image{align-self:end}.hero-image img{max-height:500px;margin:auto;object-fit:contain}.metrics{display:flex;gap:34px;margin:42px 0 0}.metrics div{border-left:2px solid var(--accent);padding-left:12px}.metrics dt{font-size:1.2rem;font-weight:900}.metrics dd{margin:0;color:var(--muted);font-size:.68rem}.trust{display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(5vw,24px);background:#fff;color:#111}.trust>div{display:flex;align-items:center;gap:14px;padding:23px;border-right:1px solid #ddd}.trust b{color:var(--accent);font-size:1.25rem}.trust p,.trust small{display:block;margin:0}.section{padding:82px max(5vw,24px)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2,.about h2{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1.15}.section-heading>p{max-width:480px;color:#5c626c}.products{background:#f5f5f3;color:#111}.eyebrow.dark{color:#b43a0d}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 24px}.category-tabs button{border:1px solid #ccc;background:#fff;padding:8px 15px;cursor:pointer}.category-tabs button.active{background:#111;color:#fff;border-color:#111}.products .product-card{background:#fff;border-color:#ddd}.product-image{position:relative}.badge{position:absolute;top:12px;left:12px;padding:5px 8px;background:#fff;color:#111;font-size:.7rem;font-weight:800}.badge.race{background:#111;color:#fff}.product-body>small{color:#a7421a;font-weight:800}.product-body p{color:#62666c;font-size:.9rem}.price-row{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#111;color:#fff}.catalog-note{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:25px;background:#17191d;color:#fff}.catalog-note p{margin:3px 0;color:#b8bdc6}.about{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);gap:60px;align-items:center;justify-content:center;padding:90px max(5vw,24px)}.about-image{display:grid;place-items:center}.about-image img{width:min(100%,260px);max-height:260px;object-fit:contain}.about ul{list-style:none;padding:0}.about li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.about li>b{color:var(--accent2)}.about li span,.about li small{display:block}.flow{background:#fff;color:#111}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ddd}.flow-grid article{background:#f6f6f4;padding:26px}.flow-grid b{font-size:2rem;color:var(--accent)}.caution{margin-top:26px;padding:20px;border-left:4px solid var(--accent);background:#fff5ef}
.product-page{padding:40px max(5vw,24px) 80px}.breadcrumbs{display:flex;gap:8px;color:var(--muted);font-size:.83rem;margin-bottom:32px}.main-image{position:relative;background:#fff}.main-image img{width:100%}.official-link{display:block;margin-top:12px;color:var(--accent2)}.detail-copy .lead{color:#c5c9d0}.detail-copy dl>div{display:flex;border-bottom:1px solid var(--line);padding:10px 0}.detail-copy dt{width:35%;color:var(--muted)}.detail-copy dd{margin:0}.purchase{margin-top:22px;padding:22px;background:var(--panel);border:1px solid var(--line)}.purchase>strong{display:block;font-size:2rem}.bank-link{display:block;text-align:center;margin-top:12px;text-decoration:underline}.product-notice{margin-top:50px;padding:25px;background:#17130f;border-left:4px solid var(--accent)}.document{width:min(calc(100% - 32px),860px);margin:auto;padding:72px 0}.footer{padding:50px max(5vw,24px);border-top:1px solid var(--line);color:var(--muted)}.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr}.footer-grid h2{color:#fff;font-size:.78rem;letter-spacing:.1em}.footer-grid a{display:block;margin:7px 0}.footer-grid p{margin-top:7px}.copyright{margin-top:35px}
@media(max-width:850px){.header nav{display:none}.hero{grid-template-columns:1fr}.hero-image{display:none}.trust{grid-template-columns:1fr}.product-grid,.flow-grid{grid-template-columns:repeat(2,1fr)}.about{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:start;flex-direction:column}}
@media(max-width:560px){.product-grid,.flow-grid,.footer-grid{grid-template-columns:1fr}.metrics{gap:15px;flex-wrap:wrap}.catalog-note{align-items:start;flex-direction:column}.trust>div{border-bottom:1px solid #ddd}}

/* Dealer, vehicle filter and Japanese address form */
.vehicle-filters{grid-template-columns:1.7fr repeat(3,1fr)}
.filter-field{display:grid;gap:5px}.filter-field>span{font-size:.78rem;font-weight:800;color:#4f5660}.filter-guide{margin:-16px 0 22px;color:#62666c;font-size:.84rem}
.filters select:disabled,.form-field select:disabled{opacity:.55;cursor:not-allowed}
.postal-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.postal-row .button{min-height:auto;padding:0 14px;white-space:nowrap}
.dealer-contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}
.dealer-contact-grid article{padding:20px;background:var(--panel);border:1px solid var(--line)}
.dealer-contact-grid small,.dealer-contact-grid strong{display:block}
.dealer-contact-grid small{color:var(--accent2);font-weight:800}
.dealer-contact-grid strong{margin-top:8px;font-size:1.08rem}
.dealer-network{margin:34px 0;padding:26px;background:var(--panel);border-left:4px solid var(--accent)}
.dealer-network h2{margin-top:0}
.dealer-network .actions{margin-top:18px}
@media(max-width:850px){.vehicle-filters{grid-template-columns:1fr 1fr}.dealer-contact-grid{grid-template-columns:1fr}}
@media(max-width:560px){.vehicle-filters,.postal-row{grid-template-columns:1fr}}

/* Full official catalogue */
[hidden]{display:none!important}
.compact-trust{grid-template-columns:repeat(2,1fr)}
.compact-trust>div:last-child{border-right:0}
.products .section-heading h1{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1.15}
.catalog-status{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-8px 0 24px;padding:14px 16px;border-left:4px solid var(--accent);background:#fff;color:#333}
.catalog-status span{color:#62666c;font-size:.9rem}
.product-card .product-image img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}
.product-sku{margin:0 0 12px!important;color:#777!important;font-size:.76rem!important;overflow-wrap:anywhere}
.badge.prerequisite{background:#2a1a12;color:#fff}
.badge.inquiry{background:#ece7e2;color:#111}
.inquiry-price{font-size:.92rem}
.result-count{margin:0 0 15px;color:#555;font-weight:750}
.more-button{display:flex;margin:30px auto 0;background:#111;border-color:#111}
.fitment-summary,.fitment-list{margin:48px 0 0;padding:24px;background:var(--panel);border:1px solid var(--line)}
.fitment-summary h2{margin-top:0}
.fitment-list>summary{cursor:pointer;font-size:1.25rem;font-weight:900}
.fitment-list section{margin-top:22px;padding:0}
.fitment-list h3{margin:0 0 8px;color:var(--accent2)}
.fitment-list ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:1px;list-style:none;background:var(--line)}
.fitment-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;background:var(--panel)}
.fitment-list li strong{flex:none;color:#fff;font-size:.82rem}
.purchase-confirm{display:flex;align-items:flex-start;gap:9px;margin:16px 0;padding:12px;background:#24170f;border:1px solid #63351f;font-size:.88rem}
.purchase-confirm input{width:auto;margin-top:.32em}
.stage2-prerequisite{margin:18px 0;padding:16px;background:#181a1f;border:1px solid var(--line)}.stage2-prerequisite h3{margin:0 0 8px}.stage2-prerequisite>p{color:#c5c9d0;font-size:.88rem}.stage2-prerequisite fieldset{display:grid;gap:8px;margin:14px 0;padding:12px;border:1px solid #3c414c}.stage2-prerequisite legend{padding:0 6px;font-weight:800}.stage2-prerequisite fieldset label{display:flex;align-items:flex-start;gap:8px}.stage2-prerequisite input[type=radio]{flex:none;width:auto;margin-top:.38em}.stage2-installed-details label{display:grid;gap:5px;font-size:.86rem;font-weight:800}.stage2-installed-details textarea{width:100%;padding:10px;background:var(--panel2);color:#fff;border:1px solid var(--line)}.stage2-addon-inquiry{padding:12px;background:#251d17;border-left:3px solid var(--accent)}.stage2-addon-inquiry p{margin-top:0}.stage2-addon-inquiry .button{width:100%}.stage2-year-note{padding:10px;background:#2a1a12;color:#ffd2b2!important}
.checkout-configuration{display:grid;gap:12px;margin:18px 0;padding:16px;background:#181a1f;border:1px solid var(--line)}
.checkout-configuration h3{margin:8px 0 0;font-size:1rem}.checkout-configuration h3:first-child{margin-top:0}
.checkout-help,.checkout-note{margin:0;padding:10px;background:#20232a;color:#c9cdd4;font-size:.82rem;line-height:1.65}
.checkout-option-field,.checkout-input{display:grid;gap:6px;font-size:.85rem;font-weight:800}
.checkout-option-field select,.checkout-input input{width:100%;padding:10px;background:var(--panel2);color:#fff;border:1px solid #4c5260}
.checkout-option-field.optional-addon{padding-left:10px;border-left:3px solid var(--accent)}
.included-components{display:grid;gap:8px;margin:18px 0;padding:14px;background:#17221b;border:1px solid #365f43}.included-components h3{margin:0;font-size:1rem}.included-components ul{margin:0;padding-left:1.25em}.included-components p{margin:0;color:#d8e9dc;font-size:.84rem;line-height:1.65}.addon-conflict-help{border-left:3px solid #f3a35c}
.checkout-confirmation{display:flex;align-items:flex-start;gap:9px;padding:11px;background:#24170f;border:1px solid #63351f;font-size:.84rem;line-height:1.55}
.checkout-confirmation input{flex:none;width:auto;margin-top:.3em}
.checkout-condition{display:grid;gap:8px;margin:0;padding:12px;border:1px solid #3c414c}.checkout-condition legend{padding:0 6px;font-size:.83rem;font-weight:800;line-height:1.45}.checkout-condition label{display:flex;align-items:flex-start;gap:8px;font-size:.83rem}.checkout-condition input{flex:none;width:auto;margin-top:.3em}
.checkout-inquiry-branch{padding:12px;background:#2b1d15;border-left:3px solid var(--accent)}.checkout-inquiry-branch p{margin-top:0}.checkout-inquiry-branch .button{width:100%}
.configured-price-note{margin:4px 0 0!important;color:var(--accent2)!important;font-size:.75rem!important}
.inquiry-purchase>strong{font-size:1.45rem}
.official-link{overflow-wrap:anywhere}
@media(max-width:850px){
  .compact-trust{grid-template-columns:1fr 1fr}
  .catalog-status{align-items:flex-start;flex-direction:column;gap:2px}
  .fitment-list ul{grid-template-columns:1fr}
}
@media(max-width:560px){
  .header{gap:10px;padding:0 12px}
  .logo{align-items:flex-start;flex-direction:column;gap:0;line-height:1.2}
  .logo strong{font-size:.9rem}
  .logo span{font-size:.55rem}
  .header-button{padding:7px 9px;white-space:nowrap;font-size:.72rem}
  .compact-trust{grid-template-columns:1fr}
  .compact-trust>div{border-right:0}
  .fitment-list{padding:18px}
  .fitment-list li{align-items:flex-start;flex-direction:column;gap:3px}
}

/* Multi-item cart */
.header-cart{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.header-cart [data-cart-count]{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--accent);color:#fff;font-size:.75rem}
.cart-add-box{margin-top:16px}
.cart-add-box .button{width:100%}
.cart-add-status a{text-decoration:underline}
.price-inquiry-fallback{display:inline-block;margin-top:10px;color:var(--accent2);font-weight:800;text-decoration:underline}
.purchase .price-inquiry-fallback{width:100%;color:#fff;text-align:center;text-decoration:none}
.cart-page{width:min(calc(100% - 32px),var(--max))}
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start;margin-top:30px}
.cart-items{display:grid;gap:12px}
.cart-line{display:grid;grid-template-columns:120px minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:16px;background:var(--panel);border:1px solid var(--line)}
.cart-line-image{display:block;background:#fff}
.cart-line-image img{width:120px;aspect-ratio:4/3;object-fit:contain}
.cart-line-copy{display:grid;gap:3px;min-width:0}
.cart-line-copy small{color:var(--accent2);font-weight:800}
.cart-line-copy>a{font-weight:800;line-height:1.4}
.cart-line-copy span{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.cart-line-copy .cart-line-selection{color:#e2e5ea}
.cart-line-warning{color:#ffbc8d;font-size:.78rem}
.cart-price-inquiry{margin-top:5px;color:var(--accent2);font-size:.78rem;text-decoration:underline}
.cart-line-controls{display:grid;gap:8px}
.cart-line-controls label{font-size:.85rem;color:var(--muted)}
.cart-line-controls select{margin-left:5px;padding:6px 10px;background:var(--panel2);color:#fff;border:1px solid var(--line)}
.cart-remove{padding:5px 8px;border:0;background:transparent;color:#ffadad;text-decoration:underline;cursor:pointer}
.cart-line-price{white-space:nowrap}
.cart-summary{position:sticky;top:96px;padding:22px;background:var(--panel);border:1px solid var(--line)}
.cart-total{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.cart-total span{color:var(--muted);font-size:.82rem}
.cart-total strong{font-size:1.45rem;white-space:nowrap}
.cart-summary>.button{width:100%}
.cart-empty{padding:32px;background:var(--panel);border:1px solid var(--line);text-align:center}
@media(max-width:900px){
  .cart-layout{grid-template-columns:1fr}
  .cart-summary{position:static}
}
@media(max-width:680px){
  .cart-line{grid-template-columns:84px minmax(0,1fr)}
  .cart-line-image img{width:84px}
  .cart-line-controls{grid-column:1/2}
  .cart-line-price{grid-column:2/3;text-align:right}
}
