
:root{--paper:#efeee5;--ink:#332d26}
html{background:var(--paper);color:var(--ink)}
body{padding:0 clamp(24px,6vw,100px) 64px;max-width:1440px;margin:0 auto}
header{height:clamp(124px,15vw,190px);align-items:center}
.wordmark{font-size:clamp(25px,2.8vw,39px);letter-spacing:.035em;font-weight:300;line-height:1.15}
.panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,4vw,58px);max-width:1120px;margin:0 auto}
.photo{aspect-ratio:2/3;background:#e4dfd5;isolation:isolate}
.photo::after{height:28%;background:linear-gradient(180deg,rgba(17,12,7,.28),transparent)}
.photo img{transition:transform 1.2s cubic-bezier(.2,.65,.3,1)}
.panel:hover img{transform:scale(1.018)}
.caption{top:clamp(16px,2.3vw,32px);left:clamp(16px,2.3vw,32px);font-size:clamp(12px,1.2vw,17px);letter-spacing:.13em;line-height:1.4;color:#fffdf8;font-weight:300}
.panel .caption::after{content:"";display:block;margin-top:7px;width:0;height:1px;background:currentColor;transition:width .4s ease}
.panel:hover .caption::after,.panel:focus-visible .caption::after{width:100%}
.detail{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);column-gap:7vw;align-items:start}
.back{grid-column:1/-1;font-size:10px;letter-spacing:.16em;margin-bottom:40px;opacity:.75;padding:10px 0}
.section-heading{font-size:clamp(25px,3.2vw,45px);line-height:1.25;letter-spacing:.035em;max-width:350px;margin:0;font-weight:300}
.detail-photo{width:100%;height:auto;max-height:none;object-fit:contain}
a:focus-visible{outline:1px solid #746752;outline-offset:8px}
@media(max-width:650px){body{padding:0 5vw 40px}header{height:120px}.wordmark{font-size:clamp(23px,5.8vw,34px)}.panels{gap:4vw}.caption{top:13px;left:12px;font-size:11px;letter-spacing:.09em}.detail{grid-template-columns:1fr;gap:24px}.back{margin:0}.section-heading{max-width:100%;font-size:27px}.detail-photo{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.photo img,.panel .caption::after{transition:none}}

/* Fit the complete composition to the available viewport. */
:root{--masthead:clamp(90px,16svh,150px);--bottom:clamp(20px,4svh,44px);--gutter:clamp(16px,4vw,58px)}
body{height:100svh;min-height:0;display:grid;grid-template-rows:var(--masthead) minmax(0,1fr);padding-bottom:var(--bottom)}
header{height:auto;min-height:0}
main{min-height:0;min-width:0}
.panels{gap:var(--gutter);width:min(100%,calc((100svh - var(--masthead) - var(--bottom))*4/3 + var(--gutter)));height:100%;align-content:start}
.photo{width:100%;height:auto;min-height:0;aspect-ratio:2/3}
.detail{width:100%;height:100%;padding-bottom:0;grid-template-rows:44px minmax(0,1fr);row-gap:18px}
.back{margin:0;padding:8px 0;align-self:start}
.detail-photo{width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain;object-position:top left;margin:0}
.section-heading{font-size:clamp(22px,3vw,42px)}
@media(max-width:650px){:root{--masthead:clamp(80px,15svh,120px);--gutter:4vw}body{padding-bottom:var(--bottom)}header{height:auto}.detail{grid-template-columns:1fr;grid-template-rows:30px auto minmax(0,1fr);gap:16px}.detail-photo{height:100%;width:100%;object-position:top center}.section-heading{font-size:clamp(20px,5vw,27px)}}
@media(max-height:450px){:root{--masthead:64px;--bottom:14px}.wordmark{font-size:25px}.detail{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:26px minmax(0,1fr);gap:8px 4vw}.section-heading{font-size:22px}.detail-photo{object-position:top left}}

/* Mirror labels at the outer upper corners with equal relative insets. */
.panels .caption{top:4%;left:6%;right:auto;text-align:left}
.panels .panel:nth-child(2) .caption{left:auto;right:6%;text-align:right}
.panels .panel:nth-child(2) .caption::after{margin-left:auto}

/* Center the homepage name and gently widen the photo composition. */
.home header{justify-content:center}
.home .wordmark{text-align:center}
.home .panels{width:min(100%,calc((100svh - var(--masthead) - var(--bottom))*4/3 + var(--gutter) + clamp(24px,6vw,90px)));max-width:1240px}
.home .panel{width:min(100%,calc((100svh - var(--masthead) - var(--bottom))*2/3))}
.home .panel:first-child{justify-self:start}
.home .panel:last-child{justify-self:end}
@media(max-width:650px){.home .panels{gap:6vw}}

/* Equal, smaller Tapeworm lettering on both image links. */
.home .panels .caption{font-size:clamp(9px,.85vw,12px);line-height:1;font-weight:300}
/* Airier, subtly flattened wordmark. */
.wordmark{display:inline-block;letter-spacing:.14em;transform:scaleY(.86);transform-origin:center}
@media(max-width:650px){.wordmark{font-size:clamp(20px,5.2vw,30px);letter-spacing:.12em}}

.stool-stories{height:100%;min-height:0;min-width:0;display:grid;grid-template-rows:minmax(0,1fr) 30px}
.story-stage{position:relative;min-height:0;overflow:hidden;background:#efefef}.story-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;opacity:0}.story-image.active{opacity:1}.story-tap{position:absolute;top:0;bottom:0;width:50%;background:transparent;border:0;border-radius:0;cursor:pointer;padding:0}.story-tap.previous{left:0}.story-tap.next{right:0}.story-controls{display:flex;align-items:end;justify-content:space-between;font:300 10px/1.4 Arial,sans-serif;letter-spacing:.12em}.story-pause{background:none;border:0;padding:5px 0 0 12px;font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer}.story-tap:focus-visible,.story-pause:focus-visible{outline:1px solid #746752;outline-offset:-3px}

/* A quiet, manually controlled product gallery. */
.product-information{min-width:0;align-self:start}.product-information .section-heading{font-size:clamp(22px,2.7vw,38px);margin-bottom:22px}.product-price{font:300 14px/1.5 Arial,sans-serif;letter-spacing:.08em;margin:0 0 22px}.product-status{font:300 10px/1.7 Arial,sans-serif;letter-spacing:.09em;max-width:290px;margin-bottom:24px}.product-description{font:300 13px/1.65 "Times New Roman",serif;letter-spacing:.015em;text-transform:none;max-width:330px}.product-description summary{font:300 10px/1.6 Arial,sans-serif;letter-spacing:.12em;cursor:pointer;padding:8px 0;border-bottom:1px solid #d7d1c8}.order-link{display:inline-block;font:300 10px/1.6 Arial,sans-serif;letter-spacing:.1em;border-bottom:1px solid #8c8175;padding:9px 0;margin-top:22px}.stool-stories{grid-template-rows:minmax(0,1fr) 62px;gap:12px}.gallery-thumbnails{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;min-height:0}.gallery-thumbnail{background:none;padding:2px;border:1px solid transparent;cursor:pointer;min-width:0;height:62px}.gallery-thumbnail[aria-pressed="true"]{border-color:#8c8175}.gallery-thumbnail img{width:100%;height:100%;object-fit:contain;display:block}.gallery-thumbnail:focus-visible{outline:1px solid #746752;outline-offset:2px}.story-stage{touch-action:pan-y}
@media(max-width:650px){.product-page .detail{grid-template-rows:26px minmax(0,1fr) auto;gap:12px}.product-page .stool-stories{grid-row:2;grid-column:1}.product-information{grid-row:3;grid-column:1}.product-information .section-heading{font-size:22px;margin:0 0 8px}.product-price{margin:0 0 8px;font-size:12px}.product-status{margin:0 0 6px;max-width:100%;font-size:9px}.order-link{margin-top:6px}.stool-stories{grid-template-rows:minmax(0,1fr) 42px;gap:7px}.gallery-thumbnail{height:42px}.gallery-thumbnails{gap:4px}.product-description{max-width:100%}}
@media(max-height:450px) and (min-width:651px){.product-information .section-heading{font-size:22px;margin-bottom:8px}.product-price,.product-status{margin-bottom:8px}.order-link{margin-top:5px}.stool-stories{grid-template-rows:minmax(0,1fr) 40px;gap:6px}.gallery-thumbnail{height:40px}}

.project-gallery .gallery-thumbnails{grid-template-columns:repeat(9,minmax(0,1fr))}.project-gallery .story-stage{background:transparent}

/* Projects opens with a near full-bleed project photograph. */
body.projects-index{max-width:none;padding-left:2.2vw;padding-right:2.2vw;padding-bottom:2.2vw;--bottom:2.2vw;--masthead:clamp(80px,13svh,124px)}
.projects-index header{padding:0 2vw}.projects-hero{height:100%;min-height:0}.derby-hero{position:relative;display:block;height:100%;width:100%;overflow:hidden}.derby-hero>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform 1.2s ease}.derby-hero:hover>img{transform:scale(1.012)}.hero-project-name{position:absolute;bottom:clamp(18px,3vw,40px);left:clamp(18px,3vw,40px);color:#fffdf8;font:300 clamp(11px,1.1vw,16px)/1.4 "Times New Roman",serif;letter-spacing:.12em;text-shadow:0 1px 6px #0008}.hero-project-name span{margin-left:12px}@media(prefers-reduced-motion:reduce){.derby-hero>img{transition:none}}

/* Editorial project story: broad views and paired details. */
body.editorial-project{display:block;height:auto;min-height:100svh;max-width:none;padding:0 2.2vw 40px}.editorial-project header{height:clamp(90px,13svh,140px);padding:0 2vw;justify-content:center}.project-sequence{width:100%;max-width:1800px;margin:auto}.project-intro{position:relative;padding:0 0 30px;text-align:center}.project-intro .back{position:absolute;left:2vw;top:5px;letter-spacing:.12em;font-size:10px}.project-intro h1{font:300 clamp(18px,2.1vw,30px)/1.3 "Orpheus 2",orpheuspro,"Times New Roman",serif;letter-spacing:.12em;margin:0}.editorial-row{display:grid;margin-bottom:clamp(16px,2.2vw,32px);gap:clamp(16px,2.2vw,32px)}.editorial-row figure{margin:0;min-width:0}.editorial-row img{display:block;width:100%;height:auto}.editorial-row.pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.editorial-row.inset{width:66%;margin-left:auto;margin-right:auto;padding:clamp(12px,2vw,32px) 0}.project-end{display:flex;justify-content:space-between;margin:50px 2vw 10px;font:300 10px/1.5 Arial,sans-serif;letter-spacing:.12em}.project-end a{padding:10px 0}.editorial-project .wordmark{white-space:nowrap}@media(max-width:650px){.editorial-project header{height:100px}.project-intro{padding:0 0 22px}.project-intro .back{position:static;display:block;text-align:left;margin:0 0 18px 2vw}.project-intro h1{font-size:19px}.editorial-row.inset{width:82%}.editorial-row.pair{gap:3vw}.project-end{margin-top:25px;font-size:9px}}

/* Each project is introduced by its own generous hero. */
body.projects-index{display:block;height:auto;min-height:100svh}.projects-index header{height:var(--masthead)}.projects-index .projects-hero{height:auto;display:grid;gap:2.2vw}.projects-index .derby-hero{height:calc(100svh - var(--masthead) - 2.2vw);min-height:250px}.project-phase{font:300 9px/1.5 Arial,sans-serif;letter-spacing:.13em;margin:13px 0 0;color:#766e63}
/* Project covers sit side by side and show the complete photographs. */
body.projects-index{height:100svh;min-height:0;display:grid;grid-template-rows:var(--masthead) minmax(0,1fr);padding:0 4.2vw clamp(22px,4svh,44px)}
.projects-index header{height:auto;padding:0;justify-content:center}
.projects-index .projects-hero{height:100%;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,4vw,58px);align-items:stretch}
.projects-index .derby-hero{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:16px;overflow:visible}
.projects-index .derby-hero>img{width:100%;height:100%;min-height:0;object-fit:contain;object-position:center;transform:none}
.projects-index .derby-hero:hover>img{transform:none}
.projects-index .hero-project-name{position:static;display:flex;justify-content:space-between;align-items:center;color:var(--ink);text-shadow:none;font-size:clamp(10px,1.1vw,15px);line-height:1.5;padding:0}
.projects-index .hero-project-name span{margin:0}
@media(max-width:650px){.projects-index .projects-hero{grid-template-columns:repeat(2,minmax(0,1fr));gap:5vw}.projects-index .hero-project-name{font-size:9px;letter-spacing:.06em}.projects-index .derby-hero{gap:12px}}

/* Equal, uncropped covers for the three-project collection. */
.projects-index .projects-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3vw,44px)}
@media(max-width:650px){.projects-index .projects-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:3vw}.projects-index .hero-project-name{font-size:8px;letter-spacing:.035em}.projects-index .hero-project-name span{display:none}}
/* Three identical portrait cover frames, aligned along both edges. */
.projects-index .projects-hero{width:min(100%,calc((100svh - var(--masthead) - 4svh - 44px)*2 + clamp(14px,3vw,44px)*2));max-width:1440px;margin:0 auto;height:100%;align-items:start}
.projects-index .derby-hero{height:auto;min-height:0;grid-template-rows:auto auto;gap:16px}
.projects-index .derby-hero>img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center}
.projects-index .hero-project-name{min-height:23px}
@media(max-width:650px){.projects-index .projects-hero{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:3vw}.projects-index .derby-hero{gap:12px}}

@font-face{font-family:"1781 La Fayette";src:url("/assets/fonts/1781-lafayette-normal.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap}
.wordmark{font-family:"1781 La Fayette","Times New Roman",serif;font-weight:400;font-style:normal;text-transform:none;letter-spacing:.015em;transform:none;font-synthesis:none}
@media(max-width:650px){.wordmark{letter-spacing:.015em}}
/* Restrained sans-serif wordmark, inspired by the reference proportions. */
.wordmark{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;font-size:clamp(25px,2.4vw,36px);letter-spacing:.13em;line-height:1.2;transform:none;text-transform:none}
@media(max-width:650px){.wordmark{font-size:clamp(19px,4.8vw,28px);letter-spacing:.11em}}

/* Compact uppercase sans-serif, following the PRINTEMPS reference. */
.home .panels .caption.printemps-label{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;letter-spacing:.015em;line-height:1;transform:scaleX(.96);transform-origin:top right;font-synthesis:none}

.home .panels .panel:first-child .caption.printemps-label{transform-origin:top left}
/* Project names follow the homepage image-label typography. */
.projects-index .derby-hero{position:relative;display:block;aspect-ratio:2/3;height:auto;overflow:hidden}
.projects-index .derby-hero>img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover}
.projects-index .hero-project-name{position:absolute;top:4%;left:6%;bottom:auto;right:6%;display:block;min-height:0;color:#fff;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:clamp(9px,.85vw,12px);font-weight:400;font-style:normal;letter-spacing:.015em;line-height:1.2;transform:scaleX(.96);transform-origin:top left;text-shadow:0 1px 5px #0005}
.projects-index .hero-project-name span{display:none}
@media(max-width:650px){.projects-index .hero-project-name{font-size:9px;letter-spacing:.015em}}

@font-face{font-family:"Allura";src:url("/assets/fonts/allura-regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.projects-index .hero-project-name{display:flex;align-items:baseline;gap:.5em;transform:none;white-space:nowrap}
.projects-index .hero-project-name .project-year{display:inline-block;margin:0;font-family:"Allura",cursive;font-size:1.65em;line-height:.8;font-weight:400;letter-spacing:0;text-transform:none;transform:rotate(-4deg);transform-origin:center}
@media(max-width:650px){.projects-index .hero-project-name{white-space:normal;flex-wrap:wrap;gap:.4em}.projects-index .hero-project-name .project-year{display:inline-block}}

@font-face{font-family:"Yellowtail";src:url("/assets/fonts/yellowtail-regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
.projects-index .hero-project-name{display:flex;align-items:baseline;gap:.38em;white-space:nowrap;flex-wrap:nowrap}
.projects-index .hero-project-name .project-year{font-family:"Yellowtail",cursive;font-size:1.25em;line-height:1;font-weight:400;letter-spacing:-.035em;transform:skewX(-9deg);margin:0}
@media(max-width:650px){.projects-index .hero-project-name{flex-wrap:nowrap;font-size:8px;gap:.3em}}

/* Use literal inline word spacing, with no flex distribution. */
.projects-index .hero-project-name{display:block;justify-content:normal;gap:0;white-space:nowrap}
.projects-index .hero-project-name .project-year{display:inline;margin:0;padding:0;position:static}
@media(max-width:650px){.projects-index .hero-project-name{display:block;gap:0;white-space:nowrap}.projects-index .hero-project-name .project-year{display:inline}}
/* Uploaded La Fayette for years, separated by one literal word space. */
.projects-index .hero-project-name .project-year{font-family:"1781 La Fayette","Times New Roman",serif;font-weight:400;font-style:normal;font-size:1.15em;letter-spacing:0;line-height:1;transform:none;display:inline;margin:0;padding:0}
/* Slightly larger years, following the reference's name-to-year proportions. */
.projects-index .hero-project-name .project-year{font-size:1.35em;vertical-align:baseline}
.projects-index .hero-project-name .project-year{font-size:1.8em}
/* Compact the uploaded script numerals to follow the reference word shape. */
.projects-index .hero-project-name .project-year{display:inline-block;letter-spacing:-.09em;word-spacing:0;font-kerning:normal;font-variant-numeric:proportional-nums;transform:skewX(-10deg) scaleX(.94);transform-origin:left center;margin:0;padding:0}

@font-face{font-family:"Bodoni Moda";src:url("/assets/fonts/bodoni-moda.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.wordmark{font-family:"Bodoni Moda",Didot,"Times New Roman",serif;font-weight:400;font-style:normal;font-size:clamp(30px,3vw,44px);font-optical-sizing:auto;letter-spacing:.005em;line-height:1.2;transform:none;text-transform:none;padding-top:.15em}
.wordmark-initial{position:relative;display:inline-block;font:inherit;letter-spacing:inherit}.j-flourish{position:absolute;width:2.7em;height:1.35em;left:-.67em;top:-.65em;overflow:visible;pointer-events:none}
@media(max-width:650px){.wordmark{font-size:clamp(25px,5.8vw,34px);letter-spacing:.005em}}

/* One integrated, custom lettered masthead. */
.wordmark{display:block;font-size:inherit;letter-spacing:normal;line-height:1;padding:0;transform:none;width:clamp(270px,32vw,430px);max-width:84vw}
.custom-wordmark{display:block;width:100%;height:auto;max-height:105px;object-fit:contain}
@media(max-width:650px){.wordmark{width:clamp(240px,72vw,330px);max-width:84vw}.custom-wordmark{max-height:86px}}

/* Plain Orpheus title; webfont embed can be added when provided. */
.wordmark{display:inline-block;width:auto;max-width:90vw;padding:0;font-family:"Orpheus 2",orpheuspro,"Orpheus Pro","Times New Roman",serif;font-size:clamp(28px,3vw,42px);font-weight:400;font-style:normal;letter-spacing:.015em;line-height:1.2;transform:none;text-transform:none}
@media(max-width:650px){.wordmark{width:auto;font-size:clamp(24px,5.8vw,34px);letter-spacing:.015em}}
/* Airier spacing with a subtle vertical compression. */
.wordmark{letter-spacing:.11em;transform:scaleY(.86);transform-origin:center}
@media(max-width:650px){.wordmark{font-size:clamp(21px,5vw,30px);letter-spacing:.09em}}

/* Static swash drawn into the J, tapering into the title direction. */
.wordmark{position:relative;overflow:visible;padding-left:.68em}
.integrated-initial{display:inline-block;position:relative;width:.43em;letter-spacing:0;vertical-align:baseline}
.integrated-j{display:inline-block;width:.43em;height:1.02em;overflow:visible;vertical-align:-.2em}
.wordmark-rest{position:relative;letter-spacing:inherit;font:inherit}
@media(max-width:650px){.wordmark{padding-left:.68em}}

/* Unified reference-based lettering: one image, one coherent letter style. */
.wordmark{display:block;width:clamp(290px,37vw,480px);max-width:86vw;padding:0;transform:none;line-height:1;letter-spacing:normal}
.film-lettering{display:block;width:100%;height:auto;max-height:100px;object-fit:contain}
@media(max-width:650px){.wordmark{width:80vw;max-width:340px;padding:0}.film-lettering{max-height:85px}}

/* Thin geometric lettering, following the supplied Cristal Lalique reference. */
@font-face{font-family:"Raleway ExtraLight";src:url("/assets/fonts/raleway-extralight.ttf") format("truetype");font-weight:200;font-style:normal;font-display:swap}
.wordmark{display:inline-block;width:auto;max-width:90vw;padding:0;font-family:"Raleway ExtraLight",Arial,sans-serif;font-size:clamp(28px,3vw,42px);font-weight:200;font-style:normal;letter-spacing:-.015em;line-height:1.2;transform:none;text-transform:none;font-synthesis:none}
@media(max-width:650px){.wordmark{width:auto;max-width:90vw;padding:0;font-size:clamp(23px,5.8vw,34px);letter-spacing:-.015em}}
/* Wider and flatter proportions, following the Lalique reference. */
.wordmark{transform:scale(1.16,.82);transform-origin:center;letter-spacing:-.025em}
@media(max-width:650px){.wordmark{font-size:clamp(21px,5.2vw,30px);letter-spacing:-.025em;transform:scale(1.12,.82)}}

/* Restore the refined flourish header. */
.wordmark{display:block;width:clamp(290px,37vw,480px);max-width:86vw;padding:0;transform:none;line-height:1;letter-spacing:normal}
.film-lettering{display:block;width:100%;height:auto;max-height:100px;object-fit:contain}
@media(max-width:650px){.wordmark{width:80vw;max-width:340px;padding:0;transform:none}.film-lettering{max-height:85px}}
/* Upright serif names and close-set italic years, following PARIS L'Olympia. */
@font-face{font-family:"Bodoni Moda";src:url("/assets/fonts/bodoni-moda-italic.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
.projects-index .hero-project-name{font-family:"Bodoni Moda","Times New Roman",serif;font-size:clamp(11px,1.1vw,16px);font-weight:400;font-style:normal;letter-spacing:-.045em;line-height:1.1;transform:none;white-space:nowrap}
.projects-index .hero-project-name .project-year{font-family:"Bodoni Moda","Times New Roman",serif;font-style:italic;font-size:1.2em;font-weight:400;letter-spacing:-.075em;transform:none;display:inline;margin:0;padding:0;vertical-align:baseline}
@media(max-width:650px){.projects-index .hero-project-name{font-size:clamp(8px,2vw,11px);letter-spacing:-.045em}}

/* Reference-based name and year lettering, preserved as one line. */
.projects-index .reference-project-label{display:block;width:auto;max-width:88%;transform:none;text-shadow:none;line-height:1;font-size:clamp(11px,1.1vw,16px)}
.projects-index .reference-project-label>img{display:block;width:auto;height:1em;max-width:100%;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}
@media(max-width:650px){.projects-index .reference-project-label{font-size:clamp(8px,2vw,11px)}}

/* Closely stacked reference lettering with Jack aligned to the left. */
.wordmark{display:block;width:clamp(180px,19vw,240px);max-width:70vw;padding:0;transform:none;line-height:1}
.stacked-logo{display:block;width:100%;height:auto;max-height:104px;object-fit:contain;object-position:left center}
@media(max-width:650px){.wordmark{width:190px;max-width:65vw;padding:0;transform:none}.stacked-logo{max-height:86px}}

/* Slightly larger hand-drawn masthead logo. */
.wordmark{width:clamp(210px,22vw,280px)}
@media(max-width:650px){.wordmark{width:220px;max-width:70vw}}

/* Restore PRINTEMPS-inspired project names; retain the existing date artwork. */
.projects-index .hero-project-name.restored-printemps{display:flex;align-items:baseline;gap:.3em;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;letter-spacing:.015em;font-size:clamp(11px,1.1vw,16px);transform:none;white-space:nowrap;line-height:1.2}
.projects-index .restored-printemps .project-title{display:inline;margin:0;font-size:.8em}
.projects-index .restored-printemps .preserved-year{display:inline-block;margin:0;flex-shrink:0;background-repeat:no-repeat;filter:brightness(0) invert(1);vertical-align:baseline}
@media(max-width:650px){.projects-index .hero-project-name.restored-printemps{font-size:clamp(8px,2vw,11px)}}

/* Slightly stronger project names only. */
.projects-index .restored-printemps .project-title{font-weight:500;-webkit-text-stroke:.15px currentColor}

/* Compact name proportions alongside the existing script dates. */
.projects-index .restored-printemps .project-title{display:inline-block;letter-spacing:-.02em;transform:scaleX(.98);transform-origin:right center;margin-left:-.1em}

/* Match date artwork height to the uppercase project names. */
.projects-index .restored-printemps .preserved-year{transform:scale(.58);transform-origin:left bottom;margin-right:-1.3em}

.wordmark:has(.lafayette-wordmark){width:auto;max-width:90vw;text-align:center}
.lafayette-wordmark{font:400 clamp(24px,3.3vw,46px)/1.15 "1781 La Fayette",serif;letter-spacing:normal;text-transform:none;white-space:nowrap}

.lafayette-wordmark{color:#000}

@font-face{font-family:Tapeworm;src:url('/assets/fonts/tapeworm.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.home .panels .caption.printemps-label,.projects-index .restored-printemps .project-title,.editorial-project h1{font-family:Tapeworm,sans-serif;font-weight:400;font-style:normal;font-synthesis:none}
.projects-index .restored-printemps .project-title{-webkit-text-stroke:0}
.product-page .product-information .section-heading{font-family:'1781 La Fayette',serif;font-weight:400;font-style:normal}

.product-page .product-information .section-heading{text-transform:none}

@font-face{font-family:'Credit Valley';src:url('/assets/fonts/credit-valley.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.product-page :is(.product-price,.product-status,.product-description){font-family:'Credit Valley',sans-serif;font-weight:400}
.product-page :is(.product-description summary,.order-link,.back){font-family:Tapeworm,sans-serif;font-weight:400}

.project-intro .project-address{margin:8px 0 0;font:400 clamp(13px,1.15vw,16px)/1.3 'Credit Valley',sans-serif;text-transform:none;letter-spacing:normal}
.project-intro .project-year-line{margin:3px 0 0;font:400 clamp(15px,1.4vw,20px)/1.2 '1781 La Fayette',serif;letter-spacing:normal}
