:root{--paper:#F4F0E6;--ink:#18234A;--olive:#002FA7;--line:rgba(0,47,167,.23);--cream:#FAF7F0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.grain{pointer-events:none;position:fixed;inset:0;z-index:50;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E")}.site-header{height:88px;padding:0 5.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:60}.wordmark{font-size:24px;font-weight:700;letter-spacing:-1.7px}.wordmark-dot{color:var(--olive)}.nav{display:flex;gap:38px}.nav a,.mobile-nav a{font-size:12px;text-transform:uppercase;letter-spacing:.13em}.nav a:hover,.text-link:hover{color:var(--olive)}.menu-button{display:none;border:0;background:none;cursor:pointer}.mobile-nav{display:none}.eyebrow,.section-index,.hero-footer,.art-corner,.work-meta p,.work-note,.timeline-item>span,.timeline-footnote,.footer,.contact-bottom{font-size:11px;text-transform:uppercase;letter-spacing:.16em}.hero{min-height:calc(100svh - 88px);padding:32px 5.5% 24px;display:flex;flex-direction:column;justify-content:space-between}.hero-top,.hero-footer{display:flex;justify-content:space-between;gap:20px}.hero-center{width:min(100%,1100px);margin:70px auto 40px}.hero-kicker{font-family:'Italiana',Georgia,serif;font-size:clamp(25px,3.5vw,45px);margin:0 0 12px 8px}.hero h1,.statement h2,.section-heading h2,.agency h2,.services h2,.experience h2,.contact h2{font-family:'Italiana',Georgia,serif;font-weight:400;letter-spacing:-.055em;line-height:.9}.hero h1{font-size:clamp(100px,17vw,265px);margin:0}.hero h1 em,.statement h2 em,.section-heading h2 em,.agency h2 em,.services h2 em,.experience h2 em,.contact h2 em{font-weight:400;color:var(--olive)}.hero-asterisk{font-family:Georgia,serif;color:var(--olive);font-size:.22em;vertical-align:top;display:inline-block;margin:12px 0 0 20px}.hero-bottom{display:flex;align-items:end;justify-content:space-between;max-width:730px;margin:30px 0 0 auto;gap:35px}.hero-bottom p{max-width:490px;font-size:clamp(16px,1.7vw,22px);line-height:1.55}.round-arrow{height:75px;width:75px;flex:0 0 75px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:32px;transition:background .2s,color .2s}.round-arrow:hover{background:var(--ink);color:var(--paper)}section:not(.hero){scroll-margin-top:20px}.statement,.services,.experience{padding:125px 5.5%;display:grid;grid-template-columns:25% 1fr;gap:30px;border-top:1px solid var(--line)}.statement-content,.services-content,.experience-content{max-width:950px}.section-intro{font-size:13px;text-transform:uppercase;letter-spacing:.13em}.statement h2,.services h2,.experience h2{font-size:clamp(64px,9vw,145px);margin:25px 0 55px}.statement-details{display:grid;grid-template-columns:1fr 1fr;gap:45px;max-width:830px}.statement-details p,.agency-copy p{font-size:16px;line-height:1.85}.text-link{display:inline-flex;gap:80px;margin-top:45px;border-bottom:1px solid var(--ink);padding-bottom:12px;font-size:13px;text-transform:uppercase;letter-spacing:.1em}.work-section{background:var(--cream);padding:125px 5.5%}.section-heading{display:grid;grid-template-columns:25% 1fr;gap:30px;margin-bottom:70px}.section-heading h2{font-size:clamp(64px,8vw,130px);margin:0}.section-heading p{grid-column:2;max-width:440px;line-height:1.7}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 28px}.work-card-large{grid-column:span 2}.work-card-wide{grid-column:span 2}.work-art{min-height:400px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:filter .3s}.work-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.art-hospitality>img{object-position:50% 65%}.work-card-large .work-art{min-height:550px}.work-card-wide .work-art{min-height:390px}.work-card:hover .work-art{filter:brightness(.95)}.art-hospitality{background:#002FA7;color:#F4F0E6}.art-agriculture{background:#D9C7A5;color:#18234A}.art-nonprofit{background:#C5D4EC;color:#18234A}.art-culture{background:#B85C44;color:#FAF7F0}.art-culture>img{object-position:70% 40%}.art-symbol{font-family:'Italiana',Georgia,serif;font-size:clamp(130px,24vw,360px);letter-spacing:-.08em;line-height:1}.work-art::after{content:"";position:absolute;inset:auto 0 0;height:100px;background:linear-gradient(to top,rgba(0,0,0,.28),transparent);pointer-events:none}.art-corner{position:absolute;bottom:24px;left:28px;color:#FFFFFF;z-index:1}.art-small{font-family:'Italiana',Georgia,serif;font-size:clamp(45px,7vw,105px);text-align:center;line-height:.95}.thin{font-size:.5em}.work-meta{display:flex;justify-content:space-between;gap:20px;align-items:baseline;border-top:1px solid var(--line);padding-top:15px;margin-top:17px}.work-meta h3{font-size:18px;font-weight:500;margin:0}.work-meta p{margin:0;text-align:right;line-height:1.7}.work-note{margin-top:65px;line-height:1.8}.agency{padding:130px 5.5%;background:#002FA7;color:#F4F0E6;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.agency-mark{font-size:clamp(65px,10vw,150px);font-weight:700;line-height:.85;letter-spacing:-.095em}.agency-mark em{font-family:'Italiana',Georgia,serif;font-weight:400}.agency h2{font-size:clamp(48px,5vw,82px);margin:40px 0}.agency h2 em{color:#D9C7A5}.agency-copy p{max-width:570px}.pill-link{display:inline-flex;gap:50px;align-items:center;border:1px solid #F4F0E6;border-radius:100px;padding:18px 24px;margin-top:22px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.pill-link:hover{background:#F4F0E6;color:#002FA7}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:1fr 25px;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.service-row>span{font-size:12px}.service-row h3{font-weight:400;font-size:clamp(20px,2.6vw,38px);margin:0;letter-spacing:-.035em}.experience{background:#E9E3D7}.timeline-item{display:grid;grid-template-columns:180px 1fr;gap:20px;border-top:1px solid var(--line);padding:28px 0}.timeline-item h3{font-size:25px;font-weight:500;margin:0 0 7px}.timeline-item p{margin:0 0 10px}.timeline-item small{display:block;max-width:520px;line-height:1.6;color:#505B78;font-size:13px}.timeline-footnote{margin-top:35px}.contact{background:#071D62;color:#FAF7F0;padding:110px 5.5% 35px}.contact>p{font-size:20px;margin:90px 0 20px}.contact h2{font-size:clamp(65px,11vw,180px);margin:0 0 70px}.contact h2 em{color:#D9C7A5}.contact-email{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #B9C7E6;padding:20px 0;font-size:clamp(20px,3.8vw,58px);font-family:'Italiana',Georgia,serif;overflow-wrap:anywhere}.contact-email:hover{color:#D9C7A5}.contact-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:100px;line-height:1.7}.footer{display:flex;justify-content:space-between;gap:15px;background:#071D62;color:#D6DEF0;border-top:1px solid #4965A8;padding:20px 5.5%;line-height:1.5}@media(max-width:900px){.nav{gap:18px}.statement,.services,.experience,.section-heading{grid-template-columns:1fr}.section-heading p{grid-column:1}.agency{grid-template-columns:1fr}.agency-mark{font-size:100px}.work-meta{display:block}.work-meta p{text-align:left;margin-top:10px}}@media(max-width:650px){.site-header{height:70px}.nav{display:none}.menu-button{display:flex;gap:10px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.mobile-nav.open{display:flex;flex-direction:column;gap:25px;position:absolute;z-index:55;left:0;right:0;top:70px;background:var(--paper);padding:35px 5.5%;border-bottom:1px solid var(--line)}.hero{min-height:calc(100svh - 70px)}.hero-top .eyebrow:last-child{display:none}.hero-center{margin:65px 0 40px}.hero h1{font-size:clamp(78px,18vw,120px)}.hero-asterisk{margin-left:5px}.hero-bottom{align-items:center}.hero-bottom p{font-size:15px}.round-arrow{height:52px;width:52px;flex-basis:52px;font-size:24px}.statement,.services,.experience,.work-section,.agency{padding-top:80px;padding-bottom:80px}.statement h2,.services h2,.experience h2{font-size:clamp(57px,13vw,85px)}.statement-details{grid-template-columns:1fr;gap:0}.work-grid{grid-template-columns:1fr;gap:45px}.work-card-large,.work-card-wide{grid-column:auto}.work-art,.work-card-large .work-art,.work-card-wide .work-art{min-height:310px}.work-meta h3{font-size:16px}.section-heading h2{font-size:68px}.agency-mark{font-size:85px}.timeline-item{grid-template-columns:1fr;gap:10px}.contact{padding-top:80px}.contact>p{margin-top:65px}.contact h2{font-size:clamp(60px,13vw,100px)}.contact-bottom,.footer{flex-direction:column}.contact-bottom{margin-top:65px}.hero-footer{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Portfolio navigation and project pages share the existing editorial system. */
.work-filters{display:flex;flex-wrap:wrap;gap:12px 32px;border-top:1px solid var(--line);padding:22px 0;margin-bottom:40px}
.work-filters[hidden],.work-card[hidden]{display:none}
.work-filters button{border:0;border-bottom:1px solid transparent;background:none;color:var(--ink);padding:8px 0;cursor:pointer;font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.work-filters button[aria-pressed="true"]{color:var(--olive);border-bottom-color:var(--olive)}
.work-filters button:hover{color:var(--olive)}
.work-filters button:focus-visible,.work-card-link:focus-visible,.project-page a:focus-visible{outline:2px solid var(--olive);outline-offset:6px}
.work-card-link{display:block;height:100%}
.art-placeholder{background:var(--olive);color:var(--paper)}
.art-placeholder::before{content:"";position:absolute;inset:12%;border:1px solid rgba(244,240,230,.25)}
.placeholder-note{font-family:'Italiana',Georgia,serif;font-size:clamp(30px,4vw,60px);text-align:center;max-width:80%;line-height:1.1}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.project-return{font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.project-main{padding:70px 5.5% 100px}
.project-heading{max-width:1200px;padding:0 0 60px}
.project-heading h1{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(52px,8vw,130px);letter-spacing:-.055em;line-height:1;margin:28px 0;color:var(--olive);overflow-wrap:break-word}
.project-services{font-size:12px;line-height:1.8;letter-spacing:.13em;text-transform:uppercase;max-width:700px}
.project-hero{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--olive)}
.project-hero>img{display:block;width:100%;height:100%;object-fit:cover}
.project-hero.surety-hotel>img{object-position:50% 65%}
.project-hero.raise-the-bar-initiative>img{object-position:70% 40%}
.project-overview{display:grid;grid-template-columns:25% 1fr;gap:30px;padding:80px 0;border-bottom:1px solid var(--line)}
.project-overview h2,.project-gallery h2{font-weight:400;margin:0}
.project-overview p{font-size:clamp(20px,2.7vw,36px);line-height:1.5;max-width:800px;margin:0}
.project-gallery{padding-top:65px}
.project-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:35px}
.project-gallery figure{margin:0;min-width:0}
.project-placeholder{min-height:0;width:100%;aspect-ratio:4/3;background:var(--olive);color:var(--paper);display:grid;place-items:center;padding:30px;text-align:center;position:relative}
.project-placeholder::before{content:"";position:absolute;inset:10%;border:1px solid rgba(244,240,230,.25);pointer-events:none}
.project-placeholder span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;line-height:1.8}
.project-hero .project-placeholder{height:100%;aspect-ratio:auto}
.project-gallery figcaption{font-size:11px;line-height:1.8;letter-spacing:.1em;margin-top:15px}
.project-navigation{display:flex;justify-content:space-between;gap:30px;margin-top:50px}
.project-photography .project-hero{aspect-ratio:3/2}
.project-photography .project-overview{padding:50px 0}
.project-photography .project-overview p{font-size:20px}
.project-photography .project-gallery-grid{grid-template-columns:1fr;gap:65px}
.project-photography .project-placeholder{aspect-ratio:3/2}
@media(max-width:650px){.work-filters{gap:10px 22px;margin-bottom:30px}.project-main{padding-top:45px;padding-bottom:70px}.project-heading{padding-bottom:35px}.project-overview{grid-template-columns:1fr;gap:22px;padding:45px 0}.project-gallery-grid{grid-template-columns:1fr;gap:35px}.project-hero{aspect-ratio:4/3}.project-navigation{flex-direction:column;gap:0}.project-navigation .text-link{margin-top:30px;align-self:flex-start}.project-return{font-size:10px}.project-photography .project-hero{aspect-ratio:4/3}}
.project-gallery-group{min-width:0}
.project-gallery-group h3{font-family:'Italiana',Georgia,serif;font-weight:400;color:var(--olive);font-size:clamp(30px,3.5vw,48px);line-height:1.1;margin:0 0 28px;letter-spacing:-.035em}
.project-gallery-group figure{margin-top:28px}
.project-gallery-grid img{display:block;width:100%;height:auto}

.project-photography .project-main{padding-left:3%;padding-right:3%}
.project-photography .project-heading{padding:0 2.7% 65px;max-width:1050px}
.project-photography .project-heading h1{font-size:clamp(48px,6.5vw,105px)}
.project-photography .project-hero{aspect-ratio:16/10}
.project-photography .project-overview{margin:0 2.7%;padding:65px 0;grid-template-columns:25% 1fr}
.project-photography .project-overview p{font-size:18px;max-width:480px}
.project-photography .project-gallery{padding-top:100px}
.project-photography .project-gallery>h2{margin-left:2.7%}
.project-photography .project-gallery-grid{display:flex;flex-direction:column;gap:clamp(80px,10vw,170px);margin-top:60px}
.project-photography .gallery-wide{width:100%}
.project-photography .gallery-wide .project-placeholder{aspect-ratio:16/9}
.project-photography .gallery-portrait{width:58%;align-self:flex-end;margin-right:5%}
.project-photography .gallery-portrait .project-placeholder{aspect-ratio:4/5}
.project-photography .gallery-square{width:70%;align-self:flex-start}
.project-photography .gallery-square .project-placeholder{aspect-ratio:1}
.project-photography .gallery-frame img{height:auto;object-fit:contain}
.project-photography .project-navigation{margin:100px 2.7% 0}
.project-experiences .project-gallery-grid{grid-template-columns:1fr;gap:100px}
.experience-story>h3{padding-bottom:25px;border-bottom:1px solid var(--line)}
.experience-chapter{display:grid;grid-template-columns:25% minmax(0,1fr);gap:30px;padding:45px 0}
.experience-chapter h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:400;margin:0 0 20px}
.experience-chapter-copy p{font-size:14px;line-height:1.8;margin:0;max-width:260px}
.experience-chapter-media{min-width:0}
.experience-chapter-media .project-placeholder{aspect-ratio:16/10}
.experience-chapter-media figure+figure{margin-top:40px}
@media(max-width:650px){.project-photography .project-main{padding-left:5.5%;padding-right:5.5%}.project-photography .project-heading{padding:0 0 40px}.project-photography .project-hero{aspect-ratio:4/3}.project-photography .project-overview{margin:0;grid-template-columns:1fr;padding:45px 0}.project-photography .project-gallery{padding-top:65px}.project-photography .project-gallery>h2{margin-left:0}.project-photography .project-gallery-grid{gap:65px;margin-top:35px}.project-photography .gallery-portrait{width:85%;margin-right:0}.project-photography .gallery-square{width:90%}.project-photography .project-navigation{margin:65px 0 0}.experience-chapter{grid-template-columns:1fr;gap:25px;padding:30px 0}.experience-chapter-copy p{max-width:100%}.project-experiences .project-gallery-grid{gap:65px}}

/* Role details belong only to case studies that provide them. */
.project-role-list{font-size:14px;line-height:1.9;max-width:760px;margin:0 0 45px;padding-left:20px}
.project-role-list li+li{margin-top:8px}

/* Installation collections keep related productions within a single case study. */
.project-installations .project-gallery-grid{gap:clamp(100px,12vw,190px)}
.project-installations .installation-subtitle{font-size:12px;line-height:1.8;letter-spacing:.1em;margin:0 0 45px;text-transform:uppercase}
.project-installations .experience-chapter{padding:55px 0}
.project-installations .experience-chapter-media>.project-placeholder+.project-placeholder{margin-top:40px}
.project-installations .presentation-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:25px;font-size:12px;line-height:1.8}
.project-installations .presentation-links a{border-bottom:1px solid var(--olive);padding-bottom:6px}
.project-installations .presentation-pending,.project-installations .concept-pair p{font-size:11px;line-height:1.8;letter-spacing:.1em;text-transform:uppercase}
.project-installations .presentation-pending{margin-top:25px}
.project-installations .concept-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:65px}
.project-installations .concept-pair>div{min-width:0}
@media(max-width:650px){.project-installations .experience-chapter{padding:35px 0}.project-installations .concept-pair{grid-template-columns:1fr;gap:30px;margin-top:40px}.project-installations .project-gallery-grid{gap:90px}}

/* A continuous editorial gallery replaces the installation stage framework. */
.installations-editorial{padding-top:65px}
.collection-heading{max-width:1000px;margin-bottom:45px}
.collection-heading h1{font-family:'Italiana',Georgia,serif;font-size:clamp(55px,8vw,125px);font-weight:400;letter-spacing:-.055em;line-height:.98;color:var(--olive);margin:35px 0 25px}
.collection-note{font-size:12px;line-height:1.8;color:#505B78;margin:0;max-width:440px}
.installation-index{display:flex;flex-wrap:wrap;gap:18px 45px;padding:25px 0;border-top:1px solid var(--line);font-size:11px;letter-spacing:.08em;line-height:1.8}
.installation-index a:hover,.installation-deck a:hover{color:var(--olive)}
.installation-feature{padding-top:85px;margin-top:20px}
.installation-feature+.installation-feature{margin-top:110px;border-top:1px solid var(--line)}
.installation-intro{display:grid;grid-template-columns:25% minmax(0,1fr);gap:30px;margin-bottom:55px}
.installation-intro>.section-index{margin-top:9px}
.installation-intro h2{font-family:'Italiana',Georgia,serif;font-size:clamp(38px,5vw,76px);font-weight:400;line-height:1.05;letter-spacing:-.045em;color:var(--olive);margin:0 0 22px}
.installation-venue{font-size:15px;margin:0 0 10px}
.installation-services{font-size:10px;letter-spacing:.13em;text-transform:uppercase;line-height:1.9;margin:0 0 25px}
.installation-description{font-size:16px;line-height:1.85;max-width:640px;margin:0}
.installation-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:50px 28px;align-items:start}
.installation-gallery figure{margin:0;min-width:0}
.installation-gallery figcaption{font-size:10px;letter-spacing:.08em;line-height:1.8;margin-top:14px;color:#505B78}
.installation-image{grid-column:span 8}
.installation-image.image-hero{grid-column:1/-1}
.installation-image.image-portrait{grid-column:span 4}
.installation-image.image-square{grid-column:span 6}
.installation-image img{display:block;width:100%;height:auto}
.installation-gallery.is-preview{gap:28px;align-items:center}
.installation-sample>div{background:#E9E3D7;border:1px solid rgba(24,35,74,.08)}
.installation-sample.sample-1{grid-column:span 7}
.installation-sample.sample-1>div{aspect-ratio:16/9}
.installation-sample.sample-2{grid-column:9/span 4;margin-top:50px}
.installation-sample.sample-2>div{aspect-ratio:4/5;background:#E1DCD2}
.installation-sample.sample-3{grid-column:3/span 6;margin-top:10px}
.installation-sample.sample-3>div{aspect-ratio:3/2;background:#EEE9DF}
@media(max-width:650px){.installations-editorial{padding-top:40px}.collection-heading{margin-bottom:35px}.collection-heading h1{font-size:clamp(49px,12vw,75px);margin-top:25px}.installation-index{flex-direction:column;gap:12px}.installation-feature{padding-top:45px}.installation-feature+.installation-feature{margin-top:65px;padding-top:65px}.installation-intro{grid-template-columns:1fr;gap:15px;margin-bottom:35px}.installation-intro h2{font-size:42px}.installation-description{font-size:15px}.installation-gallery{gap:30px 15px}.installation-image,.installation-image.image-square{grid-column:1/-1}.installation-image.image-portrait{grid-column:2/span 10}.installation-sample.sample-1{grid-column:1/-1}.installation-sample.sample-2{grid-column:5/span 8;margin-top:0}.installation-sample.sample-3{grid-column:1/span 9;margin-top:0}}
.installation-sample.sample-4{grid-column:9/span 4;margin-top:45px}
.installation-sample.sample-4>div{aspect-ratio:3/2;background:#E5E0D6}
@media(max-width:650px){.installation-sample.sample-4{grid-column:4/span 9;margin-top:0}}

/* Uploaded covers retain the card treatment; heroes show the full photograph. */
.work-art>picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.work-art>picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--cover-position,50% 50%)}
.project-cover-natural .project-hero{aspect-ratio:auto;background:transparent}
.project-cover-natural .project-hero.cover-portrait{max-width:900px;margin-inline:auto}
.project-cover-natural .project-hero picture,.collection-cover picture{display:block}
.project-cover-natural .project-hero img,.collection-cover img{display:block;width:100%;height:auto;object-fit:contain}
.collection-cover{max-width:900px;margin:65px auto 90px}
@media(max-width:650px){.collection-cover{margin:40px auto 55px}}
.work-card-wide .work-art.cover-portrait{aspect-ratio:3/2;min-height:0}
@media(max-width:650px){.work-card-wide .work-art.cover-portrait{aspect-ratio:4/5}}

/* Homepage editorial positioning. */
.hero #hero-title{font-size:clamp(66px,10.2vw,156px);line-height:.98;letter-spacing:-.05em}
#about .statement-details{grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);gap:clamp(40px,4.5vw,70px);max-width:950px;align-items:start}
#about .statement-details p{margin:0;line-height:1.7}
#about .statement-details .statement-opening{font-size:20px;max-width:36ch}
#about .statement-support{max-width:65ch}
#about .statement-support p+p{margin-top:26px}
@media(max-width:900px){#about .statement-details{grid-template-columns:1fr;gap:32px;max-width:65ch}#about .statement-details .statement-opening{max-width:48ch}}
@media(max-width:650px){#about .statement-details .statement-opening{font-size:19px}#about .statement-support p+p{margin-top:24px}}
.point-of-view{background:var(--olive);color:var(--paper);padding:110px 9% 120px}
.point-of-view .eyebrow{display:block}
.point-of-view h2{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(60px,8vw,120px);line-height:1.04;letter-spacing:-.045em;max-width:1050px;margin:65px 0 50px}
.point-of-view h2 em{font-weight:400}
.point-of-view p{max-width:470px;margin:0 0 0 auto;font-size:17px;line-height:1.85}
@media(max-width:900px){.hero #hero-title{font-size:10.5vw}.point-of-view{padding:90px 7%}.point-of-view h2{margin:50px 0 40px}}
@media(max-width:650px){.hero #hero-title{font-size:10.4vw;line-height:1.08;letter-spacing:-.045em}.point-of-view{padding:75px 5.5% 80px}.point-of-view h2{font-size:clamp(48px,12vw,76px);margin:45px 0 35px}.point-of-view p{font-size:15px;max-width:340px}}

/* One compact square-thumbnail system across every portfolio filter. */
#work-grid{width:100%;max-width:1080px;margin-inline:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px;align-items:start}
#work-grid .work-card{grid-column:auto;min-width:0}
#work-grid .work-art{width:100%;aspect-ratio:1;min-height:0;max-height:none;background:transparent}
#work-grid .work-art img{width:100%;height:100%;object-fit:cover;object-position:var(--cover-position,50% 50%)}
#work-grid .work-art::after{display:none}
#work-grid .art-corner{color:var(--ink);background:var(--paper);padding:4px 6px;bottom:10px;left:10px;font-size:9px}
#work-grid .work-meta{display:block;margin-top:10px;padding-top:10px}
#work-grid .work-meta h3{font-size:16px;line-height:1.35}
#work-grid .work-meta p{text-align:left;margin-top:6px;font-size:10px;line-height:1.6}
#work-grid a[href="/projects/union-square-couture/"] .work-art img{object-position:50% 20%}
#work-grid a[href="/projects/eden/"] .work-art img{object-position:50% 60%}
#work-grid a[href="/projects/wedding-show-productions/"] .work-art img{object-position:50% 60%}
@media(max-width:1000px){#work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}}
@media(max-width:600px){#work-grid{max-width:350px;grid-template-columns:minmax(0,1fr);gap:26px}}

/* Experience expands into an editorial portrait of independent practice. */
#experience{background:var(--paper)}
#experience-title{font-size:clamp(58px,7.5vw,116px);line-height:1.02}
.independent-exploration{grid-column:1/-1;padding-top:100px;margin-top:45px;border-top:1px solid var(--line)}
.exploration-heading{max-width:820px;margin-bottom:85px}
.exploration-heading .eyebrow{line-height:1.8;margin:0 0 30px}
.exploration-heading h3{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(58px,7vw,105px);line-height:1.05;letter-spacing:-.045em;margin:0 0 30px}
.exploration-heading h3 em{color:var(--olive);font-weight:400}
.exploration-intro{font-size:18px;line-height:1.7;max-width:540px;margin:0}
.exploration-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:center;padding:65px 0}
.exploration-entry+.exploration-entry{border-top:1px solid var(--line)}
.exploration-copy{max-width:560px;min-width:0}
.exploration-copy .eyebrow,.exploration-study>.eyebrow{font-size:11px;line-height:1.9;margin:0 0 24px}
.exploration-copy h4{font-family:'Italiana',Georgia,serif;font-size:clamp(36px,4vw,59px);line-height:1.12;letter-spacing:-.035em;font-weight:400;margin:0 0 20px}
.exploration-copy p{font-size:16px;line-height:1.75;margin:0}
.exploration-copy .exploration-subtitle{font-size:12px;line-height:1.8;color:var(--olive);margin-bottom:24px}
.exploration-media{margin:0;width:100%;max-width:520px}
.exploration-media>div{background:#E9E3D7}
.exploration-media figcaption{font-size:10px;line-height:1.8;letter-spacing:.08em;margin-top:14px;color:#505B78}
.exploration-portrait{max-width:270px;justify-self:center}
.exploration-portrait>div{aspect-ratio:4/5}
.exploration-portrait>img,.exploration-landscape>img,.exploration-video>img{display:block;width:100%;height:auto}
.exploration-landscape>div{aspect-ratio:3/2}
.exploration-video>div{aspect-ratio:16/9}
.exploration-study{align-items:start}
@media(max-width:900px){.exploration-entry{gap:40px}.independent-exploration{padding-top:75px;margin-top:30px}.exploration-heading{margin-bottom:40px}}
@media(max-width:650px){#experience-title{font-size:clamp(47px,11vw,70px)}.independent-exploration{padding-top:60px;margin-top:25px}.exploration-heading h3{font-size:clamp(48px,12vw,72px)}.exploration-intro{font-size:16px}.exploration-entry{grid-template-columns:1fr;gap:30px;padding:45px 0}.exploration-copy h4{font-size:38px}.exploration-study{gap:0}.exploration-portrait{max-width:230px;justify-self:start}.exploration-speaking .exploration-copy{grid-row:1}.exploration-landscape,.exploration-video{max-width:420px}}

/* A composed photo essay, scoped to editorial project galleries. */
.project-editorial-gallery .project-gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(60px,8vw,120px) 28px;align-items:start}
.project-editorial-gallery .gallery-frame{width:auto;margin:0;min-width:0;grid-column:span 6}
.project-editorial-gallery .gallery-full{grid-column:1/-1}
.project-editorial-gallery .gallery-inset{grid-column:3/span 8}
.project-editorial-gallery .gallery-offset{grid-column:6/span 7}
.project-editorial-gallery .gallery-quiet{grid-column:2/span 6}
.project-editorial-gallery .gallery-frame picture{display:block}
.project-editorial-gallery .gallery-frame img{width:100%;height:auto;display:block}
@media(max-width:650px){.project-editorial-gallery .project-gallery-grid{grid-template-columns:minmax(0,1fr);gap:45px;margin-top:35px}.project-editorial-gallery .gallery-frame{grid-column:1/-1;margin:0;width:100%}.project-editorial-gallery .project-gallery{padding-top:55px}}

/* Give motherstone's original jewelry photography a stronger editorial presence. */
.exploration-maker{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.exploration-maker .exploration-portrait{max-width:none;justify-self:stretch}
@media(max-width:650px){.exploration-maker{grid-template-columns:minmax(0,1fr);gap:32px}.exploration-maker .exploration-portrait{width:100%}}

/* Personal and studio Instagram profiles share the site's restrained navigation. */
.social-links{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:10px;line-height:1.7;letter-spacing:.08em;text-transform:uppercase}
.social-links a:hover{text-decoration:underline;text-underline-offset:4px}
.social-links a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.site-header{gap:20px}
.footer{flex-wrap:wrap;align-items:baseline}
@media(max-width:1100px){.site-header{height:auto;min-height:100px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;gap:12px 20px}.header-socials{flex-basis:100%;justify-content:flex-end}}
@media(max-width:650px){.site-header{height:110px;min-height:110px;align-content:center}.header-socials{justify-content:flex-start}.mobile-nav.open{top:110px}.footer{align-items:flex-start}}

/* Strategy context complements the supplied editorial previews. */
.project-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(30px,6vw,90px);padding:70px 0 25px}
.project-story h2{font-family:'Italiana',Georgia,serif;font-size:clamp(35px,4vw,58px);font-weight:400;letter-spacing:-.035em;line-height:1.12;color:var(--olive);margin:0}
.project-story p{font-size:16px;line-height:1.75;max-width:65ch;margin:0}
.project-story p+p{margin-top:24px}
.gallery-original{display:inline-block;margin-left:20px;border-bottom:1px solid var(--line)}
.gallery-original:focus-visible{outline:2px solid var(--olive);outline-offset:5px}
@media(max-width:650px){.project-story{grid-template-columns:minmax(0,1fr);gap:25px;padding-top:45px}.gallery-original{display:block;width:fit-content;margin:10px 0 0}}

/* Shared desktop image limits keep project photography intimate and proportional. */
@media(min-width:1024px){
  .project-page .project-gallery,.project-page .installation-gallery{width:70%;max-width:850px;margin-inline:auto}
  .project-page .project-hero{width:88%;max-width:1050px;margin-inline:auto;aspect-ratio:auto;background:transparent}
  .project-page .project-hero.cover-portrait,.project-page .project-hero.surety-hotel{max-width:600px}
  .project-page .project-hero picture,.project-page .collection-cover picture{width:fit-content;max-width:100%;margin-inline:auto}
  .project-page .project-hero img,.project-page .collection-cover img{display:block;width:auto;height:auto;max-width:100%;max-height:min(740px,78svh);margin-inline:auto;object-fit:contain}
  .project-page .collection-cover{width:82%;max-width:740px;margin-inline:auto}
  .project-page .project-gallery-grid{row-gap:clamp(60px,6vw,90px)}
  .project-page .project-gallery-grid picture{display:block;width:fit-content;max-width:100%;margin-inline:auto}
  .project-page .project-gallery-grid img,.project-page .installation-gallery img{display:block;width:auto;height:auto;max-width:100%;max-height:760px;margin-inline:auto;object-fit:contain}
}

/* Three-image editorial passages retain the same restrained gallery measure. */
.project-editorial-gallery .gallery-trio{grid-column:span 4}
@media(max-width:650px){.project-editorial-gallery .gallery-trio{grid-column:1/-1}}

.project-overview-copy p+p{margin-top:1em}

/* ReGEM's intimate jewelry edit stays independent of other project galleries. */
@media(min-width:1024px){
  .project-page.project-regem-editorial .project-gallery{max-width:760px}
  .project-regem-editorial .gallery-inset{grid-column:4/span 7}
  .project-page.project-regem-editorial .project-gallery-grid img{max-height:675px}
}

/* Littleleaf and Pause share a restrained editorial gallery measure. */
@media(min-width:1024px){
  .project-page:is(.project-littleleaf-editorial,.project-pause-editorial) .project-gallery{width:100%;max-width:900px}
  :is(.project-littleleaf-editorial,.project-pause-editorial) .gallery-inset{grid-column:4/span 7}
  .project-page:is(.project-littleleaf-editorial,.project-pause-editorial) .project-gallery-grid img{max-height:675px}
}

/* Shared Littleleaf and Pause image passages preserve intentional groupings and pacing. */
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-image-group{grid-column:1/-1;display:grid;gap:28px;align-items:center;min-width:0}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-3{grid-template-columns:repeat(3,minmax(0,1fr))}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-2{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-image-group .gallery-frame{grid-column:auto;width:100%;margin:0}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-stacked{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px;align-items:center}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-stacked .gallery-frame:first-child{grid-column:1;grid-row:1/span 2}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-stacked .gallery-frame:not(:first-child){grid-column:2}
:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-1{width:100%;max-width:840px;margin-inline:auto}
@media(min-width:651px) and (max-width:1023px){:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-3:not(.editorial-group-stacked){gap:20px}}
@media(max-width:650px){:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-image-group{grid-template-columns:minmax(0,1fr);gap:35px}:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-stacked .gallery-frame:first-child,:is(.project-littleleaf-editorial,.project-pause-editorial) .editorial-group-stacked .gallery-frame:not(:first-child){grid-column:1;grid-row:auto}}

/* Pause's restorative editorial sequence uses the established image groupings. */
.project-context{font-size:12px;line-height:1.9;margin-top:24px;color:var(--olive)}
.project-context a{border-bottom:1px solid var(--line)}
.project-pause-editorial .editorial-group-1:has(.gallery-inset){max-width:450px}

/* Pause detail hero sizing stays independent of the homepage thumbnail. */
.project-page.project-pause-editorial .project-hero{width:100%;max-width:1050px;margin-inline:auto;aspect-ratio:auto;background:transparent}
.project-page.project-pause-editorial .project-hero picture{display:block;width:100%;max-width:100%;margin-inline:auto}
.project-page.project-pause-editorial .project-hero img{display:block;width:100%;height:auto;max-width:100%;max-height:none;margin-inline:auto;object-fit:contain}
@media(min-width:1024px){.project-pause-editorial .project-main{padding-top:40px}.project-page.project-pause-editorial .project-heading{padding-bottom:38px}}


/* Surety's asset-ready case study stays independent of shared project galleries. */
.project-page.project-surety-case-study .surety-case-study{padding:50px 5.5% 90px;max-width:1440px;margin-inline:auto}
.surety-heading{max-width:1050px;margin:0 auto 35px}
.surety-heading h1{font-family:'Italiana',Georgia,serif;font-size:clamp(50px,7.4vw,106px);font-weight:400;line-height:1.02;letter-spacing:-.045em;color:var(--olive);margin:25px 0 30px}
.surety-role{font-size:15px;line-height:1.6;max-width:650px}
.surety-location{font-size:12px;color:var(--olive);margin-top:12px}
.surety-opening{max-width:760px;margin:0 auto 45px}
.surety-opening p,.surety-copy p{font-size:16px;line-height:1.75;margin:0 0 20px}
.surety-placement{margin:0;min-width:0}
.surety-placement-area{aspect-ratio:3/2;background:rgba(0,47,167,.025);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;gap:10px}
.surety-placement span{font-size:13px;line-height:1.5;color:var(--ink)}
.surety-placement small{font-size:9px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;color:var(--olive)}
.surety-placement.hero{display:block;min-height:0;padding:0;max-width:1050px;width:100%;margin:0 auto 65px}
.surety-placement.hero .surety-placement-area{aspect-ratio:16/9}
.surety-placement.portrait .surety-placement-area{aspect-ratio:4/5}
.surety-scope{display:grid;grid-template-columns:180px 1fr;gap:40px;max-width:1050px;margin:auto;padding-bottom:70px}
.surety-scope h2{font-weight:400;margin:0}
.surety-scope ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 35px;list-style:none;padding:0;margin:0}
.surety-scope li{font-size:13px;line-height:1.65}
.surety-chapter{max-width:900px;margin:0 auto;padding:70px 0;border-top:1px solid var(--line)}
.surety-section-intro{max-width:720px;margin-bottom:42px}
.surety-section-intro h2{font-family:'Italiana',Georgia,serif;font-size:clamp(38px,4.7vw,65px);font-weight:400;line-height:1.08;letter-spacing:-.035em;color:var(--olive);margin:22px 0 28px}
.surety-image-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:28px;align-items:start}
.surety-image-row.pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:740px;margin-inline:auto}
.surety-placement.social{max-width:600px;margin:45px auto 0}
.surety-placement.social .surety-placement-area{aspect-ratio:4/3}
.surety-outlet+ .surety-outlet{margin-top:60px}
.surety-outlet h3,.surety-event-group h3{font-weight:400;font-size:22px;line-height:1.4;margin:0 0 25px;color:var(--ink)}
.surety-event-group{margin-top:48px}
.surety-event-group>.surety-placement{max-width:740px;margin:0 auto 24px}
.surety-editing-note{font-size:13px;line-height:1.7;color:var(--olive);max-width:600px}
.surety-case-study .project-navigation{max-width:1050px;margin:35px auto 0}
@media(max-width:700px){.project-page.project-surety-case-study .surety-case-study{padding-top:35px}.surety-scope{grid-template-columns:1fr;gap:24px;padding-bottom:45px}.surety-chapter{padding:45px 0}.surety-image-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.surety-image-row>.surety-placement:last-child:nth-child(odd){grid-column:1/-1;max-width:380px;width:100%;justify-self:center}.surety-placement-area{padding:18px}.surety-placement.hero{margin-bottom:45px}.surety-event-group{margin-top:35px}}
@media(max-width:450px){.surety-image-row,.surety-image-row.pair{grid-template-columns:1fr;gap:20px}.surety-image-row>.surety-placement:last-child:nth-child(odd){max-width:none}.surety-placement.portrait .surety-placement-area{aspect-ratio:4/3}.surety-scope ul{grid-template-columns:1fr;gap:10px}.surety-placement.hero .surety-placement-area{aspect-ratio:3/2}}

/* Asset studies are visible in the editing preview, never as public empty boxes. */
.project-surety-case-study:not(.surety-editing-preview) .surety-placement:has(.surety-placement-area),
.project-surety-case-study:not(.surety-editing-preview) .surety-image-row:not(:has(img,video)),
.project-surety-case-study:not(.surety-editing-preview) .surety-event-group:not(:has(img,video)){display:none}
.project-surety-case-study:not(.surety-editing-preview) .surety-section-intro{margin-bottom:0}
.project-surety-case-study:not(.surety-editing-preview) .surety-outlet{margin-top:24px}
.project-surety-case-study:not(.surety-editing-preview) .surety-outlet h3{margin-bottom:0}
.surety-image-row.artifacts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin-inline:auto;gap:28px}
.surety-placement.artifact{max-width:740px;margin:0 auto 32px;width:100%}
.surety-placement.artifact .surety-placement-area{aspect-ratio:4/5}
.surety-image-row.artifacts .surety-placement{margin-bottom:0}
.surety-placement img,.surety-placement video{display:block;width:100%;height:auto;object-fit:contain}
.surety-placement.artifact img{max-height:none;object-fit:contain}
.surety-placement.hero img{width:100%;height:auto;max-width:1050px;object-fit:contain}
.surety-preview-banner{padding:18px 5.5%;font-size:12px;line-height:1.7;color:var(--olive);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 25px}
.surety-preview-banner a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.surety-image-row.artifacts{grid-template-columns:1fr}.surety-placement.artifact .surety-placement-area{aspect-ratio:4/3}}

/* The Hotel: natural, uncropped portrait triptychs at Littleleaf's editorial scale. */
.project-surety-case-study #surety-hotel-section .surety-section-intro{margin-bottom:38px}
#surety-hotel-gallery{max-width:900px;margin-inline:auto}
#surety-hotel-gallery .surety-image-row{gap:28px;margin-bottom:42px;align-items:center}
#surety-hotel-gallery .surety-hotel-photo img{display:block;width:100%;height:auto;object-fit:contain}
#surety-hotel-gallery .surety-image-row:last-child{margin-bottom:0}
@media(min-width:601px) and (max-width:900px){#surety-hotel-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px;align-items:center}#surety-hotel-gallery .surety-image-row{display:contents}}
@media(max-width:600px){#surety-hotel-gallery .surety-image-row{grid-template-columns:1fr;gap:30px;margin-bottom:30px}#surety-hotel-gallery .surety-placement{width:100%;max-width:400px;justify-self:center}#surety-hotel-gallery .surety-image-row>.surety-placement:last-child:nth-child(odd){max-width:400px;grid-column:auto}}

/* Food & Beverage: compact editorial passages, with uncropped, equal-height images. */
.project-surety-case-study #surety-food-beverage .surety-section-intro{margin-bottom:38px}
#surety-food-beverage-gallery{width:min(1100px,89vw);margin-left:50%;transform:translateX(-50%)}
#surety-food-beverage-gallery .editorial-row{display:flex;gap:22px;align-items:start;margin:0 0 30px;max-width:none}
#surety-food-beverage-gallery .surety-placement{flex:var(--photo-ratio) 1 0;width:0;max-width:none;margin:0;min-width:0}
#surety-food-beverage-gallery .row-2{max-width:850px;margin-inline:auto}
#surety-food-beverage-gallery img{display:block;width:100%;height:auto;object-fit:contain}
#surety-food-beverage-gallery .editorial-row:last-child{margin-bottom:0}
@media(min-width:651px) and (max-width:1100px){
#surety-food-beverage-gallery .row-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
#surety-food-beverage-gallery .row-5{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
#surety-food-beverage-gallery .row-5 .surety-placement{grid-column:span 2}
#surety-food-beverage-gallery .row-5 .surety-placement:nth-child(n+4){grid-column:span 3}
#surety-food-beverage-gallery .surety-placement{width:auto}
}
@media(max-width:650px){
#surety-food-beverage-gallery .editorial-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin-bottom:24px}
#surety-food-beverage-gallery .surety-placement{width:100%;grid-column:auto;max-width:none;justify-self:center}
#surety-food-beverage-gallery .editorial-row>.surety-placement:last-child:nth-child(odd){grid-column:1/-1;max-width:260px}
#surety-food-beverage-gallery .row-2{grid-template-columns:1fr;max-width:430px}
}
@media(max-width:370px){#surety-food-beverage-gallery .editorial-row{grid-template-columns:1fr}#surety-food-beverage-gallery .editorial-row .surety-placement{grid-column:1;max-width:300px}}

/* Events & Experiences: compact editorial passages, with uncropped, equal-height images. */
.project-surety-case-study #surety-events .surety-section-intro{margin-bottom:38px}
#surety-events-gallery{width:min(1100px,89vw);margin-left:50%;transform:translateX(-50%)}
#surety-events-gallery .editorial-row{display:flex;gap:22px;align-items:start;margin:0 0 30px;max-width:none}
#surety-events-gallery .surety-placement{flex:var(--photo-ratio) 1 0;width:0;max-width:none;margin:0;min-width:0}
#surety-events-gallery .row-2{max-width:850px;margin-inline:auto}
#surety-events-gallery img{display:block;width:100%;height:auto;object-fit:contain}
#surety-events-gallery .editorial-row:last-child{margin-bottom:0}
@media(min-width:651px) and (max-width:1100px){
#surety-events-gallery .row-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
#surety-events-gallery .row-5{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
#surety-events-gallery .row-5 .surety-placement{grid-column:span 2}
#surety-events-gallery .row-5 .surety-placement:nth-child(n+4){grid-column:span 3}
#surety-events-gallery .surety-placement{width:auto}
}
@media(max-width:650px){
#surety-events-gallery .editorial-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin-bottom:24px}
#surety-events-gallery .surety-placement{width:100%;grid-column:auto;max-width:none;justify-self:center}
#surety-events-gallery .editorial-row>.surety-placement:last-child:nth-child(odd){grid-column:1/-1;max-width:260px}
#surety-events-gallery .row-2{grid-template-columns:1fr;max-width:430px}
}
@media(max-width:370px){#surety-events-gallery .editorial-row{grid-template-columns:1fr}#surety-events-gallery .editorial-row .surety-placement{grid-column:1;max-width:300px}}

#surety-events-gallery .row-1{max-width:360px;margin-inline:auto}
@media(max-width:650px){#surety-events-gallery .row-1{grid-template-columns:1fr}#surety-events-gallery .row-1>.surety-placement:last-child:nth-child(odd){max-width:360px}}
#surety-events-gallery .row-1>.surety-placement{flex:1}

/* Preserve a clear introduction above the complete social media grids. */
#surety-brand-digital .surety-section-intro{margin-bottom:38px}

/* Portraits & Abstracts: an expressive personal practice within the shared portfolio. */
#work-grid .portrait-card-art{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--olive);background:var(--paper)}
.portrait-card-monogram{font-family:'Italiana',Georgia,serif;font-size:clamp(78px,10vw,145px);letter-spacing:-.09em;line-height:1}
.portrait-card-monogram em{font-size:.52em;font-weight:400;vertical-align:middle;margin-inline:.03em}
.project-page .portraits-main{max-width:1220px;padding:65px 5.5% 80px;margin-inline:auto}
.portraits-heading{padding:15px 0 55px;border-bottom:1px solid var(--line)}
.portraits-heading h1{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(65px,9vw,128px);letter-spacing:-.055em;line-height:1.02;color:var(--olive);margin:30px 0}
.portraits-heading h1 span{display:block;margin-left:16%}
.portraits-subtitle{font-size:clamp(17px,1.8vw,22px);line-height:1.6;max-width:560px;margin:30px 0 0 16%}
.portraits-intro{display:grid;grid-template-columns:.9fr 1.25fr;gap:clamp(35px,6vw,90px);padding:55px 0 70px}
.portraits-intro p,.canyon-copy p{font-size:16px;line-height:1.8;margin:0 0 22px}
.portraits-intro .portraits-opening{font-family:'Italiana',Georgia,serif;font-size:36px;line-height:1.22;color:var(--olive);max-width:310px}
.portraits-section-heading{margin-bottom:35px}
.portraits-section-heading h2,.canyon-copy h2{font-family:'Italiana',Georgia,serif;font-weight:400;font-size:clamp(40px,5vw,65px);letter-spacing:-.04em;line-height:1.1;color:var(--olive);margin:20px 0}
.portraits-gallery-section{padding:45px 0 65px;border-top:1px solid var(--line)}
.portraits-gallery-section:not(:has(img)){display:none}
.portraits-gallery{max-width:900px;margin-inline:auto}
.portrait-image-group{display:grid;gap:28px;align-items:center;margin-bottom:38px}
.portrait-group-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.portrait-group-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.portraits-gallery figure{min-width:0;margin:0}
.portraits-gallery img{display:block;width:100%;height:auto;object-fit:contain}
.portraits-abstract-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:35px 28px;align-items:center}
.portrait-study-wide{grid-column:1/span 8}.portrait-study-inset{grid-column:6/span 7}.portrait-study-offset{grid-column:2/span 5}
/* Canyon Minis: a compact editorial campaign with an uncropped image pairing. */
.canyon-feature{max-width:840px;margin-inline:auto;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.canyon-feature[hidden]{display:none}
.canyon-heading .section-index{color:var(--olive);margin:0 0 12px}
.canyon-heading h2{font-family:'Italiana',Georgia,serif;font-size:clamp(42px,5vw,60px);font-weight:400;letter-spacing:-.04em;line-height:1.05;color:var(--olive);margin:0 0 12px}
.canyon-intro{font-size:15px;line-height:1.6;margin:0 0 24px}
.canyon-image-pair{display:grid;grid-template-columns:1.079365fr 1fr;gap:20px;max-width:840px}
.canyon-image-pair figure{margin:0;min-width:0}
.canyon-image-pair img{display:block;width:100%;height:auto}
.canyon-booking{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.canyon-session p{margin:0;font-size:13px;line-height:1.7}
.canyon-session .canyon-session-dates{font-size:16px;font-weight:500;margin-bottom:5px}
.canyon-inquiry{display:inline-flex;align-items:center;justify-content:center;gap:22px;flex-shrink:0;min-height:52px;padding:16px 23px;border:1px solid var(--olive);background:var(--olive);color:var(--paper);font-size:11px;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;transition:background .2s,border-color .2s}
.canyon-inquiry:hover{background:var(--ink);border-color:var(--ink)}
.canyon-inquiry:active{transform:translateY(1px)}
.canyon-inquiry:focus-visible{outline:2px solid var(--olive);outline-offset:5px}
@media(max-width:900px){.canyon-booking{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.canyon-feature{padding:26px 0}.canyon-intro{font-size:14px;margin-bottom:20px}.canyon-image-pair{grid-template-columns:1fr;gap:14px;max-width:360px;margin-inline:auto}.canyon-mercedes-portrait img{aspect-ratio:1.12;object-fit:cover;object-position:50% 60%}.canyon-booking{margin-top:20px;padding-top:18px;gap:16px}.canyon-session .canyon-session-dates{font-size:15px}.canyon-session-details{max-width:300px}.canyon-inquiry{width:100%;min-height:54px}}

.portraits-services{padding:70px 0 30px}
.portrait-service-list>div{display:grid;grid-template-columns:35px 1fr 1.3fr;gap:22px;border-top:1px solid var(--line);padding:26px 0;align-items:baseline}
.portrait-service-list span{font-size:11px;color:var(--olive)}
.portrait-service-list h3{font-weight:400;font-size:19px;margin:0}
.portrait-service-list p{font-size:14px;line-height:1.8;margin:0}
.portrait-inquiry:focus-visible{outline:2px solid var(--olive);outline-offset:6px}
.portraits-main .text-link{gap:24px;line-height:1.7}
/* Only the preparation preview exposes future image placements. */
.portraits-editing-preview .portraits-gallery-section{display:block}
.portrait-upload-slot{aspect-ratio:3/4;border:1px dashed var(--line);display:grid;place-items:center;padding:20px;font-size:12px;text-align:center;color:var(--olive)}
.portrait-study-wide .portrait-upload-slot{aspect-ratio:3/2}
.portrait-study-inset .portrait-upload-slot{aspect-ratio:4/3}
@media(max-width:700px){.portraits-intro{grid-template-columns:1fr;gap:25px}.portraits-intro .portraits-opening{max-width:420px}.portrait-service-list>div{grid-template-columns:24px 1fr;gap:14px}.portrait-service-list p{grid-column:2}.portraits-main .project-navigation{flex-wrap:wrap;gap:20px}}
@media(max-width:650px){.project-page .portraits-main{padding-top:35px}.portraits-heading h1{font-size:clamp(55px,12vw,78px)}.portraits-heading h1 span{margin-left:5%}.portraits-subtitle{margin-left:5%;font-size:17px}.portraits-heading{padding-bottom:35px}.portraits-intro{padding:35px 0 45px}.portrait-image-group{grid-template-columns:1fr;gap:28px}.portraits-abstract-gallery{grid-template-columns:1fr;gap:30px}.portraits-abstract-gallery figure{grid-column:1;width:100%}.portraits-services{padding-top:50px}.portraits-main .text-link{font-size:11px;letter-spacing:.06em}}
/* Uploaded personal photographs retain complete source compositions. */
.portraits-abstract-gallery>.portrait-image-group{grid-column:1/-1;margin-bottom:0}
.portraits-abstract-gallery .portrait-abstract-soft{max-width:740px;justify-self:center}
.portraits-abstract-gallery .portrait-abstract-quiet{width:min(100%,420px);justify-self:center;grid-template-columns:1fr}
#work-grid a[href="/projects/portraits-abstracts/"] .work-art img{object-position:50% 100%}
/* Growing personal collection: proportional rows with varied editorial emphasis. */
.portraits-gallery .portrait-curated-row{display:flex;gap:24px;align-items:center;margin:0 0 36px;width:100%;max-width:900px;justify-self:center}
.portraits-gallery .portrait-curated-row>figure{flex:var(--portrait-ratio) 1 0;min-width:0}
.portraits-gallery .portrait-curated-1{max-width:740px;margin-inline:auto}
.portraits-gallery .portrait-curated-1>figure{flex:1}
.portraits-gallery .portrait-soft-row{max-width:740px;margin-inline:auto}
.portraits-gallery .portrait-curated-row:last-child{margin-bottom:0}
.portraits-abstract-gallery:has(.portrait-curated-row){row-gap:0}
@media(max-width:650px){
.portraits-gallery .portrait-curated-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px;margin-bottom:30px}
.portraits-gallery .portrait-curated-1,.portraits-gallery .portrait-mixed-row{grid-template-columns:1fr;max-width:430px;margin-inline:auto}
.portraits-gallery .portrait-curated-3:not(.portrait-mixed-row)>figure:last-child{grid-column:1/-1;max-width:260px;justify-self:center}
}
@media(max-width:370px){.portraits-gallery .portrait-curated-row{grid-template-columns:1fr}.portraits-gallery .portrait-curated-3:not(.portrait-mixed-row)>figure:last-child{max-width:none}}
@media(min-width:651px) and (max-width:1023px){.portraits-gallery .portrait-curated-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
.portraits-gallery .portrait-environmental{max-width:430px}
.portraits-gallery .portrait-material-study{max-width:600px}

/* Complete seasonal campaign poster, separate from the portfolio galleries. */

/* Mobile arrows share one open, thin-stroke drawing. Original glyphs retain
   their exact space, so link spacing and the desktop design stay unchanged. */
@media(max-width:650px){
  .arrow-icon{position:relative;display:inline-block}
  .arrow-icon .arrow-character{opacity:0}
  .arrow-icon::after{content:"";position:absolute;left:50%;top:50%;width:clamp(14px,1em,32px);height:clamp(14px,1em,32px);background:currentColor;pointer-events:none;transform:translate(-50%,-50%);-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M13 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M13 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat}
  .arrow-left::after{transform:translate(-50%,-50%) rotate(180deg)}
  .arrow-up::after{transform:translate(-50%,-50%) rotate(-90deg)}
  .arrow-down::after{transform:translate(-50%,-50%) rotate(90deg)}
  .arrow-up-right::after{transform:translate(-50%,-50%) rotate(-45deg)}
  .arrow-down-right::after{transform:translate(-50%,-50%) rotate(45deg)}
  /* Expand only the hit area; keep existing visible dimensions and spacing. */
  a:has(.arrow-icon){position:relative}
  a:has(.arrow-icon)::before{content:"";position:absolute;inset:0;min-height:44px;top:50%;transform:translateY(-50%)}
}
