/* OPEREC O09 · Documentary geography and portfolio. No remote resources. */
[hidden]{display:none!important}
.territory-section{padding:74px 0 32px;background:#0b2d26;color:#f3f7ef;scroll-margin-top:92px}
.territory-section p{color:#c7d8ce}.territory-section .eyebrow{color:#a8dd8b;font-size:10px;letter-spacing:1.6px}
.territory-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:76px;align-items:end;margin-bottom:35px}
.territory-heading h2{font-size:clamp(32px,3.4vw,49px);line-height:1.12;letter-spacing:-1.5px;margin-top:14px}.territory-heading h2 em{color:#9bdd77}
.territory-heading>div>p{font-size:14px;line-height:1.8;margin-top:17px;max-width:440px}
.document-badge{display:inline-flex;align-items:center;border:1px solid #59755f;border-radius:30px;padding:6px 11px;color:#d8edcd;font-size:10px;letter-spacing:.2px;line-height:1.5}
.geo-filters{display:flex;gap:16px;align-items:end;border-top:1px solid #345448;padding-top:25px;margin-bottom:25px}
.geo-filters label{display:grid;gap:7px;font-size:11px;color:#c8d9ca;flex:1;max-width:285px}
.geo-filters select{background:#153d32;border:1px solid #5e7c67;color:#f4f9ef;min-height:46px;padding:10px 33px 10px 13px;border-radius:3px;font-size:13px;width:100%}.geo-filters option{background:#153d32;color:white}
.geo-filters button{display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #5e7c67;min-height:46px;padding:10px 15px;background:transparent;color:#e1eede;font-size:12px;border-radius:3px;margin-left:auto}.geo-filters button .icon{width:17px;height:17px}
.territory-section :is(a,button,select,summary):focus-visible{outline:3px solid #bef392;outline-offset:4px}
.geo-workspace{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(295px,1fr);gap:24px;align-items:stretch}
.geo-visual{padding:21px;border:1px solid #3c5b4a;border-radius:8px;background:radial-gradient(ellipse at 50% 43%,#20544055,transparent 66%),#0d3229;min-width:0}
.map-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#c5d6c4;font-size:9px;letter-spacing:1.3px}.map-caption i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9ce073;margin-right:8px}.map-caption>span:last-child{color:#95b399}
.mexico-map{display:block;width:100%;height:auto;margin:9px auto 2px;overflow:visible}.mexico-land{fill:#235340;stroke:#5b8460;stroke-width:1.2;stroke-linejoin:round}
.pin-target{fill:transparent}.pin-ring{fill:#91d87815;stroke:#9bdc7b;stroke-width:.8;opacity:.6;transition:opacity .18s}.pin-dot{fill:#0d3027;stroke:#bef18e;stroke-width:1.4;transition:fill .18s}
.geo-pin text{font:700 9px Arial,sans-serif;text-anchor:middle;fill:#e5f9d3;pointer-events:none}.geo-pin:is(:hover,:focus-visible,[aria-current="location"]) .pin-ring{opacity:1;stroke-width:2}.geo-pin:is(:hover,:focus-visible,[aria-current="location"]) .pin-dot{fill:#acf17a;stroke:#d5ffc4}.geo-pin:is(:hover,:focus-visible,[aria-current="location"]) text{fill:#082b20}.geo-pin:focus-visible .pin-target{stroke:#d2ffab;stroke-width:2}
.map-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:9px;line-height:1.5;color:#b4c8b5;margin:6px 0 21px}.map-bottom>span:first-child{display:flex;align-items:center;gap:6px}.map-bottom .icon{width:14px;height:14px}
.geo-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;border-top:1px solid #365644;padding-top:17px}
.geo-choice{display:flex;align-items:center;gap:7px;min-height:46px;padding:8px;border:1px solid #45624d;border-radius:3px;font-size:10px;color:#d6e6d2;transition:background .18s,border-color .18s}.geo-choice>span{font-size:9px;opacity:.7}.geo-choice .icon{width:13px;height:13px;margin-left:auto;opacity:.7}.geo-choice:is(:hover,[aria-current="location"]){background:#a5e87d;color:#0c3023;border-color:#a5e87d}
.geo-detail-panel{min-width:0;background:#eaf1e5;border-radius:8px;color:#163b2c;overflow:hidden}.geo-detail{padding:33px 29px;position:relative;min-height:100%;scroll-margin-top:105px}.geo-detail+.geo-detail{border-top:1px solid #cbdbc2}
.geo-detail .eyebrow{color:#42683c;font-size:9px;letter-spacing:1px;max-width:200px}.detail-index{position:absolute;right:25px;top:26px;color:#42683c;font-size:13px}.geo-detail h3{font-size:clamp(30px,2.8vw,40px);line-height:1.15;letter-spacing:-1.4px;margin:19px 0 13px;max-width:250px}.geo-detail .document-badge{color:#345b2e;border-color:#adc59e;background:#dde9d4;font-size:10px}
.geo-detail dl{margin:27px 0 0}.geo-detail dl>div{padding:13px 0;border-top:1px solid #c3d4ba}.geo-detail dt{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#506c48;margin-bottom:4px}.geo-detail dd{font-size:13px;margin:0;color:#1d402d;line-height:1.65}
.geo-project-note{margin-top:22px;padding-top:20px;border-top:1px solid #c3d4ba}.geo-project-note h4{font-size:12px;line-height:1.6;margin:0 0 9px}.geo-detail p{font-size:12px;line-height:1.8;color:#4b6347}.geo-detail .text-link{font-size:11px;border-color:#adc19f;margin-top:21px;gap:12px}
.geo-no-selection{display:flex;flex-direction:column;justify-content:center;align-items:start;gap:15px;min-height:500px}.geo-no-selection>.icon{width:38px;height:38px;margin-bottom:5px}.geo-no-selection h3{margin:0}.geo-empty{padding:22px 0;font-size:13px;line-height:1.7}.geo-live{margin-top:15px;font-size:11px;line-height:1.7;min-height:20px}
.territory-foot{display:grid;grid-template-columns:1.85fr 1fr;gap:24px;border-top:1px solid #3a5846;padding-top:23px;margin-top:23px;align-items:start}.geo-text-view{padding:0;border:0}.geo-text-view summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:44px;font-size:13px;color:#e0edda;list-style:none}.geo-text-view summary::-webkit-details-marker{display:none}.geo-text-view summary .icon{width:18px;height:18px}.geo-text-view[open] summary .icon{transform:rotate(45deg)}
.geo-text-view ul{padding:0;margin:15px 0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px}.geo-text-view li{font-size:12px;line-height:1.6;padding-right:20px}.geo-text-view li b{display:block;color:#d8ebce}.geo-text-view li span{display:block;color:#b5cdb6;font-size:11px;margin-top:4px}
.international-note{padding-left:25px;border-left:1px solid #49654d}.international-note .eyebrow{font-size:8px;letter-spacing:1px}.international-note p{font-size:11px;line-height:1.8;margin-top:7px}.cartography-credit{font-size:9px;margin-top:28px;line-height:1.7;color:#a6c0a7!important}
.portfolio-section{padding:80px 0;background:#f4f6f0;scroll-margin-top:95px}.portfolio-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:75px;align-items:end}.portfolio-heading h2{font-size:clamp(30px,3.1vw,44px);line-height:1.15;margin-top:14px;letter-spacing:-1.4px}.portfolio-heading .eyebrow{font-size:9px}.portfolio-heading>p{font-size:13px;line-height:1.8;max-width:390px}
.portfolio-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:33px}.portfolio-filters button{min-height:44px;padding:11px 19px;background:transparent;border:1px solid #b9c8b2;border-radius:30px;color:#345b2e;font-size:12px;transition:background .18s,color .18s}.portfolio-filters button[aria-pressed="true"]{background:#163c2b;border-color:#163c2b;color:#fff}
.portfolio-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}.portfolio-pending{border:1px solid #d0dcca;background:#fff;border-radius:6px;overflow:hidden;min-width:0;transition:box-shadow .18s,transform .18s}.portfolio-pending:focus-within{box-shadow:0 10px 30px #12371c14}
.pending-visual{height:166px;background:linear-gradient(125deg,#e8efde,#f5f8f0);display:flex;align-items:center;justify-content:center;gap:18px;position:relative;color:#476b39;overflow:hidden}.pending-visual>.icon{width:52px;height:52px;stroke-width:1}.pending-visual>span{position:absolute;left:22px;top:17px;font-size:8px;letter-spacing:1.6px;color:#526e43}.pending-lines{width:81px;display:grid;gap:8px}.pending-lines i{display:block;height:5px;background:#bbcdb0;border-radius:5px;width:100%}.pending-lines i:nth-child(2){width:75%}.pending-lines i:nth-child(3){width:52%}
.pending-copy{padding:25px 25px 22px}.pending-copy .eyebrow{font-size:9px}.pending-copy h3{font-size:25px;letter-spacing:-.8px;line-height:1.2;margin:12px 0}.pending-copy p{font-size:12px;line-height:1.8}.pending-status{display:flex;gap:7px;align-items:center;margin-top:22px;padding-top:15px;border-top:1px solid #dbe3d5;font-size:10px;color:#56694e}.pending-status .icon{width:15px;height:15px}.portfolio-status{font-size:11px;line-height:1.8;margin-top:20px}
.portfolio-proof{display:flex;align-items:center;gap:22px;margin-top:31px;padding-top:22px;border-top:1px solid #c8d6be;flex-wrap:wrap}.portfolio-proof span{display:flex;align-items:center;gap:7px;color:#34582d;font-size:11px}.portfolio-proof .icon{width:15px;height:15px}.portfolio-proof p{font-size:10px;margin-left:auto}
.territory-teaser{border-block:1px solid #d8e2d0;background:#eef4e7;padding:29px 0}.territory-teaser-inner{display:grid;grid-template-columns:150px 1fr auto;gap:31px;align-items:center}.teaser-map{max-width:145px;color:#2e6338}.mexico-mini{display:block;width:100%;height:auto;fill:#467b41}.territory-teaser .eyebrow{font-size:8px}.territory-teaser h2{font-size:27px;letter-spacing:-.7px;line-height:1.2;margin-top:7px}.territory-teaser p{font-size:11px;line-height:1.7;margin-top:9px}.territory-teaser .text-link{white-space:nowrap;font-size:11px}
.cta-draft-link{display:flex;align-items:center;gap:9px;font-size:11px;color:#dde9d3;margin-top:16px;text-decoration:underline;text-underline-offset:4px}.cta-draft-link .icon{width:15px;height:15px}.header-cta>.icon{flex-shrink:0}.contact-channel a{overflow-wrap:anywhere;line-height:1.7}
.wa-float{position:fixed;right:22px;bottom:22px;z-index:25;display:flex;align-items:center;gap:9px;background:#183e2b;color:#fff;border:1px solid #a2d97a;box-shadow:0 4px 18px #08251c26;border-radius:40px;min-height:48px;padding:10px 17px;font-size:11px;font-weight:650}.wa-float:hover{background:#27583a}.wa-float .icon{width:23px;height:23px}.page-contacto .wa-float{display:none}
@media(min-width:801px){.site-header .header-cta{gap:8px}}
@media(max-width:1100px){.geo-workspace{grid-template-columns:minmax(0,1.6fr) minmax(275px,1fr);gap:17px}.geo-visual{padding:18px}.geo-choices{grid-template-columns:1fr 1fr}.geo-detail{padding:28px 23px}.territory-heading{gap:38px}.portfolio-heading{gap:36px}.pending-copy{padding:22px 20px}.pending-copy h3{font-size:23px}.territory-teaser-inner{grid-template-columns:115px 1fr;gap:24px}.territory-teaser .text-link{grid-column:2;justify-self:start;margin-top:-12px}.portfolio-proof p{margin-left:0}}
@media(max-width:800px){.territory-section{padding-top:47px}.territory-heading{grid-template-columns:1fr;gap:22px;margin-bottom:26px}.territory-heading h2{font-size:40px}.territory-heading>div>p{max-width:600px;font-size:13px;margin-top:12px}.geo-workspace{grid-template-columns:1fr}.geo-detail{min-height:0}.geo-detail-panel{min-height:0}.geo-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:18px}.geo-detail dl>div:last-child{grid-column:1/-1}.geo-detail h3{font-size:35px;max-width:100%}.geo-project-note{margin-top:14px}.geo-no-selection{min-height:260px}.geo-choices{grid-template-columns:repeat(4,minmax(0,1fr))}.mexico-map{max-width:570px}.territory-foot{grid-template-columns:1.5fr 1fr}.geo-filters{gap:11px}.geo-filters button{font-size:11px;padding-inline:11px}.geo-filters label{font-size:10px}.geo-filters select{font-size:12px}.portfolio-section{padding-block:54px}.portfolio-heading{grid-template-columns:1fr;gap:19px}.portfolio-heading>p{max-width:580px}.portfolio-gallery{gap:14px}.pending-copy{padding:21px 17px}.pending-copy h3{font-size:21px}.pending-copy p{font-size:11px}.pending-visual{height:135px}.pending-lines{width:50px}.pending-visual>.icon{width:42px;height:42px}.territory-teaser h2{font-size:25px}}
@media(max-width:600px){.territory-heading h2{font-size:34px;letter-spacing:-1px}.territory-section{padding:41px 0 27px}.territory-section .eyebrow{font-size:8px;letter-spacing:1px}.territory-heading>div>p{font-size:12px}.geo-filters{display:grid;grid-template-columns:1fr;gap:13px;padding-top:20px}.geo-filters label{max-width:none;font-size:11px}.geo-filters select{font-size:16px;min-height:48px;padding-block:9px}.geo-filters button{margin:0;justify-self:start;min-height:44px;font-size:11px}.geo-visual{padding:16px 13px}.map-caption{font-size:8px;letter-spacing:.6px}.mexico-map{margin-top:17px}.map-bottom{display:block;font-size:9px;margin:6px 0 16px}.map-bottom>span:last-child{display:block;margin-top:5px}.geo-choices{grid-template-columns:1fr 1fr;gap:8px;padding-top:15px}.geo-choice{min-height:48px;font-size:12px;padding:9px}.geo-choice>span{font-size:10px}.geo-detail{padding:27px 22px}.geo-detail h3{font-size:34px;margin-top:16px}.geo-detail dl{grid-template-columns:1fr}.geo-detail dd{font-size:13px}.geo-project-note p{font-size:12px}.geo-detail .text-link{min-height:44px}.geo-live{font-size:10px;margin-top:16px}.territory-foot{grid-template-columns:1fr;gap:23px}.international-note{padding-left:0;border-left:0;padding-top:20px;border-top:1px solid #3d5b47}.international-note p{font-size:12px}.geo-text-view ul{grid-template-columns:1fr}.geo-text-view summary{font-size:12px}.cartography-credit{font-size:8px;margin-top:21px}.portfolio-section{padding-block:43px}.portfolio-heading h2{font-size:31px;letter-spacing:-1px}.portfolio-heading>p{font-size:12px}.portfolio-filters{gap:7px;margin-top:25px}.portfolio-filters button{font-size:11px;padding:10px 14px}.portfolio-gallery{grid-template-columns:1fr;gap:18px;margin-top:24px}.pending-visual{height:140px}.pending-copy{padding:23px}.pending-copy h3{font-size:25px}.pending-copy p{font-size:12px}.portfolio-proof{gap:13px;margin-top:25px}.portfolio-proof span{font-size:10px}.portfolio-proof p{width:100%}.territory-teaser{padding:26px 0}.territory-teaser-inner{grid-template-columns:77px 1fr;gap:19px}.territory-teaser h2{font-size:23px}.territory-teaser p{font-size:11px;line-height:1.6}.territory-teaser .text-link{grid-column:1/-1;font-size:11px;margin-top:0}.territory-teaser .eyebrow{font-size:7px}.wa-float{display:none}.cta-draft-link{font-size:10px;line-height:1.7}.contact-channel a{font-size:12px}}
@media(max-width:350px){.geo-choices{grid-template-columns:1fr}.territory-heading h2{font-size:30px}.geo-detail{padding:24px 18px}.portfolio-filters button{padding-inline:12px}.portfolio-heading h2{font-size:28px}.territory-teaser-inner{grid-template-columns:1fr}.teaser-map{display:none}.territory-teaser h2{font-size:25px}}
@media print{.wa-float,.geo-filters,.portfolio-filters{display:none!important}.territory-section{background:white;color:black}.territory-section p{color:#333}.geo-detail{break-inside:avoid}}
