/* Belly band: native content, full photos, page-scoped layout. */
.be-main { --be-ink:#353c2e; --be-muted:#5e6757; --be-green:#405b3b; color:var(--be-ink); background:#fffdf9; line-height:1.9; }
.be-main * { box-sizing:border-box; }
.be-main>section { padding-inline:0; }
.be-main [id] { scroll-margin-top:110px; }
.be-wrap { width:min(1140px,calc(100% - 64px)); margin-inline:auto; }
.be-section { padding-block:72px; }
.be-soft { background:#f1f3e9; }
.be-kicker { color:var(--be-green); font-size:.8rem; font-weight:600; letter-spacing:.08em; }
.be-main h1,.be-main h2,.be-main h3 { font-family:var(--serif); font-weight:500; text-wrap:balance; }
.be-main h1 { font-size:clamp(2.25rem,3.6vw,3.4rem); line-height:1.5; margin:0 0 24px; }
.be-main h2 { font-size:clamp(1.65rem,2.5vw,2.15rem); line-height:1.6; margin:0 0 22px; }
.be-main h3 { font-size:1.22rem; line-height:1.7; margin:0 0 14px; }
.be-main p { margin:0 0 18px; }
.be-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:54px; padding-block:48px 66px; }
.be-lead { font-size:1.06rem; color:var(--be-muted); max-width:31em; }
.be-links { display:flex; flex-wrap:wrap; gap:12px 20px; margin-top:26px; }
.be-main a { color:var(--be-green); text-underline-offset:.22em; }
.be-links a,.be-help,.be-original { min-height:48px; padding-block:10px; display:inline-flex; align-items:center; white-space:normal; font-size:.95rem; }
.be-main .be-primary { background:var(--be-green); color:#fffdf9; padding:12px 22px; text-decoration:none; border-radius:5px; font-weight:600; }
.be-main a:focus-visible,.be-main summary:focus-visible { outline:3px solid #405b3b; outline-offset:5px; }
.be-photo { min-width:0; margin:0; }
.be-photo picture { display:block; }
.be-photo img { display:block; width:100%; height:auto; object-fit:contain; border-radius:3px; }
.be-photo figcaption { color:var(--be-muted); font-size:.8rem; line-height:1.8; margin-top:12px; }
.be-heading { max-width:790px; margin-bottom:34px; }
.be-heading p:not(.be-kicker),.be-detail p:not(.be-kicker) { color:var(--be-muted); }
.be-steps { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; padding:0; }
.be-steps li>span { display:block; color:#728161; font-family:var(--serif); font-size:2rem; border-top:1px solid #cdd4bc; padding-top:12px; margin-bottom:16px; }
.be-steps li>span,body:has(.be-main) :is(.buy-price,.buy-bar-price,.total-amt,.qty-n) { font-family:var(--sans)!important; font-variant-numeric:lining-nums tabular-nums; font-feature-settings:"lnum" 1,"tnum" 1; letter-spacing:0; }
.be-steps p { color:var(--be-muted); font-size:.95rem; }
.be-detail { display:grid; grid-template-columns:1.08fr 1fr; gap:54px; align-items:center; }
.be-detail-reverse .be-photo { grid-column:2; grid-row:1; }
.be-detail-reverse>div { grid-column:1; grid-row:1; }
.be-main .be-note { border-left:2px solid #afb99d; padding-left:16px; font-size:.88rem; }
.be-care-grid { display:grid; grid-template-columns:1fr 1fr; gap:55px; margin-top:30px; }
.be-specs,.be-care { padding-left:1.2em; color:var(--be-muted); }
.be-specs li,.be-care li { margin-bottom:15px; padding-left:4px; }
.be-faq { max-width:900px; }
.be-faq details { border-top:1px solid #cdd4bc; }
.be-faq details:last-child { border-bottom:1px solid #cdd4bc; }
.be-faq summary { min-height:48px; padding:17px 4px; cursor:pointer; color:var(--be-green); font-weight:600; }
.be-faq details p { color:var(--be-muted); padding:0 24px 10px; }
.be-main .buy-section { padding:60px 20px; }
.be-main .buy-card { max-width:850px; }
.be-main .be-buy-help { margin:20px 0 0; }
body:has(.be-main) .modal { overflow:hidden; }
body:has(.be-main) .modal-r { min-height:0; }
body:has(.be-main) .modal-l { flex-direction:column; gap:16px; min-height:0; }
body:has(.be-main) .modal-photo { object-fit:contain; width:min(100%,340px); height:auto; max-height:none; }
body:has(.be-main) .be-modal-note { font-size:12px; line-height:1.8; color:#5e6757; max-width:340px; }
body:has(.be-main) .col-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:260px; }
body:has(.be-main) .col-sw { width:100%; }
body:has(.be-main) .col-sw img { object-fit:contain; }
body:has(.be-main) .col-sw-stk { display:block; font-size:12px; line-height:1.6; text-align:center; padding:3px; }
body:has(.be-main) .col-sw-nm { font-size:12px; line-height:1.7; }
body:has(.be-main) .modal-x,body:has(.be-main) .qty-btn-m,body:has(.be-main) .sz-btn { min-height:44px; min-width:44px; }
body:has(.be-main) .buy-bar-name { white-space:normal; line-height:1.5; }
@media(max-width:850px) {
 .be-wrap { width:calc(100% - 40px); }
 .be-hero,.be-detail,.be-care-grid { gap:30px; }
 .be-main h1 { font-size:2.4rem; }
}
@media(max-width:768px) {
 body:has(.be-main) .modal { display:block; max-height:90dvh; overflow-y:auto; overscroll-behavior:contain; }
 body:has(.be-main) .modal-l { display:flex; padding:18px; }
 body:has(.be-main) .modal-photo { width:min(100%,260px); }
 body:has(.be-main) .modal-r { padding:24px; max-height:none; overflow:visible; }
}
@media(max-width:650px) {
 .be-wrap { width:calc(100% - 36px); }
 .be-section { padding-block:46px; }
 .be-hero { grid-template-columns:1fr; padding-block:22px 42px; gap:25px; }
 .be-hero-photo { grid-row:1; }
 .be-main h1 { font-size:2rem; margin-bottom:18px; }
 .be-main h2 { font-size:1.6rem; }
 .be-lead { font-size:1rem; }
 .be-heading { margin-bottom:26px; }
 .be-detail,.be-care-grid,.be-steps { grid-template-columns:1fr; gap:26px; }
 .be-detail-reverse .be-photo,.be-detail-reverse>div { grid-column:auto; grid-row:auto; }
 .be-faq details p { padding-inline:4px; }
 .be-main .buy-card { padding:36px 20px; }
 body:has(.be-main) .buy-bar { gap:14px; padding:10px 18px; }
 body:has(.be-main) .buy-bar-name { font-size:13px; }
 body:has(.be-main) .buy-bar-price { font-size:18px; }
 body:has(.be-main) .buy-bar-btn { font-size:14px; padding:10px 15px; flex-shrink:0; }
}

.be-size-grid {display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;background:transparent;border:0;box-shadow:none;padding:0;opacity:1;transform:none;}
.be-main h4 {font-size:1rem;margin-bottom:20px;}
.be-main .specs-box {max-width:none;}
body:has(.be-main) .hibou-scroll-top {display:none;}
.be-swatch-reference {position:absolute;inset:5px 3px auto;background:#fffdf4;color:#405b3b;font-size:11px;line-height:1.5;padding:2px;text-align:center;border:1px solid #d8decc;}
body:has(.be-main) .col-grid {grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%;}
body:has(.be-main) .col-sw-nm {white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
body:has(.be-main) .sz-row {display:grid;grid-template-columns:1fr;}
body:has(.be-main) .sz-btn {white-space:normal;text-align:left;font-size:14px;line-height:1.8;}
body:has(.be-main) .modal-photo {max-height:46vh;width:100%;object-fit:contain;}
@media(max-width:768px){body:has(.be-main) .modal-photo {width:min(100%,240px);max-height:none;}}
@media(max-width:650px){.be-size-grid {grid-template-columns:1fr;gap:30px;}.be-size-grid .be-photo {max-width:360px;}.be-hero>div {display:contents;}.be-hero>.be-photo {grid-row:3;}.be-hero .be-kicker {grid-row:1;margin:0;}.be-hero h1 {grid-row:2;margin:0;}.be-hero .be-lead {grid-row:4;margin:0;}.be-hero .be-links {grid-row:5;margin-top:0;}}
