:root{--ink:#171717;--muted:#6d6d6d;--line:#ddddda;--soft:#f7f7f5;--white:#fff;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Helvetica Neue',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.topbar{height:78px;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:30;border-bottom:1px solid #ececec}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:182px;height:auto}.nav{display:flex;align-items:center;gap:28px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.nav>a:not(.nav-cta){position:relative;padding:30px 0}.nav>a:not(.nav-cta):after{content:'';position:absolute;left:0;right:100%;bottom:22px;height:1px;background:#111;transition:.28s ease}.nav>a:not(.nav-cta):hover:after{right:0}.nav-cta{border:1px solid #111;padding:11px 17px;transition:.28s ease}.nav-cta:hover{background:#111;color:#fff}.menu-btn{display:none;border:0;background:none;font-size:26px}
.hero{min-height:680px;position:relative;background:url('assets/wallpaper-pc.png') center center/cover no-repeat;display:flex;align-items:center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.90) 34%,rgba(255,255,255,.42) 60%,rgba(255,255,255,.06) 100%)}.hero-inner{position:relative;z-index:2}.hero-copy{max-width:540px;padding:84px 0 92px}.eyebrow,.section-kicker{margin:0 0 18px;font-size:10px;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.hero h1,.section-heading h2,.office h2,.contact h2{font-family:var(--serif);font-weight:400;letter-spacing:-.015em}.hero h1{font-size:clamp(36px,4vw,56px);line-height:1.05;margin:0 0 22px;max-width:620px}.hero-sub{font-size:17px;color:#343434;max-width:560px;margin:0 0 30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:.28s ease}.btn-dark{background:#111;color:#fff;border:1px solid #111}.btn-dark:hover{background:#2d2d2d;transform:translateY(-1px)}.btn-outline{border:1px solid #111;background:rgba(255,255,255,.56)}.btn-outline:hover{background:#111;color:#fff;transform:translateY(-1px)}.btn-white{background:#fff;color:#111;border:1px solid #fff}.hero-note{margin-top:26px;font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:#454545;display:flex;align-items:center;gap:12px}.hero-note span{width:34px;height:1px;background:#111}
.labor-section{padding:96px 0}.section-heading.narrow{max-width:760px}.section-heading h2{font-size:clamp(34px,4vw,52px);line-height:1.08;margin:0 0 18px}.section-heading>p,.section-heading .section-aside{color:var(--muted)}.labor-list{margin-top:52px;border-top:1px solid #d0d0cd}.labor-row{display:grid;grid-template-columns:52px 1fr 30px;gap:24px;align-items:start;padding:24px 8px;border-bottom:1px solid #dededb;transition:background .28s ease,color .28s ease,padding .28s ease,transform .28s ease}.labor-row:hover{background:#111;color:#fff;padding-left:18px;padding-right:18px;transform:translateX(5px)}.labor-row:hover p,.labor-row:hover .num{color:#cfcfcf}.labor-row .num{font-size:10px;letter-spacing:.2em;color:#8b8b8b;padding-top:5px}.labor-row h3{font-family:var(--serif);font-weight:400;font-size:clamp(20px,2vw,28px);line-height:1.24;margin:0 0 6px}.labor-row p{margin:0;color:#6a6a6a;max-width:900px;font-size:15px}.arrow{font-size:18px;padding-top:3px}.simple-cta{margin-top:44px;padding:26px 0;border-top:1px solid #222;border-bottom:1px solid #222;display:flex;justify-content:space-between;gap:30px;align-items:center}.simple-cta span{font-size:9px;letter-spacing:.2em;font-weight:600;display:block;margin-bottom:6px}.simple-cta strong{font-family:var(--serif);font-weight:400;font-size:26px}
.section{padding:92px 0}.section-soft{background:var(--soft)}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.section-aside{margin:0 0 8px}.practice-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:44px}.practice-panel{background:#fff;padding:38px;border:1px solid #dededb;transition:.28s ease}.practice-panel:hover{background:#111;color:#fff;transform:translateY(-3px)}.practice-panel:hover p,.practice-panel:hover li{color:#d5d5d5}.practice-panel:hover li{border-color:#333}.practice-panel:hover a{border-color:#fff}.practice-label{font-size:9px;font-weight:600;letter-spacing:.22em}.practice-panel h3{font-family:var(--serif);font-size:36px;font-weight:400;margin:10px 0 13px}.practice-panel p{color:#666}.practice-panel ul{list-style:none;padding:0;margin:22px 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.practice-panel li{padding:9px 0;border-bottom:1px solid #ececea;font-size:14px}.practice-panel a{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid #111;padding-bottom:4px}
.office{background:#111;color:#fff;padding:96px 0;position:relative;overflow:hidden}.office:after{content:'';position:absolute;right:-90px;top:-160px;width:540px;height:540px;background:url('assets/logo-completo.png') center/contain no-repeat;opacity:.025;filter:grayscale(1)}.office-inner{max-width:760px;position:relative;z-index:1}.section-kicker.light{color:#cfcfcf}.office h2{font-size:clamp(38px,4.5vw,58px);margin:0 0 16px}.office-lead{font-size:19px;max-width:700px}.office p:not(.section-kicker){color:#d4d4d4}.office .btn{margin-top:24px}
.contact{padding:92px 0 0;background:#fff}.contact-top{display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:end;padding-bottom:36px;border-bottom:1px solid #d8d8d5}.contact h2{font-size:clamp(36px,4.5vw,54px);margin:0 0 10px}.contact-top p{margin:0;color:#666}.contact-primary{background:#fff;color:#111;border:1px solid #d7d7d4;padding:24px 26px;display:flex;flex-direction:column;gap:4px;transition:.28s ease}.contact-primary:hover{background:#111;color:#fff;transform:translateY(-2px)}.contact-primary span,.contact-details span,.location-strip span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#8f8f8f}.contact-primary:hover span{color:#cfcfcf}.contact-primary strong{font-family:var(--serif);font-size:24px;font-weight:400}.contact-primary small,.contact-details small{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px 0 0}.contact-details>a{padding:24px 26px;border:1px solid #dededb;display:flex;flex-direction:column;gap:6px;transition:.28s ease}.contact-details>a:hover{background:#111;color:#fff;transform:translateY(-2px)}.contact-details>a:hover span{color:#cfcfcf}.contact-details strong{font-size:16px;font-weight:600}.location-strip{margin-top:18px;padding:26px 0 30px;border-top:1px solid #dededb;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.location-strip>div{display:flex;flex-direction:column;gap:6px}.location-strip strong{font-size:14px;font-weight:500;color:#444}.location-strip a{border:1px solid #111;padding:12px 18px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:.28s ease}.location-strip a:hover{background:#111;color:#fff}
.footer{background:#111;color:#fff;padding:22px 0}.footer-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.footer-copy{font-size:10px;letter-spacing:.06em;color:#cfcfcf}.footer-address{font-size:11px;color:#bdbdbd;text-align:center}.footer-map{font-size:10px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #666;padding-bottom:2px}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.18);z-index:35}.reveal{opacity:0;transform:translateY(14px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.container{width:min(calc(100% - 30px),var(--max))}.topbar{height:72px}.brand img{width:154px}.menu-btn{display:block}.nav{position:absolute;top:72px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:18px 22px 24px;border-bottom:1px solid #ddd;gap:16px}.nav.open{display:flex}.nav>a:not(.nav-cta){padding:0}.nav>a:not(.nav-cta):after{bottom:-4px}.nav-cta{text-align:center}.hero{min-height:640px;background-image:url('assets/wallpaper-mobile.png');background-position:center top}.hero-overlay{background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.72) 58%,rgba(255,255,255,.22) 100%)}.hero-copy{padding:62px 0 220px;max-width:100%}.hero h1{font-size:42px}.hero-sub{font-size:16px}.labor-section,.section,.contact,.office{padding:68px 0}.section-heading{grid-template-columns:1fr;gap:8px}.labor-row{grid-template-columns:36px 1fr 22px;gap:12px;padding:22px 0}.simple-cta{align-items:flex-start;flex-direction:column}.simple-cta strong{font-size:24px}.practice-columns{grid-template-columns:1fr}.practice-panel{padding:30px 24px}.practice-panel ul{grid-template-columns:1fr}.contact-top{grid-template-columns:1fr;gap:24px}.contact-details{grid-template-columns:1fr}.location-strip{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-address{text-align:center}}@media(max-width:520px){.hero h1{font-size:36px}.hero-actions{flex-direction:column}.btn{width:100%}.labor-row h3{font-size:22px}.section-heading h2,.office h2,.contact h2{font-size:36px}.contact-primary strong{font-size:22px}}
