/* Beyond Design — "Zero to Harvest" — extends the shared bb- design system in project4.css */

.bd-page .bb-hero { background: linear-gradient(90deg, rgba(3,12,21,.98) 0%, rgba(3,15,27,.92) 48%, rgba(4,20,36,.72) 100%), url("../images/beyond-design/14-harvest-result.jpg") center right / cover no-repeat; color: #fff; padding: 96px 0 64px; }
.bd-page .bb-hero .bb-kicker { color: var(--bb-cyan); }
.bd-page .bb-hero h1 { font-size: clamp(32px, 4.5vw, 52px); font-weight: 800; line-height: 1.15; margin: 14px 0 18px; }
.bd-page .bd-not-a-case-study { font-size: 18px; line-height: 1.6; color: #cfd8de; max-width: 760px; margin: 0 0 32px; }
.bd-page .bd-not-a-case-study strong { color: #fff; }

.bd-hero-strip { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; max-width: 900px; margin-top: 20px; }
.bd-hero-strip figure { margin: 0; position: relative; border-radius: 10px; overflow: hidden; border: 1px solid rgba(255,255,255,.15); }
.bd-hero-strip img { width: 100%; height: 260px; object-fit: cover; display: block; }
.bd-hero-strip figcaption { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0,0,0,.75)); color: #fff; font-size: 13px; font-weight: 600; padding: 28px 14px 10px; letter-spacing: .02em; }
@media (max-width: 767.98px) { .bd-hero-strip { grid-template-columns: 1fr; } .bd-hero-strip img { height: 200px; } }

.bd-section { padding: 108px 0; }
.bd-section.bd-alt { background: var(--bb-paper); }
.bd-section h2 { font-size: clamp(24px, 3vw, 34px); font-weight: 800; color: var(--bb-ink); margin-bottom: 8px; }
.bd-eyebrow { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--bb-blue-text); margin-bottom: 10px; }
.bd-lead { font-size: 17px; line-height: 1.65; color: var(--bb-muted); max-width: 760px; margin-bottom: 32px; }

/* Problem statement */
.bd-problem-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 32px; align-items: center; }
.bd-problem-grid img { width: 100%; border-radius: 10px; border: 1px solid var(--bb-line); }
.bd-problem-list { list-style: none; margin: 0; padding: 0; }
.bd-problem-list li { padding: 10px 0 10px 28px; position: relative; border-bottom: 1px solid var(--bb-line); font-size: 15.5px; color: var(--bb-ink); }
.bd-problem-list li:last-child { border-bottom: none; }
.bd-problem-list li::before { content: "—"; position: absolute; left: 0; color: var(--bb-blue); font-weight: 700; }
@media (max-width: 900px) { .bd-problem-grid { grid-template-columns: 1fr; } }

/* Reading the system: soil + irrigation plan */
.bd-system-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.bd-system-card { background: #fff; border: 1px solid var(--bb-line); border-top: 3px solid var(--bb-blue); border-radius: 10px; padding: 22px; }
.bd-system-card h3 { font-size: 17px; font-weight: 700; color: var(--bb-ink); margin: 0 0 10px; }
.bd-system-card img { width: 100%; border-radius: 6px; border: 1px solid var(--bb-line); margin-bottom: 12px; cursor: zoom-in; }
.bd-system-card p { font-size: 14.5px; color: var(--bb-muted); line-height: 1.6; margin: 0; }
@media (max-width: 900px) { .bd-system-grid { grid-template-columns: 1fr; } }

/* Crop decision cards */
.bd-crop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.bd-crop-card { background: #fff; border: 1px solid var(--bb-line); border-radius: 10px; padding: 20px 18px; }
.bd-crop-card .bd-crop-name { font-size: 16px; font-weight: 700; color: var(--bb-ink); margin-bottom: 6px; }
.bd-crop-card .bd-crop-tag { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--bb-blue-text); background: #eaf2fe; border-radius: 20px; padding: 3px 10px; margin-bottom: 10px; }
.bd-crop-card p { font-size: 13.5px; color: var(--bb-muted); line-height: 1.55; margin: 0; }
@media (max-width: 900px) { .bd-crop-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .bd-crop-grid { grid-template-columns: 1fr; } }
.bd-portfolio-note { margin-top: 22px; background: #eaf2fe; border-left: 4px solid var(--bb-blue); border-radius: 6px; padding: 16px 20px; font-size: 14.5px; color: var(--bb-ink); line-height: 1.6; }

/* Personas */
.bd-persona-grid { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 18px; }
.bd-persona-card { background: #fff; border: 1px solid var(--bb-line); border-radius: 10px; padding: 20px; text-align: left; }
.bd-persona-card > img { display: block; width: calc(100% + 40px); height: 92px; margin: -20px -20px 18px; object-fit: cover; border-radius: 10px 10px 0 0; }
.bd-persona-role { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--bb-blue-text); margin-bottom: 6px; }
.bd-persona-card h3 { font-size: 16px; font-weight: 700; color: var(--bb-ink); margin: 0 0 8px; }
.bd-persona-card h4 { margin: 18px 0 5px; color: var(--bb-blue-text); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.bd-persona-card p { font-size: 13.5px; color: var(--bb-muted); line-height: 1.55; margin: 0; }
@media (max-width: 900px) { .bd-persona-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .bd-persona-grid { grid-template-columns: 1fr; } }

/* System diagram */
.bd-diagram-wrap { background: #fff; border: 1px solid var(--bb-line); border-radius: 12px; padding: 20px; overflow-x: auto; }
.bd-diagram-wrap svg { width: 100%; height: auto; min-width: 640px; display: block; }
.bd-diagram-caption { font-size: 13px; color: var(--bb-muted); margin-top: 14px; max-width: 720px; }

/* Timeline phase tags */
.bd-phase-tag { display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; border-radius: 20px; padding: 3px 10px; margin-bottom: 8px; }
.bd-phase-tag.is-infra { background: #071725; color: #fff; }
.bd-phase-tag.is-prep { background: #eaf2fe; color: var(--bb-blue-text); }
.bd-phase-tag.is-growth { background: #e6f7ee; color: #1b8a4a; }
.bd-phase-tag.is-maintenance { background: #fdf3e0; color: #b8860b; }
.bd-phase-tag.is-milestone { background: var(--bb-blue); color: #fff; }
.bd-timeline-connector { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; color: var(--bb-muted); text-transform: uppercase; letter-spacing: .04em; padding: 6px 0 6px 4px; }

/* Timeline */
.bd-timeline { position: relative; max-width: 920px; margin: 0 auto; }
.bd-timeline::before { content: ""; position: absolute; left: 130px; top: 0; bottom: 0; width: 2px; background: var(--bb-line); }
.bd-timeline-item { position: relative; display: grid; grid-template-columns: 110px 1fr; gap: 28px; padding-bottom: 44px; }
.bd-timeline-item:last-child { padding-bottom: 0; }
.bd-timeline-year { font-size: 15px; font-weight: 800; color: var(--bb-ink); text-align: right; padding-top: 4px; }
.bd-timeline-dot { position: absolute; left: 126px; top: 8px; width: 10px; height: 10px; border-radius: 50%; background: var(--bb-blue); border: 2px solid #fff; box-shadow: 0 0 0 2px var(--bb-blue); }
.bd-timeline-body { background: #fff; border: 1px solid var(--bb-line); border-radius: 10px; overflow: hidden; }
.bd-timeline-body img { width: 100%; max-height: 320px; object-fit: cover; display: block; cursor: zoom-in; }
.bd-timeline-text { padding: 16px 20px; }
.bd-timeline-text h3 { font-size: 16px; font-weight: 700; color: var(--bb-ink); margin: 0 0 6px; }
.bd-timeline-text p { font-size: 14px; color: var(--bb-muted); line-height: 1.6; margin: 0; }
@media (max-width: 700px) {
  .bd-timeline::before { left: 54px; }
  .bd-timeline-item { grid-template-columns: 44px 1fr; gap: 16px; }
  .bd-timeline-year { font-size: 12.5px; text-align: left; }
  .bd-timeline-dot { left: 50px; }
}

/* Results */
.bd-results-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.bd-result-card { background: #fff; border: 1px solid var(--bb-line); border-radius: 10px; padding: 22px; }
.bd-result-card .bd-result-crop { font-size: 15px; font-weight: 700; color: var(--bb-ink); margin-bottom: 8px; }
.bd-result-status { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; margin-bottom: 10px; }
.bd-result-status.is-strong { color: #1b8a4a; }
.bd-result-status.is-partial { color: #b8860b; }
.bd-result-status.is-early { color: var(--bb-blue-text); }
.bd-result-card p { font-size: 13.5px; color: var(--bb-muted); line-height: 1.55; margin: 0; }
@media (max-width: 900px) { .bd-results-grid { grid-template-columns: 1fr; } }

/* Closing */
.bd-closing { background: var(--bb-navy); color: #fff; padding: 72px 0; text-align: center; }
.bd-closing blockquote { font-size: clamp(19px, 2.4vw, 26px); font-weight: 600; line-height: 1.5; max-width: 760px; margin: 0 auto 18px; }
.bd-closing cite { font-style: normal; font-size: 14px; color: #9db3c4; }


/* Journey layout, aligned with the shared case-study visual language. */
.bd-page .bd-case { padding-top: var(--site-header-space,80px); }
.bd-page .bd-case .bd-hero { padding: 0; min-height: 620px; background: linear-gradient(90deg,rgba(3,12,21,.96),rgba(3,15,27,.87) 55%,rgba(4,20,36,.78)),url('../images/beyond-design/14-harvest-result.jpg') center / cover; }
.bd-page .bd-case .bb-hero-inner { padding-top: 52px; padding-bottom: 52px; }
.bd-page .bd-case .bb-hero h1 { font-size:42px; line-height:1.12; }
.bd-page .bd-case .bb-hero-lead { color:#c2cbd2; max-width:660px; }
.bd-page .bd-case .bb-section-tabs { top:var(--bd-header-height,80px); }
.bd-page .bd-case .bb-section-tabs .container { min-width:0; width:100%; justify-content:flex-start; overflow-x:auto; scrollbar-width:none; }
.bd-page .bd-case .bb-section-tabs a { flex-shrink:0; min-height:54px; }
.bd-page .bd-case .bd-section { padding:60px 0; background:#fff; scroll-margin-top:var(--bd-anchor-offset,155px); }
.bd-page .bd-case .bd-section.bd-alt { background:#f4f6f7; }
.bd-page .bd-case .bd-section h2 { color:#101924; font-size:34px !important; line-height:1.22; letter-spacing:-.025em; margin-bottom:14px; }
.bd-page .bd-case .bd-section h3 { color:#101924; font-size:20px; line-height:1.35; }
.bd-page .bd-case .bd-section p { color:#52606b; line-height:1.7; }
.bd-page .bd-case .bd-section .bd-eyebrow { color:#0866ce; }
.bd-page .bd-case .bd-lead { font-size:17px; max-width:850px; margin-bottom:28px; }
.bd-overview-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
.bd-overview-grid h3 { margin:0 0 10px; }
.bd-overview-grid p { margin:0 0 24px; }
.bd-before-after { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.bd-before-after figure { margin:0; border:1px solid var(--bb-line); border-radius:12px; overflow:hidden; background:#f4f6f7; }
.bd-before-after img { width:100%; height:260px; object-fit:cover; display:block; }
.bd-before-after figcaption { padding:14px; font-size:12px; font-weight:700; color:#343434; }
.bd-persona-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.bd-persona-card { padding:26px; border-radius:14px; }
.bd-persona-header { display:flex; align-items:center; gap:18px; padding-bottom:20px; border-bottom:1px solid var(--bb-line); }
.bd-persona-header img { width:100px; height:84px; object-fit:cover; border-radius:10px; flex-shrink:0; }
.bd-page .bd-case .bd-persona-card h3 { font-size:19px; margin:0; }
.bd-page .bd-case .bd-persona-role { color:#0866ce; font-size:11px; line-height:1.5; margin:0 0 7px; }
.bd-persona-card ul { padding-left:20px; margin:0; color:#52606b; font-size:14px; line-height:1.7; }
.bd-persona-card li { margin:4px 0; }
.bd-persona-card p { font-size:14px; }
.bd-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.bd-lifecycle { margin:0 0 36px; padding:28px; border:1px solid var(--bb-line); border-radius:14px; background:#fff; }
.bd-lifecycle > h3 { margin:0 0 8px; }
.bd-lifecycle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:24px; }
.bd-lifecycle-grid article { border-top:2px solid #1976f3; padding-top:16px; }
.bd-lifecycle-grid article > span { color:#0866ce; font-size:12px; font-weight:800; }
.bd-lifecycle-grid h4 { font-size:18px; font-weight:700; margin:10px 0 8px; }
.bd-lifecycle-grid p { font-size:14px; margin:0 0 12px; }
.bd-lifecycle-grid small { display:block; font-size:12px; line-height:1.6; color:#52606b; }
.bd-reflection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:36px; padding-top:28px; border-top:1px solid var(--bb-line); }
.bd-reflection-grid p { font-size:14px; margin:0; }
.bd-page .bd-case .bd-closing { background:#071725; padding:52px 0; }
.bd-enlarge { width:100%; display:block; padding:0; margin:0; border:0; background:transparent; cursor:zoom-in; }
.bd-enlarge:focus-visible,.bd-case a:focus-visible { outline:3px solid #1976f3; outline-offset:4px; }
.bd-image-dialog { padding:60px 20px 20px; border:0; border-radius:12px; background:#071725; color:white; max-width:95vw; max-height:94vh; }
.bd-image-dialog::backdrop { background:rgba(3,12,21,.9); }
.bd-image-dialog img { display:block; max-width:88vw; max-height:74vh; object-fit:contain; }
.bd-image-dialog p { margin:14px 0 0; max-width:800px; font-size:13px; color:#c2cbd2; }
.bd-image-close { position:absolute; right:12px; top:8px; width:44px; height:44px; border:1px solid #52606b; border-radius:6px; color:white; background:transparent; font-size:26px; cursor:pointer; }
@media(max-width:991.98px) {
 .bd-page .bd-case .bd-hero { min-height:auto; }
 .bd-overview-grid { grid-template-columns:1fr; gap:12px; }
 .bd-page .bd-case .bb-hero-facts { margin:30px 0 0; }
 .bd-page .bd-case .bd-section { padding:44px 0; }
 .bd-crop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px) {
 .bd-page .bd-case .container { padding-left:20px; padding-right:20px; }
 .bd-page .bd-case .bb-hero-inner { padding-top:34px; padding-bottom:38px; }
 .bd-page .bd-case .bb-hero h1 { font-size:34px; }
 .bd-page .bd-case .bb-hero-lead { font-size:16px; }
 .bd-page .bd-case .bd-section { padding:36px 0; }
 .bd-page .bd-case .bd-section h2 { font-size:28px !important; }
 .bd-page .bd-case .bd-lead { font-size:16px; }
 .bd-persona-grid,.bd-results-grid,.bd-reflection-grid { grid-template-columns:1fr; }
 .bd-lifecycle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .bd-lifecycle,.bd-persona-card { padding:20px; }
 .bd-persona-header img { width:76px; height:72px; }
 .bd-before-after img { height:190px; }
 .bd-timeline-item { padding-bottom:26px; }
 .bd-timeline-body img { max-height:240px; }
 .bd-timeline-text { padding:16px; }
 .bd-diagram-wrap { padding:12px; }
}
@media(max-width:420px) {
 .bd-crop-grid,.bd-lifecycle-grid { grid-template-columns:1fr; }
 .bd-before-after img { height:150px; }
 .bd-before-after figcaption { padding:10px; }
}
/* Independent page foundation: avoids numbered-section rules from other cases. */
.bd-page { --bb-ink:#101924; --bb-muted:#52606b; --bb-line:#dfe5e9; --bb-blue:#1976f3; --bb-blue-text:#0866ce; --bb-cyan:#91c5ff; --bb-paper:#f4f6f7; --bb-navy:#071725; }
.bd-page .site-wrap { overflow:visible; }
.bd-page .site-navbar { position:fixed; inset:0 0 auto; width:100%; z-index:1000; background:#fff; }
.bd-case { font-family:Roboto,Arial,sans-serif; color:#101924; background:#fff; }
.bd-case * { box-sizing:border-box; }
.bd-case .container { width:100%; max-width:1180px; margin-left:auto; margin-right:auto; }
.bd-case img { max-width:100%; }
.bd-case .bd-hero { display:flex; align-items:center; color:white; border-bottom:4px solid #1976f3; }
.bd-case .bb-kicker { font-size:12px; font-weight:700; letter-spacing:.12em; color:#91c5ff; }
.bd-case .bb-hero h1 { color:white; letter-spacing:-.035em; }
.bd-case .bb-hero h1 span { color:#91c5ff; }
.bd-case .bb-hero-lead { font-size:18px; line-height:1.7; }
.bd-case .bb-hero-facts { margin-left:32px; border-top:1px solid #536372; }
.bd-case .bb-hero-facts div { padding:18px 0; border-bottom:1px solid #536372; }
.bd-case .bb-hero-facts span { display:block; color:#91c5ff; font-size:11px; letter-spacing:.1em; text-transform:uppercase; margin-bottom:8px; }
.bd-case .bb-hero-facts strong { display:block; color:white; font-size:14px; line-height:1.6; }
.bd-case .bb-scroll-cue { display:inline-flex; gap:20px; color:white; font-size:13px; font-weight:700; padding:14px 20px; margin-top:30px; border:1px solid #91a0ad; }
.bd-case .bb-scroll-cue:hover { background:#1976f3; border-color:#1976f3; text-decoration:none; }
.bd-case .bb-section-tabs { position:sticky; z-index:900; background:#fff; border-bottom:1px solid #dfe5e9; box-shadow:0 4px 14px #0717250a; }
.bd-case .bb-section-tabs .container { display:flex; align-items:center; }
.bd-case .bb-section-tabs a { display:flex; align-items:center; padding:0 18px; color:#343434; font-size:13px; font-weight:600; border-bottom:3px solid transparent; white-space:nowrap; }
.bd-case .bb-section-tabs a.active { color:#0866ce; border-color:#1976f3; }
.bd-case .bb-section-tabs a:hover { color:#0866ce; text-decoration:none; }
.bd-case .bd-problem-grid { align-items:start; }
.bd-case .bd-problem-grid img { height:auto !important; aspect-ratio:auto; object-fit:contain; display:block; }
.bd-case .bd-problem-grid .bd-enlarge { max-width:430px; margin:auto; }
.bd-case .bd-system-card img { height:auto; }
.bd-case .bd-persona-grid { grid-template-columns:1fr; gap:28px; }
.bd-persona-template { display:grid; grid-template-columns:30% 70%; border:1px solid #dfe5e9; border-radius:14px; overflow:hidden; background:#fff; }
.bd-persona-identity { display:flex; flex-direction:column; background:#092838; color:white; padding:24px; }
.bd-persona-identity > span { font-size:11px; letter-spacing:.12em; font-weight:700; }
.bd-persona-identity img { display:block; width:100%; height:auto; margin:26px 0; border-radius:8px; }
.bd-page .bd-case .bd-persona-identity h3 { color:white; font-size:26px; margin:0 0 6px; }
.bd-page .bd-case .bd-persona-identity p { color:#d9e6ed; margin:0 0 14px; font-size:14px; }
.bd-persona-identity strong { font-size:13px; }
.bd-persona-detail h4 { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:#0866ce; margin:0 0 10px; }
.bd-page .bd-case .bd-persona-detail p { margin:0; font-size:15px; }
.bd-persona-about,.bd-persona-goals,.bd-persona-need { padding:24px; }
.bd-persona-about { background:#f4f6f7; }
.bd-persona-goals { background:#ffcf48; }
.bd-persona-bottom { display:grid; grid-template-columns:1fr 1fr; }
.bd-persona-bottom > div { padding:24px; }
.bd-persona-bottom > div + div { background:#f4f6f7; }
.bd-persona-need { border-top:1px solid #dfe5e9; }
.bd-supporting-roles { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:28px; }
.bd-supporting-roles article { padding:22px; background:#f4f6f7; border-radius:10px; }
.bd-supporting-roles h3 { margin:0 0 8px; }
.bd-supporting-roles p { font-size:14px; margin:0; }
.bd-iteration-card { border:1px solid #dfe5e9; background:#fff; border-radius:14px; overflow:hidden; margin-bottom:26px; }
.bd-iteration-heading { padding:24px; background:#071725; }
.bd-iteration-heading span { color:#91c5ff; font-size:12px; letter-spacing:.06em; }
.bd-page .bd-case .bd-iteration-heading h3 { color:white; font-size:24px; margin:10px 0 0; }
.bd-before-next { display:grid; grid-template-columns:1fr 1fr; }
.bd-before-next > div { padding:26px; }
.bd-before-next > div + div { background:#edf5ff; }
.bd-before-next span { color:#0866ce; font-size:11px; font-weight:800; letter-spacing:.1em; }
.bd-before-next h4 { font-size:20px; margin:12px 0; }
.bd-before-next p,.bd-evidence p { font-size:15px; margin:0; }
.bd-evidence { padding:26px; border-top:1px solid #dfe5e9; }
.bd-evidence h4 { font-size:16px; margin:0 0 10px; }
.bd-evidence p + h4 { margin-top:22px; }
.bd-learning-note { padding:24px; border-left:4px solid #1976f3; background:#eaf2fe; }
.bd-learning-note p { margin:10px 0 0; }
@media(max-width:767.98px) {
 .bd-persona-template { grid-template-columns:1fr; }
 .bd-persona-identity { display:grid; grid-template-columns:90px 1fr; gap:16px; align-items:center; padding:20px; }
 .bd-persona-identity > span { grid-column:1/-1; }
 .bd-persona-identity img { margin:0; width:90px; height:90px; object-fit:contain; }
 .bd-page .bd-case .bd-persona-identity h3 { font-size:22px; }
 .bd-persona-bottom,.bd-before-next,.bd-supporting-roles { grid-template-columns:1fr; }
 .bd-persona-about,.bd-persona-goals,.bd-persona-need,.bd-persona-bottom > div,.bd-before-next > div,.bd-evidence,.bd-iteration-heading { padding:20px; }
 .bd-case .bb-section-tabs a { padding:0 14px; min-height:54px; }
}

/* The shared sticky plugin owns shrink behavior; its wrapper stays fixed.
   Keeping the wrapper out of document flow prevents double header spacing. */
.bd-page .site-wrap > .sticky-wrapper { position:fixed; top:0; left:0; right:0; width:100%; height:auto !important; z-index:1000; }
.bd-page .sticky-wrapper .site-navbar { position:relative !important; top:0 !important; left:0; width:100% !important; }
.bd-page .sticky-wrapper .site-navbar.shrink { box-shadow:0 3px 18px rgba(7,23,37,.12); }
.bd-page .bd-case .bd-persona-template > *,
.bd-page .bd-case .bd-persona-bottom > *,
.bd-page .bd-case .bd-before-next > * { min-width:0; }
.bd-page .sticky-wrapper .site-navbar.shrink { padding-top:4px !important; padding-bottom:4px !important; }
@media(prefers-reduced-motion:reduce) { .bd-page .sticky-wrapper .site-navbar { transition:none; } }

/* Portrait-led persona templates and field evidence. */
.bd-page .bd-case .bd-persona-identity { position:relative; padding:0; display:flex; flex-direction:column; }
.bd-page .bd-case .bd-persona-identity > span { padding:20px 22px 0; }
.bd-page .bd-case .bd-persona-identity img { width:100%; height:auto; min-height:280px; margin:18px 0 0; border-radius:0; object-fit:cover; }
.bd-page .bd-case .bd-persona-identity > div { padding:22px; }
.bd-persona-caption { display:block; padding:0 22px 20px; color:#c2cbd2; font-size:11px; line-height:1.5; }
.bd-persona-goals ul { margin:0; padding-left:20px; color:#343434; font-size:15px; line-height:1.7; }
.bd-persona-goals li + li { margin-top:8px; }
.bd-observation { padding:26px; background:#f4f6f7; }
.bd-observation h4 { font-size:20px; margin:4px 0 12px; }
.bd-observation p { margin:0; font-size:15px; }
.bd-page .bd-case .bd-observation .bd-evidence-source { margin-top:14px; font-size:12px; }
.bd-valve-comparison { display:grid; grid-template-columns:1fr; gap:26px; padding:26px; border-top:1px solid #dfe5e9; }
.bd-valve-comparison figure { margin:0; min-width:0; }
.bd-valve-comparison figure > span { display:block; font-size:12px; font-weight:800; color:#0866ce; margin-bottom:12px; letter-spacing:.06em; }
.bd-valve-comparison img { display:block; width:100%; height:auto; object-fit:contain; border:1px solid #dfe5e9; border-radius:8px; }
.bd-valve-comparison figcaption { padding-top:12px; font-size:13px; color:#52606b; line-height:1.6; }
@media(max-width:767.98px) {
 .bd-page .bd-case .bd-persona-identity { display:flex; }
 .bd-page .bd-case .bd-persona-identity img { height:320px; min-height:0; object-position:center 25%; }
 .bd-observation,.bd-valve-comparison { padding:20px; }
}

/* Compact paired previews; complete persona content remains available in a modal. */
.bd-page .bd-case .bd-persona-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.bd-page .bd-case .bd-persona-template { grid-template-columns:1fr; cursor:zoom-in; }
.bd-page .bd-case .bd-persona-identity img { height:240px; min-height:0; object-fit:cover; object-position:center 25%; }
.bd-page .bd-case .bd-persona-identity > div { padding:18px 22px 12px; }
.bd-page .bd-case .bd-persona-about,.bd-page .bd-case .bd-persona-goals,.bd-page .bd-case .bd-persona-need { padding:20px; }
.bd-page .bd-case .bd-persona-bottom > div { padding:20px; }
.bd-persona-view { grid-column:1/-1; border:0; border-top:1px solid #dfe5e9; background:#edf5ff; color:#0866ce; padding:16px 20px; width:100%; font-size:14px; font-weight:700; text-align:left; cursor:pointer; }
.bd-persona-view:focus-visible { outline:3px solid #1976f3; outline-offset:-4px; }
.bd-valve-comparison { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.bd-valve-comparison img { height:240px; object-fit:contain; background:#f4f6f7; }
.bd-persona-dialog { width:1000px; max-width:94vw; max-height:92vh; padding:60px 20px 20px; border:0; border-radius:14px; background:#071725; overflow:auto; }
.bd-persona-dialog::backdrop { background:rgba(3,12,21,.9); }
.bd-persona-dialog .bd-persona-template { grid-template-columns:30% 70%; cursor:default; }
.bd-persona-dialog .bd-persona-identity { padding:0; display:flex; flex-direction:column; }
.bd-persona-dialog .bd-persona-identity > span { padding:20px; }
.bd-persona-dialog .bd-persona-identity img { width:100%; height:auto; margin:0; border-radius:0; }
.bd-persona-dialog .bd-persona-identity > div { padding:22px; }
.bd-persona-dialog .bd-persona-identity h3 { color:white; font-size:26px; margin:0 0 10px; }
.bd-persona-dialog .bd-persona-identity p { color:#d9e6ed; }
.bd-persona-dialog .bd-persona-detail p { font-size:16px; line-height:1.7; color:#52606b; margin:0; }
.bd-persona-dialog .bd-persona-bottom { grid-template-columns:1fr 1fr; }
@media(max-width:767.98px) {
 .bd-page .bd-case .bd-persona-grid,.bd-valve-comparison { grid-template-columns:1fr; }
 .bd-persona-dialog { padding:58px 12px 12px; }
 .bd-persona-dialog .bd-persona-template,.bd-persona-dialog .bd-persona-bottom { grid-template-columns:1fr; }
 .bd-persona-dialog .bd-persona-identity img { height:280px; object-fit:cover; object-position:center 25%; }
 .bd-valve-comparison img { height:auto; max-height:260px; }
}
