:root{--gold:#cfaa44;--bg:#0f0f0f;--soft:#141414;--white:#fff;--sticky-top:24px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--white);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}p{margin:0 0 20px}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;line-height:1.05;margin:0}h1{font-size:clamp(38px,3.5vw,54px);letter-spacing:-.025em}h2{font-size:40px}h3{font-size:26px}h1 span,h2 span{color:var(--gold)}.wrap{width:min(1136px,calc(100% - 64px));margin:auto}.narrow{width:min(860px,calc(100% - 64px));margin:auto}.section{padding:100px 0}.eyebrow{text-align:center;text-transform:uppercase;color:var(--gold);font-size:12px;letter-spacing:.1em;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:58px;padding:16px 26px;border-radius:5px;font-size:14px;font-weight:700;position:relative;isolation:isolate;overflow:hidden;transition:transform .3s,box-shadow .3s;background-size:220% 100%;animation:gradient-drift 8s ease-in-out infinite;color:#080808;text-align:center}.button:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 25%,#ffffff20 48%,transparent 70%);transform:translateX(-130%);animation:shimmer 9s ease-in-out infinite}.button:hover{transform:translateY(-2px);box-shadow:0 7px 24px #0004}.button.gold{background-image:linear-gradient(110deg,#cfaa44,#f6d168,#cfaa44)}.button.dark{color:#fff;border:1px solid #777;background-image:linear-gradient(110deg,#000,#333,#000);font-weight:400}.button span{font-size:18px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #f6d168;outline-offset:5px}.skip{position:fixed;top:10px;left:10px;background:#cfaa44;color:#000;padding:12px;z-index:100;transform:translateY(-180%)}.skip:focus{transform:none}.hero{position:relative;min-height:800px;isolation:isolate}.hero-bg{position:absolute;inset:0;z-index:-1}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}.header{display:flex;align-items:center;gap:120px;min-height:155px}.logo{width:180px;height:auto}.header nav{display:flex;gap:28px;font-size:13px}.header nav a{padding:12px 0;transition:color .2s}.header nav a:hover{color:var(--gold)}.menu-toggle{display:none}.hero-content{padding-top:95px;padding-bottom:110px}.hero-copy{max-width:585px;margin:28px 0 24px}.hero-copy p{margin-bottom:18px}.hero-actions{display:flex;gap:20px}.office h2{text-align:center;margin-bottom:60px}.office-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.office-photo{width:100%;height:auto;border-radius:6px}.office-grid p{font-size:15px;line-height:1.52}.benefit{display:flex;gap:16px;align-items:center}.benefit strong{display:block;font-size:12px}.benefit small{display:block;font-size:11px;margin-top:4px}.outline-icon{color:var(--gold);font-size:32px;line-height:1}.areas{background:var(--soft);padding-top:116px;padding-bottom:130px}.areas-heading{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:64px}.areas-heading h2{text-transform:uppercase;font-size:36px;line-height:1.18}.areas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.area-card{background:linear-gradient(160deg,#191919,#000);border:1px solid #ffffff12;border-radius:6px;padding:30px 24px;min-height:302px}.area-card:nth-last-child(2){grid-column:2}.area-card img{margin-bottom:20px;object-fit:contain;object-position:left}.area-card h3{font-size:24px;text-transform:uppercase;margin-bottom:18px}.area-card p{font-size:13px;line-height:1.5;margin-bottom:14px}.area-card p:last-child{margin-bottom:0}.process{padding-top:95px;padding-bottom:145px}.process h2{text-align:center}.steps{max-width:680px;margin:70px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:45px 75px}.step{position:relative;padding:28px 20px 26px 40px;background:linear-gradient(155deg,#0f0f0f 20%,#292929);border:1px solid #ffffff12;border-radius:4px;margin-left:22px}.step-number{position:absolute;left:-36px;top:-13px;color:var(--gold);font-family:'Cormorant Garamond',serif;font-size:110px;line-height:1}.step h3{font-size:29px;margin:5px 0 18px}.step p{font-size:14px;margin:0;line-height:1.45}.about{background:#5b5e5b url('assets/sobre-desktop.webp') center top/auto 550px no-repeat;position:relative}.about-inner{position:relative;min-height:550px;padding-top:85px;padding-bottom:58px}.about-copy{width:49%;margin-left:auto}.about-copy h2{margin-bottom:26px}.about-copy p{font-size:15px;line-height:1.5}.about-copy .button{min-height:50px;padding:12px 22px;font-size:13px}.oab{position:absolute;bottom:28px;left:6%;font-size:14px;margin:0}.benefits{position:absolute;left:50%;transform:translateX(-50%);bottom:-95px;width:100vw;background:var(--bg);display:flex;justify-content:center;gap:60px;padding:30px 25px;min-height:95px}.reviews{padding-top:180px;padding-bottom:70px}.reviews h2{text-align:center;margin-bottom:48px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1030px;margin:auto}.review{background:#292c33;border-radius:6px;padding:22px;color:#e2e2e2;font-size:14px}.review-person{display:flex;align-items:center;gap:10px}.review-person strong{font-size:14px;font-weight:500}.avatar{width:30px;height:30px;flex-shrink:0;background:#736442;border-radius:50%;display:grid;place-items:center;color:#fff}.google-mark{margin-left:auto;color:#fff;font-weight:700}.stars{color:#f6d168;letter-spacing:2px;margin:15px 0 8px}.review p{font-size:14px;margin-bottom:18px}.review a{font-size:12px;color:#a8c8ff}.faq{padding-top:65px;padding-bottom:125px}.faq-inner{width:min(825px,calc(100% - 64px));margin:auto}.faq h2{text-align:center;margin-bottom:58px}.faq details{background:#202020;border-radius:14px;margin-bottom:12px;padding:22px 30px}.faq summary{font-size:16px;font-weight:600;list-style:none;cursor:pointer;display:flex;align-items:center;gap:20px;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--gold);flex:0 0 14px;font-size:24px;font-weight:400}.faq summary span:after{content:'+'}.faq details[open] summary span:after{content:'−'}.faq details p{font-size:15px;color:#aaa;margin:18px 28px 0 0}footer{background:var(--soft);padding:60px 0 32px;color:#a6afb9;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px}.footer-logo{width:205px;height:auto;margin-bottom:22px}.footer-grid h3{font:700 13px Inter,sans-serif;text-transform:uppercase;letter-spacing:.13em;color:#ddd;margin:12px 0 22px}.footer-grid p{margin-bottom:16px}.footer-grid address{font-style:normal;margin-bottom:20px}.footer-grid>div:last-child>a{display:block;margin-bottom:18px;overflow-wrap:anywhere}.footer-grid a:hover{color:#f6d168}.oab-tag{display:inline-block;padding:8px 12px;border:1px solid #ffffff20;border-radius:6px}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #ffffff12;margin-top:45px;padding-top:28px;font-size:10px}.privacy-trigger{background:none;border:0;color:inherit;padding:0;text-decoration:underline;font-size:inherit}dialog{background:#202020;color:#eee;width:min(650px,90vw);border:1px solid #cfaa4460;border-radius:12px;padding:38px;max-height:85vh}dialog::backdrop{background:#000b}dialog h2{font-size:32px;margin:0 30px 25px 0}dialog p{font-size:14px}dialog a{color:#f6d168;overflow-wrap:anywhere}.privacy-close{position:absolute;right:18px;top:12px;border:0;background:none;color:#cfaa44;font-size:30px}@keyframes gradient-drift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes shimmer{0%,70%{transform:translateX(-130%)}90%,100%{transform:translateX(130%)}}
@media(min-width:1600px){.hero-content{padding-top:100px}.hero{min-height:800px}}
@media(max-width:1050px) and (min-width:701px){.header{gap:55px}.header nav{gap:18px;font-size:12px}.hero{min-height:690px}.hero-content{padding-top:75px}.areas-grid{grid-template-columns:repeat(2,1fr)}.area-card:nth-last-child(2){grid-column:auto}.office-grid{gap:30px}.about-copy{width:53%}.footer-grid{gap:30px}.button{font-size:12px}}
@media(max-width:700px){body{font-size:15px}.wrap,.narrow{width:calc(100% - 48px)}.section{padding:70px 0}h1{font-size:clamp(32px,7.9vw,44px);line-height:1.02;letter-spacing:-.02em}h2{font-size:clamp(28px,6.8vw,36px);line-height:1.04}.desktop-break{display:none}.hero{min-height:0}.hero-bg{bottom:auto;height:100%;}.hero-bg img{object-position:top center;object-fit:cover}.header{min-height:100px;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:20}.logo{width:155px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:9px;background:#101010aa;border:1px solid #cfaa4430;border-radius:5px}.menu-toggle span{height:2px;width:22px;background:#cfaa44;transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header nav{display:none;position:absolute;top:85px;right:0;left:0;padding:18px 25px;background:#141414;border:1px solid #cfaa4440;border-radius:8px;box-shadow:0 15px 30px #0008}.header nav.is-open{display:flex;flex-direction:column;gap:0}.header nav a{font-size:15px;padding:13px 0}.hero-content{padding-top:255px;padding-bottom:75px}.hero-copy{margin-top:26px;margin-bottom:24px;max-width:100%}.hero-copy p{font-size:14px;line-height:1.6}.hero-actions{display:block}.hero-actions .dark{display:none}.button{min-height:51px;font-size:12px;padding:15px 19px}.eyebrow{font-size:10px;margin-bottom:25px}.office h2{margin-bottom:38px}.office-grid{grid-template-columns:1fr;gap:30px}.office-photo{width:100%}.office-grid p{font-size:15px;line-height:1.6}.office-grid .benefit{margin-top:28px}.benefit strong{font-size:11px}.benefit small{font-size:10px}.areas{padding-bottom:80px}.areas-heading{display:block;text-align:center;margin-bottom:55px}.areas-heading h2{text-transform:none;font-size:32px}.areas-heading .button{display:none}.areas-grid{display:block;position:relative;padding-bottom:0}.area-card{position:sticky;top:var(--sticky-top);width:min(330px,100%);min-height:360px;margin:0 auto 65px;padding:32px;border-radius:7px;box-shadow:0 -12px 26px #0002;transform-origin:center top;transition:box-shadow .3s}.area-card:last-child{margin-bottom:0}.area-card img{margin-bottom:22px}.area-card h3{font-size:28px;text-transform:none;margin-bottom:22px}.area-card p{font-size:16px;line-height:1.6}.process{padding-top:80px;padding-bottom:95px}.process h2{max-width:380px;margin:auto}.steps{display:grid;grid-template-columns:1fr;gap:40px;max-width:300px;margin-top:55px;padding-left:15px}.step{padding:24px 20px 28px 36px;margin-left:15px;min-height:175px}.step-number{font-size:108px;left:-37px;top:-6px}.step h3{font-size:28px;margin-bottom:15px}.step p{font-size:14px;line-height:1.5}.about{background:#5b5e5b url('assets/sobre-mobile.webp') center bottom/100% auto no-repeat}.about-inner{padding-top:65px;padding-bottom:0;min-height:0}.about-copy{width:100%;margin:0}.about-copy h2{font-size:36px;margin-bottom:25px}.about-copy p{font-size:14px;line-height:1.6}.about-copy .button{margin-top:3px}.benefits{position:static;transform:none;background:none;display:flex;flex-direction:column;gap:20px;width:auto;padding:30px 0 0;min-height:0}.benefits .benefit{gap:14px}.oab{bottom:20px;left:0;width:100%;text-align:center;font-size:12px}.about-inner:after{content:'';display:block;height:91vw;max-height:480px}.reviews{padding-top:75px;padding-bottom:40px}.reviews h2{max-width:350px;margin:0 auto 40px}.reviews-grid{grid-template-columns:1fr;gap:18px;max-width:390px}.review{padding:23px}.review p{font-size:14px}.faq{padding-top:40px;padding-bottom:70px}.faq-inner{width:calc(100% - 40px)}.faq h2{margin-bottom:35px}.faq details{padding:18px 20px;border-radius:10px}.faq summary{font-size:13px;gap:12px}.faq details p{font-size:13px;margin-right:12px;line-height:1.6}footer{padding-top:50px;font-size:13px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-logo{width:180px}.footer-grid h3{margin-top:0}.footer-grid p{margin-bottom:12px}.footer-bottom{flex-direction:column;gap:18px;font-size:10px;line-height:1.7;margin-top:30px}dialog{padding:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.button:before{animation:none}.button,.menu-toggle span{transition:none}.area-card{position:relative!important;top:auto!important;transform:none!important}}
@media(max-width:700px){.hero-bg{height:auto}.hero-bg img{height:auto;object-fit:contain}.hero-content{padding-top:clamp(175px,48vw,255px)}}

/* Fine gold divider, fading from the left, on desktop and mobile. */
.header{position:relative}
.header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,#cfaa44 0%,rgba(207,170,68,.55) 38%,rgba(207,170,68,.12) 75%,transparent 100%);pointer-events:none}

.office-icon{width:40px;height:40px;flex:0 0 40px;object-fit:contain}

/* Refined desktop card interaction and requested typography. */
.hero-copy p{font-size:16px}
.step p{font-size:14px;color:#c6c6c6;line-height:1.5;text-align:left;hyphens:auto;overflow-wrap:break-word}
@media(min-width:701px) and (hover:hover) and (pointer:fine){
 .area-card{position:relative;transform-origin:center;transition:transform .35s cubic-bezier(.22,.61,.36,1),border-color .35s ease,box-shadow .35s ease}
 .area-card:hover{z-index:2;transform:translateY(-4px) scale(1.025);border-color:#cfaa44;box-shadow:0 14px 32px #0005,0 0 16px #cfaa4412}
}
@media(max-width:700px){
 .about{background-image:url('assets/sobre-mobile-alto.jpg');background-size:cover;background-position:center bottom;background-repeat:no-repeat}
 .hero-copy p{font-size:16px}
 .step p{font-size:14px;color:#c6c6c6}
}
@media(prefers-reduced-motion:reduce){.area-card{transition:none}}

/* Mobile CTA readability and both hero actions. */
@media(max-width:700px){
 .button,.about-copy .button{font-size:16px;line-height:1.4;min-height:54px;white-space:normal}
 .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .hero-actions .button{width:100%;padding:15px 16px}
 .hero-actions .dark{display:inline-flex}
}

/* Floating contact button on every viewport, with mobile safe-area spacing. */
.whatsapp-float{position:fixed;right:24px;bottom:24px;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;border:1px solid #ffffff30;box-shadow:0 6px 24px #0005;transition:transform .25s ease,box-shadow .25s ease}
.whatsapp-float svg{display:block;width:32px;height:32px}
@media(hover:hover) and (pointer:fine){.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 9px 28px #0006}}
@media(max-width:700px){.whatsapp-float{width:56px;height:56px;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}footer{padding-bottom:92px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}.whatsapp-float:hover{transform:none}}

/* Consistent CTA text size on desktop and tablet. */
@media(min-width:701px){.button,.about-copy .button{font-size:16px;line-height:1.4;white-space:normal}.hero-actions{flex-wrap:wrap}}
