/* Portfolio chapters, project pages and accessible interactions */
header nav a:last-child{display:inline}.stage .photo-card{display:block}.book-section{padding-top:65px;background:#e9e7de}.book-tabs{display:flex;gap:24px;border-bottom:1px solid #c8c5b9;margin-bottom:34px}.book-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:15px 4px;color:#696a5f;font-size:14px}.book-tabs button span{font-size:9px;margin-right:12px}.book-tabs button[aria-pressed=true]{color:var(--red);border-color:var(--red)}.book{display:grid;grid-template-columns:1.05fr 1fr;position:relative;box-shadow:0 18px 35px #3834271f;perspective:1600px;background:#f6f3e9;min-height:540px}.book:after{content:'';position:absolute;left:51.2%;top:0;bottom:0;width:25px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#3b342116,transparent);pointer-events:none;z-index:2}.book-left{padding:36px 30px;background:linear-gradient(90deg,#f5f2e8,#f2eee2);position:relative;display:flex;flex-direction:column}.book-left>a{display:block;height:340px;flex:1;margin:30px 0 20px;overflow:hidden}.book-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.book-left>a:hover img{transform:scale(1.035)}.book-folio{font-size:8px;letter-spacing:1.5px}.book-hand{font:italic 17px Georgia,serif;position:absolute;top:48px;right:30px;transform:rotate(-7deg);color:#6d6552}.book-right{padding:48px 48px 25px;display:flex;flex-direction:column;justify-content:center;position:relative;transform-origin:left center}.book-number{font:60px Georgia,serif;opacity:.17;position:absolute;right:30px;top:20px}.book-right h3{font:500 clamp(35px,4.2vw,65px)/1.05 'Manrope',Arial,sans-serif;letter-spacing:-3px;margin:20px 0}.book-right h3 em{color:var(--red)}.book-right p{font-size:14px;line-height:1.85;color:#66665b;max-width:330px;margin:0 0 28px}.book-right>.button{align-self:flex-start}.book-controls{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:35px;gap:25px}.book-controls button{border:1px solid #bbb9ac;border-radius:50%;background:transparent;width:39px;height:39px;font-size:20px}.book-controls button:disabled{opacity:.25;cursor:default}.book-controls button:not(:disabled):hover{background:var(--ink);color:var(--paper)}#book-status{font-size:10px;letter-spacing:2px}.book-caption{font:italic 14px Georgia,serif;text-align:center;margin:23px 0 0;color:#737262}.book.is-turning .book-right{animation:pageTurn .42s ease}.book.is-turning .book-image{animation:photoIn .42s ease}.featured{padding-top:70px}.featured-image{display:block;position:relative;height:530px;margin-top:25px;background:#111;overflow:hidden}.featured-image>img{height:100%;width:100%;object-fit:cover;transition:transform .8s}.featured-image:hover>img{transform:scale(1.025)}.featured-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#000b)}.featured-caption{position:absolute;left:35px;bottom:35px;font:500 clamp(40px,5vw,75px)/1.03 'Manrope',sans-serif;letter-spacing:-3px;color:white;z-index:1}.feature-arrow{position:absolute;bottom:40px;right:40px;color:white;font-size:50px;z-index:1}.featured .work-end{margin-top:20px}.story-intro{padding-bottom:45px}.backlink{display:block;font-size:12px;margin-bottom:45px}.story-intro h1{font-size:clamp(48px,7.3vw,108px);margin:25px 0 35px;letter-spacing:-.06em}.story-lede{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.story-deck{font:italic 30px/1.35 Georgia,serif}.story-lede>div>p{font-size:14px;line-height:1.85;color:#626358}.story-lede small{display:block;font-size:11px;line-height:1.7;margin-top:20px;color:#717266}.credit-bar{display:flex;justify-content:space-between;padding:20px 6%;font-size:10px;letter-spacing:1px;background:#24271f;color:var(--paper)}.credit-bar a{text-decoration:underline}.story-cover{margin:0 6%;height:min(65vw,680px);background:#20211d}.story-cover img{width:100%;height:100%;object-fit:contain}.story-gallery>.section-top{margin-bottom:35px}.editorial-gallery{columns:2;column-gap:26px}.gallery-photo{display:block;position:relative;break-inside:avoid;margin-bottom:26px;overflow:hidden;background:#e6e3d9}.gallery-photo>img{width:100%;height:auto;display:block;transition:transform .5s}.gallery-photo:hover>img{transform:scale(1.015)}.gallery-photo>span{position:absolute;bottom:14px;right:15px;background:#f2f0e9e8;font-size:10px;letter-spacing:1px;padding:7px 10px}.scene-title{font-size:44px;margin:60px 0 15px}.model-credit{font-size:11px;letter-spacing:.3px;margin-bottom:30px;color:#636558}.next-story{background:#e6e4da;padding:50px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px}.next-story>a{font:500 clamp(25px,3.4vw,50px) 'Manrope',sans-serif;letter-spacing:-1.5px}.page-cta{padding:70px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}.page-cta h2{font-size:clamp(30px,4vw,58px)}.work-index>h1,.about-page>h1,.marketing-page>h1,.contact-page>h1{font-size:clamp(55px,7.7vw,115px);margin-top:30px}.index-intro{font-size:17px;line-height:1.8;max-width:630px;margin-bottom:40px;color:#626358}.work-projects{grid-template-columns:1fr 1fr}.work-projects>.project:first-child{grid-column:1/-1}.work-projects>.project:first-child .project-img{height:540px}.work-projects .project-img{height:400px}.work-projects .project-img img{object-fit:cover}.work-projects>.project[data-category=Products] .project-img img{object-fit:contain}.about-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;margin-top:40px}.about-intro>p:first-child{font-size:25px;line-height:1.6}.about-intro>p:last-child{font-size:16px;line-height:1.9;color:#626358}.about-photo{margin:0 6%}.about-photo img{width:100%;height:550px;object-fit:cover}.about-photo>span{display:block;font-size:11px;margin-top:15px;color:#727568}.about-grid h3{font-size:19px;font-weight:500;margin-bottom:15px}.about-grid p{font-size:14px;line-height:1.9;margin-bottom:35px;color:#626358}.about-routes{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:30px;margin-top:40px;font-size:13px;gap:25px}.process-tabs{display:flex;margin-top:40px;border-bottom:1px solid #6e7264;gap:35px}.process-tabs>button{background:transparent;color:#bfc1b5;border:0;border-bottom:2px solid transparent;font-size:17px;padding:20px 0;display:flex;gap:12px;align-items:center}.process-tabs>button>span{font-size:10px}.process-tabs>button[aria-selected=true]{color:#fff;border-color:#d8ddb3}#process-panel{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;margin-top:50px;min-height:180px}#process-panel h2{font-size:clamp(35px,4.5vw,65px)}#process-panel p{font-size:16px;color:#c8cbbc;line-height:1.9}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 60px}.service-grid article{border-top:1px solid var(--line);padding:25px 0}.service-grid h3{font-size:24px;font-weight:500;margin:20px 0 15px;letter-spacing:-.7px}.service-grid p{font-size:14px;line-height:1.8;color:#626358}.experience-strip{border-top:1px solid var(--line);margin-top:50px;padding-top:30px}.experience-strip h3{font-weight:500;font-size:26px;margin:20px 0}.experience-strip p{font-size:13px}.contact-options{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:50px}.contact-options article{padding:35px 40px 35px 0}.contact-options article+article{border-left:1px solid var(--line);padding-left:40px;padding-right:0}.contact-options h2{font-size:55px;margin:30px 0}.contact-options p{font-size:14px;line-height:1.8;margin-bottom:25px;max-width:360px}.contact-note{font-size:12px;color:#626358;margin-top:25px}.lightbox-open{overflow:hidden}#lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#171914;color:#f2f0e9;padding:65px 70px 50px}#lightbox::backdrop{background:#171914}#lightbox figure{margin:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}#lightbox-image{max-width:100%;max-height:calc(100% - 45px);object-fit:contain}#lightbox-caption{font-size:12px;text-align:center;color:#c7c9bd}#lightbox button{background:transparent;color:inherit;border:1px solid #6e7264;padding:10px 15px;border-radius:20px}.lightbox-close{position:absolute;right:25px;top:20px}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:15px}.lightbox-next{right:15px}#lightbox-count{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:2px}@keyframes pageTurn{0%{transform:rotateY(-12deg);opacity:.35}100%{transform:rotateY(0);opacity:1}}@keyframes photoIn{0%{opacity:.2;transform:scale(1.03)}100%{opacity:1;transform:scale(1)}}@media(max-width:800px){.book-left{padding:25px 20px}.book-right{padding:35px 25px 20px}.book{min-height:440px}.book-left>a{height:280px}.book-right h3{letter-spacing:-2px}.book-hand{font-size:14px;top:45px;right:20px}.book-right p{font-size:12px}.featured-image{height:400px}.story-lede{gap:7%}.story-deck{font-size:25px}.work-projects .project-img{height:320px}.about-intro{gap:6%}.about-intro>p:first-child{font-size:21px}.process-tabs{gap:22px}.process-tabs>button{font-size:14px}.contact-options h2{font-size:43px}.contact-options .button{font-size:11px;gap:10px}.story-cover{height:60vw}.about-photo img{height:420px}}@media(max-width:580px){.book-tabs{gap:0;justify-content:space-between}.book-tabs button{font-size:12px}.book-tabs button span{margin-right:5px;font-size:8px}.book{grid-template-columns:1fr}.book:after{display:none}.book-left{padding:22px 22px 14px}.book-left>a{height:245px;flex:auto;margin:28px 0 15px}.book-right{padding:25px;border-top:1px solid #d8d3c4}.book-right h3{font-size:42px;margin:0 0 18px}.book-right p{font-size:13px}.book-right h3 br{display:none}.book-right .button{padding:15px 20px}.book-number{font-size:50px}.book-controls{padding-top:25px}.book-right{min-height:330px}.book-caption{font-size:12px}.featured-image{height:380px}.featured-caption{font-size:43px;left:20px;bottom:25px}.feature-arrow{right:20px;bottom:25px;font-size:32px}.story-intro{padding-top:40px}.story-lede{grid-template-columns:1fr;gap:25px}.story-cover{height:75vw;margin:0 5%}.editorial-gallery{columns:1}.story-gallery{padding-top:45px}.scene-title{font-size:35px}.next-story,.page-cta{flex-direction:column;align-items:start;padding:40px 5%}.next-story>a{font-size:30px}.page-cta h2{font-size:36px}.work-projects{grid-template-columns:1fr}.work-projects>.project:first-child .project-img{height:350px}.work-projects .project-img{height:380px}.index-intro{font-size:15px}.about-intro{grid-template-columns:1fr;gap:25px}.about-photo img{height:300px}.about-routes{flex-direction:column}.process-tabs{gap:0;justify-content:space-between}.process-tabs>button{font-size:12px;gap:5px}.process-tabs>button>span{display:none}#process-panel{grid-template-columns:1fr;gap:25px;min-height:290px}#process-panel p{font-size:14px}.service-grid{grid-template-columns:1fr;gap:12px}.contact-options{grid-template-columns:1fr}.contact-options article,.contact-options article+article{padding:30px 0;border-left:0}.contact-options article+article{border-top:1px solid var(--line)}.contact-options .button{font-size:13px}.contact-options h2{font-size:49px}#lightbox{padding:65px 40px 60px}.lightbox-prev{left:3px}.lightbox-next{right:3px}#lightbox button{padding:9px 10px}.lightbox-close{right:15px}#lightbox-caption{font-size:10px}.book-section>.section-top{align-items:center}.book-section>.section-top>a{font-size:10px}.book-section>.section-top>.eyebrow{max-width:140px}}

/* A moving photographic opening, using the actual portfolio. */
.cinematic-hero{position:relative;isolation:isolate;min-height:calc(100svh - 100px);padding:30px 6% 24px;display:flex;flex-direction:column;justify-content:space-between;background:#171a17;color:#fff;overflow:hidden}
.hero-film{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#171a17}
.hero-film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,12,.78),rgba(9,14,12,.2)),linear-gradient(0deg,rgba(9,14,12,.68),transparent 48%,rgba(9,14,12,.26));z-index:2}
.film-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:0;animation:film-dissolve 24s linear infinite,film-drift 24s linear infinite;will-change:opacity,transform}
.frame-a{opacity:1;animation-delay:0s}.frame-b{animation-delay:8s;object-position:center 45%}.frame-c{animation-delay:16s;object-position:center 35%}
@keyframes film-dissolve{0%,27%{opacity:1}34%,94%{opacity:0}100%{opacity:1}}
@keyframes film-drift{0%{transform:scale(1.015) translateX(-.5%)}100%{transform:scale(1.12) translateX(.5%)}}
.cinematic-hero .hero-copy{max-width:1100px;padding:25px 0 35px}.cinematic-hero h1{font-size:clamp(66px,8.5vw,128px);margin:20px 0 30px;line-height:.98;letter-spacing:-.065em}.cinematic-hero h1 em{color:#ee9277}.cinematic-hero .hero-bottom{justify-content:flex-start;gap:80px}.cinematic-hero .hero-bottom p{color:#eeeae3}.cinematic-hero .dot{background:#ee9277}.cinematic-hero .text-link:hover{color:#ffc7b7}.hero-film-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #ffffff50;padding-top:19px;font-size:9px;letter-spacing:1.5px}.hero-film-footer button{background:#171a1740;color:#fff;border:1px solid #ffffff80;border-radius:30px;padding:10px 15px;font-size:11px;letter-spacing:.2px}.hero-film-footer button:hover{background:#ffffff25}.cinematic-hero.motion-paused .film-frame{animation-play-state:paused}
@media(max-width:800px){.cinematic-hero{min-height:calc(100svh - 80px);padding:26px 5% 22px}.cinematic-hero>.eyebrow>span:last-child{display:none}.cinematic-hero .hero-bottom{gap:35px}.hero-film-footer>span{display:none}.hero-film::after{background:linear-gradient(90deg,#090e0cc9,#090e0c40),linear-gradient(0deg,#090e0cbb,transparent)}.cinematic-hero h1{font-size:clamp(64px,12vw,96px)}}
@media(max-width:520px){.cinematic-hero .hero-copy{padding:25px 0 35px}.cinematic-hero .hero-bottom{flex-direction:column;gap:25px}.cinematic-hero .hero-bottom p{font-size:13px}.cinematic-hero .hero-actions .button{font-size:12px;padding:16px 20px}.cinematic-hero .hero-actions .text-link{font-size:12px}.cinematic-hero h1{font-size:clamp(58px,15vw,78px)}.hero-film-footer{font-size:8px;letter-spacing:.8px}}
@media(prefers-reduced-motion:reduce){.cinematic-hero .film-frame{animation:none!important;transform:none!important;opacity:0}.cinematic-hero .frame-a{opacity:1}#hero-motion{display:none}}

.hero-film .film-frame{animation-play-state:paused}.cinematic-hero.film-ready .film-frame{animation-play-state:running}.cinematic-hero.motion-paused .film-frame{animation-play-state:paused}.journal-article{max-width:960px;margin:auto}.journal-article h1{font-size:clamp(48px,7vw,85px)}.article-copy{font-size:18px;line-height:1.8;margin-top:40px}.article-copy p{margin:20px 0}.article-copy h2{font-size:36px;margin-top:40px}.article-copy img{max-width:100%;height:auto}.article-copy a{text-decoration:underline}.journal-list article{padding:35px 0;border-bottom:1px solid var(--line)}.journal-list h2{font-size:36px;margin-bottom:15px}@media(max-width:520px){header{margin:0 4%;gap:10px}header nav{gap:10px;font-size:10px}header .contact-link{font-size:10px}header .contact-link span{display:none}}

/* Content-managed additions retain the existing visual language. */
.cms-section .article-copy{max-width:72ch}.cms-image{margin:2rem 0}.cms-image img{display:block;max-width:100%;height:auto;max-height:75vh;object-fit:contain}.cms-section .button{margin-top:1.5rem}
