/* Approved hero composition. Chapter pages retain their existing presentation. */
[data-scrolled=false] [data-section-name=side-nav]>nav{top:calc(50% - 16px);width:min(324px,calc(100vw - 30px));aspect-ratio:324/452}
[data-scrolled=false] .bump-wordmark{font-size:55px;line-height:1;letter-spacing:-.065em}
[data-scrolled=false] .bump-wordmark small{font-family:HWCigars,Georgia,serif;font-size:19px;font-weight:400;letter-spacing:-.04em;margin-top:2px;line-height:1.05;text-transform:none}
[data-scrolled=false] .subtitle{font-size:20px;line-height:1.08;white-space:pre-line;max-width:285px;letter-spacing:-.035em}
[data-scrolled=false] .sidebar-link{font-family:HWCigars,Georgia,serif;font-weight:400;font-size:20px;line-height:1.18;letter-spacing:-.03em;height:27px;padding-top:0;padding-bottom:0}
[data-scrolled=false] [data-section-name=side-nav] ul{margin-top:27px}
.bump-hero-header{padding:0 6.6vw;height:64px;gap:20px}
.bump-hero-header .bump-nav-logo{font-size:30px;letter-spacing:-1.8px}
.bump-hero-header .bump-location{font-family:HWCigars,Georgia,serif;font-size:13px;letter-spacing:-.02em;opacity:1}
.bump-hero-header .bump-top-links{margin-left:44px;gap:44px;align-items:center}
.bump-hero-header .bump-top-links button{display:inline-flex;align-items:center;gap:9px;font:inherit;cursor:pointer}
.bump-hero-header .bump-top-links button img{filter:brightness(0) invert(1)}
.bump-hero-header .bump-header-actions{margin-left:auto}
.bump-hero-header .bump-search-button,.bump-hero-header .bump-menu-button{display:none}
.bump-hero-header .bump-project-button{background:#f7f7ee;color:#222;border:0;border-radius:30px;padding:10px 20px;font-size:13px;line-height:1.1}
.bump-hero-header .bump-project-button>span{display:none}
@media(max-width:1100px){.bump-hero-header .bump-top-links{display:flex;margin-left:auto;gap:25px}.bump-hero-header{padding:0 20px}.bump-hero-header .bump-header-actions{margin-left:10px}}
@media(max-width:600px){.bump-hero-header{height:56px;padding:0 15px}.bump-hero-header .bump-top-links{font-size:12px;gap:18px}.bump-hero-header .bump-header-actions{display:none}[data-scrolled=false] [data-section-name=side-nav]>nav{top:calc(50% + 100px);aspect-ratio:324/452}}

@media(max-width:600px) and (max-height:740px){:where(html:not([data-bump-stable-viewport])) [data-scrolled=false] [data-section-name=side-nav]>nav{top:calc(50% + 65px)}}

@media(max-width:600px){:where(html[data-bump-height-max-740]) [data-scrolled=false] [data-section-name=side-nav]>nav{top:calc(50% + 65px)}}

/* Keep the characters visible when a browser cannot render WebGL. */
@media(min-width:601px){img[src*="hero-fallback-v2.webp"]{object-fit:cover;background:none}}

/* Compact hero controls stay anchored over the animated scene. */
.bump-hero-header .bump-top-links{gap:24px}
.bump-hero-nav-anchor,.bump-hero-search-anchor{position:relative}
.bump-hero-header .bump-nav-trigger{padding:9px 10px;border-radius:3px;white-space:nowrap;line-height:16px;min-height:34px;gap:8px}
.bump-hero-header .bump-nav-trigger[aria-expanded=true]{background:#fff;color:#222}
.bump-hero-header .bump-nav-trigger[aria-expanded=true] img{filter:brightness(0);transform:rotate(180deg)}
.bump-hero-dropdown{position:absolute;left:0;top:calc(100% + 8px);width:220px;max-width:calc(100vw - 30px);padding:8px;background:#fff;color:#242424;border-radius:3px;box-shadow:0 3px 12px #00000016;display:flex;flex-direction:column;gap:0}
.bump-hero-dropdown-row{position:relative;display:flex;align-items:center;min-height:38px}
.bump-hero-dropdown-row>span{position:absolute;left:9px;pointer-events:none;font-family:HWCigars,Georgia,serif;font-size:15px;color:#8d7771}
.bump-hero-dropdown-row a{display:flex;align-items:center;width:100%;min-height:38px;padding:9px 8px 9px 37px;border-radius:2px;font-size:14px;line-height:20px;letter-spacing:-.02em;color:#242424!important}
.bump-hero-dropdown-row a:hover,.bump-hero-dropdown-row a:focus-visible{background:#f1f1ed;text-decoration:none}
.bump-hero-dropdown a:focus-visible,.bump-nav-trigger:focus-visible{outline:2px solid #9ba9a2;outline-offset:2px}
.bump-hero-search-panel{position:absolute;top:calc(100% + 8px);left:0;width:min(640px,calc(100vw - 510px));background:#fff;color:#242424;border-radius:3px;box-shadow:0 3px 12px #00000016;overflow:hidden}
.bump-hero-search-panel form{display:flex;align-items:stretch;height:44px;padding:0 8px 0 15px}
.bump-hero-search-panel input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#242424;font:inherit;font-size:14px;padding:0;appearance:none}
.bump-hero-search-panel input::placeholder{color:#8b8b86}
.bump-hero-header .bump-hero-search-panel form>button{display:grid;place-items:center;width:41px;margin:7px 0 7px 10px;border-left:1px solid #ecece8;padding:0;color:#555}
.bump-hero-search-panel form>button:disabled{color:#c9c9c4;cursor:default}
.bump-hero-search-results{border-top:1px solid #ecece8;padding:6px 15px 8px;max-height:min(350px,calc(100svh - 140px));overflow:auto}
.bump-hero-search-results>div{display:flex;flex-direction:column;gap:3px;padding:10px 0;border-bottom:1px solid #ecece8}
.bump-hero-search-results>div:last-child{border-bottom:0}
.bump-hero-search-results>div>span{font-size:10px;line-height:13px;color:#8b8b86}
.bump-hero-search-results a{font-size:14px;line-height:19px;color:#242424!important}
.bump-hero-search-results p{font-size:14px;line-height:20px;margin:10px 0}
@media(max-width:1100px){.bump-hero-search-panel{position:fixed;left:20px;right:20px;top:64px;width:auto}}
@media(max-width:600px){.bump-hero-header .bump-top-links{gap:8px}.bump-hero-header .bump-nav-trigger{padding:9px 7px;gap:6px}.bump-hero-header .bump-hero-method{display:none}.bump-hero-search-panel{left:15px;right:15px;top:56px}.bump-hero-dropdown{left:auto;right:0}}

/* The original title and drawing-line choreography opens on black first. */
html[data-bump-opening=type] body,html[data-bump-opening=type] .bump-loading{background:#000!important}
/* Keep the first paint opaque while the source body's color transition runs. */
html[data-bump-opening=type] body::before{content:"";position:fixed;inset:0;z-index:300;background:#000;pointer-events:none}
html[data-bump-opening=type] .main-wrapper{position:relative;z-index:301}
html[data-bump-opening=type] canvas[data-engine],html[data-bump-opening=type] .static-fallback-wrapper,html[data-bump-opening=type] img[src*="hero-fallback"]{opacity:0!important}
html[data-bump-opening=type] .bump-header{opacity:0;pointer-events:none}
.bump-header{transition:opacity .52s cubic-bezier(.25,.46,.45,.94),color .25s,background .25s}

/* The scene tells a story; the company mark remains in the header. */
.bump-title{display:block}
.bump-opening-wordmark{display:none}
html[data-bump-opening=type] .bump-opening-wordmark{display:block}
html[data-bump-opening=type] .bump-editorial-title{display:none}
.bump-editorial-title{display:block;font-family:NeueMontreal,Arial,sans-serif;font-size:32px;font-weight:600;line-height:.95;letter-spacing:-.045em;padding-right:.04em}
.bump-editorial-line{display:block;white-space:nowrap}
.bump-editorial-swap{display:grid;width:max-content;min-width:4.25em;overflow:hidden;font-family:HWCigars,Georgia,serif;font-size:1.12em;font-weight:400;font-style:italic;line-height:1.03;letter-spacing:-.055em;margin-block:1px}
.bump-editorial-word{display:block;grid-area:1/1;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1);transform-origin:0 50%}
.bump-editorial-word--rest{opacity:1;transform:translateY(0)}
.bump-editorial-word--hover{opacity:0;transform:translateY(85%)}
[data-sidebar-ready=true] .title-link:is(:hover,:focus-within) .bump-editorial-word--rest{opacity:0;transform:translateY(-85%)}
[data-sidebar-ready=true] .title-link:is(:hover,:focus-within) .bump-editorial-word--hover{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.bump-editorial-word{transition:none}}
