/* An editorial layer that keeps the original content usable without JavaScript. */
:root{--ink:#26291f;--olive:#3e4937;--cream:#eeede5;--paper:#f8f7f2;--copper:#a16f59;--line:#d5d6ca;--ease-out:cubic-bezier(.23,1,.32,1)}
body{overflow-x:hidden} .wrap{width:min(1320px,calc(100% - 120px))}.nav{height:102px}.brand strong{font-size:19px}.nav-cta,.button{transition:background-color .25s ease,color .25s ease,transform .16s var(--ease-out),border-color .25s ease}.button:active,.nav-cta:active{transform:scale(.97)}
.hero{position:relative;background:#e9e9df}.hero:before{content:'RS';position:absolute;left:-.035em;bottom:-.2em;font:400 clamp(240px,38vw,560px)/1 'Playfair Display',serif;letter-spacing:-.13em;color:#dcded0;opacity:.55;pointer-events:none}.hero-grid{position:relative;min-height:min(770px,calc(100vh - 102px));grid-template-columns:1fr .88fr}.hero-copy{position:relative;z-index:1;padding:96px 6% 100px 0}.hero-copy:after{content:'01 — 03';position:absolute;bottom:36px;left:0;color:#777d6e;font-size:10px;letter-spacing:.16em}.hero h1{font-size:clamp(57px,6.1vw,91px);line-height:1.02;max-width:720px}.hero h1 em{display:inline-block}.intro{max-width:420px;font-size:15px}.hero-image{margin:34px 0 34px;min-height:620px;overflow:visible}.hero-image:before{content:'';position:absolute;inset:-14px -14px 14px 14px;border:1px solid #b9a693;z-index:0}.hero-image img{z-index:1;object-position:center 35%}.hero-image:after{content:'CUIDADO EM CADA DETALHE';position:absolute;z-index:2;right:18px;top:22px;color:white;writing-mode:vertical-rl;font-size:9px;letter-spacing:.24em;text-shadow:0 1px 8px #222}.photo-label{z-index:3;bottom:32px;left:-44px;padding:22px 27px;box-shadow:0 16px 50px #20271916}.photo-label strong{font-size:21px}.strip{position:relative}.strip .wrap{padding:26px 0;align-items:center}.strip span:nth-child(even){font-size:6px;color:#c19a7f}
.section{padding:145px 0}.section-head h2,.about h2,.contact h2{font-size:clamp(43px,4.8vw,70px)}.section-head{grid-template-columns:1.1fr .65fr;gap:100px;margin-bottom:78px}.practice article{min-height:260px;padding-top:35px}.practice h3{font-size:29px;margin-top:52px}.practice article:after{content:'↗';display:block;font-size:18px;color:var(--copper);margin-top:25px;transition:transform .25s var(--ease-out)}.about{position:relative;background:#e7e9de;overflow:hidden}.about:after{content:'&';position:absolute;right:-.06em;bottom:-.4em;font:400 clamp(280px,35vw,500px)/1 'Playfair Display',serif;color:#d8ddce;pointer-events:none}.about-grid{position:relative;z-index:1;grid-template-columns:.95fr 1fr}.about-image:before{content:'';position:absolute;inset:20px -20px -20px 20px;border:1px solid #aeb7a1}.about-image img{position:relative;height:590px}.about-text{position:relative;z-index:1}.contact{position:relative;overflow:hidden;padding:145px 20px}.contact:before,.contact:after{content:'';position:absolute;width:400px;height:400px;border:1px solid #ffffff14;border-radius:50%;pointer-events:none}.contact:before{left:-180px;top:-180px}.contact:after{right:-180px;bottom:-200px}.contact h2{position:relative}.footer{padding:49px 0}
@media(hover:hover) and (pointer:fine){.button:hover{background:#a16f59}.contact .button:hover{background:#d6c2b2}.nav-cta:hover{background:var(--olive);color:white}.practice article:hover:after{transform:translate(5px,-5px)}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.nav{height:80px}.brand strong{font-size:16px}.hero-grid{min-height:0}.hero:before{font-size:75vw;bottom:35%}.hero-copy{padding:72px 0 75px}.hero-copy:after{bottom:25px}.hero h1{font-size:clamp(50px,11vw,72px)}.hero-image{margin:0 0 30px;min-height:510px}.hero-image:before{inset:12px -10px -10px 10px}.hero-image img{object-position:center 33%}.photo-label{left:-10px;bottom:20px}.strip .wrap{gap:12px;font-size:9px}.strip span:nth-child(even){display:none}.section{padding:86px 0}.section-head{gap:25px;margin-bottom:40px}.practice article{min-height:0}.practice h3{margin-top:20px}.practice article:after{margin-top:15px}.about-grid{gap:48px}.about-image{margin-right:20px}.about-image img{height:420px}.contact{padding:100px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.nav-cta,.practice article:after{transition:none}.button:active,.nav-cta:active{transform:none}}
.brand-logo{display:block;width:236px;height:auto;max-height:64px;object-fit:contain;object-position:left center}@media(max-width:800px){.brand-logo{width:185px;max-height:54px}}@media(max-width:380px){.brand-logo{width:155px}.nav-cta{padding:10px 8px;font-size:9px}}
