@font-face{font-family:BusnelloSerif;src:url('assets/serif.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:BusnelloSerif;src:url('assets/serif-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:BusnelloSans;src:url('assets/sans.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#142d3e;--copper:#975a3c;--paper:#fff;--mist:#f0f3f4;--muted:#53646e;--rule:#d6dee2;--serif:BusnelloSerif,Georgia,serif;--sans:BusnelloSans,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--copper);outline-offset:6px}img{max-width:100%;height:auto;display:block}p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}em{font-weight:400}.wrap{max-width:1360px;margin-inline:auto;padding-inline:5rem}.skip-link{position:absolute;top:-100px;left:1rem;background:var(--ink);color:white;padding:.6rem 1rem;z-index:10}.skip-link:focus{top:1rem}.site-header{min-height:136px;display:flex;justify-content:space-between;align-items:center;gap:2rem}.brand{width:264px;flex-shrink:0}.site-header nav{display:flex;gap:2.2rem;align-items:center;font-size:1rem}.site-header nav a{padding:.5rem 0}.site-header nav a:hover{color:var(--copper)}.nav-contact{border-bottom:1px solid var(--copper)}.nav-contact span{padding-left:1.2rem}.hero{display:grid;grid-template-columns:1.42fr 1fr;gap:3.8rem;padding-top:1.2rem;padding-bottom:5.5rem;align-items:stretch}.hero-copy{padding-top:2.6rem;padding-bottom:1.5rem}.eyebrow{font-size:.875rem;text-transform:uppercase;letter-spacing:.13em;line-height:1.6}.hero .eyebrow{color:var(--copper);margin-bottom:2rem}.hero h1{font-size:clamp(3.5rem,5.75vw,5.4rem);line-height:1.02;letter-spacing:-.035em}.lead{max-width:29rem;margin-top:2rem;color:var(--muted);font-size:1.125rem;line-height:1.65}.text-link{display:inline-flex;align-items:center;gap:2rem;font-size:1rem;border-bottom:1px solid var(--copper);padding:.4rem 0 .6rem;margin-top:1.8rem}.text-link:hover{color:var(--copper)}.hero-art{background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;padding:2rem 2.2rem;min-height:520px}.hero-art img{width:64%;height:330px;object-fit:contain;opacity:.95}.section{padding-block:5rem}.practice{border-top:1px solid var(--rule)}.section-heading{display:grid;grid-template-columns:1fr 2.2fr;gap:3rem;align-items:start}.section-heading .eyebrow{color:var(--copper);margin-top:.3rem}h2{font-size:clamp(2.5rem,3.5vw,3.5rem);letter-spacing:-.025em}.services{margin-top:3.5rem}.service{display:grid;grid-template-columns:4rem 1fr 15rem;gap:1.5rem;padding-block:2rem;border-top:1px solid var(--rule)}.service-no{font-size:.875rem;color:var(--copper);padding-top:.35rem}.service h3{font-size:2rem;margin-bottom:.8rem}.service p{max-width:39rem;color:var(--muted);line-height:1.65}.service-tag{font-size:.875rem;align-self:center;text-align:right;color:var(--muted)}.about{background:var(--mist)}.about-grid{display:grid;grid-template-columns:1fr 1.18fr;gap:6rem}.about .eyebrow{color:var(--copper);margin-bottom:2rem}.about h2{font-size:clamp(2.6rem,3.8vw,3.75rem)}.about-caption{margin-top:1.5rem;color:var(--muted);font-size:1rem}.about-text{padding-top:.15rem}.about-text p{margin-bottom:1.25rem;color:var(--muted)}.about-text .about-lead{font-family:var(--serif);font-size:1.85rem;line-height:1.3;color:var(--ink);margin-bottom:1.8rem}.about .text-link{margin-top:.5rem}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:center}.contact .eyebrow{color:var(--copper);margin-bottom:1.7rem}.contact h2{font-size:2.7rem}.contact p{color:var(--muted);margin-top:1rem}.email{font-family:var(--serif);font-size:clamp(1.5rem,2.65vw,2.7rem);display:flex;justify-content:space-between;gap:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--copper);overflow-wrap:anywhere}.email:hover{color:var(--copper)}.contact-links p{font-size:1rem}.small-link{display:inline-block;font-size:1rem;margin-top:.4rem;text-decoration:underline;text-underline-offset:.25em}.footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--rule);padding-block:1.7rem;color:var(--muted);font-size:.8125rem}.footer-brand{font-size:1.0625rem;color:var(--ink);font-family:var(--serif)}
@media(min-width:1600px){.hero h1{font-size:5.6rem}}
@media(max-width:1050px){.wrap{padding-inline:2.5rem}.hero{gap:2.5rem;grid-template-columns:1.2fr 1fr}.hero h1{font-size:4.2rem}.hero-art{padding:1.5rem;min-height:510px}.about-grid{gap:3.5rem}.service{grid-template-columns:3rem 1fr 12rem}.section-heading{grid-template-columns:1fr 2.2fr}.contact{gap:2.5rem}.email{font-size:1.8rem}}
@media(max-width:760px){.wrap{padding-inline:1.5rem}.site-header{min-height:110px;gap:1.2rem}.brand{width:196px}.site-header nav{gap:1rem;font-size:.875rem}.site-header nav a:first-child{display:none}.nav-contact span{padding-left:.35rem}.hero{grid-template-columns:1fr;padding-top:.5rem;gap:2rem;padding-bottom:3.5rem}.hero-copy{padding-top:1.5rem;padding-bottom:.25rem}.hero .eyebrow{font-size:.75rem;letter-spacing:.11em;margin-bottom:1.5rem}.hero h1{font-size:clamp(2.8rem,10vw,5rem)}.lead{max-width:31rem;font-size:1.0625rem;margin-top:1.5rem}.hero-art{min-height:300px;padding:1.5rem 1.8rem}.hero-art img{width:80%;height:240px}.section{padding-block:3.5rem}.section-heading{grid-template-columns:1fr;gap:1.2rem}.section-heading h2{font-size:2.5rem}.services{margin-top:2.25rem}.service{grid-template-columns:2rem 1fr;gap:.8rem;padding-block:1.5rem}.service h3{font-size:1.8rem}.service-tag{display:none}.service p{font-size:1rem}.about-grid{grid-template-columns:1fr;gap:2.3rem}.about h2{font-size:clamp(2.25rem,7vw,3rem)}.about .eyebrow{margin-bottom:1.4rem}.about-caption{margin-top:1rem}.about-text .about-lead{font-size:1.8rem}.contact{grid-template-columns:1fr;gap:2rem}.contact h2{font-size:2.5rem}.email{font-size:clamp(1.5rem,6vw,2.1rem)}.footer{align-items:flex-start;flex-direction:column;gap:.5rem;font-size:.8125rem}.footer p{max-width:100%}}
@media(max-width:375px){.wrap{padding-inline:1.1rem}.brand{width:174px}.site-header nav a:nth-child(2){display:none}.hero h1{font-size:2.5rem}.hero-art{padding:1.4rem}.hero-art img{height:210px}.hero-art{min-height:270px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header nav,.hero-art,.skip-link{display:none}.wrap{max-width:none;padding-inline:0}.hero,.about-grid,.contact,.section-heading{display:block}.hero,.section{padding-block:1.5rem}.hero h1{font-size:38pt}.about{background:white}.service{break-inside:avoid}.about-grid>div+div{margin-top:1.5rem}.footer{font-size:9pt}body{font-size:11pt}.eyebrow{font-size:9pt}}

.practice .section-heading{grid-template-columns:8rem 1fr;gap:1.5rem}.practice .section-heading h2{font-size:clamp(1.95rem,2.5vw,2.25rem);white-space:nowrap}
@media(max-width:1050px){.practice .section-heading{grid-template-columns:1fr 2.2fr;gap:2rem}.practice .section-heading h2{font-size:clamp(2.25rem,4vw,3rem);white-space:normal}}
@media(max-width:760px){.practice .section-heading{grid-template-columns:1fr;gap:1.2rem}.practice .section-heading h2{font-size:2.5rem;white-space:normal}}

.header-actions{display:flex;align-items:center;gap:2rem;min-width:0}.language-options{display:flex;align-items:center;gap:.75rem;border-left:1px solid var(--rule);padding-left:1rem;color:var(--muted);font-size:.875rem;white-space:nowrap}.language-option{display:inline-flex;align-items:center;gap:.25rem;opacity:.75;cursor:default}
.hero-art{aspect-ratio:1;min-height:0;align-self:center}.hero-art img{height:100%;max-height:330px}
.contact{grid-template-areas:"label label" "heading email" "intro meta";column-gap:4rem;row-gap:0;align-items:baseline}.contact>.eyebrow{grid-area:label;margin-top:0}.contact h2{grid-area:heading}.contact .email{grid-area:email;align-self:baseline}.contact-intro{grid-area:intro;max-width:30rem}.contact-links{grid-area:meta}
@media(max-width:760px){.header-actions{gap:1rem}.language-options{gap:.55rem;padding-left:.75rem;font-size:.75rem}.contact{grid-template-areas:"label" "heading" "intro" "email" "meta"}.contact .email{margin-top:1.5rem}.contact-links{margin-top:.5rem}}
@media(max-width:600px){.site-header{flex-wrap:wrap;row-gap:.5rem;padding-top:1rem;padding-bottom:1rem;min-height:0}.header-actions{width:100%;justify-content:space-between}.site-header nav{gap:.75rem;font-size:.8125rem}.site-header nav a:first-child{display:inline-block}.language-options{border-left:0;padding-left:0}}
@media(max-width:375px){.site-header nav a:nth-child(2){display:inline-block}}
@media print{.language-options{display:none}}
.service-no{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:760px){.service{grid-template-columns:2.8rem 1fr}}
.language-options a.language-option{cursor:pointer}
.hero-art.hero-art-portrait{padding:0;background:transparent;overflow:hidden}
.hero-art.hero-art-portrait img{width:100%;height:100%;max-height:none;object-fit:cover;opacity:1}

.about-portrait-mobile{display:none}
@media screen and (min-width:761px){
  .hero-art.hero-art-portrait{display:none}
  .about-portrait-mobile{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;margin-top:2rem}
}
@media screen and (max-width:760px){
  .hero-art.hero-art-portrait{display:none}
  .about-portrait-mobile{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;margin-top:2rem}
}
