.ng-head{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--ng-paper) 92%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid transparent;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.ng-head[data-scrolled=true]{background:color-mix(in oklab,var(--ng-paper) 97%,transparent);border-bottom-color:var(--hair);box-shadow:0 10px 30px -22px #0e12182e}.ng-head__util{background:var(--ng-loupe);color:var(--ng-brass-soft);font-size:11.5px;max-height:40px;overflow:hidden;transition:max-height .3s ease,opacity .25s ease}.ng-head[data-scrolled=true] .ng-head__util{max-height:0;opacity:0}.ng-head__util-row{display:flex;justify-content:space-between;align-items:center;height:40px;font-family:var(--ff-mono);letter-spacing:.04em}.ng-head__util-right{display:flex;gap:12px;align-items:center}.ng-head__util-right a{color:var(--ng-brass-soft);transition:color .15s ease}.ng-head__util-right a:hover{color:var(--ng-paper)}.ng-head__util .dot{opacity:.5}.ng-head__main{padding:16px 0;transition:padding .25s ease}.ng-head[data-scrolled=true] .ng-head__main{padding:10px 0}.ng-head__row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:32px}.ng-brand{display:flex;align-items:center;gap:14px;flex-shrink:0;color:var(--ng-loupe)}.ng-brand__mark{display:grid;place-items:center;color:var(--ng-brass)}.ng-brand__lockup{display:flex;flex-direction:column;line-height:1.05}.ng-brand__name{font-family:var(--ff-display);font-size:26px;font-weight:600;color:var(--ng-loupe);letter-spacing:.16em}.ng-brand__sub{font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ng-smoke-mute);margin-top:4px}.ng-nav{justify-self:center}.ng-nav ul{display:flex;gap:2px}.ng-nav a{display:inline-block;padding:9px 14px;font-size:13.5px;font-weight:500;color:var(--ng-smoke);border-radius:999px;transition:color .15s ease,background .15s ease}.ng-nav a:hover{color:var(--ng-brass-deep);background:color-mix(in oklab,var(--ng-brass) 8%,transparent)}.ng-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;background:var(--ng-loupe);color:var(--ng-paper);border-radius:3px;font-size:13px;font-weight:600;letter-spacing:.02em;transition:background .2s ease,transform .15s ease;white-space:nowrap}.ng-cta:hover{background:var(--ng-bench);transform:translateY(-1px)}.ng-burger{display:none;flex-direction:column;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer;border-radius:6px}.ng-burger:hover{background:color-mix(in oklab,var(--ng-loupe) 6%,transparent)}.ng-burger span{display:block;width:22px;height:1.6px;background:var(--ng-loupe);border-radius:2px;transition:transform .25s ease,opacity .2s ease}.ng-burger[aria-expanded=true] span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.ng-burger[aria-expanded=true] span:nth-child(2){opacity:0}.ng-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.ng-drawer{position:fixed;inset:0;background:var(--ng-paper);z-index:49;padding:110px 28px 40px;display:flex;flex-direction:column;gap:32px;transform:translateY(-100%);transition:transform .3s ease}.ng-drawer[aria-hidden=false]{transform:translateY(0)}.ng-drawer nav{display:flex;flex-direction:column}.ng-drawer nav a{font-family:var(--ff-display);font-size:28px;color:var(--ng-loupe);padding:14px 0;border-bottom:1px solid var(--hair)}.ng-drawer nav a:hover{color:var(--ng-brass-deep)}.ng-drawer__foot{margin-top:auto;display:flex;flex-direction:column;gap:16px;padding-top:24px;border-top:1px solid var(--hair)}.ng-drawer__cta{width:100%}.ng-drawer__call{font-family:var(--ff-display);font-size:22px;color:var(--ng-bench);text-align:center}.ng-drawer__foot p{font-family:var(--ff-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ng-smoke-mute);text-align:center}.ng-eyebrow{display:inline-block;font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ng-smoke-mute);font-weight:600;margin-bottom:14px}.ng-eyebrow.gold{color:var(--ng-brass-deep)}.ng-eyebrow.paper{color:var(--ng-brass-soft)}.ng-eyebrow--pill{padding:7px 16px;background:var(--ng-loupe);color:var(--ng-brass-soft);border-radius:999px;align-self:flex-start;margin-bottom:26px}.ng-head2{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:44px}.ng-head2 h2{font-family:var(--ff-display);font-size:clamp(28px,3.6vw,44px);font-weight:500;line-height:1.12;color:var(--ng-loupe);letter-spacing:-.012em;max-width:760px}.ng-head2__sub{font-size:15.5px;color:var(--ng-smoke);max-width:380px;line-height:1.6}.bg-loupe{background:var(--ng-loupe);color:var(--ng-paper)}.bg-loupe h1,.bg-loupe h2,.bg-loupe h3,.bg-loupe h4{color:var(--ng-paper)}.ng-hero{padding:clamp(48px,7vw,80px) 0 clamp(56px,8vw,88px)}.ng-hero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center}.ng-hero__copy{display:flex;flex-direction:column}.ng-hero h1{font-family:var(--ff-display);font-size:clamp(42px,5.6vw,78px);font-weight:500;letter-spacing:-.018em;line-height:1.02;color:var(--ng-loupe)}.ng-hero h1 em{font-style:italic;color:var(--ng-brass-deep);font-weight:500}.ng-hero__lede{font-size:17.5px;color:var(--ng-smoke);margin-top:26px;max-width:580px;line-height:1.65}.ng-hero__ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.ng-hero__why{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;padding:22px 0 0;border-top:1px solid var(--hair)}.ng-why{display:flex;flex-direction:column}.ng-why strong{font-family:var(--ff-display);font-size:22px;color:var(--ng-brass-deep);font-weight:600;font-style:italic;line-height:1}.ng-why span{font-family:var(--ff-mono);font-size:9.5px;color:var(--ng-smoke-mute);letter-spacing:.06em;text-transform:uppercase;margin-top:6px;line-height:1.4}.ng-hero__photo{position:relative;margin:0;aspect-ratio:4/5;max-width:540px;justify-self:end;overflow:hidden;border-radius:4px;box-shadow:0 2px 6px #0e12181a,0 22px 44px -16px #0e12184d;border:1px solid var(--hair);background:var(--ng-loupe)}.ng-hero__photo img{width:100%;height:100%;object-fit:cover;object-position:center}.ng-hero__photo figcaption{position:absolute;left:18px;right:18px;bottom:18px;background:#0e1218eb;color:var(--ng-paper);padding:14px 18px;border-radius:3px;display:flex;flex-direction:column;gap:4px;font-size:13px}.ng-cap__label{font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.14em;font-weight:700;color:var(--ng-brass-soft)}.ng-credential{padding:30px 0;background:var(--ng-loupe);color:var(--ng-paper)}.ng-credential__inner{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center}.ng-credential__mark{color:var(--ng-brass-soft)}.ng-credential__copy p{font-size:15.5px;line-height:1.65;color:color-mix(in oklab,var(--ng-paper) 86%,transparent);max-width:820px}.ng-credential__copy p strong{color:var(--ng-brass-soft);font-weight:600}.ng-what{padding:clamp(56px,8vw,96px) 0}.ng-what__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.ng-what-card{background:#fff;padding:28px 24px;border-radius:4px;box-shadow:var(--shadow-soft);border-top:2px solid var(--ng-brass);display:flex;flex-direction:column;gap:12px}.ng-what-card__eyebrow{font-family:var(--ff-mono);font-size:10px;letter-spacing:.16em;color:var(--ng-brass-deep);font-weight:700}.ng-what-card h3{font-family:var(--ff-display);font-size:22px;line-height:1.22;color:var(--ng-loupe);font-weight:600;font-style:italic}.ng-what-card p{font-size:13.5px;color:var(--ng-smoke);line-height:1.6}.ng-process{padding:clamp(56px,8vw,96px) 0;background:var(--ng-paper-soft)}.ng-process__list{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0;margin:0;list-style:none}.ng-process__list li{background:#fff;padding:28px 24px;border-radius:4px;border:1px solid var(--hair);display:flex;flex-direction:column;gap:12px}.ng-step{font-family:var(--ff-mono);font-size:12px;color:var(--ng-brass-deep);letter-spacing:.14em;font-weight:700}.ng-process__list h3{font-family:var(--ff-display);font-size:21px;font-weight:600;color:var(--ng-loupe)}.ng-process__list p{font-size:13.5px;color:var(--ng-smoke);line-height:1.6}.ng-portfolio{padding:clamp(56px,8vw,96px) 0}.ng-portfolio__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.ng-port{margin:0;background:#fff;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-soft);border:1px solid var(--hair);display:flex;flex-direction:column}.ng-port__img{aspect-ratio:4/3;overflow:hidden;background:var(--ng-paper-deep)}.ng-port__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.ng-port:hover .ng-port__img img{transform:scale(1.03)}.ng-port figcaption{padding:18px 22px 22px;display:flex;flex-direction:column;gap:6px}.ng-port__label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ng-brass-deep);font-weight:700}.ng-port__caption{font-family:var(--ff-display);font-size:17px;color:var(--ng-loupe);font-style:italic}.ng-heritage{padding:clamp(72px,10vw,120px) 0;position:relative}.ng-heritage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse 50% 40% at 0% 0%,color-mix(in oklab,var(--ng-brass) 18%,transparent) 0%,transparent 70%);pointer-events:none}.ng-heritage__inner{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:start;position:relative}.ng-heritage h2{color:var(--ng-paper);font-size:clamp(28px,3.4vw,40px);line-height:1.15;font-weight:500;font-family:var(--ff-display)}.ng-heritage h2 em{color:var(--ng-brass-soft);font-style:italic;font-weight:500}.ng-heritage p{color:color-mix(in oklab,var(--ng-paper) 84%,transparent);font-size:16px;line-height:1.7;margin-top:18px}.ng-heritage p strong{color:var(--ng-brass-soft);font-weight:600}.ng-quote{margin:30px 0 0;padding:22px 26px;background:color-mix(in oklab,var(--ng-paper) 6%,transparent);border-left:3px solid var(--ng-brass);font-family:var(--ff-display);font-style:italic;font-size:21px;color:var(--ng-brass-soft);border-radius:0 3px 3px 0;line-height:1.45}.ng-quote cite{display:block;margin-top:12px;font-family:var(--ff-mono);font-style:normal;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklab,var(--ng-paper) 70%,transparent)}.ng-heritage__timeline{display:flex;flex-direction:column;gap:0;padding:28px;background:color-mix(in oklab,var(--ng-paper) 4%,transparent);border:1px solid color-mix(in oklab,var(--ng-paper) 14%,transparent);border-radius:4px}.ng-t-row{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:14px 0;border-bottom:1px dashed color-mix(in oklab,var(--ng-paper) 18%,transparent);align-items:baseline}.ng-t-row:last-child{border-bottom:none}.ng-t-year{font-family:var(--ff-display);font-style:italic;font-size:18px;color:var(--ng-brass-soft);font-weight:500;line-height:1.2}.ng-t-line{color:color-mix(in oklab,var(--ng-paper) 84%,transparent);font-size:14px;line-height:1.55}.ng-t-row--now .ng-t-year{color:var(--ng-paper)}.ng-t-row--now .ng-t-line{color:var(--ng-paper);font-weight:500}.ng-workshop{padding:clamp(56px,8vw,96px) 0;background:var(--ng-paper-soft)}.ng-workshop__inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}.ng-workshop h2{font-family:var(--ff-display);font-size:clamp(28px,3.4vw,40px);font-weight:500;line-height:1.15;max-width:480px}.ng-workshop__copy>p{font-size:16px;color:var(--ng-smoke);line-height:1.7;margin-top:18px;max-width:520px}.ng-spec{margin-top:26px;display:flex;flex-direction:column;gap:16px}.ng-spec li{display:flex;flex-direction:column;gap:4px;padding:18px 20px;background:#fff;border-radius:4px;border-left:3px solid var(--ng-brass);box-shadow:var(--shadow-soft)}.ng-spec__h{font-family:var(--ff-display);font-size:18px;font-style:italic;color:var(--ng-loupe);font-weight:600}.ng-spec li span:last-child{font-size:14px;color:var(--ng-smoke);line-height:1.65}.ng-workshop__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ng-workshop__grid figure{margin:0;display:flex;flex-direction:column;gap:8px}.ng-workshop__grid figure img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:3px;box-shadow:var(--shadow-soft);border:1px solid var(--hair)}.ng-workshop__grid figcaption{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;color:var(--ng-smoke-mute);text-transform:uppercase}.ng-repairs{padding:clamp(56px,8vw,96px) 0}.ng-repairs__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.ng-repair{padding:28px;background:#fff;border-radius:4px;border:1px solid var(--hair);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:10px}.ng-repair h3{font-family:var(--ff-display);font-size:22px;font-weight:600;color:var(--ng-loupe);line-height:1.22}.ng-repair p{font-size:14.5px;color:var(--ng-smoke);line-height:1.65}.ng-book{padding:clamp(56px,8vw,96px) 0;background:var(--ng-paper-soft)}.ng-book__inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.ng-book h2{font-family:var(--ff-display);font-size:clamp(26px,3.2vw,36px);font-weight:500;line-height:1.18;max-width:480px}.ng-book__copy>p{font-size:16px;color:var(--ng-smoke);line-height:1.7;margin-top:18px;max-width:480px}.ng-book__list{margin-top:22px;display:flex;flex-direction:column;gap:8px}.ng-book__list li{position:relative;padding-left:22px;font-size:14.5px;color:var(--ng-smoke)}.ng-book__list li:before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--ng-brass)}.ng-book__form{background:#fff;padding:32px 32px 28px;border-radius:4px;box-shadow:var(--shadow-lift);border:1px solid var(--hair)}.ng-book__form h3{font-family:var(--ff-display);font-size:24px;font-weight:600;margin-bottom:22px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-row label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ng-smoke-mute);font-weight:600}.form-row input,.form-row textarea{font-family:var(--ff-body);font-size:14px;padding:12px 14px;border:1px solid var(--ng-paper-deep);border-radius:3px;background:var(--ng-paper);color:var(--ng-loupe)}.form-row input:focus,.form-row textarea:focus{outline:2px solid var(--ng-brass);outline-offset:1px}.form-thanks{margin-top:14px;padding:12px 16px;background:color-mix(in oklab,var(--ng-brass) 14%,transparent);border-left:3px solid var(--ng-brass);font-size:14px;color:var(--ng-loupe);border-radius:0 3px 3px 0}.form-fine{margin-top:14px;font-family:var(--ff-mono);font-size:11px;color:var(--ng-smoke-mute);text-align:center}.form-fine a{color:var(--ng-brass-deep);border-bottom:1px solid var(--ng-brass)}.ng-visit{padding:clamp(56px,8vw,96px) 0}.ng-visit__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}.ng-visit-card{background:#fff;padding:28px 30px 30px;border-radius:4px;box-shadow:var(--shadow-soft);border:1px solid var(--hair);display:flex;flex-direction:column;gap:10px}.ng-visit-card h3{font-family:var(--ff-display);font-size:24px;font-weight:600;color:var(--ng-loupe);margin-bottom:4px}.ng-visit__addr{font-family:var(--ff-display);font-size:20px;line-height:1.4;color:var(--ng-loupe);font-style:italic;margin-top:4px}.ng-visit__line{font-size:14px;color:var(--ng-smoke)}.ng-visit__line a{color:var(--ng-bench);border-bottom:1px solid var(--ng-brass)}.ng-visit__line a:hover{color:var(--ng-brass-deep)}.ng-visit__note{margin-top:12px;padding:12px 14px;background:var(--ng-paper);border-left:3px solid var(--ng-brass);font-size:13.5px;color:var(--ng-smoke);border-radius:0 3px 3px 0}.ng-visit__note strong{color:var(--ng-loupe)}.ng-hours{display:flex;flex-direction:column}.ng-hours li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed var(--hair);font-size:14px;color:var(--ng-smoke)}.ng-hours li:last-child{border-bottom:none}.ng-hours li span:first-child{font-weight:500;color:var(--ng-loupe)}.ng-hours li.ng-hours--closed span{color:var(--ng-smoke-mute);font-style:italic}.ng-map{margin:32px 0 0;border:1px solid var(--hair-deep);border-radius:4px;overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}.ng-map iframe{display:block;width:100%;height:380px;border:0;filter:saturate(.88) contrast(1.02)}.ng-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ng-smoke-mute);background:var(--ng-paper);border-top:1px solid var(--hair)}.ng-map figcaption a{color:var(--ng-brass-deep);font-weight:600;white-space:nowrap}.ng-faq{padding:clamp(56px,8vw,96px) 0;background:var(--ng-paper-soft)}.ng-faq__list{display:flex;flex-direction:column;gap:14px}.ng-faq details{background:#fff;border:1px solid var(--hair);border-radius:4px;padding:22px 26px}.ng-faq summary{font-family:var(--ff-display);font-size:21px;font-weight:600;color:var(--ng-loupe);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.ng-faq summary::-webkit-details-marker{display:none}.ng-faq summary:after{content:"+";color:var(--ng-brass-deep);font-weight:700;font-size:24px;transition:transform .2s ease}.ng-faq details[open] summary:after{transform:rotate(45deg)}.ng-faq details p{margin-top:14px;color:var(--ng-smoke);font-size:14.5px;line-height:1.7}.ng-foot{background:var(--ng-loupe);color:color-mix(in oklab,var(--ng-paper) 72%,transparent);padding:64px 0 0}.ng-foot__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:44px;padding-bottom:48px}.ng-foot .ng-brand--foot .ng-brand__name{color:var(--ng-paper)}.ng-foot .ng-brand--foot .ng-brand__sub{color:var(--ng-brass-soft)}.ng-foot h4{font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--ng-brass-soft);margin:16px 0 14px;text-transform:uppercase}.ng-foot p{color:color-mix(in oklab,var(--ng-paper) 72%,transparent);font-size:13.5px;line-height:1.6;margin-top:18px}.ng-foot ul li{font-size:13.5px;padding:4px 0;color:color-mix(in oklab,var(--ng-paper) 75%,transparent)}.ng-foot a{color:color-mix(in oklab,var(--ng-paper) 82%,transparent)}.ng-foot a:hover{color:var(--ng-brass-soft)}.ng-foot__base{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid color-mix(in oklab,var(--ng-paper) 12%,transparent);font-family:var(--ff-mono);font-size:11px;letter-spacing:.04em}@media(max-width:1100px){.ng-what__grid,.ng-process__list{grid-template-columns:1fr 1fr}}@media(max-width:1024px){.ng-hero__inner{grid-template-columns:1fr}.ng-hero__photo{max-width:100%;justify-self:stretch}.ng-hero__why{grid-template-columns:repeat(2,1fr)}.ng-heritage__inner,.ng-workshop__inner,.ng-book__inner{grid-template-columns:1fr;gap:36px}.ng-visit__grid{grid-template-columns:1fr}.ng-foot__grid{grid-template-columns:1fr 1fr}.ng-repairs__grid{grid-template-columns:1fr}.ng-portfolio__grid{grid-template-columns:1fr 1fr}.ng-credential__inner{grid-template-columns:1fr;gap:18px;text-align:left}}@media(max-width:960px){.ng-head__util{display:none}.ng-head__row{grid-template-columns:1fr auto;gap:12px}.ng-nav,.ng-cta:not(.ng-drawer__cta){display:none}.ng-burger{display:inline-flex}.ng-brand__sub{display:none}.ng-brand__name{font-size:22px}}@media(max-width:640px){.wrap{padding:0 20px}.ng-hero h1{font-size:40px}.ng-hero__why,.ng-what__grid,.ng-process__list,.ng-workshop__grid,.ng-portfolio__grid,.ng-foot__grid{grid-template-columns:1fr}.ng-foot__base{flex-direction:column;gap:8px}.ng-t-row{grid-template-columns:90px 1fr}.ng-map iframe{height:280px}.ng-map figcaption{flex-direction:column;align-items:flex-start;gap:6px}}
