/* Team photography. Motion moves the frame, never the people. */
.about-page .page-main{overflow:clip}
.about-page .about-hero{position:relative;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.55fr);align-items:center;gap:3vw;min-height:max(820px,100svh);padding-top:140px;padding-bottom:110px}
.about-page .about-hero h1{font-size:clamp(62px,5.2vw,96px);margin:30px 0 28px;line-height:1.03}
.about-opening{max-width:430px;color:#536154;margin:0;font-size:15px!important;line-height:1.85!important}
.about-hero-copy .down-link{margin-top:27px}
.about-hero-copy .down-link span{background:var(--brand-black);border-color:var(--brand-black);color:var(--brand-lime)}
.about-portrait-stage{position:relative;height:clamp(560px,46vw,740px);width:100%;isolation:isolate}
.team-photo{margin:0;min-width:0}
.photo-window{position:relative;display:block;overflow:hidden;background:#222923;isolation:isolate}
.photo-window img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%;transform:translate3d(0,var(--photo-y,0px),0) scale(1.065);transform-origin:center;will-change:transform}
.photo-window:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff0a;pointer-events:none}
.photo-expand{position:absolute;right:15px;bottom:15px;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#11131075;border:1px solid #ffffff48;backdrop-filter:blur(8px);font-size:20px;transition:background .2s,color .2s}
.photo-window:hover .photo-expand,.photo-window:focus-visible .photo-expand{background:var(--brand-lime);color:var(--brand-black);border-color:transparent}
.team-photo figcaption{font-size:10px;line-height:1.6;padding-top:14px;letter-spacing:.1px;color:#65705d}
.portrait-main{position:absolute;inset:0 0 12% 46%}
.portrait-main .photo-window{height:100%;border-radius:2px}
.portrait-main figcaption{text-align:right}
.portrait-inset{position:absolute;left:-1%;bottom:0;width:54%;height:88%;z-index:2;transform:rotate(-2deg);padding:6px;background:var(--paper);box-shadow:0 20px 45px -25px #11131066}
.portrait-inset .photo-window{height:100%;border-radius:2px}
.portrait-inset figcaption{padding:14px 0 0;font-size:10px;color:#65705d}
.portrait-inset .photo-window img{object-position:50% 68%}
.portrait-note{position:absolute;bottom:0;right:0;font-size:7px;letter-spacing:1.6px;line-height:1.8;text-align:right;color:#738169}
.about-hero-foot{position:absolute;bottom:15px;left:7vw;right:7vw;border-top:1px solid #20352524;padding-top:17px;display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1.4px;color:#6c7964}
.about-motion{background:transparent;color:#46523e;font-size:9px;min-height:34px;display:flex;align-items:center;gap:12px;padding:0 0 0 10px;letter-spacing:0}
.about-motion[hidden]{display:none}.about-motion>span{font-size:12px}
.inside-section{background:var(--brand-black);color:var(--paper);padding:80px 4vw 30px;position:relative;scroll-margin-top:80px!important}
.inside-portrait-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10vw;align-items:center;padding:0 3vw;max-width:1600px;margin:auto}
.photo-portrait{width:100%;max-width:500px;justify-self:center}
.photo-portrait .photo-window{aspect-ratio:.76}
.photo-portrait .photo-window img{object-position:50% 60%}
.inside-copy .section-kicker{color:#b9c3b1;margin:0 0 30px;font-size:8px}
.about-page .inside-copy h2{font-size:clamp(50px,5.5vw,94px);margin:0 0 30px}
.inside-copy>p:not(.section-kicker){font-size:14px;line-height:1.9;margin:0 0 20px;max-width:345px;color:#bdc4b6}
.inside-copy .text-link{margin-top:13px;padding-bottom:12px;border-bottom:1px solid #ffffff35}
.inside-copy .text-link>span{color:var(--brand-lime)}
.inside-section figcaption{color:#b9c4b0}
.inside-foot{margin:42px 3vw 0;padding-top:23px;border-top:1px solid #ffffff1c;display:flex;justify-content:space-between;gap:20px;font-size:7px;letter-spacing:1.5px;color:#a3af99;line-height:1.7}
.inside-foot b{color:var(--brand-lime);font-size:16px;margin-left:10px;font-weight:400}
.about-page .about-story{padding-top:110px;padding-bottom:110px}
.about-page .team-section{grid-template-columns:1fr 1fr;gap:10vw;align-items:center;padding-top:0;padding-bottom:110px}
.focus-photo-layout{position:relative;padding-left:22px;padding-bottom:5px}
.photo-focus .photo-window{aspect-ratio:.82}
.photo-focus .photo-window img{object-position:center 65%}
.photo-margin-note{position:absolute;left:-4px;top:0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:7px;letter-spacing:1.5px;color:#738169}


.about-page .team-copy h2{margin-bottom:25px}
.team-lightbox{inset:0;position:fixed;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:23px 4vw 25px;border:0;background:#111310fa;color:var(--paper);overflow:hidden;grid-template-rows:auto minmax(0,1fr) auto;gap:20px;overscroll-behavior:contain}
.team-lightbox[open]{display:grid}.team-lightbox::backdrop{background:#111310}
.lightbox-top{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.6px}
.lightbox-close{display:flex;align-items:center;gap:20px;min-height:44px;background:transparent;padding:0 0 0 15px;font-size:12px}
.lightbox-close>span{font-size:30px;font-weight:400}
.lightbox-image-wrap{display:flex;align-items:center;justify-content:center;min-height:0;min-width:0}
.lightbox-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff20;padding-top:18px;gap:20px}
.lightbox-bottom>div:first-child{display:flex;align-items:center;gap:25px}
.lightbox-count{font-size:10px;color:var(--brand-lime);letter-spacing:1px}
.about-page .lightbox-bottom h2{font-size:19px;line-height:1.2;letter-spacing:-.4px;font-weight:400;margin:0}
.lightbox-controls{display:flex;gap:10px}
.lightbox-controls button{width:46px;height:46px;display:grid;place-items:center;background:transparent;border:1px solid #ffffff35;border-radius:50%;font-size:22px}
.lightbox-controls button:hover{background:var(--brand-lime);color:var(--brand-black);border-color:transparent}
.team-lightbox button:focus-visible{outline-color:var(--brand-lime)}
.photo-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.team-photo-open{overflow:hidden}
.about-photo-still .photo-window img{transform:none;will-change:auto}
@media(min-width:1800px){.about-page .about-hero{min-height:100svh}.about-opening{font-size:17px!important;max-width:470px}}
@media(max-width:1100px) and (min-width:701px){
 .about-page .about-hero{grid-template-columns:1fr;padding:145px 6vw 105px;gap:45px;min-height:0}
 .about-hero-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:6vw;align-items:center}
 .about-hero-copy>.section-kicker{grid-column:1 / -1}.about-page .about-hero h1{grid-row:2 / 4;font-size:7.6vw;margin:24px 0 0}
 .about-opening{grid-column:2;font-size:13px!important;margin-top:24px;max-width:95%}.about-hero-copy .down-link{grid-column:2;margin-top:15px}
 .about-portrait-stage{height:70vw;max-height:690px;width:94%;margin-left:3%}
 .portrait-note{font-size:6px;letter-spacing:1px}.about-page .team-section{gap:7vw}.about-page .team-copy h2{font-size:4.6vw}
}
@media(max-width:700px){
 .about-page .about-hero{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:120px 7vw 85px}
 .about-hero-copy{display:contents}.about-hero-copy>.section-kicker{order:0}.about-hero-copy>h1{order:1}.about-hero-copy>.about-opening{order:3;margin-top:38px}.about-hero-copy>.down-link{order:4}
 .about-page .about-hero h1{font-size:15vw;line-height:1.02;margin:24px 0 23px}
 .about-opening{font-size:12px!important;line-height:1.8!important;max-width:400px}
 .about-hero-copy .down-link{margin-top:18px;font-size:10px}
 .about-portrait-stage{order:2;height:100vw;max-height:650px;width:100%;margin-top:12px;margin-bottom:14px}
 .portrait-main{left:45%;right:-6%;bottom:15%}.portrait-main .photo-window{height:100%}.portrait-main figcaption{font-size:8px;padding-top:10px}
 .portrait-inset{left:-5%;bottom:0;width:59%;height:84%;padding:4px;transform:rotate(-2deg)}
 .portrait-inset figcaption{font-size:7px;padding-top:8px}.portrait-note{font-size:5px;letter-spacing:.7px;bottom:-5px;right:-2%}
 .photo-expand{right:10px;bottom:10px;width:30px;height:30px;font-size:18px}
 .about-hero-foot{bottom:19px;padding-top:12px;font-size:5px;letter-spacing:.8px}.about-motion{font-size:8px;gap:7px}
 .inside-section{padding:50px 5vw 25px;scroll-margin-top:68px!important}
.inside-portrait-layout{grid-template-columns:1fr;gap:38px;padding:0 2vw}
.photo-portrait{max-width:440px}.photo-portrait .photo-window{aspect-ratio:.78}
.inside-copy .section-kicker{font-size:6px;letter-spacing:1.2px;margin-bottom:23px}
.about-page .inside-copy h2{font-size:13vw;line-height:1.04;margin-bottom:25px}
.inside-copy>p:not(.section-kicker){font-size:12px;line-height:1.85;margin-bottom:17px;max-width:350px}
.inside-copy .text-link{margin-top:7px}
 .team-photo figcaption{font-size:9px;padding-top:12px}.portrait-inset figcaption{font-size:7px}.portrait-main figcaption{font-size:8px}
 .inside-foot{margin:30px 2vw 0;padding-top:20px;font-size:5px;letter-spacing:.75px}.inside-foot>span:first-child{max-width:145px}.inside-foot b{font-size:12px;margin-left:5px}
 .about-page .about-story{padding-top:65px;padding-bottom:60px}.about-page .team-section{grid-template-columns:1fr;gap:40px;padding-bottom:65px}
 .focus-photo-layout{padding-left:18px;margin-right:14px}.photo-margin-note{font-size:6px;letter-spacing:1px;left:0}.photo-focus .photo-window{aspect-ratio:.82}
 
 .about-page .team-copy h2{margin-top:22px;font-size:11vw}.about-page .team-copy p{font-size:13px}
 .team-lightbox{padding:14px 5vw 22px;gap:16px}.lightbox-top{font-size:6px;letter-spacing:1px}.lightbox-close{font-size:10px;gap:12px}.lightbox-close>span{font-size:27px}
 .lightbox-bottom{padding-top:15px;gap:14px}.lightbox-bottom>div:first-child{display:block}.lightbox-count{font-size:8px;display:block;margin-bottom:8px}.about-page .lightbox-bottom h2{font-size:14px;line-height:1.3}
 .lightbox-controls{gap:7px;flex-shrink:0}.lightbox-controls button{width:42px;height:42px;font-size:19px}
}
@media(prefers-reduced-motion:reduce){html:not(.about-photo-animated) .photo-window img{transform:none;will-change:auto}.photo-expand{transition:none}}
