@font-face{font-family:Souvenir;src:url('assets/ceci/souvenir.ttf') format('truetype');font-weight:400 700;font-display:swap}@font-face{font-family:AlbertLocal;src:url('assets/ceci/albert.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:AlbertLocal;src:url('assets/ceci/albert-medium.ttf') format('truetype');font-weight:500 700;font-display:swap}
.site-arrow{display:inline-block;width:20px;height:20px;vertical-align:middle;flex-shrink:0}body:not(.coop-active){font-family:AlbertLocal,Arial,sans-serif}body:not(.coop-active) h1,body:not(.coop-active) h2,body:not(.coop-active) h3{font-family:Souvenir,Georgia,serif;font-weight:400;letter-spacing:-.055em}body:not(.coop-active)>header{height:112px;margin:0;padding:0 6%;border-bottom:1px solid #27546b30;background:#F8EFE8}.brand .cn-logo{width:175px;height:90px;display:block;object-fit:contain}.brand{display:flex;align-items:center;letter-spacing:0}body:not(.coop-active) nav{gap:25px;font-size:13px}.nav-contact{border-radius:3px;padding:11px 16px}body:not(.coop-active) .button{font-family:AlbertLocal,sans-serif;font-size:14px;border-radius:3px;padding:17px 23px;gap:30px}body:not(.coop-active) .button .site-arrow{width:19px;height:19px}.cn-hero{padding:0!important;background:#27546B;color:#F8EFE8}.cn-hero>.hero-top{padding:24px 6%;font-size:9px;font-weight:400;letter-spacing:.15em;border-bottom:1px solid #f8efe825}.cn-hero .hero-grid{padding:56px 6% 55px;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.cn-kicker{font-size:10px;letter-spacing:.16em;line-height:1.5;font-family:AlbertLocal,Arial,sans-serif;font-weight:500;margin-bottom:23px}.cn-hero .cn-kicker{color:#BED95A}.cn-hero h1{font-size:clamp(77px,8.5vw,124px);line-height:1.01;letter-spacing:-.07em}.cn-hero h1 em{font-style:normal;color:#F8EFE8;position:relative}.cn-hero h1 em:after{content:'';display:block;width:72px;height:4px;background:#E93D99;margin-top:19px}.cn-hero .intro{font-size:20px;line-height:1.55;max-width:450px;margin:27px 0}.cn-primary{background:#F8EFE8;color:#27546B;border:1px solid #F8EFE8}.cn-primary:hover{background:#BED95A;border-color:#BED95A}.cn-hero-note{font-size:12px;line-height:1.6;color:#f8efe8b0;margin-top:25px}.cn-portrait{margin:0;position:relative;max-width:500px;width:100%;justify-self:end}.cn-portrait img{display:block;width:100%;height:520px;object-fit:cover;object-position:center 52%;border-radius:2px}.cn-portrait figcaption{display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.13em;border-bottom:1px solid #f8efe84d;padding:14px 0}.cn-hero .home-topics{margin:0 6%;padding:25px 0 35px;border-color:#f8efe84d}.cn-hero .home-topics>span{font-size:9px;color:#f8efe8b8;margin-bottom:20px}.cn-hero .home-topics>div{gap:28px}.cn-hero .home-topics a{border:0;border-top:1px solid #f8efe84d;border-radius:0;font-size:14px;padding:19px 0 0;gap:13px;justify-content:flex-start}.home-topics a small{font-size:10px;opacity:.7}.cn-hero .home-topics a .site-arrow{margin-left:auto;width:17px}.cn-hero .home-topics a:hover{background:transparent;color:#BED95A}.cn-newsletter{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;background:#F8EFE8;color:#27546B;padding:60px 6%;text-align:left}.cn-newsletter h2{font-size:40px;line-height:1.13;margin-bottom:23px}.cn-newsletter .cn-kicker{color:#27546b99;font-size:9px}.cn-newsletter>div>p:last-child{font-size:16px;max-width:390px;line-height:1.6}.newsletter-form{align-self:center;min-width:0}.newsletter-form>label{display:block;font-size:12px;margin-bottom:12px}.newsletter-input-row{display:flex;align-items:stretch;border-bottom:1px solid #27546B;gap:15px}.newsletter-input-row input{width:100%;min-width:0;border:0;background:none;color:#27546B;font:18px AlbertLocal,Arial,sans-serif;padding:14px 0;outline-offset:4px;border-radius:0}.newsletter-input-row input::placeholder{color:#27546b80}.newsletter-input-row button{flex-shrink:0;display:flex;align-items:center;gap:18px;background:#27546B;color:#F8EFE8;border:0;padding:12px 17px;font:12px AlbertLocal,Arial,sans-serif;cursor:pointer;margin-bottom:8px;border-radius:2px}.newsletter-input-row button:hover{background:#1d4052}.newsletter-input-row button:disabled{opacity:.6;cursor:wait}.newsletter-form .newsletter-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;margin:21px 0 0}.newsletter-consent input{margin:4px 0 0;width:15px;height:15px;accent-color:#27546B;flex-shrink:0}.newsletter-status{font-size:13px;margin-top:15px;min-height:21px}.newsletter-privacy{font-size:10px;line-height:1.6;color:#27546b99;display:block;margin-top:10px}.newsletter-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.cn-news-page .cn-newsletter{padding:25px 0 60px}.cn-news-page{min-height:60vh}.cn-about-portrait{width:100%;height:360px;object-fit:cover;object-position:center 55%;margin-bottom:32px;border-radius:2px}body:not(.coop-active) .perspective h2 em,body:not(.coop-active) .eco-heading h2 em{color:#27546B;font-style:normal}body:not(.coop-active) .section-label{font-weight:400;letter-spacing:.16em;border-bottom:1px solid #27546b30;padding-bottom:18px}body:not(.coop-active) .work .section-label{border-color:#f8efe84d}body:not(.coop-active) .work-intro h2 em{font-style:normal}body:not(.coop-active) .experiences{background:#ede5df;color:#27546B;border:1px solid #27546b30}body:not(.coop-active) .experiences .project-wordmark{font-family:Souvenir,Georgia,serif;letter-spacing:-.035em;font-size:38px}body:not(.coop-active) .contact{background:#27546B;color:#F8EFE8;border-top:1px solid #f8efe84d}body:not(.coop-active) .contact h2 em{font-style:normal;color:#F8EFE8}body:not(.coop-active) footer{padding:25px 6%;gap:25px}.cn-footer-news{border-bottom:1px solid currentColor;padding-bottom:5px}.comunicalma .site-arrow{color:inherit}.com-page .site-arrow{width:18px;height:18px}.coop-page .site-arrow{width:20px;height:20px}dialog .site-arrow{width:18px;height:18px}.experiences-future>span:empty{display:none}.back-home{border-radius:3px}body:not(.coop-active) a:focus-visible,body:not(.coop-active) button:focus-visible,body:not(.coop-active) input:focus-visible{outline:2px solid #E93D99;outline-offset:5px}body:not(.coop-active) .cn-hero a:focus-visible{outline-color:#BED95A}
@media(max-width:1050px){body:not(.coop-active) nav{gap:15px;font-size:12px}.cn-hero .hero-grid{gap:6%;padding-top:45px}.cn-hero h1{font-size:85px}.cn-portrait img{height:450px}.cn-hero .intro{font-size:18px}.cn-newsletter{gap:6%}.newsletter-input-row{flex-direction:column;gap:5px}.newsletter-input-row button{align-self:flex-start;padding:13px 17px}.brand .cn-logo{width:150px}}
@media(max-width:700px){body:not(.coop-active)>header{height:91px;padding:0 6%;position:relative}.brand .cn-logo{width:148px;height:77px}body:not(.coop-active) nav{top:90px;left:0;right:0;padding:26px 6%;background:#F8EFE8;gap:23px;font-size:15px}.menu-toggle{font-size:12px;letter-spacing:.06em}.menu-toggle span{font-family:Arial,sans-serif;font-size:20px}.cn-hero>.hero-top{font-size:8px;padding:19px 6%;letter-spacing:.1em}.cn-hero .hero-grid{grid-template-columns:1fr;padding:34px 6% 30px;gap:32px}.cn-hero h1{font-size:clamp(69px,17vw,99px);line-height:1.04;letter-spacing:-.065em}.cn-hero h1 em:after{margin-top:16px;height:3px;width:55px}.cn-hero .cn-kicker{font-size:9px;margin-bottom:23px}.cn-hero .intro{font-size:18px;line-height:1.6;max-width:390px;margin:25px 0}.cn-hero-note{font-size:11px;margin-top:20px}.cn-hero-note br{display:none}.cn-portrait{max-width:none;justify-self:stretch}.cn-portrait img{height:360px;object-position:center 53%}.cn-portrait figcaption{font-size:7px;padding-top:13px;padding-bottom:13px}.cn-hero .home-topics{padding:23px 0 30px}.cn-hero .home-topics>div{grid-template-columns:1fr 1fr;gap:22px}.cn-hero .home-topics a{font-size:12px;padding-top:14px;gap:9px}.cn-hero .home-topics a small{font-size:8px}.cn-hero .home-topics a .site-arrow{width:15px}.cn-newsletter{grid-template-columns:1fr;gap:30px;padding:42px 6%}.cn-newsletter h2{font-size:35px;margin-bottom:20px}.cn-newsletter>div>p:last-child{font-size:15px}.newsletter-input-row{gap:12px}.newsletter-input-row input{font-size:18px}.newsletter-input-row button{width:100%;justify-content:space-between;margin-bottom:12px;font-size:13px;padding:15px 17px}.newsletter-form .newsletter-consent{font-size:11px;line-height:1.7}.newsletter-status{font-size:12px}.cn-news-page .cn-newsletter{padding:10px 0 20px}.cn-about-portrait{height:330px;margin-bottom:25px}body:not(.coop-active) .section{padding-top:36px;padding-bottom:45px}body:not(.coop-active) .perspective h2{font-size:39px}body:not(.coop-active) .contact h2{font-size:43px}body:not(.coop-active) .ecosystem h2{font-size:36px}body:not(.coop-active) .experiences .project-wordmark{font-size:34px}body:not(.coop-active) footer{padding:20px 6%;gap:20px}footer .cn-logo{width:138px;height:70px}body:not(.coop-active) footer>span{font-size:8px}.nav-contact .site-arrow{width:16px}}
@media(min-width:701px) and (max-width:900px){.menu-toggle{display:flex;background:none;border:0;gap:16px}body:not(.coop-active)>header{position:relative}body:not(.coop-active) nav{display:none;position:absolute;top:111px;left:0;right:0;z-index:5;background:#F8EFE8;padding:25px 6%;flex-wrap:wrap}body:not(.coop-active) nav.is-open{display:flex}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Comfortable word separation in the personal-brand headings. */
body:not(.coop-active) h1,body:not(.coop-active) h2,body:not(.coop-active) h3{letter-spacing:-.035em}.cn-hero h1{letter-spacing:-.05em}.cn-invitation{max-width:460px;font-size:16px;line-height:1.6;color:#F8EFE8;margin:0 0 26px}.cn-hero .intro{margin-bottom:19px}.cn-hero .hero-grid{padding-top:45px;padding-bottom:45px}.cn-hero-note{margin-top:22px}
@media(max-width:700px){.cn-invitation{font-size:15px;line-height:1.6;margin-bottom:25px}.cn-hero .hero-grid{padding-top:34px;padding-bottom:30px}.cn-hero .intro{margin-bottom:19px}.cn-hero h1{letter-spacing:-.045em}}

/* Creations show the work behind the perspective; one route joins services and contact. */
.creation-evidence{display:block;border-top:1px solid #27546b35;margin-top:21px;padding-top:19px;font-size:14px;line-height:1.7}.comunicalma .creation-evidence{border-color:#d6c4ff60;color:#d6c4ff}.project-top{gap:16px;align-items:flex-start}.project-top>span:last-child{font-size:8px;letter-spacing:.08em;flex-shrink:0}.creation-reflection{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid #27546b40;margin-top:50px;padding-top:38px}.creation-reflection h3{font-size:34px;line-height:1.15}.creation-reflection p:not(.cn-kicker){font-size:16px;line-height:1.7;margin-bottom:23px}.creation-reflection .cn-kicker{font-size:9px;margin-bottom:20px}.work-contact{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:38px;border-top:1px solid #f8efe850;padding-top:35px}.work-contact h3{font-size:30px;line-height:1.2}.work-contact p{font-size:15px;line-height:1.7;margin-top:19px;max-width:550px}.work-contact .button{flex-shrink:0}.cn-hero>.cn-newsletter{border-top:1px solid #f8efe850}.cn-hero .hero-grid{padding-bottom:55px}
@media(max-width:700px){.creation-reflection{grid-template-columns:1fr;gap:24px;margin-top:35px;padding-top:28px}.creation-reflection h3{font-size:30px}.creation-reflection p:not(.cn-kicker){font-size:15px}.work-contact{flex-direction:column;align-items:flex-start;gap:25px}.work-contact h3{font-size:27px}.work-contact .button{font-size:12px!important;gap:18px!important}.project-top{flex-wrap:wrap;row-gap:10px}.project-top>span:last-child{font-size:7px}.cn-hero .hero-grid{padding-bottom:35px}}
/* Experiencias Vivas: a shared space, before each experience develops its identity. */
body:not(.coop-active) .project.experiences{background:#422D3E;color:#FFF4E8;border:1px solid #422D3E;position:relative;overflow:hidden}.experiences .project-top{color:#E9C7CB}.ev-card-title{font-family:Souvenir,Georgia,serif;line-height:1.05;font-size:clamp(34px,3.5vw,53px);letter-spacing:-.05em;margin:35px 0 26px}.ev-card-title span,.ev-card-title em{display:block}.ev-card-title em{font-style:normal;color:#EDBFA3;margin-left:45px}.experiences .creation-evidence{border-color:#fff4e840;color:#E9C7CB}.experiences .project-link{color:#FFF4E8;border-color:#fff4e850}.experiences .project-link:hover{opacity:1;color:#EDBFA3}.ev-page{background:#F0E2DF;color:#422D3E;position:relative;overflow:hidden;min-height:80vh}.ev-page .back-home{color:#422D3E;border-color:#422d3e50}.ev-page-top{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.16em;border-bottom:1px solid #422d3e40;padding-bottom:20px;margin:32px 0 55px}.ev-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;margin-bottom:55px}.ev-eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:20px}.ev-page h1{font-family:Souvenir,Georgia,serif;font-weight:400;font-size:clamp(42px,5vw,72px);line-height:1.1;letter-spacing:-.055em}.ev-page h1 em{font-style:normal;color:#805268}.ev-intro-copy p{font-size:16px;line-height:1.7;margin-bottom:18px}.ev-intro-copy p:last-child{margin-bottom:0}.ev-options{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ev-option{background:#FFF4E8;border:1px solid #422d3e30;padding:32px;display:flex;flex-direction:column}.ev-option:nth-child(2){background:#E6D5CE}.ev-option-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:8px;letter-spacing:.1em;line-height:1.6;margin-bottom:48px;flex-wrap:wrap}.ev-status{border:1px solid #422d3e50;border-radius:30px;padding:5px 10px;white-space:nowrap;font-size:8px}.ev-option h2{font-family:Souvenir,Georgia,serif;font-size:clamp(34px,4vw,52px);font-weight:400;letter-spacing:-.045em;line-height:1.08;margin-bottom:24px}.ev-option p{font-size:15px;line-height:1.8;max-width:430px;margin-bottom:32px}.ev-progress{display:flex;align-items:center;gap:10px;border-top:1px solid #422d3e30;padding-top:20px;font-size:12px;margin-top:auto;color:#684A5C}.ev-progress>span{width:6px;height:6px;border:1px solid currentColor;border-radius:100%;flex-shrink:0}.ev-coming{display:flex;align-items:center;justify-content:space-between;gap:55px;background:#422D3E;color:#FFF4E8;padding:40px;margin-top:36px}.ev-coming h3{font-size:32px;line-height:1.15;margin-bottom:20px}.ev-coming p:not(.ev-eyebrow){font-size:14px;line-height:1.7;max-width:500px}.ev-coming .ev-eyebrow{color:#EDBFA3}.ev-coming .button{background:#EDBFA3;color:#422D3E;flex-shrink:0}.ev-coming .button:hover{background:#FFF4E8}.ev-active footer{background:#F0E2DF}.ev-active nav a[aria-current]{color:#805268}
@media(max-width:850px){.ev-intro{grid-template-columns:1fr;gap:28px}.ev-coming{flex-direction:column;align-items:flex-start;gap:28px}.ev-options{gap:18px}.ev-option{padding:26px}.ev-option-meta{gap:12px;margin-bottom:30px}}
@media(max-width:650px){.ev-card-title{font-size:43px;margin-top:30px}.ev-page-top{font-size:8px;gap:15px;margin:26px 0 35px;line-height:1.8}.ev-page-top span:last-child{text-align:right;max-width:115px}.ev-page h1{font-size:clamp(36px,9vw,50px)}.ev-intro{margin-bottom:32px}.ev-intro-copy p{font-size:15px}.ev-options{grid-template-columns:1fr}.ev-option{padding:25px}.ev-option h2{font-size:38px}.ev-option p{font-size:15px}.ev-coming{padding:28px 24px}.ev-coming h3{font-size:29px}.ev-coming .button{font-size:12px!important;gap:15px!important;max-width:100%}}
/* Contact channels with browser-independent email fallback. */
.email-options{margin-top:25px;border-top:1px solid #d6c4ff55}.email-options>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 0 5px;font:16px/1.5 Euclid,Arial,sans-serif;color:#D6C4FF;cursor:pointer;list-style:none}.email-options>summary::-webkit-details-marker{display:none}.email-options>summary>span{font-size:23px;line-height:1;transition:transform .15s}.email-options[open]>summary>span{transform:rotate(45deg)}.email-options-body{padding-top:15px}.email-options-body>p:first-child{font-size:14px!important;line-height:1.6;margin:0 0 15px!important;color:#f6f3e5cc}.email-options-body .email-gmail{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #d6c4ff88;border-radius:4px;padding:13px 15px;color:#D6C4FF;font-size:15px;line-height:1.5;text-decoration:none}.email-options-body .email-gmail:hover{background:#d6c4ff18}.email-default{display:inline-block;font-size:14px;color:#D6C4FF;text-underline-offset:4px;margin-top:17px}.email-copy-row{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding-top:20px;margin-top:20px;border-top:1px solid #d6c4ff40}.email-address{font:14px/1.6 Basis,Arial,sans-serif;color:#f6f3e5;user-select:all;overflow-wrap:anywhere}.email-copy-row button{font:13px/1.5 Basis,Arial,sans-serif;background:none;border:1px solid #d6c4ff70;padding:7px 12px;border-radius:4px;color:#D6C4FF;cursor:pointer}.email-copy-row button:hover{background:#d6c4ff18}.email-options-body .email-copy-status{font:12px/1.6 Basis,Arial,sans-serif;color:#D6C4FF;margin:10px 0 0!important;min-height:20px}.email-options summary:focus-visible,.email-options a:focus-visible,.email-options button:focus-visible{outline:2px solid #D6C4FF;outline-offset:4px}.whatsapp-float{position:fixed;right:24px;bottom:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;justify-content:center;gap:9px;background:#27546B;color:#F8EFE8;box-shadow:0 5px 20px #0002;border:1px solid #f8efe8aa;border-radius:40px;padding:12px 18px 12px 12px;text-decoration:none;font:13px/1.2 AlbertLocal,Arial,sans-serif;transition:transform .15s,background .15s}.whatsapp-float svg{display:block;width:29px;height:29px;flex-shrink:0}.whatsapp-float:hover{transform:translateY(-3px);background:#1d4052}.whatsapp-float:focus-visible{outline:3px solid #E93D99;outline-offset:4px}.coop-active .whatsapp-float{background:#2D371D;color:#D6C4FF;border-color:#D6C4FF}.ev-active .whatsapp-float{background:#422D3E;color:#FFF4E8;border-color:#EDBFA3}body>footer{padding-bottom:95px!important}@media(max-width:650px){.whatsapp-float{right:16px;bottom:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:10px;width:52px;height:52px}.whatsapp-float span{display:none}.whatsapp-float svg{width:29px;height:29px}.email-options>summary{font-size:15px}.email-options-body .email-gmail{font-size:14px}.email-copy-row{gap:12px}.email-address{font-size:13px}.email-copy-row button{font-size:12px}}
