/* Scale each composition with its available space instead of fixed small cards. */
.slide{container-type:size;padding:24px 3.2%}
.cover{padding:0}
.eyebrow{font-size:clamp(10px,1.1cqh,13px)}
h2,.dark h2{font-size:clamp(44px,8.2cqh,100px)}
.slide-heading{padding-bottom:16px;margin-bottom:18px;gap:24px}
.slide-intro{font-size:clamp(12px,1.65cqh,17px);max-width:400px}
.text-link{font-size:clamp(11px,1.5cqh,16px)}
.cover-copy{top:clamp(185px,17vw,340px);left:4%;max-width:40%}
.cover-role{font-size:clamp(20px,2vw,36px);line-height:1.3}
.cover-description{font-size:clamp(13px,1.6cqh,18px);line-height:1.6}
.cover-name{font-size:clamp(39px,6.2cqh,76px);margin-top:18px}
.cover-copy>.eyebrow{font-size:clamp(9px,1.2cqh,13px)}
.cover .gold-rule{margin:18px 0}
.selected{padding:16px 4% 14px}.selected-grid{gap:14px}
.selected-grid a>span{font-size:clamp(9px,1.3cqh,13px)}
.selected-heading .eyebrow{font-size:clamp(9px,1.2cqh,12px)}
.about{grid-template-columns:.9fr 1fr;padding:24px 3.2%;gap:4%;align-items:stretch}
.about-copy{align-self:center}.about-copy h2{font-size:clamp(49px,10cqh,126px);margin-top:15px}
.about-copy>p:not(.eyebrow){font-size:clamp(14px,2.05cqh,22px);max-width:720px;line-height:1.7}
.expertise{padding:24px 0;gap:12px 22px}.expertise span{font-size:clamp(10px,1.4cqh,15px)}
.photo-signature{font-size:clamp(24px,4cqh,42px)}
.process{padding:24px 4%;justify-content:flex-start}
.process .slide-heading{margin-bottom:18px;padding-bottom:18px}
.process h2{font-size:clamp(48px,10cqh,120px)}
.process-layout{flex:1;min-height:0;grid-template-columns:.72fr 1.28fr;gap:5%;align-items:stretch}
.process-steps{justify-content:space-around;padding-right:24px;border-right:1px solid var(--line)}
.process-steps>div{gap:24px;padding:16px 0;align-items:center}
.process-steps b{font-size:clamp(48px,8cqh,90px)}
.process-steps span{font-size:clamp(11px,1.7cqh,18px);max-width:180px;line-height:1.6}
.process-copy{font-size:clamp(13px,2.05cqh,22px);line-height:1.7;align-self:center}
.process-copy p+p{margin-top:22px}.process-copy .serif-note{font-size:clamp(25px,4cqh,43px)}
.film-layout{display:flex;min-height:0;flex:1;gap:24px}
.film-grid{gap:20px;flex:1;min-width:0}
.film,.film:only-child{flex:1 1 0;max-width:none}
.film-caption h3{font-size:clamp(12px,1.65cqh,17px)}
.film-number{font-size:clamp(21px,2.7cqh,29px)}
.film-field{font-size:clamp(9px,1.2cqh,12px)}
.film-caption{padding-top:12px;min-height:38px}
.sport-context{display:none}
@media(min-width:1100px){
 .video-slide[data-chapter=sport] .film-grid{flex:1.15}
 .sport-context{display:flex;flex:1;min-width:0;flex-direction:column;gap:16px;padding:18px;background:#ece5d8;color:var(--ink)}
 .context-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
 .context-heading a{font-size:10px;text-decoration:underline;text-underline-offset:4px}
 .context-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;min-height:0;flex:1}
 .context-gallery .image-link{background:transparent}.context-gallery img{object-fit:contain}
 .context-result{display:flex;align-items:flex-end;gap:28px;border-top:1px solid #c8bda8;padding-top:12px}
 .context-result>div{display:flex;flex-direction:column;gap:4px}
 .context-result strong{font-family:var(--serif);font-size:clamp(30px,5cqh,56px);font-weight:400;letter-spacing:-.04em;line-height:1}
 .context-result span{font-size:clamp(9px,1.25cqh,13px);color:var(--muted)}
 .context-result a{font-size:11px;border-bottom:1px solid var(--gold);padding-bottom:5px;margin-left:auto;white-space:nowrap}
}
.contact{padding:24px 3.2%;grid-template-columns:1fr 1fr;gap:4%;align-items:stretch}
.contact-copy{align-self:center}
.contact h2{font-size:clamp(48px,10.4cqh,125px)}
.contact .thanks{font-size:clamp(14px,1.95cqh,21px);line-height:1.7;max-width:740px;margin:24px 0}
.email{font-size:clamp(32px,5.4cqh,62px);padding-bottom:12px}
.socials{gap:28px;margin-top:22px}.socials .text-link{font-size:clamp(11px,1.6cqh,17px)}
.contact-name{font-size:clamp(27px,4cqh,46px);margin-top:24px}
.contact-photo{height:100%}
@media(min-width:701px) and (max-aspect-ratio:1/1){
 .desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav select{font:inherit;background:transparent;border:0;border-bottom:1px solid var(--gold);padding:10px;color:var(--ink)}
 .cover{grid-template-rows:minmax(0,1fr) 32%}
 .cover-copy{top:21vw;max-width:45%}.cover-name{font-size:clamp(50px,7vw,74px);margin-top:25px}.cover-role{font-size:25px}.cover-description{font-size:16px}
 .cover-portrait{left:37%;height:126%;bottom:-26%}.seal{display:none}
 .about{grid-template-columns:1fr;grid-template-rows:45% minmax(0,1fr);gap:20px}
 .about-photo img{object-position:center 28%}.about-copy{align-self:center}.about-copy h2{font-size:clamp(52px,7cqh,74px)}
 .about-copy h2 br{display:none}.about-copy .gold-rule{margin:15px 0}.about-copy>p:not(.eyebrow){font-size:clamp(16px,2.1cqh,21px)}
 .expertise{padding:14px 0;gap:10px 22px}
 .process-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:24px}
 .process h2{font-size:clamp(60px,9cqh,90px)}.process h2 br{display:none}
 .process-steps{flex-direction:row;gap:20px;padding:0;border-right:0}
 .process-steps>div{flex:1;display:block;padding:5px 0 16px}.process-steps b{display:block;font-size:60px}.process-steps span{font-size:13px}
 .process-copy{font-size:clamp(20px,2.7cqh,27px);align-self:center}.process-copy .serif-note{font-size:35px}.process h2 em{margin-left:.12em}
 .contact{display:flex;flex-direction:column;gap:24px}.contact-copy{align-self:stretch}.contact h2{font-size:clamp(50px,7cqh,75px)}
 .contact h2 br:nth-of-type(2){display:none}.contact .thanks{font-size:18px;margin:20px 0;max-width:none}
 .contact-copy .eyebrow{margin-bottom:14px}.contact-name{display:none}.email{font-size:41px}.socials{margin-top:14px}.contact-photo{height:auto;flex:1;min-height:0}.contact-photo img{object-position:center 23%}
}
@media(max-width:700px){
 .slide{padding:18px}.cover{padding:0;grid-template-rows:minmax(0,1fr) 27%}
 .slide-heading{gap:9px;margin-bottom:14px;padding-bottom:13px}
 .slide-heading .eyebrow{font-size:9px}.slide-intro{font-size:11px}
 .cover-copy{top:27%;left:5.5%;max-width:49%;width:49%}.cover-copy>.eyebrow{font-size:7px}
 .cover-role{font-size:clamp(12px,2.15cqh,17px);line-height:1.4}.cover .gold-rule{margin:14px 0}
 .cover-description{font-size:clamp(10px,1.7cqh,13px)}.cover-name{font-size:clamp(31px,5.8cqh,47px);margin-top:20px}
 .cover-about{font-size:10px;margin-top:13px}.cover-portrait{left:34%;height:103%;bottom:-3%}
 .selected{padding:12px 5.5%}.selected-heading .eyebrow{font-size:8px}.selected-grid a>span{font-size:6px;letter-spacing:.04em}.selected-grid{gap:6px}
 .about{grid-template-rows:36% minmax(0,1fr);gap:18px}.about-copy{align-self:center}
 .about-copy h2{font-size:clamp(36px,6cqh,46px);margin-top:10px}.about-copy>p:not(.eyebrow){font-size:clamp(12px,1.85cqh,15px);line-height:1.65}
 .about-copy .gold-rule{margin:14px 0}.expertise{gap:7px 14px;padding:14px 0 7px}.expertise span{font-size:8px}.about-copy .text-link{font-size:10px;padding:6px 0}
 .process .slide-heading{padding-bottom:14px;margin-bottom:10px}.process h2{font-size:clamp(39px,7cqh,56px)}
 .process-layout{display:flex;gap:15px}.process-steps{padding:0;border:0;gap:12px}
 .process-steps>div{display:block;padding:2px 0 12px}.process-steps b{font-size:clamp(34px,5.5cqh,43px);margin-bottom:5px}.process-steps span{font-size:8px;line-height:1.5;max-width:none}
 .process-copy{font-size:clamp(11.5px,1.93cqh,15px);line-height:1.7;align-self:stretch}.process-copy p+p{margin-top:16px}.process-copy .serif-note{font-size:clamp(24px,4cqh,32px)}
 .film-layout{min-height:0;gap:0}.film-grid{gap:0}.film,.film:only-child{flex:1 1 0!important;max-width:100%}
 .film-caption h3{font-size:12px}.film-number{font-size:20px}.film-field{font-size:8px}.film-caption{min-height:35px;padding-top:10px}
 .contact{display:flex;flex-direction:column;gap:18px;padding:20px 18px}.contact-copy{align-self:stretch}
 .contact h2{font-size:clamp(35px,6.1cqh,47px);padding-right:0}.contact h2 br:nth-of-type(2){display:none}
 .contact-copy .eyebrow{font-size:9px;max-width:none;margin-bottom:13px}
 .contact .thanks{font-size:clamp(12px,1.8cqh,15px);line-height:1.65;margin:18px 0}
 .email{font-size:clamp(29px,4.8cqh,36px);padding-bottom:8px;gap:20px}
 .socials{gap:24px;margin-top:10px}.socials .text-link{font-size:11px;padding:8px 0}.contact-name{display:none}
 .contact-photo{position:relative;top:auto;right:auto;width:100%;height:auto;flex:1;min-height:0}.contact-photo img{object-position:center 15%}.contact-photo>span{font-size:56px;right:18px;bottom:7px}
}
@media(max-width:700px) and (max-height:740px){
 .cover-role{font-size:12px}.cover-name{font-size:30px;margin-top:13px}.cover .gold-rule{margin:10px 0}.cover-about{margin-top:10px;font-size:9px}
 .about{grid-template-rows:28% minmax(0,1fr);gap:13px}.about-copy h2{font-size:33px}.about-copy>p:not(.eyebrow){font-size:11px}.about-copy .gold-rule{margin:10px 0}.expertise{padding:10px 0 5px;gap:5px 12px}
 .process h2{font-size:37px}.process-copy{font-size:11px;line-height:1.6}.process-copy p+p{margin-top:12px}.process-copy .serif-note{font-size:22px}.process-layout{gap:12px}.process-steps b{font-size:30px}
 .contact{gap:12px;padding-top:18px}.contact h2{font-size:33px}.contact .thanks{font-size:11px;margin:14px 0}.contact-copy .eyebrow{font-size:8px;margin-bottom:10px}.email{font-size:29px}.socials{margin-top:6px}.socials .text-link{font-size:10px}.contact-photo{min-height:90px}
}
@media(min-width:701px) and (max-height:750px){
 .cover-copy{top:44%}.cover-role{font-size:19px}.cover-name{font-size:36px;margin-top:13px}.cover-description{font-size:12px}.cover .gold-rule{margin:12px 0}
 .about-copy h2{font-size:48px}.about-copy>p:not(.eyebrow){font-size:13px}.expertise{padding:17px 0;gap:10px 17px}
 .process h2{font-size:47px}.process-copy{font-size:13px;line-height:1.6}.process-copy p+p{margin-top:16px}.process-copy .serif-note{font-size:25px}.process-steps b{font-size:44px}
 .contact h2{font-size:48px}.contact .thanks{font-size:13px;margin:18px 0}.email{font-size:32px}.socials{margin-top:12px}.contact-name{font-size:26px;margin-top:14px}
}
