.site-header{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--paper) 90%,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}.site-header[data-scrolled=true]{background:color-mix(in oklab,var(--paper) 96%,transparent);border-bottom-color:var(--rule);box-shadow:0 10px 30px -22px #18261f2e}.site-header__util{background:var(--forest);color:var(--brass-soft);font-size:11.5px;max-height:36px;overflow:hidden;transition:max-height .3s ease,opacity .25s ease}.site-header[data-scrolled=true] .site-header__util{max-height:0;opacity:0}.site-header__util-row{display:flex;gap:14px;align-items:center;height:36px;font-family:var(--mono);letter-spacing:.04em;justify-content:center;flex-wrap:wrap;padding-top:0;padding-bottom:0}.site-header__util-row a{color:var(--brass-soft);transition:color .15s ease}.site-header__util-row a:hover{color:var(--paper)}.site-header__util-row .sep{opacity:.4}.site-header__main{padding:16px 0;transition:padding .25s ease}.site-header[data-scrolled=true] .site-header__main{padding:10px 0}.site-header__row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:14px;color:var(--ink)}.brand__mark{color:var(--brass-deep);flex-shrink:0}.brand__lockup{display:flex;flex-direction:column;line-height:1.05}.brand__name{font-family:var(--display);font-size:28px;font-weight:600;color:var(--ink);letter-spacing:.005em}.brand__sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-top:4px}.site-nav{justify-self:center}.site-nav ul{display:flex;gap:4px;list-style:none;padding:0;margin:0}.site-nav a{display:inline-block;padding:9px 14px;font-size:14px;font-weight:500;color:var(--ink-soft);border-radius:2px;position:relative;transition:color .15s ease,background .15s ease}.site-nav a:hover{color:var(--brass-deep);background:color-mix(in oklab,var(--brass) 8%,transparent)}.site-nav a[aria-current=true]{color:var(--brass-deep)}.site-nav a[aria-current=true]:after{content:"";position:absolute;left:16px;right:16px;bottom:2px;height:1.5px;background:var(--brass-deep)}.site-nav a:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.site-cta{display:inline-flex;align-items:center;gap:12px;padding:10px 18px;background:var(--ink);color:var(--paper);border-radius:2px;font-size:13px;font-weight:600;letter-spacing:.02em;transition:background .18s ease,transform .15s ease;white-space:nowrap}.site-cta:hover{background:var(--forest);transform:translateY(-1px)}.site-cta:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.site-cta__num{font-family:var(--mono);font-size:12px;color:var(--brass-soft)}.site-burger{display:none;flex-direction:column;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer;border-radius:4px}.site-burger:hover{background:color-mix(in oklab,var(--ink) 6%,transparent)}.site-burger:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.site-burger span{display:block;width:22px;height:1.6px;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .2s ease}.site-burger[aria-expanded=true] span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.site-burger[aria-expanded=true] span:nth-child(2){opacity:0}.site-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.site-drawer{position:fixed;inset:0;background:var(--paper);z-index:49;padding:100px 24px 28px;display:flex;flex-direction:column;gap:28px;transform:translateY(-100%);transition:transform .3s ease}.site-drawer[aria-hidden=false]{transform:translateY(0)}.site-drawer nav{display:flex;flex-direction:column}.site-drawer nav a{font-family:var(--display);font-size:26px;color:var(--ink);padding:14px 0;border-bottom:1px solid var(--rule)}.site-drawer nav a:hover{color:var(--brass-deep)}.site-drawer__foot{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding-top:18px;border-top:1px solid var(--rule)}.site-drawer__foot p{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);text-align:center;margin:8px 0 0}.hero{padding:clamp(48px,7vw,88px) 0 clamp(44px,6vw,76px);position:relative}.hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);gap:56px;align-items:center}.hero__copy{display:flex;flex-direction:column}.hero__eyebrow{display:inline-flex;align-self:flex-start;align-items:center;gap:10px;padding:7px 16px;background:var(--paper-soft);border:1px solid var(--rule);color:var(--ink-mute);border-radius:999px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:26px;flex-wrap:wrap}.hero__eyebrow .sep{opacity:.4}.hero h1{font-family:var(--display);font-size:clamp(40px,5.4vw,72px);color:var(--ink);line-height:1.04;font-weight:500;letter-spacing:-.015em}.hero h1 em{font-style:italic;color:var(--brass-deep);font-weight:500}.hero__lede{font-size:17.5px;color:var(--ink-soft);margin-top:24px;max-width:580px;line-height:1.65}.hero__lede strong{color:var(--ink);font-weight:600}.hero__ctas{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.hero__why{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px;padding-top:26px;border-top:1px solid var(--rule)}.why-badge{display:flex;flex-direction:column}.why-badge strong{font-family:var(--display);font-size:18px;color:var(--ink);font-weight:600;line-height:1.2}.why-badge span{font-family:var(--mono);font-size:10px;color:var(--ink-mute);letter-spacing:.06em;text-transform:uppercase;margin-top:5px;line-height:1.4}.hero__photo{position:relative;max-width:640px;aspect-ratio:4/3;overflow:hidden;border-radius:3px;box-shadow:var(--shadow-lift);border:1px solid var(--rule);background:var(--stone)}.hero__photo img{width:100%;height:100%;object-fit:cover}.hero__photo-caption{position:absolute;left:18px;right:18px;bottom:18px;background:#18261feb;color:var(--paper);padding:14px 18px;border-radius:2px;display:flex;flex-direction:column;gap:4px;font-size:13px}.caption__label{font-family:var(--mono);font-size:10px;letter-spacing:.12em;font-weight:700;color:var(--brass-soft);text-transform:uppercase}.numbers{background:var(--ink);color:var(--paper);padding:36px 0}.numbers__row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.num{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--brass);padding-left:18px}.num strong{font-family:var(--display);font-style:italic;font-size:36px;color:var(--brass-soft);font-weight:500;line-height:1}.num span{font-family:var(--mono);font-size:11px;color:#f5f0e4c7;letter-spacing:.08em;text-transform:uppercase;line-height:1.4}.section-head{max-width:800px;margin-bottom:48px}.section-head h2{font-family:var(--display);font-size:clamp(28px,3.6vw,42px);margin-top:10px;line-height:1.15;font-weight:500;letter-spacing:-.008em}.section-head .lede{margin-top:14px;color:var(--ink-soft);font-size:16px;line-height:1.6}.practice{background:var(--paper);padding:var(--section-pad) 0}.practice__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.p-card{background:var(--card);border:1px solid var(--rule);padding:32px 30px;border-radius:3px;display:flex;flex-direction:column;gap:14px;position:relative;transition:transform .18s ease,box-shadow .18s ease}.p-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.p-card__rule{position:absolute;left:30px;top:32px;width:28px;height:2px;background:var(--brass)}.p-card h3{font-family:var(--display);font-size:22px;font-weight:500;color:var(--ink);margin-top:18px;line-height:1.25}.p-card p{color:var(--ink-soft);font-size:14.5px;line-height:1.65;margin:0}.heritage{padding:var(--section-pad) 0;position:relative}.heritage__inner{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:start}.heritage h2{color:var(--paper);font-family:var(--display);font-size:clamp(28px,3.6vw,40px);line-height:1.18;font-weight:500;margin-top:10px}.heritage h2 em{color:var(--brass-soft);font-style:italic;font-weight:500}.heritage p{color:#f5f0e4d1;font-size:16px;line-height:1.75;margin-top:18px}.heritage p strong{color:var(--brass-soft);font-weight:600}.heritage__quote{margin:32px 0 0;padding:22px 24px 22px 28px;background:#f5f0e40f;border-left:3px solid var(--brass);font-family:var(--display);font-style:italic;font-size:22px;color:var(--brass-soft);border-radius:0 2px 2px 0;position:relative;line-height:1.4}.heritage__quote .qmark{display:block;font-size:36px;line-height:1;color:var(--brass);margin-bottom:6px;font-style:normal}.heritage__quote cite{display:block;margin-top:14px;font-family:var(--mono);font-style:normal;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#f5f0e4a6}.heritage__portrait{margin:26px 0 0;padding:0;max-width:280px}.heritage__portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px;border:1px solid rgba(245,240,228,.12)}.heritage__portrait figcaption{margin-top:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#f5f0e4a6;line-height:1.5}.heritage__timeline{display:flex;flex-direction:column;gap:0;padding:28px;background:#f5f0e40a;border:1px solid rgba(245,240,228,.14);border-radius:3px}.t-row{display:grid;grid-template-columns:80px 1fr;gap:18px;padding:14px 0;border-bottom:1px dashed rgba(245,240,228,.18);align-items:baseline}.t-row:last-child{border-bottom:none}.t-year{font-family:var(--display);font-style:italic;font-size:20px;color:var(--brass);font-weight:500;line-height:1}.t-line{color:#f5f0e4d1;font-size:14px;line-height:1.55}.t-row--now .t-year{color:var(--paper)}.t-row--now .t-line{color:var(--paper);font-weight:500}.generations{background:var(--paper);padding:var(--section-pad) 0}.gen__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gen-card{background:var(--card);border:1px solid var(--rule);padding:28px 28px 30px;border-radius:3px;display:flex;flex-direction:column;gap:10px;position:relative;box-shadow:var(--shadow-soft)}.gen-card__rule{position:absolute;left:28px;top:28px;width:28px;height:2px;background:var(--brass)}.gen-card__label{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-deep);font-weight:700;margin-top:18px}.gen-card__photo{width:100%;aspect-ratio:4/5;background:var(--stone);margin-top:8px;border-radius:2px;overflow:hidden}.gen-card__photo img{width:100%;height:100%;object-fit:cover}.gen-card h3{font-family:var(--display);font-size:24px;font-weight:600;color:var(--ink);margin-top:12px;line-height:1.2}.gen-card__year{font-family:var(--mono);font-size:11px;color:var(--ink-mute);letter-spacing:.06em}.gen-card p{color:var(--ink-soft);font-size:14.5px;line-height:1.65;margin:6px 0 0}.specialism{background:var(--paper-soft);padding:var(--section-pad) 0}.spec__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:56px}.spec-card{background:var(--card);padding:28px 26px;border-top:3px solid var(--oxblood);border-radius:0 0 3px 3px;display:flex;flex-direction:column;gap:12px}.spec-card__num{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--oxblood)}.spec-card h3{font-family:var(--display);font-size:21px;font-weight:500;color:var(--ink);line-height:1.25;margin-top:4px}.spec-card p{color:var(--ink-soft);font-size:14.5px;line-height:1.65;margin:0}.spec__credentials{display:grid;grid-template-columns:auto auto auto 1.5fr;gap:32px;align-items:center;padding:36px;background:var(--card);border:1px solid var(--rule);border-radius:3px;box-shadow:var(--shadow-soft)}.cred-figure{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;margin:0}.cred-figure img{max-height:80px;width:auto;object-fit:contain}.cred-figure figcaption{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.cred-text h3{font-family:var(--display);font-size:22px;font-weight:500;line-height:1.25;margin-top:8px}.cred-text p{margin-top:12px;color:var(--ink-soft);font-size:14.5px;line-height:1.65}.visit{background:var(--paper);padding:var(--section-pad) 0}.visit__inner{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:stretch}.visit-card{background:var(--card);border:1px solid var(--rule);padding:30px 32px 32px;border-radius:3px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-soft)}.visit-card h3{font-family:var(--display);font-size:24px;font-weight:500;color:var(--ink);margin-top:6px;line-height:1.25}.visit-card__address{font-family:var(--display);font-size:19px;line-height:1.4;color:var(--ink);font-style:italic;margin-top:6px;font-weight:500}.visit-card__line{font-size:14.5px;color:var(--ink-soft);margin:0}.visit-card__line strong{color:var(--ink);font-weight:600}.visit-card__line a{color:var(--brass-deep);border-bottom:1px solid var(--rule-deep);transition:color .15s ease}.visit-card__line a:hover{color:var(--oxblood)}.visit-card__line a:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.visit-card__map{margin-top:14px;height:180px;border-radius:2px;overflow:hidden;border:1px solid var(--rule);background:var(--paper-soft)}.visit-card__note{margin-top:14px;padding:14px 16px;background:#6b22260f;border-left:3px solid var(--oxblood);font-size:14px;color:var(--ink-soft);border-radius:0 2px 2px 0}.visit-card__note strong{color:var(--ink)}.hours{display:flex;flex-direction:column;gap:10px;margin-top:8px}.hours-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px dashed var(--rule);gap:16px;flex-wrap:wrap}.hours-row:last-of-type{border-bottom:none}.hours-row__label{font-size:14px;color:var(--ink);font-weight:600}.hours-row__times{font-family:var(--mono);font-size:12px;color:var(--ink-mute);letter-spacing:.04em}.hours-row--alert{background:#6b222614;padding:12px 14px;border-bottom:none;border-radius:2px}.hours-row--alert .hours-row__label{color:var(--oxblood-deep)}.hours-row--alert .hours-row__times{color:var(--oxblood);font-weight:600}.quote{background:var(--paper-soft);padding:var(--section-pad) 0}.quote__inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}.quote h2{font-family:var(--display);font-size:clamp(26px,3.2vw,36px);line-height:1.2;margin-top:10px;font-weight:500}.quote p{font-size:15.5px;color:var(--ink-soft);margin-top:16px;line-height:1.65}.quote__list{margin-top:22px;display:flex;flex-direction:column;gap:8px;list-style:none;padding:0}.quote__list li{position:relative;padding-left:22px;font-size:14.5px;color:var(--ink-soft)}.quote__list li:before{content:"•";position:absolute;left:0;color:var(--brass-deep);font-weight:700}.quote__list a{color:var(--brass-deep);border-bottom:1px solid var(--rule-deep)}.quote__list a:hover{color:var(--oxblood)}.quote__form{background:var(--card);padding:32px 32px 28px;border-radius:3px;border:1px solid var(--rule);box-shadow:var(--shadow-soft)}.quote__form h3{font-family:var(--display);font-size:22px;margin-bottom:22px;font-weight:500}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-row label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:600}.form-row input,.form-row select,.form-row textarea{font-family:var(--body);font-size:14px;padding:11px 12px;border:1px solid var(--paper-deep);border-radius:2px;background:var(--paper);color:var(--ink);width:100%}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid var(--brass);outline-offset:1px}.form-fine{margin-top:14px;font-family:var(--mono);font-size:10.5px;color:var(--ink-mute);text-align:center;line-height:1.5;letter-spacing:.03em}.faq{padding:var(--section-pad) 0}.faq__list{display:flex;flex-direction:column;gap:14px;max-width:880px}.faq details{background:var(--card);border:1px solid var(--rule);border-radius:3px;padding:22px 26px}.faq summary{font-family:var(--display);font-size:19px;font-weight:500;color:var(--ink);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;line-height:1.3}.faq summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--brass-deep);font-weight:600;font-size:24px;transition:transform .2s ease;flex-shrink:0}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{margin-top:14px;color:var(--ink-soft);font-size:14.5px;line-height:1.7}.footer{background:var(--forest-deep);color:#f5f0e4b8;padding:64px 0 0}.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px}.footer .brand--footer,.footer .brand--footer .brand__name{color:var(--paper)}.footer .brand--footer .brand__sub{color:var(--brass-soft)}.footer .brand--footer .brand__mark{color:var(--brass)}.footer h4{font-family:var(--mono);font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--brass-soft);margin:18px 0 14px;text-transform:uppercase}.footer p{color:#f5f0e4b3;font-size:13.5px;line-height:1.65;margin-top:18px}.footer ul{list-style:none;padding:0;margin:0}.footer ul li{font-size:13.5px;padding:4px 0;color:#f5f0e4bf}.footer a{color:#f5f0e4d9;transition:color .15s ease}.footer a:hover{color:var(--brass-soft)}.footer a:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.footer .muted{color:#f5f0e473;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin-left:6px}.footer__base{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid rgba(245,240,228,.12);font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;gap:18px;flex-wrap:wrap}@media(max-width:1024px){.hero__inner{grid-template-columns:1fr}.hero__photo{max-width:100%}.hero__why{grid-template-columns:repeat(2,1fr)}.practice__grid{grid-template-columns:1fr}.heritage__inner,.quote__inner,.visit__inner{grid-template-columns:1fr;gap:36px}.gen__grid{grid-template-columns:1fr;gap:18px}.spec__grid{grid-template-columns:1fr}.spec__credentials{grid-template-columns:1fr 1fr;padding:28px;gap:24px}.cred-text{grid-column:1 / -1}.numbers__row{grid-template-columns:1fr 1fr;gap:28px}.footer__grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.site-header__util{display:none}.site-header__row{grid-template-columns:1fr auto;gap:12px}.site-nav,.site-cta{display:none}.site-burger{display:inline-flex}.brand__name{font-size:22px}.brand__sub{font-size:9px}.hero h1{font-size:38px}.hero__why{grid-template-columns:1fr 1fr;gap:14px}.numbers__row{grid-template-columns:1fr 1fr}.spec__credentials,.footer__grid{grid-template-columns:1fr}.footer__base{flex-direction:column;align-items:flex-start}.hours-row{flex-direction:column;gap:4px}}@media(max-width:480px){.hero h1{font-size:32px}.num strong{font-size:28px}}
