
:root{--ink:#15191d;--ink2:#22282e;--paper:#f5f1e9;--white:#fffdf8;--muted:#706d68;--line:rgba(21,25,29,.15);--accent:#89383d;--accent2:#a38761;--soft:#ebe6dc;--radius:3px;--max:1240px;--shadow:0 24px 70px rgba(17,21,24,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img,svg{display:block}button,input,textarea,select{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin:0 auto}.section{padding:110px 0}.section-soft{background:var(--soft)}.section-dark{background:var(--ink);color:var(--white)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em;line-height:1.04}h1{font-size:clamp(3rem,6vw,6.5rem)}h2{font-size:clamp(2.35rem,4.3vw,4.65rem)}h3{line-height:1.25}.eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:22px;text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.19em;color:var(--accent)}.eyebrow:before{content:'';width:34px;height:1px;background:currentColor}.eyebrow-light{color:#c7ac82}.lead{font-size:1.22rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 24px;border:1px solid transparent;border-radius:var(--radius);font-weight:700;transition:.25s ease;cursor:pointer}.btn svg,.text-link svg,.card-link svg,.urgent-inner a svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.7}.btn-accent{background:var(--accent);color:white}.btn-accent:hover{background:#743034;transform:translateY(-2px)}.btn-dark{background:var(--ink);color:white}.btn-dark:hover{background:var(--ink2);transform:translateY(-2px)}.btn-ghost{border-color:var(--line);background:rgba(255,255,255,.34)}.btn-ghost-light{border-color:rgba(255,255,255,.25);color:white}.btn-full{width:100%}.text-link{display:inline-flex;gap:10px;align-items:center;margin-top:24px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:4px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(245,241,233,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:82px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ink);font:1.45rem Georgia,serif}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy strong{font-family:Georgia,serif;font-size:1.05rem}.brand-copy small{text-transform:uppercase;letter-spacing:.12em;font-size:.58rem;margin-top:5px;color:var(--muted)}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-left:auto}.nav-link{font-size:.78rem;font-weight:700;white-space:nowrap;padding:31px 0 27px;border-bottom:3px solid transparent}.nav-link:hover,.nav-link.active{color:var(--accent);border-color:var(--accent)}.header-phone{font-weight:800;white-space:nowrap}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle svg{width:27px;fill:none;stroke:currentColor;stroke-width:1.6}.mobile-menu{display:none}.mobile-actionbar{display:none}
.hero{position:relative;overflow:hidden;min-height:760px;display:flex;align-items:center;padding:80px 0 100px}.hero-grid-bg,.inner-grid-bg{position:absolute;inset:0;opacity:.23;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(to right,#000,transparent 80%)}.hero-grid{position:relative;display:grid;grid-template-columns:1.18fr .82fr;gap:70px;align-items:center}.hero h1{margin-bottom:28px}.hero h1 em{font-weight:400;color:var(--accent);font-style:italic}.hero-lead{max-width:720px;font-size:1.24rem;color:#484a49}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.hero-facts{display:flex;flex-wrap:wrap;gap:32px;margin-top:50px;padding-top:26px;border-top:1px solid var(--line)}.hero-facts span{display:flex;flex-direction:column;font-size:.77rem;color:var(--muted)}.hero-facts strong{font-family:Georgia,serif;font-size:1.42rem;color:var(--ink)}.hero-visual{position:relative;padding:15px 0 0 10px}.portrait-frame{position:relative;aspect-ratio:.77;background:var(--ink);box-shadow:var(--shadow);overflow:hidden;color:white}.portrait-pattern{position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(163,135,97,.35),transparent 32%),linear-gradient(145deg,transparent 35%,rgba(255,255,255,.055) 35% 36%,transparent 36% 63%,rgba(255,255,255,.055) 63% 64%,transparent 64%);background-size:auto,150px 150px}.portrait-monogram{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);font:clamp(6rem,13vw,11rem) Georgia,serif;color:rgba(255,255,255,.07);letter-spacing:-.15em}.portrait-label{position:absolute;left:34px;right:34px;bottom:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.22);display:flex;flex-direction:column}.portrait-label span{font:1.5rem Georgia,serif}.portrait-label small{color:rgba(255,255,255,.62);margin-top:5px}.hero-seal{position:absolute;right:22px;top:34px;bottom:auto;width:124px;height:124px;border-radius:50%;background:rgba(163,135,97,.96);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 18px 45px rgba(17,21,24,.22);z-index:3;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(6px)}.hero-seal strong{font:2.3rem Georgia,serif;line-height:1}.hero-seal span{font-size:.66rem;max-width:88px;margin-top:7px;line-height:1.2}.urgent-strip{background:var(--accent);color:white}.urgent-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.urgent-inner>div{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:13px}.urgent-inner p{grid-column:2;margin:3px 0 0;color:rgba(255,255,255,.72);font-size:.9rem}.urgent-dot{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.13)}.urgent-inner a{display:flex;gap:10px;align-items:center;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:3px;font-weight:700;white-space:nowrap}
.section-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;margin-bottom:55px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:440px;color:var(--muted);font-size:1.05rem}.section-heading.light>p{color:rgba(255,255,255,.58)}.practice-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;border:1px solid var(--line)}.practice-card{min-height:500px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.18);border-right:1px solid var(--line);transition:.25s ease}.practice-card:last-child{border-right:0}.practice-card:hover{background:var(--white);transform:translateY(-7px);box-shadow:var(--shadow);z-index:2}.practice-card.practice-featured{background:var(--ink);color:white}.practice-card.practice-featured:hover{background:var(--ink2)}.card-number{font:1rem Georgia,serif;color:var(--accent2)}.practice-card h3{font:2.1rem Georgia,serif;font-weight:400;margin-bottom:18px}.practice-card p{color:var(--muted)}.practice-featured p{color:rgba(255,255,255,.62)}.practice-card ul{list-style:none;padding:0;margin:28px 0}.practice-card li{border-top:1px solid var(--line);padding:10px 0;font-size:.88rem}.practice-featured li{border-color:rgba(255,255,255,.13)}.card-link{display:flex;align-items:center;justify-content:space-between;font-weight:700}.about-preview{background:var(--white)}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.about-statement{position:relative;min-height:540px;background:var(--accent);color:white;padding:70px 50px;display:flex;align-items:flex-end}.about-statement p{font:2.4rem/1.18 Georgia,serif}.quote-mark{position:absolute;top:10px;left:40px;font:12rem Georgia,serif;color:rgba(255,255,255,.1);line-height:1}.about-content{padding:40px 0}.about-content p{color:#5d5c58}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:40px 0 10px}.credentials div{padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column}.credentials strong{font:2.1rem Georgia,serif;color:var(--accent)}.credentials span{font-size:.78rem;color:var(--muted)}.principles-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.15)}.principles-grid article{min-height:280px;padding:30px;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.principles-grid article>span{color:var(--accent2);font-size:.75rem}.principles-grid h3{font:1.45rem Georgia,serif;margin:55px 0 15px}.principles-grid p{font-size:.9rem;color:rgba(255,255,255,.55)}.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:100px 1fr;gap:25px;padding:32px 0;border-bottom:1px solid var(--line)}.process-list li>span{font:1.15rem Georgia,serif;color:var(--accent)}.process-list h3{font:1.65rem Georgia,serif;font-weight:400;margin-bottom:6px}.process-list p{color:var(--muted);margin-bottom:0}.pricing-preview{background:var(--soft)}.pricing-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.pricing-grid>div:first-child p{max-width:520px;color:var(--muted);margin-bottom:30px}.price-list{border-top:1px solid var(--ink)}.price-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.price-list strong{font:1.2rem Georgia,serif;color:var(--accent);white-space:nowrap}.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.faq-grid>div:first-child>p{color:var(--muted)}.accordion{border-top:1px solid var(--ink)}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;cursor:pointer;padding:25px 0;font:1.28rem Georgia,serif;display:flex;justify-content:space-between;gap:20px}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-family:Arial;font-weight:300;transition:.2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{padding:0 42px 25px 0;color:var(--muted)}
.consultation{padding:105px 0}.consult-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.consult-grid h2{max-width:520px}.consult-grid>div>p{color:rgba(255,255,255,.58);max-width:520px}.direct-contact{margin-top:50px;display:grid;gap:18px}.direct-contact a{display:flex;align-items:center;gap:14px}.direct-contact svg,.contact-list svg{width:28px;fill:none;stroke:var(--accent2);stroke-width:1.4}.direct-contact span{display:flex;flex-direction:column}.direct-contact small{color:rgba(255,255,255,.5)}.contact-form{background:var(--white);color:var(--ink);padding:38px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:grid;gap:8px;font-size:.78rem;font-weight:700;margin-bottom:18px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:1px solid var(--line);background:#faf8f3;padding:15px 16px;outline:none}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--accent)}.contact-form .consent{display:flex;grid-template-columns:20px 1fr;align-items:flex-start;font-weight:400;color:var(--muted)}.consent input{width:18px;height:18px;margin-top:3px}.consent a{text-decoration:underline}.form-status{font-size:.85rem;margin:14px 0 0;color:var(--accent)}
.site-footer{background:#0d1012;color:white;padding:80px 0 32px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:55px}.brand-footer .brand-mark{border-color:white}.brand-footer .brand-copy small{color:rgba(255,255,255,.45)}.footer-main p{max-width:360px;color:rgba(255,255,255,.48);font-size:.9rem;margin-top:25px}.footer-grid h3{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--accent2);margin-bottom:20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px;font-size:.88rem}.footer-grid span,.footer-grid a{color:rgba(255,255,255,.66)}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:60px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.43);font-size:.75rem}.legal-note{margin-top:18px;color:rgba(255,255,255,.32);font-size:.72rem}
.inner-hero{position:relative;overflow:hidden;background:var(--ink);color:white;padding:120px 0 100px}.inner-hero-grid{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end}.inner-hero h1{font-size:clamp(3.3rem,6vw,6.6rem);max-width:950px;margin-bottom:28px}.inner-hero p{max-width:760px;color:rgba(255,255,255,.61);font-size:1.18rem}.inner-side-note{border-left:1px solid rgba(255,255,255,.18);padding:35px 0 35px 35px;display:flex;flex-direction:column}.inner-side-note span{text-transform:uppercase;letter-spacing:.16em;font-size:.65rem;color:var(--accent2)}.inner-side-note strong{font:1.55rem Georgia,serif;margin-top:13px}.inner-side-note small{color:rgba(255,255,255,.45);margin-top:5px}.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.two-col>div p{color:var(--muted)}.check-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--ink)}.check-list li{display:grid;grid-template-columns:28px 1fr;gap:15px;padding:19px 0;border-bottom:1px solid var(--line)}.check-list svg{width:22px;fill:none;stroke:var(--accent);stroke-width:1.8}.service-actions{background:var(--white)}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.action-grid article{min-height:300px;padding:30px;border-right:1px solid var(--line)}.action-grid article:last-child{border-right:0}.action-grid article>span,.bio-grid article>span{color:var(--accent);font:1rem Georgia,serif}.action-grid h3,.bio-grid h3{font:1.5rem Georgia,serif;font-weight:400;margin:55px 0 13px}.action-grid p,.bio-grid p{color:var(--muted);font-size:.9rem}.about-page-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:90px}.profile-card{position:sticky;top:120px;align-self:start;background:var(--ink);color:white;min-height:500px;padding:45px;display:flex;flex-direction:column;justify-content:flex-end}.profile-monogram{font:7rem Georgia,serif;color:rgba(255,255,255,.08);margin-bottom:auto;letter-spacing:-.15em}.profile-card strong{font:2rem Georgia,serif;font-weight:400}.profile-card span{color:rgba(255,255,255,.5);margin-top:12px}.prose{max-width:800px}.prose p{color:#555753;font-size:1.04rem}.prose blockquote{margin:50px 0 0;padding:30px 0 0;border-top:1px solid var(--line);font:1.8rem/1.35 Georgia,serif;color:var(--accent)}.bio-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.bio-grid article{padding:30px;min-height:270px;border-right:1px solid var(--line)}.bio-grid article:last-child{border:0}.pricing-page-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.pricing-page-grid>div:first-child p{color:var(--muted)}.price-table{border-top:1px solid var(--ink)}.price-row{display:grid;grid-template-columns:1fr auto;gap:30px;padding:25px 0;border-bottom:1px solid var(--line)}.price-row h3{font:1.25rem Georgia,serif;margin-bottom:6px}.price-row p{color:var(--muted);font-size:.88rem;margin-bottom:0}.price-row strong{font:1.2rem Georgia,serif;color:var(--accent);white-space:nowrap}.factors-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.factors-grid span{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:700}.contact-page-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px}.contact-panel>p{color:var(--muted)}.contact-list{margin-top:45px;border-top:1px solid var(--ink)}.contact-list>a,.contact-list>div{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.contact-list span{display:flex;flex-direction:column}.contact-list small{color:var(--muted)}.contact-list strong{font:1.25rem Georgia,serif}.contact-list em{font-style:normal;font-size:.82rem;color:var(--muted);margin-top:4px}.city-card{position:relative;overflow:hidden;min-height:560px;background:var(--accent);color:white;padding:45px;display:flex;flex-direction:column;justify-content:flex-end}.city-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:60px 60px;transform:rotate(8deg) scale(1.2)}.city-card span,.city-card strong,.city-card small{position:relative}.city-card span{text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:rgba(255,255,255,.6);margin-bottom:auto}.city-card strong{font:4.3rem/1 Georgia,serif;font-weight:400}.city-card small{margin-top:20px;color:rgba(255,255,255,.7)}.legal-hero{background:var(--ink);color:white;padding:100px 0}.legal-hero h1{font-size:clamp(3rem,5vw,5.5rem);max-width:1000px}.legal-hero p{color:rgba(255,255,255,.55)}.legal-prose{max-width:860px}.legal-prose h2{font-size:2rem;margin:45px 0 15px}.legal-prose p{color:#545652}.notfound{min-height:70vh;display:grid;place-items:center;text-align:center;padding:80px 0}.notfound span{font:8rem Georgia,serif;color:var(--accent)}
@media(max-width:1120px){.desktop-nav{display:none}.header-phone{margin-left:auto}.menu-toggle{display:block}.mobile-menu{display:block;position:fixed;inset:82px 0 auto 0;background:var(--paper);max-height:0;overflow:hidden;transition:max-height .35s ease;border-bottom:1px solid var(--line)}.mobile-menu.open{max-height:calc(100vh - 82px)}.mobile-menu-inner{padding:25px 20px 35px;display:grid}.mobile-menu .nav-link{padding:14px 0;border-bottom:1px solid var(--line)}.mobile-menu .btn{margin-top:22px}.mobile-contact{text-align:center;margin-top:14px}.hero-grid{grid-template-columns:1.1fr .9fr;gap:30px}.practice-grid{grid-template-columns:1fr 1fr}.practice-card:last-child{grid-column:1/-1;border-top:1px solid var(--line)}.principles-grid,.action-grid,.bio-grid{grid-template-columns:1fr 1fr}.action-grid article:nth-child(2),.bio-grid article:nth-child(2){border-right:0}.action-grid article:nth-child(-n+2),.bio-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.factors-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.container{width:min(calc(100% - 28px),var(--max))}.section{padding:75px 0}.header-inner{height:72px}.header-phone{display:none}.mobile-menu{top:72px}.hero{padding:55px 0 80px}.hero-grid,.inner-hero-grid,.section-heading,.about-grid,.pricing-grid,.faq-grid,.consult-grid,.two-col,.about-page-grid,.pricing-page-grid,.contact-page-grid{grid-template-columns:1fr}.hero-copy{order:1}.hero-visual{order:2;max-width:540px;width:100%;margin:0 auto}.hero-facts{gap:20px}.hero-facts span{min-width:120px}.urgent-inner{padding:22px 0;align-items:flex-start;flex-direction:column}.practice-grid{grid-template-columns:1fr}.practice-card,.practice-card:last-child{min-height:410px;grid-column:auto;border-right:0;border-bottom:1px solid var(--line)}.about-statement{min-height:400px}.credentials{grid-template-columns:1fr 1fr}.section-heading{gap:25px}.principles-grid{grid-template-columns:1fr 1fr}.consult-grid{gap:45px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-main{grid-column:1/-1}.footer-bottom{flex-direction:column}.inner-hero{padding:90px 0 75px}.inner-hero-grid{gap:45px}.inner-side-note{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:25px 0 0}.profile-card{position:static;min-height:400px}.mobile-actionbar{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);z-index:90;bottom:0;left:0;right:0;background:var(--white);box-shadow:0 -8px 30px rgba(0,0,0,.13);padding-bottom:env(safe-area-inset-bottom)}.mobile-actionbar a{min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.68rem;border-right:1px solid var(--line)}.mobile-actionbar svg{width:20px;fill:none;stroke:var(--accent);stroke-width:1.7}.site-footer{padding-bottom:105px}.city-card{min-height:430px}}
@media(max-width:560px){h1{font-size:3rem}h2{font-size:2.45rem}.brand-copy strong{font-size:.95rem}.brand-copy small{font-size:.52rem}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-facts{display:grid;grid-template-columns:1fr 1fr}.hero-visual{padding:0}.hero-seal{right:12px;top:14px;width:108px;height:108px}.urgent-inner>div{grid-template-columns:auto 1fr}.urgent-inner p{grid-column:2}.practice-card{padding:26px}.about-statement{padding:45px 28px}.about-statement p{font-size:1.85rem}.credentials,.principles-grid,.action-grid,.bio-grid{grid-template-columns:1fr}.principles-grid article,.action-grid article,.bio-grid article{min-height:auto;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.action-grid article,.bio-grid article{border-color:var(--line)}.principles-grid h3,.action-grid h3,.bio-grid h3{margin-top:32px}.process-list li{grid-template-columns:55px 1fr}.contact-form{padding:25px 20px}.footer-grid{grid-template-columns:1fr}.footer-main{grid-column:auto}.factors-grid{grid-template-columns:1fr}.city-card strong{font-size:3.2rem}.price-row{grid-template-columns:1fr}.price-row strong{margin-top:5px}}

/* Brand identity v1 */
.brand-logo{width:clamp(205px,19vw,270px);height:58px;align-items:center;flex:0 0 auto}
.brand-logo img{display:block;width:100%;height:auto;max-height:58px;object-fit:contain;object-position:left center}
.brand-footer{width:min(100%,300px);height:auto}
.brand-footer img{display:block;width:100%;height:auto;object-fit:contain;object-position:left center}
.portrait-brand-icon{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);width:min(65%,300px);height:auto;opacity:.88;filter:saturate(.85) contrast(1.04);border-radius:22%}
.profile-brand-icon{width:160px;height:160px;object-fit:cover;border-radius:28px;margin-bottom:auto;box-shadow:0 18px 45px rgba(0,0,0,.25)}
@media(max-width:1120px){.brand-logo{width:230px}}
@media(max-width:820px){.brand-logo{width:215px;height:48px}.brand-logo img{max-height:48px}}
@media(max-width:420px){.brand-logo{width:188px}.brand-logo img{max-height:44px}.portrait-brand-icon{width:62%}.profile-brand-icon{width:135px;height:135px}}
.brand-logo,.brand-footer{min-width:0}
.brand-footer{display:block;width:280px;max-width:100%}
.footer-main .brand-footer img{width:280px;max-width:100%;height:auto}
@media(max-width:560px){.brand-footer,.footer-main .brand-footer img{width:245px}}


/* Portrait photo and media section v3 */
.portrait-photo-frame{background:#11171d}
.portrait-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(1.02) contrast(1.04)}
.portrait-photo-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,18,23,.82) 0%,rgba(14,18,23,.25) 36%,rgba(14,18,23,0) 60%);z-index:1}
.portrait-photo-frame .portrait-label{z-index:2}
.profile-card-photo{padding:0;overflow:hidden;justify-content:flex-end}
.profile-photo{width:100%;height:100%;object-fit:cover;object-position:center top;position:absolute;inset:0}
.profile-card-copy{position:relative;z-index:1;margin-top:auto;padding:28px 30px;background:linear-gradient(to top,rgba(8,11,14,.92),rgba(8,11,14,.72),rgba(8,11,14,.1))}
.media-preview{background:var(--white)}
.media-grid,.media-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.media-card,.publication-card{background:var(--white);border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;min-height:320px;box-shadow:0 12px 40px rgba(16,20,23,.05)}
.media-card h3,.publication-card h3{font:1.9rem Georgia,serif;font-weight:400;margin:18px 0 14px}
.media-card p,.publication-card p{color:var(--muted);margin-bottom:0}
.media-type,.publication-meta{display:inline-flex;align-items:center;gap:10px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.media-type:before,.publication-meta:before{content:'';width:26px;height:1px;background:currentColor}
.media-card-dark{background:var(--ink);color:var(--white);border-color:rgba(255,255,255,.08)}
.media-card-dark p{color:rgba(255,255,255,.62)}
.text-link-light{color:var(--white);border-color:rgba(255,255,255,.45)}
.publication-footer{margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.publication-card-note{background:var(--soft)}
.media-band{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:start}
.archive-note{background:var(--white);padding:34px;border:1px solid var(--line)}
.archive-note strong{display:block;font:1.45rem Georgia,serif;margin-bottom:12px}
.archive-note p{color:var(--muted);margin:0}
.media-archive-soft{background:var(--white)}
@media(max-width:1120px){.media-grid,.media-archive-grid{grid-template-columns:1fr 1fr}.media-card-dark{grid-column:1/-1}.media-band{grid-template-columns:1fr}}
@media(max-width:820px){.media-grid,.media-archive-grid,.media-band{grid-template-columns:1fr}.publication-footer{flex-direction:column}.portrait-photo{object-position:center 20%}}


/* Real media archive and production form v4 */
.publication-top{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.media-badge{display:grid;place-items:center;flex:0 0 auto;width:52px;height:52px;background:var(--ink);color:var(--white);font:1rem Georgia,serif;letter-spacing:.04em}
.publication-top>div{display:flex;flex-direction:column;line-height:1.35}
.publication-media{font-weight:800;font-size:.9rem}
.publication-top time{font-size:.78rem;color:var(--muted);margin-top:2px}
.publication-card h3{font-size:1.65rem}
.publication-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--accent)}
.publication-link svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7}
.media-card.publication-card{min-height:390px}
.media-card.publication-card .publication-footer{margin-top:auto}
.section-cta{display:flex;justify-content:center;margin-top:36px}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-form button:disabled{opacity:.65;cursor:wait;transform:none}
@media(max-width:560px){.publication-card h3{font-size:1.45rem}.media-card.publication-card{min-height:auto}}


/* SEO UX v6 */
.breadcrumbs{display:flex;align-items:center;gap:9px;margin-bottom:20px;color:rgba(255,255,255,.58);font-size:.76rem}
.breadcrumbs a{color:#d3b88d;border-bottom:1px solid rgba(211,184,141,.35)}
.breadcrumbs a:hover{border-color:#d3b88d}
.portrait-photo-frame picture,.profile-card-photo picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.portrait-photo-frame picture .portrait-photo,.profile-card-photo picture .profile-photo{width:100%;height:100%;object-fit:cover}
@media(max-width:560px){.breadcrumbs{margin-bottom:16px;flex-wrap:wrap}}

/* Mobile header alignment fix v10 */
@media(max-width:820px){
  .header-inner{gap:14px;justify-content:flex-start}
  .brand-logo{width:min(215px,calc(100vw - 92px));height:48px}
  .menu-toggle{margin-left:auto;flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;padding:0;border-radius:2px}
  .menu-toggle svg{width:28px;height:28px}
}
@media(max-width:420px){
  .brand-logo{width:min(190px,calc(100vw - 86px))}
  .header-inner{gap:10px}
}




/* v17 final public audit */
.profile-card-photo{position:sticky;padding:0;overflow:hidden;min-height:560px}
.profile-card-copy{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:30px 30px 28px;background:linear-gradient(to top,rgba(8,11,14,.96) 0%,rgba(8,11,14,.82) 66%,rgba(8,11,14,0) 100%)}
.profile-card-copy strong{display:block;max-width:none;margin:0;font:400 clamp(1.72rem,2.35vw,2.15rem)/1.04 Georgia,'Times New Roman',serif;color:#fff;letter-spacing:-.02em}
.profile-card-meta{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:13px}
.profile-card-copy .profile-card-meta span{display:block;margin:0;color:rgba(255,255,255,.72);font-size:.86rem;line-height:1.3}
.process-list li:has(h3:only-child){align-items:center}
.process-list li:has(h3:only-child) h3{margin-bottom:0}
@media(max-width:820px){.profile-card-photo{position:relative;min-height:520px}.profile-card-copy{padding:28px 24px 24px}.profile-card-copy strong{font-size:clamp(1.75rem,7vw,2.35rem)}.profile-card-meta{flex-direction:column;gap:2px}}
@media(max-width:480px){.profile-card-photo{min-height:460px}.profile-card-copy{padding:24px 20px 22px}.profile-card-copy strong{font-size:1.9rem}.profile-card-copy .profile-card-meta span{font-size:.82rem}}


/* v18 articles and trust */
.articles-preview{background:var(--soft)}
.articles-preview-grid,.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.article-preview-card,.article-card{display:flex;flex-direction:column;min-height:340px;padding:30px;background:var(--white);border:1px solid var(--line)}
.article-preview-card>span,.article-card-type{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.article-preview-card h3,.article-card h3{margin:30px 0 16px;font:400 1.75rem/1.15 Georgia,'Times New Roman',serif}
.article-preview-card p,.article-card p{color:var(--muted)}
.article-preview-card>a,.article-card-footer a,.related-article>a{display:inline-flex;align-items:center;gap:9px;margin-top:auto;font-weight:800;color:var(--accent)}
.article-preview-card>a svg,.article-card-footer svg,.related-article>a svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7}
.article-card-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;padding-top:22px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}
.article-card-footer a{margin-top:0}
.trust-editorial-grid,.trust-verification-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.trust-editorial-grid>div:first-child p,.trust-verification-grid>div:first-child p{color:var(--muted);max-width:620px}
.trust-points,.verification-links{display:grid;border-top:1px solid var(--ink)}
.trust-points article,.verification-links a{padding:23px 0;border-bottom:1px solid var(--line)}
.trust-points strong,.verification-links strong{display:block;font:400 1.3rem Georgia,'Times New Roman',serif}
.trust-points p,.verification-links span{display:block;margin:7px 0 0;color:var(--muted);font-size:.9rem}
.verification-links a{position:relative;padding-right:35px}
.verification-links a:after{content:'↗';position:absolute;right:4px;top:24px;color:var(--accent)}
.article-hero{position:relative;overflow:hidden;background:var(--ink);color:var(--white);padding:105px 0 90px}
.article-hero-inner{position:relative;max-width:1050px}
.article-hero h1{max-width:960px;font-size:clamp(3.2rem,6vw,6.4rem);margin-bottom:28px}
.article-hero p{max-width:820px;color:rgba(255,255,255,.67);font-size:1.18rem}
.article-meta{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:.78rem;color:rgba(255,255,255,.56)}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:80px;align-items:start}
.article-content{max-width:800px}
.article-content h2{font-size:clamp(2rem,3.3vw,3.15rem);margin:60px 0 22px}
.article-content h3{font:400 1.45rem Georgia,'Times New Roman',serif;margin-bottom:8px}
.article-content p{color:#4f514f;font-size:1.04rem}
.article-intro{font-size:1.28rem!important;line-height:1.65!important;color:var(--ink)!important}
.article-warning{margin:38px 0;padding:28px 30px;background:var(--accent);color:#fff}
.article-warning strong{display:block;font:400 1.5rem Georgia,'Times New Roman',serif}
.article-warning p{color:rgba(255,255,255,.75);margin:8px 0 14px}
.article-warning a{font-weight:800;border-bottom:1px solid rgba(255,255,255,.65)}
.article-steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--ink)}
.article-steps li{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}
.article-steps li>span{font:400 1rem Georgia,serif;color:var(--accent)}
.article-steps p{margin-bottom:0}
.article-mistakes{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}
.article-mistakes li{position:relative;padding:17px 0 17px 28px;border-bottom:1px solid var(--line)}
.article-mistakes li:before{content:'—';position:absolute;left:0;color:var(--accent)}
.article-law-note{margin:42px 0;padding:30px;border-left:3px solid var(--accent2);background:var(--soft)}
.article-law-note span{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.article-law-note p{margin:12px 0 0}
.article-service-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:52px;padding:30px;background:var(--ink);color:#fff}
.article-service-cta span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent2)}
.article-service-cta h3{margin:8px 0 6px;color:#fff}
.article-service-cta p{margin:0;color:rgba(255,255,255,.62);font-size:.9rem}
.article-sources{margin-top:60px;padding-top:10px;border-top:1px solid var(--ink)}
.article-sources ul{list-style:none;margin:0;padding:0}
.article-sources li{display:flex;flex-direction:column;padding:18px 0;border-bottom:1px solid var(--line)}
.article-sources a{font-weight:800;color:var(--accent)}
.article-sources li span{margin-top:5px;color:var(--muted);font-size:.85rem}
.article-disclaimer{margin-top:28px!important;font-size:.84rem!important;color:var(--muted)!important}
.article-sidebar{position:sticky;top:110px;display:grid;gap:22px}
.article-author-card{background:var(--ink);color:#fff;overflow:hidden}
.article-author-card picture{display:block;aspect-ratio:1.05;overflow:hidden}
.article-author-card img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.article-author-card>div{padding:26px}
.article-author-card span,.verification-card>span{font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent2)}
.article-author-card h2{font-size:2rem;margin:12px 0}
.article-author-card p{color:rgba(255,255,255,.6);font-size:.9rem}
.article-author-card a{display:inline-flex;margin-top:8px;padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.45);font-weight:800}
.verification-card{padding:27px;background:var(--white);border:1px solid var(--line)}
.verification-card p{color:var(--muted);font-size:.9rem}
.verification-card a{display:block;padding:12px 0;border-top:1px solid var(--line);font-weight:800;font-size:.86rem}
.related-articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.related-article{display:flex;flex-direction:column;min-height:260px;padding:28px;background:var(--white);border:1px solid var(--line)}
.related-article>span{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:var(--accent)}
.related-article h3{margin:28px 0;font:400 1.45rem/1.2 Georgia,'Times New Roman',serif}
.service-article-callout{background:var(--soft);padding:72px 0}
.service-article-callout-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}
.service-article-callout h2{font-size:clamp(2.1rem,3.5vw,3.5rem);margin-bottom:14px}
.service-article-callout p{max-width:760px;color:var(--muted);margin-bottom:0}
@media(max-width:1120px){.articles-preview-grid,.articles-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:minmax(0,1fr) 300px;gap:45px}.related-articles-grid{grid-template-columns:1fr 1fr}.related-article:last-child{grid-column:1/-1}}
@media(max-width:820px){.articles-preview-grid,.articles-grid,.trust-editorial-grid,.trust-verification-grid,.article-layout,.related-articles-grid{grid-template-columns:1fr}.article-sidebar{position:static;grid-row:1}.article-author-card{display:grid;grid-template-columns:160px 1fr}.article-author-card picture{aspect-ratio:auto;height:100%}.related-article:last-child{grid-column:auto}.service-article-callout-inner{align-items:flex-start;flex-direction:column}.article-service-cta{align-items:flex-start;flex-direction:column}.article-hero{padding:80px 0 70px}}
@media(max-width:560px){.article-preview-card,.article-card{min-height:auto;padding:25px}.article-card-footer{align-items:flex-start;flex-direction:column}.article-author-card{grid-template-columns:1fr}.article-author-card picture{height:300px}.article-steps li{grid-template-columns:42px 1fr}.article-warning,.article-law-note,.article-service-cta{padding:23px 20px}.article-meta{flex-direction:column;gap:5px}.article-content h2{margin-top:48px}}


/* v21 mobile polish: about page */
@media(max-width:820px){
  .about-page .inner-hero{padding:58px 0 62px}
  .about-page .inner-hero-grid{gap:0}
  .about-page .inner-side-note{display:none}
  .about-page .inner-hero h1{font-size:clamp(2.75rem,12vw,3.45rem);line-height:.98;margin-bottom:22px;overflow-wrap:normal;word-break:normal}
  .about-page .inner-hero p{font-size:1.04rem;line-height:1.55;margin-bottom:0}
  .about-page .breadcrumbs{margin-bottom:18px}
  .about-page .hero-actions{margin-top:30px}
  .about-page .about-bio-section{padding:44px 0 68px}
  .about-page .about-page-grid{gap:34px}
  .about-page .profile-card-photo{position:relative;top:auto;min-height:0;aspect-ratio:4/5;width:100%;max-width:520px;margin:0 auto;box-shadow:0 20px 55px rgba(17,21,24,.16)}
  .about-page .profile-card-photo picture{z-index:0}
  .about-page .profile-card-photo picture .profile-photo{object-position:center 12%}
  .about-page .profile-card-copy{padding:54px 24px 24px;background:linear-gradient(to top,rgba(8,11,14,.96) 0%,rgba(8,11,14,.74) 55%,rgba(8,11,14,0) 100%)}
  .about-page .profile-card-copy strong{font-size:clamp(1.75rem,7.4vw,2.2rem);line-height:1.02;max-width:100%}
  .about-page .profile-card-meta{flex-direction:row;gap:6px 14px;margin-top:12px}
  .about-page .profile-card-copy .profile-card-meta span{font-size:.86rem}
  .about-page .prose h2{font-size:clamp(2.25rem,9.6vw,3rem);line-height:1.02;margin-bottom:24px}
  .about-page .prose .lead{font-size:1.08rem;line-height:1.62}
  .about-page .prose p{font-size:1rem;line-height:1.68}
  .about-page .prose blockquote{margin:36px 0 0;padding-top:24px;font-size:1.48rem;line-height:1.38}
  .about-page .section-soft{padding:68px 0}
  .about-page .section-soft .section-heading{margin-bottom:32px}
  .about-page .section-soft .section-heading h2{font-size:clamp(2.25rem,9.5vw,2.9rem)}
}
@media(max-width:480px){
  .about-page .inner-hero{padding:48px 0 54px}
  .about-page .inner-hero h1{font-size:2.78rem}
  .about-page .about-bio-section{padding-top:32px}
  .about-page .profile-card-copy{padding:48px 20px 21px}
  .about-page .profile-card-copy strong{font-size:1.84rem}
  .about-page .profile-card-meta{flex-direction:column;gap:1px}
  .about-page .prose h2{font-size:2.35rem}
}


/* v23 full mobile audit fixes */
/* Restored service-card layout that was lost between builds. */
.seo-related{background:var(--white)}
.seo-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.seo-service-card{display:flex;flex-direction:column;min-width:0;min-height:300px;padding:30px;border:1px solid var(--line);background:var(--white);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.seo-service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(137,56,61,.35)}
.seo-service-card>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--accent)}
.seo-service-card h3{font:400 1.65rem/1.18 Georgia,'Times New Roman',serif;margin:28px 0 14px}
.seo-service-card p{color:var(--muted);font-size:.9rem;margin-bottom:24px}
.seo-service-card strong{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:.82rem}
.seo-service-card strong svg{flex:0 0 auto;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.section-cta{margin-top:30px}
@media(max-width:980px){.seo-service-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.seo-service-grid{grid-template-columns:1fr}.seo-service-card{min-height:auto;padding:25px}}

/* Contact portrait and publication archive refinements. */
.contact-portrait-card{display:block;min-width:0}
.contact-portrait-frame{min-height:560px;padding:0;box-shadow:var(--shadow)}
.contact-portrait-frame .portrait-label{left:30px;right:30px;bottom:26px}
.contact-portrait-frame .portrait-label span{font-size:1.85rem;line-height:1.05}
.contact-portrait-frame .portrait-label small{font-size:.96rem;color:rgba(255,255,255,.72)}
.contact-seal{right:18px;top:18px;width:114px;height:114px}
.publication-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.publication-top-text{display:block}
.publication-top-text>div{display:grid;gap:6px}
.publication-media{font-size:1.18rem;font-weight:700;line-height:1.15;color:var(--ink);text-transform:none;letter-spacing:0}
.publication-top time{font-size:.86rem;color:var(--muted)}
.media-badge,.media-favicon{display:none!important}
.publication-card{padding:34px 38px;min-height:345px}
.publication-card .publication-meta{margin-bottom:10px}
.publication-link{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-weight:700}
.publication-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
@media(max-width:820px){.contact-portrait-frame{min-height:470px}.contact-portrait-frame .portrait-label span{font-size:1.6rem}}
@media(max-width:560px){.contact-portrait-frame{min-height:400px}.contact-seal{right:12px;top:12px;width:96px;height:96px}.publication-card{padding:26px 22px}.publication-media{font-size:1.05rem}}

/* Publication filters restored; all logic remains local in script.js. */
.media-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 34px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.media-filter{appearance:none;border:1px solid var(--line);background:rgba(255,255,255,.45);color:var(--ink);min-height:44px;padding:0 17px;border-radius:999px;font:700 .78rem/1 Inter,Arial,sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
.media-filter:hover{border-color:var(--accent);transform:translateY(-1px)}
.media-filter.is-active{background:var(--accent);border-color:var(--accent);color:#fff}
.publication-card[hidden]{display:none}
@media(max-width:560px){.media-filters{display:grid;grid-template-columns:1fr 1fr}.media-filter{width:100%;padding:0 10px}.media-filter:first-child{grid-column:1/-1}}

/* Larger, easier mobile consent control. */
@media(max-width:820px){.contact-form .consent{gap:10px;min-height:44px;align-items:flex-start}.consent input{flex:0 0 auto;width:22px;height:22px;margin-top:1px}}
