/* Portfolio direction 2: editorial triptychs and photographic hero. */
.portfolio-home{background:#fff}.portfolio-header{position:absolute;inset:0 0 auto;z-index:4;background:transparent;padding:28px 4%}.portfolio-header img{width:235px}.portfolio-header nav{font-size:12px}.art-hero{display:block;min-height:720px;height:90vh;max-height:1000px;isolation:isolate;background:#111}.art-hero>img{position:absolute;inset:0 0 0 auto;width:80%;height:100%;min-height:0;object-fit:cover;object-position:65% 42%;z-index:-2}.art-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#111 3%,#111f 17%,#111b 40%,#1111 74%),linear-gradient(180deg,#111b 0%,transparent 25%,transparent 70%,#1118 100%)}.art-hero .hero-intro{padding:0 5.5%;position:absolute;top:34%;width:80%}.art-hero .hero-intro .eyebrow{margin-bottom:30px;letter-spacing:3px}.art-hero h1{font-size:clamp(62px,7.4vw,120px);font-weight:200;letter-spacing:-4px;line-height:.96}.art-hero .hero-intro>p:not(.eyebrow){font-size:16px;margin:30px 0 22px}.art-hero .hero-caption{font-size:9px;letter-spacing:2px;right:4%;bottom:32px}.portfolio-section{padding:95px 4% 0}.section-top{padding:0 1.5% 55px;align-items:center}.section-top h2{font-size:52px;font-weight:300}.section-top .eyebrow{font-size:10px;letter-spacing:2px}.section-top>p{font-size:14px}.art-grid{display:flex;flex-direction:column;columns:auto;gap:76px}.art-row{display:grid;grid-template-columns:1.25fr .8fr 1.05fr;gap:12px;align-items:start}.art-grid .art-row figure{break-inside:auto;margin:0;overflow:visible}.art-row figure:nth-child(2){margin-top:105px}.art-row figure:nth-child(3){margin-top:35px}.art-row:nth-child(3n+2){grid-template-columns:.8fr 1.3fr 1fr;align-items:center}.art-row:nth-child(3n+2) figure:nth-child(2){margin-top:0}.art-row:nth-child(3n+2) figure:first-child{padding-left:7%;margin-top:75px}.art-row:nth-child(3n+2) figure:last-child{margin-top:140px}.art-row:nth-child(3n){grid-template-columns:1fr 1.2fr .8fr}.art-row:nth-child(3n) figure:nth-child(2){margin-top:65px}.art-row:nth-child(3n) figure:last-child{margin-top:0;padding-right:8%}.art-grid img{width:100%;height:auto;display:block}.art-grid figcaption{position:static;background:none;padding:12px 0 0;opacity:1;color:#666;font-size:10px;letter-spacing:.3px;display:flex;justify-content:space-between}.art-grid figcaption:after{content:'↗︎';font-size:13px}.color-reveal .art-grid img{filter:grayscale(1);transition:filter 1.3s ease}.color-reveal .art-grid figure.in-color img,.color-reveal .art-grid figure:hover img{filter:grayscale(0)}.portfolio-caption{margin:50px 0 0;padding:0 1.5% 60px}.client-section{border-top:1px solid #ddd;margin:0 5.5%;padding:48px 0 55px}.client-section .eyebrow{font-size:10px;color:#777}.client-names{display:flex;flex-wrap:wrap;gap:30px 65px;margin:30px 0;font-size:clamp(19px,2.1vw,31px);font-weight:400;letter-spacing:-.6px}.client-section>p:last-child{font-size:13px;color:#777}.bank-invite{background:#f4f3ee;color:#111}.bank-invite .eyebrow{color:#666}.bank-invite>p:not(.eyebrow){color:#555}.bank-invite .bank-detail{color:#666!important}.commission-section{border:0;padding-top:70px}.commission-section h2{font-size:65px}.about-section{padding-top:100px;padding-bottom:100px}
@media(min-width:1500px){.art-grid{columns:auto}}
@media(max-width:980px){.portfolio-header nav{order:3}.art-hero{height:760px;min-height:0}.art-hero .hero-intro{top:35%;width:95%}.art-hero h1{font-size:77px}.art-grid{columns:auto;gap:50px}.art-row figure:nth-child(2){margin-top:65px}.art-row:nth-child(3n+2) figure:last-child{margin-top:90px}.section-top h2{font-size:43px}}
@media(max-width:600px){.portfolio-header{padding:24px 20px}.portfolio-header img{width:169px}.portfolio-header nav{font-size:11px}.art-hero{height:740px;max-height:none}.art-hero>img{width:100%;height:480px;top:130px;object-position:67% center;max-height:none}.art-hero:after{background:linear-gradient(90deg,#111c,transparent 85%),linear-gradient(180deg,#111 14%,#1111 35%,#1114 65%,#111 87%)}.art-hero .hero-intro{top:240px;width:100%;padding:0 24px}.art-hero .hero-intro .eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:24px}.art-hero h1{font-size:clamp(40px,10.9vw,62px);letter-spacing:-1.7px}.art-hero .hero-intro>p:not(.eyebrow){margin-top:32px;font-size:13px;line-height:1.8;max-width:260px}.art-hero .hero-caption{bottom:25px;right:24px;font-size:8px}.portfolio-section{padding:48px 14px 0}.section-top{padding:0 10px 30px}.section-top h2{font-size:36px}.art-grid{gap:35px}.art-row,.art-row:nth-child(3n),.art-row:nth-child(3n+2){grid-template-columns:1.15fr .85fr;gap:14px 8px;align-items:start}.art-row figure:nth-child(2),.art-row:nth-child(3n+2) figure:nth-child(2){margin-top:35px}.art-row figure:nth-child(3),.art-row:nth-child(3n+2) figure:last-child,.art-row:nth-child(3n) figure:last-child{grid-column:1/-1;width:85%;margin:0 0 0 auto;padding:0}.art-row:nth-child(3n+2) figure:first-child{padding:0;margin:0}.art-grid figcaption{font-size:9px;line-height:1.4;padding-top:8px}.portfolio-caption{margin-top:30px;padding-bottom:40px}.client-section{margin:0 24px;padding:35px 0}.client-names{gap:18px;flex-direction:column;font-size:25px}.commission-section h2{font-size:45px}.about-section{padding-top:50px;padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){.color-reveal .art-grid img{transition:none;filter:none}}

/* A calm, readable client list for the expanded portfolio. */
.client-names{gap:18px 36px;font-size:clamp(17px,1.55vw,23px);line-height:1.6;letter-spacing:-.3px}
@media(max-width:600px){.client-names{flex-direction:row;gap:12px 22px;font-size:17px}}

/* Fine client frames, understated type and clear external links. */
.client-names{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;line-height:1.4;letter-spacing:0;margin:25px 0}
.client-names>a,.client-names>span{border:1px solid #dcdcd7;padding:12px 16px;min-height:44px;display:inline-flex;align-items:center;gap:14px;border-radius:2px;color:#53534e;background:transparent}
.client-names>a>span{font-size:12px;color:#888}.client-names>a:hover{color:#111;border-color:#888;background:#f7f7f3}
.client-names>a:focus-visible{outline:2px solid #777300;outline-offset:3px}
@media(max-width:600px){.client-names{font-size:12px;gap:8px}.client-names>a,.client-names>span{padding:10px 12px;max-width:100%}}

.portfolio-finale{width:min(680px,70%);margin:85px auto 0}.portfolio-finale img{display:block;width:100%;height:auto}.portfolio-finale figcaption{font-size:11px;color:#666;margin-top:12px}@media(max-width:600px){.portfolio-finale{width:90%;margin:45px auto 0}}

/* Progressive portfolio: all photographs remain available without JavaScript. */
.art-grid .art-row[hidden],.portfolio-finale[hidden],.portfolio-more-button[hidden]{display:none!important}
.portfolio-more{text-align:center;padding:42px 0 8px}
.portfolio-more-button{appearance:none;background:transparent;border:1px solid #bbb;border-radius:2px;padding:14px 34px;font:inherit;font-size:13px;letter-spacing:.3px;color:#222;cursor:pointer;transition:background .2s,border-color .2s}
.portfolio-more-button:hover,.portfolio-more-button:focus-visible{background:#f4f000;border-color:#f4f000}
.portfolio-more-button:focus-visible{outline:2px solid #111;outline-offset:4px}
.portfolio-more-status{font-size:12px;color:#777;margin:12px 0 0}
.portfolio-intro{max-width:430px;font-size:14px;line-height:1.7}
.portfolio-intro p{margin:0 0 12px}.portfolio-intro a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.portfolio-intro a:hover{background:#f4f000}
.art-row{scroll-margin-top:110px}
