:root{--ink:#0a0908;--ink-raised:#151311;--bone:#f4efe6;--bone-muted:#c9c2b5;--bone-quiet:#a8a194;--barn:#7a2e2e;--on-barn:#fbe6e0;--on-barn-muted:#ebc5bd;--brass:#c9a463;--hair:#f4efe633;--display:var(--font-serif);--sans:var(--font-sans);--gutter:clamp(20px, 4.5vw, 72px);--page:1760px;--masthead:72px;--section:clamp(88px, 11vw, 168px);--ease:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--ink);color:var(--bone);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:18px;line-height:1.6;overflow-x:clip}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;font-weight:400;line-height:.95}em{font-style:italic}p{text-wrap:pretty}a{color:inherit}ul{list-style:none}a:focus-visible{outline:2px solid var(--brass);outline-offset:4px}section,.masthead,.colophon{padding-inline:max(var(--gutter), (100% - var(--page)) / 2)}.btn{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;min-height:54px;transition:background-color .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);justify-content:center;align-items:center;padding:12px 30px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary,.btn-header{background:var(--bone);color:var(--ink)}.btn-primary:hover,.btn-header:hover{background:var(--brass)}.btn-secondary{border:1px solid #f4efe68c}.btn-secondary:hover{border-color:var(--bone);background:var(--bone);color:var(--ink)}.btn-header{min-height:44px;padding:8px 22px;font-size:13px}.masthead{z-index:10;min-height:var(--masthead);border-bottom:1px solid var(--hair);background:#0a0908f2;align-items:center;gap:40px;display:flex;position:sticky;top:0}.wordmark{font-family:var(--display);letter-spacing:-.01em;padding-block:8px;font-size:26px;font-style:italic;text-decoration:none}.masthead-nav{gap:28px;margin-left:auto;display:flex}.masthead-nav a{color:var(--bone-muted);letter-spacing:.12em;text-transform:uppercase;transition:color .25s var(--ease);padding-block:12px;font-size:13px;font-weight:500;text-decoration:none}.masthead-nav a:hover{color:var(--bone)}.hero{--hero-top:clamp(40px, 6vw, 88px);--hero-bottom:clamp(56px, 7vw, 104px);padding-block:var(--hero-top) var(--hero-bottom);gap:48px;display:grid}.hero h1{letter-spacing:-.04em;font-size:clamp(84px,min(16vw,26svh),232px);line-height:.82}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:var(--bone);padding-left:.08em}.now-at{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-top:clamp(24px,3vw,40px);padding-block:10px;font-size:clamp(17px,1.6vw,20px);text-decoration:none;display:inline-flex}.now-at-label{color:var(--brass);letter-spacing:.16em;text-transform:uppercase;font-size:13px;font-weight:600}.now-at-place{text-underline-offset:6px;transition:color .25s var(--ease);text-decoration:underline #c9a46399}.now-at:hover .now-at-place{color:var(--brass)}.now-at-end{white-space:nowrap}.now-at-arrow{color:var(--bone-muted);margin-left:.3em;display:inline-block}.hours-line{display:block}.hero-foot{border-top:1px solid var(--hair);gap:32px;margin-top:clamp(28px,3vw,44px);padding-top:32px;display:grid}.tagline{max-width:34ch;color:var(--bone-muted);font-size:clamp(19px,1.8vw,22px);line-height:1.5}.ctas{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.book{gap:12px;display:grid}.rating{color:var(--bone-quiet);letter-spacing:.02em;font-size:14px}.rating-stars{color:var(--bone);font-weight:600}.byline{color:var(--brass);letter-spacing:.16em;text-transform:uppercase;margin-top:40px;font-size:13px;font-weight:500}.portrait img{aspect-ratio:4/5;object-fit:cover;width:100%;height:100%;display:block}.find{padding-block:var(--section);background:var(--barn);color:var(--on-barn);--hair:#fbe6e04d;gap:56px;display:grid}.find h2{font-size:clamp(64px,10vw,152px)}.find-intro p{max-width:30ch;color:var(--on-barn-muted);text-wrap:balance;margin-top:24px;font-size:20px}.places{border-top:1px solid var(--hair)}.places li{border-bottom:1px solid var(--hair)}.place{grid-template-columns:1fr auto;grid-template-areas:"verb arrow""name arrow""note arrow";align-items:center;column-gap:16px;padding-block:24px;text-decoration:none;display:grid}.place-verb{letter-spacing:.16em;text-transform:uppercase;grid-area:verb;font-size:13px;font-weight:600}.place-name{font-family:var(--display);letter-spacing:-.03em;transition:transform .4s var(--ease);grid-area:name;font-size:clamp(52px,8vw,120px);line-height:1}.place-note{color:var(--on-barn-muted);grid-area:note;font-size:16px}.place-arrow{transition:transform .4s var(--ease);grid-area:arrow;font-size:clamp(28px,4vw,56px)}.place:hover .place-name{transform:translate(12px)}.place:hover .place-arrow{transform:translate(6px,-6px)}.work{padding-block:var(--section)}.work h2{font-size:clamp(56px,8vw,128px)}.work h2 em{color:var(--bone-muted)}.work-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:clamp(40px,5vw,72px);display:grid}.work-photo{aspect-ratio:4/5;background:var(--ink-raised);grid-column:span 2;overflow:hidden}.work-photo:nth-child(2){aspect-ratio:3/2}.work-photo:nth-child(n+3){grid-column:span 1}.work-photo:nth-child(n+3):nth-child(odd):last-child{grid-column:span 2}.work-photo picture{height:100%;display:block}.work-photo img{object-fit:cover;width:100%;height:100%;display:block}.about{padding-block:var(--section);gap:clamp(40px,5vw,72px);display:grid}.work:has(+.about){padding-bottom:0}.about h2{font-size:clamp(56px,8vw,128px)}.about h2 em{color:var(--bone-muted)}.about-text{max-width:34em;color:var(--bone-muted);gap:1em;font-size:clamp(18px,1.5vw,20px);line-height:1.65;display:grid}.about-text p:first-child{color:var(--bone);font-size:clamp(21px,2vw,26px);line-height:1.45}.specialty{padding-block:var(--section);background:var(--bone);color:var(--ink);--hair:#0a090838}.specialty h2{font-size:clamp(56px,8vw,128px)}.services{border-top:1px solid var(--hair);margin-top:64px}.services li{border-bottom:1px solid var(--hair);padding-block:32px}.services h3{font-size:clamp(40px,5.6vw,84px)}.location{padding-block:var(--section)}.location-kicker{color:var(--brass);letter-spacing:.16em;text-transform:uppercase;font-size:13px;font-weight:600}.location h2{margin-top:20px;font-size:clamp(56px,10vw,160px)}.location-body{gap:40px;margin-top:56px;display:grid}.facts div{border-bottom:1px solid var(--hair);grid-template-columns:6.5rem 1fr;gap:16px;padding-block:18px;display:grid}.facts div:first-child{border-top:1px solid var(--hair)}.facts dt{color:var(--bone-quiet);letter-spacing:.14em;text-transform:uppercase;padding-top:3px;font-size:13px;font-weight:600}.facts a{text-decoration-color:var(--brass);text-underline-offset:5px;margin-block:-10px;padding-block:10px;display:inline-block}.facts a:hover{color:var(--brass)}.faq{padding-block:var(--section);background:var(--ink-raised);gap:40px;display:grid}.faq h2{font-size:clamp(56px,8vw,120px)}.faq-item{border-bottom:1px solid var(--hair);padding-block:28px}.faq-item:first-child{padding-top:0}.faq-item:last-child{border-bottom:0}.faq-item h3{font-family:var(--sans);letter-spacing:0;font-size:20px;font-weight:600;line-height:1.35}.faq-item p{max-width:60ch;color:var(--bone-quiet);margin-top:10px}.wordmark+.btn-header{margin-left:auto}.missing{min-height:calc(100svh - var(--masthead));padding:clamp(48px, 8vw, 120px) max(var(--gutter), (100% - var(--page)) / 2);align-content:center;justify-items:start;display:grid}.missing-code{color:var(--brass);letter-spacing:.16em;font-size:13px;font-weight:600}.missing h1{letter-spacing:-.04em;margin-top:20px;font-size:clamp(88px,16vw,232px);line-height:.82}.missing h1 em{padding-left:.08em}.missing-lead{max-width:30ch;color:var(--bone-muted);margin-block:clamp(28px,3vw,44px);font-size:clamp(19px,1.8vw,22px);line-height:1.5}.colophon{color:var(--bone-quiet);padding-block:clamp(56px,7vw,112px) clamp(24px,3vw,48px);font-size:16px;container-type:inline-size}.colophon-mark{color:var(--bone);font-family:var(--display);letter-spacing:-.04em;white-space:nowrap;margin-bottom:clamp(28px,4cqi,64px);margin-left:-.057em;font-size:17.4cqi;line-height:.9}.colophon-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;display:flex}.credit-arrow{transition:transform .4s var(--ease);margin-left:.3em;display:inline-block}.credit-line{color:var(--bone-muted);flex-wrap:wrap;align-items:center;column-gap:16px;font-size:17px;display:flex}.av-frame{width:30px;height:30px;transition:border-color .25s var(--ease);border:1px solid #f4efe673;flex:none;place-items:center;margin-right:10px;display:grid}.av-mark{width:auto;height:12px;display:block}.credit-link{min-height:44px;color:var(--bone);white-space:nowrap;transition:color .25s var(--ease);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.credit-link-text{text-underline-offset:6px;transition:text-decoration-color .25s var(--ease);text-decoration:underline 1px #c9a463b3}.credit-link:hover{color:var(--brass)}.credit-link:hover .credit-link-text{text-decoration-color:var(--brass)}.credit-link:hover .av-frame{border-color:var(--brass)}.credit-link:hover .credit-arrow{transform:translate(5px)}@media (width<=900px){.masthead-nav{display:none}.masthead .btn-header{margin-left:auto}}@media (width<=520px){.facts div{grid-template-columns:5.25rem 1fr;font-size:17px}.ctas>*{flex:100%}}@media (width<=959px){.hero:has(.portrait){gap:0}.hero:has(.portrait) .hero-type{display:contents}.hero:has(.portrait) h1{order:-2}.hero:has(.portrait) .now-at{justify-self:start}.hero .portrait{margin:24px calc(-1 * var(--gutter)) 0;order:-1}.hero .portrait img{--fold-rest:528px;max-height:clamp(240px, 100svh - var(--fold-rest), 62svh);object-position:50% 60%}.hero:has(.portrait) .now-at{margin-top:12px}.hero:has(.portrait) .hero-foot{gap:24px;margin-top:12px;padding-top:20px}.hero:has(.portrait) .ctas{order:-1}}@media (width>=960px){.hero:has(.portrait){grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:64px}.hero:has(.portrait) h1{font-size:clamp(96px,min(12.5vw,20svh),200px)}.hero .portrait{--first-screen:calc(100svh - var(--masthead) - var(--hero-top) - var(--hero-bottom));width:min(100%, max(320px, var(--first-screen) * 4 / 5));justify-self:end}.hero:not(:has(.portrait)) h1 em{padding-left:1.1em}.hero:not(:has(.portrait)) .hero-foot{grid-template-columns:minmax(0,1fr) auto;align-items:end}.find,.about,.specialty,.faq{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:80px;display:grid}.find-intro,.about h2,.specialty h2,.faq h2{align-self:start;position:sticky;top:112px}.specialty h2{font-size:clamp(56px,6vw,112px)}.services{margin-top:0}.location-body{margin-left:45.4545%}.work-grid:has(>:nth-child(4):last-child){grid-template-columns:5fr 3.5fr 3.5fr;gap:16px}.work-grid:has(>:nth-child(4):last-child)>:first-child{aspect-ratio:auto;grid-area:span 2/1;position:relative}.work-grid:has(>:nth-child(4):last-child)>:first-child img{object-position:35% 50%;position:absolute;inset:0}.work-grid:has(>:nth-child(4):last-child)>:nth-child(2){grid-column:2/span 2}.work-grid:has(>:nth-child(4):last-child)>:nth-child(n+3){grid-column:auto}}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){[data-enter]{opacity:0;animation:0s 2.5s forwards enter-fallback}}@keyframes enter-fallback{to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.places li{animation:linear both rise view();animation-range:entry entry 70%}}}@media (width>=1360px){.place{grid-template-columns:1fr auto auto;grid-template-areas:"name verb arrow""name note arrow";column-gap:32px;padding-block:32px}.place-verb{align-self:end}.place-note{white-space:nowrap;align-self:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
