body.shop #raijin-shop-panel,
body.shop #raijin-faq-panel { display: none; }
/* The default HOME is intentionally just the completed HERO and its future mascots. */
body.shop #raijin-product-region { display: none; }
body.shop.raijin-view-shop #raijin-hero,
body.shop.raijin-view-faq #raijin-hero { display: none; }
body.shop.raijin-view-shop #raijin-shop-panel,
body.shop.raijin-view-shop #raijin-product-region { display: block; }
body.shop.raijin-view-faq #raijin-faq-panel { display: block; }
body.shop.raijin-view-shop .pinnedBlog,
body.shop.raijin-view-faq .pinnedBlog { display: none; }
body.shop .raijin-view-title {
max-width: 1120px; margin: 0 auto; padding: 56px 24px 24px;
box-sizing: border-box; text-align: center; color: #222;
}
body.shop .raijin-view-title h2 {
margin: 0 0 15px; font-size: clamp(24px, 3vw, 36px);
font-weight: normal; letter-spacing: .12em; line-height: 1.3;
}
body.shop .raijin-view-title p {
margin: 0 auto; max-width: 640px; line-height: 1.9;
font-size: 13px; color: #666;
}
body.shop #raijin-faq-panel .raijin-view-title { padding-bottom: 100px; }
body.shop #raijin-faq-panel a { color: inherit; text-decoration: underline; }
@media (max-width: 768px) {
body.shop .raijin-view-title { padding: 38px 20px 20px; }
body.shop #raijin-faq-panel .raijin-view-title { padding-bottom: 72px; }
body.shop #shopHeader .raijin-header-bar nav ul { column-gap: clamp(8px, 3vw, 18px); }
}

body.shop.raijin-view-shop #raijin-product-region { display: none !important; } /* Used only as BASE item metadata source. */
body.shop #raijin-shop-panel { width: 100%; margin: 0 auto; padding-bottom: 46px; }
body.shop #raijin-shop-panel .raijin-view-title { padding: 34px 18px 12px; }
body.shop #raijin-shop-panel .raijin-view-title h2 { font-weight: 600; font-size: 30px; letter-spacing: .16em; margin: 0; }
body.shop .raijin-shop-inner { max-width: 1160px; margin: 0 auto; padding: 0 18px; box-sizing: border-box; }
body.shop .raijin-shop-cut { max-width: 990px; margin: 8px auto 30px; }
body.shop .raijin-shop-cut img { display: block; width: 100%; height: auto; object-fit: contain; }
body.shop .raijin-shop-cut--end { margin: 44px auto 8px; }
body.shop .raijin-shop-catalog-heading { border-top: 1px solid #e4e4e4; padding: 30px 0 18px; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 16px; }
body.shop .raijin-shop-catalog-heading h3 { margin: 0; font-size: clamp(22px, 3vw, 30px); font-weight: 600; color: #171717; letter-spacing: .09em; }
body.shop .raijin-shop-catalog-heading p { margin: 0; font-size: 12px; line-height: 1.7; color: #747474; }
body.shop .raijin-slab-list { display: grid; grid-template-columns: 1fr; gap: 13px; }
body.shop .raijin-slab-card { display: grid; grid-template-columns: minmax(300px, 42%) minmax(0, 1fr); align-items: center; column-gap: clamp(14px, 2.6vw, 32px); padding: clamp(13px, 2vw, 22px); border: 1px solid #e5e3df; border-radius: 6px; background: #fff; box-sizing: border-box; }
body.shop .raijin-slab-media { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; min-width: 0; }
body.shop .raijin-slab-photo { font: inherit; min-width: 0; appearance: none; -webkit-appearance: none; background: none; border: none; margin: 0; padding: 0; text-align: left; cursor: zoom-in; color: #4d4d4d; }
body.shop .raijin-slab-photo img { display:block; width: 100%; height: clamp(152px, 18vw, 220px); object-fit: contain; background: #f4f2ef; border: 1px solid #e9e7e2; box-sizing: border-box; }
body.shop .raijin-slab-photo span { display: block; padding-top: 7px; font-size: 11px; line-height: 1.5; text-align: center; }
body.shop .raijin-slab-photo span small { color: #777; font-size: 10px; }
body.shop .raijin-slab-photo:focus-visible img { outline: 3px solid #0067ba; outline-offset: 2px; }
body.shop .raijin-slab-number { margin: 0 0 5px; color: #777; font-size: 12px; letter-spacing: .11em; }
body.shop .raijin-slab-info h4 { font-size: clamp(18px, 2.3vw, 24px); margin: 0 0 9px; line-height: 1.4; font-weight: 600; letter-spacing: .06em; color: #222; }
body.shop .raijin-slab-spec { color: #555; font-size: 13px; line-height: 1.7; margin: 0 0 8px; }
body.shop .raijin-slab-price { color: #222; font-size: 17px; font-weight: 600; line-height: 1.45; margin: 0; }
body.shop .raijin-slab-tax { display: block; font-size: 11px; color: #777; line-height: 1.6; margin: 1px 0 14px; }
body.shop .raijin-slab-detail { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; min-width: 170px; gap: 0 11px; border-radius: 3px; border: 1px solid #222; padding: 11px 15px; text-align: center; color: white; background: #222; font-size: 13px; font-weight: 600; text-decoration: none; box-sizing: border-box; }
body.shop .raijin-slab-detail b { font-weight: 400; }
body.shop .raijin-slab-detail:hover:not(.is-pending) { color: #fff; background: #555; }
body.shop .raijin-slab-detail.is-pending { background: #f6f6f6; color: #555; border-color: #bbb; cursor: default; }
body.shop .raijin-slab-detail small { flex-basis: 100%; font-size: 10px; font-weight: normal; color: #777; margin-top: 2px; }
body.shop .raijin-shop-footnote { margin: 18px 0 0; font-size: 12px; line-height: 1.8; color: #666; }
body.shop .raijin-shop-lightbox[hidden] { display: none !important; }
body.shop .raijin-shop-lightbox { position: fixed; inset: 0; z-index: 99999; padding: 54px 20px 20px; box-sizing: border-box; background: rgba(0,0,0,.86); display: flex; flex-direction: column; align-items: center; justify-content: center; }
body.shop .raijin-shop-lightbox img { max-width: min(90vw, 1000px); max-height: calc(100vh - 120px); height: auto; width: auto; object-fit: contain; }
body.shop .raijin-shop-lightbox p { margin-top: 9px; color: white; font-size: 13px; line-height: 1.6; }
body.shop .raijin-shop-lightbox-close { position: absolute; right: 22px; top: 12px; appearance: none; border: none; background: transparent; color: white; font-size: 34px; cursor: pointer; line-height: 1; }
@media (max-width: 740px) {
body.shop .raijin-shop-inner { padding: 0 12px; }
body.shop .raijin-shop-cut { margin-bottom: 20px; }
body.shop .raijin-shop-catalog-heading { padding-top: 22px; }
body.shop .raijin-slab-card { grid-template-columns: 1fr; row-gap: 13px; padding: 14px; }
body.shop .raijin-slab-media { gap: 8px; }
body.shop .raijin-slab-photo img { height: clamp(150px, 54vw, 250px); }
body.shop .raijin-slab-info { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; column-gap: 8px; }
body.shop .raijin-slab-number, body.shop .raijin-slab-info h4, body.shop .raijin-slab-spec, body.shop .raijin-slab-price, body.shop .raijin-slab-tax { grid-column: 1 / -1; }
body.shop .raijin-slab-tax { margin-bottom: 11px; }
body.shop .raijin-slab-detail { grid-column: 1 / -1; justify-self: stretch; }
body.shop .raijin-shop-cut--end { margin-top: 24px; }
}

/* Raijin v33: dedicated in-theme detail views for slabs 01–10. */ body.shop #raijin-slab-detail-panel{display: none;}body.shop.raijin-view-detail #raijin-slab-detail-panel{display: block;}body.shop.raijin-view-detail #raijin-hero, body.shop.raijin-view-detail #raijin-shop-panel, body.shop.raijin-view-detail #raijin-faq-panel, body.shop.raijin-view-detail #raijin-product-region, body.shop.raijin-view-detail .pinnedBlog{display: none !important;}body.shop .raijin-detail-wrap{max-width: 1160px;margin: 0 auto;padding: 34px 18px 72px;color: #222;box-sizing: border-box;}body.shop .raijin-detail-back{color: #444;font-size: 13px;text-decoration: none;display: inline-flex;padding: 9px 0;}body.shop .raijin-detail-back:hover{text-decoration: underline;}body.shop .raijin-detail-heading{margin: 14px 0 26px;padding-bottom: 17px;border-bottom: 1px solid #ddd;}body.shop .raijin-detail-heading .raijin-detail-eyebrow{margin: 0 0 6px;font-size: 12px;letter-spacing: .14em;color: #777;}body.shop .raijin-detail-heading h2{margin: 0;font-size: clamp(25px, 3vw, 34px);font-weight: 600;letter-spacing: .06em;line-height: 1.35;}body.shop .raijin-detail-body{display: grid;grid-template-columns: minmax(0, 1.08fr) minmax(290px, 1fr);align-items: start;gap: clamp(22px, 3.2vw, 46px);}body.shop .raijin-detail-media{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 11px;}body.shop .raijin-detail-media .raijin-slab-photo img{height: clamp(230px, 33vw, 470px);}body.shop .raijin-detail-media .raijin-slab-photo span{font-size: 12px;}body.shop .raijin-detail-caution{font-size: 11px;color: #777;line-height: 1.8;margin: 12px 0 0;}body.shop .raijin-detail-overview{border-bottom: 1px solid #e0e0e0;padding: 0 0 16px;margin-bottom: 20px;}body.shop .raijin-detail-overview dl{display: grid;grid-template-columns: 115px 1fr;gap: 9px 12px;margin: 0;align-items: baseline;line-height: 1.7;}body.shop .raijin-detail-overview dt{font-size: 12px;color: #777;}body.shop .raijin-detail-overview dd{margin: 0;font-size: 15px;font-weight: 500;}body.shop .raijin-detail-overview dd.is-price{font-size: 21px;font-weight: 600;}body.shop .raijin-detail-form-title{font-size: 18px;font-weight: 600;margin: 0 0 6px;}body.shop .raijin-detail-help{color: #777;font-size: 12px;line-height: 1.8;margin: 0 0 18px;}body.shop .raijin-detail-field{margin: 0 0 20px;}body.shop .raijin-detail-field > label, body.shop .raijin-detail-field > .raijin-detail-label, body.shop .raijin-detail-field legend{display: block;font-size: 14px;font-weight: 600;margin: 0 0 9px;}body.shop .raijin-detail-field fieldset, body.shop fieldset.raijin-detail-field{border: 0;margin: 0 0 20px;padding: 0;min-width: 0;}body.shop .raijin-detail-field select, body.shop .raijin-detail-field input[type=number], body.shop .raijin-detail-field input[type=text]{width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box;border: 1px solid #c8c8c8;background: #fff;color: #222;padding: 11px 12px;border-radius: 3px;font-size: 15px;font-family: inherit;}body.shop #raijin-detail-legs{height: 45px;}body.shop .raijin-detail-field input:focus-visible, body.shop .raijin-detail-field select:focus-visible{outline: 2px solid #215b84;outline-offset: 1px;}body.shop .raijin-detail-field small{display: block;color: #777;font-size: 11px;line-height: 1.7;margin-top: 5px;}body.shop .raijin-detail-radio{display: flex;flex-wrap: wrap;gap: 8px 18px;}body.shop .raijin-detail-radio label{display: inline-flex;align-items: center;gap: 6px;cursor: pointer;font-size: 13px;}body.shop .raijin-detail-radio input{accent-color: #222;}body.shop .raijin-detail-size{display: grid;grid-template-columns: 1fr 1fr;gap: 11px;}body.shop .raijin-detail-size label{font-size: 12px;display: block;font-weight: 400;}body.shop .raijin-detail-size input{display: block;margin-top: 6px;}body.shop .raijin-detail-summary{margin-top: 22px;padding: 19px;background: #f5f4f2;border: 1px solid #e9e7e4;border-radius: 4px;}body.shop .raijin-detail-summary h3{margin: 0 0 11px;font-size: 16px;font-weight: 600;}body.shop .raijin-detail-summary dl{margin: 0;display: grid;grid-template-columns: 100px minmax(0, 1fr);gap: 7px 10px;font-size: 13px;line-height: 1.7;}body.shop .raijin-detail-summary dt{color: #777;}body.shop .raijin-detail-summary dd{margin: 0;overflow-wrap: anywhere;}body.shop .raijin-detail-cart{width: 100%;display: block;text-align: center;padding: 15px;border: 0;border-radius: 3px;margin-top: 20px;box-sizing: border-box;background: #d4d4d4;color: #666;font-size: 15px;cursor: not-allowed;}body.shop .raijin-detail-pending{margin-top: 10px;font-size: 12px;line-height: 1.8;color: #666;}body.shop .raijin-detail-next{border-top: 1px solid #ddd;margin-top: 34px;padding-top: 22px;display: flex;flex-wrap: wrap;justify-content: space-between;gap: 14px;}body.shop .raijin-detail-next a{font-size: 13px;text-decoration: underline;color: #222;}@media (max-width: 760px){body.shop .raijin-detail-wrap{padding: 18px 12px 44px;}body.shop .raijin-detail-body{grid-template-columns: 1fr;gap: 18px;}body.shop .raijin-detail-media .raijin-slab-photo img{height: clamp(220px, 64vw, 460px);}body.shop .raijin-detail-heading{margin: 9px 0 18px;}}@media (max-width: 370px){body.shop .raijin-detail-media .raijin-slab-photo img{height: 210px;}body.shop .raijin-detail-overview dl{grid-template-columns: 90px 1fr;}}

/* v44: prominent link-blue guide thumbnails; previously opened cuts turn purple. */
body.shop .raijin-cut-heading{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px;margin:0 0 10px;min-height:66px;}
body.shop .raijin-cut-heading>label,body.shop .raijin-cut-heading>.raijin-detail-label,body.shop .raijin-cut-heading>span:first-child{font-size:14px;font-weight:600;line-height:1.5;margin:0;min-width:0;}
body.shop .raijin-cut-links{display:flex;gap:9px;flex:0 0 auto;align-items:start;}
body.shop .raijin-cut-link{display:flex;align-items:center;flex-direction:column;gap:3px;max-width:70px;text-decoration:none;color:#444;font-size:10px;line-height:1.25;text-align:center;font-weight:400;white-space:nowrap;}
body.shop .raijin-cut-link img{display:block;width:58px;height:58px;object-fit:cover;border:3px solid #0000ff;border-radius:8px;box-sizing:border-box;background:#fff;transition:border-color .15s,box-shadow .15s;}
body.shop .raijin-cut-link.is-viewed img{border-color:#800080;}
body.shop .raijin-cut-link:hover img{box-shadow:0 0 0 2px #bbb;}
body.shop .raijin-cut-link:focus-visible img{outline:2px solid #222;outline-offset:3px;}
body.shop .raijin-detail-field legend.raijin-cut-legend{display:table;width:100%;max-width:100%;padding:0;margin:0 0 9px;}
body.shop .raijin-cut-legend .raijin-cut-heading{margin:0;font-weight:400;}
@media(max-width:760px){
body.shop .raijin-cut-heading{gap:8px;min-height:60px;}
body.shop .raijin-cut-links{gap:6px;}
body.shop .raijin-cut-link{max-width:58px;font-size:9px;}
body.shop .raijin-cut-link img{width:52px;height:52px;}
body.shop .raijin-shop-lightbox{padding:48px 9px 16px;}
body.shop .raijin-shop-lightbox img{max-width:96vw;max-height:calc(100dvh - 120px);}
}
