/* V10: arquitectura solicitada por el cliente. Identidad de la firma conservada. */
/* Correcciones V11 se aplican al final de este archivo. */
.mobile-menu:not([hidden]){opacity:1;visibility:visible;transform:none}
.form .audience-options input[type=radio]{padding:0;border:0;background:none;border-radius:0}
html{scroll-padding-top:110px}body{line-height:1.6}h1,h2,h3{text-wrap:balance}h1,h2{letter-spacing:-.035em}p{overflow-wrap:break-word}img{max-width:100%}[hidden]{display:none!important}
.skip-link{position:fixed;z-index:1000;left:18px;top:-100px;padding:14px 22px;background:#fff;color:var(--ink);border-radius:24px}.skip-link:focus{top:14px}
.header{width:min(1400px,calc(100% - 40px));grid-template-columns:auto 1fr auto;gap:22px}.brand img{height:auto;object-fit:contain}.nav{justify-self:center;align-items:center}.nav>a,.nav-group>summary{padding:0 14px;font-size:12px;white-space:nowrap}.nav-group{position:relative}.nav-group>summary{height:44px;display:flex;align-items:center;cursor:pointer;color:#f5f6f2;border-radius:99px;list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary:after{content:'⌄';margin-left:7px;font-size:11px}.nav-group[open]>summary{background:#ffffff21}.nav-dropdown{position:absolute;left:0;top:calc(100% + 16px);width:300px;padding:14px;background:#083b30f5;border:1px solid #ffffff38;border-radius:24px;backdrop-filter:blur(24px);box-shadow:0 20px 50px #001d1840}.nav-dropdown a{display:block;padding:12px 16px;color:#fff;font-size:13px;border-radius:14px;line-height:1.5}.nav-dropdown a:hover,.nav-dropdown a:focus-visible{background:#ffffff18}.interior .header{background:#f7f5efbd;border:1px solid #e2e3db;border-radius:99px;padding:7px 12px;backdrop-filter:blur(20px)}.interior .header:before{display:none}.header .brand{flex-shrink:0}.mobile-menu:not([hidden]){display:grid;position:fixed;z-index:110;top:84px;left:20px;right:20px;max-height:calc(100svh - 110px);overflow:auto;padding:22px;background:#073a2ff5;border:1px solid #ffffff30;border-radius:26px;backdrop-filter:blur(25px);box-shadow:0 25px 60px #0004}.mobile-menu a{display:block;min-height:44px;padding:12px;border-bottom:1px solid #ffffff20;font-size:15px;color:#fff}.menu-toggle{cursor:pointer;flex-shrink:0}
.section{padding-block:clamp(70px,8vw,115px)}.hero{min-height:880px;min-height:max(880px,100svh)}.hero-content{padding-top:clamp(180px,23vh,230px);padding-bottom:100px}.hero h1{font-size:clamp(58px,6.4vw,88px);line-height:1.02;max-width:860px}.hero-lead{font-size:clamp(17px,1.6vw,22px);margin:26px 0 0;max-width:650px;color:#fff}.hero-copy{max-width:580px;font-size:16px;margin-top:16px}.hero-coverage{max-width:560px;color:#f2eee3;font-size:12px;line-height:1.8;margin-top:22px}.hero-overlay{background:linear-gradient(90deg,rgba(3,25,19,.75),rgba(3,25,19,.42) 50%,rgba(3,25,19,.06)),linear-gradient(0deg,#00181255,transparent)}.trust-item{padding-inline:22px}.trust-item small{font-size:12px}.trust-item b{font-size:14px}.heading h2{font-size:clamp(40px,5vw,66px);line-height:1.05}.heading.split>p{font-size:16px;line-height:1.8}
.pillar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.pillar{display:flex;flex-direction:column;align-items:flex-start;padding:30px 0;border-top:1px solid #8eaa984d}.pillar-number{font-size:12px;color:#977443;letter-spacing:.14em}.pillar h3{font-family:Cormorant,Georgia,serif;font-size:44px;font-weight:500;line-height:1.1;margin:26px 0 18px}.pillar p{font-size:14px;line-height:1.85;color:#5b7063;margin:0 0 24px}.pillar .pillar-intro{font-size:17px;color:var(--ink)}.pillar .button{margin-top:auto;font-size:12px;text-align:center}.button.outline{border:1px solid #8eaa9880;background:transparent;color:var(--ink);font-size:13px}.button.outline:hover{background:#e6eae1}.business-home{background:#eceee7}.business-list{display:grid;grid-template-columns:1fr 1fr;gap:32px 65px;margin-bottom:42px}.business-list article{padding-block:22px;border-top:1px solid #acb9ae}.business-list h3{font-family:Cormorant,Georgia,serif;font-size:33px;font-weight:500;line-height:1.15;margin:0 0 15px}.business-list h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.business-list p{font-size:15px;color:#50675b;line-height:1.85}.certification-panel{padding:clamp(28px,5vw,64px);grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:42px}.certification-copy h2{font-size:clamp(42px,4.7vw,62px);line-height:1.05}.certification-copy>p:not(.kicker){color:#dee7df;font-size:15px}.certification-copy .certificate-assurance{margin-bottom:25px!important}.certification-metrics span{color:#e5e9e3;font-size:10px}.certificate-seal{width:260px}.seal-orbit{width:245px;height:245px;top:-20px}.seal-core{width:208px;height:208px}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,85px);align-items:start}.editorial-grid h2{font-size:clamp(40px,4.8vw,64px);line-height:1.08}.editorial-grid p{font-size:16px;line-height:1.9;margin:0 0 22px;color:#4e685a}.firm{background:#04372a}.firm:before{display:none}.firm .editorial-grid p,.firm .philosophy p{color:#d7e3d9}.firm h2 em{color:var(--gold)}.philosophy{margin-top:75px;padding-top:55px;border-top:1px solid #ffffff26;max-width:920px}.philosophy h3{font-family:Cormorant,Georgia,serif;font-weight:500;font-size:40px;line-height:1.2;margin:12px 0 24px}.philosophy p{font-size:16px;line-height:1.9;max-width:840px}.team-block{margin-top:110px}.team-bio h3{font-size:clamp(32px,3.2vw,47px);line-height:1.1;overflow-wrap:normal;margin-block:15px 23px}.team-bio .kicker{font-size:12px;letter-spacing:.1em;line-height:1.8}.team-bio .practice-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#e7c58f;margin:0 0 6px}.team-bio .team-areas{font-size:16px;color:#fff;margin:0 0 22px;line-height:1.7}.team-bio>p:last-child{font-size:15px;max-width:none;line-height:1.85}.team-slide{align-items:center}.team-portrait{height:auto;max-height:none;aspect-ratio:4/5}.team-portrait img{object-fit:cover;object-position:center}.team-track{scrollbar-width:none}.team-track::-webkit-scrollbar{display:none}.team-controls p{font-size:12px}.step p{font-size:14px}.community{background:#ece8dd}.probono{margin-top:0;background:transparent;padding:0;grid-template-columns:minmax(0,1fr) 270px;gap:65px}.probono h2{font-size:clamp(40px,4.5vw,62px);line-height:1.1}.probono p{font-size:16px}.probono small{font-size:13px}.probono .button{width:100%;line-height:1.5;padding-block:15px}.google-reviews{padding:40px;gap:40px}.google-rating{display:flex;align-items:baseline;gap:12px;margin:0!important}.google-rating strong{font-family:Cormorant,Georgia,serif;font-weight:500;font-size:76px;color:var(--ink);line-height:1.1}.google-rating span{font-size:20px}.google-reviews p{color:#526b5c;line-height:1.7}.google-reviews .kicker{color:#6d795d}
.appointment-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:50px}.appointment h2{font-size:clamp(43px,4.7vw,66px);line-height:1.05}.contacts span{min-width:0;overflow-wrap:anywhere}.contacts small{color:#dae3dc!important}.business-contact{margin-top:35px}.business-contact p{font-size:16px}.form{padding:32px;border-radius:34px;scroll-margin-top:105px}.form fieldset{min-width:0;border:0;margin:0 0 24px;padding:0}.form legend{font-size:14px;font-weight:650;line-height:1.6;margin-bottom:16px;padding:0;color:#f4ecdb}.form label{font-size:13px;color:#f2f4ed}.form .row{gap:15px}.form input,.form select,.form textarea{min-width:0;width:100%;font-size:16px;color:#fff}.form input::placeholder,.form textarea::placeholder{color:#c4d4c8}.form select option{color:#062f25;background:#fff}.form input[type=date]{color-scheme:dark}.audience-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.audience-options label{position:relative;display:block;cursor:pointer}.audience-options input{position:absolute;left:15px;top:18px;margin:0;width:17px;height:17px;accent-color:#e7c58f}.audience-options span{display:block;min-height:75px;padding:16px 12px 16px 42px;border:1px solid #aac3b67a;border-radius:18px;line-height:1.65;font-size:13px}.audience-options input:checked+span{border-color:#e7c58f;background:#ffffff1a;color:#fff}.audience-options input:focus-visible+span{outline:2px solid #e7c58f;outline-offset:3px}.form-context{margin:0 0 25px;color:#e7c58f;font-size:14px}.form .note{color:#dce7df;font-size:12px;line-height:1.8}.form .submit{font-size:14px}.footer-contact a{overflow-wrap:anywhere}.footer-contact a,.footer-links a{font-size:13px;line-height:1.8}.privacy{padding-bottom:45px}.privacy-copy a{overflow-wrap:anywhere}
.page-hero{padding:180px 0 80px;background:#edece3}.page-hero h1{color:var(--ink);font-size:clamp(49px,6.6vw,86px);line-height:1.04;max-width:1030px}.page-hero h1 em{color:#94713f}.page-intro{max-width:790px;font-size:19px;line-height:1.8;color:#4a6354;margin:30px 0}.page-hero .kicker{margin-bottom:24px}.solution-row{display:flex;align-items:center;justify-content:space-between;gap:38px;padding:36px 0;border-top:1px solid #bbc7bd;scroll-margin-top:120px}.solution-row>div{max-width:820px}.solution-row h3{font-family:Cormorant,Georgia,serif;font-weight:500;font-size:36px;line-height:1.15;margin:0 0 15px}.solution-row p{font-size:16px;line-height:1.85;color:#50685a;margin:0}.solution-row .button{flex-shrink:0}.muted{background:#eeeee7}.institutional,.closing{background:#063c2e;color:#fff}.institutional h2 em,.closing h2 em{color:var(--gold)}.institutional p{color:#d9e5db}.closing h2{max-width:850px;line-height:1.1}.closing p{max-width:750px;font-size:17px;line-height:1.8;color:#d3e1d6;margin-block:26px}.related{padding-block:40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.related p{max-width:700px;font-size:15px;color:#4d6656}.related a{color:#75562d;text-decoration:underline;text-underline-offset:5px;font-size:15px}.wide-copy{max-width:840px;font-size:17px;line-height:1.9;margin-top:28px}.assessment-points{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.assessment-points span{padding:12px 20px;border:1px solid #b8c7ba;border-radius:99px}.career-page .career-copy h2{font-size:56px;line-height:1.1}.career-page input,.career-page textarea,.career-page select{font-size:16px}
.certificate-dialog{width:min(1120px,calc(100% - 32px));max-height:94svh;border:0;border-radius:32px;padding:0;background:#f7f4ec;color:var(--ink);overflow:auto;box-shadow:0 50px 130px #0006}.certificate-dialog::backdrop{background:#001b14cc;backdrop-filter:blur(12px)}.certificate-dialog .certificate-modal-head{position:relative;grid-template-columns:1fr;padding-right:85px}.certificate-dialog .certificate-document iframe{height:55svh}.certificate-dialog .certificate-modal-close{cursor:pointer}.reveal,.reveal.left,.reveal.right{opacity:1!important;transform:none!important;visibility:visible!important}.home section[id],.team-block,.philosophy{scroll-margin-top:105px}
@media(max-width:1180px){.header{grid-template-columns:1fr auto}.header .nav,.header .cta{display:none}.header .menu-toggle{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff50;border-radius:50%;background:#123e32c9;color:#fff}.interior .header{background:transparent;border:0;backdrop-filter:none}.certification-panel{grid-template-columns:1fr}.certificate-seal{margin:25px auto}.appointment-grid{gap:30px}}
@media(max-width:800px){.shell{width:calc(100% - 36px)}.header{width:calc(100% - 30px);gap:12px;top:13px}.section{padding-block:65px}.hero{min-height:850px}.hero-content{padding-top:160px;padding-bottom:70px}.hero h1{font-size:clamp(48px,9.5vw,68px);line-height:1.05}.hero-lead{font-size:18px}.hero-copy{font-size:15px;max-width:96%}.hero-coverage{font-size:12px}.hero-photo{object-position:58% center}.hero-overlay{background:linear-gradient(90deg,#031913c7,#03191352),linear-gradient(0deg,#00181277,transparent)}.hero-actions{flex-wrap:wrap}.hero-actions .button{font-size:13px}.pillar-grid{grid-template-columns:1fr;gap:22px}.pillar{padding:28px 0}.pillar h3{margin-top:16px;font-size:40px}.pillar p{max-width:630px}.business-list{grid-template-columns:1fr;gap:15px}.editorial-grid{grid-template-columns:1fr;gap:30px}.editorial-grid p{font-size:16px}.philosophy{margin-top:50px;padding-top:35px}.philosophy h3{font-size:34px}.team-block{margin-top:65px}.team-bio{padding:20px 5px}.team-bio h3{font-size:34px}.team-bio>p:last-child{font-size:14px}.team-slide{padding:15px;grid-template-columns:1fr}.team-portrait{max-width:460px;aspect-ratio:4/5}.certification-panel{border-radius:32px;padding:30px 23px;gap:20px}.certification-copy h2{font-size:42px}.certification-copy>p:not(.kicker){font-size:14px}.probono{grid-template-columns:1fr;gap:28px}.probono .button{width:auto;justify-self:start}.appointment-grid{grid-template-columns:1fr;gap:40px}.form{padding:26px 20px}.google-reviews{padding:28px}.google-rating strong{font-size:66px}.page-hero{padding:145px 0 60px}.page-hero h1{font-size:clamp(45px,9vw,63px);line-height:1.08}.page-intro{font-size:17px}.solution-row{flex-direction:column;align-items:flex-start;gap:20px}.solution-row h3{font-size:32px}.related{flex-direction:column;align-items:flex-start;gap:10px}.closing h2{font-size:45px}.certificate-dialog{width:calc(100% - 16px);border-radius:24px}.certificate-dialog .certificate-modal-head{padding:25px 65px 20px 20px}.certificate-dialog .certificate-modal-head h2{font-size:32px}.certificate-dialog .certificate-document iframe{height:52svh}.certificate-modal-actions{flex-direction:column}.floating{right:10px;bottom:16px;gap:7px}.floating .social{width:40px;height:40px}.footer-grid{gap:35px}.footer-bottom{padding-right:45px}}
@media(max-width:420px){.audience-options{grid-template-columns:1fr}.audience-options span{min-height:54px}.form .row{grid-template-columns:1fr}.hero h1{font-size:48px}.trust-item{padding:20px 8px!important;gap:8px}.trust-item b{font-size:12px}.trust-item small{font-size:11px}.trust-item i{width:20px}.team-controls{gap:10px}.team-controls button{width:44px;height:44px}.team-controls p{font-size:11px}.certification-copy h2{font-size:37px}}
@media(prefers-reduced-motion:no-preference){.hero-content{animation:arrive .65s ease-out both}.nav-dropdown{animation:arrive .2s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}

/* V11: barra unificada, regreso explícito y contenido siempre nítido. */
.reveal,.reveal.left,.reveal.right,.reveal.visible{filter:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
.map iframe{filter:none}
.header,.interior .header{top:18px;height:80px;min-height:80px;width:min(1400px,calc(100% - 48px));padding:10px 14px;display:grid;grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr);gap:20px;align-items:center;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(247,248,241,.9);box-shadow:0 12px 36px rgba(4,39,29,.12),inset 0 1px 0 #fff;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}
.header:before,.interior .header:before{display:none}
.header .brand{justify-self:start;align-self:center;height:54px;margin:0;padding:9px 15px;display:flex;align-items:center;border:1px solid #e0e7de;background:#fff;border-radius:999px;box-shadow:none;backdrop-filter:none}
.header .brand img{display:block;width:140px;height:auto;max-height:36px;object-fit:contain}
.header .nav{justify-self:center;align-self:center;display:flex;align-items:center;height:54px;margin:0;padding:0;gap:2px;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.header .nav>a,.header .nav-group>summary{height:44px;margin:0;padding:0 12px;display:flex;align-items:center;gap:7px;line-height:1.2;font-size:13px;font-weight:550;color:#173e31;border:0;border-radius:999px;background:transparent}
.header .nav>a:hover,.header .nav>a[aria-current=page],.header .nav-group>summary:hover,.header .nav-group[open]>summary{background:#123e3210;color:#052b20;box-shadow:none}
.header .nav>a:after{display:none}
.header .nav-group>summary::marker{content:''}
.header .nav-group>summary::-webkit-details-marker{display:none}
.header .nav-group>summary:after{content:'';display:block;flex:0 0 12px;width:12px;height:12px;margin:0;background:linear-gradient(currentColor,currentColor) center/10px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 10px no-repeat;opacity:.6;transform:none;box-shadow:none;border:0;border-radius:0}
.header .nav-group[open]>summary:after{background:linear-gradient(currentColor,currentColor) center/10px 1.5px no-repeat}
.header .cta{justify-self:end;align-self:center;height:52px;min-height:52px;margin:0;padding:0 23px;line-height:1;font-size:13px;box-shadow:none;border:1px solid #d8b77f;background:var(--gold)}
.header .cta:before{display:none}
.header .menu-toggle{display:none}
.nav-dropdown{top:calc(100% + 24px)}
.back-home{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:9px 16px;margin:0 0 28px;border:1px solid #aec0b29c;border-radius:999px;background:#ffffff94;color:#173e31;font-size:14px;font-weight:550;line-height:1.5;transition:background .2s,border-color .2s}
.back-home:hover{background:#fff;border-color:#668a74}.back-home svg{flex:0 0 20px}
.page-hero{padding-top:160px}.page-hero .kicker{margin-top:0}
@media(max-width:1180px){
 .header,.interior .header{top:14px;height:72px;min-height:72px;width:calc(100% - 32px);grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:8px 10px}
 .header .nav,.header .cta{display:none}
 .header .brand{height:52px;padding:8px 14px}.header .brand img{width:133px}
 .header .menu-toggle{display:grid;place-items:center;justify-self:end;align-self:center;width:48px;height:48px;margin:0;padding:0;line-height:1;border:1px solid #c1cec3;background:#174d3e;color:#fff;border-radius:50%;box-shadow:none;backdrop-filter:none}
 .mobile-menu:not([hidden]){top:96px;max-height:calc(100svh - 114px);left:16px;right:16px}
 .page-hero{padding-top:130px}
}
@media(max-width:600px){.header,.interior .header{height:66px;min-height:66px;top:12px;width:calc(100% - 24px);padding:7px 9px;gap:12px}.header .brand{height:48px;padding:8px 12px}.header .brand img{width:123px;max-height:32px}.header .menu-toggle{width:44px;height:44px}.mobile-menu:not([hidden]){top:88px;left:12px;right:12px;max-height:calc(100svh - 104px)}.page-hero{padding-top:115px}.back-home{margin-bottom:24px;font-size:13px}}
