/* MEDIA VIEW BOOKS v1.3 — minimal, reading-first, responsive. */
.mvbh, .mvbh * { box-sizing: border-box; }
.mvbh { --mvb-ink:#242725; --mvb-muted:#696c69; --mvb-bg:#fafaf8; --mvb-line:#e5e7e2; --mvb-accent:#46564d; --mvb-soft:#eef1ec; font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","Meiryo",sans-serif; font-size:15px; line-height:1.76; color:var(--mvb-ink); background:var(--mvb-bg); margin:0; padding:0; min-height:100vh; letter-spacing:.015em; -webkit-font-smoothing:antialiased; }
.mvbh a { color:inherit; text-decoration:none; transition:color .15s ease,background .15s ease,border-color .15s ease; }
.mvbh a:hover { color:var(--mvb-accent); }
.mvbh button,.mvbh input,.mvbh select { font:inherit; }
.mvbh button { cursor:pointer; }
.mvbh h1,.mvbh h2,.mvbh h3,.mvbh p { margin:0; padding:0; color:inherit; line-height:inherit; }
.mvbh img { max-width:100%; display:block; }
.mvbh :focus-visible,.mvbh-related :focus-visible { outline:3px solid #809c89; outline-offset:3px; }
.mvbh-shell { width:min(1120px,calc(100% - 64px)); margin:0 auto; }
.mvbh-sr { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.mvbh-skip { position:absolute; top:-100px; left:12px; z-index:999; background:#fff; padding:10px 16px; border:1px solid #444; }
.mvbh-skip:focus { top:12px; }
.mvbh-header { background:#fff; border-bottom:1px solid var(--mvb-line); }
.mvbh-header-inner { height:73px; display:flex; align-items:center; gap:32px; }
.mvbh-logo { white-space:nowrap; font-size:15px; font-weight:650; letter-spacing:.065em; line-height:1.2; }
.mvbh-logo strong { font-weight:800; }
.mvbh-logo span { font-weight:400; color:#6c756d; letter-spacing:.14em; }
.mvbh-nav { display:flex; gap:30px; margin-left:auto; }
.mvbh-nav a { font-size:13px; font-weight:600; }
.mvbh-header-search { font-size:13px; font-weight:600; border-left:1px solid var(--mvb-line); padding-left:26px; }
.mvbh-header-search span { margin-left:6px; font-size:22px; line-height:0; vertical-align:-2px; }
.mvbh-overline,.mvbh-eyebrow { color:#747f75!important; font-size:10px!important; letter-spacing:.22em!important; font-weight:700!important; line-height:1.5!important; text-transform:uppercase; }
.mvbh-hero { padding:77px 0 72px; max-width:840px; }
.mvbh-hero h1 { font-size:clamp(29px,4.4vw,46px); line-height:1.38; font-weight:760; letter-spacing:-.055em; margin:12px 0 14px; }
.mvbh-hero-intro { font-size:14px; color:var(--mvb-muted)!important; margin-bottom:32px!important; }
.mvbh-search { width:100%; max-width:700px; position:relative; }
.mvbh-searchbox { border:1px solid #bec4bc; border-radius:7px; background:#fff; display:flex; align-items:center; gap:10px; padding:7px 7px 7px 17px; transition:border-color .15s ease,box-shadow .15s ease; }
.mvbh-searchbox:focus-within { border-color:#647d6a; box-shadow:0 0 0 3px rgba(87,122,99,.10); }
.mvbh-search-ico { font-family:Arial,sans-serif; font-size:27px; line-height:1; color:#6f7c72; transform:rotate(-15deg); }
.mvbh-searchbox input[type="search"] { background:transparent!important; appearance:none; -webkit-appearance:none; border:0!important; color:var(--mvb-ink)!important; flex:1; width:100%; min-width:0; padding:10px 0!important; font-size:15px; border-radius:0!important; outline:0!important; box-shadow:none!important; }
.mvbh-searchbox input::placeholder { color:#8a8e8a; }
.mvbh-search-submit { background:#25352b!important; color:#fff!important; border:1px solid #25352b!important; border-radius:5px!important; font-weight:700; min-width:91px; min-height:44px; padding:0 15px!important; white-space:nowrap; font-size:13px!important; }
.mvbh-search-submit:hover,.mvbh-filter-submit:hover { background:#486251!important; }
.mvbh-search-examples { font-size:11px; color:#858b85; margin-top:11px; }
.mvbh-search-examples a { color:#6a736b; text-decoration:underline; text-underline-offset:3px; }
.mvbh-suggest { position:absolute; top:calc(100% - 12px); width:100%; z-index:20; box-shadow:0 12px 28px rgba(0,0,0,.10); background:#fff; border:1px solid var(--mvb-line); border-radius:0 0 9px 9px; overflow:hidden; }
.mvbh-suggest[hidden] { display:none!important; }
.mvbh-suggest a { padding:10px 15px; border-bottom:1px solid var(--mvb-line); display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:13px; }
.mvbh-suggest a:hover { background:var(--mvb-soft); }
.mvbh-suggest strong { font-weight:650; overflow:hidden; text-overflow:ellipsis; }
.mvbh-suggest em { color:#7c857c; font-size:11px; flex-shrink:0; font-style:normal; }
.mvbh-section-head { display:flex; justify-content:space-between; align-items:end; gap:12px; margin:0 0 26px; }
.mvbh-section-head h2 { font-size:23px; line-height:1.4; letter-spacing:-.035em; font-weight:750; margin-top:7px; }
.mvbh-section-more { font-weight:650; font-size:12px; padding-bottom:3px; border-bottom:1px solid #8f9890; white-space:nowrap; }
.mvbh-highlight { padding:0 0 68px; }
.mvbh-card { min-width:0; display:block; }
.mvbh-card-image { display:flex; align-items:center; justify-content:center; overflow:hidden; aspect-ratio:1.65; background:#edf0ec; border:1px solid #ecefea; border-radius:5px; position:relative; }
.mvbh-card-image--loaded img { width:100%; height:100%; object-fit:cover; }
.mvbh-card-image--blank { background:#e9ece6; }
.mvbh-card-fallback { color:#929e92; font-family:Georgia,serif; text-transform:uppercase; font-size:clamp(13px,2vw,25px); letter-spacing:.13em; padding:12px; text-align:center; }
.mvbh-card--review .mvbh-card-image { aspect-ratio:3/4; background:#f0f1ed; }
.mvbh-card--review .mvbh-card-fallback { font-size:12px; padding:18px; letter-spacing:.12em; }
.mvbh-card:hover .mvbh-card-image { border-color:#b5c0b5; }
.mvbh-card-text { display:flex; flex-direction:column; padding-top:12px; min-width:0; }
.mvbh-kicker { display:block; color:#718273; font-size:10px; font-weight:700; letter-spacing:.075em; line-height:1.4; margin-bottom:7px; }
.mvbh-dot { margin:0 5px; }
.mvbh-card-title { color:var(--mvb-ink); font-size:15px; font-weight:720; line-height:1.65; overflow-wrap:anywhere; }
.mvbh-card-date,.mvbh-card-author { color:var(--mvb-muted); font-size:12px; line-height:1.6; margin-top:7px; }
.mvbh-card-desc { color:var(--mvb-muted); font-size:13px; margin-top:11px; line-height:1.8; max-width:55ch; }
.mvbh-card--large { background:#fff; border:1px solid var(--mvb-line); border-radius:8px; padding:12px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:32px; }
.mvbh-card--large .mvbh-card-image { aspect-ratio:1.55; width:100%; border:0; border-radius:5px; }
.mvbh-card--large .mvbh-card--review { grid-template-columns:1fr 1fr; }
.mvbh-card--large .mvbh-card-text { padding:15px 24px 15px 0; }
.mvbh-card--large .mvbh-card-title { font-size:clamp(19px,2.1vw,27px); line-height:1.55; }
.mvbh-card--large.mvbh-card--review .mvbh-card-image { aspect-ratio:1.55; }
.mvbh-card--large.mvbh-card--review .mvbh-card-image img { width:100%;height:100%;object-fit:contain;background:#f2f3ef; }
.mvbh-topics { border-top:1px solid var(--mvb-line); border-bottom:1px solid var(--mvb-line); padding:38px 0 38px; margin-bottom:72px; }
.mvbh-topics .mvbh-section-head { margin-bottom:24px; }
.mvbh-tax-row { display:grid; grid-template-columns:105px 1fr; gap:12px; align-items:start; margin-top:14px; }
.mvbh-tax-label { font-weight:700; font-size:12px; padding-top:7px; color:#6c736d; }
.mvbh-chip-list { display:flex; flex-wrap:wrap; gap:8px; }
.mvbh-chip { border:1px solid #dce1da; color:#48564b!important; border-radius:99px; padding:5px 12px; font-size:12px; white-space:nowrap; background:#fff; }
.mvbh-chip:hover { background:#e4ebe2; border-color:#bccabc; }
.mvbh-chip span { margin-left:4px; }
.mvbh-section { padding:0 0 78px; }
.mvbh-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.mvbh-review-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px 18px; }
.mvbh-author-list { display:flex; flex-wrap:wrap; gap:9px 16px; }
.mvbh-author-list a { border-bottom:1px solid #c7cec4; padding:5px 1px; font-size:13px; }
.mvbh-authors { border-top:1px solid var(--mvb-line); padding:40px 0 80px; }
.mvbh-muted { color:#8b928b!important; font-size:13px; }
.mvbh-empty { border:1px solid var(--mvb-line); background:#fff; border-radius:8px; padding:38px 32px; margin-bottom:80px; }
.mvbh-empty h2 { font-size:21px; margin-bottom:10px; font-weight:700; }
.mvbh-empty p { font-size:14px; margin-bottom:12px; color:var(--mvb-muted); }
.mvbh-btn { display:inline-block; background:var(--mvb-ink); color:#fff!important; border-radius:5px; font-size:13px; padding:10px 16px; }
.mvbh-footer { background:#fff; border-top:1px solid var(--mvb-line); }
.mvbh-footer-inner { display:flex; align-items:center; flex-wrap:wrap; gap:18px 30px; padding:32px 0; }
.mvbh-footer-links { display:flex; margin-left:auto; gap:16px; }
.mvbh-footer-links a,.mvbh-footer small { color:#7c827c; font-size:11px; }
.mvbh-results { min-height:50vh; padding:54px 0 80px; }
.mvbh-results-head { margin-bottom:23px; }
.mvbh-results-head h1 { font-size:31px; font-weight:760; letter-spacing:-.04em; margin:5px 0 6px; }
.mvbh-results-head p:last-child { color:var(--mvb-muted); font-size:13px; }
.mvbh-results .mvbh-search { max-width:none; }
.mvbh-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:24px 0 27px; padding:18px; border:1px solid var(--mvb-line); background:#fff; border-radius:7px; }
.mvbh-filters label { color:#696f68; display:flex; flex-direction:column; gap:5px; font-size:11px; font-weight:700; min-width:155px; flex:1; }
.mvbh-filters select { width:100%; background:#fff; border:1px solid #c9cfc8; min-height:40px; border-radius:5px; padding:5px 11px; font-size:13px; color:var(--mvb-ink); }
.mvbh-filter-submit { background:#25352b!important; border:0!important; border-radius:5px; color:#fff!important; font-size:12px!important; padding:11px 16px!important; min-height:40px; }
.mvbh-clear { font-size:12px; color:var(--mvb-muted)!important; padding:9px 2px; }
.mvbh-result-count { font-size:13px; margin:0 0 20px; color:var(--mvb-muted); }
.mvbh-result-count strong { font-size:17px; color:var(--mvb-ink); }
.mvbh-results-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px 18px; }
.mvbh-no-results { border-top:1px solid var(--mvb-line); padding:35px 0; }
.mvbh-no-results h2 { font-size:18px; font-weight:700; margin-bottom:8px; }
.mvbh-no-results p { color:var(--mvb-muted); font-size:13px; margin-bottom:18px; }
.mvbh-pagination { margin-top:34px; }
.mvbh-pagination ul { display:flex; flex-wrap:wrap; gap:8px; padding:0; list-style:none; margin:0; }
.mvbh-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:37px; height:37px; padding:6px 10px; border:1px solid var(--mvb-line); background:#fff; border-radius:5px; font-size:12px; }
.mvbh-pagination .page-numbers.current { background:#25352b; color:#fff; border-color:#25352b; }
.mvbh-related { font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif; clear:both; margin:54px auto 30px; padding:32px 0 0; border-top:1px solid #e1e5df; color:#242725; }
.mvbh-related h2 { font-size:21px; margin:7px 0 25px; font-weight:750; }
.mvbh-related h3 { font-size:14px; font-weight:700; margin:24px 0 15px; }
.mvbh-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.mvbh-related .mvbh-card { color:#242725; text-decoration:none; }
.mvbh-related .mvbh-card-image { aspect-ratio:1.6; }
.mvbh-related .mvbh-card-title { font-size:13px; }
.mvbh-related .mvbh-card-author,.mvbh-related .mvbh-card-date { font-size:11px; }
.mvbh-related .mvbh-card-fallback { font-size:13px; }
body.mvbh-standalone { margin:0!important; padding:0!important; background:#fafaf8!important; min-width:0!important; }
body.mvbh-standalone > .mvbh { width:100%; max-width:none!important; }
@media(max-width:920px) {
 .mvbh-shell { width:min(100% - 42px,1120px); }
 .mvbh-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mvbh-review-grid,.mvbh-results-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .mvbh-card--large { gap:19px; }
 .mvbh-card--large .mvbh-card-text { padding:5px 10px 5px 0; }
}
@media(max-width:620px) {
 .mvbh { font-size:14px; }
 .mvbh-shell { width:calc(100% - 32px); }
 .mvbh-header-inner { min-height:64px; height:auto; gap:10px; flex-wrap:wrap; padding:14px 0; }
 .mvbh-logo { font-size:13px; letter-spacing:.025em; }
 .mvbh-nav { order:3; width:100%; margin:5px 0 0; justify-content:space-between; gap:14px; border-top:1px solid var(--mvb-line); padding-top:11px; }
 .mvbh-nav a { font-size:12px; }
 .mvbh-header-search { margin-left:auto; padding-left:13px; font-size:12px; }
 .mvbh-hero { padding:46px 0 55px; }
 .mvbh-hero h1 { font-size:30px; letter-spacing:-.05em; margin:9px 0 12px; }
 .mvbh-desktop-break { display:none; }
 .mvbh-hero-intro { font-size:13px; margin-bottom:23px!important; }
 .mvbh-searchbox { padding:5px 5px 5px 12px; }
 .mvbh-searchbox input[type="search"] { font-size:13px; }
 .mvbh-search-submit { padding:0 11px!important; min-width:64px; min-height:43px; font-size:12px!important; }
 .mvbh-section-head { margin-bottom:18px; }
 .mvbh-section-head h2 { font-size:20px; }
 .mvbh-section-more { font-size:11px; }
 .mvbh-highlight { padding-bottom:48px; }
 .mvbh-card--large { grid-template-columns:1fr; padding:10px; gap:3px; }
 .mvbh-card--large .mvbh-card-image { aspect-ratio:1.6; }
 .mvbh-card--large .mvbh-card-text { padding:12px 8px 13px; }
 .mvbh-card--large .mvbh-card-title { font-size:18px; }
 .mvbh-topics { margin-bottom:50px; padding:29px 0; }
 .mvbh-tax-row { grid-template-columns:1fr; gap:6px; }
 .mvbh-tax-label { padding-top:0; }
 .mvbh-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:21px 12px; }
 .mvbh-feature-grid .mvbh-card-title { font-size:13px; }
 .mvbh-review-grid,.mvbh-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 12px; }
 .mvbh-card-title { font-size:13px; }
 .mvbh-card-text { padding-top:9px; }
 .mvbh-card-author { margin-top:4px; }
 .mvbh-section { padding-bottom:54px; }
 .mvbh-footer-inner { padding:27px 0; display:block; }
 .mvbh-footer-links { margin:12px 0; }
 .mvbh-results { padding:35px 0 65px; }
 .mvbh-results-head h1 { font-size:27px; }
 .mvbh-filters { padding:12px; gap:10px; }
 .mvbh-filters label { min-width:calc(50% - 7px); }
 .mvbh-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
 .mvbh-related-grid .mvbh-card-title { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .mvbh a { transition:none; } }
