@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{color-scheme:light;--paper:#f7f8f5;--ink:#182321;--muted:#526059;--copper:#994a2e;--line:#cdd4cc;--surface:#edf0e9;--white:#ffffff;--input-border:#78877c;--button-hover-text:#ffffff;--accent:#136950;--accent-hover:#0b4d3b;--accent-contrast:#ffffff;--accent-soft:#e7f2ec;--blue:#355ca0;--blue-soft:#edf2fc;--amber:#825416;--amber-soft:#f8eedf;--violet:#6d4f98;--violet-soft:#f1edf9;--body:Manrope,Arial,sans-serif;--display:var(--body);--gutter:clamp(1.25rem,4vw,3.5rem)}
:root[data-theme='dark']{color-scheme:dark;--paper:#151d1a;--ink:#eff3ec;--muted:#b3bfb7;--copper:#e3a283;--line:#46544b;--surface:#202d25;--white:#19241e;--input-border:#7f9184;--button-hover-text:#151d1a;--accent:#96dbc5;--accent-hover:#b5ebda;--accent-contrast:#132721;--accent-soft:#1e3430;--blue:#adc7ff;--blue-soft:#243147;--amber:#e2c086;--amber-soft:#382e20;--violet:#c9b8ed;--violet-soft:#302a40}
@media(prefers-color-scheme:dark){:root:not([data-theme='light']){color-scheme:dark;--paper:#151d1a;--ink:#eff3ec;--muted:#b3bfb7;--copper:#e3a283;--line:#46544b;--surface:#202d25;--white:#19241e;--input-border:#7f9184;--button-hover-text:#151d1a;--accent:#96dbc5;--accent-hover:#b5ebda;--accent-contrast:#132721;--accent-soft:#1e3430;--blue:#adc7ff;--blue-soft:#243147;--amber:#e2c086;--amber-soft:#382e20;--violet:#c9b8ed;--violet-soft:#302a40}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}
::selection{background:var(--copper);color:var(--button-hover-text)}
a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
button,input,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.18;font-weight:650;text-wrap:balance;overflow-wrap:break-word}
h1,h2{letter-spacing:-.045em}
h1 em,h2 em{font-style:normal}
address{font-style:normal}
strong{font-weight:650}
ul{padding-left:1.3em}
:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
[tabindex='-1']:focus{outline:none}
.site-shell{max-width:1240px;padding-inline:var(--gutter);margin-inline:auto}
.skip-link{position:absolute;top:1rem;left:1rem;z-index:10;padding:.75rem 1rem;background:var(--ink);color:var(--paper);transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}
.site-header{display:flex;align-items:center;gap:2.25rem;min-height:100px;padding-block:1.3rem;border-bottom:1px solid var(--line)}
.wordmark{display:inline-flex;flex-direction:column;flex-shrink:0;text-decoration:none;line-height:1.1}
.wordmark-name{font-size:1.6rem;font-weight:750;letter-spacing:-.055em}
.wordmark-dot{color:var(--copper)}
.wordmark-detail{margin-top:.35rem;font-size:.57rem;font-weight:650;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.main-navigation{margin-left:auto}
.main-navigation ul{display:flex;align-items:center;gap:1.7rem;list-style:none;margin:0;padding:0}
.main-navigation a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;font-size:.86rem;font-weight:600;text-decoration:none}
.main-navigation a[aria-current='page']{text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:.55rem}
.main-navigation a:hover{text-decoration:underline}
.nav-arrow{display:none}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.5rem .7rem;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:5px;font-size:.76rem;font-weight:600;white-space:nowrap}
.theme-toggle:hover{background:var(--surface);border-color:var(--muted)}
.header-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.language-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.5rem .7rem;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:5px;font-size:.76rem;font-weight:600;white-space:nowrap;text-decoration:none}
.language-toggle:hover{background:var(--surface);border-color:var(--muted);text-decoration:none}
.language-label-short{display:none}
.theme-icon{height:1rem;width:1rem;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}
.eyebrow{display:block;font-size:.69rem;line-height:1.6;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.status-dot{display:none}
.home-hero{padding-block:6rem 5rem}
.hero-copy{max-width:880px}
.hero-copy>.eyebrow{margin-bottom:1.7rem}
.home-hero h1{font-size:clamp(2.7rem,5.6vw,4.7rem);max-width:18ch;line-height:1.08;font-weight:700;letter-spacing:-.055em}
.hero-introduction{margin-top:1.6rem;max-width:640px}
.hero-introduction>p{font-size:1.12rem;line-height:1.8;color:var(--muted)}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.4rem;margin-top:1.8rem}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:48px;padding:.75rem 1.15rem;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:var(--paper);font-size:.86rem;font-weight:650;line-height:1.5;text-decoration:none;transition:background-color .15s,border-color .15s}
.button span{font-size:1.15rem;line-height:1}
.button:hover{background:var(--copper);border-color:var(--copper);color:var(--button-hover-text);text-decoration:none}
.button[disabled]{cursor:not-allowed;opacity:.6}
.text-link{display:inline-flex;align-items:center;gap:1rem;min-height:44px;font-size:.87rem;font-weight:600;text-decoration:none}
.text-link span{color:var(--copper)}
.text-link:hover{text-decoration:underline}
.areas-section{padding-block:3.6rem 4rem;border-top:1px solid var(--line)}
.section-heading{display:flex;align-items:start;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.section-heading>.eyebrow{padding-top:.55rem}
.section-heading h2{font-size:2rem}
.section-heading p:not(.eyebrow){max-width:38rem;color:var(--muted);margin-top:1rem}
.area-list{border-top:1px solid var(--line)}
.area-row{display:grid;grid-template-columns:2rem minmax(0,1.15fr) minmax(0,1.1fr) 1.25rem;gap:1.5rem;align-items:center;padding-block:1.6rem;border-bottom:1px solid var(--line);text-decoration:none}
.area-row:hover{background:var(--surface)}
.area-number{font-size:.7rem;font-weight:650;color:var(--muted)}
.area-row h3{font-size:1.12rem;line-height:1.45;letter-spacing:-.02em}
.area-row p{font-size:.89rem;line-height:1.7;color:var(--muted)}
.area-arrow{justify-self:end;font-size:1.2rem;color:var(--copper)}
.contact-band{display:grid;grid-template-columns:1fr auto;gap:1rem 3rem;align-items:center;padding-block:3rem 3.5rem;border-top:1px solid var(--line)}
.contact-band>.eyebrow{grid-column:1/-1}
.contact-band h2{font-size:clamp(1.8rem,3vw,2.5rem);max-width:24ch}
.contact-band p:not(.eyebrow){color:var(--muted);font-size:.96rem;margin-top:.85rem}
.contact-band>.button{align-self:center}
.page-intro{padding-block:4.5rem 3rem}
.page-intro>.eyebrow{margin-bottom:1.3rem}
.page-intro h1{font-size:clamp(2.4rem,4.2vw,3.65rem);max-width:23ch;line-height:1.12}
.page-lead{max-width:700px;color:var(--muted);font-size:1.05rem;line-height:1.85;margin-top:1.5rem}
.area-index{display:flex;flex-wrap:wrap;gap:.6rem;padding-block:0 2.5rem}
.area-index a{display:inline-flex;align-items:center;gap:.8rem;min-height:44px;padding:.5rem .8rem;border:1px solid var(--line);border-radius:4px;font-size:.78rem;text-decoration:none}
.area-index a:hover{background:var(--surface)}
.area-index a>span:first-child{display:none}
.area-index a>span:last-child{color:var(--copper)}
.service-sections{margin-bottom:1rem}
.service-detail{display:grid;grid-template-columns:2rem minmax(0,1fr) minmax(0,1.2fr);gap:2rem;padding-block:3rem;border-top:1px solid var(--line);scroll-margin-top:2rem}
.service-number{font-size:.8rem;color:var(--muted);padding-top:.2rem}
.service-heading .eyebrow{display:none}
.service-heading h2{font-size:1.75rem;line-height:1.25;max-width:20ch}
.service-copy>p{font-size:.98rem;color:var(--muted)}
.service-examples{padding-left:1.2rem;margin:1.3rem 0;color:var(--muted);font-size:.86rem}
.service-examples li{margin-block:.35rem}
.service-examples li::marker{color:var(--copper)}
.service-copy .text-link{font-size:.81rem}
.about-spread{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;padding-block:3rem;border-top:1px solid var(--line)}
.about-statement>.eyebrow{margin-bottom:1.2rem}
.about-statement h2{font-size:2rem;max-width:17ch}
.about-copy p{color:var(--muted);font-size:.98rem;margin-bottom:1.2rem}
.company-record{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:2.5rem;margin-block:0 3rem}
.company-record h2{font-size:1.9rem;margin-top:1rem}
.record-list{margin:0;min-width:0}
.record-list>div{display:grid;grid-template-columns:1fr 1.2fr;gap:1rem;padding-block:.85rem;border-bottom:1px solid var(--line);font-size:.82rem}
.record-list>div:first-child{padding-top:0}
.record-list>div:last-child{border-bottom:0}
.record-list dt{color:var(--muted)}
.record-list dd{margin:0;overflow-wrap:anywhere}
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5rem;padding-block:2.5rem 4rem;border-top:1px solid var(--line)}
.contact-details>.eyebrow{margin-bottom:1rem}
.contact-email{display:block;font-size:clamp(1.3rem,2.2vw,1.6rem);line-height:1.45;letter-spacing:-.035em;font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.contact-email-break{display:none}
.contact-email>span{display:inline-block;color:var(--copper);margin-left:.5rem}
.contact-email:hover{text-decoration:underline}
.contact-phone{display:inline-flex;align-items:center;gap:.8rem;min-height:44px;margin-top:.45rem;font-size:1.15rem;font-weight:600;text-decoration:none}
.contact-phone span{color:var(--copper)}
.contact-phone:hover{text-decoration:underline}
.contact-details>p:not(.eyebrow){font-size:.9rem;color:var(--muted);margin-top:1rem;max-width:26rem}
.contact-address{display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.contact-address strong{color:var(--ink)}
.legal-layout{display:grid;grid-template-columns:1fr 2fr;gap:4rem;padding-block:2.5rem 4rem;border-top:1px solid var(--line)}
.legal-aside{font-size:.85rem;overflow-wrap:anywhere}
.legal-aside .eyebrow{margin-bottom:1rem}
.legal-aside p:not(.eyebrow){margin-bottom:1rem}
.prose{max-width:700px}
.prose section+section{margin-top:2.2rem}
.prose h2{font-size:1.5rem;margin-bottom:1rem;letter-spacing:-.025em}
.prose p{font-size:.95rem;color:var(--muted);line-height:1.9}
.prose p+p{margin-top:1rem}
.not-found{padding-block:4rem;max-width:800px}
.not-found-number{font-size:5rem;font-weight:700;letter-spacing:-.06em;color:var(--muted);line-height:1;margin-block:1.5rem}
.not-found-number span{color:var(--copper)}
.not-found h1{font-size:2.5rem}
.not-found>p:not(.eyebrow){max-width:36rem;margin-top:1rem;color:var(--muted)}
.site-footer{padding-block:2.5rem 1rem;border-top:1px solid var(--line)}
.footer-top{display:flex;justify-content:space-between;gap:2rem;padding-bottom:2rem}
.wordmark-footer .wordmark-name{font-size:1.45rem}
.footer-descriptor{font-size:.8rem;color:var(--muted);margin-top:.7rem}
.footer-contact>.eyebrow{margin-bottom:.4rem}
.footer-email{display:inline-flex;align-items:center;gap:1rem;min-height:44px;font-size:1rem;text-decoration:none}
.footer-email span{color:var(--copper)}
.footer-email:hover{text-decoration:underline}
.footer-phone{display:flex;align-items:center;min-height:44px;font-size:.95rem;text-decoration:none}
.footer-phone:hover{text-decoration:underline}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;padding-top:1.3rem;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}
.footer-legal{display:flex;flex-wrap:wrap;gap:.25rem 1rem;max-width:48rem}
.footer-links{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}
.footer-links a{display:inline-flex;align-items:start;min-height:44px}
@media(max-width:950px){.site-header{gap:1.3rem}.main-navigation ul{gap:1.1rem}.main-navigation a{font-size:.8rem}.wordmark-name{font-size:1.45rem}.theme-toggle{font-size:.72rem;padding:.5rem}.service-detail{gap:1.3rem;grid-template-columns:1.5rem minmax(0,1fr) minmax(0,1.15fr)}.contact-layout{gap:2.5rem}.company-record,.about-spread,.legal-layout{gap:2.5rem}.record-list>div{grid-template-columns:1fr;gap:.25rem}.area-row{gap:1rem}}
@media(max-width:720px){.site-header{flex-wrap:wrap;justify-content:space-between;gap:.75rem 1rem;padding-block:1.1rem .5rem}.wordmark{order:1}.theme-toggle{order:2}.main-navigation{order:3;width:100%;margin:0}.main-navigation ul{justify-content:space-between;gap:.6rem}.main-navigation a{font-size:.83rem}.home-hero{padding-block:3.8rem 3.2rem}.home-hero h1{font-size:clamp(2.55rem,8vw,3.7rem);max-width:19ch}.hero-introduction>p{font-size:1rem}.section-heading{display:block}.section-heading>.eyebrow{padding:0;margin-bottom:1rem}.areas-section{padding-block:2.5rem}.section-heading h2{font-size:1.65rem}.area-row{grid-template-columns:1.4rem minmax(0,1fr) 1rem;gap:.4rem 1rem;padding-block:1.4rem}.area-row h3{grid-column:2;grid-row:1;font-size:1.05rem}.area-row p{grid-column:2;grid-row:2;font-size:.88rem}.area-number{grid-column:1;grid-row:1;align-self:start;padding-top:.2rem}.area-arrow{grid-column:3;grid-row:1/3}.contact-band{grid-template-columns:1fr;gap:1rem;padding-block:2.5rem}.contact-band>.button{justify-self:start;margin-top:.5rem}.contact-band h2{font-size:1.8rem}.page-intro{padding-block:3rem 2.5rem}.page-intro h1{font-size:clamp(2.25rem,7vw,3rem)}.page-lead{font-size:1rem;margin-top:1.2rem}.area-index{gap:.5rem;padding-bottom:2rem}.area-index a{font-size:.74rem}.service-detail{grid-template-columns:1.4rem minmax(0,1fr);gap:1rem;padding-block:2.3rem}.service-number{grid-column:1;grid-row:1}.service-heading{grid-column:2;grid-row:1}.service-heading h2{font-size:1.5rem;max-width:none}.service-copy{grid-column:2}.service-copy>p{font-size:.94rem}.about-spread,.company-record,.contact-layout,.legal-layout{grid-template-columns:1fr;gap:2rem}.about-spread{padding-block:2.5rem}.about-statement h2{font-size:1.8rem;max-width:none}.company-record{padding:1.5rem;margin-bottom:2.5rem}.company-record h2{font-size:1.6rem}.record-list>div{grid-template-columns:1fr 1.25fr;gap:1rem}.contact-layout,.legal-layout{padding-block:2rem 3rem}.contact-email{font-size:1.4rem}.contact-address{gap:.5rem}.prose p{font-size:.94rem}.footer-top{flex-direction:column;gap:1.6rem}.footer-bottom{font-size:.7rem}.footer-legal{gap:.4rem .85rem}.footer-legal address{width:100%}.footer-links a{align-items:center}}
@media(max-width:360px){:root{--gutter:1rem}.wordmark-name{font-size:1.2rem}.theme-toggle{font-size:.68rem;gap:.35rem;padding:.5rem}.main-navigation a{font-size:.74rem}.home-hero h1{font-size:2.5rem}.hero-actions{gap:1rem}.button,.text-link{font-size:.81rem}.record-list>div{grid-template-columns:1fr;gap:.25rem}.contact-email{font-size:1.2rem}.footer-email{font-size:.88rem}.area-row{column-gap:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{:root,:root[data-theme='dark'],:root:not([data-theme='light']){--paper:#ffffff;--ink:#000000;--muted:#333333;--copper:#333333;--line:#cccccc;--surface:#ffffff;--white:#ffffff;color-scheme:light}.site-header,.site-footer,.hero-actions,.area-index,.contact-band,.contact-form,.skip-link{display:none}body{background:#ffffff;color:#000000;font-size:11pt}.site-shell{padding:0;max-width:none}.home-hero,.page-intro,.areas-section,.service-detail,.about-spread,.company-record,.legal-layout,.contact-layout{padding-block:1rem;break-inside:avoid}.home-hero h1,.page-intro h1{font-size:30pt}.area-row{break-inside:avoid}}
