/* A single centred sequence; image groups remain intact inside each frame. */
.case-page{padding-top:clamp(30px,3.6vw,52px)}.case-intro{max-width:690px;margin:0 auto clamp(48px,6vw,85px);text-align:center}.case-intro h1{margin:0 0 12px;font-size:clamp(28px,3vw,38px);font-weight:400;line-height:1.3;letter-spacing:.005em}.case-intro p{margin:0 0 19px;color:var(--copy);font-size:var(--body-copy-size);line-height:var(--body-copy-leading)}.case-intro p:last-child{margin-bottom:0}.case-intro .case-category{font-size:12px;color:#777;margin-bottom:28px;line-height:1.6}.case-intro a{text-decoration:underline;text-underline-offset:4px}.home-project__presents{font-size:.5em;color:#777;font-weight:300}.home-project__work-title{display:block;font-size:.9em;margin-top:5px}
.case-stream{width:min(100%,800px);margin-inline:auto}.case-page--wide .case-stream{max-width:1040px;width:100%}.case-frame{margin:0;min-width:0}.case-frame+.case-frame::before{content:"";display:block;width:1px;height:40px;background:#d8d8d8;margin:32px auto}.case-frame>div{width:100%;margin:0 auto}.case-frame img,.case-frame video{display:block;width:100%;height:auto;max-width:100%}.lex-panel{border:1px solid #d6d6d6;overflow:hidden}.case-frame>.lex-panel--small{width:78%}.departure-board{aspect-ratio:1049/498;overflow:hidden;border:1px solid #d3d3d3;background:#292f37}.departure-board iframe{display:block;width:100%;height:100%;border:0}.statistics-frame{overflow:hidden}.statistics-frame .sotik-gallery__statistics-video{width:110%;max-width:none;margin-left:-5%}
.school-case__head{text-align:center;margin-bottom:27px}.school-case__heading h2{font-size:23px;font-weight:400;line-height:1.3;margin:0 0 9px}.school-case__discipline{margin:0;color:#777;font-size:12px;line-height:1.6}.school-case__copy{max-width:690px;margin:27px auto 0;text-align:center;color:var(--copy);font-size:var(--body-copy-size);line-height:var(--body-copy-leading)}.school-case__copy p{margin:0 0 18px}.school-case__copy p:last-child{margin:0}
.portfolio-home{padding-top:clamp(30px,3.6vw,52px)}.portfolio-intro{max-width:710px;margin:0 auto clamp(45px,5.5vw,78px);text-align:center}.portfolio-intro h1{font-size:clamp(28px,3.3vw,44px);line-height:1.3;font-weight:400;margin:0 0 24px}.portfolio-intro p{max-width:510px;margin:0 auto;color:var(--copy);font-size:15px;line-height:1.8}.project-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}.project-card{min-width:0}.project-card:hover{text-decoration:none}.project-card__image{aspect-ratio:1.42;overflow:hidden;background:#f3f3f1}.project-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.project-card:hover img{transform:scale(1.025)}.project-card__caption{margin-top:16px}.project-card h2{font-size:16px;font-weight:400;margin:0 0 7px}.project-card p{font-size:11px;color:#777;line-height:1.6;margin:0}.project-card:hover h2{color:#444}
/* Scroll scenes stay in the stream; the tall track provides room to scrub. */
.scroll-scene{position:relative;height:135vh;min-height:700px}.scroll-scene>span{position:sticky;top:max(20px,calc((100dvh - 565px)/2));display:block;width:100%;overflow:hidden;isolation:isolate;background:#efefef}.elevate-parallax{aspect-ratio:2048/1448}.sotik-parallax{aspect-ratio:16/9}.scroll-scene img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill;pointer-events:none;user-select:none}.sotik-parallax__motion{position:absolute;inset:0;visibility:hidden}.scroll-scene.is-ready .sotik-parallax__motion{visibility:visible}.sotik-parallax__poster{z-index:5}.scroll-scene.is-ready .sotik-parallax__poster{visibility:hidden}.sotik-parallax__layer--base{z-index:0}.sotik-parallax__layer--one{z-index:1}.sotik-parallax__layer--two{z-index:2}.sotik-parallax__layer--three{z-index:3}.sotik-parallax__layer--text{z-index:4}.elevate-parallax__layer--base{z-index:0;transform-origin:center}.elevate-parallax__layer--pitch{z-index:1;opacity:0}.elevate-parallax__layer--players{z-index:2;transform-origin:50% 0%}.elevate-parallax__layer--base{transform:scale(1.34) translateX(-2%)}.elevate-parallax__layer--players{transform:scale(1.045)}
@media(max-width:1100px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 22px}}
@media(max-width:760px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:690px){.case-intro{margin-bottom:40px}.case-intro p{line-height:1.72}.case-frame+.case-frame::before{height:32px;margin:25px auto}.case-frame>.lex-panel--small{width:91%}.school-case__copy{margin-top:22px}.school-case__heading h2{font-size:21px}.scroll-scene{height:100vh;min-height:570px}.scroll-scene>span{top:28vh}.statistics-frame .sotik-gallery__statistics-video{width:118%;margin-left:-9%}.project-grid{gap:33px 18px}.project-card h2{font-size:14px}.project-card p{font-size:10px}}
@media(max-width:480px){.project-card__caption{margin-top:12px}.project-card h2{font-size:14px}.project-card p{font-size:10px}.portfolio-intro h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){.scroll-scene{height:auto;min-height:0}.scroll-scene>span{position:relative;top:0}.elevate-parallax__layer--base,.elevate-parallax__layer--players{transform:none!important;filter:none!important}.elevate-parallax__layer--pitch{opacity:1}.project-card__image img{transition:none}}

/* V16: the five areas of practice, then a deliberately quieter selected-work row. */
.portfolio-collections,.portfolio-recent{max-width:1200px;margin-inline:auto}
.project-grid--collections{grid-template-columns:repeat(3,minmax(0,1fr))}
.project-grid--recent{grid-template-columns:repeat(4,minmax(0,1fr))}
.project-card--placeholder{cursor:default}
.project-card__image--placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#f7f7f6;border:1px solid #dededc;color:#888}
.project-card__placeholder-mark{font-size:31px;font-weight:300;line-height:1}
.project-card__placeholder-text{font-size:13px;letter-spacing:.02em}
.project-card--placeholder h2{color:#777}
.portfolio-section-divider{display:flex;align-items:center;gap:22px;margin:clamp(65px,8vw,105px) auto clamp(32px,4vw,50px);color:#646464}
.portfolio-section-divider>span{height:1px;background:#d6d6d6;flex:1}
.portfolio-section-divider h2{font-size:12px;font-weight:400;letter-spacing:.13em;text-transform:uppercase;margin:0;line-height:1.5;white-space:nowrap}
/* Brand & Marketing: the same Education case-study rhythm, with paired artwork. */
.brand-case__gallery{width:100%}
.brand-case__gallery--pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.brand-case__gallery img{display:block;width:100%;height:auto;max-width:100%}
.brand-case__gallery--single{max-width:880px;margin-inline:auto}
.brand-case__gallery--light .brand-case__light-frame{border:1px solid #dadada;background:#fff;overflow:hidden;min-width:0}
.brand-case__gallery--light img{width:100%;height:auto;display:block}
@media(max-width:1100px){.project-grid--collections{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid--recent{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.project-grid--recent{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.project-grid--collections{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-case__gallery--pair{gap:11px}}
@media(max-width:580px){.brand-case__gallery--pair{grid-template-columns:1fr;gap:12px}.project-card__placeholder-text{font-size:11px}.portfolio-section-divider{gap:13px;margin:58px auto 35px}}


/* V17 drop-ins: editorial, compact home index. The Work popover keeps V16 styling. */
.portfolio-home--split{padding-top:clamp(54px,6.6vw,98px)}
.portfolio-home__layout{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(270px,0.91fr) minmax(0,1.66fr);column-gap:clamp(48px,6.1vw,108px);align-items:start}
.portfolio-home__intro-column{min-width:0;align-self:stretch}
.portfolio-home--split .portfolio-intro{position:sticky;top:clamp(100px,13vh,170px);text-align:left;max-width:none;margin:4px 0 0}
.portfolio-home--split .portfolio-intro h1{font-size:clamp(34px,3.5vw,53px);line-height:1.24;letter-spacing:-.025em;margin:0 0 27px;font-weight:400}
.portfolio-home--split .portfolio-intro p{text-align:left;max-width:350px;margin:0;font-size:15px;line-height:1.8}
.portfolio-home__work-column{min-width:0;width:100%;max-width:760px;justify-self:end}
.portfolio-home--split .project-grid{max-width:none}
.portfolio-home--split .project-grid--collections{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-auto-rows:auto;gap:19px 15px}
.portfolio-home--split .project-card--featured{grid-row:span 2;display:flex;flex-direction:column}
.portfolio-home--split .project-card--featured .project-card__image{aspect-ratio:auto;flex:1;min-height:0;background:#22180f}
.portfolio-home--split .project-card--featured .project-card__image img{object-position:center center}
.portfolio-home--split .project-card__image{aspect-ratio:1.42}
.portfolio-home--split .project-card__caption{margin-top:9px}
.portfolio-home--split .project-card h2{font-size:12px;margin:0 0 3px;line-height:1.45;font-weight:400}
.portfolio-home--split .project-card p{font-size:10px;line-height:1.35;color:#777}
.portfolio-home--split .portfolio-section-divider{margin:41px 0 24px;gap:13px}
.portfolio-home--split .portfolio-section-divider h2{font-size:10px;letter-spacing:.13em}
.portfolio-home--split .project-grid--recent{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.portfolio-home--split .project-grid--recent .project-card p{display:none}
.portfolio-home--split .site-footer{margin-top:clamp(65px,7vw,105px)}
/* Two P&I montages stacked; WMR matches a normal Aldates image (800px),
   while the paired air-identity images share the same cropped height. */
.brand-case__gallery--stack{display:flex;flex-direction:column;gap:24px}
.brand-case__gallery--single{max-width:800px}
.brand-case__gallery--light{align-items:stretch}
.brand-case__gallery--light .brand-case__light-frame{aspect-ratio:2048/1389}
.brand-case__gallery--light .brand-case__light-frame img{height:100%;width:100%;object-fit:cover;object-position:center center}
@media(max-width:1150px) and (min-width:861px){
  .portfolio-home__layout{grid-template-columns:minmax(270px,.9fr) minmax(0,1.5fr);column-gap:40px}
  .portfolio-home--split .portfolio-intro h1{font-size:clamp(30px,3.2vw,40px)}
  .portfolio-home--split .project-card p{display:none}
}
@media(max-width:860px){
  .portfolio-home--split{padding-top:42px}
  .portfolio-home__layout{display:block}
  .portfolio-home--split .portfolio-intro{position:static;max-width:710px;margin:0 0 44px;text-align:left}
  .portfolio-home--split .portfolio-intro h1{max-width:670px;font-size:clamp(29px,4.7vw,40px);margin-bottom:14px}
  .portfolio-home__work-column{max-width:none}
  .portfolio-home--split .project-grid--recent{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:620px){
  .portfolio-home--split{padding-top:36px}
  .portfolio-home--split .portfolio-intro{margin-bottom:34px}
  .portfolio-home--split .portfolio-intro h1{font-size:30px}
  .portfolio-home--split .project-grid--collections{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}
  .portfolio-home--split .project-card--featured{grid-row:auto;grid-column:span 2;display:block}
  .portfolio-home--split .project-card--featured .project-card__image{aspect-ratio:1.8}
  .portfolio-home--split .project-card--featured .project-card__image img{object-fit:cover}
  .portfolio-home--split .project-grid--recent{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 13px}
  .portfolio-home--split .project-card h2{font-size:12px}
  .portfolio-home--split .project-card p{font-size:10px}
  .portfolio-home--split .portfolio-section-divider{margin:42px 0 27px}
  .brand-case__gallery--stack{gap:14px}
  .brand-case__gallery--light .brand-case__light-frame{aspect-ratio:2048/1389}
}


/* V18: six compact positions in the homepage work panel.
   The final one holds four independently clickable Recent Projects.
   Work popover and individual project layouts are deliberately unchanged. */
.portfolio-home--split{padding-top:clamp(48px,5.8vw,84px)}
.portfolio-home__layout{max-width:1340px;grid-template-columns:minmax(260px,.95fr) minmax(0,1.85fr);column-gap:clamp(28px,3.1vw,48px)}
.portfolio-home__work-column{max-width:none}
.portfolio-home--split .project-grid--collections{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 17px;align-items:start}
.portfolio-home--split .project-card--featured{grid-row:auto;display:block}
.portfolio-home--split .project-card--featured .project-card__image{aspect-ratio:1.42}
.portfolio-home--split .project-card__image{aspect-ratio:1.42}
.portfolio-home--split .project-card__caption{margin-top:10px}
.portfolio-home--split .project-card h2{font-size:12.5px;line-height:1.45;font-weight:400;margin:0}
.portfolio-home--split .project-card p{display:none}
/* Four project previews fill the same media-height as a regular collection thumbnail. */
.recent-mosaic{min-width:0}
.recent-mosaic__thumbs{width:100%;aspect-ratio:1.42;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:5px}
.recent-mosaic__item{position:relative;display:block;overflow:hidden;min-width:0;min-height:0;background:#efefed;isolation:isolate}
.recent-mosaic__image{display:block;width:100%;height:100%;overflow:hidden}
.recent-mosaic__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .28s ease}
.recent-mosaic__label{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;font-size:10px;line-height:1.15;font-weight:400;padding:17px 7px 6px;opacity:0;transform:translateY(3px);transition:opacity .2s ease,transform .2s ease}
.recent-mosaic__item:hover .recent-mosaic__label,.recent-mosaic__item:focus-visible .recent-mosaic__label{opacity:1;transform:none}
.recent-mosaic__item:hover img,.recent-mosaic__item:focus-visible img{transform:scale(1.045)}
.recent-mosaic__item:hover{text-decoration:none}
.recent-mosaic__heading{margin:10px 0 0;font-size:12.5px;line-height:1.45;font-weight:400}
.portfolio-home--split .site-footer{margin-top:clamp(55px,6.2vw,90px)}
/* At narrower laptop/tablet widths, stack the intro above a spacious grid
   instead of squeezing the individual recent thumbnails into tiny targets. */
@media(max-width:1059px){
  .portfolio-home__layout{display:block;max-width:860px}
  .portfolio-home--split .portfolio-intro{position:static;max-width:700px;margin:0 0 38px}
  .portfolio-home--split .portfolio-intro h1{font-size:clamp(32px,4.8vw,46px);margin-bottom:15px}
  .portfolio-home__work-column{max-width:none}
  .portfolio-home--split .project-grid--collections{gap:25px 17px}
}
@media(max-width:620px){
  .portfolio-home--split{padding-top:36px}
  .portfolio-home--split .portfolio-intro{margin-bottom:31px}
  .portfolio-home--split .project-grid--collections{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 13px}
  .portfolio-home--split .project-card--featured{grid-row:auto;grid-column:auto}
  .portfolio-home--split .project-card--featured .project-card__image{aspect-ratio:1.42}
  .portfolio-home--split .project-card h2{font-size:12px}
  .recent-mosaic__heading{font-size:12px}
  .recent-mosaic__thumbs{gap:4px}
  .recent-mosaic__label{font-size:9px;padding:15px 4px 4px}
}
@media(max-width:410px){
  .recent-mosaic{grid-column:span 2}
  .recent-mosaic__thumbs{aspect-ratio:2.2;gap:6px}
  .recent-mosaic__label{font-size:11px;padding:18px 7px 6px}
}
@media(hover:none){
  .recent-mosaic__label{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){
  .recent-mosaic__label,.recent-mosaic__image img{transition:none}
}

/* Hide the redundant Work-menu trigger on the homepage only. */
body.portfolio-homepage .site-header__projects .work-menu{display:none}


/* Portfolio V16 experiment — full-width, gallery-style homepage.
   The intro and the 3-column collections grid share the same edges as the
   header and footer (the .site-shell container). No changes to thumbnails. */
.portfolio-home--split { padding-top:clamp(55px,6.5vw,100px); }
.portfolio-home--split .portfolio-home__layout {
  display:block;
  max-width:none;
  width:100%;
  margin:0;
}
.portfolio-home--split .portfolio-home__intro-column { width:100%; }
.portfolio-home--split .portfolio-intro {
  position:static;
  top:auto;
  max-width:none;
  margin:0 0 clamp(60px,6.2vw,100px);
  text-align:left;
}
.portfolio-home--split .portfolio-intro h1 {
  max-width:950px;
  font-size:clamp(40px,4.5vw,68px);
  font-weight:400;
  line-height:1.19;
  letter-spacing:-.03em;
  margin:0 0 22px;
}
.portfolio-home--split .portfolio-intro p {
  max-width:510px;
  margin:0;
  font-size:16px;
  line-height:1.75;
  text-align:left;
}
.portfolio-home--split .portfolio-home__work-column,
.portfolio-home--split .portfolio-collections {
  width:100%;
  max-width:none;
  margin-inline:0;
  justify-self:auto;
}
.portfolio-home--split .project-grid--collections {
  display:grid;
  width:100%;
  max-width:none;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(44px,4.3vw,70px) clamp(19px,2vw,34px);
  align-items:start;
}
.portfolio-home--split .project-card__caption,
.portfolio-home--split .recent-mosaic__heading { margin-top:13px; }
.portfolio-home--split .project-card h2,
.portfolio-home--split .recent-mosaic__heading { font-size:13px; }
.portfolio-home--split .site-footer { margin-top:clamp(80px,8vw,130px); }
@media (max-width:850px) {
  .portfolio-home--split { padding-top:clamp(48px,6vw,68px); }
  .portfolio-home--split .portfolio-intro { margin-bottom:clamp(42px,7vw,70px); }
  .portfolio-home--split .portfolio-intro h1 { font-size:clamp(36px,5.5vw,50px); }
  .portfolio-home--split .project-grid--collections { column-gap:18px; row-gap:38px; }
}
@media (max-width:620px) {
  .portfolio-home--split { padding-top:39px; }
  .portfolio-home--split .portfolio-intro { margin-bottom:42px; }
  .portfolio-home--split .portfolio-intro h1 { font-size:clamp(30px,7.5vw,40px); line-height:1.23; margin-bottom:17px; }
  .portfolio-home--split .portfolio-intro p { font-size:15px; }
  .portfolio-home--split .project-grid--collections { grid-template-columns:repeat(2,minmax(0,1fr)); gap:31px 13px; }
  .portfolio-home--split .project-card h2,
  .portfolio-home--split .recent-mosaic__heading { font-size:12px; }
  .portfolio-home--split .project-card__caption,
  .portfolio-home--split .recent-mosaic__heading { margin-top:10px; }
}

/* Unobtrusive, one-time gallery reveals. Elements remain in their original
   layout at all times. Only the compositor-friendly opacity / translation
   changes; no scroll-position animation or layout measurement per frame. */
.scroll-reveal-item {
  opacity:0;
  transform:translate3d(0,23px,0);
  transition:opacity 850ms cubic-bezier(.22,1,.36,1),
             transform 850ms cubic-bezier(.22,1,.36,1);
  transition-delay:var(--scroll-reveal-delay,0ms);
}
.scroll-reveal-item.is-revealed { opacity:1; transform:translate3d(0,0,0); }
@media (max-width:620px) {
  .scroll-reveal-item { transform:translate3d(0,16px,0); transition-duration:740ms; }
}
@media (prefers-reduced-motion:reduce) {
  .scroll-reveal-item { opacity:1!important; transform:none!important; transition:none!important; }
}

/* Lexpéditìoñs: distinguish the studio/collection title from its featured project. */
.case-intro .lex-project-subtitle {
  margin: -3px 0 14px;
  font-size: clamp(18px, 2.1vw, 24px);
  font-weight: 300;
  line-height: 1.4;
  color: var(--copy);
}
.case-intro .lex-project-subtitle + .case-category { margin-top: 2px; }

/* Homepage: balance the short personal introduction without hard-coded line breaks.
   Browser support is progressive; the text remains a normal responsive paragraph. */
.portfolio-home--split .portfolio-intro p { text-wrap:balance; }

/* Latest fine-tuning: keep the short homepage introduction on one line
   when the available width permits; allow natural wrapping on phones. */
@media (min-width:700px) {
  .portfolio-home--split .portfolio-intro p {
    max-width:none;
    white-space:nowrap;
    text-wrap:nowrap;
  }
}
@media (max-width:699px) {
  .portfolio-home--split .portfolio-intro p {
    max-width:100%;
    white-space:normal;
    text-wrap:pretty;
  }
}

/* V20: restore fully centred project introductions throughout.
   The Website Design introduction has its own deliberately left-aligned copy. */
.case-intro { max-width:730px; text-align:center; }
.case-intro > p:not(.case-category):not(.sotik-intro__external) { text-align:center; hyphens:none; }
.case-intro .lex-intro-copy { display:block; max-width:none; columns:auto; text-align:center; }
.case-intro.lex-case-intro { max-width:730px; }
.case-intro .lex-intro-copy p { text-align:center; margin:0 0 19px; line-height:var(--body-copy-leading); hyphens:none; }
.case-intro .lex-intro-copy p:last-child { margin-bottom:0; }
.case-intro h1 .lex-title-presents { display:block; margin-top:8px; font-size:clamp(19px,2vw,24px); font-weight:300; line-height:1.4; letter-spacing:0; }
.lex-credits-caption { color:#777; font-size:12px; line-height:1.6; text-align:center; margin:11px 0 0; }
/* WMR and Lovett: paired studies, each with its own name, art and text. */
.brand-case__duo { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(18px,3vw,36px); align-items:start; }
.brand-case__duo .brand-case__gallery--single { max-width:none; aspect-ratio:2048/1462; overflow:hidden; }
.brand-case__duo .brand-case__gallery--single img { height:100%; width:100%; object-fit:cover; }
.brand-case__duo .school-case__head { min-height:76px; margin-bottom:18px; }
.brand-case__duo .school-case__copy { margin-top:18px; }
@media(max-width:650px) {
 .brand-case__duo { grid-template-columns:1fr; gap:50px; }
 .brand-case__duo .school-case__head { min-height:0; }
 .case-intro .lex-intro-copy p { line-height:var(--body-copy-mobile-leading); }
}

/* V25: Match Sotik's live-site link to the Website Design selected-site links. */
.sotik-intro__external a {
  display: inline-block;
  padding: 3px 0 7px;
  color: var(--copy);
  font-size: 14px;
  line-height: 1.5;
  font-weight: 300;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  white-space: nowrap;
}
.sotik-intro__external a > span {
  color: inherit;
  font-size: 1em;
  line-height: inherit;
  white-space: nowrap;
}
.sotik-intro__external a:hover,
.sotik-intro__external a:focus-visible {
  color: #333;
}

/* V21: editorial, Artsy-inspired category titles. Only home category captions change. */
.portfolio-home--split .project-grid--collections > .project-card h2,
.portfolio-home--split .project-grid--collections > .recent-mosaic .recent-mosaic__heading {
  font-size:clamp(25px,2.55vw,35px);
  line-height:1.22;
  letter-spacing:-.027em;
  font-weight:400;
  hyphens:none;
  word-break:normal;
  overflow-wrap:normal;
  text-wrap:pretty;
}
.portfolio-home--split .project-grid--collections > .project-card .project-card__caption {
  margin-top:14px;
}
.portfolio-home--split .project-grid--collections > .recent-mosaic .recent-mosaic__heading {
  margin-top:14px;
}
/* Make Recent Projects a proper 2x2 photo grid on phones, not a letterbox. */
@media(max-width:620px) {
  .portfolio-home--split .project-grid--collections > .project-card h2,
  .portfolio-home--split .project-grid--collections > .recent-mosaic .recent-mosaic__heading {
    font-size:clamp(21px,5.9vw,24px);
    line-height:1.23;
  }
  .portfolio-home--split .project-grid--collections > .recent-mosaic {
    grid-column:1 / -1;
  }
  .portfolio-home--split .recent-mosaic__thumbs {
    aspect-ratio:1.42;
    gap:6px;
  }
  .portfolio-home--split .recent-mosaic__label {
    font-size:11px;
    padding:18px 7px 7px;
  }
}
/* At ultra-narrow viewports a single column prevents broken words. */
@media(max-width:350px) {
  .portfolio-home--split .project-grid--collections {
    grid-template-columns:minmax(0,1fr);
  }
  .portfolio-home--split .recent-mosaic__thumbs {
    aspect-ratio:1;
  }
}
