:root{--bg:#0a0a0a;--bg-elevated:#111;--bg-soft:#161616;--surface:#f5f5f5;--white:#fff;--text:#eaeaea;--text-dim:#9a9a9a;--text-dark:#111;--muted-dark:#666;--line:#ffffff1a;--line-dark:#0000001a;--font:"IBM Plex Sans", "Segoe UI", sans-serif;--font-display:"IBM Plex Serif", "Times New Roman", serif;--nav-h:4rem;--content:68rem;--section:clamp(4rem, 7vw, 6.5rem);--ease:cubic-bezier(.25, 1, .5, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}.container{width:min(100% - 2rem, var(--content));margin-inline:auto}.section{padding-block:var(--section)}.kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.75rem;font-size:.75rem;font-weight:500}.title{font-family:var(--font-display);letter-spacing:-.015em;margin-bottom:.85rem;font-size:clamp(1.85rem,3.8vw,2.55rem);font-weight:500;line-height:1.15}.lead{max-width:32rem;color:var(--text-dim);font-size:1.05rem;font-weight:300}.btn{border:1px solid #0000;justify-content:center;align-items:center;min-height:2.85rem;padding:.7rem 1.25rem;font-size:.9rem;font-weight:500;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.btn-light{background:var(--white);color:var(--bg)}.btn-light:hover{background:#dcdcdc}.btn-outline{color:var(--white);border-color:#ffffff59}.btn-outline:hover{border-color:var(--white)}.btn-dark{background:var(--bg);color:var(--white)}.btn-dark:hover{background:#222}.btn-ghost-dark{color:var(--text-dark);background:0 0;border:1px solid #0003}.btn-ghost-dark:hover{border-color:#000}.areas-preview{background:var(--surface);color:var(--text-dark)}.areas-preview .kicker,.areas-preview .lead{color:var(--muted-dark)}.preview-grid{background:var(--line-dark);border:1px solid var(--line-dark);gap:1px;margin-top:2.5rem;display:grid}.preview-card{background:var(--surface);padding:2rem 1.5rem;transition:background .25s;display:block}.preview-card:hover{background:#ececec}.preview-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:.85rem;font-size:.75rem;font-weight:500;display:block}.preview-card h3{font-family:var(--font-display);color:var(--text-dark);margin-bottom:.75rem;font-size:1.85rem;font-weight:500}.preview-card p{color:var(--muted-dark);max-width:28rem;margin-bottom:1.25rem;font-weight:300}.preview-link{border-bottom:1px solid #00000040;padding-bottom:.1rem;font-size:.9rem;font-weight:500}.page-hero{padding:calc(var(--nav-h) + 3.5rem) 0 2.5rem;background:var(--surface);color:var(--text-dark);border-bottom:1px solid var(--line-dark)}.page-hero .kicker,.page-hero .lead{color:var(--muted-dark)}.page-hero-dark{background:var(--bg);color:var(--white);border-bottom-color:var(--line)}.page-hero-dark .kicker,.page-hero-dark .lead{color:var(--text-dim)}.page-title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.85rem;font-size:clamp(2.4rem,5vw,3.4rem);font-weight:500;line-height:1.1}.page-section{padding-top:2.5rem}.page-section .practice-list{margin-top:0}.page-cta{border-top:1px solid var(--line-dark);flex-wrap:wrap;gap:.75rem;margin-top:2.5rem;padding-top:2rem;display:flex}.gestoria .page-cta{border-top-color:var(--line)}.site-header{z-index:40;height:var(--nav-h);border-bottom:1px solid #0000;transition:background .3s,border-color .3s;position:fixed;inset:0 0 auto}.site-header.is-scrolled{border-bottom-color:var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:#0a0a0a}.nav-inner{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.brand{font-family:var(--font-display);letter-spacing:.01em;color:var(--white);font-size:1.2rem;font-weight:500}.brand-sep{color:var(--text-dim);font-weight:400}.nav-links{gap:1.5rem;display:none}.nav-links a{color:var(--text-dim);font-size:.88rem;font-weight:400;transition:color .2s}.nav-links a:hover,.nav-links a.is-active{color:var(--white)}.nav-cta{display:none}.menu-toggle{width:2.5rem;height:2.5rem;color:var(--white);border:1px solid #fff3;place-items:center;display:grid}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{background:currentColor;width:1rem;height:1px;display:block;position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}.menu-toggle span:before{top:-5px}.menu-toggle span:after{top:5px}.menu-toggle.is-open span{background:0 0}.menu-toggle.is-open span:before{top:0;transform:rotate(45deg)}.menu-toggle.is-open span:after{top:0;transform:rotate(-45deg)}.mobile-nav{inset:var(--nav-h) 0 0;background:var(--bg);transition:transform .35s var(--ease);z-index:30;flex-direction:column;gap:1rem;padding:1.5rem;display:flex;position:fixed;transform:translate(100%)}.mobile-nav.is-open{transform:translate(0)}.mobile-nav a{border-bottom:1px solid var(--line);padding-bottom:.75rem;font-size:1.25rem}.hero{min-height:100svh;padding:calc(var(--nav-h) + 3rem) 0 4rem;isolation:isolate;align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero-media{z-index:-2;position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:center 35%;width:100%;height:100%}.hero-overlay{z-index:-1;background:linear-gradient(#0a0a0a8c 0%,#0a0a0a73 40%,#0a0a0ae0 100%);position:absolute;inset:0}.hero-inner{width:min(100% - 2rem, var(--content));margin:0 auto;position:relative}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;max-width:12ch;color:var(--white);margin-bottom:1.25rem;font-size:clamp(2.6rem,7vw,4.25rem);font-weight:500;line-height:1.05}.hero p{color:#ffffffc7;max-width:28rem;margin-bottom:2rem;font-size:1.08rem;font-weight:300}.hero-actions{flex-wrap:wrap;gap:.75rem;display:flex}.practices{background:var(--surface);color:var(--text-dark)}.practices .kicker,.practices .lead{color:var(--muted-dark)}.gestoria{background:var(--bg-elevated);border-top:1px solid var(--line)}.gestoria .kicker{color:var(--text-dim)}.gestoria .title{color:var(--white)}.gestoria .lead{color:var(--text-dim)}.gestoria .practice-list{border-top-color:var(--line)}.gestoria .practice-item{border-bottom-color:var(--line)}.gestoria .practice-item span{color:var(--text-dim)}.gestoria .practice-item h3{color:var(--white)}.gestoria .practice-item p{color:var(--text-dim)}.practice-list{border-top:1px solid var(--line-dark);margin-top:2.5rem}.practice-item{border-bottom:1px solid var(--line-dark);grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.25rem 0;display:grid}.practice-item span{color:var(--muted-dark);padding-top:.3rem;font-size:.85rem}.practice-item h3{font-family:var(--font-display);margin-bottom:.25rem;font-size:1.45rem;font-weight:500}.practice-item p{color:var(--muted-dark);max-width:38rem;font-weight:300}.ratings{background:var(--bg-elevated);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ratings .kicker{color:var(--text-dim)}.ratings .title{color:var(--white)}.ratings .lead{color:var(--text-dim)}.ratings-carousel{max-width:36rem;margin-top:2.25rem}.ratings-track{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:12.5rem;padding:1.75rem 0;animation:.45s ratingIn}.rating-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.85rem;font-size:.78rem;font-weight:500}.rating-score-row{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-bottom:.75rem;display:flex}.rating-score{font-family:var(--font-display);color:var(--white);letter-spacing:-.02em;font-size:clamp(2.75rem,6vw,3.5rem);font-weight:500;line-height:1}.rating-score span{color:var(--text-dim);margin-left:.2rem;font-size:1.15rem;font-weight:400}.stars{gap:.2rem;display:flex}.star{width:1.15rem;height:1.15rem;font-size:1.15rem;line-height:1;display:inline-block;position:relative}.star-empty{color:#fff3}.star-fill{color:var(--white);white-space:nowrap;position:absolute;top:0;left:0;overflow:hidden}.rating-detail{color:var(--text-dim);margin-bottom:1.15rem;font-weight:300}.rating-bar{background:#ffffff1f;height:2px;margin-bottom:.65rem}.rating-bar span{background:var(--white);height:100%;display:block}.rating-percent{color:var(--text);font-size:.92rem;font-weight:400}.ratings-controls{align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.ratings-nav{width:2.25rem;height:2.25rem;color:var(--white);border:1px solid #fff3;place-items:center;font-size:.95rem;transition:border-color .2s,background .2s;display:grid}.ratings-nav:hover{background:#ffffff0a;border-color:#ffffff8c}.ratings-dots{flex:1;justify-content:center;gap:.45rem;display:flex}.ratings-dots button{background:#ffffff38;border-radius:50%;width:.45rem;height:.45rem;transition:background .2s,transform .2s}.ratings-dots button.is-active{background:var(--white);transform:scale(1.15)}@keyframes ratingIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.lawyer{background:var(--bg);border-top:1px solid var(--line)}.lawyer-grid{gap:2rem;display:grid}.lawyer-photo{aspect-ratio:1;background:var(--bg-soft);max-width:28rem;overflow:hidden}.lawyer-photo img{object-fit:cover;object-position:center top;width:100%;height:100%}.lawyer-body h2{font-family:var(--font-display);margin-bottom:.4rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:500;line-height:1.1}.lawyer-role{color:var(--text-dim);margin-bottom:1.25rem;font-size:.9rem}.lawyer-body p{color:var(--text-dim);max-width:34rem;margin-bottom:1rem;font-weight:300}.lawyer-link{color:var(--white);border-bottom:1px solid #ffffff59;margin-top:.5rem;padding-bottom:.1rem;font-size:.95rem;display:inline-block}.lawyer-link:hover{border-bottom-color:var(--white)}.locations{background:var(--bg-elevated);border-top:1px solid var(--line)}.locations-grid{border-top:1px solid var(--line);gap:0;margin-top:2.25rem;display:grid}.location{border-bottom:1px solid var(--line);padding:1.5rem 0}.location h3{font-family:var(--font-display);margin-bottom:.4rem;font-size:1.5rem;font-weight:500}.location p{color:var(--text-dim);font-weight:300}.contact{background:var(--surface);color:var(--text-dark);border-top:1px solid var(--line-dark)}.contact .kicker,.contact .lead{color:var(--muted-dark)}.contact-grid{gap:2.5rem;margin-top:2.25rem;display:grid}.contact-info{gap:1.25rem;display:grid}.contact-info strong{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:.25rem;font-size:.75rem;font-weight:500;display:block}.contact-info a:hover{text-decoration:underline}.contact-form{gap:.9rem;display:grid}.field{gap:.35rem;display:grid}.field label{color:var(--muted-dark);font-size:.8rem}.field input,.field textarea,.field select{background:var(--white);width:100%;color:var(--text-dark);border:1px solid #00000026;outline:none;padding:.8rem .9rem}.field input:focus,.field textarea:focus,.field select:focus{border-color:#000}.field textarea{resize:vertical;min-height:8rem}.form-status{color:var(--muted-dark);min-height:1.25rem;font-size:.9rem}.site-footer{background:var(--bg);border-top:1px solid var(--line);color:var(--text-dim);padding:1.75rem 0;font-size:.9rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;display:flex}.footer-links{flex-wrap:wrap;gap:1rem 1.25rem;display:flex}.footer-inner a:hover{color:var(--white)}@media (width>=760px){.menu-toggle{display:none}.nav-links,.nav-cta{display:flex}.preview-grid{grid-template-columns:1fr 1fr}.practice-list{grid-template-columns:1fr 1fr;gap:0 2.5rem;display:grid}.lawyer-grid{grid-template-columns:.85fr 1.15fr;align-items:center;gap:3.5rem}.locations-grid{grid-template-columns:repeat(3,1fr);gap:0 2rem}.location{border-bottom:none;border-right:1px solid var(--line);padding-right:1.5rem}.location:last-child{border-right:none;padding-right:0}.contact-grid{grid-template-columns:.85fr 1.15fr;gap:3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ratings-track{animation:none}}
