.about-page{--about-muted:#67665f;--about-line:#ceccc3;background:var(--paper)}
.about-page .site-header{position:absolute;color:var(--ink);border-bottom-color:var(--about-line);background:var(--paper)}
.about-page .site-header.is-scrolled{position:fixed;background:rgba(241,239,233,.96)}
.about-page .brand img{filter:none}
.about-page .desktop-nav a[aria-current=page]:after{right:0}
.about-page .desktop-nav a,.about-page .header-cta{font-size:.75rem}
.about-page.menu-open .site-header{color:#fff;background:var(--ink);border-bottom-color:rgba(255,255,255,.15)}
.about-page.menu-open .brand img{filter:brightness(0) invert(1)}
.about-page :focus-visible{outline:2px solid #817256;outline-offset:5px}
.about-page button{color:inherit;cursor:pointer}
.about-page button:disabled{cursor:default}
.about-page [hidden]{display:none!important}
.about-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.about-eyebrow{margin:0 0 20px;font-size:.75rem;font-weight:500;line-height:1.5;letter-spacing:.17em}
.team-experience{padding:140px var(--gutter) 48px;max-width:1770px;margin:auto}
.team-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}
.team-intro .about-eyebrow{color:var(--about-muted);margin-bottom:16px}
.team-intro h1{margin:0;font-size:clamp(2.125rem,4.25vw,4.5rem);font-weight:400;line-height:1.16;letter-spacing:-.052em;text-wrap:balance}
.mobile-break{display:none}
.story-link{display:flex;gap:28px;align-items:center;flex-shrink:0;min-height:44px;font-size:.875rem;line-height:1.5}
.story-link .arrow-icon{width:20px;height:20px}
.story-link:hover{text-decoration:underline;text-underline-offset:6px}
.team-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(135px,18%);gap:clamp(30px,5vw,90px);align-items:center;isolation:isolate}
.team-profiles{min-width:0}
.team-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.96fr);gap:clamp(32px,4vw,64px);align-items:center}
.person-copy{min-width:0;padding:24px 0}
.person-category{margin:0 0 30px;color:var(--about-muted);font-size:.75rem;letter-spacing:.17em}
.person-copy h2{margin:0;font-size:clamp(2.25rem,4vw,4.15rem);font-weight:400;line-height:1.09;letter-spacing:-.035em;overflow-wrap:anywhere}
.person-copy h2 span{color:#81745e}
.person-role{margin:24px 0 38px;max-width:340px;font-size:.875rem;line-height:1.75}
.person-bio{max-width:390px;min-width:0}
.person-bio summary{display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(100%,220px);min-height:48px;list-style:none;border-bottom:1px solid #aaa697;cursor:pointer;font-size:.875rem;line-height:1.5}
.person-bio summary::-webkit-details-marker{display:none}
.bio-plus{position:relative;display:block;width:16px;height:16px;flex:none}
.bio-plus:before,.bio-plus:after{content:"";position:absolute;left:0;top:7px;width:16px;height:1px;background:currentColor}
.bio-plus:after{transform:rotate(90deg);transition:transform .25s}
.person-bio[open] .bio-plus:after{transform:rotate(0)}
.person-bio p{margin:24px 0 0;color:var(--about-muted);font-size:1rem;line-height:1.75}
.person-portrait{position:relative;margin:0;width:100%;max-width:470px;aspect-ratio:500/590;overflow:hidden;background:#fafafa;touch-action:pan-y}
.team-next-preview{padding:0;border:0;background:none;text-align:left;align-self:center;min-width:0}
.next-portrait{display:block;aspect-ratio:500/590;overflow:hidden;background:#fafafa}
.next-portrait img{opacity:.64;transition:opacity .4s,transform .7s cubic-bezier(.2,.65,.2,1)}
.team-next-preview:hover .next-portrait img,.team-next-preview:focus-visible .next-portrait img{opacity:1;transform:scale(1.025)}
.next-caption{display:flex;gap:18px;align-items:flex-end;justify-content:space-between;margin-top:20px}
.next-caption>span{min-width:0}
.next-caption small{display:block;margin-bottom:6px;color:var(--about-muted);font-size:.75rem;line-height:1.6;letter-spacing:.12em}
.next-name{display:block;font-size:.875rem;line-height:1.5}
.next-caption .arrow-icon{flex:none;width:22px;height:22px;margin-bottom:2px}
.gallery-control{display:none}
.gallery-ready .team-next-preview{display:block}
.gallery-ready .team-navigation{display:block}
.team-navigation{margin-top:35px;border-top:1px solid var(--about-line)}
.team-tools{display:flex;gap:24px;align-items:center;justify-content:space-between;padding-top:11px}
.team-filters{display:flex;flex-wrap:wrap;gap:8px 28px}
.team-filters button{position:relative;min-height:48px;padding:10px 0;border:0;background:none;color:var(--about-muted);font-size:.875rem;line-height:1.5}
.team-filters button:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.team-filters button[aria-pressed=true]{color:var(--ink)}
.team-filters button[aria-pressed=true]:after,.team-filters button:hover:after{transform:scaleX(1)}
.team-pagination{display:flex;align-items:center;gap:30px;flex-shrink:0}
.team-count{margin:0;min-width:62px;white-space:nowrap;font-size:.875rem;line-height:1.5;letter-spacing:.06em;color:var(--about-muted);font-variant-numeric:tabular-nums}
#team-current{color:var(--ink)}
.team-arrows{display:flex;gap:10px}
.team-arrows button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--about-line);border-radius:50%;background:transparent;transition:background .25s,border-color .25s}
.team-arrows button .arrow-icon{width:21px;height:21px}
.team-arrows .team-previous .arrow-icon{transform:rotate(180deg)}
.team-arrows button:hover:not(:disabled){background:#e1ddd2;border-color:#a39881}
.team-arrows button:disabled{opacity:.32}
.team-thumbnails{display:flex;gap:clamp(15px,2vw,30px);overflow-x:auto;padding:24px 4px 8px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:#b4ac9d transparent;overscroll-behavior-x:contain}
.team-thumb{position:relative;padding:0 0 12px;flex:0 0 74px;width:74px;border:0;background:none;text-align:center;font-size:.75rem;line-height:1.5}
.thumb-photo{display:block;width:74px;aspect-ratio:1;overflow:hidden;background:#fff}
.thumb-photo img{opacity:.52;transition:opacity .3s}
.thumb-name{display:block;margin-top:9px}
.team-thumb[aria-pressed=true] .thumb-photo img,.team-thumb:hover .thumb-photo img,.team-thumb:focus-visible .thumb-photo img{opacity:1}
.team-thumb:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#8b7b5e;transform:scaleX(0);transition:transform .3s}
.team-thumb[aria-pressed=true]:after{transform:scaleX(1)}
/* One crop per person keeps head size and headroom consistent in every gallery frame.
   Width sets the zoom; translate uses percentages of the original image, so mobile
   and square thumbnails keep the same focal point without stretching the photo. */
.next-portrait,.thumb-photo{position:relative}
.team-experience img[data-portrait]{position:absolute;display:block;top:0;left:50%;width:var(--portrait-width);height:auto;max-width:none;translate:var(--portrait-x) var(--portrait-y)}
.team-experience img[data-portrait="david"]{--portrait-width:113.756584%;--portrait-x:-44.600000%;--portrait-y:1.452542%}
.team-experience img[data-portrait="brian"]{--portrait-width:113.756584%;--portrait-x:-51.400000%;--portrait-y:1.452542%}
.team-experience img[data-portrait="todd"]{--portrait-width:101.654942%;--portrait-x:-48.800000%;--portrait-y:0.842542%}
.team-experience img[data-portrait="andy"]{--portrait-width:137.820398%;--portrait-x:-49.800000%;--portrait-y:-4.138814%}
.team-experience img[data-portrait="helga"]{--portrait-width:129.517908%;--portrait-x:-50.200000%;--portrait-y:-0.492712%}
.team-experience img[data-portrait="jennifer"]{--portrait-width:129.909271%;--portrait-x:-51.600000%;--portrait-y:-0.336102%}
.team-experience img[data-portrait="jordan"]{--portrait-width:197.247996%;--portrait-x:-50.400000%;--portrait-y:-6.704600%}
.team-experience img[data-portrait="luciano"]{--portrait-width:156.128407%;--portrait-x:-31.571876%;--portrait-y:-3.732012%}
.team-experience img[data-portrait="larissa"]{--portrait-width:166.989603%;--portrait-x:-31.706225%;--portrait-y:-4.433078%}
.team-experience img[data-portrait="daniel"]{--portrait-width:189.393939%;--portrait-x:-47.200000%;--portrait-y:-7.368000%}
.team-experience img[data-portrait="everton"]{--portrait-width:192.825354%;--portrait-x:-50.400000%;--portrait-y:-3.629000%}
.team-experience img[data-portrait="humberto"]{--portrait-width:154.495558%;--portrait-x:-36.945813%;--portrait-y:-2.699933%}
.team-experience img[data-portrait="brandon"]{--portrait-width:168.454436%;--portrait-x:-33.049709%;--portrait-y:-3.792039%}
.team-experience img[data-portrait="curtis"]{--portrait-width:87.072596%;--portrait-x:-51.735722%;--portrait-y:1.805250%}
.team-experience img[data-portrait="miranda"]{--portrait-width:181.682085%;--portrait-x:-31.347962%;--portrait-y:-4.434044%}
/* The shorter thumbnail can show a wider crop of Daniel without the original card arrow. */
.thumb-photo img[data-portrait="daniel"]{--portrait-width:174.796450%;--portrait-y:-7.081400%}
/* A narrow edge fade blends Curtis's reduced source photo into the white frame. */
.team-experience img[data-portrait="curtis"]{mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.about-story{padding:clamp(75px,9vw,144px) var(--gutter);background:#191f1b;color:#f1efe9;display:grid;grid-template-columns:1.3fr .7fr;gap:50px 8vw}
.story-heading .about-eyebrow{color:var(--stone);margin-bottom:42px}
.story-heading h2{margin:0;font-size:clamp(2.25rem,4.7vw,5rem);font-weight:400;line-height:1.16;letter-spacing:-.045em;text-wrap:balance}
.story-heading h2 em{font-family:var(--serif);font-weight:400;color:var(--stone)}
.story-copy{max-width:490px;align-self:end;color:#cad0c7;font-size:1rem;line-height:1.85}
.story-copy p{margin:0 0 24px}.story-copy p:last-child{margin:0}
.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1;gap:clamp(25px,6vw,100px);margin-top:42px}
.about-values article{border-top:1px solid rgba(199,185,158,.32);padding-top:24px;min-width:0}
.about-values article>span{font-size:.75rem;letter-spacing:.12em;color:var(--stone)}
.about-values h3{font-size:clamp(1.5rem,2.3vw,2.5rem);font-weight:400;letter-spacing:-.035em;line-height:1.25;margin:30px 0 18px;overflow-wrap:anywhere}
.about-values p{max-width:330px;color:#bcc5b8;font-size:1rem;line-height:1.8;margin:0}
.about-roster{padding:clamp(75px,9vw,144px) var(--gutter)}
.roster-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:70px}
.roster-heading .about-eyebrow{color:var(--about-muted);margin-bottom:32px}
.roster-heading h2{margin:0;font-size:clamp(2.5rem,5.5vw,5.75rem);font-weight:400;line-height:1.12;letter-spacing:-.05em}
.roster-heading h2 em{font-family:var(--serif);font-weight:400;color:#81745e}
.roster-heading>p{margin:0 0 5px;font-size:1rem;line-height:1.85;color:var(--about-muted)}
.roster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(25px,4vw,65px)}
.roster-group{min-width:0;border-top:1px solid #a9a492}
.roster-group h3{display:flex;align-items:baseline;gap:18px;min-height:83px;padding:25px 0 18px;margin:0;font-size:.875rem;font-weight:500;line-height:1.6}
.roster-group h3>span{color:#81745e;font-size:.75rem;flex:none}
.roster-group ul{margin:0;padding:0;list-style:none}
.roster-group li{padding:20px 0;border-top:1px solid #d2d0c7}
.roster-group li>span{display:block;font-size:1rem;line-height:1.45}
.roster-group small{display:block;margin-top:7px;color:var(--about-muted);font-size:.875rem;line-height:1.65}
.about-invitation{padding:clamp(60px,7vw,112px) var(--gutter);background:#ddd7c9}
.about-invitation>.about-eyebrow{color:#565248;margin-bottom:34px}
.about-invitation>a{display:flex;justify-content:space-between;align-items:center;gap:40px;max-width:1600px}
.about-invitation h2{margin:0;font-size:clamp(3.5rem,9.2vw,9rem);font-weight:400;line-height:.98;letter-spacing:-.055em}
.about-invitation h2 em{font-family:var(--serif);font-weight:400;color:#716551}
.invitation-arrow{display:grid;place-items:center;border:1px solid #a39c89;border-radius:50%;width:clamp(75px,12vw,180px);aspect-ratio:1;flex:none;transition:background .3s,transform .5s}
.invitation-arrow .arrow-icon{width:37%;height:37%;stroke-width:1}
.about-invitation>a:hover .invitation-arrow{background:#eee9de;transform:translate(4px,-4px)}
.invitation-bottom{margin-top:62px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #b7af9d;padding-top:24px;font-size:.875rem;line-height:1.6}
.invitation-bottom>a{min-height:44px;display:flex;align-items:center;white-space:nowrap}
@media(min-width:1500px){.team-profile{grid-template-columns:minmax(0,1fr) 470px}.team-experience{padding-top:160px}.team-intro{margin-bottom:45px}}
@media(max-width:1100px){
 .about-page .site-header{grid-template-columns:210px 1fr auto}
 .team-stage{grid-template-columns:minmax(0,1fr) 150px;gap:28px}
 .team-profile{grid-template-columns:minmax(0,1fr) minmax(225px,1.08fr);gap:30px}
 .person-copy h2{font-size:clamp(2rem,3.8vw,3rem)}
 .team-tools{align-items:flex-start}.team-pagination{gap:18px;padding-top:0}.team-filters{gap:0 20px}
 .about-story{grid-template-columns:1fr 1fr;gap:40px 50px}
 .roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 65px}
 .roster-group h3{min-height:0}
}
@media(max-width:760px){
 .about-page .site-header,.about-page .site-header.is-scrolled{grid-template-columns:1fr auto}
 .team-experience{padding:103px 20px 35px}
 .team-intro{align-items:flex-end;gap:20px;margin-bottom:25px}
 .team-intro .about-eyebrow{margin-bottom:13px}
 .team-intro h1{font-size:clamp(2rem,7vw,3.25rem);line-height:1.16;letter-spacing:-.045em}
 .mobile-break{display:block}
 .story-link{font-size:.875rem;gap:10px;align-self:flex-end;min-height:48px}
 .story-link .arrow-icon{width:17px;height:17px}
 .team-stage{display:block}
 .team-profile{display:flex;flex-direction:column;gap:0;align-items:stretch}
 .person-portrait{order:-1;width:100%;max-width:440px;aspect-ratio:500/550;align-self:center}
 .person-copy{padding:26px 0 4px}
 .person-category{margin:0 0 12px;font-size:.75rem}
 .person-copy h2{font-size:clamp(2.125rem,9vw,3.5rem);line-height:1.15;letter-spacing:-.04em}
 .person-copy h2 br{display:none}
 .person-copy h2 span{display:inline}
 .person-role{margin:13px 0 20px;max-width:100%}
 .person-bio{max-width:100%}
 .person-bio summary{min-height:44px;width:100%}
 .person-bio p{margin:20px 0 0}
 .gallery-ready .team-next-preview{display:none}
 .team-navigation{margin-top:26px}
 .team-tools{position:relative;display:flex;flex-direction:column-reverse;align-items:stretch;gap:5px;padding-top:13px}
 .team-pagination{justify-content:space-between;padding:0}
 .team-filters{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;gap:25px;padding:4px 2px 1px;scrollbar-width:none}
 .team-filters button{flex:none;min-height:46px;font-size:.875rem}
 .team-thumbnails{padding-top:18px;gap:19px}
 .team-thumb{flex-basis:65px;width:65px}.thumb-photo{width:65px}
 .about-story{display:block;padding:65px 20px}
 .story-heading .about-eyebrow{margin-bottom:30px}
 .story-heading h2{font-size:clamp(2rem,7.3vw,3rem);line-height:1.22}
 .story-copy{margin-top:35px;max-width:100%}
 .about-values{display:block;margin-top:45px}
 .about-values article{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:15px;padding:24px 0}
 .about-values article:last-child{padding-bottom:0}
 .about-values article>span{grid-column:1;grid-row:1;margin-top:6px}
 .about-values h3{grid-column:2;margin:0 0 13px;font-size:1.75rem}
 .about-values p{grid-column:2;max-width:100%}
 .about-roster{padding:65px 20px}
 .roster-heading{display:block;margin-bottom:42px}
 .roster-heading .about-eyebrow{margin-bottom:25px}
 .roster-heading h2{font-size:clamp(2.25rem,8.8vw,4rem)}
 .roster-heading>p{margin-top:25px}
 .roster-grid{gap:35px 25px}
 .roster-group h3{display:block;padding-top:20px;font-size:.875rem}
 .roster-group h3>span{display:block;margin-bottom:7px}
 .roster-group li{padding:18px 0}
 .roster-group li>span{font-size:1rem}
 .roster-group small{font-size:.875rem}
 .about-invitation{padding:55px 20px 25px}
 .about-invitation>.about-eyebrow{margin-bottom:30px}
 .about-invitation>a{gap:15px}
 .about-invitation h2{font-size:clamp(3rem,13.6vw,5.5rem)}
 .invitation-arrow{width:65px}
 .invitation-bottom{display:block;margin-top:38px;font-size:.875rem}.invitation-bottom>a{margin-top:10px}
}
@media(max-width:380px){.roster-grid{grid-template-columns:minmax(0,1fr)}.roster-group h3{display:flex;gap:20px}.roster-group h3>span{margin:0}.story-link{font-size:.75rem;gap:7px}.team-intro h1{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){.about-page *, .about-page *:before,.about-page *:after{scroll-behavior:auto!important;transition:none!important}.team-profile{animation:none!important}}
@media print{.about-page .site-header{position:static}.team-experience{padding-top:30px}.gallery-control,.story-link,.about-invitation,.page-progress{display:none!important}.team-stage{display:block}.team-profile{display:grid;break-inside:avoid}.person-portrait{max-width:240px}.about-story{background:#fff;color:#111}.about-story p,.about-story em,.about-story span{color:#444}.roster-group{break-inside:avoid}.about-page .site-footer{display:none}}
