:root{--paper:#f4f1ea;--ink:#14120f;--red:#d8271c;--red-text:#a81a12;--copper:#7e5c4c;--brass:#77674b;--patina:#544a20;--steel:#4d3c2a;--coverall:#1a2d58;--glass:#7aa6b5;--forge:#190e04;--muted:color-mix(in srgb, var(--ink) 58%, var(--paper));--rule:color-mix(in srgb, var(--ink) 16%, var(--paper));--hair:color-mix(in srgb, var(--ink) 30%, var(--paper));--accent:var(--red);--font-display:"Bodoni Moda", "Didot", Georgia, serif;--font-text:"Instrument Sans", system-ui, -apple-system, sans-serif;--font-cut:"Fraunces", Georgia, serif;--font-hand:"Reenie Beanie", "Bradley Hand", cursive;--s-1:4px;--s-2:8px;--s-3:16px;--s-4:24px;--s-5:40px;--s-6:64px;--s-7:104px;--s-8:152px;--line:1px solid var(--hair)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-text);margin:0;font-size:17px;line-height:1.6}h1,h2,h3,p,ul,dl,dd,figure{margin:0}ul{padding:0;list-style:none}img,video{max-width:100%;display:block}a{color:inherit}::selection{background:var(--red);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{left:-9999px;top:var(--s-2);z-index:60;background:var(--paper);padding:var(--s-2) var(--s-3);border:1px solid var(--ink);font:500 14px/1 var(--font-text);position:absolute}.skip:focus{left:var(--s-2)}.grain{z-index:50;pointer-events:none;opacity:.06;mix-blend-mode:multiply;width:100%;height:100%;position:fixed;inset:0}.shot{background:color-mix(in srgb, var(--ink) 8%, var(--paper));position:relative;overflow:hidden}.shot img{object-fit:cover;filter:contrast(1.03)saturate(1.02);width:100%;height:100%}.display{font-family:var(--font-display);letter-spacing:.005em;font-style:normal;font-weight:400;line-height:.94}.display em{font-style:italic;font-weight:400}.label{font:500 11px/1 var(--font-text);text-transform:uppercase;letter-spacing:.22em;color:var(--accent)}.spec{font:500 11px/1.5 var(--font-text);text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.cut{font-family:var(--font-cut);font-size:15px;line-height:1.5}.hand{font-family:var(--font-hand);color:var(--red-text);font-size:22px;line-height:1.05}.container{width:min(1280px, 100% - 2 * var(--s-4));margin-inline:auto}.bleed{width:100%}.section{padding-block:var(--s-8);position:relative}.section-head{gap:var(--s-5);text-align:center;padding-bottom:var(--s-6);border-bottom:var(--line);grid-template-columns:minmax(0,1fr);place-items:start center;display:grid}.section-head h2{font-family:var(--font-display);letter-spacing:.005em;max-width:22ch;margin-inline:auto;font-size:clamp(34px,5.4vw,68px);font-weight:400;line-height:.96}.section-head__lede{margin-top:var(--s-4);max-width:48ch;color:var(--muted);margin-inline:auto;font-size:17px}.loader{z-index:70;pointer-events:none;position:fixed;inset:0}.loader__sheet{background:var(--red);place-items:center;display:grid;position:absolute;inset:0}.loader__mark{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--paper);font-size:clamp(30px,7vw,86px);font-weight:400}.hero{background:var(--red);min-height:100svh;color:var(--paper);padding-block:var(--s-7) var(--s-6);align-content:center;display:grid;position:relative;overflow:hidden}.hero__grid{gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,360px);align-items:end;display:grid}.hero__name{font-family:var(--font-display);letter-spacing:-.005em;text-transform:uppercase;font-size:clamp(52px,min(11vw,17vh),168px);font-weight:400;line-height:.88}.hero__name span{display:block}.hero__role{margin-top:var(--s-5);font:500 11px/1 var(--font-text);text-transform:uppercase;letter-spacing:.24em;padding-top:var(--s-4);border-top:1px solid color-mix(in srgb, var(--paper) 40%, transparent);max-width:34ch}.hero__card{margin-top:var(--s-3);font-family:var(--font-cut);color:color-mix(in srgb, var(--paper) 86%, var(--red));font-size:15px}.hero__card a{color:var(--paper);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.hero__aside{margin-top:var(--s-3);font-family:var(--font-hand);color:color-mix(in srgb, var(--paper) 80%, var(--red));font-size:24px;display:block}.hero__plate{background:var(--paper);padding:var(--s-3);gap:var(--s-3);display:grid}.hero__plate .shot{aspect-ratio:352/469;max-height:52vh}.hero__plate figcaption{color:var(--ink)}.hero__cue{bottom:var(--s-4);font:500 10px/1 var(--font-text);text-transform:uppercase;letter-spacing:.3em;color:color-mix(in srgb, var(--paper) 76%, var(--red));position:absolute;left:50%;transform:translate(-50%)}.rue{border-block:var(--line);padding-block:var(--s-8);margin-block:0}.rue__line{font-family:var(--font-display);max-width:20ch;color:var(--red-text);font-size:clamp(34px,7.6vw,116px);font-style:italic;font-weight:400;line-height:1.02}.rue__credit{margin-top:var(--s-5);font:500 11px/1 var(--font-text);text-transform:uppercase;letter-spacing:.22em;color:var(--muted)}.atelier{--accent:var(--coverall)}.mosaic{margin-top:var(--s-6);grid-template-rows:repeat(4,13vw);grid-template-columns:repeat(6,minmax(0,1fr));grid-template-areas:"a a a b b c""a a a b b c""d d e e e c""d d e e e c";gap:0;display:grid}.frame{outline:var(--line);outline-offset:-.5px;position:relative;overflow:hidden}.mosaic>:first-child{grid-area:a}.mosaic>:nth-child(2){grid-area:b}.mosaic>:nth-child(3){grid-area:c}.mosaic>:nth-child(4){grid-area:d}.mosaic>:nth-child(5){grid-area:e}.frame .shot{position:absolute;inset:0}.frame .shot img{object-position:50% 32%}.frame figcaption{z-index:2;background:var(--paper);padding:var(--s-2) var(--s-3);align-items:baseline;gap:var(--s-2);max-width:calc(100% - var(--s-5));flex-wrap:wrap;display:flex;position:absolute;bottom:0;left:0}.frame figcaption .hand{font-size:19px}.frame--fill{grid-area:span 2/span 3}.oeuvres{--accent:var(--copper)}.index{margin-top:var(--s-6);border-top:var(--line);border-left:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.piece{border-bottom:var(--line);border-right:var(--line);padding:var(--s-4);gap:var(--s-3);background:var(--paper);align-content:start;transition:background .26s;display:grid}.piece:hover{background:color-mix(in srgb, var(--copper) 7%, var(--paper))}.piece .shot{aspect-ratio:4/5;background:color-mix(in srgb, var(--ink) 5%, var(--paper))}.piece .shot img{object-fit:cover}.piece__no{font:500 10px/1 var(--font-text);letter-spacing:.2em;color:var(--muted)}.piece__title{font-family:var(--font-display);font-size:25px;font-weight:400;line-height:1.05}.piece__meta{gap:2px;display:grid}.piece__material{color:var(--copper);font-weight:500}.piece__note{margin-top:var(--s-1)}.textures{--accent:var(--glass);background:var(--forge);color:var(--paper);padding-block:var(--s-8)}.textures .section-head{border-bottom-color:color-mix(in srgb, var(--paper) 22%, transparent)}.textures .section-head__lede{color:color-mix(in srgb, var(--paper) 72%, var(--forge))}.swatches{margin-top:var(--s-6);grid-template-columns:repeat(5,minmax(0,1fr));gap:0;display:grid}.swatch{outline:1px solid color-mix(in srgb, var(--paper) 14%, transparent);outline-offset:-.5px;gap:0;display:grid;position:relative}.swatch .shot{aspect-ratio:1;background:#0d0803}.swatch figcaption{padding:var(--s-3);background:var(--forge);gap:2px;display:grid}.swatch__name{font-family:var(--font-display);font-size:19px;font-weight:400;line-height:1.1}.swatch__material{font:500 10px/1.4 var(--font-text);text-transform:uppercase;letter-spacing:.16em;color:var(--glass)}.swatch .shot img{transition:transform .7s cubic-bezier(.2,.7,.2,1);transform:scale(1.02)}@media (hover:hover) and (pointer:fine){.swatch:hover .shot img{transform:scale(1.08)}}.langues{--accent:var(--patina)}.langs__heading{font-family:var(--font-display);max-width:26ch;margin-top:var(--s-6);text-align:center;margin-inline:auto;font-size:clamp(30px,5.2vw,62px);font-weight:400;line-height:1.02}.langs__frag{isolation:isolate;display:inline-block;position:relative}.langs__frag:after{content:"";background:color-mix(in srgb, var(--patina) 34%, transparent);transform-origin:0;z-index:0;height:.2em;transition:transform .34s cubic-bezier(.3,.8,.3,1);position:absolute;bottom:.1em;left:-.04em;right:-.04em;transform:scaleX(0)}.langs__frag>span{z-index:1;position:relative}.langs__frag.is-marked:after{transform:scaleX(1)}.langs{margin-top:var(--s-7);gap:var(--s-5);border-top:var(--line);padding-top:var(--s-5);grid-template-columns:14ch minmax(0,1fr);align-items:start;display:grid}.langs__tabs{border-top:var(--line);flex-direction:column;gap:0;display:flex}.langs__btn{appearance:none;border:0;border-bottom:var(--line);width:100%;color:var(--ink);font:500 12px/1 var(--font-text);text-transform:uppercase;letter-spacing:.2em;text-align:left;padding:var(--s-3) 0;cursor:pointer;background:0 0;transition:color .2s,padding-left .26s cubic-bezier(.3,.8,.3,1)}.langs__btn:hover{color:var(--patina);padding-left:var(--s-2)}.langs__btn[aria-selected=true]{color:var(--red-text);padding-left:var(--s-3)}.langs__btn[aria-selected=true] .langs__code:before{content:"—";margin-right:var(--s-2)}.langs__panel{min-height:9em}.langs__line{font-family:var(--font-display);max-width:26ch;font-size:clamp(24px,3.4vw,40px);font-style:italic;font-weight:400;line-height:1.24}.langs__gloss{font-family:var(--font-hand);color:var(--red-text);margin-top:var(--s-4);font-size:23px}.photophore{--ph-vh:320vh;--accent:var(--brass);min-height:var(--ph-vh);background:var(--paper);position:relative}.ph__stage{z-index:0;justify-content:center;align-items:center;gap:var(--s-4);background:var(--paper);height:100svh;padding-block:var(--s-5);flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden}.ph__dark{z-index:1;pointer-events:none;background:radial-gradient(120% 90% at 50% 46%, color-mix(in srgb, var(--forge) 72%, transparent) 0%, var(--forge) 78%);opacity:0;position:absolute;inset:0}.ph__head{z-index:3;width:min(1280px, 100% - 2 * var(--s-4));pointer-events:none;color:var(--ph-ink,var(--ink));text-align:center;transition:color .16s linear;position:relative}.ph__head h2{font-family:var(--font-display);max-width:18ch;margin-top:var(--s-3);margin-inline:auto;font-size:clamp(30px,5vw,62px);font-weight:400;line-height:.98}.ph__head .label{color:var(--ph-ink,var(--accent))}.ph__lede{margin-top:var(--s-3);opacity:.78;max-width:40ch;margin-inline:auto;font-size:15px}.ph__object{z-index:2;aspect-ratio:3/4;flex:0 auto;width:min(420px,62vw);min-height:0;max-height:56svh;position:relative}.ph__frame{opacity:0;transition:opacity .42s;position:absolute;inset:0}.ph__frame img{object-fit:contain;width:100%;height:100%}.ph__frame:first-child,.ph__frame.is-on{opacity:1}.ph__dial{z-index:3;justify-content:center;gap:var(--s-4);color:var(--ph-ink,var(--ink));transition:color .16s linear;display:flex;position:relative}.ph__dial span{font:500 10px/1 var(--font-text);text-transform:uppercase;letter-spacing:.2em;opacity:.4;transition:opacity .26s}.ph__dial span.is-on{opacity:1}.ph__cap{z-index:3;text-align:center;color:var(--ph-ink,var(--ink));font-family:var(--font-cut);opacity:.8;font-size:14px;transition:color .16s linear;position:relative}.contact{z-index:2;background:var(--paper);border-top:var(--line);position:relative}.contact__grid{margin-top:var(--s-6);gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;display:grid}.contact__intro{gap:var(--s-5);display:grid}.contact__note{font-family:var(--font-display);max-width:24ch;font-size:clamp(22px,2.6vw,32px);font-style:italic;font-weight:400;line-height:1.22}.contact__phone{font-family:var(--font-cut);text-underline-offset:5px;color:var(--red-text);font-size:19px}.contact-form{border:var(--line);padding:clamp(20px,3vw,40px)}.contact-form [hidden]{display:none}.contact-form__steps{border-bottom:var(--line);font:500 10px/1 var(--font-text);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin:0 0 28px;padding:0 0 20px;list-style:none;display:flex}.contact-form__steps [aria-current]{color:var(--red-text)}.contact-form fieldset{border:0;min-width:0;margin:0;padding:0}.contact-form legend{font:400 clamp(26px, 3vw, 38px)/1.06 var(--font-display);margin-bottom:12px;padding:0}.contact-form__hint{color:var(--muted);margin-block:12px;font-size:14px}.contact-form__choices{border-top:var(--line);gap:0;margin-block:24px;display:grid}.contact-form__choices label{cursor:pointer;display:block;position:relative}.contact-form__choices input{accent-color:var(--red-text);position:absolute;top:18px;left:0}.contact-form__choices label>span{border-bottom:var(--line);font-family:var(--font-cut);justify-content:space-between;gap:12px;padding:14px 0 14px 30px;transition:padding-left .24s cubic-bezier(.3,.8,.3,1),color .2s;display:flex}.contact-form__choices label:hover>span{padding-left:36px}.contact-form__choices input:checked+span{color:var(--red-text)}.contact-form__choices input:focus-visible+span{outline:2px solid var(--red-text);outline-offset:3px}.contact-form__label{font:500 10px/1 var(--font-text);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:24px 0 10px;display:block}.contact-form__label span{color:var(--muted);text-transform:none;letter-spacing:0}.contact-form select,.contact-form input:not([type=radio]),.contact-form textarea{border:0;border-bottom:1px solid var(--ink);width:100%;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:10px 0}.contact-form textarea{resize:vertical;border:1px solid var(--ink);min-height:130px;padding:12px}.contact-form__actions{justify-content:space-between;gap:16px;margin-top:32px;display:flex}.contact-form__actions button{cursor:pointer;font:500 11px/1 var(--font-text);text-transform:uppercase;letter-spacing:.18em;border:1px solid var(--ink);color:var(--ink);background:0 0;padding:14px 18px;transition:background .2s,color .2s}.contact-form__actions [data-next]{background:var(--ink);color:var(--paper);margin-left:auto}.contact-form__actions button:hover{background:var(--red);color:var(--paper);border-color:var(--red)}.contact-form__preview{border-block:var(--line);font-family:var(--font-cut);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:20px;padding:20px 0}.contact-form .contact-form__send{font:400 clamp(24px, 3vw, 34px)/1 var(--font-display);letter-spacing:.01em;text-transform:none;background:var(--red);color:var(--paper);border-color:var(--red);margin-top:24px;padding:18px 26px;text-decoration:none;display:inline-block}.contact-form .contact-form__send:hover{background:var(--ink);border-color:var(--ink)}.contact-form__sms{text-underline-offset:4px;font-size:14px}.cv{border-top:var(--line);gap:0;max-width:40ch;display:grid}.cv>div{gap:var(--s-3);padding-block:var(--s-3);border-bottom:var(--line);grid-template-columns:10ch minmax(0,1fr);display:grid}.cv dt{font:500 10px/1.8 var(--font-text);text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.cv dd{font-family:var(--font-cut);margin:0;font-size:17px}.cv a{color:var(--red-text);text-underline-offset:3px}.footer{padding-block:var(--s-7);border-top:var(--line);gap:var(--s-3);display:grid}.footer__sig{font-family:var(--font-display);font-size:clamp(26px,4.4vw,56px);font-style:italic;font-weight:400;line-height:1}.footer__meta{color:var(--muted);font:500 11px/1 var(--font-text);text-transform:uppercase;letter-spacing:.18em}@media (width<=1099px){.swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.mosaic{grid-template-rows:repeat(4,17vw)}}@media (width<=899px){body{font-size:16px}.section{padding-block:var(--s-7)}.section-head{gap:var(--s-4);padding-bottom:var(--s-5);grid-template-columns:minmax(0,1fr)}.hero{padding-block:var(--s-7) var(--s-6)}.hero__grid{gap:var(--s-5);grid-template-columns:minmax(0,1fr);align-items:start}.hero__plate{max-width:280px}.rue{padding-block:var(--s-7)}.mosaic{grid-template-rows:repeat(3,34vw);grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"a a""b c""d e"}.swatches,.index{grid-template-columns:repeat(2,minmax(0,1fr))}.langs{gap:var(--s-4);grid-template-columns:minmax(0,1fr)}.langs__tabs{gap:0 var(--s-4);border-top:0;border-bottom:var(--line);flex-flow:wrap}.langs__btn{border-bottom:0;width:auto}.langs__btn[aria-selected=true]{padding-left:0}.contact__grid{gap:var(--s-5);grid-template-columns:minmax(0,1fr)}.contact__intro{order:2}.photophore{--ph-vh:300vh}.ph__object{width:min(300px,62vw);max-height:44svh}.ph__stage{gap:var(--s-3)}}@media (width<=559px){.mosaic{grid-template-rows:repeat(5,62vw);grid-template-columns:minmax(0,1fr);grid-template-areas:"a""b""c""d""e"}.swatches{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.photophore{--ph-vh:auto;min-height:0}.ph__stage{height:auto;padding-block:var(--s-7);display:block;position:relative}.ph__dark{display:none}.ph__head{margin-bottom:var(--s-5);position:relative;top:auto}.ph__object{aspect-ratio:auto;gap:var(--s-3);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid}.ph__frame{opacity:1;position:relative;inset:auto}.ph__frame img{aspect-ratio:3/4}.ph__dial,.ph__cap{margin-top:var(--s-4);position:relative;bottom:auto}.pill,.pill__menu,.pill__burger,.pill__burger:before,.pill__burger:after{transition:none}}@media (prefers-reduced-motion:reduce) and (width<=899px){.ph__object{grid-template-columns:repeat(2,minmax(0,1fr))}}.pill{--pill-gap:12px;z-index:40;border:1px solid var(--ink);background:var(--paper);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:stretch;gap:0;padding:6px;transition:background .3s;display:flex;position:fixed;top:clamp(12px,2vw,22px);right:clamp(12px,2vw,22px)}.pill.is-measuring,.pill.is-measuring *{transition:none!important;animation:none!important}.pill.is-open.grow-left{align-items:flex-end}.pill.is-open.grow-up{flex-direction:column-reverse}.pill.is-open{max-width:calc(100vw - 2 * var(--pill-gap));max-height:calc(100svh - 2 * var(--pill-gap));overscroll-behavior:contain;align-items:flex-start;overflow-y:auto}.pill__bar,.pill__languages{align-items:center;display:flex}.pill__languages{border-left:var(--line);gap:2px;padding-left:6px}.pill__languages button{appearance:none;color:var(--ink);min-width:34px;min-height:34px;font:500 11px/1 var(--font-text);letter-spacing:.1em;cursor:pointer;background:0 0;border:0;padding:6px}.pill__languages button:hover,.pill__languages button[aria-pressed=true]{color:var(--red-text);text-underline-offset:4px;text-decoration:underline}.pill__toggle{appearance:none;cursor:grab;width:34px;height:34px;color:var(--ink);touch-action:none;background:0 0;border:0;place-items:center;padding:0;display:grid}.pill.is-dragging .pill__toggle{cursor:grabbing}.pill__burger,.pill__burger:before,.pill__burger:after{content:"";background:currentColor;width:18px;height:1px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s;display:block}.pill__burger{position:relative}.pill__burger:before{position:absolute;top:-6px}.pill__burger:after{position:absolute;top:6px}.pill.is-open .pill__burger{background:0 0}.pill.is-open .pill__burger:before{transform:translateY(6px)rotate(45deg)}.pill.is-open .pill__burger:after{transform:translateY(-6px)rotate(-45deg)}.pill__toggle:focus-visible{outline:2px solid var(--red);outline-offset:3px}.pill__menu{align-items:flex-start;gap:var(--s-2);opacity:0;visibility:hidden;flex-direction:column;max-width:0;max-height:0;padding-inline:0;transition:max-height .32s cubic-bezier(.4,0,.2,1),max-width .32s cubic-bezier(.4,0,.2,1),opacity .22s;display:flex;overflow:hidden}.pill.is-open .pill__menu{opacity:1;visibility:visible;max-width:70vw;max-height:60vh;padding:var(--s-2) var(--s-3) var(--s-2)}.pill a{cursor:pointer;font:400 21px/1.15 var(--font-display);white-space:nowrap;text-decoration:none}.pill a:hover{color:var(--red-text)}.pill a:focus-visible{outline:2px solid var(--red);outline-offset:3px}
