@font-face{font-family:Onest;src:url('/assets/fonts/onest-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Onest;src:url('/assets/fonts/onest-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Onest;src:url('/assets/fonts/onest-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
/* Bureau editorial theme: consistent typography across the entire site */
:root{--ink:#302e2b;--text:#575550;--muted:#706e69;--line:#deddd9;--wash:#f6f6f3;--paper:#fff;--accent:#603d29;--serif:Onest,Arial,sans-serif}
body{background:#fff;font-family:Onest,Arial,sans-serif;font-weight:400;color:var(--ink);font-size:16px;line-height:1.65}
.container{width:min(1240px,calc(100% - 80px))}
button,input,textarea{font-family:inherit}
h1,h2,h3,h4{font-synthesis:none}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.header{min-height:110px;border:0;border-bottom:1px solid var(--line);gap:32px}
.header .brand img{width:155px;height:83px;max-height:83px}
.header nav{font-size:14px;font-weight:400;gap:28px}
.header nav a{border:0;position:relative}
.header nav a:after{content:'';position:absolute;height:1px;background:var(--accent);left:0;right:0;bottom:6px;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.header nav a:hover:after,.header nav a[aria-current]:after{transform:scaleX(1)}
.header-phone{font-size:14px;font-weight:600;color:var(--accent);border:0;letter-spacing:0}
.button,.opening .button,.service-preparation .button,.service-aside .button,.contact-band .button,.home-contact .button,.visit-heading .button{display:inline-flex;align-items:center;justify-content:center;gap:0;background:var(--accent);border:1px solid var(--accent);border-radius:28px;color:#fff;box-shadow:none;font-size:14px;font-weight:600;padding:15px 27px;min-height:50px;line-height:1.4;transition:background .2s,transform .2s}
.button:hover,.opening .button:hover,.service-preparation .button:hover,.service-aside .button:hover,.contact-band .button:hover,.home-contact .button:hover{background:#452d20;color:#fff;border-color:#452d20;transform:translateY(-1px)}
.button.secondary,.home-contact .button.secondary{background:transparent;border-color:#b3a294;color:var(--accent)}
.button.secondary:hover{background:#f3f1ee}
.opening{display:grid;grid-template-columns:1.55fr 1fr;align-items:center;gap:72px;width:min(1240px,calc(100% - 80px));margin:0 auto;padding:76px 0 82px;border:0;border-radius:0;box-shadow:none;background:#fff;text-align:left}
.opening h1{font-family:var(--serif);font-size:58px;font-weight:500;line-height:1.15;letter-spacing:-.04em;max-width:none;margin:0;color:var(--ink)}
.opening h1 span{color:var(--accent)}
.opening-intro{max-width:360px;padding-top:6px}
.opening p{font-size:18px;font-weight:400;line-height:1.7;color:var(--text);margin:0 0 25px;max-width:none}
.bureau-brief{display:grid;grid-template-columns:1fr 2fr;gap:65px;background:transparent;border:0;border-radius:0;padding:70px 0;margin-block:0}
.bureau-brief h2,.home-contact h2,.bureau-detail h2,.team-compact>h2,.visit-heading h2{font-family:var(--serif);font-weight:500;font-size:32px;line-height:1.25;letter-spacing:-.03em;color:var(--ink)}
.bureau-brief>div>.text-link{margin-top:20px}
.bureau-evidence{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.bureau-evidence>div{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.bureau-evidence strong{font-family:var(--serif);font-size:35px;font-weight:500;color:var(--accent);line-height:1.3;letter-spacing:-.03em}
.bureau-evidence p{font-size:14px;line-height:1.75;margin:16px 0 0;color:var(--text)}
.home-contact{border:0;border-top:1px solid var(--line);border-radius:0;padding:38px 0 55px;margin:0;gap:70px;background:#fff;box-shadow:none}
.home-contact h2{margin-bottom:22px}
.home-contact .contact-number{font-size:26px;font-weight:400;letter-spacing:-.02em;color:var(--accent)}
.home-contact .contact-mail{font-size:15px;color:var(--text)}
.home-address{border-left:1px solid var(--line);padding-left:42px}
.home-address p{font-size:15px!important;color:var(--text)!important}
.text-link,.prose a,.reading-end a{color:var(--accent);border-color:#b7a496;font-weight:400;text-underline-offset:5px}
.breadcrumb{font-size:12px;color:var(--muted);padding:27px 0 0;gap:12px}
.page-head,.breadcrumb+.page-head{border:0;padding:51px 0 43px}
.breadcrumb+.page-head{padding-top:29px}
.page-head h1{font-family:var(--serif);font-size:52px;font-weight:500;line-height:1.17;letter-spacing:-.035em;max-width:960px;color:var(--ink)}
.page-head .lead{font-size:18px;line-height:1.7;max-width:750px;margin-top:22px;color:var(--text)}
.focused-service{grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:75px;padding:10px 0 55px}
.focused-service h2,.service-aside h2,.request-steps h2,.service-row h2,.prose h2,.faq>h2,.contact-band h2{font-family:var(--serif);font-size:29px;line-height:1.3;font-weight:500;letter-spacing:-.025em;color:var(--ink)}
.service-questions{padding-top:21px;border-top:1px solid var(--line)}
.service-scope{color:var(--muted);font-size:14px;margin-bottom:15px}
.service-questions li{position:relative;padding:15px 0 15px 22px;color:var(--text);font-size:16px;line-height:1.75;border:0}
.service-questions li:before{content:'';position:absolute;left:0;top:27px;width:7px;height:1px;background:#a28c7d}
.service-preparation,.service-aside,.address-card{background:var(--wash);border:0;border-radius:18px;padding:29px 30px;box-shadow:none}
.service-preparation h2{font-family:var(--serif);font-size:27px;font-weight:500;margin-bottom:16px}
.service-preparation p,.service-aside p{font-size:15px;line-height:1.75;color:var(--text)}
.service-price{border-top:1px solid var(--line);padding-top:24px;margin-top:25px}
.service-price h3{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;letter-spacing:0}
.service-preparation .button{width:100%;margin-top:24px}
.related-links,.reference-links{border-color:var(--line);gap:14px 28px;padding:25px 0 30px}
.related-links h2,.reference-links h2{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;letter-spacing:0}
.related-links a,.reference-links a{font-size:14px;color:var(--accent);text-decoration-color:#c5b7ac}
.catalog{padding-top:12px;padding-bottom:55px}
.catalog .expertise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.catalog .expertise-card{padding:27px;min-height:175px;border:1px solid var(--line);border-radius:16px;background:#fff;justify-content:flex-start;box-shadow:none}
.catalog .expertise-card h3{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.3;letter-spacing:-.02em;margin-bottom:13px}
.catalog .expertise-card p{font-size:14px;color:var(--muted);line-height:1.7}
.catalog .expertise-card:hover{background:var(--wash);border-color:#baa697}
.filter{font-weight:400;font-size:13px;border-color:var(--line);color:var(--text);min-height:42px}
.filter.active{background:var(--accent);border-color:var(--accent);color:#fff}
.search{border-radius:26px;border-color:var(--line);min-height:54px}
.search kbd{display:none}
.result-count{font-size:13px}
.request-layout{grid-template-columns:minmax(0,1fr) 340px;gap:90px;padding-bottom:55px}
.request-steps li{padding-bottom:25px;margin-bottom:25px}
.request-steps li:before{color:var(--accent);font-family:var(--serif);font-size:20px;top:1px}
.request-steps h2{font-size:27px;margin-bottom:13px}
.request-steps p{font-size:16px;color:var(--text);line-height:1.8}
.service-row h2{font-size:26px}
.bureau-detail{gap:65px}
.bureau-detail h2{font-size:29px}
.team-line h3{font-family:inherit;font-size:18px;font-weight:600;line-height:1.5;letter-spacing:0}
.team-line p{color:var(--text);font-size:15px}
.contacts-grid{grid-template-columns:1.45fr 1fr;gap:90px}
.big-phone{font-family:var(--serif);font-size:42px;font-weight:500;letter-spacing:-.025em;color:var(--accent)}
.contact-email{font-size:18px;color:var(--text)}
.contact-secondary h2{font-family:inherit;font-size:15px;font-weight:600;letter-spacing:0}
.address-card h2{font-family:var(--serif);font-size:32px;font-weight:500;line-height:1.3;letter-spacing:-.025em}
.visit-directions h3{font-family:inherit;font-size:17px;font-weight:600;letter-spacing:0}
.visit-directions p{font-size:15px;line-height:1.8;color:var(--text)}
.article-layout{grid-template-columns:minmax(0,740px) minmax(240px,1fr);gap:90px}
.prose{font-size:17px;line-height:1.85;color:var(--text)}
.prose h3,.prose h4{font-family:inherit;font-size:20px;font-weight:600;line-height:1.5;letter-spacing:0}
.prose strong{font-weight:600}
.prose blockquote{background:var(--wash);border-color:#b7a496;border-radius:0}
.publication-row h2{font-family:var(--serif);font-weight:500;font-size:27px;letter-spacing:-.02em;line-height:1.35}
.contact-band{background:var(--wash);color:var(--ink);padding:34px 38px;border-radius:18px;gap:35px;margin:20px auto 55px}
.contact-band h2{font-size:30px}
.contact-band p{font-size:15px;color:var(--text);line-height:1.75;margin-top:13px}
.footer-grid{gap:65px;grid-template-columns:1.3fr .8fr 1fr}
.footer-grid .brand img{width:155px;height:83px}
.footer-grid .eyebrow{font-family:inherit;font-size:14px;font-weight:600;color:var(--ink);letter-spacing:0;text-transform:none}
.footer-grid p,.footer-grid>div>a:not(.brand){font-size:13px;color:var(--text)}
.footer-bottom{font-size:11px;color:var(--muted)}
@media(max-width:1100px){.header nav{gap:19px;font-size:13px}.opening{gap:40px;grid-template-columns:1.5fr 1fr}.opening h1{font-size:50px}.opening p{font-size:17px}.focused-service,.request-layout,.article-layout{gap:45px}.catalog .expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:950px){.header{min-height:92px;grid-template-columns:1fr auto auto;gap:18px}.header .brand img{width:140px;height:73px}.header-phone{font-size:14px}.header nav{top:91px;border:1px solid var(--line);box-shadow:0 8px 20px #302e2b08}.header nav a{font-size:16px}.header nav a:after{display:none}.menu-toggle{background:#fff;border-color:var(--line);color:var(--accent)}.opening{padding:52px 0 57px;gap:30px}.opening h1{font-size:43px}.opening p{font-size:16px}.bureau-brief{grid-template-columns:1fr;gap:30px;padding-block:50px}.bureau-evidence{gap:45px}.focused-service{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:32px}.request-layout{grid-template-columns:minmax(0,1fr) 285px;gap:32px}.contacts-grid{gap:40px}.big-phone{font-size:33px}}
@media(max-width:760px){.container,.opening{width:calc(100% - 36px)}.header{min-height:85px}.header nav{top:84px}.header .brand img{width:120px;height:67px}.header-phone{font-size:12px}.opening{display:block;padding:42px 5px 45px}.opening h1{font-size:42px;line-height:1.16;letter-spacing:-.045em}.opening-intro{max-width:430px;padding:0;margin-top:24px}.opening p{font-size:16px;line-height:1.75;margin-bottom:23px;max-width:360px}.opening .button{font-size:14px;min-height:49px}.bureau-brief{padding:40px 5px}.bureau-brief h2,.home-contact h2{font-size:29px}.bureau-evidence{gap:28px}.bureau-evidence strong{font-size:30px}.bureau-evidence p{font-size:14px}.home-contact{padding:30px 5px 40px;grid-template-columns:1fr;gap:30px}.home-address{padding:0;border:0}.home-contact .contact-number{font-size:26px}.page-head,.breadcrumb+.page-head{padding:32px 0}.page-head h1{font-size:37px;line-height:1.2;letter-spacing:-.035em;overflow-wrap:break-word}.page-head .lead{font-size:16px;line-height:1.75;margin-top:19px}.breadcrumb{font-size:11px;padding-top:23px}.focused-service,.request-layout,.article-layout,.contacts-grid{grid-template-columns:1fr;gap:29px}.focused-service{padding-top:0;padding-bottom:35px}.focused-service h2,.request-steps h2{font-size:26px}.service-questions li{font-size:15px;line-height:1.8}.service-preparation,.service-aside,.address-card{padding:25px;border-radius:16px}.service-preparation h2{font-size:26px}.related-links,.reference-links{align-items:flex-start;flex-direction:column;gap:15px}.catalog .expertise-grid{grid-template-columns:1fr}.catalog .expertise-card{min-height:0;padding:24px}.catalog .expertise-card h3{font-size:25px}.filters{gap:8px}.filter{font-size:12px;padding:10px 14px}.request-steps li{padding-left:38px}.request-layout .service-aside{position:static}.bureau-detail{grid-template-columns:1fr;gap:30px}.bureau-detail h2,.team-compact>h2,.visit-heading h2{font-size:28px}.team-line h3{font-size:17px}.contacts-grid{gap:32px}.big-phone{font-size:31px}.contact-email{font-size:16px}.address-card h2{font-size:30px}.visit-heading .button{font-size:13px;padding-inline:20px}.prose{font-size:16px}.prose h2{font-size:27px}.publication-row h2{font-size:24px}.contact-band{padding:26px;display:block;margin-bottom:35px}.contact-band h2{font-size:28px}.contact-band .button{margin-top:22px}.footer-grid{gap:30px}.footer-grid .brand img{width:145px;height:75px}}
@media(max-width:400px){.header{gap:7px}.header .brand img{width:103px}.header-phone{font-size:11px}.opening h1{font-size:37px}.opening{padding-inline:0}.page-head h1{font-size:34px}.bureau-evidence{grid-template-columns:1fr}.big-phone{font-size:28px}}
@media(prefers-reduced-motion:reduce){.button:hover,.direction-item:hover{transform:none!important}}

@media(max-width:360px){.opening h1{font-size:34px}.page-head h1{font-size:30px}.header-phone{font-size:10px}.header .brand img{width:96px}.big-phone{font-size:26px}}

/* Shared responsive layout for the selected design */
:root{--ink:#302b27;--text:#625c56;--muted:#706b66;--accent:#71492e;--wash:#f5f5f3;--line:#e7e5e2}
.container{width:calc(100% - 80px);max-width:1200px;margin-left:auto;margin-right:auto}
main{min-width:0}section,article,aside,nav,.footer-grid>div{min-width:0}
.header{display:flex;min-height:112px;gap:30px}.header .brand img{width:143px;height:83px}.header nav{gap:24px;font-size:13px}.header-phone{font-size:14px;font-weight:500;color:var(--ink)}
.button,.opening .button,.service-preparation .button,.contact-band .button,.home-contact .button,.visit-heading .button{border-radius:18px;font-weight:500}
.opening{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:72px 0 68px}
.opening .hero-copy{padding:0;min-width:0}
.opening h1{font-family:Onest,Arial,sans-serif;font-size:62px;line-height:1.12;font-weight:500;letter-spacing:-.045em;margin:0}
.opening h1 span{color:#7a5338}
.opening p{font-size:18px;line-height:1.65;margin:28px 0 0;color:#706b66}
.hero-action{flex-shrink:0;padding-bottom:8px}.opening .button{min-height:55px;padding:16px 27px}
.home-contact{margin:0 auto;padding:38px 0 55px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.home-contact h2{font-size:29px}.home-contact .contact-number{font-weight:500}
.bureau-brief{padding:44px 0 48px;gap:45px;border-top:0;grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.bureau-evidence{gap:40px;grid-template-columns:repeat(2,minmax(0,1fr))}
.bureau-brief h2{font-size:28px}.bureau-evidence strong{font-size:29px}.bureau-evidence p{font-size:14px;margin-top:15px}
.page-head h1{font-size:46px;letter-spacing:-.035em;font-weight:500;overflow-wrap:break-word}
.catalog .expertise-card h3{font-size:22px;letter-spacing:-.025em}
.footer-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1fr)}
.prose{overflow-wrap:anywhere}.prose table{display:block;max-width:100%;overflow-x:auto}.prose img{max-width:100%;height:auto}
.contact-email,.contact-mail,.footer-grid a{overflow-wrap:anywhere}
@media(max-width:1100px){.header{gap:20px}.header nav{gap:16px;font-size:12px}.header-phone{font-size:13px}.opening h1{font-size:52px}.opening p{font-size:16px}.hero-action .button{padding-inline:20px}}
@media(max-width:950px){.header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;min-height:94px}.header .brand img{width:126px;height:72px}.header nav{top:calc(100% - 1px)}.header-phone{font-size:13px}.opening{display:block;padding:48px 0}.hero-action{padding:0;margin-top:28px}.opening h1{font-size:52px}.opening p{margin-top:22px}.bureau-brief{grid-template-columns:1fr;gap:28px}}
@media(max-width:760px){.container{width:calc(100% - 36px)}.header{gap:10px;min-height:85px}.header .brand img{width:112px;height:67px}.header-phone{font-size:12px}.opening{padding:42px 0 45px}.opening h1{font-size:41px;line-height:1.15}.opening p{font-size:16px}.opening p br{display:none}.home-contact{grid-template-columns:1fr;gap:28px;margin:0 auto;padding:30px 0 40px}.home-address{border:0;padding:0}.bureau-brief{padding:35px 0}.bureau-evidence{gap:25px}.bureau-evidence strong{font-size:26px}.page-head h1{font-size:34px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.focused-service,.request-layout,.article-layout,.contacts-grid{grid-template-columns:minmax(0,1fr)}.contact-band{margin-left:auto;margin-right:auto}}
@media(max-width:500px){.bureau-evidence,.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-grid>div:first-child{grid-column:auto}.footer-grid{gap:26px}.bureau-brief h2,.home-contact h2{font-size:27px}.opening h1{font-size:38px}.page-head h1{font-size:32px}.contact-band{padding:24px}.header-phone{font-size:11px}}
@media(max-width:360px){.header{gap:6px}.header .brand img{width:92px}.header-phone{font-size:10px}.opening h1{font-size:33px}.page-head h1{font-size:29px}}

.topic-directory .section-title{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.topic-directory .section-title h2{font-size:33px;font-weight:500;line-height:1.25;letter-spacing:-.035em}.topic-directory .section-title>span{font-size:13px;color:#79736c}

.topic-directory{border:0;background:#f5f5f3;margin:0 auto 0;padding:32px 28px 28px;border-radius:24px}
.topic-directory .section-title{margin-bottom:26px}
.topic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.topic{display:flex;align-items:center;min-height:94px;padding:19px 20px;background:#fff;border:1px solid #e7e5e1;border-radius:14px;font-size:16px;font-weight:500;line-height:1.35;letter-spacing:-.015em;box-shadow:0 2px 1px #302b2703;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s,color .2s}
.topic:hover,.topic:focus-visible{background:#fff;border-color:#a98971;color:#71492e;transform:translateY(-3px);box-shadow:0 8px 18px #59443112}
@media(max-width:1100px){.topic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.topic{font-size:15px;padding:17px;min-height:90px}}
@media(max-width:850px){.topic-directory{margin-inline:auto;padding:28px 16px 16px;border-radius:20px}.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topic-directory .section-title{gap:12px}.topic-directory .section-title h2{font-size:28px}}
@media(max-width:550px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.topic{font-size:14px;padding:15px 13px;min-height:88px;border-radius:12px}.topic-directory .section-title{display:block;margin-bottom:20px}.topic-directory .section-title h2{font-size:27px;max-width:280px}.topic-directory .section-title>span{display:block;margin-top:9px;font-size:12px}.topic-directory{margin-bottom:30px}}

/* Corner SVGs leave a separate area below every title */
.topic{position:relative;align-items:flex-start;min-height:120px;padding-bottom:52px}
.topic-icon{position:absolute;right:17px;bottom:13px;width:32px;height:32px;color:#98745a;pointer-events:none;transition:transform .2s,color .2s}
.topic:hover .topic-icon,.topic:focus-visible .topic-icon{color:#71492e;transform:translateY(-2px) rotate(-4deg)}
@media(max-width:550px){.topic{min-height:126px;padding-bottom:48px}.topic-icon{width:29px;height:29px;right:13px;bottom:12px}}
.topic>span{min-width:0;max-width:100%;overflow-wrap:anywhere;hyphens:manual}

/* Content hierarchy: a short overview, practical detail on demand */
.opening{align-items:flex-end;gap:32px}.hero-copy{flex:1}.opening h1{font-size:clamp(38px,4.2vw,56px);line-height:1.13;letter-spacing:-.04em}.opening p{max-width:735px;font-size:17px;line-height:1.7;margin-top:24px}.hero-action{padding-bottom:5px}
.start-section,.useful-section{padding-block:44px}.start-section .section-title,.useful-section .section-title{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:25px}.start-section h2,.useful-section h2{font-size:29px;font-weight:500;letter-spacing:-.03em;line-height:1.25}.start-grid,.useful-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.start-grid>div{border-top:1px solid var(--line);padding-top:23px}.start-grid h3,.useful-grid h3{font-size:18px;font-weight:500;line-height:1.45;letter-spacing:-.02em}.start-grid p,.useful-grid p{font-size:14px;line-height:1.75;margin-top:13px;color:var(--text)}.useful-section{padding-top:12px;padding-bottom:45px}.useful-grid{gap:16px}.useful-grid>a{display:block;padding:24px;border:1px solid var(--line);border-radius:18px;transition:border-color .2s,background .2s}.useful-grid>a:hover{background:var(--wash);border-color:#b3a294}.useful-section .text-link,.start-section .text-link{font-size:14px;flex-shrink:0}
.service-context{display:grid;grid-template-columns:185px minmax(0,1fr);gap:25px;padding:0 0 30px}.service-context h2,.service-result h3{font-size:17px;font-weight:500;line-height:1.6;letter-spacing:-.01em}.service-context p{max-width:760px;font-size:16px;line-height:1.75;color:var(--text);margin:0}.service-result{margin-top:24px;padding-top:23px;border-top:1px solid var(--line)}.service-result p{font-size:15px;color:var(--text);line-height:1.8;margin-top:12px}.focused-service{align-items:start}.service-preparation{position:static}.preparation-link{display:block;text-align:center;font-size:13px;margin-top:17px;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.service-reference{padding-bottom:20px}.service-reference details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-reference summary{cursor:pointer;list-style:revert;padding:22px 8px;font-size:19px;font-weight:500;line-height:1.5}.service-reference summary::-webkit-details-marker{display:inline-block}.reference-content{max-width:850px;padding:0 8px 25px}.reference-content p,.reference-content li{font-size:15px;line-height:1.85}.reference-content em{font-style:normal}.reference-content strong{font-weight:500}.reference-intro{color:var(--muted);margin-bottom:24px}.reference-content p:empty{display:none}
.regional-section{display:grid;grid-template-columns:1fr 1.6fr;gap:65px;padding:35px 0;border-top:1px solid var(--line)}.regional-section h2,.request-note h2{font-size:27px;line-height:1.3;font-weight:500;letter-spacing:-.03em}.regional-section p,.regional-section li,.request-note p{font-size:15px;color:var(--text);line-height:1.8}.regional-section ul{padding-left:20px;margin-top:15px}.regional-section li{padding:7px 0}.request-note{margin:5px auto 55px;padding:28px 32px;border-radius:18px;background:var(--wash)}.request-note p{margin:15px 0;max-width:850px}.article-meta{color:var(--muted);font-size:13px;margin-bottom:24px}.article-services{border-top:1px solid var(--line);padding:25px 0 0;margin-top:35px}.article-services h2{font-size:17px;font-weight:500;margin-bottom:12px}.publication-row{grid-template-columns:125px minmax(0,1fr)}.publication-kind{font-size:12px;display:block;color:var(--muted);margin-bottom:9px}.publication-row h2{font-size:24px}.publication-row p{font-size:14px}.publications .filters{margin-bottom:24px}.prose ul{padding-left:23px}.prose li{padding-left:0;margin-bottom:12px}.prose li:before{display:none}
@media(max-width:950px){.opening h1{font-size:48px}.start-grid{gap:20px}.start-grid h3,.useful-grid h3{font-size:17px}.useful-grid>a{padding:20px}.regional-section{gap:30px}.service-context{grid-template-columns:155px minmax(0,1fr)}}
@media(max-width:760px){.opening h1{font-size:38px}.opening p{font-size:16px;max-width:600px}.opening h1 br{display:none}.start-section,.useful-section{padding-block:30px}.start-grid,.useful-grid{grid-template-columns:1fr;gap:18px}.start-section .section-title,.useful-section .section-title{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:22px}.start-section h2,.useful-section h2{font-size:27px}.start-grid>div{padding-top:18px}.start-grid p{margin-top:8px;max-width:550px}.useful-grid>a{padding:22px}.service-context{grid-template-columns:1fr;gap:9px;padding-bottom:27px}.service-context p{font-size:15px}.service-reference summary{font-size:17px;padding:20px 0}.reference-content{padding-inline:0}.regional-section{grid-template-columns:1fr;gap:20px;padding-block:28px}.regional-section h2,.request-note h2{font-size:25px}.request-note{padding:24px;margin-bottom:35px}.publication-row{grid-template-columns:1fr;gap:10px}.publication-row h2{font-size:22px}}
@media(max-width:360px){.opening h1{font-size:33px}}
@media(prefers-reduced-motion:reduce){.topic,.topic-icon,.useful-grid>a{transition:none}.topic:hover,.topic:focus-visible,.topic:hover .topic-icon,.topic:focus-visible .topic-icon{transform:none}}

/* Room between ideas, a full-frame team photograph */
.start-section{padding-top:88px;padding-bottom:0}
.start-section .section-title,.useful-section .section-title{margin-bottom:40px}
.start-grid{gap:48px}.start-grid>div{padding-top:30px}.start-grid p{margin-top:20px;line-height:1.85;max-width:34ch}
.bureau-story{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:88px;align-items:center;margin-block:104px}
.team-photo{margin:0;min-width:0}.team-photo img{display:block;width:100%;max-width:100%;height:auto;border-radius:22px}
.bureau-story-copy h2{font-size:32px;font-weight:500;letter-spacing:-.03em;line-height:1.25;margin:0 0 26px}
.bureau-intro{font-size:18px;line-height:1.8;max-width:43ch;color:var(--text);margin-bottom:42px}
.bureau-story .bureau-evidence{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:38px}.bureau-story .bureau-evidence strong{font-size:29px}.bureau-story .bureau-evidence p{line-height:1.85;margin-top:20px}
.bureau-story .text-link{display:inline-block;font-size:14px}
.useful-section{padding-top:0;padding-bottom:96px}.useful-grid{gap:24px}.useful-grid>a{padding:32px 30px;min-height:208px}.useful-grid p{margin-top:23px;line-height:1.85}
.home-contact{padding-top:60px;padding-bottom:72px}.home-contact h2{margin-bottom:30px}
.about-team{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px;align-items:center;margin-top:12px;margin-bottom:80px}.about-team .bureau-detail{display:grid;grid-template-columns:1fr;padding:0;gap:38px;margin:0}.about-team .bureau-detail h2{font-size:27px;margin-bottom:22px;line-height:1.4}.about-team .bureau-detail p{line-height:1.9;margin-bottom:22px}.team-compact{padding-bottom:55px}.team-compact>h2{margin-bottom:32px}
@media(max-width:1100px){.bureau-story,.about-team{gap:48px}.bureau-story .bureau-evidence{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.bureau-story .bureau-evidence p{margin-top:12px}.bureau-intro{font-size:16px;margin-bottom:28px}.useful-grid>a{padding:28px 24px}.start-grid{gap:32px}}
@media(max-width:760px){.start-section{padding-top:56px;padding-bottom:0}.start-section .section-title,.useful-section .section-title{margin-bottom:30px}.start-grid{gap:30px}.start-grid>div{padding-top:24px}.start-grid p{margin-top:16px;max-width:none}.bureau-story,.about-team{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:64px;margin-bottom:64px}.team-photo{max-width:460px;margin-inline:auto;width:100%}.team-photo img{border-radius:18px}.bureau-story-copy h2{font-size:29px;margin-bottom:20px}.bureau-intro{margin-bottom:30px}.bureau-story .bureau-evidence{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:30px}.bureau-story .bureau-evidence strong{font-size:25px}.bureau-story .bureau-evidence p{margin-top:16px}.useful-section{padding-top:0;padding-bottom:56px}.useful-grid{gap:20px}.useful-grid>a{padding:28px;min-height:0}.useful-grid p{margin-top:20px}.home-contact{padding:40px 0 52px}.about-team{margin-top:0;margin-bottom:50px}.about-team .bureau-detail{gap:32px}.about-team .bureau-detail h2{font-size:25px;margin-bottom:18px}}
@media(max-width:400px){.bureau-story .bureau-evidence{grid-template-columns:1fr;gap:26px}.useful-grid>a{padding:25px}}

.page-head h1,.opening h1{-webkit-hyphens:none;hyphens:none}

/* Longer approved direction names and court appointment copy */
.topic>span{overflow-wrap:anywhere;hyphens:none}.topic{min-height:146px}.request-independent{font-size:27px;font-weight:500;margin-bottom:32px;line-height:1.4}.court-materials-note{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
@media(max-width:550px){.topic{min-height:150px}.request-independent{font-size:24px}}

.topic>span{overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual}

/* Text-first opening and a unified bureau section */
.opening.opening-text{display:block;padding:76px 0 84px}
.opening-text .hero-copy{max-width:900px}
.opening-text h1{font-size:54px;line-height:1.14;letter-spacing:-.04em}
.opening-text h1 span{display:block}
.opening-text p{max-width:660px;font-size:18px;line-height:1.75;margin-top:28px}
.opening-text .hero-action{padding:0;margin-top:32px}
.bureau-story{grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:88px;margin-block:108px;max-width:1040px}
.bureau-story-copy h2{margin-bottom:24px}
.bureau-story .bureau-intro{font-size:18px;max-width:43ch;margin-bottom:32px;line-height:1.8}
.bureau-total{border-top:1px solid var(--line);padding-top:28px;margin-bottom:30px;max-width:460px}
.bureau-total strong{display:block;font-size:32px;font-weight:500;line-height:1.3;letter-spacing:-.03em;color:var(--accent)}
.bureau-total p{font-size:14px;line-height:1.75;color:var(--text);max-width:35ch;margin-top:12px}
@media(max-width:1100px){.bureau-story{gap:56px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.opening-text h1{font-size:50px}}
@media(max-width:760px){.opening.opening-text{padding:44px 0 54px}.opening-text h1{font-size:38px}.opening-text p{font-size:16px;line-height:1.75;margin-top:23px}.opening-text .hero-action{margin-top:27px}.bureau-story{grid-template-columns:minmax(0,1fr);gap:32px;margin-block:72px}.bureau-story .team-photo{max-width:400px}.bureau-story-copy{max-width:460px;margin-inline:auto;width:100%}.bureau-story-copy h2{margin-bottom:20px}.bureau-story .bureau-intro{font-size:16px;margin-bottom:26px}.bureau-total{padding-top:24px;margin-bottom:26px}.bureau-total strong{font-size:29px}}
@media(max-width:400px){.opening-text h1{font-size:34px}}
@media(max-width:360px){.opening-text h1{font-size:31px}}

.bureau-story{scroll-margin-top:40px}

/* Finishing details: consistent surfaces, controls and interaction states */
:root{--surface:#f7f7f6;--edge:#e7e5e2;--card-shadow:0 2px 3px rgba(48,43,39,.025),0 9px 24px rgba(48,43,39,.035)}
.header nav a{padding-block:14px}.header nav a:after{bottom:8px}
.button,.opening .button,.service-preparation .button,.service-aside .button,.contact-band .button,.home-contact .button,.visit-heading .button{border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 4px 10px rgba(96,61,41,.12);transition:background .2s,box-shadow .2s,transform .2s}
.button.secondary,.home-contact .button.secondary{background:#fff;border-color:#d5cbc3;box-shadow:0 2px 4px rgba(48,43,39,.035)}
.text-link{display:inline-block;min-height:44px;padding-block:10px;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:#cbbdb2;text-underline-offset:5px;transition:text-decoration-color .2s,color .2s}
.topic-directory{background:var(--surface);padding:32px;border-radius:24px;border:1px solid #efefec;scroll-margin-top:32px}
.topic-directory .section-title{margin-bottom:28px}
.topic-grid{gap:14px}.topic{border-color:var(--edge);border-radius:17px;box-shadow:var(--card-shadow);padding:20px 20px 66px;min-height:152px;line-height:1.45}
.topic-icon{width:44px;height:44px;padding:8px;right:16px;bottom:15px;border-radius:12px;background:#f7f5f2;color:#8a684f;transition:background .2s,color .2s,transform .2s}
.start-grid{gap:40px}.start-grid>div{position:relative;padding-top:28px;border-top-color:var(--edge)}
.start-grid>div:before{content:'';position:absolute;top:-1px;left:0;width:36px;height:2px;background:#9b7a60;border-radius:2px}
.start-grid h3{font-weight:500;line-height:1.45}.start-grid p{line-height:1.8}
.team-photo img{box-shadow:0 8px 28px rgba(48,43,39,.06)}
.useful-grid{gap:20px}.useful-grid>a{border-color:var(--edge);border-radius:20px;box-shadow:var(--card-shadow);background:#fff;padding:30px;transition:box-shadow .2s,border-color .2s,transform .2s}.useful-grid h3{font-weight:500;line-height:1.45}.useful-grid p{margin-top:18px}
.home-contact{background:var(--surface);border:1px solid var(--edge);border-radius:24px;padding:46px 48px;margin-bottom:72px;gap:56px;scroll-margin-top:32px}
.home-contact h2{margin-bottom:24px}.home-contact .contact-number{display:inline-block;font-size:30px;line-height:1.4}.home-contact .contact-mail{display:block;margin-top:14px;text-decoration:underline;text-decoration-color:#d1c4ba;text-underline-offset:5px}.home-address{padding-left:42px}.home-address .button{margin-top:22px}
.catalog .expertise-card{border-radius:20px;box-shadow:var(--card-shadow);transition:box-shadow .2s,border-color .2s,transform .2s}
.service-preparation,.service-aside,.address-card{background:var(--surface);border:1px solid var(--edge);border-radius:22px}
@media(hover:hover) and (pointer:fine){.topic:hover,.topic:focus-visible,.catalog .expertise-card:hover,.useful-grid>a:hover{transform:translateY(-3px);border-color:#bca18e;box-shadow:0 4px 8px rgba(48,43,39,.03),0 14px 28px rgba(48,43,39,.065);background:#fff}.topic:hover .topic-icon{transform:translateY(-1px);background:#eee7e0;color:var(--accent)}.text-link:hover{text-decoration-color:var(--accent)}.button:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 15px rgba(96,61,41,.17)}}
@media(min-width:951px){.header-phone{padding:10px 15px;border:1px solid var(--edge);border-radius:14px;white-space:nowrap}.header{gap:22px}.header nav{gap:22px}}
@media(max-width:1100px){.topic-directory{padding:26px}.topic{padding:18px 17px 66px}.home-contact{padding:36px;gap:32px}.home-address{padding-left:30px}.home-contact .contact-number{font-size:27px}}
@media(max-width:760px){.topic-directory{padding:24px 16px 16px;border-radius:20px}.topic-grid{gap:10px}.topic{padding:16px 13px 64px;min-height:150px;border-radius:15px}.topic-icon{right:12px;bottom:13px;width:40px;height:40px;padding:7px}.start-grid{gap:32px}.useful-grid>a{padding:26px;border-radius:18px}.home-contact{padding:30px 24px;margin-bottom:48px;gap:28px;border-radius:20px}.home-address{padding:26px 0 0;border-left:0;border-top:1px solid var(--edge)}.home-contact .contact-number{font-size:26px}.home-address .button{margin-top:18px}}
@media(max-width:360px){.home-contact{padding:27px 20px}.home-contact .contact-number{font-size:23px}}
@media(prefers-reduced-motion:reduce){.button,.topic,.topic-icon,.useful-grid>a,.catalog .expertise-card,.text-link{transition:none}.button:hover,.topic:hover,.topic:hover .topic-icon,.catalog .expertise-card:hover,.useful-grid>a:hover{transform:none}}

/* A balanced opening and lighter, independent service cards */
.opening.opening-text{padding-top:86px;padding-bottom:86px}
.opening-text .hero-copy{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);column-gap:80px;max-width:none;align-items:start}
.opening-text h1{grid-column:1;grid-row:1 / span 2;font-size:54px;line-height:1.13;max-width:670px}
.opening-text p{grid-column:2;font-size:17px;line-height:1.8;max-width:38ch;margin:7px 0 0}
.opening-text .hero-action{grid-column:2;margin-top:25px;padding:0}
.topic-directory{background:transparent;border:0;border-top:1px solid var(--edge);border-radius:0;padding:34px 0 0}
.topic-directory .section-title{margin-bottom:30px}
.topic-grid{gap:14px}
.topic{isolation:isolate;overflow:hidden;min-height:154px;background:#f8f8f7;border:1px solid #ecebe8;border-radius:18px;box-shadow:none;padding:22px 20px 66px;transition:border-color .24s,background .24s,box-shadow .24s,transform .24s}
.topic:before{content:'';position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(ellipse at 100% 100%,#eee7df 0,transparent 65%);transition:opacity .3s}
.topic-icon{background:#fff;border:1px solid #eeeae5;color:#8a684f;border-radius:13px;width:46px;height:46px;padding:9px;right:17px;bottom:16px}
.topic>span{position:relative;z-index:1}
.topic:focus-visible{border-color:var(--accent);background:#fff;box-shadow:0 8px 24px #302b2709}
.useful-grid>a{box-shadow:none;border-color:var(--edge)}
.home-contact{background:linear-gradient(115deg,#f7f7f6 45%,#fff 100%)}
@media(hover:hover) and (pointer:fine){.topic:hover{background:#fff;transform:translateY(-4px);border-color:#c1a995;box-shadow:0 12px 26px #302b270b}.topic:hover:before{opacity:1}.topic:hover .topic-icon{background:#fff;color:var(--accent);transform:translateY(-2px) rotate(-5deg);border-color:#dfd2c7}.useful-grid>a:hover{transform:translateY(-3px);box-shadow:0 10px 25px #302b2709}.opening .button:hover{transform:translateY(-2px)}}
@media(max-width:1100px){.opening-text .hero-copy{column-gap:48px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.opening-text h1{font-size:48px}.opening-text p{font-size:16px}.topic-directory{padding:30px 0 0}.topic{padding:19px 17px 66px}}
@media(max-width:950px){.opening.opening-text{padding:58px 0 64px}.opening-text .hero-copy{display:block;max-width:720px}.opening-text h1{font-size:46px}.opening-text p{margin-top:26px;max-width:580px}.opening-text .hero-action{margin-top:28px}}
@media(max-width:760px){.opening.opening-text{padding:44px 0 48px}.opening-text h1{font-size:38px}.opening-text p{font-size:16px;margin-top:23px}.opening-text .hero-action{margin-top:26px}.topic-directory{padding:26px 0 0;border-radius:0}.topic-directory .section-title{margin-bottom:24px}.topic{padding:17px 15px 64px;min-height:150px;border-radius:16px}.topic-grid{gap:12px}.topic-icon{width:42px;height:42px;padding:8px;right:13px;bottom:14px}.home-contact{background:#f7f7f6}}
@media(max-width:400px){.opening-text h1{font-size:34px}}
@media(max-width:360px){.opening-text h1{font-size:31px}.topic{padding-inline:13px}}
@media(prefers-reduced-motion:reduce){.topic,.topic:before,.topic-icon,.button,.useful-grid>a{transition:none!important}.topic:hover,.topic:hover .topic-icon,.opening .button:hover,.useful-grid>a:hover{transform:none!important}}
