/* ADS · Portfolio de redes. Estilos aislados del resto del sitio. */
.ads-portfolio{background:#f5f7f6;padding:80px 0;color:#202723;scroll-margin-top:100px}
.ads-portfolio-heading{max-width:780px;margin-bottom:30px}
.ads-portfolio-kicker{color:#087e76;font-size:13px;font-weight:700;letter-spacing:2px;display:block;margin-bottom:14px}
.ads-portfolio h2{font-size:40px;line-height:1.2;letter-spacing:-1px;margin:0 0 20px;color:#202723}
.ads-portfolio-heading p{font-size:18px;line-height:1.7;color:#575f5b;margin:0}
.ads-portfolio-nav{display:flex;flex-wrap:wrap;gap:10px;padding:0 0 36px;border-bottom:1px solid #dce2df}
.ads-portfolio-nav a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid #cbd6d0;border-radius:30px;background:#fff;color:#36483f;font-size:14px;font-weight:600;transition:background .2s,color .2s}
.ads-portfolio-nav a:hover{background:#087e76;border-color:#087e76;color:#fff}
.ads-portfolio-client{padding-top:48px;scroll-margin-top:100px}
.ads-portfolio-client-heading{display:flex;gap:16px;align-items:center;margin-bottom:24px}
.ads-portfolio-number{font-size:13px;color:#087e76;background:#e3ede8;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:600}
.ads-portfolio-client h3{font-size:25px;line-height:1.3;margin:0 0 3px;color:#202723}
.ads-portfolio-client-heading p{font-size:14px;color:#626b65;line-height:1.5;margin:0}
.ads-portfolio-hint{margin-left:auto;font-size:12px;color:#667069}
.ads-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-radius:12px}
.ads-portfolio-card{min-width:0;background:#fff;border:1px solid #dfe5e1;border-radius:12px;overflow:hidden;box-shadow:0 4px 14px rgba(23,42,32,.035);transition:box-shadow .2s,transform .2s}
.ads-portfolio-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(23,42,32,.1)}
.ads-portfolio-open{display:block;height:100%;color:inherit;text-decoration:none!important}
.ads-portfolio-image{position:relative;aspect-ratio:4/5;background:#e9edea;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}
.ads-portfolio-image img{display:block;width:100%;height:100%;object-fit:contain}
.ads-portfolio-zoom{position:absolute;right:12px;bottom:12px;background:#fff;color:#087e76;border-radius:50%;width:34px;height:34px;display:flex;justify-content:center;align-items:center;font-size:23px;box-shadow:0 2px 8px #0002}
.ads-portfolio-caption{padding:18px 20px 19px}
.ads-portfolio-caption h4{font-size:16px;line-height:1.45;margin:0 0 10px;color:#202723;font-weight:600}
.ads-portfolio-caption>span{font-size:12px;font-weight:600;color:#087e76}
.ads-portfolio-end{text-align:center;padding-top:56px}
.ads-portfolio-end p{font-size:23px;font-weight:600;color:#202723;margin:0 0 20px}
.ads-portfolio-end a.btn_solid{background:#087e76;border-color:#087e76;color:#fff;white-space:normal}
.ads-portfolio-end a:hover{background:#075f59!important;border-color:#075f59!important}
.ads-portfolio :focus-visible{outline:3px solid #087e76;outline-offset:4px}
.ads-portfolio-dialog:not([open]){display:none}
.ads-portfolio-dialog{border:0;border-radius:14px;padding:0;background:#151b18;color:white;width:calc(100vw - 48px);max-width:1100px;height:calc(100vh - 48px);height:calc(100dvh - 48px);max-height:100%;margin:auto;box-shadow:0 20px 80px #0006;overflow:hidden}
.ads-portfolio-dialog[open]{display:flex;flex-direction:column}
.ads-portfolio-dialog::backdrop{background:rgba(8,15,11,.88)}
.ads-portfolio-dialog-bar{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #ffffff24;flex-shrink:0}
.ads-portfolio-dialog-bar p{color:white;font-size:15px;line-height:1.4;margin:0}
.ads-portfolio-dialog button{background:transparent;border:1px solid #ffffff55;color:white;border-radius:6px;min-height:44px;padding:8px 14px;font:inherit;font-size:14px;cursor:pointer;flex-shrink:0}
.ads-portfolio-dialog button:hover{background:#ffffff22}
.ads-portfolio-dialog button:focus-visible{outline:3px solid #71d8bd;outline-offset:3px}
.ads-portfolio-dialog-stage{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;padding:12px}
.ads-portfolio-full{width:100%;height:100%;object-fit:contain;min-height:0}
.ads-portfolio-dialog-controls{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-top:1px solid #ffffff24;flex-shrink:0;gap:10px}
.ads-portfolio-counter{font-size:13px;color:#dde8e1;white-space:nowrap}
html.ads-portfolio-modal-open,body.ads-portfolio-modal-open{overflow:hidden}
@media(max-width:767px){
 .ads-portfolio{padding:48px 0}
 .ads-portfolio h2{font-size:30px;letter-spacing:-.5px}
 .ads-portfolio-heading p{font-size:16px}
 .ads-portfolio-nav{gap:8px;padding-bottom:26px}
 .ads-portfolio-nav a{font-size:12px;padding:8px 12px}
 .ads-portfolio-client{padding-top:32px;scroll-margin-top:85px}
 .ads-portfolio-client-heading{gap:12px;flex-wrap:wrap;margin-bottom:16px}
 .ads-portfolio-client h3{font-size:22px}
 .ads-portfolio-hint{width:100%;margin-left:52px}
 .ads-portfolio-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 16px;scrollbar-width:thin;scrollbar-color:#087e76 #dce2df}
 .ads-portfolio-card{flex:0 0 86%;scroll-snap-align:start}
 .ads-portfolio-caption{padding:16px}
 .ads-portfolio-card:hover{transform:none}
 .ads-portfolio-end{padding-top:36px}
 .ads-portfolio-end p{font-size:20px}
 .ads-portfolio-end a{font-size:13px;padding:14px 16px;letter-spacing:.5px}
 .ads-portfolio-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px);height:calc(100dvh - 16px);border-radius:8px}
 .ads-portfolio-dialog-bar{gap:10px;padding:10px}
 .ads-portfolio-dialog-bar p{font-size:13px}
 .ads-portfolio-dialog-stage{padding:6px}
 .ads-portfolio-dialog-controls{padding:8px}
 .ads-portfolio-dialog button{font-size:12px;padding:8px 10px}
}
@media(prefers-reduced-motion:reduce){.ads-portfolio *{transition:none!important;scroll-behavior:auto!important}}
