:root{--bg:#0b0b0c;--soft:#121214;--text:#f6f1e8;--muted:#b7b0a7;--accent:#a88961;--light:#d7bea0;--line:rgba(255,255,255,.1);--max:1180px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;background:var(--bg);color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.header{position:fixed;inset:0 0 auto;z-index:20;background:rgba(11,11,12,.86);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.header.scrolled{border-color:var(--line)}.nav{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:12px;width:max-content}.brand-mark{font:24px "Playfair Display";width:42px;height:42px;border:1px solid var(--accent);display:grid;place-items:center;color:var(--light)}.brand-copy{display:flex;flex-direction:column;line-height:1;letter-spacing:.12em}.brand-copy strong{font-size:15px}.brand-copy small{font-size:8px;color:var(--muted);margin-top:5px;letter-spacing:.24em}.menu{display:flex;gap:24px}.menu a,.footer-links a{font-size:13px;color:var(--muted)}.desktop-cta{justify-self:end}.menu-toggle{display:none}.btn{min-height:50px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;font-weight:700;font-size:14px}.btn-small{min-height:42px}.btn-primary{background:var(--accent);color:#0b0b0c}.btn-outline,.btn-ghost{border-color:rgba(215,190,160,.4)}.hero{min-height:100vh;padding:145px 0 90px;display:flex;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 30%,rgba(168,137,97,.16),transparent 35%)}.hero-glow{position:absolute;width:500px;height:500px;border:1px solid rgba(168,137,97,.15);border-radius:50%;right:-130px;top:140px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;position:relative}.eyebrow{font-size:12px;letter-spacing:.22em;color:var(--light);font-weight:700;display:inline-block;margin-bottom:18px}.hero h1,.section-heading h2,.contact-copy h2{font:600 clamp(42px,5vw,76px)/1.04 "Playfair Display";letter-spacing:-.02em}.hero h1 em{color:var(--light)}.hero-content>p{margin-top:28px;max-width:670px;color:var(--muted);font-size:18px}.hero-actions{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap}.hero-meta{display:flex;gap:45px;margin-top:50px;padding-top:25px;border-top:1px solid var(--line)}.hero-meta div{display:flex;flex-direction:column}.hero-meta span{font-size:12px;color:var(--muted)}.hero-card-frame{aspect-ratio:4/5;border:1px solid rgba(168,137,97,.35);padding:45px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 60% 30%,rgba(168,137,97,.15),transparent 35%),#131315;position:relative}.hero-card-frame p{font:30px/1.2 "Playfair Display"}.hero-card-frame span{font-size:10px;letter-spacing:.22em;color:var(--light);margin-top:24px}.legal-symbol{position:absolute;right:40px;top:30px;font:110px "Playfair Display";color:rgba(215,190,160,.09)}.section{padding:105px 0}.split,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about,.contact{background:#eee8df;color:#171719}.about .eyebrow,.contact .eyebrow{color:#775f43}.section-heading h2,.contact-copy h2{font-size:clamp(38px,4.5vw,57px)}.about-copy,.contact-copy p{font-size:18px;color:#554f49}.about-copy p+p{margin-top:22px}.practice{background:var(--soft)}.centered{text-align:center;max-width:760px;margin:auto}.centered p{color:var(--muted);margin-top:18px}.cards{display:grid;margin-top:55px;border:1px solid var(--line)}.cards.two{grid-template-columns:repeat(2,1fr)}.card{padding:38px;min-height:270px;border-right:1px solid var(--line)}.card:last-child{border-right:0}.card-number{color:var(--accent)}.card h3{font:28px "Playfair Display";margin-top:42px}.card p{color:var(--muted);margin-top:16px}.contact-grid{align-items:center}.contact-copy p{margin:22px 0 32px}.contact-card{border:1px solid rgba(23,23,25,.15)}.contact-item{padding:23px 28px;border-bottom:1px solid rgba(23,23,25,.12);display:flex;flex-direction:column}.contact-item:last-child{border:0}.contact-item span{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#756c63}.disclaimer{padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;color:#88817a;font-size:12px}footer{padding:45px 0;background:#080809}.footer-grid{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:25px}.company-footer p{font-size:11px;color:#817b74}.company-footer strong{color:#aaa39b}.footer-links{display:flex;gap:16px;justify-content:flex-end;flex-wrap:wrap}.floating-whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;z-index:30;box-shadow:0 12px 30px rgba(0,0,0,.3);transition:transform .2s ease}.floating-whatsapp:hover{transform:translateY(-3px) scale(1.03)}.floating-whatsapp svg{width:31px;height:31px;display:block}.reveal{opacity:0;transform:translateY(18px);transition:.65s}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.legal-page{padding:140px 0 80px;max-width:850px;margin:auto}.legal-page h1{font:52px "Playfair Display";margin-bottom:25px}.legal-page h2{font:26px "Playfair Display";margin:32px 0 10px}.legal-page p,.legal-page li{color:var(--muted);margin-bottom:12px}.legal-page ul{padding-left:20px}@media(max-width:900px){.nav{grid-template-columns:1fr auto}.desktop-cta{display:none}.menu-toggle{display:block;background:none;border:0}.menu-toggle span{display:block;width:24px;height:1px;background:white;margin:6px}.menu{position:fixed;top:78px;left:0;width:100%;padding:25px;background:#0b0b0c;display:none;flex-direction:column}.menu.open{display:flex}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-card{max-width:520px}.cards.two{grid-template-columns:1fr}.card{border-right:0;border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}}@media(max-width:600px){.container{width:calc(100% - 28px)}.hero{padding-top:120px}.hero h1{font-size:46px}.hero-actions .btn{width:100%}.hero-meta{flex-direction:column;gap:20px}.hero-card-frame{min-height:380px}.section{padding:78px 0}}