/* Dávila–Chávez Firma Legal | Diseño original responsive para Cloudflare Pages */
:root{--black:#080909;--black2:#0d0e0e;--panel:#131514;--panel2:#1a1b1a;--gold:#d9b884;--gold-bright:#f1d5a8;--gold-deep:#94734a;--cream:#e9dcc5;--white:#f1eeea;--muted:#a9a7a2;--line:rgba(218,184,132,.25);--line-white:rgba(255,255,255,.12);--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--easing:cubic-bezier(.2,.7,.25,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
::selection{background:var(--gold);color:#111}
a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--gold-bright);outline-offset:5px}
img,svg{max-width:100%}img{display:block}section[id]{scroll-margin-top:90px}
.container{width:min(100% - 88px,1390px);margin-inline:auto}
.skip-link{position:fixed;z-index:999;left:16px;top:-80px;background:var(--gold);color:#111;padding:15px 20px;font-weight:700}.skip-link:focus{top:14px}
.topline{height:36px;border-bottom:1px solid rgba(233,220,197,.11);background:#0a0b0a;position:relative;z-index:51}
.topline-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.2em;font-weight:600;color:#b4ada2}
.topline-place{display:flex;align-items:center;gap:11px}.small-diamond{display:inline-block;width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.topline-phone{transition:color .3s}.topline-phone span{color:var(--gold);margin:0 6px 0 8px;font-size:13px}.topline-phone:hover{color:var(--gold-bright)}
.site-header{height:88px;background:rgba(10,11,11,.94);border-bottom:1px solid rgba(217,184,132,.15);position:sticky;top:0;z-index:50;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);transition:height .25s,box-shadow .25s}
.site-header.scrolled{box-shadow:0 12px 35px rgba(0,0,0,.4);height:78px}
.header-inner{height:100%;display:flex;align-items:center;gap:35px;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;min-width:0}.brand-monogram{height:44px;width:54px;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:flex-start;font-family:var(--serif);font-size:34px;letter-spacing:-.13em;font-weight:600;line-height:1;color:var(--gold)}.brand-dot{letter-spacing:0;font-size:24px;align-self:flex-end;margin:0 0 8px 4px}.brand-title{display:flex;flex-direction:column;gap:6px}.brand-title strong{font:600 17px/1 var(--serif);letter-spacing:.055em;white-space:nowrap}.brand-title span{font:500 8px/1 var(--sans);letter-spacing:.125em;color:var(--gold);white-space:nowrap}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:clamp(15px,2.2vw,34px);margin-left:auto}.nav-link{font-size:11px;font-weight:500;letter-spacing:.045em;position:relative;color:#c9c7c4;white-space:nowrap;padding:18px 0;transition:color .3s}.nav-link:hover,.nav-link.is-active{color:var(--gold-bright)}.nav-link::after{content:'';position:absolute;bottom:10px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-link:hover::after,.nav-link.is-active::after{width:100%}
.header-contact{display:flex;align-items:center;justify-content:center;gap:20px;padding:14px 19px;border:1px solid var(--gold-deep);color:var(--gold-bright);font-size:11px;font-weight:600;white-space:nowrap;transition:background .3s,color .3s,border-color .3s}.header-contact:hover{background:var(--gold);color:#111;border-color:var(--gold)}.header-contact span{font-size:16px}
.menu-toggle{display:none;background:none;border:0;padding:12px;cursor:pointer;flex-direction:column;gap:5px;z-index:53}.menu-toggle span{width:25px;height:1.5px;background:var(--gold);display:block;transition:transform .3s,opacity .3s}.mobile-menu{display:none}
/* HERO */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:685px;background:radial-gradient(ellipse 70% 70% at 85% 45%,#1b1711 0%,transparent 64%),linear-gradient(115deg,#0b0c0b 0%,#090a0a 60%,#0d0d0c 100%)}
.hero-grid{position:absolute;inset:0;z-index:-2;opacity:.35;background-image:linear-gradient(90deg,transparent 98.8%,rgba(226,185,116,.05) 99%),linear-gradient(0deg,transparent 98.8%,rgba(226,185,116,.04) 99%);background-size:98px 98px;mask-image:linear-gradient(90deg,transparent 10%,#000 94%);pointer-events:none}
.hero::before{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(130deg,transparent 25%,rgba(220,175,99,.035) 48%,transparent 60%),radial-gradient(circle at 0% 100%,rgba(218,164,83,.07),transparent 42%);z-index:-1}
.hero-halo{position:absolute;width:420px;height:420px;border:1px solid rgba(218,184,132,.1);border-radius:50%;z-index:-1;pointer-events:none}.hero-halo-one{right:-180px;top:-210px}.hero-halo-two{left:-290px;bottom:-350px;width:590px;height:590px}
.hero-layout{min-height:660px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(15px,4vw,68px);padding-block:47px 78px}
.hero-copy{z-index:2;padding-bottom:5px}
.eyebrow{display:flex;align-items:center;gap:13px;color:var(--gold);font-size:10px;letter-spacing:.19em;font-weight:600}.eyebrow-rule{display:inline-block;width:30px;height:1px;background:var(--gold)}.eyebrow-separator{color:#6b6255}
.hero-overline{margin:35px 0 0;font:500 clamp(12px,1.1vw,15px)/1 var(--sans);color:#d1ccc3;letter-spacing:.42em}
.hero h1{font:500 clamp(61px,6.55vw,108px)/.91 var(--serif);letter-spacing:-.055em;margin:15px 0 25px;color:var(--white);white-space:nowrap}
.hero h1 em{font-weight:500;color:var(--gold-bright);letter-spacing:-.048em}
.hero-divider{display:flex;align-items:center;gap:10px;color:var(--gold);width:min(280px,75%)}.hero-divider span{height:1px;background:linear-gradient(90deg,var(--gold),transparent);flex:1}.hero-divider span:last-child{background:linear-gradient(90deg,transparent,var(--gold))}.hero-divider svg{flex-shrink:0}
.hero-description{font-size:15px;line-height:1.95;color:var(--white);margin:22px 0 31px;letter-spacing:.005em}.hero-description span{font-size:11px;letter-spacing:.16em;color:#a6a39d}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:0 18px 0 23px;font-size:12px;font-weight:600;transition:transform .3s var(--easing),background .3s,color .3s,box-shadow .3s}.btn:hover{transform:translateY(-3px)}.btn-gold{background:linear-gradient(130deg,#f0d5aa,#c69a61);color:#14120e;border:1px solid #dfb982;box-shadow:0 12px 35px rgba(162,104,44,.08)}.btn-gold:hover{box-shadow:0 14px 36px rgba(194,144,68,.24)}.btn-outline{background:rgba(255,255,255,.02);color:var(--white);border:1px solid rgba(238,212,173,.4)}.btn-outline:hover{background:rgba(217,184,132,.12)}.btn-arrow{display:flex;justify-content:center;align-items:center;font-size:21px;font-weight:400;line-height:1}
.hero-footnote{display:flex;align-items:flex-start;gap:12px;margin-top:35px;color:#8d8b86;font:600 9px/1.8 var(--sans);letter-spacing:.12em;max-width:480px}.hero-footline{margin-top:7px;width:21px;flex-shrink:0;height:1px;background:var(--gold-deep)}
.hero-visual{position:relative;justify-self:end;width:min(100%,555px);aspect-ratio:1/.98;display:flex;align-items:center;justify-content:center;padding:24px;margin-right:6px}
.hero-logo-frame{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#070707;overflow:hidden;box-shadow:0 18px 75px #0008,0 0 0 1px rgba(216,175,118,.25)}
.hero-logo-frame::before{content:'';position:absolute;inset:8px;border:1px solid rgba(241,213,168,.13);z-index:1;pointer-events:none}
.hero-logo-light{position:absolute;inset:0;background:radial-gradient(circle at 50% 53%,rgba(219,163,80,.08),transparent 70%);z-index:1;pointer-events:none}
.hero-logo{width:100%;height:100%;object-fit:contain;filter:none;transform:none}
.hero-visual-ornament{position:absolute;z-index:3;font-size:9px;letter-spacing:.18em;color:#bb9866;font-weight:600}.ornament-top{top:7px;left:20px;background:var(--black);padding:0 12px}.ornament-bottom{bottom:2px;right:18px;left:18px;display:flex;justify-content:space-between;gap:12px;background:var(--black);padding:0 11px}.hero-visual-corner{position:absolute;width:30px;height:30px;z-index:3;pointer-events:none}.corner-tr{top:9px;right:9px;border-top:1px solid var(--gold);border-right:1px solid var(--gold)}.corner-bl{bottom:9px;left:9px;border-bottom:1px solid var(--gold);border-left:1px solid var(--gold)}
.hero-side-text{position:absolute;right:12px;top:50%;writing-mode:vertical-rl;font-size:8px;color:#766a58;letter-spacing:.38em}.hero-scroll{position:absolute;left:max(44px,calc((100vw - 1390px)/2));bottom:24px;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.2em;color:#817f7a}.scroll-line{display:inline-block;height:1px;width:37px;background:var(--gold)}.hero-scroll:hover{color:var(--gold)}
.practice-marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#141512;overflow:hidden}.marquee-inner{min-height:60px;display:flex;align-items:center;justify-content:space-evenly;gap:24px;padding:8px 25px;white-space:nowrap}.marquee-inner span{color:#ccb78e;font:500 clamp(10px,.94vw,13px)/1 var(--serif);letter-spacing:.21em}.marquee-inner i{font-style:normal;color:#66543d;font-size:19px}
/* SHARED SECTIONS */
.section-pad{padding-block:126px}.section-kicker{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.23em;font-weight:600;color:var(--gold)}.section-kicker-number{font:500 15px/1 var(--serif);letter-spacing:0}.section-kicker-stroke{height:1px;width:34px;background:var(--gold-deep)}.section-title{font:500 clamp(51px,5.2vw,76px)/1.04 var(--serif);letter-spacing:-.045em;margin:28px 0 22px}.section-title em{font-weight:500;color:var(--gold);font-style:italic}.section-description{color:#aaa8a3;font-size:14px;line-height:2;max-width:550px;margin:0}.text-link{display:inline-flex;gap:31px;align-items:center;color:var(--gold-bright);padding-bottom:10px;border-bottom:1px solid var(--gold-deep);font-size:12px;font-weight:600;transition:gap .25s,color .25s}.text-link span{font-size:20px;font-weight:400;line-height:.8}.text-link:hover{gap:44px;color:#fff}
.firm-section{position:relative;background:linear-gradient(115deg,#0c0d0c,#10110f 75%,#13140f);overflow:hidden}.firm-section::after{content:'';position:absolute;right:-250px;bottom:-300px;width:620px;height:620px;border:1px solid rgba(217,184,132,.055);border-radius:50%;pointer-events:none}.firm-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(60px,8vw,150px);align-items:center}.firm-content{max-width:610px}.firm-name{font-size:11px;letter-spacing:.22em;color:#e4c99d;font-weight:600;margin:0 0 20px}.firm-content .text-link{margin-top:32px}
.firm-feature{min-height:370px;border:1px solid rgba(222,177,112,.38);position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 40%,rgba(222,177,112,.09),transparent 66%),#161613;box-shadow:inset 0 0 0 8px #151511,inset 0 0 0 9px rgba(217,184,132,.12);padding:31px 36px;display:flex;flex-direction:column;justify-content:space-between}.feature-watermark{position:absolute;inset:18% 0 auto;text-align:center;font:400 285px/1 var(--serif);letter-spacing:-.2em;left:-15px;color:rgba(211,176,110,.055);z-index:-1;user-select:none;pointer-events:none}.feature-topline,.feature-bottomline{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:9px;font-weight:600;letter-spacing:.18em;color:#a58c65}.feature-center{display:flex;align-items:center;justify-content:center;gap:24px}.feature-number{font:400 clamp(115px,12vw,184px)/.9 var(--serif);letter-spacing:-.07em;color:var(--gold-bright)}.feature-caption{border-left:1px solid var(--gold-deep);padding-left:19px;font-size:12px;line-height:2;letter-spacing:.18em;color:#e8dbca}.feature-bottomline svg{width:90px;color:var(--gold-deep)}
/* MATTERS */
.areas-section{position:relative;background:#161714;overflow:hidden}.areas-section::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(221,168,92,.035),transparent 50%);pointer-events:none}.areas-grain{position:absolute;inset:0;opacity:.28;pointer-events:none;background-image:radial-gradient(rgba(235,212,166,.2) .5px,transparent .5px);background-size:6px 6px;mask-image:linear-gradient(90deg,transparent,#000 70%,transparent)}.areas-section .container{position:relative}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:46px}.section-head .section-title{margin-bottom:0}.section-head-aside{display:flex;align-items:center;gap:16px;color:#938e82;font-size:9px;line-height:1.9;letter-spacing:.16em;text-align:right}.section-aside-line{width:1px;height:45px;background:var(--gold-deep)}
.practice-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.practice-card{position:relative;min-height:305px;grid-column:span 3;display:flex;flex-direction:column;align-items:flex-start;padding:25px 26px 23px;overflow:hidden;isolation:isolate;background:linear-gradient(140deg,rgba(255,255,255,.018),rgba(0,0,0,.12)),#1b1c19;border:1px solid rgba(222,177,112,.19);transition:transform .35s var(--easing),border-color .35s,background .35s,box-shadow .35s}.practice-card:nth-child(n+5){grid-column:span 4}.practice-card::before{content:'';pointer-events:none;position:absolute;inset:0;background:radial-gradient(350px circle at var(--mx,60%) var(--my,20%),rgba(218,167,90,.12),transparent 68%);opacity:0;transition:opacity .35s}.practice-card::after{content:'';position:absolute;inset:8px;border:1px solid transparent;pointer-events:none;transition:border-color .35s}.practice-card:hover,.practice-card:focus-visible{transform:translateY(-6px);border-color:rgba(238,201,142,.64);box-shadow:0 25px 45px rgba(0,0,0,.24)}.practice-card:hover::before,.practice-card:focus-visible::before{opacity:1}.practice-card:hover::after,.practice-card:focus-visible::after{border-color:rgba(222,177,112,.11)}.practice-num{font:600 12px/1 var(--sans);color:var(--gold);letter-spacing:.12em}.practice-num span{font-weight:400;color:#776d5b;font-size:9px}.practice-icon{height:98px;display:flex;align-items:center;margin-top:15px;color:var(--gold-deep);transition:color .3s,transform .35s}.practice-icon svg{width:54px;height:54px}.practice-card:hover .practice-icon{color:var(--gold-bright);transform:translateX(5px)}.practice-name{font:500 clamp(29px,2.4vw,38px)/1 var(--serif);letter-spacing:-.03em;margin-top:auto;position:relative;z-index:1}.practice-bottom{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px;padding-top:15px;border-top:1px solid rgba(217,184,132,.19);font:600 9px/1 var(--sans);letter-spacing:.11em;color:#918b7e;position:relative;z-index:1}.practice-arrow{color:var(--gold);font-size:22px;font-weight:400;line-height:.6;transition:transform .3s}.practice-card:hover .practice-arrow{transform:translate(3px,-3px)}.areas-after{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:31px}.areas-after>span{font-size:10px;color:#8c887f;letter-spacing:.15em}
/* DIGITAL CARD */
.digital-section{background:#0b0d0c;padding-block:95px}.digital-panel{display:grid;grid-template-columns:.93fr 1.07fr;min-height:460px;border:1px solid rgba(240,205,146,.3);background:#e5d1b0;color:#1c1a16;box-shadow:0 30px 80px rgba(0,0,0,.2);overflow:hidden}.digital-illustration{min-height:450px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 47% 46%,#29241c,#111311 65%)}.digital-illustration::after{content:'';inset:15px;position:absolute;border:1px solid rgba(217,184,132,.24);pointer-events:none}.digital-circle{position:absolute;border:1px solid rgba(226,186,118,.17);border-radius:50%;width:420px;height:420px;z-index:-1}.circle-one{transform:translate(0,48px)}.circle-two{width:330px;height:330px;transform:translate(0,48px)}.digital-mark{font:500 clamp(130px,15vw,220px)/1 var(--serif);letter-spacing:-.18em;color:var(--gold);padding-right:.18em;text-shadow:0 3px 40px rgba(186,141,69,.16)}.digital-illustration-caption{position:absolute;bottom:38px;left:39px;font:600 10px/1 var(--sans);letter-spacing:.28em;color:#b39870}.digital-content{padding:clamp(45px,5.3vw,80px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(145deg,#eee0c8,#e0c9a6)}.section-kicker-dark{color:#785935}.section-kicker-dark .section-kicker-stroke{background:#a48658}.digital-title{font:500 clamp(60px,6vw,95px)/.87 var(--serif);letter-spacing:-.05em;margin:28px 0 19px}.digital-title em{color:#916e46;font-weight:500}.digital-content p{font-size:14px;line-height:1.8;color:#504737;margin:0 0 32px}.btn-dark{color:#e9d9bf;background:#181916;border:1px solid #181916;min-height:54px}.btn-dark:hover{background:#3a3125;box-shadow:0 14px 28px rgba(20,18,15,.14)}.digital-external{font-size:9px;font-weight:600;letter-spacing:.2em;color:#827057;margin-top:17px}
/* CONTACT */
.contact-section{background:radial-gradient(circle at 50% 0%,#1a1914,#0b0c0b 50%);position:relative}.contact-header{text-align:center;display:flex;align-items:center;flex-direction:column}.contact-header .section-title{margin-top:24px}.contact-header .section-description{max-width:600px;text-align:center}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:57px}.contact-card{min-height:283px;border:1px solid rgba(217,184,132,.22);background:linear-gradient(150deg,rgba(231,181,105,.045),transparent 40%),#151613;display:flex;align-items:flex-start;flex-direction:column;padding:25px 27px;transition:border-color .3s,transform .3s,background .3s;min-width:0}.contact-card:is(a):hover{border-color:var(--gold);transform:translateY(-4px);background-color:#1b1b17}.contact-card-top{display:flex;justify-content:space-between;align-items:start;width:100%;color:#ad9370;font-size:9px;font-weight:600;letter-spacing:.18em;gap:14px}.contact-icon{width:42px;height:42px;border:1px solid rgba(222,177,112,.29);display:grid;place-items:center;color:var(--gold)}.contact-icon svg{width:20px;height:20px}.contact-card-label{font-size:11px;color:#a19c94;margin-top:auto;margin-bottom:10px}.contact-card-value{font:500 clamp(23px,2.35vw,35px)/1.12 var(--serif);letter-spacing:-.024em;color:#f3eee6;overflow-wrap:anywhere}.contact-email{font-size:clamp(19px,1.76vw,27px);line-height:1.4}.contact-card-action{width:100%;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding-top:15px;border-top:1px solid rgba(217,184,132,.2);font-size:10px;color:var(--gold);letter-spacing:.07em;font-weight:600}.contact-card-action>span{font-size:19px;font-weight:400}.contact-card-location .contact-card-action{color:#958978;letter-spacing:.16em;font-size:9px}.contact-lower{display:flex;align-items:center;gap:19px;color:#8f7958;font-size:10px;letter-spacing:.24em;padding-top:66px}.contact-lower-mark{font-size:25px}.contact-lower-line{flex:1;height:1px;background:linear-gradient(90deg,rgba(217,184,132,.3),transparent)}
/* FOOTER */
.site-footer{border-top:1px solid rgba(217,184,132,.2);background:#080909}.footer-top{display:grid;grid-template-columns:1.6fr .75fr 1.28fr .75fr;gap:clamp(20px,3vw,60px);padding-block:72px 85px}.footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.footer-identity img{width:116px;height:116px;object-fit:contain;border:1px solid rgba(217,184,132,.13)}.footer-identity>div{display:flex;flex-direction:column;gap:6px}.footer-identity>div>span{font:600 19px/1 var(--serif);color:var(--cream)}.footer-identity small{font-size:9px;letter-spacing:.28em;color:var(--gold)}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}.footer-column h3{margin:2px 0 14px;color:var(--gold);font-size:10px;letter-spacing:.22em;font-weight:600}.footer-column a,.footer-column>span{font-size:12px;color:#a29f97;line-height:1.6;transition:color .3s}.footer-column a:hover{color:var(--gold-bright)}.footer-email{overflow-wrap:anywhere}.footer-digital{border-bottom:1px solid var(--gold-deep);padding-bottom:6px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-block:24px 28px;border-top:1px solid rgba(217,184,132,.16);font:600 9px/1.6 var(--sans);letter-spacing:.15em;color:#858078}.footer-bottom a{color:var(--gold);white-space:nowrap}.footer-bottom a:hover{color:#fff}
.back-top{position:fixed;bottom:27px;right:27px;z-index:30;display:grid;place-items:center;width:44px;height:44px;background:#d5b27f;color:#161410;font-size:23px;opacity:0;transform:translateY(10px);pointer-events:none;border:1px solid #e4c596;transition:transform .3s,opacity .3s,background .3s}.back-top.show{opacity:1;transform:translateY(0);pointer-events:auto}.back-top:hover{background:#f0d5a8}.mobile-quick-contact{display:none}
/* La información nunca se oculta: el sitio permanece visible aun sin JavaScript. */
.reveal{opacity:1;transform:none}
.practice-card.reveal:hover{transform:translateY(-6px)}

/* Presentación institucional del Licenciado */
.lawyer-section{position:relative;background:linear-gradient(115deg,#111210,#0c0d0c 55%,#13110d);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lawyer-layout{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(35px,6vw,115px)}
.lawyer-intro{min-width:0}.lawyer-caption{margin:46px 0 5px;font-size:10px;font-weight:600;letter-spacing:.26em;color:#d1b488}
.lawyer-intro .section-title{font-size:clamp(48px,5.3vw,86px)}
.lawyer-location{display:flex;gap:13px;align-items:center;margin:28px 0 32px;color:#b9b0a2;font-size:13px;letter-spacing:.04em}
.lawyer-location span{color:var(--gold);font-size:18px}
.lawyer-art{position:relative;border:1px solid rgba(225,184,120,.34);box-shadow:0 20px 70px #0007;aspect-ratio:1/1;overflow:hidden;background:#060606;max-width:510px;justify-self:end}
.lawyer-art:before{content:'';position:absolute;inset:11px;border:1px solid rgba(225,184,120,.12);z-index:1;pointer-events:none}
.lawyer-art img{width:100%;height:100%;object-fit:contain}
.lawyer-art-index,.lawyer-art-bottom{position:absolute;z-index:2;left:18px;padding:6px 9px;background:#080909;color:var(--gold);letter-spacing:.18em;font-size:9px}
.lawyer-art-index{top:0}.lawyer-art-bottom{bottom:0;left:auto;right:18px}
/* Banda final de contacto */
.closing-banner{overflow:hidden;background:radial-gradient(circle at 94% 46%,rgba(211,166,99,.16),transparent 49%),#161611;border-top:1px solid rgba(218,184,132,.24)}
.closing-layout{padding-block:66px;display:flex;justify-content:space-between;align-items:center;gap:34px}
.closing-kicker{margin:0 0 15px;font-size:10px;letter-spacing:.2em;color:#bcac93}.closing-kicker span{color:var(--gold);margin-inline:6px}
.closing-title{font:500 clamp(39px,4.7vw,72px)/1 var(--serif);letter-spacing:-.03em;margin:0}.closing-title em{color:var(--gold-bright);font-weight:500}
.closing-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
@media(max-width:800px){.lawyer-layout{grid-template-columns:1fr;gap:44px}.lawyer-art{width:min(100%,480px);justify-self:center}.closing-layout{flex-direction:column;align-items:flex-start}.closing-actions{justify-content:flex-start}}
@media(max-width:600px){.lawyer-caption{margin-top:27px;line-height:1.8}.lawyer-intro .section-title{font-size:clamp(46px,10vw,62px)}.lawyer-location{font-size:12px}.closing-layout{padding-block:55px;gap:29px}.closing-title{font-size:49px}.closing-actions{width:100%}.closing-actions .btn{flex:1;font-size:11px;padding-inline:15px}}

/* Laptop and tablet */
@media(max-width:1270px){.container{width:min(100% - 64px,1180px)}.header-inner{gap:20px}.desktop-nav{gap:17px}.brand-title strong{font-size:15px}.hero h1{font-size:clamp(55px,6.2vw,88px)}.hero-overline{letter-spacing:.25em}.hero-visual{max-width:490px}.hero-side-text{display:none}.practice-card{padding:23px 21px}.hero-scroll{left:32px}}
@media(max-width:1050px){.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex}.site-header{height:76px}.site-header.scrolled{height:72px}.mobile-menu{position:fixed;display:flex;flex-direction:column;inset:calc(76px + 0px) 0 auto 0;background:#111311;border-bottom:1px solid var(--gold-deep);padding:17px 32px 31px;z-index:52;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .3s,transform .3s,visibility .3s;box-shadow:0 28px 40px #0009;max-height:calc(100dvh - 76px);overflow-y:auto}.site-header.scrolled .mobile-menu{top:72px;bottom:auto}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-menu a{padding:14px 0;border-bottom:1px solid rgba(217,184,132,.15);font:500 25px/1.2 var(--serif);display:flex;justify-content:space-between;align-items:center;gap:18px}.mobile-menu a span{font:600 10px/1 var(--sans);letter-spacing:.2em;color:var(--gold)}.mobile-menu .mobile-menu-call{margin-top:15px;border-bottom:0;color:var(--gold);font-size:22px}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero-layout{grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:clamp(50px,6.2vw,70px)}.hero-visual{max-width:470px}.hero-copy{padding-top:20px}.hero-description{font-size:14px}.firm-layout{gap:40px}.section-pad{padding-block:95px}.practice-card{min-height:280px}.digital-content{padding:45px}.footer-top{grid-template-columns:1.3fr 1fr 1fr;row-gap:40px}.footer-top .footer-column:last-child{grid-column:2 / span 2}}
@media(max-width:800px){.container{width:min(100% - 42px,720px)}.topline-phone{font-size:0;letter-spacing:0}.topline-phone span{font-size:13px}.topline-phone{font-size:9px}.topline-inner{font-size:8px;letter-spacing:.11em}.hero{min-height:auto}.hero-layout{grid-template-columns:1fr;gap:35px;min-height:auto;padding-block:68px 90px}.hero-copy{padding:0;max-width:650px}.hero h1{font-size:clamp(60px,10vw,87px)}.hero-visual{width:100%;max-width:600px;justify-self:center;aspect-ratio:1/1;padding:20px}.hero-scroll{left:23px;bottom:21px}.hero-footnote{margin-top:25px}.practice-marquee{overflow:hidden}.marquee-inner{min-width:max-content;justify-content:center;gap:24px;animation:marquee-sway 11s ease-in-out infinite alternate}@keyframes marquee-sway{to{transform:translateX(-130px)}}.firm-layout{grid-template-columns:1fr;gap:48px}.firm-feature{min-height:350px}.section-pad{padding-block:86px}.section-title{font-size:clamp(49px,8vw,72px)}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.practice-card,.practice-card:nth-child(n+5){grid-column:auto}.practice-card:last-child{grid-column:1/-1}.practice-card{min-height:255px}.practice-icon{height:70px}.practice-icon svg{width:47px;height:47px}.practice-name{font-size:35px}.digital-panel{grid-template-columns:1fr 1fr;min-height:410px}.digital-illustration{min-height:410px}.digital-content{padding:32px}.digital-title{font-size:clamp(55px,8vw,80px)}.contact-grid{grid-template-columns:1fr 1fr}.contact-card-location{grid-column:1/-1;min-height:210px}.contact-card{min-height:255px}.contact-card-value{font-size:30px}.contact-email{font-size:24px}.footer-top{grid-template-columns:1fr 1fr 1fr}.footer-identity{grid-column:1/-1;flex-direction:row;align-items:center}.footer-identity img{width:95px;height:95px}.footer-top .footer-column:last-child{grid-column:auto}.footer-bottom{flex-wrap:wrap}}
@media(max-width:600px){html{scroll-padding-top:72px}.container{width:calc(100% - 38px)}.topline{height:32px}.topline-place{max-width:61%;font-size:8px}.topline-phone{font-size:0;display:flex;align-items:center;white-space:nowrap}.topline-phone span{font-size:0;margin:0}.topline-phone::after{content:'81 2063 3467';font-size:9px;letter-spacing:0;color:#d9c5a5}.site-header{height:70px}.site-header.scrolled{height:68px}.header-inner{gap:10px}.brand-monogram{font-size:30px;width:49px;height:39px}.brand-title strong{font-size:14px}.brand-title span{font-size:7px}.mobile-menu{top:70px;padding:12px 22px 26px;max-height:calc(100dvh - 70px)}.site-header.scrolled .mobile-menu{top:68px}.hero-layout{padding-top:55px;padding-bottom:89px;gap:32px}.eyebrow{font-size:8px;letter-spacing:.14em;gap:9px}.eyebrow-rule{width:21px}.hero-overline{margin-top:32px;font-size:11px;letter-spacing:.28em}.hero h1{font-size:clamp(55px,12.35vw,76px);letter-spacing:-.06em;margin:15px 0 25px}.hero h1 em{letter-spacing:-.06em}.hero-description{font-size:14px;line-height:1.75}.hero-description span{font-size:10px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.btn{padding:0 12px 0 15px;font-size:11px;gap:5px;min-height:51px}.btn-arrow{font-size:18px}.hero-footnote{font-size:8px;margin-top:28px}.hero-visual{padding:17px;margin:0}.ornament-top{font-size:8px;top:4px}.ornament-bottom{font-size:7px;bottom:3px}.hero-visual-corner{width:21px;height:21px}.hero-scroll{font-size:8px;left:19px;bottom:20px}.marquee-inner{min-height:55px}.marquee-inner span{font-size:10px}.section-pad{padding-block:76px}.section-kicker{font-size:9px;letter-spacing:.16em}.section-kicker-stroke{width:29px}.section-title{font-size:clamp(47px,10.75vw,64px);margin-top:22px}.section-description{font-size:13px;line-height:1.9}.firm-name{font-size:10px}.firm-feature{min-height:285px;padding:24px 25px}.feature-watermark{font-size:220px}.feature-number{font-size:132px}.feature-caption{font-size:10px;padding-left:13px}.feature-topline,.feature-bottomline{font-size:8px}.section-head{margin-bottom:32px}.section-head-aside{display:none}.practice-grid{grid-template-columns:1fr 1fr;gap:10px}.practice-card{min-height:228px;padding:18px 14px 17px}.practice-num{font-size:11px}.practice-icon{height:58px;margin-top:16px}.practice-icon svg{width:37px;height:37px}.practice-name{font-size:clamp(27px,6.3vw,34px)}.practice-card:last-child{grid-column:1/-1}.practice-card:last-child .practice-name{font-size:35px}.practice-bottom{font-size:7px;margin-top:17px;letter-spacing:.07em}.practice-arrow{font-size:19px}.areas-after{align-items:flex-start;flex-direction:column;gap:16px;padding-top:30px}.areas-after>span{font-size:9px;line-height:1.9}.digital-section{padding-block:52px}.digital-panel{grid-template-columns:1fr}.digital-illustration{min-height:270px}.digital-circle{width:300px;height:300px}.circle-two{width:230px;height:230px}.digital-mark{font-size:154px}.digital-illustration-caption{bottom:27px;left:27px;font-size:9px}.digital-content{padding:45px 27px 49px}.digital-title{font-size:80px;margin:23px 0 16px}.digital-content p{font-size:13px;margin-bottom:25px}.btn-dark{min-height:51px;padding-inline:21px 15px;gap:34px}.contact-header .section-title{font-size:clamp(46px,10.5vw,63px)}.contact-grid{grid-template-columns:1fr;gap:12px;margin-top:39px}.contact-card,.contact-card-location{grid-column:auto;min-height:240px;padding:24px}.contact-card-value{font-size:36px}.contact-email{font-size:clamp(24px,6.3vw,29px)}.contact-lower{padding-top:45px;font-size:8px;gap:10px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px;padding-block:55px 60px}.footer-identity{grid-column:1/-1}.footer-identity img{width:86px;height:86px}.footer-column h3{font-size:9px;margin-bottom:10px}.footer-column a,.footer-column>span{font-size:11px}.footer-top .footer-column:last-child{grid-column:2}.footer-top .footer-column:nth-child(3){grid-column:1/-1;grid-row:3}.footer-bottom{padding-bottom:88px;gap:10px;align-items:flex-start;flex-direction:column;font-size:8px}.back-top{right:16px;bottom:81px;width:38px;height:38px}.mobile-quick-contact{position:fixed;bottom:0;left:0;right:0;z-index:31;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#7c6545;padding:1px 1px calc(1px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px #0009}.mobile-quick-contact a{display:flex;gap:10px;align-items:center;justify-content:center;min-height:56px;background:#111310;font-size:12px;font-weight:600;color:var(--cream);letter-spacing:.03em}.mobile-quick-contact a:first-child{background:#cdaa75;color:#141310}.mobile-quick-contact a span{font-size:18px}}
@media(max-width:370px){.brand{gap:7px}.brand-title strong{font-size:12px}.brand-title span{font-size:6px}.brand-monogram{font-size:27px;width:43px}.hero h1{font-size:51px}.hero-actions{gap:7px}.btn{font-size:10px;padding-inline:11px}.practice-card{padding:17px 12px}.practice-name{font-size:25px}.feature-center{gap:10px}.feature-number{font-size:110px}.feature-caption{font-size:9px}.digital-title{font-size:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html.motion-ok .reveal{opacity:1;transform:none}}

/* Marca original adjunta: se utiliza sin editar ni recortar su contenido. */
.brand-logo{width:61px;height:61px;object-fit:contain;flex-shrink:0;border:1px solid rgba(217,184,132,.19);background:#070707}
@media(max-width:600px){.brand-logo{width:52px;height:52px}.brand{gap:9px}.brand-title strong{font-size:14px}}
@media(max-width:370px){.brand-logo{width:44px;height:44px}.brand-title strong{font-size:12px}}
