:root{
  --bg:#f6f5f2;--surface:#fff;--surface-2:#efeee9;--text:#161616;--muted:#6d6a65;--line:#d9d7d0;--ink:#111;--footer:#111;--accent:#c7b58a;--shadow:0 18px 50px rgba(0,0,0,.08);--serif:Georgia,'Times New Roman',serif;--sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif
}
html[data-theme='dark']{--bg:#0c0c0d;--surface:#151516;--surface-2:#1d1d1e;--text:#f3f3f0;--muted:#b8b6af;--line:#343435;--ink:#f3f3f0;--footer:#090909;--shadow:0 18px 50px rgba(0,0,0,.3)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.7;transition:background .25s,color .25s}.shell{max-width:1240px}.site-header{background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.navbar-brand{display:flex;align-items:center}.brand-logo{width:188px;height:56px;object-fit:contain;object-position:left center}.logo-dark{display:none}html[data-theme='dark'] .logo-light{display:none}html[data-theme='dark'] .logo-dark{display:block}.nav-link{color:var(--text)!important;font-size:.93rem;font-weight:600;padding:.5rem .75rem!important}.nav-link:hover{opacity:.58}.navbar-toggler{border:0;padding:.4rem}.navbar-toggler:focus{box-shadow:none}.theme-toggle{width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);display:grid;place-items:center}.btn{border-radius:4px;font-weight:700;padding:.75rem 1.15rem}.btn-lg{padding:.95rem 1.4rem}.btn-ink{background:#111;color:#fff;border:1px solid #111}.btn-ink:hover{background:#2a2a2a;color:#fff}.btn-outline-ink{border:1px solid var(--text);color:var(--text);background:transparent}.btn-outline-ink:hover{background:var(--text);color:var(--bg)}
.hero-home{position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(0,0,0,.93),rgba(0,0,0,.75)),radial-gradient(circle at 75% 30%,#5b4e3b 0,#171717 35%,#090909 65%);color:#fff}.min-vh-hero{min-height:610px}.hero-home h1{font-family:var(--serif);font-size:clamp(3.4rem,7vw,6.8rem);line-height:.96;letter-spacing:-.04em;margin:.7rem 0 1.5rem}.hero-home p{max-width:690px;font-size:1.12rem;color:rgba(255,255,255,.76);margin-bottom:2rem}.hero-mark{position:absolute;right:2%;top:3%;bottom:3%;width:44%;display:grid;place-items:center;opacity:.13;pointer-events:none}.hero-mark span{font-family:var(--serif);font-size:min(38vw,520px);line-height:1}.eyebrow{display:inline-block;font-size:.73rem;letter-spacing:.18em;font-weight:800;color:var(--muted);text-transform:uppercase}.eyebrow.light{color:rgba(255,255,255,.64)}.section-pad{padding:96px 0}.section-muted{background:var(--surface-2)}.section-heading{max-width:760px}.section-heading.text-center{margin:auto}.section-heading h2,.display-5,.display-6{font-family:var(--serif);letter-spacing:-.025em}.section-heading h2{font-size:clamp(2.3rem,4vw,4rem);margin:.4rem 0}.section-heading p,.lead-soft{color:var(--muted)}
.value-strip{background:var(--surface);border-bottom:1px solid var(--line)}.value-item{padding:42px 32px;border-right:1px solid var(--line)}.value-item:last-child{border-right:0}.value-item i{font-size:2rem}.value-item h3{font-size:1rem;margin:16px 0 8px}.value-item p{font-size:.9rem;color:var(--muted);margin:0}.text-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--text);font-weight:800;text-decoration:none;border-bottom:1px solid var(--text);padding-bottom:.15rem}.lawyer-card{display:block;position:relative;overflow:hidden;border-radius:4px;background:#111;min-height:430px;box-shadow:var(--shadow)}.lawyer-card img{width:100%;height:430px;object-fit:cover;object-position:center top;transition:transform .4s}.lawyer-card:hover img{transform:scale(1.025)}.lawyer-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.86))}.lawyer-card-caption{position:absolute;z-index:2;left:22px;right:22px;bottom:18px;color:#fff}.lawyer-card-caption strong{display:block;font-family:var(--serif);font-size:1.15rem}.lawyer-card-caption span{font-size:.8rem;color:rgba(255,255,255,.65)}.shadow-soft{box-shadow:var(--shadow)}
.practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.practice-grid.large{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.practice-card{display:flex;gap:22px;align-items:flex-start;padding:28px;border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}.practice-card:hover{transform:translateY(-3px);border-color:var(--text);box-shadow:var(--shadow)}.practice-card>i{font-size:2rem;line-height:1}.practice-card h3,.practice-card h2{font-family:var(--serif);font-size:1.25rem;margin:0 0 8px}.practice-card p{font-size:.92rem;color:var(--muted);margin:0 0 12px}.practice-card span{font-size:.8rem;font-weight:800}.minimal-accordion .accordion-item{background:transparent;border:0;border-bottom:1px solid var(--line)}.minimal-accordion .accordion-button{background:transparent;color:var(--text);font-weight:800;padding:1.4rem 0;box-shadow:none}.minimal-accordion .accordion-button:not(.collapsed){color:var(--text)}.minimal-accordion .accordion-body{padding:0 0 1.4rem;color:var(--muted)}
.page-hero{background:#111;color:#fff;overflow:hidden}.page-hero.compact h1,.page-hero h1{font-family:var(--serif);font-size:clamp(3rem,6vw,5rem);line-height:1;margin:.5rem 0 1rem}.page-hero p{max-width:760px;color:rgba(255,255,255,.66);font-size:1.08rem}.page-hero-team{width:100%;max-height:320px;object-fit:cover;object-position:center 18%;border-radius:4px;filter:grayscale(20%)}.sticky-summary{position:sticky;top:130px}.sticky-summary h2{font-family:var(--serif);font-size:2.1rem;margin:.5rem 0 1rem}.prose{font-size:1.04rem}.prose .lead{font-family:var(--serif);font-size:1.55rem;line-height:1.55}.corporate-sections{display:grid;gap:16px}.corporate-card{display:grid;grid-template-columns:76px 1fr;gap:22px;padding:28px;background:var(--surface);border:1px solid var(--line)}.corporate-icon{width:62px;height:62px;border:1px solid var(--line);display:grid;place-items:center}.corporate-icon i{font-size:1.5rem}.corporate-card h2{font-family:var(--serif);font-size:1.7rem}.corporate-card p{margin:0;color:var(--muted)}
.profile-card{display:block;height:100%;text-decoration:none;background:var(--surface);border:1px solid var(--line);color:var(--text);transition:.2s}.profile-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.profile-card img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}.profile-card-body{padding:24px}.profile-card-body>span{font-size:.7rem;letter-spacing:.15em;color:var(--muted);font-weight:800}.profile-card-body h2{font-family:var(--serif);font-size:1.7rem;margin:.4rem 0 .7rem}.profile-card-body p{color:var(--muted);font-size:.92rem}.profile-card-body strong{font-size:.82rem}.lawyer-detail-img{width:100%;max-height:720px;object-fit:cover;object-position:center top;border-radius:4px;box-shadow:var(--shadow)}.divider{height:1px;background:var(--line);margin:28px 0}.legal-note{display:flex;gap:16px;padding:22px;border:1px solid var(--line);background:var(--surface-2)}.legal-note i{font-size:1.35rem}.legal-note p{margin:.3rem 0 0;color:var(--muted);font-size:.92rem}.side-panel{position:sticky;top:130px;background:var(--surface);border:1px solid var(--line);padding:26px}.side-panel>a{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);font-size:.92rem}.side-panel>a:hover{opacity:.6}
.form-card{background:var(--surface);border:1px solid var(--line);padding:34px}.form-card h2{font-family:var(--serif)}.form-control{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:3px;padding:.85rem}.form-control:focus{background:var(--bg);color:var(--text);border-color:var(--text);box-shadow:none}.contact-list{display:grid;gap:18px;margin-top:30px}.contact-list>a,.contact-list>div{display:flex;gap:16px;color:var(--text);text-decoration:none}.contact-list i{font-size:1.35rem}.contact-list small{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}
.contact-band{background:linear-gradient(120deg,#111,#1d1b17);color:#fff;border-top:1px solid rgba(255,255,255,.08)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.contact-grid a{display:flex;align-items:center;gap:16px;color:#fff;text-decoration:none;padding:18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.03)}.contact-grid a:hover{background:rgba(255,255,255,.08)}.contact-grid i{font-size:1.25rem}.contact-grid small{display:block;color:rgba(255,255,255,.55);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.site-footer{background:var(--footer);color:#fff}.footer-logo{width:210px;height:88px;object-fit:contain;object-position:left center}.site-footer h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.6);margin-bottom:18px}.site-footer a{display:block;color:rgba(255,255,255,.74);text-decoration:none;margin:.45rem 0;font-size:.9rem}.site-footer a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.48)}.agency-signature{display:flex!important;align-items:center;gap:10px;margin:0!important}.agency-signature span{font-size:.68rem;color:rgba(255,255,255,.45)}.agency-signature img{height:22px;width:auto;max-width:105px}.offcanvas{background:var(--surface);color:var(--text)}.offcanvas-body>a:not(.btn){color:var(--text);text-decoration:none;padding:14px 0;border-bottom:1px solid var(--line);font-weight:700}
@media(max-width:991.98px){.brand-logo{width:155px;height:48px}.section-pad{padding:72px 0}.min-vh-hero{min-height:540px}.hero-mark{width:70%;right:-18%}.value-item{border-bottom:1px solid var(--line)}.practice-grid,.practice-grid.large{grid-template-columns:1fr}.sticky-summary,.side-panel{position:static}.contact-grid{grid-template-columns:1fr}}
@media(max-width:767.98px){body{font-size:15px}.hero-home h1{font-size:3.6rem}.hero-home p{font-size:1rem}.min-vh-hero{min-height:610px}.value-item{padding:28px 20px}.practice-card{padding:22px}.lawyer-card{min-height:390px}.lawyer-card img{height:390px}.page-hero-team{max-height:250px}.corporate-card{grid-template-columns:1fr}.corporate-icon{width:52px;height:52px}.form-card{padding:22px}.section-pad{padding:56px 0}.contact-band .display-6{font-size:2.3rem}.footer-logo{width:180px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* 2026 visual upgrade */
.shell{max-width:min(1480px,94vw)!important}
.site-header{box-shadow:0 6px 30px rgba(0,0,0,.045)}
.brand-logo{width:255px!important;height:64px!important;object-fit:contain!important;object-position:left center!important}
.hero-photo{min-height:690px;background:#090909!important}
.hero-photo-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(6,6,6,.92) 0%,rgba(6,6,6,.78) 38%,rgba(6,6,6,.34) 68%,rgba(6,6,6,.12) 100%),url('https://images.pexels.com/photos/6077861/pexels-photo-6077861.jpeg?auto=compress&cs=tinysrgb&w=2000');background-size:cover;background-position:center 48%;transform:scale(1.02)}
.hero-noise{position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.22) .5px,transparent .5px);background-size:7px 7px;mix-blend-mode:soft-light}
.hero-home h1{font-size:clamp(4rem,6.8vw,7.2rem)!important;max-width:900px;text-wrap:balance}
.hero-stat-card{margin-left:auto;max-width:390px;padding:30px;border:1px solid rgba(255,255,255,.25);background:rgba(10,10,10,.48);backdrop-filter:blur(18px);border-radius:24px;color:#fff;box-shadow:0 30px 70px rgba(0,0,0,.22)}
.hero-stat-card span{display:block;font-size:.68rem;letter-spacing:.22em;color:rgba(255,255,255,.55);margin-bottom:12px}.hero-stat-card strong{display:block;font-family:var(--serif);font-size:1.8rem;line-height:1.2;margin-bottom:12px}.hero-stat-card small{color:rgba(255,255,255,.68);font-size:.9rem;line-height:1.6}
.value-strip{position:relative;z-index:3;margin-top:-34px;background:transparent;border:0}.value-strip .shell{background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 22px 65px rgba(0,0,0,.10)}.value-item{padding:38px 34px}.value-item i{display:inline-grid;place-items:center;width:54px;height:54px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.section-pad{padding:118px 0}.section-muted{position:relative}.section-muted:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,transparent 0 55%,color-mix(in srgb,var(--text) 3%,transparent) 55% 56%,transparent 56% 100%)}
.premium-card,.profile-card,.practice-visual-card,.contact-panel,.map-frame,.corporate-card,.side-panel{border-radius:22px!important;overflow:hidden}
.lawyer-card{min-height:520px}.lawyer-card img{height:520px}.lawyer-card:after{inset:35% 0 0}.lawyer-card:hover img{transform:scale(1.055)}
.image-frame{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.14)}.image-frame:after{content:'';position:absolute;inset:18px;border:1px solid rgba(255,255,255,.55);border-radius:20px;pointer-events:none}.image-frame img{display:block;min-height:560px;object-fit:cover}.image-frame.portrait img{min-height:640px}
.practice-visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative}.practice-visual-grid.large{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.practice-visual-card{display:block;background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;box-shadow:0 18px 50px rgba(0,0,0,.045);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.practice-visual-card:hover{transform:translateY(-8px);box-shadow:0 30px 80px rgba(0,0,0,.14);border-color:color-mix(in srgb,var(--text) 45%,var(--line))}.practice-visual-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#111}.practice-visual-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.34))}.practice-visual-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(45%) contrast(1.03);transition:transform .55s ease,filter .4s ease}.practice-visual-card:hover .practice-visual-media img{transform:scale(1.06);filter:grayscale(10%) contrast(1.02)}.practice-icon{position:absolute;z-index:2;left:22px;bottom:18px;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#111;backdrop-filter:blur(10px);font-size:1.35rem;box-shadow:0 12px 30px rgba(0,0,0,.15)}.practice-visual-body{padding:26px}.practice-visual-body h2,.practice-visual-body h3{font-family:var(--serif);font-size:1.42rem;margin:0 0 10px}.practice-visual-body p{color:var(--muted);font-size:.92rem;margin-bottom:18px}.practice-visual-body>span{font-size:.78rem;font-weight:800;display:flex;align-items:center;gap:8px}.practice-visual-body>span i{transition:transform .25s}.practice-visual-card:hover .practice-visual-body>span i{transform:translateX(5px)}
.textured-hero{position:relative;background:radial-gradient(circle at 80% 20%,#34302b 0,#171717 33%,#0c0c0c 70%)!important}.textured-hero:after{content:'§';position:absolute;right:6%;top:-52px;font-family:var(--serif);font-size:280px;color:rgba(255,255,255,.035);line-height:1}
.contact-panel{padding:42px;background:var(--surface);border:1px solid var(--line);box-shadow:0 20px 65px rgba(0,0,0,.07)}.map-frame{min-height:560px;border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.11);background:var(--surface);padding:10px}.map-frame iframe{display:block;width:100%;height:100%;min-height:540px;border:0;border-radius:16px;filter:grayscale(100%) contrast(.94)}.contact-inline{color:var(--text);text-decoration:none;border-bottom:1px solid var(--line)}.contact-inline:hover{border-color:var(--text)}
.btn{border-radius:12px!important;transition:transform .2s ease,box-shadow .2s ease,background .2s}.btn:hover{transform:translateY(-2px)}.btn-ink:hover{box-shadow:0 14px 30px rgba(0,0,0,.18)}
.page-hero.compact{padding:40px 0}.page-hero.compact h1{font-size:clamp(3.2rem,5vw,5.7rem)}
.footer-logo{width:280px!important;height:72px!important}
.reveal-up,.reveal-left,.reveal-right{opacity:0;transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}.reveal-up{transform:translateY(34px)}.reveal-left{transform:translateX(-34px)}.reveal-right{transform:translateX(34px)}.is-visible{opacity:1!important;transform:none!important}
@media(max-width:1199.98px){.practice-visual-grid,.practice-visual-grid.large{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-logo{width:220px!important}}
@media(max-width:991.98px){.shell{max-width:92vw!important}.hero-photo{min-height:620px}.hero-photo-bg{background-image:linear-gradient(90deg,rgba(6,6,6,.91),rgba(6,6,6,.61)),url('https://images.pexels.com/photos/6077861/pexels-photo-6077861.jpeg?auto=compress&cs=tinysrgb&w=1500')}.section-pad{padding:88px 0}.value-strip{margin-top:-20px}.image-frame img{min-height:420px}.map-frame{min-height:460px}.map-frame iframe{min-height:440px}}
@media(max-width:767.98px){.shell{max-width:calc(100vw - 30px)!important}.brand-logo{width:190px!important;height:54px!important}.hero-home h1{font-size:3.7rem!important}.practice-visual-grid,.practice-visual-grid.large{grid-template-columns:1fr}.section-pad{padding:68px 0}.value-strip{margin-top:0}.value-strip .shell{border-radius:0;max-width:100%!important}.lawyer-card,.lawyer-card img{height:470px;min-height:470px}.contact-panel{padding:28px}.map-frame,.map-frame iframe{min-height:390px}.footer-logo{width:240px!important}}
@media(prefers-reduced-motion:reduce){.reveal-up,.reveal-left,.reveal-right{opacity:1!important;transform:none!important}}
.practice-detail-hero{position:relative;min-height:520px;display:flex;align-items:flex-end;overflow:hidden;background:#111;color:#fff}.practice-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(62%);transform:scale(1.02)}.practice-detail-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.92) 0%,rgba(7,7,7,.68) 48%,rgba(7,7,7,.22) 100%)}.practice-detail-hero .container{padding-top:120px;padding-bottom:76px;z-index:2}.practice-detail-hero h1{font-family:var(--serif);font-size:clamp(3rem,6vw,6rem);line-height:1;margin:.55rem 0 1rem;max-width:920px}.practice-detail-hero p{max-width:780px;color:rgba(255,255,255,.72);font-size:1.08rem}


/* Breadcrumb + logo size update */
.brand-logo{width:335px!important;height:82px!important;object-fit:contain!important;object-position:left center!important}
.footer-logo{width:325px!important;height:84px!important}
.visual-breadcrumb{position:relative;isolation:isolate;min-height:300px;display:flex;align-items:flex-end;background-position:center;background-size:cover;background-repeat:no-repeat}
.visual-breadcrumb .page-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,5,5,.92) 0%,rgba(5,5,5,.76) 48%,rgba(5,5,5,.35) 100%)}
.visual-breadcrumb:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.1));pointer-events:none}
.breadcrumb-corporate{background-image:url('https://images.pexels.com/photos/5669655/pexels-photo-5669655.jpeg?auto=compress&cs=tinysrgb&w=2000')}
.breadcrumb-lawyers{background-image:url('https://images.pexels.com/photos/5668806/pexels-photo-5668806.jpeg?auto=compress&cs=tinysrgb&w=2000')}
.breadcrumb-practices{background-image:url('https://images.pexels.com/photos/6077861/pexels-photo-6077861.jpeg?auto=compress&cs=tinysrgb&w=2000')}
.breadcrumb-contact{background-image:url('https://images.pexels.com/photos/5669659/pexels-photo-5669659.jpeg?auto=compress&cs=tinysrgb&w=2000')}
.breadcrumb-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:18px;font-size:.78rem;letter-spacing:.02em;color:rgba(255,255,255,.62)}
.breadcrumb-line a{color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s ease}.breadcrumb-line a:hover{color:#fff}.breadcrumb-line i{font-size:.62rem;color:rgba(255,255,255,.38)}.breadcrumb-line span{color:#fff}
.visual-breadcrumb h1{max-width:900px;text-shadow:0 8px 30px rgba(0,0,0,.24)}
.visual-breadcrumb p{max-width:780px;color:rgba(255,255,255,.78)}
@media(max-width:1199.98px){.brand-logo{width:290px!important;height:74px!important}}
@media(max-width:991.98px){.brand-logo{width:255px!important;height:68px!important}.visual-breadcrumb{min-height:270px}}
@media(max-width:767.98px){.brand-logo{width:225px!important;height:60px!important}.visual-breadcrumb{min-height:240px;background-position:center}.visual-breadcrumb .page-hero-shade{background:linear-gradient(90deg,rgba(5,5,5,.92),rgba(5,5,5,.68))}.footer-logo{width:275px!important}}
