.fy{--wall:#e4e6e1;--wall-raised:#eceee9;--ink:#20261f;--ink-soft:#3b4339;--muted:#586056;--rule:#c3c8bf;--night:#131613;--night-ink:#e7e9e4;--focus:#20261f;--serif:"Spectral", "Iowan Old Style", Georgia, serif;--gutter:clamp(16px, 4.2vw, 64px);--max:1520px;--step--1:.875rem;--step-0:1.0625rem;--step-1:clamp(1.25rem, 1.05rem + .6vw, 1.5rem);--step-2:clamp(1.5rem, 1.15rem + 1.2vw, 2.125rem);--step-3:clamp(2rem, 1.3rem + 2.4vw, 3.25rem);background:var(--wall);color:var(--ink);font-family:var(--serif);font-size:var(--step-0);font-feature-settings:"kern", "liga", "onum";font-weight:400;line-height:1.7}.fy :focus-visible{outline:2px solid var(--focus);outline-offset:3px}.fy a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}.fy :where(h2){font-size:var(--step-3);letter-spacing:-.01em;font-weight:300;line-height:1.1}.fy :where(h3){font-size:var(--step-1);font-weight:400;line-height:1.3}.fy-skip{background:var(--ink);color:var(--wall)}.fy-demo{padding:.6rem var(--gutter);border-bottom:1px solid var(--rule);font-size:var(--step--1);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1.5rem;line-height:1.5;display:flex}.fy-demo p{max-width:90ch}.fy-header{z-index:20;padding:.9rem var(--gutter);background:color-mix(in srgb, var(--wall) 94%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:space-between;align-items:center;gap:1.5rem;display:flex;position:sticky;top:0}.fy-header__name{letter-spacing:.02em;font-size:1.125rem;text-decoration:none}.fy-header__toggle{font-size:var(--step--1);text-underline-offset:.22em;background:0 0;border:0;padding:.5rem 0;text-decoration:underline;display:none}.fy-header__menu{align-items:center;gap:clamp(1.25rem,3vw,2.5rem);display:flex}.fy-header__links{gap:clamp(1rem,2.2vw,2rem);font-size:.9375rem;display:flex}.fy-header__links a{padding-block:.4rem;text-decoration:none}.fy-header__links a:hover{text-decoration:underline}.fy-lang ul{letter-spacing:.06em;gap:.15rem;margin:0;padding:0;font-size:.8125rem;list-style:none;display:flex}.fy-lang a{color:var(--muted);padding:.35rem .45rem;text-decoration:none;display:inline-block}.fy-lang a[aria-current=true]{color:var(--ink);text-decoration:underline}@media (max-width:860px){.fy-header{flex-wrap:wrap}.fy-header__toggle{display:block}.fy-header__menu{flex-direction:column;align-items:flex-start;gap:1rem;width:100%;padding:.5rem 0 1rem;display:none}.fy-header[data-open] .fy-header__menu{display:flex}.fy-header__links{font-size:var(--step-1);flex-direction:column;gap:.25rem}.fy-lang{margin-left:-.45rem}}.fy-hero{padding:clamp(.5rem, 2vw, 1.5rem) var(--gutter) 0;max-width:var(--max);margin-inline:auto}.fy-hero__print{width:min(100%,150svh - 22.5rem);margin-inline:auto}.fy-plate__btn{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.fy-plate__img{width:100%;height:auto}.fy-hero__caption{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;padding-top:1rem;display:flex}.fy-hero__name{font-size:var(--step-1);letter-spacing:.01em;font-weight:400;line-height:1.3}.fy-hero__role{font-size:var(--step--1);color:var(--muted);margin-left:.75rem;font-style:italic;font-weight:400}.fy-hero__plate{font-size:var(--step--1);flex-wrap:wrap;gap:.25rem 1rem;display:flex}.fy-caption{font-size:var(--step--1);flex-wrap:wrap;justify-content:space-between;gap:.1rem 1rem;padding-top:.7rem;line-height:1.5;display:flex}.fy-caption__title{font-style:italic}.fy-caption__credit{color:var(--muted)}.fy-hero__text{gap:1.5rem var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;margin-top:clamp(3rem,7vw,6rem);display:grid}.fy-hero__intro{font-size:var(--step-2);grid-column:2;max-width:30ch;font-weight:300;line-height:1.35}.fy-hero__links{flex-wrap:wrap;grid-column:2;gap:.75rem 2rem;display:flex}.fy-link{padding-block:.3rem;text-decoration:underline;display:inline-block}.fy-link:hover{text-decoration-thickness:2px}@media (max-width:768px){.fy-hero{padding-inline:0}.fy-hero__print{width:100%}.fy-hero__caption,.fy-hero__text{padding-inline:var(--gutter)}.fy-hero__caption{flex-direction:column;gap:.4rem}.fy-hero__role{margin-left:0;display:block}.fy-hero__text{grid-template-columns:1fr;margin-top:2.5rem}.fy-hero__intro,.fy-hero__links{grid-column:1}}.fy-section{max-width:var(--max);padding:clamp(4.5rem, 9vw, 8rem) var(--gutter) 0;margin-inline:auto}.fy-section__head{gap:1rem var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:baseline;padding-bottom:clamp(2rem,5vw,4rem);display:grid}.fy-section__head p{max-width:46ch;color:var(--ink-soft)}@media (max-width:768px){.fy-section__head{grid-template-columns:1fr}}.fy-sequence{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:clamp(4rem,9vw,8rem);margin:0;padding:0;list-style:none;display:grid}.fy-sequence__item figure{margin:0}.fy-sequence__item--1{grid-area:1/1/auto/span 9}.fy-sequence__item--2{grid-area:2/7/auto/span 6}.fy-sequence__item--3{grid-area:2/2/auto/span 4;align-self:end;margin-bottom:-5rem}.fy-sequence__item--4{grid-area:3/1/auto/-1;margin-top:5rem}.fy-sequence__item--5{grid-area:4/1/auto/span 7;align-self:end}.fy-sequence__item--6{grid-area:4/9/auto/span 4}.fy-sequence__item--7{grid-area:5/4/auto/span 6}@media (max-width:768px){.fy-sequence{row-gap:3.5rem}.fy-sequence__item{grid-row:auto!important;align-self:start!important;margin:0!important}.fy-sequence__item--1,.fy-sequence__item--4{grid-column:1/-1}.fy-sequence__item--2,.fy-sequence__item--5{grid-column:3/-1}.fy-sequence__item--3,.fy-sequence__item--7{grid-column:1/span 10}.fy-sequence__item--6{grid-column:4/span 7}}.fy-collections__list{gap:3rem var(--gutter);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.fy-collection__image{aspect-ratio:4/5;margin-bottom:1.25rem;overflow:hidden}.fy-collection__image img{object-fit:cover;width:100%;height:100%}.fy-collection__name{font-size:var(--step-2);margin-bottom:.5rem;font-weight:300}.fy-collection__text{color:var(--ink-soft);max-width:40ch;margin-bottom:.75rem}@media (max-width:860px){.fy-collections__list{grid-template-columns:1fr;gap:3.5rem}.fy-collection{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:start;column-gap:1.25rem;display:grid}.fy-collection__image{grid-row:span 3;margin-bottom:0}}@media (max-width:480px){.fy-collection{grid-template-columns:1fr}.fy-collection__image{aspect-ratio:3/2;grid-row:auto;margin-bottom:1rem}}.fy-filter{border-top:1px solid var(--rule);flex-wrap:wrap;gap:.25rem 1.75rem;padding-top:1rem;display:flex}.fy-filter__btn{font-size:var(--step-1);color:var(--muted);background:0 0;border:0;padding:.45rem 0;font-weight:300;text-decoration:none}.fy-filter__btn:hover{color:var(--ink)}.fy-filter__btn[aria-pressed=true]{color:var(--ink);text-underline-offset:.3em;text-decoration:underline;text-decoration-thickness:1px}.fy-filter__count{vertical-align:super;font-feature-settings:"lnum";margin-left:.2rem;font-size:.75rem}.fy-gallery__status{font-size:var(--step--1);color:var(--muted);margin:.5rem 0 1.5rem;font-style:italic}.fy-grid{--row:270px;--gap:clamp(8px, 1.1vw, 16px);gap:var(--gap);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.fy-grid:after{content:"";flex-grow:1000000}.fy-tile{flex-grow:calc(var(--ar) * 100);flex-basis:calc(var(--ar) * var(--row));aspect-ratio:var(--ar);max-width:100%}.fy-tile__btn{background:var(--rule);cursor:zoom-in;border:0;width:100%;height:100%;padding:0;display:block;position:relative}.fy-tile__img{object-fit:cover;width:100%;height:100%}.fy-tile__title{font-size:var(--step--1);text-align:left;color:#f2f3ef;opacity:0;background:linear-gradient(#0000,#0a0c0a99);padding:2rem .75rem .6rem;font-style:italic;transition:opacity .25s;position:absolute;inset:auto 0 0}.fy-tile__btn:hover .fy-tile__title,.fy-tile__btn:focus-visible .fy-tile__title{opacity:1}@media (max-width:1080px){.fy-grid{--row:210px}}@media (max-width:640px){.fy-grid{--row:104px}.fy-tile__title{display:none}}.fy-about{gap:2.5rem var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;display:grid}.fy-about__image{margin:0;position:sticky;top:6rem}.fy-about__image img{width:100%;height:auto}.fy-about__text{max-width:62ch}.fy-about__text h2{margin-bottom:2rem}.fy-about__text>p+p{margin-top:1.1rem}.fy-about__text>p:first-of-type{font-size:var(--step-1);font-weight:300;line-height:1.55}.fy-about__subhead{border-top:1px solid var(--rule);margin-top:3rem;padding-top:1.25rem}.fy-practice{gap:1.25rem;margin-top:1.25rem;display:grid}.fy-practice dt{font-style:italic}.fy-practice dd{color:var(--ink-soft)}@media (min-width:1100px){.fy-practice>div{grid-template-columns:11rem 1fr;gap:1.5rem;display:grid}}@media (max-width:768px){.fy-about{grid-template-columns:1fr}.fy-about__image{width:72%;position:static}}.fy-inquiry{gap:3rem var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.fy-inquiry__intro>p{max-width:44ch;color:var(--ink-soft);margin-top:1.25rem}.fy-offers{margin-top:2.5rem}.fy-offer{border-top:1px solid var(--rule);padding:1.4rem 0}.fy-offer h3{margin-bottom:.4rem}.fy-offer p{max-width:50ch}.fy-offer ul{color:var(--muted);margin:.6rem 0 0;padding:0;font-size:.9375rem;list-style:none}.fy-offer li{text-indent:-1rem;padding-left:1rem}.fy-offer li:before{content:"–";text-indent:0;width:1rem;display:inline-block}@media (max-width:960px){.fy-inquiry{grid-template-columns:1fr}}.fy-form{background:var(--wall-raised);padding:clamp(1.5rem,3.5vw,3rem)}.fy-form__heading{font-size:var(--step-2);font-weight:300}.fy-form__demo{font-size:var(--step--1);color:var(--muted);margin:.5rem 0 1.75rem;font-style:italic}.fy-field{border:0;min-width:0;margin:0 0 1.5rem;padding:0}.fy-field>label,.fy-field>legend{margin-bottom:.35rem;padding:0;font-size:.9375rem;display:block}.fy-field__optional,.fy-field__hint{color:var(--muted);font-size:var(--step--1)}.fy-field__hint{margin:-.2rem 0 .4rem}.fy-field input[type=text],.fy-field input[type=email],.fy-field select,.fy-field textarea{border:0;border-bottom:1px solid var(--ink-soft);background:0 0;border-radius:0;width:100%;padding:.6rem .1rem;font-size:1.0625rem;line-height:1.5;display:block}.fy-field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-repeat:no-repeat;background-size:5px 5px;padding-right:2rem}.fy-field textarea{resize:vertical;border:1px solid var(--ink-soft);min-height:8rem;padding:.6rem .7rem}.fy-field input:focus-visible,.fy-field select:focus-visible,.fy-field textarea:focus-visible{outline-offset:2px}.fy-field [aria-invalid=true]{border-color:#8a2b1f}.fy-field__error{font-size:var(--step--1);color:#8a2b1f;margin-top:.4rem}.fy-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem 1rem;display:grid}.fy-choice{cursor:pointer;align-items:center;gap:.6rem;padding:.35rem 0;font-size:1rem;display:flex}.fy-choice input{width:1.05rem;height:1.05rem;accent-color:var(--ink);margin:0}@media (max-width:420px){.fy-choices{grid-template-columns:1fr}}.fy-form__privacy{font-size:var(--step--1);color:var(--muted);margin-bottom:1.25rem}.fy-button{border:1px solid var(--ink);background:var(--ink);color:var(--wall);letter-spacing:.01em;padding:.85rem 1.6rem;font-size:1rem;display:inline-block}.fy-button:hover{background:var(--ink-soft)}.fy-button[aria-disabled=true]{opacity:.6;cursor:progress}.fy-form__status p{border-left:2px solid var(--ink);background:var(--wall);margin-top:1.25rem;padding:1rem 1.1rem;font-size:.9375rem;line-height:1.55}.fy-footer{max-width:var(--max);padding:2rem var(--gutter) 3rem;border-top:1px solid var(--rule);margin:clamp(5rem,12vw,10rem) auto 0;font-size:.9375rem}.fy-footer__top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem 2rem;display:flex}.fy-footer__name{font-size:var(--step-1);font-weight:300}.fy-footer__nav{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.fy-footer__nav a{text-decoration:none}.fy-footer__nav a:hover{text-decoration:underline}.fy-footer__demo{max-width:70ch;color:var(--muted);margin-top:2rem}.fy-credits{color:var(--muted);margin-top:1.25rem}.fy-credits summary{cursor:pointer;color:var(--ink);padding-block:.3rem}.fy-credits ul{columns:2 22rem;column-gap:var(--gutter);margin:1rem 0;padding:0;list-style:none}.fy-credits li{break-inside:avoid;padding-bottom:.6rem;line-height:1.45}.fy-credits li a{color:var(--ink)}.fy-credits li span{font-style:italic;font-size:var(--step--1);display:block}.fy-footer__back{margin-top:2rem}.fy-viewer{background:var(--night);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--night-ink);overscroll-behavior:contain;border:0;margin:0;padding:0}.fy-viewer::backdrop{background:var(--night)}.fy-viewer :focus-visible{outline-color:var(--night-ink)}.fy-viewer__frame{grid-template-rows:minmax(0,1fr) auto;height:100%;display:grid}.fy-viewer__stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-height:0;padding:clamp(12px,3vw,40px) clamp(12px,3vw,40px) 0;display:flex;position:relative}.fy-viewer__img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;animation:.3s fy-fade}@keyframes fy-fade{0%{opacity:0}}.fy-viewer__bar{padding:1rem clamp(12px, 3vw, 40px) max(1rem, env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;display:flex}.fy-viewer__caption{font-size:var(--step--1);flex-wrap:wrap;align-items:baseline;gap:.15rem 1.25rem;line-height:1.5;display:flex}.fy-viewer__title{font-size:1.0625rem;font-style:italic}.fy-viewer__credit,.fy-viewer__count{color:#a9afa5}.fy-viewer__count{font-feature-settings:"lnum"}.fy-viewer__actions{align-items:center;gap:.25rem;display:flex}.fy-viewer__inquire{color:var(--night-ink);text-underline-offset:.22em;background:0 0;border:0;margin-right:.75rem;padding:.6rem .2rem;font-size:.9375rem;text-decoration:underline}.fy-viewer__nav,.fy-viewer__close{width:44px;height:44px;color:var(--night-ink);background:0 0;border:1px solid #3a4038;place-items:center;padding:0;display:grid}.fy-viewer__nav:hover,.fy-viewer__close:hover{border-color:var(--night-ink)}.fy-viewer__preload{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:640px){.fy-viewer__bar{flex-direction:column;align-items:stretch}.fy-viewer__actions{justify-content:space-between}.fy-viewer__inquire{margin-right:auto}}
