.volco-section { width: 100%; max-width: none; color: var(--volco-text-primary); background: var(--volco-surface-page); }
.volco-section.volco-section { padding: 0; }
.volco-section *, .volco-section *::before, .volco-section *::after { box-sizing: border-box; }
.volco-section .volco-container { width: calc(100% - var(--volco-gutter) * 2); margin-inline: auto; }
.volco-section h2, .volco-section h3, .volco-section p { margin: 0; }
.volco-section-heading { font: 300 var(--volco-size-h2)/var(--volco-line-h2) var(--volco-font-heading); letter-spacing: var(--volco-tracking-h2); white-space: pre-line; overflow-wrap: anywhere; }
.volco-section-lead { font: 500 24px/34px var(--volco-font-body); letter-spacing: -.3px; white-space: pre-line; }
.volco-section-body { font: 500 18px/28px var(--volco-font-body); color: var(--volco-text-secondary); white-space: pre-line; }
.volco-section-small { font: 500 14px/22px var(--volco-font-body); color: var(--volco-text-secondary); white-space: pre-line; }
.volco-section-label { font: 500 12px/18px var(--volco-font-body); letter-spacing: .8px; color: var(--volco-text-secondary); white-space: pre-line; }
.volco-section-columns { display: grid; grid-template-columns: minmax(0,550fr) minmax(0,682fr); gap: 48px; align-items: start; }
.volco-section-copy { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.volco-section-picture, .volco-section-image { display: block; width: 100%; height: 100%; }
.volco-section-image { object-fit: cover; object-position: center; }
.volco-section-placeholder { min-height: 250px; background: var(--volco-surface-subtle); padding: 24px; }
.volco-section .volco-button { max-width: min(342px,100%); }
.volco-section .volco-button > span:first-child { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 1023px) { .volco-section-columns { grid-template-columns: minmax(0,1fr); } }

/* Shared composition also renders each original ACF block independently in the editor. */
.volco-chapter { position:relative; min-height:850px; height:calc(100svh - 104px); background:var(--volco-ink); color:var(--volco-chalk); scroll-margin-top:104px; }
.volco-chapter__media { position:absolute; inset:0; overflow:hidden; }
.volco-chapter__media::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent 25%,rgb(23 29 36 / .18)); pointer-events:none; }
.volco-chapter__panel { position:absolute; z-index:2; right:var(--volco-gutter); bottom:var(--volco-gutter); width:49%; height:76%; min-height:620px; padding:28px 32px 110px; display:flex; flex-direction:column; justify-content:space-between; gap:24px; }
.volco-chapter__panel::before { content:''; z-index:-1; position:absolute; inset:0; background:var(--volco-ink); clip-path:polygon(0 72px,34% 72px,34% 0,100% 0,100% 100%,0 100%); }
.volco-chapter__top { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; }
.volco-chapter__number { padding-top:64px; font:300 28px/1.2 var(--volco-font-heading); color:var(--volco-steel); }
.volco-chapter__number--label { font:500 11px/18px var(--volco-font-body); letter-spacing:.7px; max-width:28%; }
.volco-chapter__heading { margin:0; max-width:66%; text-align:right; font:300 clamp(30px,3vw,48px)/1.13 var(--volco-font-heading); letter-spacing:-1.4px; white-space:pre-line; overflow-wrap:anywhere; }
.volco-chapter__symbol { flex:1 1 90px; min-height:70px; max-height:140px; width:140px; align-self:center; background:url('../../blocks/brand-transition/mark-desktop.svg?v=1') center / contain no-repeat; opacity:.85; }
.volco-chapter__copy { display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.volco-chapter__lead { max-width:580px; font:500 clamp(17px,1.45vw,22px)/1.5 var(--volco-font-body); white-space:pre-line; }
.volco-chapter__details { font:500 12px/1.7 var(--volco-font-body); color:var(--volco-steel); white-space:pre-line; }
.volco-chapter .volco-button { min-height:48px; padding:12px 18px; background:transparent; box-shadow:inset 0 0 0 1px rgb(247 248 246 / .35); color:var(--volco-chalk); }
.volco-chapter .volco-button:hover { background:var(--volco-cobalt); }
.volco-story { position:relative; background:var(--volco-ink); }
.volco-story.is-pinned { height:calc(var(--story-count) * var(--story-height) + var(--story-height)); }
.volco-story__stage { position:sticky; top:var(--story-top); height:var(--story-height); overflow:hidden; }
.is-pinned .volco-chapter { position:absolute; inset:0; height:100%; min-height:0; background:transparent; pointer-events:none; }
.is-pinned .volco-chapter__panel { height:80%; min-height:0; }
.is-pinned .volco-chapter__media { z-index:0; }
.is-pinned .volco-chapter__panel { opacity:0; }
.is-pinned .volco-chapter.is-current { pointer-events:auto; }
.is-pinned .volco-chapter.is-current .volco-chapter__panel { opacity:1; z-index:10; }
.volco-story__navigation { position:absolute; z-index:20; right:calc(var(--volco-gutter) + 32px); bottom:calc(var(--volco-gutter) + 24px); width:calc(49% - 64px); display:grid; grid-template-columns:repeat(var(--story-count),minmax(0,1fr)); gap:16px; }
.volco-story__navigation button { position:relative; padding:18px 0 0; border:0; border-top:1px solid rgb(247 248 246 / .25); background:transparent; color:var(--volco-chalk); text-align:left; cursor:pointer; font:500 12px/18px var(--volco-font-body); }
.volco-story__navigation button::before { content:''; position:absolute; top:-1px; left:0; right:0; height:2px; background:var(--volco-chalk); transform:scaleX(var(--chapter-progress,0)); transform-origin:left; }
@media(max-width:1023px), (max-height:700px) {
    .volco-chapter { height:auto; min-height:0; padding-bottom:32px!important; }
    .volco-chapter__media { position:relative; height:480px; }
    .volco-chapter__panel { position:relative; width:calc(100% - var(--volco-gutter) * 2); height:auto; min-height:0; right:auto; bottom:auto; margin:-100px auto 0; padding:28px 32px 40px; }
    .volco-chapter__symbol { flex:none; height:100px; margin:20px 0; }
    .volco-chapter__heading { font-size:38px; }
}
@media(max-width:767px) {
    .volco-chapter { scroll-margin-top:92px; }
    .volco-chapter__media { height:390px; }
    .volco-chapter__panel { padding:24px 24px 36px; gap:24px; }
    .volco-chapter__panel::before { clip-path:polygon(0 48px,28% 48px,28% 0,100% 0,100% 100%,0 100%); }
    .volco-chapter__number { padding-top:38px; font-size:24px; }
    .volco-chapter__number--label { font-size:10px; }
    .volco-chapter__heading { font-size:30px; letter-spacing:-1px; max-width:72%; }
    .volco-chapter__lead { font-size:18px; }
    .volco-chapter__symbol { width:90px; height:90px; margin:8px 0; }
}
.volco-story__navigation[hidden] { display:none; }
@media(min-width:1024px) and (max-height:800px) {
    .is-pinned .volco-chapter__panel { padding-top:20px; padding-bottom:100px; gap:16px; }
    .is-pinned .volco-chapter__number { padding-top:52px; }
    .is-pinned .volco-chapter__symbol { min-height:50px; max-height:85px; width:85px; }
    .is-pinned .volco-chapter__copy { gap:12px; }
}
@media(max-width:767px) {
    .volco-chapter__heading { font-size:clamp(20px,6vw,28px); letter-spacing:-.8px; }
}
