/* Collections share the portfolio's Liquid Glass palette and motion settings. */
html{overflow-x:clip}
@supports not (overflow:clip){html{overflow-x:hidden}}
.collections-section{padding-block:112px 54px}
.collections-heading{max-width:690px;margin-bottom:42px}
.collections-heading .eyebrow,.latest-heading .eyebrow{color:var(--sub);margin:0 0 19px}
.collections-heading h2,.latest-heading h2{font-size:clamp(38px,4vw,55px);font-weight:600;letter-spacing:-2px;line-height:1.13;margin:0 0 20px}
.collections-heading>p:last-child{font-size:16px;line-height:1.85;color:var(--sub);max-width:540px;margin:0}
.collection-featured{display:grid;grid-template-columns:1.08fr 1fr;min-height:390px;border-radius:34px;overflow:hidden;isolation:isolate;transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.collection-featured:hover{transform:translateY(-5px);box-shadow:inset 0 1px 1px #fff9,0 28px 60px #3158821a}
.collection-visual{min-width:0;min-height:390px;overflow:hidden;background:#c7d4e4;isolation:isolate}
.collection-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#192d4920);pointer-events:none}
.collection-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 54%;position:absolute;inset:0;transition:transform .9s var(--ease)}
.collection-featured:hover .collection-visual img{transform:scale(1.035)}
.collection-copy{padding:48px 46px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.collection-copy>.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent);margin:0 0 23px}
.collection-copy h3{font-size:clamp(31px,3vw,42px);font-weight:550;line-height:1.15;letter-spacing:-1.4px;margin:0 0 20px}
.collection-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--sub);margin:0;max-width:340px}
.collection-meta{width:100%;margin-top:33px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;font-weight:500;color:var(--sub)}
.collection-arrow{display:grid;place-items:center;width:45px;height:45px;flex:0 0 45px;border:1px solid var(--line);border-radius:50%;background:#ffffff52;color:var(--ink);transition:transform .35s var(--ease),background .35s var(--ease),color .35s var(--ease)}
.collection-arrow svg{width:18px;height:18px}
.collection-featured:hover .collection-arrow,.collection-row:hover .collection-arrow{transform:rotate(45deg);background:var(--accent);color:var(--paper);border-color:transparent}
.collection-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.collection-row{display:grid;grid-template-columns:26px minmax(0,1fr) 36px;align-items:center;gap:17px;padding:28px 25px;border-radius:25px;box-shadow:inset 0 1px 0 #fff8,0 9px 26px #2d4e7d06;transition:transform .4s var(--ease),background .4s var(--ease)}
.collection-row:hover{transform:translateY(-3px);background:#ffffff86}
.collection-index{align-self:start;font-size:11px;letter-spacing:.6px;color:var(--sub);padding-top:6px}
.collection-title h3{font-size:20px;font-weight:550;line-height:1.3;letter-spacing:-.45px;margin:0 0 7px}
.collection-title p{font-size:12px;line-height:1.6;color:var(--sub);margin:0}
.collection-row .collection-status{grid-column:2;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--sub);margin-top:2px}
.collection-row .collection-arrow{grid-column:3;grid-row:1 / 3;width:36px;height:36px;min-width:36px;flex-basis:36px;background:transparent}
.collection-row .collection-arrow svg{width:15px;height:15px}
.latest-motion{padding-block:54px 105px}
.latest-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:32px}
.latest-heading h2{font-size:36px;letter-spacing:-1.2px;margin-bottom:0}
.latest-heading .text-link{flex-shrink:0;margin-bottom:5px;color:var(--sub)}
.motion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 30px}
.motion-card{min-width:0;position:relative}
.motion-card .project-open{display:block;width:100%;padding:0;text-align:left;background:transparent;border-radius:28px;outline-offset:8px}
.motion-poster{aspect-ratio:4 / 5;border-radius:28px;position:relative;isolation:isolate;overflow:hidden;background:#b2c3d6;box-shadow:0 14px 36px #1a39590b;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.motion-poster:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#10203912,transparent 35%,transparent 55%,#08152773);border:1px solid #ffffff40;border-radius:inherit}
.motion-poster .poster-backdrop{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;filter:blur(26px) brightness(.76);transform:scale(1.06);opacity:.85}
.motion-poster .poster-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.motion-card.landscape .poster-photo,.motion-card .landscape .poster-photo{object-fit:contain}
.collection-page[data-collection="medical-before-after"] .poster-photo{object-fit:contain}
.motion-card .project-open:hover .motion-poster{transform:translateY(-5px);box-shadow:0 23px 46px #19395820}
.motion-card .project-open:hover .poster-photo{transform:scale(1.025)}
.motion-duration{position:absolute;z-index:2;top:20px;right:20px;display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:28px;padding:3px 10px;font-size:11px;font-weight:550;font-variant-numeric:tabular-nums;line-height:1.4;letter-spacing:.4px;color:#fff;background:#1724324d;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff48;border-radius:30px}
.motion-play{position:absolute;z-index:2;left:24px;bottom:23px;display:grid;place-items:center;width:53px;height:53px;border-radius:50%;border:1px solid #ffffff7a;color:#fff;background:#e8f7ff30;box-shadow:inset 0 1px 0 #fff5,0 6px 18px #0001;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:background .35s var(--ease),transform .35s var(--ease)}
.motion-play svg{width:17px;height:17px;fill:currentColor;stroke:currentColor;margin-left:3px}
.motion-card .project-open:hover .motion-play{background:#e8f7ff52;transform:scale(1.07)}
.motion-format{position:absolute;z-index:2;right:24px;bottom:38px;color:#fff;font-size:10px;letter-spacing:1.8px;font-weight:550;text-transform:uppercase;text-align:right}
.motion-card-info{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 3px 0}
.motion-card-info h3{font-size:23px;font-weight:550;line-height:1.3;letter-spacing:-.5px;margin:0 0 8px}
.motion-card-info p{font-size:13px;line-height:1.8;color:var(--sub);margin:0;max-width:430px}
.motion-card-number{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.8px;color:var(--sub);padding-top:6px;white-space:nowrap}
.collection-page{position:relative;isolation:isolate;overflow-x:hidden}
.collection-page:before{content:'';position:absolute;z-index:-2;inset:0 0 auto;height:820px;background-image:linear-gradient(180deg,#f7f9fc33,var(--paper) 98%),var(--hero-image);background-position:center top;background-size:cover;opacity:.75;pointer-events:none}
.collection-header{height:125px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:2}
.collection-header .header-actions{gap:16px}
.back-home{display:inline-flex;align-items:center;gap:10px;font-size:13px;line-height:1.5;color:var(--sub);transition:color .25s var(--ease)}
.back-home:hover{color:var(--accent)}
.back-home svg{width:17px;height:17px;transform:rotate(225deg)}
.collection-top-label{font-size:10px;letter-spacing:2px;color:var(--sub)}
.collection-hero{position:relative;padding-block:62px 39px}
.collection-hero:before{content:'';position:absolute;z-index:-1;right:15px;top:0;width:310px;height:310px;border:42px solid #94c8f326;border-radius:50%;box-shadow:inset 0 5px 10px #ffffff90,0 12px 30px #6497bb0b;transform:rotate(-30deg) rotateY(50deg);pointer-events:none}
.collection-breadcrumb{display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--sub);margin:0 0 26px}
.collection-breadcrumb a{transition:color .25s var(--ease)}
.collection-breadcrumb a:hover{color:var(--accent)}
.collection-breadcrumb span[aria-hidden]{opacity:.5}
.collection-hero h1{position:relative;max-width:920px;font-size:clamp(55px,6.1vw,83px);font-weight:550;line-height:1.06;letter-spacing:-3.7px;margin:0 0 25px}
.collection-hero .accent-word{color:var(--accent)}
.collection-hero p.lead{position:relative;font-size:17px;line-height:1.9;color:var(--sub);max-width:610px;margin:0}
.collection-details{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:30px}
.collection-details>span{display:inline-flex;align-items:center;gap:7px;font-size:11px;line-height:1.5;letter-spacing:.25px;color:var(--sub);padding:8px 13px;background:#ffffff55;border:1px solid #ffffffa6;border-radius:30px}
.category-nav{display:flex;gap:7px;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;margin-top:39px;padding:0 0 8px;-webkit-overflow-scrolling:touch}
.category-nav::-webkit-scrollbar{display:none}
.category-nav a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:12px;line-height:1.5;padding:10px 17px;border-radius:40px;color:var(--sub);background:#ffffff40;border:1px solid transparent;transition:color .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease)}
.category-nav a:hover{color:var(--ink);background:#ffffff8a}
.category-nav a[aria-current="page"],.category-nav a.active{background:var(--ink);color:var(--paper);box-shadow:0 5px 15px #20375110}
#collection-work{padding-block:16px 78px}
#collection-work .motion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 30px}
.collection-page .motion-card-info h3{font-size:24px}
.collection-footer{padding-block:29px 130px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}
.collection-footer>.text-link{color:var(--sub);font-size:13px}
.empty-collection{min-height:390px;border-radius:35px;padding:55px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.empty-symbol{width:74px;height:74px;display:grid;place-items:center;margin-bottom:24px;border-radius:23px;background:#ffffff66;color:#6399bf;box-shadow:inset 0 1px 0 #fff,0 10px 28px #326a9d0a;transform:rotate(-8deg)}
.empty-symbol svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.empty-collection .eyebrow{font-size:9px;letter-spacing:2px;color:var(--sub);margin:0 0 12px}
.empty-collection h2{font-size:clamp(27px,3vw,39px);font-weight:550;letter-spacing:-1px;line-height:1.2;margin:0 0 16px;max-width:600px}
.empty-collection>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--sub);margin:0;max-width:430px}
.empty-collection .button{margin-top:26px;background:#ffffff75;border:1px solid var(--line);font-size:12px;color:var(--ink)}
.collection-featured:focus-visible,.collection-row:focus-visible,.motion-card .project-open:focus-visible,.category-nav a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
html[data-theme="dark"] .collection-featured:hover{box-shadow:inset 0 1px 0 #ffffff29,0 28px 60px #0003}
html[data-theme="dark"] .collection-arrow{background:#d3e8ff0c}
html[data-theme="dark"] .collection-row:hover{background:#35506ba6}
html[data-theme="dark"] .collection-featured:hover .collection-arrow,html[data-theme="dark"] .collection-row:hover .collection-arrow{background:var(--accent);color:var(--paper)}
html[data-theme="dark"] .motion-poster{background:#263b52;box-shadow:0 14px 36px #0002}
html[data-theme="dark"] .collection-page:before{background-image:linear-gradient(180deg,#101a2855,var(--paper) 98%),var(--hero-image);filter:brightness(.4);opacity:.7}
html[data-theme="dark"] .collection-hero:before{border-color:#8bc7f118;box-shadow:inset 0 5px 10px #aed8ff15,0 12px 30px #0001}
html[data-theme="dark"] .collection-details>span{background:#263e5266;border-color:#c9e7ff25}
html[data-theme="dark"] .category-nav a{background:#233b5155}
html[data-theme="dark"] .category-nav a:hover{background:#b8d8ff18}
html[data-theme="dark"] .category-nav a[aria-current="page"],html[data-theme="dark"] .category-nav a.active{background:var(--ink);color:var(--paper)}
html[data-theme="dark"] .empty-symbol{background:#98c3ef12;box-shadow:inset 0 1px 0 #cee6ff22,0 10px 28px #0001;color:#a3c5e4}
html[data-theme="dark"] .empty-collection .button{background:#c6e4ff0c}
@media(min-width:1500px){
  .collection-visual{min-height:420px}
  .collection-copy{padding-inline:52px}
}
@media(max-width:1100px){
  .collection-copy{padding:35px}
  .collection-copy h3{font-size:35px}
  .collection-featured,.collection-visual{min-height:360px}
  .collection-row{padding:25px 22px;gap:13px}
  .collection-title h3{font-size:19px}
  .collection-hero h1{font-size:69px}
}
@media(max-width:850px){
  .collections-section{padding-top:85px}
  .collections-heading{margin-bottom:33px}
  .collection-featured{grid-template-columns:1.05fr 1fr}
  .collection-featured,.collection-visual{min-height:340px}
  .collection-copy{padding:30px}
  .collection-copy>.eyebrow{font-size:9px;margin-bottom:17px;letter-spacing:1.6px}
  .collection-copy h3{font-size:30px;letter-spacing:-.8px;margin-bottom:16px}
  .collection-copy>p:not(.eyebrow){font-size:13px}
  .collection-meta{margin-top:23px;font-size:11px}
  .collection-row{grid-template-columns:21px minmax(0,1fr) 32px;gap:10px;padding:24px 19px}
  .collection-title h3{font-size:17px}
  .collection-title p{font-size:11px}
  .collection-row .collection-arrow{width:32px;height:32px}
  .latest-motion{padding-block:35px 85px}
  .motion-grid,#collection-work .motion-grid{gap:37px 22px}
  .motion-card-info h3,.collection-page .motion-card-info h3{font-size:20px}
  .motion-card-info p{font-size:12px}
  .motion-card-number{font-size:10px}
  .motion-play{width:46px;height:46px;left:19px;bottom:20px}
  .motion-format{right:19px;bottom:34px;font-size:8px;letter-spacing:1.3px}
  .collection-header{height:105px}
  .collection-hero{padding-top:47px}
  .collection-hero h1{font-size:62px;letter-spacing:-2.8px}
  .collection-hero p.lead{font-size:16px;max-width:540px}
  .collection-hero:before{right:-35px;top:30px;width:250px;height:250px;border-width:34px}
  .category-nav{margin-top:31px}
}
@media(max-width:600px){
  .collections-section{padding-block:65px 32px}
  .collections-heading{margin-bottom:27px}
  .collections-heading .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:16px}
  .collections-heading h2{font-size:37px;letter-spacing:-1.3px;margin-bottom:17px}
  .collections-heading>p:last-child{font-size:14px;line-height:1.85}
  .collection-featured{display:block;border-radius:28px}
  .collection-visual{min-height:0;aspect-ratio:1.24}
  .collection-visual:after{background:linear-gradient(180deg,transparent 65%,#192d4918)}
  .collection-copy{padding:29px 27px 27px}
  .collection-copy>.eyebrow{font-size:9px;margin-bottom:15px}
  .collection-copy h3{font-size:34px;letter-spacing:-1.1px;margin-bottom:14px}
  .collection-copy>p:not(.eyebrow){font-size:14px;max-width:100%}
  .collection-meta{margin-top:23px;font-size:12px}
  .collection-arrow{width:41px;height:41px;flex-basis:41px}
  .collection-list{grid-template-columns:1fr;gap:11px;margin-top:13px}
  .collection-row{grid-template-columns:23px minmax(0,1fr) 34px;padding:23px 21px;gap:12px;border-radius:23px;min-height:112px}
  .collection-index{font-size:10px;padding-top:4px}
  .collection-title h3{font-size:20px;line-height:1.25;letter-spacing:-.45px;margin-bottom:5px}
  .collection-title p{font-size:12px;line-height:1.65}
  .collection-row .collection-status{font-size:9px;margin-top:0;letter-spacing:.8px}
  .collection-row .collection-arrow{width:34px;height:34px;min-width:34px}
  .latest-motion{padding-block:32px 70px}
  .latest-heading{align-items:flex-start;gap:20px;margin-bottom:25px;flex-direction:column}
  .latest-heading h2{font-size:30px;letter-spacing:-1px}
  .latest-heading .eyebrow{font-size:9px;margin-bottom:14px}
  .latest-heading .text-link{font-size:12px;margin:0}
  .motion-grid,#collection-work .motion-grid{grid-template-columns:1fr;gap:34px}
  .motion-poster{border-radius:25px}
  .motion-duration{top:17px;right:17px;font-size:10px;min-height:27px}
  .motion-play{width:48px;height:48px;left:20px;bottom:21px}
  .motion-format{right:20px;bottom:36px;font-size:9px;letter-spacing:1.4px}
  .motion-card-info{padding:18px 2px 0;gap:14px}
  .motion-card-info h3,.collection-page .motion-card-info h3{font-size:22px;margin-bottom:6px}
  .motion-card-info p{font-size:13px;line-height:1.8}
  .motion-card-number{font-size:10px;padding-top:6px}
  .collection-page:before{height:680px;background-position:45% top}
  .collection-header{height:95px;gap:12px}
  .collection-header .header-actions{gap:10px}
  .collection-header .back-home{font-size:0;gap:0;width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#ffffff35}
  .collection-header .back-home svg{width:17px;height:17px}
  .collection-top-label{display:none}
  .collection-hero{padding-block:31px 23px}
  .collection-breadcrumb{font-size:9px;letter-spacing:1.6px;gap:10px;margin-bottom:23px}
  .collection-hero h1{font-size:49px;line-height:1.06;letter-spacing:-2.3px;margin-bottom:21px}
  .collection-hero p.lead{font-size:15px;line-height:1.9}
  .collection-hero:before{width:200px;height:200px;right:-60px;top:32px;border-width:28px;opacity:.65}
  .collection-details{margin-top:23px;gap:7px}
  .collection-details>span{font-size:10px;padding:7px 11px;letter-spacing:0}
  .category-nav{margin-top:28px;gap:5px;width:calc(100% + 20px);padding-right:20px;padding-bottom:8px}
  .category-nav a{font-size:11px;padding:9px 14px}
  #collection-work{padding-block:12px 48px}
  .collection-footer{padding-block:25px 125px;align-items:flex-start;gap:20px}
  .collection-footer .back-home,.collection-footer>.text-link{font-size:12px;gap:7px;max-width:47%}
  .collection-footer>.text-link{text-align:right;justify-content:flex-end}
  .collection-footer a svg{width:15px;height:15px}
  .empty-collection{min-height:375px;padding:42px 25px;border-radius:28px}
  .empty-symbol{width:66px;height:66px;border-radius:21px;margin-bottom:24px}
  .empty-symbol svg{width:30px;height:30px}
  .empty-collection h2{font-size:30px;letter-spacing:-.8px}
  .empty-collection>p:not(.eyebrow){font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  .collection-featured,.collection-row,.collection-arrow,.motion-poster,.motion-play,.poster-photo,.collection-visual img{transition:none!important}
  .collection-featured:hover,.collection-row:hover,.motion-card .project-open:hover .motion-poster,.motion-card .project-open:hover .poster-photo,.motion-card .project-open:hover .motion-play,.collection-featured:hover .collection-visual img{transform:none}
}
