/* Homepage video and real team portraits. Keep all rules out of the portal. */
.public-site.page-home .video-toggle{min-height:40px;max-width:calc(100% - 50px);line-height:1.4;cursor:pointer}
.public-site.page-home .video-toggle[hidden]{display:none}
.public-site.page-home .video-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
.public-site.page-home .hero-video{object-position:50% 50%}

.public-site.page-home .door-story{padding-top:0;padding-bottom:55px}
.public-site.page-home .door-story-heading{margin-bottom:35px;max-width:900px}
.public-site.page-home .door-story-heading h2{margin-bottom:0}
.public-site.page-home .door-story-frame{margin:0;overflow:hidden;border-radius:26px;background:#273d31;box-shadow:0 12px 32px #30433308}
.public-site.page-home .door-story-video{display:block;width:100%;height:auto;max-height:650px;aspect-ratio:16/9;object-fit:contain;background:#273d31}
.public-site.page-home .door-story-video:focus-visible{outline:3px solid var(--gold);outline-offset:-5px}
.public-site.page-home .door-story+.selected{padding-top:45px}

.public-site.page-home .about.about-team{display:block}
.public-site.page-home .team-intro{max-width:1040px;margin:0 auto 46px}
.public-site.page-home .team-intro .prose{max-width:760px}
.public-site.page-home .team-intro .text-link{margin-top:23px}
.public-site.page-home .team-portraits{max-width:1040px;margin-inline:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;align-items:start}
.public-site.page-home .team-card{min-width:0;margin:0;border:1px solid #d6ddd0;border-radius:23px;overflow:hidden;background:var(--cream);box-shadow:0 10px 30px #26392c05}
.public-site.page-home .team-portrait-frame{width:100%;aspect-ratio:4/5;overflow:hidden;background:#e4e8dd}
.public-site.page-home .team-portrait-frame>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%}
.public-site.page-home .team-card-freddy .team-portrait-frame>img{object-position:50% 20%}
.public-site.page-home .team-card figcaption{padding:24px 27px 27px;font:400 clamp(29px,3vw,41px)/1.16 "Robin Serif",Georgia,serif;letter-spacing:-.02em;color:var(--forest);overflow-wrap:anywhere}
.public-site.page-home .team-portrait-placeholder{display:grid;place-items:center;background:linear-gradient(140deg,#f8f6f0,#e6ebdf)}
.public-site.page-home .team-portrait-placeholder>.team-placeholder-key{width:64px;height:112px;object-fit:cover;object-position:center}

@media(max-width:1100px){
 .public-site.page-home .team-portraits{gap:25px}
 .public-site.page-home .team-card figcaption{padding:22px;font-size:34px}
}
@media(max-width:700px){
 .public-site.page-home .video-toggle{min-height:42px;font-size:11px;padding:9px 12px}
 .public-site.page-home .door-story{padding-top:8px;padding-bottom:30px}
 .public-site.page-home .door-story-heading{margin-bottom:25px}
 .public-site.page-home .door-story-heading h2{font-size:38px}
 .public-site.page-home .door-story-frame{border-radius:19px}
 .public-site.page-home .door-story+.selected{padding-top:25px}
 .public-site.page-home .team-intro{margin-bottom:32px}
 .public-site.page-home .team-portraits{grid-template-columns:minmax(0,1fr);gap:26px}
 .public-site.page-home .team-card{border-radius:19px}
 .public-site.page-home .team-portrait-frame{aspect-ratio:1/1.1}
 .public-site.page-home .team-card figcaption{padding:22px 23px 24px;font-size:34px}
}
@media(max-width:380px){
 .public-site.page-home .door-story-heading h2{font-size:33px}
 .public-site.page-home .team-card figcaption{font-size:29px}
}
@media(prefers-reduced-motion:reduce){
 .public-site.page-home .video-toggle{transition:none}
}
