@font-face{font-family:Editorial;src:url('assets/editorial.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Editorial;src:url('assets/editorial-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Sans;src:url('assets/sans.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Sans;src:url('assets/sans-bold.woff') format('woff');font-weight:600 800;font-style:normal;font-display:swap}
:root{--ink:#172021;--ink-deep:#111819;--paper:#f3f2ed;--text:#252e2e;--muted:#5d6562;--gold:#d3b27b;--gold-dark:#785b30;--line:#d6d7ce;--white:#fcfcf8;--serif:Editorial,Palatino,'Palatino Linotype',Georgia,serif;--sans:Sans,Arial,Helvetica,sans-serif;--gutter:clamp(1.4rem,5.5vw,6rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--ink);color:var(--text);font-family:var(--sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400}em{font-weight:400}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold-dark);outline-offset:7px}.hero a:focus-visible,.site-header a:focus-visible,.site-header button:focus-visible,.contact a:focus-visible,.site-footer a:focus-visible{outline-color:var(--gold)}::selection{background:var(--gold);color:var(--ink)}.wrap{width:min(100% - var(--gutter)*2,1320px);margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-6rem;padding:.8rem 1.1rem;background:var(--white);color:var(--ink);z-index:100}.skip-link:focus{top:1rem}
.site-header{position:relative;z-index:10;background:var(--ink);color:var(--white)}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid #ffffff22}.brand{display:inline-flex;flex-direction:column;flex-shrink:0;line-height:1.3}.brand-name{font-family:var(--serif);font-size:1.95rem;letter-spacing:-.055rem}.brand-sub{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;margin-top:.25rem;color:#c6ccc6}.brand-sub>span{display:inline-block;margin-inline:.5rem;color:var(--gold)}.navigation{display:flex;align-items:center;gap:2.8rem;font-size:.875rem}.navigation>a{transition:color .2s}.navigation>a:hover{color:var(--gold)}.nav-contact{border:1px solid #d3b27b77;padding:.65rem 1.2rem;display:flex;align-items:center;gap:1.6rem}.nav-contact>span{color:var(--gold);font-size:1.2rem}.menu-toggle{display:none;background:none;border:0;color:inherit}
.hero{color:var(--white);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:4rem;padding-top:3.5rem;padding-bottom:3rem}.hero-copy{position:relative;z-index:1;padding-block:1.6rem}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;display:flex;align-items:center;gap:.9rem;line-height:1.5}.eyebrow>span:not(.eyebrow-line){color:var(--gold-dark)}.hero .eyebrow{color:var(--gold);margin-bottom:2rem}.eyebrow-line{display:block;width:2.2rem;height:1px;background:var(--gold)}h1{font-size:clamp(3.5rem,5.2vw,5rem);line-height:1.05;letter-spacing:-.045em}h1 em{color:var(--gold)}.hero-description{max-width:440px;font-size:1.06rem;color:#c3cbc7;line-height:1.75;margin-top:1.7rem}.button{display:inline-flex;gap:1.8rem;align-items:center;justify-content:space-between;min-height:54px;padding:.9rem 1.45rem;font-size:.875rem;line-height:1.4;transition:background .2s,transform .2s;max-width:100%}.button>span{font-size:1.45rem;line-height:1}.button-gold{background:var(--gold);color:var(--ink-deep)}.button-gold:hover{background:#e6c998;transform:translateY(-2px)}.hero .button{margin-top:2rem}.hero-signature{font-size:.875rem;color:#d9ded7;margin-top:2.6rem;line-height:1.6}.hero-signature span{display:block;color:#a8b3ad;font-size:.75rem;letter-spacing:.08em;margin-top:.2rem}.hero-visual{position:relative;align-self:stretch;min-height:570px;isolation:isolate;overflow:hidden;background:#29302d}.hero-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 42%;filter:brightness(.86)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,#101a18bb);z-index:0}.hero-visual figcaption{position:absolute;bottom:2.1rem;left:2.1rem;right:1rem;display:flex;gap:.9rem;align-items:center;z-index:1;font-size:.875rem;line-height:1.65;color:var(--white)}.visual-caption-rule{height:2.6rem;width:1px;background:var(--gold);flex-shrink:0}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding-top:1.4rem;padding-bottom:1.6rem;border-top:1px solid #ffffff22;font-size:.75rem;letter-spacing:.08em;color:#acb9b0}.hero-bottom>a{display:flex;align-items:center;gap:2rem;color:#e0e5de}.hero-bottom>a:hover{color:var(--gold)}.hero-bottom>a>span{font-size:1.3rem}
.section-light{background:var(--paper)}.practice{padding-block:6.5rem 4.5rem}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:4rem;margin-bottom:3.5rem}.section-heading .eyebrow,.about .eyebrow{color:var(--muted);margin-bottom:1.6rem}h2{font-size:clamp(2.5rem,3.45vw,3.35rem);line-height:1.15;letter-spacing:-.035em}h2 em{color:var(--gold-dark)}.section-intro{max-width:420px;color:var(--muted);line-height:1.8;padding-bottom:.2rem;font-size:1rem}
.about{padding-bottom:6.5rem}.about-inner{border-top:1px solid var(--line);padding-top:4.5rem;display:grid;grid-template-columns:1.2fr 1fr;gap:4rem}.about .registration{margin-top:1.2rem;font-size:.875rem;color:var(--muted)}.registration>span{color:var(--gold-dark);margin-inline:.6rem}.location-label{display:flex;align-items:center;gap:.6rem;font-size:.875rem;margin-top:2rem;color:var(--muted)}.location-label>svg{width:18px;height:20px;flex-shrink:0;color:var(--gold-dark)}.about-copy{padding-top:.2rem}.about-copy>p{margin-bottom:1.25rem;color:var(--muted);font-size:1rem;line-height:1.8}.about-copy>.about-lead{font-family:var(--serif);font-size:1.8rem;color:var(--ink);line-height:1.3;letter-spacing:-.02em;margin-bottom:1.5rem}.text-link{display:inline-flex;gap:2.5rem;align-items:center;padding-bottom:.4rem;border-bottom:1px solid var(--gold-dark);font-size:.875rem;margin-top:.3rem}.text-link:hover{color:var(--gold-dark)}.text-link>span{font-size:1.3rem;color:var(--gold-dark)}
.contact{background:var(--ink);color:var(--white);padding-block:6rem}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem}.contact .eyebrow{color:var(--gold);margin-bottom:1.8rem}.contact .eyebrow>span{color:var(--gold)}.contact h2{font-size:clamp(2.8rem,3.8vw,3.7rem)}.contact h2 em{color:var(--gold)}.contact-intro>p:not(.eyebrow){max-width:350px;color:#b9c5be;margin-top:1.6rem}.contact-intro .button{margin-top:2rem;min-width:207px}.contact-channels{padding-top:1.5rem;align-self:center}.contact-item{display:block;position:relative;border-top:1px solid #ffffff26;padding:1.5rem 1.9rem 1.65rem 0;transition:color .2s}.contact-label{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;color:var(--gold);margin-bottom:.65rem}.contact-value{font-size:1.5rem;line-height:1.4;display:block}.email-value{font-size:clamp(.95rem,1.4vw,1.22rem);overflow-wrap:anywhere}.channel-arrow{position:absolute;top:2.7rem;right:0;color:var(--gold);font-size:1.4rem}.contact-item[href]:hover{color:var(--gold)}.contact-item address{font-style:normal;color:#c0ccc4;font-size:1rem;line-height:1.8}.address-item{padding-bottom:0}
.site-footer{background:var(--ink-deep);color:var(--white);padding-top:3rem}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-bottom:2.5rem}.footer-main>.brand .brand-name{font-size:1.6rem}.footer-main>p{font-size:.875rem;color:#c0cac2;line-height:1.8}.footer-main>p>span{font-size:.75rem;color:#9eaaa2}.back-top{font-size:.875rem;display:flex;gap:1.8rem;align-items:center;color:#c0cac2}.back-top:hover{color:var(--gold)}.back-top>span{font-size:1.25rem;color:var(--gold)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:1.4rem;border-top:1px solid #ffffff20;font-size:.75rem;color:#a5b0a8}
@media(min-width:1550px){.hero-inner{gap:5.5rem}.hero-visual{min-height:630px}}
@media(max-width:1100px){.hero-inner{gap:2rem;grid-template-columns:1.15fr 1fr}.hero-visual{min-height:540px}h1{font-size:clamp(3.3rem,5.6vw,4.5rem)}.navigation{gap:1.5rem}.brand-name{font-size:1.65rem}.section-heading,.about-inner,.contact-inner{gap:3rem;grid-template-columns:1fr 1fr}}
@media(max-width:800px){html{scroll-padding-top:1rem}.header-inner{min-height:94px;flex-wrap:wrap;gap:0}.brand-name{font-size:1.8rem}.menu-toggle{display:flex;align-items:center;gap:.8rem;padding:.75rem 0 .75rem .75rem;font-size:.875rem}.menu-icon{position:relative;width:21px;height:16px}.menu-icon:before,.menu-icon:after{content:'';width:21px;height:1px;background:var(--gold);position:absolute;left:0;transition:transform .2s;top:4px}.menu-icon:after{top:12px}.menu-toggle[aria-expanded=true] .menu-icon:before{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:translateY(-4px) rotate(-45deg)}.navigation{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;padding-bottom:1.25rem}.js .navigation{display:none}.js .navigation.is-open{display:flex}.navigation>a{padding:.9rem 0;font-size:1rem}.navigation>.nav-contact{margin-top:.4rem;padding:.75rem 1rem;justify-content:space-between}.hero-inner{padding-top:2.5rem;grid-template-columns:1fr 1fr;gap:1.6rem}.hero-copy{padding-block:.4rem}h1{font-size:clamp(2.75rem,5.6vw,3.8rem)}.hero .eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:1.7rem}.eyebrow-line{width:1.3rem}.hero-description{font-size:1rem}.hero-visual{min-height:535px}.hero-visual figcaption{left:1.3rem;bottom:1.4rem;font-size:.75rem}.hero .button{gap:1rem;padding:.85rem 1rem;font-size:.875rem}.hero-signature{margin-top:2rem}.practice{padding-top:4.5rem}.section-heading{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem}.section-intro{max-width:520px}.about-inner{gap:2.5rem}.about-copy>.about-lead{font-size:1.6rem}.contact-inner{gap:2.2rem}.contact h2{font-size:2.85rem}.footer-main{flex-wrap:wrap}.footer-main>.brand{width:45%}.footer-main>p{width:45%;text-align:right}.back-top{margin-left:auto}.footer-bottom{flex-wrap:wrap;gap:.65rem}}
@media(max-width:600px){:root{--gutter:1.5rem}.header-inner{min-height:89px}.brand-name{font-size:1.65rem}.brand-sub{font-size:.75rem;letter-spacing:.1em}.hero-inner{grid-template-columns:1fr;padding-top:2.25rem;padding-bottom:1.5rem;gap:2.3rem}.hero-copy{padding:0}.hero .eyebrow{margin-bottom:1.7rem}h1{font-size:clamp(3.25rem,10vw,4.75rem);line-height:1.08}.hero-description{max-width:470px;margin-top:1.5rem;font-size:1rem}.hero .button{margin-top:1.7rem;padding:.95rem 1.25rem}.hero-signature{margin-top:1.75rem}.hero-signature span{display:inline-block;margin-left:.65rem}.hero-visual{min-height:300px;aspect-ratio:1.2}.hero-visual>img{object-position:center 58%}.hero-visual figcaption{font-size:.875rem;bottom:1.5rem;left:1.5rem}.hero-bottom{font-size:.75rem;padding-block:1.1rem;gap:1rem}.hero-bottom>span{max-width:150px;letter-spacing:0}.hero-bottom>a{gap:.85rem;letter-spacing:0}.practice{padding-block:4rem 3rem}h2{font-size:2.7rem}.section-heading .eyebrow,.about .eyebrow{margin-bottom:1.4rem}.section-intro{line-height:1.7}.about{padding-bottom:4rem}.about-inner{grid-template-columns:1fr;padding-top:3rem;gap:2.2rem}.about-copy>.about-lead{font-size:1.8rem;max-width:380px}.location-label{margin-top:1.2rem}.contact{padding-block:4rem}.contact-inner{grid-template-columns:1fr;gap:2.6rem}.contact h2{font-size:3.3rem}.contact-intro>p:not(.eyebrow){max-width:400px}.contact-channels{padding-top:0}.contact-value{font-size:1.45rem}.email-value{font-size:1.03rem}.contact-item{padding-block:1.3rem}.channel-arrow{top:2.4rem}.footer-main{gap:1.5rem;padding-bottom:2rem;align-items:flex-start}.footer-main>.brand{width:100%}.footer-main>p{width:auto;text-align:left}.back-top{margin-top:.1rem;gap:.8rem}.footer-bottom{font-size:.75rem;line-height:1.7}}
.header-inner{flex-wrap:wrap;padding-block:1.25rem;row-gap:1rem}.brand{flex-shrink:1;min-width:0;max-width:100%;overflow-wrap:break-word}.navigation{flex-wrap:wrap}.menu-toggle{min-height:44px}.hero-copy,.hero-visual,.section-heading>div,.about-identity,.about-copy,.contact-intro,.contact-channels{min-width:0}h1,h2{overflow-wrap:break-word}
.whatsapp-icon{width:24px;height:24px;flex-shrink:0}.nav-whatsapp{gap:.7rem}.nav-whatsapp>span{margin-left:.4rem}.nav-whatsapp .whatsapp-icon{width:22px;height:22px}.button-whatsapp{background:#167548;color:#fff;gap:.8rem}.button-whatsapp>span{margin-left:.5rem}.button-whatsapp:hover{background:#1b8856;transform:translateY(-2px)}.whatsapp-floating{position:fixed;right:1.5rem;bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));z-index:30;display:flex;align-items:center;justify-content:center;gap:.7rem;min-height:58px;padding:.9rem 1.2rem;border:1px solid #ffffff30;border-radius:99px;background:#167548;color:#fff;box-shadow:0 5px 22px #0003;font-size:.875rem;line-height:1.3;transition:background .2s,transform .2s}.whatsapp-floating>img{width:28px;height:28px;flex-shrink:0}.whatsapp-floating:hover{background:#1b8856;transform:translateY(-3px)}.whatsapp-floating:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.site-footer{padding-bottom:5.5rem}
@media(max-width:600px){.whatsapp-floating{width:58px;padding:0;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px))}.whatsapp-floating>span{display:none}.button-whatsapp{font-size:.875rem;padding:.9rem 1.1rem;gap:.7rem}.navigation>.nav-whatsapp{justify-content:flex-start}.navigation>.nav-whatsapp>span{margin-left:auto}}
.hero-visual--portrait{min-height:0;aspect-ratio:4/5;align-self:center;width:100%;background:var(--ink)}.hero-visual--portrait>img{filter:none;object-fit:contain;object-position:center}.hero-visual--portrait:after{background:linear-gradient(180deg,transparent 68%,#111819d9)}.hero-visual--portrait figcaption{font-size:.875rem;line-height:1.65}.portrait-name{display:block;color:var(--white)}.portrait-registration{display:block;color:#dde4de;font-size:.75rem;letter-spacing:.05em;margin-top:.1rem}

/* Subject-based practice navigation */
.practice-explorer{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:1.5rem;align-items:start}
.practice-menu{display:grid;gap:.7rem;min-width:0;scroll-margin-top:2rem}
.area-tab{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:1rem;align-items:center;min-height:88px;padding:1rem 1.15rem;background:#fafbf7;border:1px solid var(--line);border-radius:8px;transition:background .2s,border-color .2s;color:var(--ink)}
.area-tab:hover{background:#e9ece4;border-color:#b7c0b3}
.area-tab-number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #bdc5b7;border-radius:50%;font-family:var(--serif);font-size:.95rem;color:var(--gold-dark)}
.area-tab-copy{min-width:0}.area-tab-label{display:block;font-size:1rem;line-height:1.4;font-weight:600;overflow-wrap:break-word}.area-tab-hint{display:block;font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:.2rem}.area-tab-arrow{font-size:1.8rem;font-family:var(--serif);line-height:1;color:var(--gold-dark)}
.area-tab.is-active{background:var(--ink);color:var(--white);border-color:var(--ink)}.area-tab.is-active .area-tab-hint{color:#c1ccc4}.area-tab.is-active .area-tab-number{color:var(--gold);border-color:#d3b27b77}.area-tab.is-active .area-tab-arrow{color:var(--gold)}.area-tab:focus-visible{outline-color:var(--gold-dark);outline-offset:4px}
.practice-panels{display:grid;gap:1.25rem;min-width:0}.area-panel{min-width:0;border:1px solid #d5dbd0;border-radius:10px;background:#fff;padding:2.1rem 2.25rem;scroll-margin-top:1.5rem}.area-panel[hidden]{display:none}.area-panel:focus-visible{outline:2px solid var(--gold-dark);outline-offset:4px}.area-specialty{font-size:.75rem;line-height:1.5;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-dark);margin-bottom:1rem}.area-panel>h3{margin:0;font-family:var(--serif);font-size:2.05rem;font-weight:400;line-height:1.22;letter-spacing:-.035em;overflow-wrap:break-word}.area-intro{font-size:1rem;line-height:1.75;color:var(--muted);margin-top:1rem}.area-list-label{margin-top:1.65rem;font-size:.875rem;font-weight:600;color:var(--ink)}
.area-services{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1.6rem}.area-services>li{min-width:0;padding-top:1rem;border-top:1px solid var(--line)}.area-services h4{font-size:1rem;line-height:1.45;font-weight:600;margin:0 0 .45rem;color:var(--ink)}.area-services p{font-size:1rem;line-height:1.65;color:var(--muted)}
.area-panel-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.8rem;padding-top:1.6rem;border-top:1px solid var(--line)}.area-panel-contact>.button{gap:.7rem;font-size:.875rem}.area-panel-contact>.button>img{width:22px;height:22px}.area-panel-contact>span{font-size:.875rem;line-height:1.5;color:var(--muted)}.area-change{display:none}
.practice-help{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem 0 0;margin-top:2rem;border-top:1px solid var(--line)}.practice-help h3{font-family:var(--serif);font-size:1.45rem;font-weight:400;letter-spacing:-.02em;line-height:1.3;margin:0 0 .5rem}.practice-help p{font-size:1rem;line-height:1.6;color:var(--muted)}.practice-help>.text-link{flex-shrink:0;margin-top:0;min-height:44px;gap:1.5rem}
@media(min-width:761px) and (max-width:1050px){.practice-explorer{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:1rem}.area-tab{gap:.7rem;padding:1rem .85rem}.area-panel{padding:1.75rem 1.5rem}.area-panel>h3{font-size:1.9rem}.area-services{grid-template-columns:1fr;gap:1.15rem}}
@media(max-width:760px){.practice-explorer{grid-template-columns:1fr;gap:1.4rem}.practice-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.area-tab{grid-template-columns:1fr;min-height:80px;padding:1rem}.area-tab-number,.area-tab-arrow,.area-tab-hint{display:none}.area-tab-label{font-size:1rem;line-height:1.4}.area-panel{padding:1.6rem}.js .area-change{display:inline-flex;min-height:44px;align-items:center;font-size:.875rem;color:var(--gold-dark);border-bottom:1px solid #d5c7b0;margin-bottom:1.4rem}.area-panel>h3{font-size:2rem}.practice-help{flex-direction:column;align-items:flex-start;gap:1rem}.practice-help>.text-link{align-self:flex-start}}
@media(max-width:520px){.area-tab{padding:.85rem .8rem}.area-panel{padding:1.4rem}.area-panel>h3{font-size:1.9rem}.area-services{grid-template-columns:1fr;gap:1rem}.area-panel-contact>.button{font-size:.875rem;padding:.9rem 1rem}.area-panel-contact>.button>span{margin-left:0}.area-panel-contact>.button>img{width:20px;height:20px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
