@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--blue:#354c9c;--cyan:#01a3e4;--green:#76c04f;--white:#ffffff;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--blue);background:var(--white);font-family:'DM Sans',Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.3vw,4.9rem);font-weight:600}h2{font-size:clamp(2rem,3.5vw,3.2rem);font-weight:600}h3{font-size:1.32rem;font-weight:600;letter-spacing:-.025em}p{margin-bottom:1.2rem}::selection{background:var(--green);color:var(--blue)}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}section[id]{scroll-margin-top:110px}.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{text-transform:uppercase;font-size:.71rem;font-weight:700;letter-spacing:.15em;display:flex;align-items:center;gap:10px;margin-bottom:23px;color:var(--green)}.eyebrow::before{content:'';height:7px;width:7px;border-radius:50%;background:currentColor;flex-shrink:0}.muted{color:var(--blue)}.arrow{font-family:Arial,sans-serif;font-size:1.2em;line-height:1}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;min-height:52px;border:1px solid var(--blue);background:var(--blue);color:var(--white);padding:13px 24px;border-radius:5px;font-size:.87rem;font-weight:600;transition:background .18s,transform .18s}.button:hover{background:var(--blue);transform:translateY(-2px)}.button--light{background:var(--green);color:var(--blue);border-color:var(--green)}.button--light:hover{background:var(--white)}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:.88rem;font-weight:700;padding-block:12px;border-bottom:1px solid currentColor;line-height:1.4}.text-link:hover{color:var(--green)}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.topbar{background:var(--blue);color:var(--white);font-size:.7rem;letter-spacing:.025em}.topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:34px;gap:15px}.topbar a:hover{text-decoration:underline}.topbar span{display:flex;align-items:center;gap:9px}.location-dot{width:5px;height:5px;background:var(--green);border-radius:50%;display:inline-block}.header{position:sticky;top:0;background:var(--white);z-index:30;border-bottom:1px solid var(--cyan)}.nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{flex-shrink:0}.brand img{width:235px;height:57px;object-fit:contain;mix-blend-mode:normal}.nav-links{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:29px;font-size:.79rem;font-weight:500}.nav-links a{display:inline-flex;align-items:center;min-height:44px}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--green)}.nav-links .nav-contact{border:1px solid var(--blue);padding:0 20px;min-height:43px;border-radius:4px;gap:20px}.nav-toggle{display:none;background:none;border:1px solid var(--cyan);border-radius:4px;min-height:44px;padding:9px 12px;color:var(--blue)}
.hero{padding-block:68px 70px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.hero h1{margin:0 0 24px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--green)}.hero-lead{font-size:1.04rem;color:var(--blue);max-width:440px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:31px;flex-wrap:wrap}.hero-figure{margin:0;position:relative;padding-bottom:42px}.hero-photo{width:100%;height:460px;object-fit:cover;object-position:53% center;border-radius:6px 90px 6px 6px}.photo-label{position:absolute;bottom:0;left:-22px;right:36px;padding:23px 27px;background:var(--blue);color:var(--white);border-radius:4px;display:flex;align-items:center;justify-content:space-between;gap:18px}.photo-label small{display:block;color:var(--white);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.photo-label strong{font-size:1.06rem;font-weight:500}.photo-label .round-arrow{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid var(--cyan);border-radius:50%;color:var(--green);font-size:1.3rem}.trust{display:grid;grid-template-columns:repeat(3,1fr);padding:31px 0 34px;border-top:1px solid var(--cyan);border-bottom:1px solid var(--cyan);gap:40px}.trust>a{padding-left:27px;border-left:1px solid var(--cyan)}.trust>a:first-child{padding-left:0;border:0}.trust strong{display:block;font-size:1.12rem;font-family:Manrope,Arial,sans-serif;font-weight:600;margin-bottom:4px}.trust span{display:block;font-size:.81rem;color:var(--blue)}
.intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.intro .eyebrow{margin-top:9px}.intro h2{max-width:800px;margin-bottom:27px}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:30px;color:var(--blue);font-size:.95rem}.intro .text-link{margin-top:10px}.services{background:var(--white)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:43px}.section-head h2{max-width:650px;margin-bottom:0}.section-head>p{max-width:335px;color:var(--blue);font-size:.94rem;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service{border-top:1px solid var(--cyan);padding-top:26px}.service-number{font-size:.76rem;color:var(--green);margin-bottom:32px;display:flex;justify-content:space-between;align-items:center}.service-number svg{width:34px;height:34px;stroke:var(--green);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.service h3{font-size:1.5rem;max-width:240px;margin-bottom:17px}.service p{font-size:.91rem;color:var(--blue);max-width:335px}.service .text-link{font-size:.79rem}.projects{background:var(--blue);color:white}.projects .eyebrow{color:var(--green)}.projects .section-head>p{color:var(--white)}.project-feature{display:grid;grid-template-columns:1.15fr 1fr;background:var(--blue);border-radius:7px;overflow:hidden}.project-feature>img{height:100%;min-height:420px;width:100%;object-fit:cover}.project-feature-copy{padding:48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.tag{font-size:.69rem;letter-spacing:.07em;padding:5px 11px;border:1px solid var(--cyan);border-radius:3px;display:inline-block;margin-bottom:24px}.project-feature h3{font-size:2.25rem;margin-bottom:21px;max-width:390px}.project-feature p{font-size:.94rem;color:var(--white)}.project-feature .text-link{margin-top:14px;color:var(--green)}.project-meta{display:flex;gap:22px;font-size:.72rem;color:var(--white);padding-top:22px;margin-top:24px;border-top:1px solid var(--cyan);width:100%}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.news-card{min-width:0}.news-picture{background:var(--white);border-radius:5px;overflow:hidden;height:238px;position:relative}.news-picture img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.news-card:hover .news-picture img{transform:scale(1.025)}.news-card:first-child .news-picture img{object-fit:contain}.news-card time{display:block;color:var(--green);font-size:.72rem;margin:24px 0 12px}.news-card h3{font-size:1.25rem;line-height:1.35;margin-bottom:13px}.news-card p{font-size:.88rem;color:var(--blue)}.news-card button{background:none;color:var(--blue);border:0;border-bottom:1px solid var(--blue);padding:10px 0;display:inline-flex;gap:24px;align-items:center;font-size:.82rem;font-weight:600}.news-card button:hover{color:var(--green)}.news-state{font-size:.9rem;color:var(--blue);grid-column:1/-1}.gallery-section{padding-top:0}.gallery-strip{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.gallery-strip a{overflow:hidden;border-radius:5px}.gallery-strip img{width:100%;height:280px;object-fit:cover;transition:transform .3s}.gallery-strip a:hover img{transform:scale(1.03)}.gallery-section .section-head{margin-bottom:30px}.gallery-section h2{font-size:2rem}.transparency{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:33px 0;border-top:1px solid var(--cyan);margin-top:43px}.transparency h3{font-size:1.14rem;margin-bottom:6px}.transparency p{margin:0;font-size:.85rem;color:var(--blue)}.transparency .text-link{flex-shrink:0}
.contact{background:var(--white);padding-block:72px}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.contact h2{font-size:clamp(2.2rem,4vw,3.65rem);margin-bottom:21px;max-width:600px}.contact p{color:var(--blue);max-width:490px}.contact-links{border-top:1px solid var(--green);padding-top:25px;margin-top:25px;display:flex;gap:20px;flex-wrap:wrap;font-size:.84rem}.contact-links a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.contact-info{border-left:1px solid var(--green);padding-left:44px}.contact-info p{font-size:.91rem}.contact-info strong{font-weight:600;color:var(--blue);display:block;margin-bottom:7px}.footer{background:var(--white);padding-block:48px 20px}.footer-top{display:grid;grid-template-columns:1.35fr .8fr 1fr;gap:55px}.footer-brand{width:220px;mix-blend-mode:normal;margin-bottom:15px}.footer p,.footer a{font-size:.79rem}.footer p{color:var(--blue);max-width:330px}.footer h2{font-family:'DM Sans',Arial,sans-serif;font-size:.77rem;letter-spacing:.03em;margin-bottom:20px}.footer nav{display:grid;gap:8px;align-content:start}.footer nav a:hover{text-decoration:underline}.footer address{font-style:normal;font-size:.8rem;color:var(--blue)}.footer-bottom{border-top:1px solid var(--cyan);padding-top:20px;margin-top:38px;display:flex;justify-content:space-between;gap:20px;color:var(--blue);font-size:.68rem}.footer-bottom a{font-size:inherit}.whatsapp{position:fixed;bottom:22px;right:22px;background:var(--blue);color:var(--white);z-index:25;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--green);box-shadow:none}.whatsapp img{width:26px;height:26px;filter:brightness(0) invert(1)}.whatsapp:hover{background:var(--green)}
.breadcrumb{display:flex;gap:10px;font-size:.77rem;color:var(--blue);margin-bottom:40px;flex-wrap:wrap}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.detail-hero{padding-block:38px 0}.detail-title{display:grid;grid-template-columns:1.45fr 1fr;gap:70px;align-items:end;padding-bottom:45px}.detail-title h1{font-size:clamp(2.8rem,5vw,4.4rem);margin-bottom:0}.detail-title>p{margin:0;color:var(--blue);font-size:1.02rem}.detail-cover{margin:0}.detail-cover img{height:530px;object-fit:cover;object-position:center 42%;width:100%;border-radius:7px}.detail-cover figcaption{font-size:.71rem;color:var(--blue);margin-top:10px}.detail-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-bottom:1px solid var(--cyan);padding-block:34px}.detail-meta dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--green);margin-bottom:9px}.detail-meta dd{margin:0;font-size:.96rem;font-weight:500}.detail-body{display:grid;grid-template-columns:.55fr 1.45fr;gap:95px}.detail-sidebar nav{display:grid;gap:15px;border-left:1px solid var(--cyan);padding-left:24px;font-size:.86rem;position:sticky;top:135px}.detail-sidebar a:hover{color:var(--green);text-decoration:underline}.detail-content h2{font-size:2.45rem}.detail-content>section{margin-bottom:70px}.detail-content>section:last-child{margin-bottom:0}.detail-content p{color:var(--blue);font-size:1.02rem}.activity-list{counter-reset:activity;padding:0;list-style:none}.activity-list li{counter-increment:activity;display:grid;grid-template-columns:40px 1fr;gap:20px;padding-block:27px;border-top:1px solid var(--cyan)}.activity-list li:before{content:'0' counter(activity);font-size:.8rem;color:var(--green);padding-top:4px}.activity-list h3{font-size:1.14rem;margin-bottom:10px}.activity-list p{font-size:.91rem;margin:0}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:15px}.project-gallery .photo-trigger{border:0;background:none;padding:0;text-align:left}.project-gallery img{width:100%;height:230px;object-fit:cover;border-radius:5px}.project-gallery .photo-trigger:first-child{grid-column:1/-1}.project-gallery .photo-trigger:first-child img{height:360px}.project-gallery span{display:block;font-size:.74rem;color:var(--blue);margin-top:8px}.project-gallery .photo-trigger:hover img{outline:3px solid var(--cyan)}.source-note{font-size:.77rem!important;margin-top:20px}.detail-next{margin-top:50px;border-top:1px solid var(--cyan);padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:25px}.detail-next p{font-size:.85rem;margin:0}
dialog{border:0;border-radius:8px;padding:0;width:min(760px,calc(100% - 36px));max-height:88dvh;color:var(--blue);background:var(--white);box-shadow:none}dialog::backdrop{background:var(--blue);backdrop-filter:blur(4px)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--cyan);position:sticky;top:0;background:var(--white);z-index:1}.dialog-bar span{font-size:.73rem;text-transform:uppercase;letter-spacing:.1em}.dialog-close{border:1px solid var(--cyan);background:white;color:var(--blue);padding:8px 14px;min-height:44px;border-radius:4px;font-size:.8rem}.dialog-body{padding:30px}.dialog-body h2{font-size:1.8rem}.dialog-body img{max-height:60vh;object-fit:contain;margin:0 auto 24px}.dialog-body time{display:block;color:var(--green);font-size:.79rem;margin-bottom:15px}.dialog-body .article-content{white-space:pre-line;font-size:.94rem}.dialog-body figcaption{font-size:.85rem}.dialog-body figure{margin:0}
@media(min-width:1500px){.hero{padding-block:80px}.hero-photo{height:510px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.nav-links{gap:17px;font-size:.74rem}.brand img{width:200px}.nav{gap:20px}.hero-grid{gap:40px}.hero h1{font-size:3.65rem}.hero-photo{height:440px}.hero-actions{gap:16px}.hero-actions .button{padding-inline:17px}.hero-lead{font-size:.97rem}.intro{gap:45px;grid-template-columns:.6fr 1.4fr}.project-feature-copy{padding:32px}.project-feature h3{font-size:1.85rem}.contact-inner{gap:45px}.detail-body{gap:50px}.news-picture{height:205px}}
@media(max-width:860px){.container{width:calc(100% - 44px)}.nav{height:80px;flex-wrap:wrap}.header{position:sticky}.brand img{width:220px;height:55px}.js .nav-toggle{display:block}.nav-links{width:100%;background:var(--white);padding:16px 22px 24px;border-bottom:1px solid var(--cyan);display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.9rem}.js .nav-links{display:none;position:absolute;left:0;top:80px}.js .nav-links.is-open{display:grid;grid-template-columns:1fr 1fr}.nav-links .nav-contact{justify-content:space-between}.nav:has(.nav-links){height:auto;min-height:80px}.js .nav{height:80px}.hero{padding-top:45px}.hero-grid{gap:30px}.hero h1{font-size:3.2rem}.hero-photo{height:420px}.hero-lead{font-size:.94rem}.photo-label{left:-12px;right:12px;padding:18px}.photo-label strong{font-size:.9rem}.photo-label .round-arrow{width:32px;height:32px}.section{padding-block:72px}.intro{grid-template-columns:1fr;gap:5px}.intro-copy{gap:25px}.section-head>p{max-width:260px}.service-grid{gap:22px}.service h3{font-size:1.3rem}.project-feature{grid-template-columns:1fr 1fr}.project-feature-copy{padding:28px}.project-feature h3{font-size:1.7rem}.project-feature>img{min-height:420px}.news-grid{gap:22px}.news-card h3{font-size:1.1rem}.news-picture{height:180px}.gallery-strip img{height:210px}.gallery-section{padding-top:0}.contact-inner{grid-template-columns:1fr 1fr;gap:30px}.contact-info{padding-left:25px}.footer-top{gap:30px}.detail-title{gap:30px}.detail-title h1{font-size:3.4rem}.detail-title>p{font-size:.95rem}.detail-cover img{height:400px}.detail-body{grid-template-columns:1fr;gap:35px}.detail-sidebar nav{position:static;display:flex;flex-wrap:wrap;border-left:0;border-bottom:1px solid var(--cyan);padding:0 0 22px;gap:14px 25px}}
@media(max-width:640px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.topbar .container{justify-content:center;min-height:30px;font-size:.63rem}.topbar a{display:none}.nav{gap:10px}.brand img{width:200px;height:52px}.hero{padding:36px 0}.hero-grid{grid-template-columns:1fr;gap:35px}.eyebrow{font-size:.63rem;letter-spacing:.13em;margin-bottom:18px}.hero h1{font-size:clamp(2.65rem,11.8vw,4rem);letter-spacing:-.05em;max-width:480px;margin-bottom:20px}.hero-lead{font-size:.97rem;line-height:1.75;max-width:440px}.hero-actions{margin-top:23px;gap:15px 23px}.button{font-size:.81rem;min-height:50px;padding:13px 18px}.text-link{font-size:.81rem;gap:15px}.hero-figure{padding-bottom:35px}.hero-photo{height:335px;object-position:center;border-top-right-radius:65px}.photo-label{left:12px;right:12px;padding:17px 20px}.photo-label strong{font-size:1rem}.photo-label small{font-size:.59rem}.trust{gap:0;padding-block:0;grid-template-columns:1fr}.trust>a,.trust>a:first-child{padding:20px 0;border:0;border-bottom:1px solid var(--cyan);display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:center}.trust>a:last-child{border:0}.trust strong{font-size:.96rem;margin:0}.trust span{font-size:.77rem}.section{padding-block:57px}.intro-copy{grid-template-columns:1fr;gap:0}.intro h2{font-size:2.1rem;margin-bottom:22px}.intro .text-link{margin-top:0}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:2.15rem}.section-head>p{max-width:100%;margin-top:19px;font-size:.92rem}.section-head>.text-link{margin-top:15px}.service-grid{grid-template-columns:1fr;gap:27px}.service{padding-top:21px}.service-number{margin-bottom:18px}.service h3{max-width:100%;font-size:1.55rem}.service p{max-width:100%}.service .text-link{padding-block:7px}.project-feature{grid-template-columns:1fr}.project-feature>img{height:250px;min-height:0}.project-feature-copy{padding:29px 25px}.project-feature h3{font-size:1.9rem}.project-meta{font-size:.68rem;gap:18px}.news-grid{grid-template-columns:1fr;gap:38px}.news-picture{height:250px}.news-card h3{font-size:1.25rem}.news-card time{margin-top:18px}.news-card p{font-size:.92rem}.gallery-section{padding-top:0}.gallery-strip{grid-template-columns:1fr 1fr;gap:12px}.gallery-strip a:first-child{grid-column:1/-1}.gallery-strip img{height:170px}.gallery-strip a:first-child img{height:235px}.transparency{display:block;padding-top:28px;margin-top:30px}.transparency .text-link{margin-top:14px}.contact{padding-block:50px}.contact-inner{grid-template-columns:1fr;gap:30px}.contact h2{font-size:2.7rem}.contact-info{padding:25px 0 0;border:0;border-top:1px solid var(--green)}.contact-info p{margin-bottom:16px}.contact-links{gap:12px}.footer{padding-top:36px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-top>div:first-child{grid-column:1/-1}.footer-top p{max-width:100%}.footer-bottom{flex-direction:column;gap:8px;padding-right:35px}.whatsapp{width:48px;height:48px;right:14px;bottom:14px}.detail-hero{padding-top:27px}.breadcrumb{font-size:.7rem;margin-bottom:32px}.detail-title{grid-template-columns:1fr;gap:24px;padding-bottom:30px}.detail-title h1{font-size:2.8rem}.detail-title>p{font-size:.96rem}.detail-cover img{height:300px}.detail-meta{grid-template-columns:1fr;gap:20px;padding-block:25px}.detail-meta>div{display:grid;grid-template-columns:95px 1fr;gap:15px;align-items:start}.detail-meta dt{margin:3px 0 0;font-size:.62rem}.detail-meta dd{font-size:.87rem}.detail-sidebar nav{font-size:.75rem;gap:12px 19px}.detail-content h2{font-size:2rem}.detail-content p{font-size:.96rem}.activity-list li{grid-template-columns:25px 1fr;gap:15px}.activity-list h3{font-size:1.12rem}.activity-list p{font-size:.89rem}.detail-content>section{margin-bottom:48px}.project-gallery{gap:12px}.project-gallery img{height:160px}.project-gallery .photo-trigger:first-child img{height:240px}.project-gallery span{font-size:.65rem}.detail-next{align-items:start;flex-direction:column}.dialog-body{padding:23px}.dialog-body h2{font-size:1.45rem}.dialog-bar{padding:12px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

[hidden]{display:none!important}

/* Brand palette: sampled from logo-horizontal-compacto.jpeg.
   Blue #354c9c, cyan #01a3e4, green #76c04f and its white background.
   Small text stays blue on white (or white on blue); green/cyan are accents. */
::selection{background:var(--blue);color:var(--white)}
.eyebrow,.service-number,.news-card time,.detail-meta dt,.dialog-body time,.activity-list li::before{color:var(--blue)}
.eyebrow::before{background:var(--green)}
.hero h1 em{color:var(--blue);text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:5px;text-underline-offset:10px}
.nav-links a:hover,.nav-links a[aria-current=page],.text-link:hover,.news-card button:hover,.detail-sidebar a:hover{color:var(--blue);text-decoration:underline;text-decoration-color:var(--cyan);text-underline-offset:6px}
.button:hover{background:var(--blue);outline:3px solid var(--green);outline-offset:2px}
.button--light{background:var(--white);color:var(--blue);border-color:var(--blue)}
.button--light:hover{background:var(--white)}
.photo-label{border-top:4px solid var(--cyan)}
.services{border-top:4px solid var(--cyan)}
.projects .eyebrow{color:var(--white)}
.project-feature{background:var(--white);color:var(--blue)}
.project-feature p,.project-feature .text-link,.project-meta{color:var(--blue)}
.project-feature .tag{border-color:var(--green)}
.project-meta{border-color:var(--cyan)}
.contact{border-top:6px solid var(--green)}
.whatsapp:hover{background:var(--blue);outline:3px solid var(--green)}
dialog::backdrop{background:var(--blue);backdrop-filter:none}
/* Complete institutional site */
.page-hero{padding:70px 0 52px;border-bottom:1px solid var(--cyan)}
.page-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:end}
.page-heading h1{font-size:clamp(2.5rem,4.6vw,4.3rem);margin:0}
.page-heading>p{margin:0;max-width:450px;font-size:1.03rem}
.section-more{margin-top:32px}.all-projects{color:var(--white);margin-top:30px}.all-projects:hover{color:var(--white)}
.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.about-intro img{height:500px;object-fit:cover;border-radius:6px 70px 6px 6px}
.about-intro h2{font-size:2.35rem}.about-intro p{font-size:.95rem}
.prose-layout{display:grid;grid-template-columns:.6fr 1.4fr;gap:60px}.prose-layout h3{font-size:2.4rem}
.history-section{background:var(--blue);color:var(--white)}.history-section .eyebrow{color:var(--white)}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:55px}.statement{border-top:5px solid var(--green);padding-top:30px}
.principle-list{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.principle-list article{border-top:1px solid var(--cyan);padding-top:25px}.principle-list p{font-size:.93rem}.principle-list img{width:42px;height:42px;margin-bottom:20px}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-block:30px}.filter-bar a,.filter-bar button{border:1px solid var(--blue);padding:10px 17px;background:var(--white);color:var(--blue);font-size:.84rem;border-radius:4px;min-height:44px}
.filter-bar a:hover,.filter-bar button:hover,.filter-bar button[aria-pressed=true]{background:var(--blue);color:var(--white)}
.service-detail-list{display:grid;gap:65px}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--cyan);padding-top:40px}.service-detail h2{font-size:2.2rem}.service-index{font-family:Georgia,serif;font-size:2rem;display:block;margin-bottom:15px}.audience{font-size:.86rem;margin-block:25px}.feature-list{list-style:none;padding:0;display:grid;gap:17px}.feature-list li{padding-left:24px;position:relative}.feature-list li:before{content:'';position:absolute;left:0;top:10px;width:7px;height:7px;background:var(--green);border-radius:50%}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 32px}.project-card{border:1px solid var(--cyan);border-radius:7px;overflow:hidden}.project-card>a{display:block;height:100%}.project-card img{width:100%;height:275px;object-fit:cover}.project-card>a>div{padding:28px}.project-card h2{font-size:1.85rem}.project-card p{font-size:.93rem}.project-card .eyebrow{font-size:.7rem}.project-card a:hover .text-link{text-decoration:underline}.detail-cover img[src$="yotoco.webp"],.detail-cover img[src$="calima.webp"],.detail-cover img[src$="restrepo.webp"]{height:auto;aspect-ratio:1200/376;object-fit:contain}
.institution-data{min-width:0}.institution-data h3{font-size:1.6rem}.institution-data dl{margin:0}.institution-data dt{font-size:.78rem;font-weight:700;margin-top:20px}.institution-data dd{margin:4px 0 0;overflow-wrap:anywhere}.document-list{display:grid;grid-template-columns:1fr 1fr;gap:26px}.document-row{padding:28px;border:1px solid var(--cyan);border-radius:5px;display:flex;flex-direction:column;align-items:start}.document-row h3{font-size:1.3rem}.document-row p{font-size:.92rem}.document-row a{margin-top:auto;padding:9px 0;border-bottom:1px solid var(--blue);font-weight:600}.document-row a:after{content:' ↗'}
.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.album-item{margin:0}.album-item a{display:block}.album-item img{width:100%;height:270px;object-fit:cover;border-radius:5px}.album-item figcaption{font-size:.8rem;padding-top:10px}.album-item a:hover img{outline:3px solid var(--cyan);outline-offset:2px}.gallery-nav{display:flex;justify-content:space-between;gap:20px;align-items:center}.gallery-nav button{background:var(--blue);color:var(--white);border:0;border-radius:4px;padding:10px 16px;min-height:44px}.gallery-nav p{margin:0;font-size:.76rem}
.contact-page-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:85px}.contact-page-grid aside h2{font-size:2.3rem}.contact-page-grid aside a{overflow-wrap:anywhere}.contact-form{border:1px solid var(--cyan);border-radius:7px;padding:35px}.contact-form h2{font-size:1.7rem}.contact-form label{display:block;font-size:.84rem;font-weight:600;margin-bottom:8px}.contact-form input,.contact-form textarea,.contact-form select{border:1px solid var(--blue);border-radius:4px;background:var(--white);color:var(--blue);padding:12px;width:100%;font:inherit;min-width:0}.contact-form textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.contact-form select{font-size:.86rem;min-height:52px}.form-help{font-size:.77rem;margin-top:14px}.form-feedback{padding:20px;border:2px solid var(--blue);border-left:6px solid var(--green);border-radius:4px}.form-feedback[data-error=true]{border-left-color:var(--blue)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.alternate-emails{margin-top:25px;font-size:.88rem}.alternate-emails summary{cursor:pointer}.alternate-emails p{margin-top:12px}.contact-form button:disabled{cursor:wait}.contact-form button:disabled:after{content:'…'}
body .nav-links{gap:20px;font-size:.77rem}body .brand img{width:215px}
@media(max-width:1100px){body .nav-links{gap:13px;font-size:.7rem}body .brand img{width:190px}.nav-links .nav-contact{padding-inline:12px}.about-intro,.service-detail,.contact-page-grid{gap:40px}.page-heading{gap:40px}.project-card img{height:230px}.album-item img{height:220px}}
@media(max-width:860px){body .nav-links{font-size:.86rem;gap:8px 24px}body .brand img{width:215px}.page-hero{padding-block:45px}.page-heading{grid-template-columns:1fr;gap:25px}.page-heading>p{max-width:650px}.about-intro{grid-template-columns:1fr;gap:30px}.about-intro img{width:100%;height:400px}.two-columns{gap:30px}.principle-list{grid-template-columns:1fr 1fr}.service-detail{gap:35px}.contact-page-grid{grid-template-columns:1fr;gap:40px}.contact-page-grid aside{max-width:650px}.album-grid{grid-template-columns:1fr 1fr}.prose-layout{grid-template-columns:1fr;gap:10px}}
@media(max-width:640px){.page-hero{padding-block:35px}.page-heading h1{font-size:2.55rem}.page-heading p{font-size:.95rem}.about-intro img{height:280px}.about-intro h2,.prose-layout h3{font-size:2rem}.two-columns,.principle-list,.service-detail,.project-grid,.document-list{grid-template-columns:1fr}.service-detail{gap:25px;padding-top:25px}.service-detail-list{gap:45px}.service-detail h2{font-size:1.9rem}.project-card img{height:210px}.project-card>a>div{padding:23px}.project-card h2{font-size:1.6rem}.filter-bar{gap:8px;margin-block:20px}.filter-bar a,.filter-bar button{padding:8px 12px;font-size:.77rem}.album-grid{gap:18px 12px}.album-item img{height:170px}.album-item figcaption{font-size:.73rem}.form-row{grid-template-columns:1fr;gap:22px}.contact-form{padding:23px}.contact-form h2{font-size:1.55rem}.contact-form input,.contact-form textarea,.contact-form select{font-size:16px}.document-row{padding:23px}.gallery-nav{gap:12px}.gallery-nav button{padding-inline:12px;font-size:.8rem}.detail-meta dd{overflow-wrap:anywhere}body .brand img{width:200px}}
.document-heading{margin-bottom:40px;max-width:800px}.document-heading h2{margin-bottom:18px}.document-heading .eyebrow{margin-bottom:16px}

/* Enlaces de trayectoria, proyectos y transparencia */
.trust>a{color:var(--blue);text-decoration:none}.trust strong i{font-style:normal;color:var(--cyan)}.trust>a:hover strong{text-decoration:underline;text-underline-offset:5px}.trust>a:focus-visible{outline:2px solid var(--blue);outline-offset:6px}
