:root{--ink:#0b100d;--ink-soft:#181d19;--paper:#e8e2d7;--paper-light:#f3eee5;--stone:#9e968d;--taupe:#71675d;--nickel:#aaa69d;--bronze:#a77a3d;--bronze-light:#c89b5b;--line-dark:#10131038;--line-light:#ffffff38;--page-scroll:0px;--scroll-progress:0%}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:86px}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Avenir Next,Avenir,Helvetica,Arial,sans-serif}body.menu-is-open,body.lightbox-is-open{overflow:hidden}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}img{max-width:100%;display:block}svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:square;stroke-linejoin:miter;width:20px;height:20px}h1,h2,h3,p{text-wrap:pretty}h1,h2,h3{letter-spacing:-.038em;font-family:Didot,"Bodoni 72",Georgia,Times New Roman,serif;font-weight:400}:focus-visible{outline:2px solid var(--bronze-light);outline-offset:5px}::selection{background:var(--bronze);color:#fff}.scroll-progress{z-index:100;width:var(--scroll-progress);background:linear-gradient(90deg, #6f491e, var(--bronze-light));height:2px;position:fixed;inset:0 auto auto 0;box-shadow:0 0 15px #c89b5b80}.cursor-light{z-index:44;left:var(--spot-x,50vw);top:var(--spot-y,50vh);pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle,#cda4670e,#0000 67%);border-radius:50%;width:500px;height:500px;position:fixed;transform:translate(-50%,-50%)}.paper-surface{background-color:var(--paper-light);background-image:radial-gradient(#4c3c2b13 .6px,#0000 .8px),linear-gradient(105deg,#fff6,#0000 44%,#795c370b);background-size:5px 5px,100% 100%}.eyebrow{letter-spacing:.22em;text-transform:uppercase;margin:0 0 28px;font-size:9px;font-weight:600}.eyebrow-dark{color:#76562e}.site-header{z-index:70;color:#fff;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;height:104px;padding:8px clamp(26px,5vw,76px);transition:height .45s cubic-bezier(.2,.75,.2,1),background .45s,border-color .45s,-webkit-backdrop-filter .45s,backdrop-filter .45s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{-webkit-backdrop-filter:blur(20px)saturate(112%);backdrop-filter:blur(20px)saturate(112%);background:#0a0e0bd1;border-color:#ffffff24;height:76px}.brand-link{align-items:center;height:100%;display:flex}.brand-logo{object-fit:contain;width:112px;height:90px;transition:width .4s,height .4s}.brand-logo-light{filter:invert()grayscale()brightness(2)}.site-header.is-scrolled .brand-logo{width:86px;height:64px}.desktop-nav{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:clamp(19px,2.7vw,42px);font-size:10px;display:flex}.desktop-nav>a:not(.header-contact){opacity:.78;padding:15px 0;position:relative}.desktop-nav>a:not(.header-contact):after{content:"";background:var(--bronze-light);height:1px;transition:right .3s;position:absolute;bottom:7px;left:0;right:100%}.desktop-nav>a:hover{opacity:1}.desktop-nav>a:hover:after{right:0}.header-contact{border:1px solid #ffffff8c;align-items:center;gap:28px;min-height:46px;padding:0 17px;transition:background .25s,color .25s,transform .25s;display:inline-flex}.header-contact:hover{background:var(--paper-light);color:var(--ink);transform:translateY(-2px)}.menu-toggle{cursor:pointer;background:0 0;border:1px solid #ffffff80;place-items:center;width:48px;height:44px;padding:0;display:none;position:relative}.menu-toggle span{background:currentColor;width:20px;height:1px;transition:transform .3s,top .3s;position:absolute}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:25px}.menu-toggle[aria-expanded=true] span:first-child{top:21px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{top:21px;transform:rotate(-45deg)}.mobile-navigation{display:none}.hero{height:max(790px,100svh);min-height:100svh;color:var(--paper-light);align-items:center;padding:132px clamp(28px,7.4vw,112px) 76px;display:flex;position:relative;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media{overflow:hidden}.hero-media img{object-fit:cover;object-position:center;width:100%;height:113%;transform:translate3d(0, calc(var(--page-scroll) * .055), 0) scale(1.055);will-change:transform}.hero-shade{background:linear-gradient(90deg,#050907f2 0%,#070a08cc 34%,#080b093b 66%,#080b091a),linear-gradient(#0000 40%,#080a09ad)}.hero:before{content:"";z-index:1;pointer-events:none;border:1px solid #ffffff1f;position:absolute;inset:20px}.hero-content{z-index:2;-webkit-backdrop-filter:blur(15px)saturate(105%);backdrop-filter:blur(15px)saturate(105%);background:linear-gradient(120deg,#0a0e0bb8,#0d100e59);border:1px solid #ffffff2e;width:min(770px,63vw);padding:clamp(35px,4vw,62px);position:relative;box-shadow:0 38px 100px #00000052}.hero-content:before{content:"";background:linear-gradient(var(--bronze-light), #6b4824);width:3px;height:108px;position:absolute;top:-1px;left:-1px}h1{max-width:720px;margin:0;font-size:clamp(54px,5.5vw,88px);line-height:.97}.hero-copy{color:#ffffffc2;max-width:590px;margin:30px 0 0;font-size:clamp(15px,1.18vw,18px);line-height:1.7}.hero-actions{gap:12px;margin-top:38px;display:flex}.button{border:1px solid;justify-content:space-between;align-items:center;gap:34px;min-height:56px;padding:0 20px;font-size:11px;font-weight:600;transition:transform .2s,color .25s,background .25s,box-shadow .25s;display:inline-flex;position:relative;overflow:hidden}.button:before{content:"";background:linear-gradient(105deg,#0000 20%,#ffffff47 50%,#0000 78%);transition:transform .55s;position:absolute;inset:0;transform:translate(-120%)}.button:hover:before{transform:translate(120%)}.button:hover{transform:translateY(-3px);box-shadow:0 16px 34px #00000038}.button:active{transform:translateY(0)scale(.98)}.button-light{background:var(--paper-light);border-color:var(--paper-light);min-width:245px;color:var(--ink)}.button-glass{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c100d45;border-color:#ffffff80}.hero-edition{z-index:2;writing-mode:vertical-rl;letter-spacing:.3em;opacity:.6;margin:0;font-size:8px;position:absolute;top:48%;right:clamp(46px,7vw,108px)}.hero-scroll{z-index:2;letter-spacing:.2em;text-transform:uppercase;transform-origin:100%;align-items:center;gap:15px;font-size:8px;display:flex;position:absolute;bottom:40px;right:clamp(30px,5vw,78px);transform:rotate(90deg)translate(-50%)}.hero-scroll i{background:#fff9;width:64px;height:1px;position:relative;overflow:hidden}.hero-scroll i:after{content:"";background:var(--bronze-light);animation:2.2s ease-in-out infinite scan;position:absolute;inset:0;transform:translate(-100%)}@keyframes scan{50%,to{transform:translate(100%)}}.proof-strip{z-index:3;color:#fff;background:linear-gradient(120deg,#202521f7,#080c09fc),url(/media/trayectoria-caballo.jpg) 50%/cover;border-top:1px solid #ffffff21;grid-template-columns:repeat(4,1fr);min-height:128px;padding:0 clamp(28px,5vw,78px);display:grid;position:relative}.proof-strip>div{border-right:1px solid #ffffff24;grid-template-rows:auto auto;grid-template-columns:47px 1fr;align-content:center;column-gap:18px;padding:27px clamp(18px,2.4vw,38px);display:grid}.proof-strip>div:first-child{padding-left:0}.proof-strip>div:last-child{border:0}.proof-icon{width:42px;height:42px;color:var(--bronze-light);fill:none;stroke:currentColor;stroke-width:1.15px;grid-row:1/3;align-self:center}.proof-strip span{color:var(--bronze-light);letter-spacing:-.03em;font:400 clamp(29px,3vw,44px)/.9 Didot,Georgia,serif}.proof-strip strong{color:#ffffffb8;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;font-size:9px;font-weight:500}.intent-section{padding:138px clamp(28px,6.5vw,98px)}.intent-heading{grid-template-columns:.6fr 1.3fr .7fr;align-items:start;gap:6vw;margin-bottom:78px;display:grid}.intent-heading h2,.section-intro h2,.gallery-head h2,.firm-copy h2,.experience-copy h2,.faq-intro h2,.contact h2{margin:0;font-size:clamp(48px,5.2vw,80px);line-height:.97}.intent-heading>p:last-child,.section-intro>p:last-child,.gallery-head>p:last-child,.faq-intro>p:last-child{color:#4e4b45;margin:8px 0 0;font-size:14px;line-height:1.75}.intent-console{color:#fff;background:#0d120f;grid-template-columns:.85fr 1.15fr;min-height:480px;display:grid;box-shadow:0 35px 80px #1c171029}.intent-options{background:linear-gradient(135deg,#232723a6,#0a0d0bb3),url(/media/portfolio/viaducto-despacho.jpg) 50%/cover;align-content:center;padding:34px;display:grid}.intent-options button{color:#ffffffe6;text-align:left;text-shadow:0 1px 14px #000000b8;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff47;grid-template-columns:48px 1fr auto;align-items:center;min-height:100px;padding:0 7px;transition:color .3s,padding .3s,background .3s,text-shadow .3s;display:grid}.intent-options button:first-child{border-top:1px solid #fff3}.intent-options button span{color:var(--bronze-light);font-size:9px}.intent-options button svg{opacity:0;transition:opacity .3s,transform .3s;transform:translate(-10px)}.intent-options button:hover,.intent-options button.is-active{color:#fff;text-shadow:0 1px 18px #000000e6;background:#ffffff16;padding:0 18px}.intent-options button.is-active svg{opacity:1;transform:none}.intent-result{background:linear-gradient(135deg,#151a16,#080c09);flex-direction:column;justify-content:center;padding:clamp(50px,8vw,125px);display:flex;position:relative;overflow:hidden}.intent-result:before{content:"";background:repeating-linear-gradient(120deg,#0000 0 110px,#ffffff07 110px 111px);position:absolute;inset:0}.intent-result>*{position:relative}.intent-result .eyebrow{color:var(--bronze-light)}.intent-result h3{max-width:560px;margin:0;font-size:clamp(38px,4.1vw,64px);line-height:1}.intent-result>p:not(.eyebrow){color:#ffffffb3;max-width:590px;margin:28px 0 38px;font-size:14px;line-height:1.75}.intent-result a{border-bottom:1px solid #ffffff8c;align-items:center;gap:28px;width:fit-content;padding-bottom:7px;font-size:11px;display:inline-flex}.services{border-top:1px solid #0e120f1f;padding:138px clamp(28px,6.5vw,98px)}.section-intro{grid-template-columns:.6fr 1.3fr .7fr;align-items:start;gap:6vw;margin-bottom:88px;display:grid}.services-layout{grid-template-columns:.72fr 1.28fr;align-items:start;gap:clamp(42px,5vw,80px);display:grid}.practice-list{border-top:1px solid var(--line-dark);position:sticky;top:104px}.practice-list article{border-bottom:1px solid var(--line-dark)}.practice-list button{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:48px 1fr 28px;align-items:center;width:100%;min-height:92px;padding:0;display:grid}.practice-list button span{color:var(--bronze);font-size:9px}.practice-list button strong{font:400 clamp(22px,2vw,32px)/1.1 Didot,Georgia,serif;transition:transform .35s}.practice-list button i{justify-self:end;font-size:24px;font-style:normal;font-weight:200}.practice-list button:hover strong,.practice-list article.is-active button strong{transform:translate(8px)}.practice-list article.is-active button strong{color:#755126}.practice-panel{min-width:0}.practice-media{background:var(--ink);height:580px;margin:0;position:relative;overflow:hidden}.practice-media img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .65s,transform 1.2s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:scale(1.04)}.practice-media img.is-active{opacity:1;animation:.7s both practice-in;transform:scale(1)}@keyframes practice-in{0%{opacity:.15;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.practice-media:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff29}.practice-media figcaption{z-index:2;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.15em;text-transform:uppercase;background:#0a0e0bb3;padding:10px 14px;font-size:8px;position:absolute;bottom:22px;left:24px}.practice-panel-copy{grid-template-columns:1.15fr .85fr;gap:24px 6vw;padding:38px 0 0;display:grid}.practice-panel-copy>p{color:#3f3d38;margin:0;font-size:14px;line-height:1.8}.practice-panel-copy ul{border-top:1px solid var(--line-dark);margin:0;padding:0;list-style:none}.practice-panel-copy li{border-bottom:1px solid var(--line-dark);min-height:42px;padding:12px 0 12px 18px;font-size:11px;position:relative}.practice-panel-copy li:before{content:"";background:var(--bronze);width:5px;height:5px;position:absolute;top:19px;left:0;transform:rotate(45deg)}.text-action{border-bottom:1px solid var(--ink);grid-column:1;align-items:center;gap:26px;width:fit-content;padding-bottom:7px;font-size:10px;font-weight:600;display:inline-flex}.gallery-stage{color:#fff;background:linear-gradient(132deg,#0e120ffb,#050907fc),url(/media/portfolio/viaducto-detalle.jpg) 50%/cover fixed;padding:138px clamp(28px,5vw,78px);overflow:hidden}.gallery-head{grid-template-columns:1fr .55fr;column-gap:7vw;max-width:930px;margin:0 0 90px clamp(0px,8vw,124px);display:grid}.gallery-head .eyebrow{color:var(--bronze-light);grid-column:1/-1}.gallery-head h2{color:var(--paper-light)}.gallery-head>p:last-child{color:#ffffff9e}.gallery-grid{grid-template-rows:470px 330px 420px;grid-template-columns:1.15fr .75fr .65fr;gap:16px;max-width:1380px;margin:auto;display:grid}.gallery-grid figure{background:#151915;margin:0;position:relative;overflow:hidden}.gallery-trigger{color:#fff;cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.gallery-grid img{object-fit:cover;width:100%;height:100%;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .5s}.gallery-grid figure:hover img{filter:brightness(1.06);transform:scale(1.035)}.gallery-grid figure:after{content:"";pointer-events:none;background:linear-gradient(#0000 50%,#070a089e);position:absolute;inset:0}.gallery-grid figcaption{z-index:2;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:14px;font-size:8px;display:flex;position:absolute;inset:auto 22px 20px}.gallery-grid figcaption span{color:var(--bronze-light)}.gallery-open{z-index:3;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.14em;text-transform:uppercase;opacity:0;background:#080c09ad;border:1px solid #ffffff4d;align-items:center;gap:12px;min-height:35px;padding:0 12px;font-size:8px;font-weight:600;transition:opacity .3s,transform .3s,background .3s;display:inline-flex;position:absolute;top:18px;right:18px;transform:translateY(-7px)}.gallery-open b{color:var(--bronze-light);font-size:17px;font-weight:300}:is(.gallery-trigger:hover .gallery-open,.gallery-trigger:focus-visible .gallery-open){opacity:1;background:#080c09db;transform:none}.gallery-brand{grid-column:1/3}.gallery-passage{grid-area:2/1/4}.gallery-detail{grid-area:2/2}.gallery-hospitality{grid-area:3/2/auto/4}.gallery-boardroom{grid-area:1/3/3}.lightbox{z-index:1000;color:#fff;-webkit-backdrop-filter:blur(22px)saturate(85%);backdrop-filter:blur(22px)saturate(85%);background:#030604f0;place-items:center;padding:18px;animation:.32s both lightbox-fade;display:grid;position:fixed;inset:0}@keyframes lightbox-fade{0%{opacity:0}}.lightbox-backdrop{cursor:default;background:0 0;border:0;padding:0;position:absolute;inset:0}.lightbox-panel{z-index:1;background:linear-gradient(135deg,#181d19fa,#080c09fc);border:1px solid #ffffff2e;grid-template-rows:54px minmax(0,1fr) 150px;width:min(1460px,100%);height:calc(100svh - 36px);min-height:580px;display:grid;position:relative;overflow:hidden;box-shadow:0 40px 120px #0000008c}.lightbox-bar{color:#ffffffbd;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid #ffffff24;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 22px;font-size:8px;display:grid}.lightbox-bar p{margin:0}.lightbox-bar button{color:#fff;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-self:end;align-items:center;gap:14px;font-size:8px;display:inline-flex}.lightbox-bar button b{color:var(--bronze-light);font:300 24px/1 Avenir,sans-serif}.lightbox-visual{touch-action:pan-y;background:#050806;min-height:0;position:relative;overflow:hidden}.lightbox-image{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;overflow:hidden}.lightbox-image img{object-fit:contain;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.lightbox-image.is-zoomed{cursor:zoom-out}.lightbox-image.is-zoomed img{transform:scale(1.42)}.lightbox-nav{z-index:3;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;letter-spacing:.13em;text-transform:uppercase;background:#070b08a3;border:1px solid #ffffff52;align-items:center;gap:14px;min-height:54px;padding:0 17px;font-size:8px;transition:background .25s,border-color .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{border-color:var(--bronze-light);background:#070b08eb}.lightbox-prev{left:18px}.lightbox-prev svg{transform:rotate(180deg)}.lightbox-next{right:18px}.lightbox-caption{border-top:1px solid #ffffff24;grid-template-columns:.82fr 1fr auto;align-items:center;gap:7vw;padding:26px 30px;display:grid}.lightbox-caption .eyebrow{color:var(--bronze-light);margin-bottom:10px}.lightbox-caption h3{margin:0;font-size:clamp(31px,3vw,50px);line-height:1}.lightbox-caption>p{color:#ffffffc7;max-width:590px;margin:0;font-size:13px;line-height:1.7}.lightbox-caption>button{color:#fff;cursor:pointer;letter-spacing:.14em;text-transform:uppercase;background:0 0;border:1px solid #ffffff47;min-height:42px;padding:0 14px;font-size:8px}.firm{background:#ddd5c8;grid-template-columns:1fr 1fr;display:grid}.firm-image{min-height:900px;margin:0;position:relative;overflow:hidden}.firm-image img{object-fit:cover;width:100%;height:100%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.firm-image:hover img{transform:scale(1.035)}.firm-image span{color:#fff;letter-spacing:.17em;text-transform:uppercase;background:#121512c7;padding:14px 22px;font-size:8px;position:absolute;bottom:0;right:0}.firm-copy{background-image:linear-gradient(115deg,#ffffff8f,#0000 55%),radial-gradient(#503f2d14 .6px,#0000 .7px);background-size:100% 100%,6px 6px;padding:clamp(70px,8vw,132px) clamp(38px,7vw,108px)}.firm-copy>p:not(.eyebrow){color:#49463f;margin:35px 0 52px;font-size:14px;line-height:1.8}.method-list{border-top:1px solid var(--line-dark);margin:0;padding:0;list-style:none}.method-list li{border-bottom:1px solid var(--line-dark);grid-template-columns:48px 1fr;align-items:center;min-height:78px;display:grid}.method-list li>span{color:var(--bronze);font-size:9px}.method-list li div{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.method-list b{font:400 23px/1 Didot,Georgia,serif}.method-list small{color:#676158;font-size:10px}.experience{color:#fff;align-items:center;min-height:980px;padding:110px clamp(28px,7vw,108px);display:flex;position:relative;overflow:hidden}.experience-media{position:absolute;inset:0}.experience-media img{object-fit:cover;object-position:center;width:100%;height:100%;transform:translateY(calc(var(--page-scroll) * -.012)) scale(1.05)}.experience:after{content:"";background:linear-gradient(90deg,#070a08f5,#080b09b8 49%,#080b0914 82%);position:absolute;inset:0}.experience-copy{z-index:1;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#0c100d8a;border:1px solid #ffffff30;width:min(760px,63vw);padding:clamp(34px,4vw,62px);position:relative}.year{color:var(--bronze-light);letter-spacing:-.07em;margin:0 0 16px;font:400 clamp(92px,12vw,188px)/.78 Didot,Georgia,serif;display:block}.experience-copy>p:not(.eyebrow){color:#ffffffbd;max-width:590px;margin:30px 0 42px;font-size:14px;line-height:1.78}.timeline{border-top:1px solid var(--line-light)}.timeline div{border-bottom:1px solid var(--line-light);grid-template-columns:80px 1fr;align-items:center;min-height:66px;display:grid}.timeline span{color:var(--bronze-light);letter-spacing:.1em;font-size:10px}.timeline p{color:#ffffffbf;margin:0;font-size:11px}.offices{padding:138px clamp(28px,5vw,78px)}.office-intro{grid-template-columns:.55fr 1.2fr .75fr}.office-gallery{background:var(--ink);grid-template-columns:1fr 1fr;gap:1px;display:grid}.office-card{color:#fff;min-height:680px;position:relative;overflow:hidden}.office-card:after{content:"";background:linear-gradient(#070a0805 32%,#070a08eb);transition:background .5s;position:absolute;inset:0}.office-card:hover:after{background:linear-gradient(#070a0800 25%,#070a08db)}.office-card img{object-fit:cover;width:100%;height:680px;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.office-card:hover img{transform:scale(1.04)}.office-card-overlay{z-index:2;padding:38px;position:absolute;bottom:0;left:0;right:0}.office-card-overlay .eyebrow{color:var(--bronze-light);margin-bottom:12px}.office-card-overlay h3{margin:0;font-size:clamp(42px,4vw,66px);line-height:1}.office-card-overlay address{color:#ffffffb8;max-width:540px;margin:15px 0 24px;font-size:11px;font-style:normal;line-height:1.6}.office-card-overlay a{border-bottom:1px solid #ffffff8c;align-items:center;gap:24px;width:fit-content;padding-bottom:6px;font-size:10px;display:inline-flex}.faq-section{border-top:1px solid var(--line-dark);grid-template-columns:.8fr 1.2fr;gap:clamp(60px,9vw,150px);padding:138px clamp(28px,7vw,108px);display:grid}.faq-intro{height:fit-content;position:sticky;top:120px}.faq-intro h2{font-size:clamp(46px,4.8vw,74px)}.faq-intro>p:last-child{margin-top:28px}.faq-list{border-top:1px solid var(--line-dark)}.faq-list details{border-bottom:1px solid var(--line-dark)}.faq-list summary{cursor:pointer;grid-template-columns:48px 1fr 24px;align-items:center;min-height:108px;padding:24px 0;font:400 clamp(20px,2vw,29px)/1.2 Didot,Georgia,serif;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--bronze);font:500 9px/1 Avenir,sans-serif}.faq-list summary i{width:16px;height:16px;position:relative}.faq-list summary i:before,.faq-list summary i:after{content:"";background:var(--ink);width:16px;height:1px;transition:transform .3s;position:absolute;top:7px;left:0}.faq-list summary i:after{transform:rotate(90deg)}.faq-list details[open] summary i:after{transform:rotate(0)}.faq-list details>p{color:#4f4b43;max-width:700px;margin:-4px 24px 34px 48px;font-size:13px;line-height:1.8}.contact{color:#fff;background-color:#101512;background-image:linear-gradient(120deg,#121613f5,#060a07f5),url(/media/portfolio/viaducto-despacho.jpg);background-position:50%;background-size:cover;grid-template-columns:1.08fr .92fr;gap:clamp(60px,8vw,126px);padding:138px clamp(28px,7vw,108px);display:grid;position:relative}.contact:before{content:"";background:linear-gradient(90deg, #6c4822, var(--bronze-light));width:34%;height:3px;position:absolute;top:0;left:0}.contact-text>p:not(.eyebrow){color:#ffffffb0;max-width:650px;margin:32px 0 30px;font-size:13px;line-height:1.8}.contact-intents{flex-wrap:wrap;gap:8px;margin:0 0 32px;display:flex}.contact-intents button{color:#ffffffa8;cursor:pointer;background:#ffffff06;border:1px solid #ffffff38;min-height:37px;padding:0 13px;font-size:9px;transition:color .25s,border-color .25s,background .25s}.contact-intents button:hover,.contact-intents button.is-active{color:#fff;border-color:var(--bronze-light);background:#a77a3d24}.contact-routes{border-top:1px solid var(--line-light)}.contact-routes a{border-bottom:1px solid var(--line-light);grid-template-columns:1fr auto;align-content:center;gap:10px;min-height:102px;transition:padding .3s,background .3s;display:grid}.contact-routes a:hover{background:#ffffff0b;padding:0 18px}.contact-routes span{color:var(--bronze-light);letter-spacing:.18em;text-transform:uppercase;font-size:8px}.contact-routes strong{overflow-wrap:anywhere;font:400 clamp(18px,2vw,27px)/1.2 Didot,Georgia,serif}.contact-routes svg{grid-area:1/2/3;align-self:center}.privacy-section{color:#fff;background-color:#101411;background-image:linear-gradient(125deg,#161c17fa,#060a07fa),radial-gradient(#ffffff14 .6px,#0000 .8px);background-size:auto,6px 6px;border-top:1px solid #ffffff24;grid-template-columns:.68fr 1.32fr;gap:clamp(60px,9vw,150px);padding:120px clamp(28px,7vw,108px);display:grid}.privacy-heading{height:fit-content;position:sticky;top:110px}.privacy-heading .eyebrow{color:var(--bronze-light)}.privacy-heading h2{margin:0;font-size:clamp(48px,5vw,76px);line-height:.98}.privacy-heading>p:last-child{color:#ffffffc7;max-width:480px;margin:30px 0 0;font-size:14px;line-height:1.8}.privacy-lead{grid-template-columns:1fr 1fr;gap:28px;margin-bottom:48px;display:grid}.privacy-lead p{color:#ffffffd6;margin:0;font-size:13px;line-height:1.85}.privacy-lead strong{color:#fff}.privacy-accordions{border-top:1px solid #ffffff38}.privacy-accordions details{border-bottom:1px solid #ffffff38}.privacy-accordions summary{color:#fff;cursor:pointer;grid-template-columns:1fr auto;align-items:center;gap:20px;min-height:82px;font:400 clamp(20px,1.8vw,27px)/1.25 Didot,Georgia,serif;list-style:none;display:grid}.privacy-accordions summary::-webkit-details-marker{display:none}.privacy-accordions summary span{color:var(--bronze-light);font:300 25px/1 Avenir,sans-serif;transition:transform .25s}.privacy-accordions details[open] summary span{transform:rotate(45deg)}.privacy-accordions details>div{color:#fffc;max-width:830px;padding:0 36px 32px 0;font-size:13px;line-height:1.8}.privacy-accordions details p{margin:0 0 16px}.privacy-accordions details ul{margin:0;padding-left:20px}.privacy-accordions details a{color:#fff;border-bottom:1px solid var(--bronze-light)}.privacy-update{color:var(--bronze-light);letter-spacing:.04em;font-size:11px}footer{color:#fff;background:linear-gradient(115deg,#151916,#080c09);border-top:1px solid #ffffff1f;grid-template-columns:.75fr 1.25fr;align-items:start;gap:60px;min-height:280px;padding:55px clamp(28px,5vw,78px) 32px;font-family:Avenir Next,Avenir,Helvetica,Arial,sans-serif;display:grid}.footer-brand{align-items:center;gap:28px;display:flex}footer .brand-logo{width:128px;height:105px}.footer-brand p{color:#fff;letter-spacing:.045em;max-width:350px;font-family:inherit;font-size:12px;font-weight:500;line-height:1.65}footer nav{color:#fff;letter-spacing:.045em;text-transform:uppercase;flex-wrap:wrap;justify-content:flex-end;gap:22px 32px;padding-top:35px;font-family:inherit;font-size:12px;font-weight:500;line-height:1.65;display:flex}footer nav a{opacity:.88}footer nav a:hover{opacity:1}.footer-meta{color:#fff;letter-spacing:.045em;border-top:1px solid #fff3;grid-column:1/-1;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding-top:27px;font-family:inherit;font-size:12px;font-weight:500;line-height:1.65;display:grid}.powered-by{color:#fff;letter-spacing:.045em;text-align:center;justify-content:center;justify-self:center;align-items:center;gap:12px;min-height:48px;font-family:inherit;font-size:12px;font-weight:500;transition:opacity .25s,transform .25s;display:inline-flex}.powered-by:hover{opacity:.82;transform:translateY(-2px)}.powered-by span{white-space:nowrap;text-transform:uppercase}.powered-by img{object-fit:contain;width:146px;height:auto}.footer-meta-end{text-align:right;justify-self:end}.whatsapp-float{z-index:65;right:24px;bottom:max(92px, calc(env(safe-area-inset-bottom) + 82px));color:#fff;background:#25d366;border:0;border-radius:50%;place-items:center;width:62px;height:62px;transition:transform .25s,background .25s,opacity .25s,box-shadow .25s;display:grid;position:fixed;box-shadow:0 15px 38px #0000004d,0 0 0 1px #fff3}body.menu-is-open .whatsapp-float{opacity:0;pointer-events:none;transform:translateY(12px)}.whatsapp-float:hover{background:#20bd5a;transform:translateY(-4px)scale(1.035);box-shadow:0 18px 44px #00000057,0 0 0 7px #25d3661f}.whatsapp-float:active{transform:translateY(0)scale(.98)}.whatsapp-mark{fill:currentColor;stroke:none;width:30px;height:30px}.button-whatsapp .whatsapp-mark{color:#128c4a;width:21px;height:21px}.contact-routes .whatsapp-route .whatsapp-mark{color:#25d366;fill:currentColor;stroke:none}.reveal-ready [data-reveal]{opacity:0;transition:opacity .85s,transform .95s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}.reveal-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}.inner-page{min-height:100vh;color:var(--ink);background:var(--paper-light)}.inner-header{z-index:5;color:#fff;border-bottom:1px solid #ffffff29;justify-content:space-between;align-items:center;min-height:92px;padding:9px clamp(24px,5vw,76px);display:flex;position:absolute;inset:0 0 auto}.inner-header .brand-logo{width:92px;height:72px}.inner-header nav{letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:28px;font-size:9px;display:flex}.inner-header nav .inner-contact{border:1px solid #ffffff80;padding:13px 17px}.inner-header nav .inner-login{color:#fff;border-bottom:1px solid var(--bronze-light)}.practice-hero{color:#fff;background:#0b100d;grid-template-columns:1.02fr .98fr;align-items:end;min-height:720px;padding:160px clamp(28px,7vw,108px) 92px;display:grid;position:relative;overflow:hidden}.practice-hero-media{position:absolute;inset:0}.practice-hero-media img{object-fit:cover;width:100%;height:100%}.practice-hero:after{content:"";background:linear-gradient(90deg,#060a07f5,#070b08ad 55%,#070b082e);position:absolute;inset:0}.practice-hero-copy{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#090d0a94;border:1px solid #ffffff2e;max-width:820px;padding:clamp(30px,4vw,58px);position:relative}.practice-hero-copy h1{font-size:clamp(58px,7vw,104px)}.practice-hero-copy>p:not(.eyebrow){color:#ffffffbf;max-width:650px;margin:28px 0 0;font-size:15px;line-height:1.75}.practice-breadcrumb{z-index:2;color:#ffffff94;letter-spacing:.12em;text-transform:uppercase;gap:10px;font-size:8px;display:flex;position:absolute;bottom:30px;left:clamp(28px,7vw,108px)}.answer-block{background-image:radial-gradient(#4c3c2b12 .6px,#0000 .8px);background-size:5px 5px;grid-template-columns:.55fr 1.45fr;gap:8vw;padding:110px clamp(28px,13vw,200px);display:grid}.answer-block h2,.practice-content h2,.practice-faq h2,.directory-intro h1{margin:0;font-size:clamp(44px,5vw,76px);line-height:.98}.answer-block>p{color:#282b27;margin:0;font:400 clamp(25px,2.8vw,42px)/1.35 Didot,Georgia,serif}.practice-content{background:#b9b0a3;grid-template-columns:1fr 1fr;gap:1px;padding:0 clamp(28px,8vw,120px) 120px;display:grid}.practice-content article{background:var(--paper-light);padding:clamp(52px,7vw,100px)}.practice-content article:nth-child(2){background:#ded7cb}.practice-content h2{font-size:clamp(40px,4vw,62px)}.practice-content ul{border-top:1px solid var(--line-dark);margin:42px 0 0;padding:0;list-style:none}.practice-content li{border-bottom:1px solid var(--line-dark);align-items:center;min-height:60px;padding:17px 0 17px 20px;font-size:12px;line-height:1.5;display:flex;position:relative}.practice-content li:before{content:"";background:var(--bronze);width:6px;height:6px;position:absolute;left:0;transform:rotate(45deg)}.practice-approach{color:#fff;background:linear-gradient(120deg,#0e120ff7,#060a07fa),url(/media/portfolio/viaducto-detalle.jpg) 50%/cover;grid-template-columns:.6fr 1.4fr;gap:8vw;padding:120px clamp(28px,10vw,160px);display:grid}.practice-approach h2{margin:0;font-size:clamp(44px,5vw,76px);line-height:.98}.practice-approach>div>p{color:#ffffffba;max-width:790px;margin:0 0 36px;font-size:16px;line-height:1.8}.practice-faq{grid-template-columns:.7fr 1.3fr;gap:8vw;padding:120px clamp(28px,10vw,160px);display:grid}.practice-faq-list{border-top:1px solid var(--line-dark)}.practice-faq details{border-bottom:1px solid var(--line-dark)}.practice-faq summary{cursor:pointer;align-items:center;min-height:92px;font:400 clamp(20px,2vw,29px)/1.25 Didot,Georgia,serif;display:flex}.practice-faq details p{color:#4f4b43;margin:-5px 0 32px;font-size:13px;line-height:1.8}.legal-note{color:#fff;background:#111512;border-top:1px solid #fff3;margin:0;padding:28px clamp(28px,7vw,108px);font-size:13px;line-height:1.75}.directory-intro{color:#fff;background:linear-gradient(90deg,#070a08f0,#070a0861),url(/media/portfolio/viaducto-sala-juntas.jpg) 50%/cover;align-items:end;min-height:600px;padding:170px clamp(28px,8vw,120px) 100px;display:flex}.directory-intro>div{max-width:820px}.directory-intro h1{font-size:clamp(62px,8vw,112px)}.directory-intro p:last-child{color:#ffffffb8;max-width:620px;margin:28px 0 0;line-height:1.75}.directory-grid{background:#b9b0a3;grid-template-columns:repeat(2,1fr);gap:1px;padding:110px clamp(28px,7vw,108px);display:grid}.directory-card{background:var(--paper-light);flex-direction:column;min-height:420px;padding:clamp(38px,6vw,80px);transition:background .35s,color .35s;display:flex}.directory-card:nth-child(2n){background:#ded7cb}.directory-card:hover{color:#fff;background:#151a16}.directory-card>span{color:var(--bronze);font-size:9px}.directory-card h2{margin:auto 0 18px;font-size:clamp(38px,4vw,62px)}.directory-card p{color:#555047;max-width:560px;margin:0 0 30px;font-size:13px;line-height:1.7}.directory-card:hover p{color:#ffffffab}.directory-card b{align-items:center;gap:24px;font-size:10px;display:inline-flex}@media (max-width:1050px){.site-header{height:88px}.desktop-nav{display:none}.menu-toggle{display:grid}.mobile-navigation{z-index:60;color:#fff;visibility:hidden;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0e0bf0;align-items:center;padding:110px 28px 40px;transition:opacity .35s,visibility .35s;display:grid;position:fixed;inset:0}.mobile-navigation.is-open{visibility:visible;opacity:1;pointer-events:auto}.mobile-navigation-material{opacity:.18;background:linear-gradient(90deg,#0a0d0ba6,#0a0d0be0),url(/media/portfolio/santa-fe-identidad.jpg) 50%/cover;position:absolute;inset:0}.mobile-navigation nav{border-top:1px solid #ffffff3b;position:relative}.mobile-navigation a{letter-spacing:.055em;text-transform:uppercase;border-bottom:1px solid #ffffff3b;grid-template-columns:44px 1fr auto;align-items:center;min-height:78px;font:400 29px/1 Didot,Georgia,serif;display:grid}.mobile-navigation a span{color:var(--bronze-light);font:500 8px/1 Avenir,sans-serif}.intent-heading,.section-intro,.gallery-head{grid-template-columns:1fr;gap:28px}.gallery-head{margin-left:0}.intent-console{grid-template-columns:1fr}.intent-options{background-position:50% 32%}.services-layout{grid-template-columns:1fr}.practice-list{position:relative;top:auto}.practice-panel{grid-template-columns:1fr 1fr;display:grid}.practice-panel-copy{background:#ddd6ca;padding:35px;display:block}.practice-panel-copy ul{margin:25px 0}.gallery-grid{grid-template-rows:380px 280px 340px}.lightbox-caption{grid-template-columns:.8fr 1.2fr}.lightbox-caption>button{display:none}.firm{grid-template-columns:1fr}.firm-image{min-height:620px}.experience-copy{width:min(760px,82vw)}.faq-section,.contact,.privacy-section{grid-template-columns:1fr}.privacy-heading,.faq-intro{position:relative;top:auto}.contact-routes{max-width:800px}.answer-block,.practice-approach,.practice-faq{grid-template-columns:1fr}}@media (max-width:720px){html{scroll-padding-top:72px}.cursor-light{display:none}.site-header,.site-header.is-scrolled{height:72px;padding:5px 18px}.brand-logo,.site-header.is-scrolled .brand-logo{width:74px;height:59px}.menu-toggle{width:44px;height:42px}.hero{align-items:flex-end;height:auto;min-height:860px;padding:108px 18px 54px}.hero:before{inset:10px}.hero-media img{object-position:63% center;width:135%;max-width:none}.hero-shade{background:linear-gradient(#060a072e,#060a07b3 36%,#060a07f7)}.hero-content{width:100%;padding:29px 23px}h1{font-size:clamp(49px,13.6vw,66px)}.hero-copy{font-size:14px;line-height:1.65}.hero-actions{flex-direction:column}.button{width:100%}.hero-edition,.hero-scroll{display:none}.proof-strip{grid-template-columns:1fr 1fr;padding:0 18px}.proof-strip>div,.proof-strip>div:first-child{border-bottom:1px solid #ffffff24;padding:22px 12px}.proof-strip>div:nth-child(2){border-right:0}.intent-section,.services,.gallery-stage,.offices,.faq-section{padding:90px 18px}.intent-heading,.section-intro,.gallery-head{margin-bottom:54px}.intent-heading h2,.section-intro h2,.gallery-head h2,.firm-copy h2,.experience-copy h2,.faq-intro h2,.contact h2{font-size:clamp(43px,12vw,58px)}.intent-console{min-height:auto}.intent-options{padding:18px}.intent-options button{grid-template-columns:35px 1fr auto;min-height:84px;font-size:12px}.intent-result{min-height:440px;padding:40px 25px}.intent-result h3{font-size:42px}.practice-list button{grid-template-columns:36px 1fr 23px;min-height:76px}.practice-list button strong{font-size:24px}.practice-panel{display:block}.practice-media{height:420px}.practice-panel-copy{padding:30px 20px}.text-action{margin-top:25px}.gallery-head{display:block}.gallery-head h2{margin-bottom:28px}.gallery-grid{grid-template-rows:none;grid-template-columns:1fr;gap:10px;display:grid}.gallery-grid figure,.gallery-brand,.gallery-boardroom,.gallery-passage,.gallery-detail,.gallery-hospitality{grid-area:auto/1;height:420px}.gallery-grid .gallery-passage,.gallery-grid .gallery-boardroom{height:540px}.gallery-open{opacity:1;transform:none}.lightbox{padding:0}.lightbox-panel{border:0;grid-template-rows:54px minmax(0,1fr) 190px;width:100%;height:100svh;min-height:0}.lightbox-bar{grid-template-columns:1fr 1fr;padding:0 14px}.lightbox-bar p{display:none}.lightbox-image img{object-fit:contain}.lightbox-image.is-zoomed img{transform:scale(1.5)}.lightbox-nav{min-height:45px;padding:0 12px;top:auto;bottom:14px;transform:none}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-caption{padding:20px 18px;display:block;overflow-y:auto}.lightbox-caption h3{font-size:34px}.lightbox-caption>p{margin-top:15px;font-size:12px}.firm-image{min-height:460px}.firm-copy{padding:88px 22px}.method-list li div{display:block}.method-list small{margin-top:6px;display:block}.experience{align-items:flex-end;min-height:900px;padding:82px 18px}.experience:after{background:linear-gradient(#070a081a,#070a088c 32%,#070a08f7)}.experience-copy{width:100%;padding:29px 23px}.year{font-size:100px}.office-gallery{grid-template-columns:1fr}.office-card,.office-card img{height:550px;min-height:550px}.office-card-overlay{padding:26px}.faq-list summary{grid-template-columns:34px 1fr 20px;min-height:96px;font-size:21px}.faq-list details>p{margin-left:34px}.contact{gap:66px;padding:92px 18px}.contact-routes strong{font-size:20px}.privacy-section{gap:52px;padding:88px 22px}.privacy-heading h2{font-size:52px}.privacy-lead{grid-template-columns:1fr}.privacy-accordions summary{min-height:88px;font-size:22px}.privacy-accordions details>div{padding-right:0}footer{grid-template-columns:1fr;gap:28px;padding:44px 22px 100px}.footer-brand{align-items:flex-start}footer nav{justify-content:flex-start;padding-top:0}.footer-meta{text-align:center;grid-column:1;grid-template-columns:1fr;gap:14px;font-size:12px}.powered-by{text-align:center;grid-row:2;justify-self:center;font-size:12px}.powered-by img{width:138px}.footer-meta-end{text-align:center;justify-self:center}.whatsapp-float{right:14px;bottom:max(84px, calc(env(safe-area-inset-bottom) + 76px));opacity:0;pointer-events:none;width:54px;height:54px;transform:translateY(12px)}.whatsapp-float.is-visible{opacity:1;pointer-events:auto;transform:none}.whatsapp-float .whatsapp-mark{width:27px;height:27px}.inner-header{min-height:72px;padding:5px 18px}.inner-header .brand-logo{width:74px;height:59px}.inner-header nav{gap:16px;font-size:9px}.inner-header nav a:not(.inner-login){display:none}.practice-hero{min-height:720px;padding:130px 18px 75px;display:block}.practice-hero-copy{padding:28px 22px;position:absolute;bottom:70px;left:18px;right:18px}.practice-hero-copy h1{font-size:59px}.practice-breadcrumb{bottom:26px;left:18px}.answer-block,.practice-approach,.practice-faq{gap:36px;padding:88px 22px}.answer-block>p{font-size:27px}.practice-content{grid-template-columns:1fr;padding:0}.practice-content article{padding:76px 22px}.directory-intro{min-height:650px;padding:140px 20px 76px}.directory-grid{grid-template-columns:1fr;padding:70px 18px}.directory-card{min-height:390px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-media img,.experience-media img{transform:scale(1.045)}.reveal-ready [data-reveal]{opacity:1;transform:none}}
