:root{--color-primary:#300033;--color-accent:#f28924;--color-nav-link:#0f7840;--color-nav-link-hover:#0a5c30;--color-accent-hover:#d4771e;--color-bg:#fff;--color-text:#300033;--color-text-soft:#6b5c6e;--color-accent-text:#b35900;--color-surface:#fff;--color-section-alt:#f0ecf0;--color-services-bg:#f5941f;--color-refugio-bg:#fdf2f4;--color-highlight-bg:#f28924}body.high-contrast{--color-primary:#fff;--color-accent:#ff0;--color-nav-link:#ff0;--color-nav-link-hover:#fff;--color-accent-hover:#fff;--color-bg:#000;--color-text:#fff;--color-text-soft:#fff;--color-surface:#000;--color-section-alt:#000;--color-services-bg:#000;--color-refugio-bg:#000;--color-highlight-bg:#000;--color-accent-text:#ff0}body.high-contrast *,body.high-contrast :before,body.high-contrast :after{border-color:#fff}body.high-contrast .services__card,body.high-contrast .refugio-hero__card,body.high-contrast .convivencia__card,body.high-contrast .contact__form{border:2px solid #fff}body.high-contrast .navbar__links a:hover,body.high-contrast .navbar__links .inicio:hover{color:#000;background-color:#fff}body.high-contrast .services__card-link{color:#1a1a1a;background-color:#ff0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:Roboto,sans-serif;line-height:1.6}img{max-width:100%;display:block}section[id]{scroll-margin-top:100px}.header{z-index:100;background-color:var(--color-bg);position:sticky;top:0}.navbar{justify-content:space-between;align-items:center;margin:0 auto;padding:1rem 2rem;display:flex}.navbar__menu{flex-direction:row;align-items:center;display:flex}.navbar__links{list-style:none;display:flex}.navbar__links a{color:var(--color-nav-link);padding:10px;font-size:1.3rem;font-weight:500;text-decoration:none;transition:color .2s}.navbar__links .inicio{color:var(--color-accent-text)}.navbar__links a:hover{background-color:var(--color-section-alt);border-radius:30px}.navbar__links .inicio:hover{color:var(--color-accent-hover)}.navbar__logo{color:var(--color-accent);align-items:center;gap:.75rem;font-size:1.3rem;font-weight:700;text-decoration:none;display:flex}.navbar__logo img{width:auto;height:60px}.navbar__toggle{cursor:pointer;color:var(--color-primary);background:0 0;border:none;display:none}.navbar__logo{color:var(--color-accent-text)}.navbar__contrast-toggle{border:2px solid var(--color-primary);color:var(--color-primary);cursor:pointer;white-space:nowrap;background-color:#0000;border-radius:30px;margin-left:20px;padding:10px 16px;font-size:.9rem;font-weight:600;transition:background-color .2s,color .2s}.navbar__contrast-toggle:hover,.navbar__contrast-toggle[aria-pressed=true]{background-color:var(--color-primary);color:var(--color-bg)}.navbar__contrast-toggle:focus-visible{outline:3px solid var(--color-accent-text);outline-offset:3px}body.high-contrast .navbar__logo img{background-color:#fff;border-radius:20px;padding:4px}@media (width<=768px){.navbar__toggle{display:block}.navbar__menu{background-color:var(--color-bg);flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 2rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 6px #0000001a}.navbar__menu--open{display:flex}.navbar__links{flex-direction:column;gap:.5rem;width:100%}.navbar__links a{width:100%;display:block}.navbar__contrast-toggle{width:100%;margin-left:0}}.hero{text-align:center;background-image:url(/assets/hero-bg-BzzZqd4A.png);background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:480px;padding:80px 24px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f0a1499;position:absolute;inset:0}.hero__container{z-index:1;max-width:700px;position:relative}.hero__title{color:#fff;text-shadow:0 2px 6px #00000080;margin:0 0 16px;font-size:2.25rem;font-weight:700;line-height:1.3}.hero__subtitle{color:#f2eef5;text-shadow:0 1px 4px #00000080;margin:0 0 32px;font-size:1.1rem;line-height:1.6}.hero__cta{background:var(--color-accent);color:#1a1a1a;cursor:pointer;border:none;border-radius:8px;padding:14px 32px;font-size:1rem;font-weight:600;transition:background-color .2s}.hero__cta:hover{background:var(--color-accent-hover)}.hero__cta:focus-visible{outline-offset:3px;outline:3px solid #fff}@media (width<=768px){.hero{min-height:400px;padding:64px 20px}.hero__title{font-size:1.75rem}.hero__subtitle{font-size:1rem}}@media (width<=600px){.hero{min-height:360px;padding:48px 16px}.hero__title{font-size:1.5rem}}.about{padding:5rem 2rem}.about__container{align-items:center;gap:4rem;max-width:1200px;margin:0 auto;display:flex}.about__image{flex:1}.about__image img{object-fit:cover;border-radius:8px;width:100%}.about__content{flex:1}.about__title{color:var(--color-accent-text);border-top:3px solid var(--color-primary);margin-bottom:1.25rem;padding-top:.75rem;font-size:1.75rem;font-weight:700;display:inline-block}.about__text{color:var(--color-text-soft);margin-bottom:1rem;line-height:1.7}@media (width<=768px){.about{padding:3rem 1.5rem}.about__container{text-align:center;flex-direction:column;gap:2rem}.about__title{font-size:1.5rem}}.services{background-color:var(--color-services-bg);padding:5rem 2rem}.services__container{max-width:1200px;margin:0 auto}.services__header{text-align:center;margin-bottom:3rem}.services__title{color:var(--color-primary);margin-bottom:.75rem;font-size:2rem;font-weight:700}.services__subtitle{color:var(--color-primary);opacity:.8;max-width:500px;margin:0 auto;line-height:1.6}.services__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.services__card{background-color:var(--color-surface);border-radius:10px;flex-direction:column;gap:.75rem;padding:2rem;display:flex}.services__card-icon{font-size:1.75rem}.services__card-title{color:var(--color-primary);font-size:1.1rem;font-weight:700}.services__card-description{color:var(--color-text-soft);flex:1;font-size:.95rem;line-height:1.6}.services__card-link{background-color:var(--color-primary);color:var(--color-accent);cursor:pointer;text-align:center;border:none;border-radius:30px;margin-top:.5rem;padding:.6rem 1.2rem;font-family:inherit;font-size:.95rem;font-weight:700;text-decoration:none;transition:opacity .2s;display:inline-block}.services__card-link:hover{opacity:.85;text-decoration:none}.services__card-link:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:30px}@media (width<=992px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.services{padding:3rem 1.5rem}.services__grid{grid-template-columns:1fr}.services__title{font-size:1.5rem}}.contact{background-color:var(--color-section-alt);padding:5rem 2rem}.contact__container{justify-content:space-between;align-items:flex-start;gap:4rem;max-width:1200px;margin:0 auto;display:flex}.contact__title{color:var(--color-primary);margin-bottom:1rem;font-size:2.5rem;font-weight:700}.contact__subtitle{color:var(--color-text-soft);margin-bottom:2rem;line-height:1.7}.contact__details{flex-direction:column;gap:1.25rem;list-style:none;display:flex}.contact__detail{align-items:flex-start;gap:.75rem;display:flex}.contact__detail-icon{margin-top:.15rem;font-size:1.1rem}.contact__detail strong{color:var(--color-primary);margin-bottom:.15rem;font-size:1rem;font-weight:600;display:block}.contact__detail p{color:var(--color-text-soft);font-size:1rem}.contact__form{background-color:var(--color-surface);border-radius:12px;flex-direction:column;gap:1.25rem;min-width:40vw;padding:2.5rem;display:flex;box-shadow:0 4px 20px #30003314}.contact__field{flex-direction:column;gap:.4rem;display:flex}.contact__field label{letter-spacing:.08em;color:var(--color-text-soft);font-size:1rem;font-weight:600}.contact__field input,.contact__field textarea{color:var(--color-text);resize:none;background:0 0;border:none;border-bottom:1.5px solid #ccc;outline:none;padding:.5rem 0;font-family:inherit;font-size:.95rem;transition:border-color .2s}.contact__field input:focus,.contact__field textarea:focus{border-bottom-color:var(--color-primary)}.contact__button{background-color:var(--color-primary);color:var(--color-bg);cursor:pointer;border:none;border-radius:8px;margin-top:.5rem;padding:1rem;font-family:inherit;font-size:1rem;font-weight:600;transition:opacity .2s}.contact__button:hover{opacity:.85}@media (width<=900px){.contact__container{flex-direction:column;gap:2.5rem}.contact__form{min-width:100%}}@media (width<=600px){.contact{padding:3rem 1.5rem}.contact__title{font-size:1.75rem}.contact__form{padding:1.5rem}}.contact__required{color:var(--color-accent-text);margin-left:2px;font-weight:700}.contact__form-note{color:var(--color-text-soft);margin-bottom:.5rem;font-size:.85rem}.whatsapp-btn{z-index:999;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:2rem;right:2rem}.whatsapp-btn img{object-fit:contain;width:100%;height:100%}.whatsapp-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px #00000040}@media (width<=600px){.whatsapp-btn{width:50px;height:50px;bottom:1.25rem;right:1.25rem}}.footer{background-color:var(--color-surface);border-top:1px solid #eee;padding:4rem 2rem 0}.footer__container{grid-template-columns:2fr 1fr 1.2fr;gap:3rem;margin:0 auto;padding-bottom:3rem;display:grid}.footer__brand{color:var(--color-primary);margin-bottom:.75rem;font-size:1.3rem;font-weight:700}.footer__description{color:var(--color-text-soft);margin-bottom:1.25rem;font-size:1rem;line-height:1.6}.footer__socials{gap:.75rem;display:flex}.footer__socials a{color:var(--color-primary);border:1px solid #ddd;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s,color .2s;display:flex}.footer__socials a:hover{background-color:var(--color-primary);color:#fff}.footer__col-title{letter-spacing:.08em;color:var(--color-primary);margin-bottom:1.25rem;font-size:.9rem;font-weight:700}.footer__links{flex-direction:column;gap:.75rem;list-style:none;display:flex}.footer__links a{color:var(--color-text-soft);font-size:.95rem;text-decoration:none;transition:color .2s}.footer__links a:hover{color:var(--color-primary)}.footer__contact{flex-direction:column;gap:.85rem;list-style:none;display:flex}.footer__contact li{color:var(--color-text-soft);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.footer__contact svg{color:var(--color-primary);flex-shrink:0}.footer__bottom{color:var(--color-text-soft);border-top:1px solid #eee;justify-content:space-between;align-items:center;margin:0 auto;padding:1.5rem 0;font-size:.85rem;display:flex}.footer__legal{gap:1.5rem;display:flex}.footer__legal a{color:var(--color-text-soft);letter-spacing:.05em;font-weight:600;text-decoration:none;transition:color .2s}.footer__legal a:hover{color:var(--color-primary)}@media (width<=900px){.footer__container{text-align:center;grid-template-columns:1fr;gap:2.5rem}}@media (width<=600px){.footer{padding:3rem 1.5rem 0}.footer__container{text-align:center;grid-template-columns:1fr;gap:2rem}.footer__contact li{justify-content:center}.footer__bottom{text-align:center;flex-direction:column;gap:.75rem}}.footer__socials{justify-content:center;gap:.75rem;display:flex}.refugio-hero{background-color:var(--color-refugio-bg);padding:5rem 2rem}.refugio-hero__container{align-items:center;gap:3rem;max-width:1200px;margin:0 auto;display:flex}.refugio-hero__card{background-color:var(--color-surface);border-radius:16px;flex:1;padding:2.5rem}.refugio-hero__icon-title{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.refugio-hero__title{color:var(--color-primary);font-size:1.75rem;font-weight:700}.refugio-hero__text{color:var(--color-text-soft);margin-bottom:1rem;line-height:1.7}.refugio-hero__checklist{flex-direction:column;gap:.85rem;margin-top:1.5rem;list-style:none;display:flex}.refugio-hero__checklist-item{color:var(--color-text);align-items:flex-start;gap:.6rem;font-size:.95rem;display:flex}.refugio-hero__image{flex:1}.refugio-hero__image img{object-fit:cover;border-radius:16px;width:100%}@media (width<=768px){.refugio-hero{padding:3rem 1.5rem}.refugio-hero__container{flex-direction:column;gap:2rem}.refugio-hero__card{padding:1.75rem}}.convivencia{background-color:var(--color-highlight-bg);padding:5rem 2rem}.convivencia__container{max-width:1200px;margin:0 auto}.convivencia__title{text-align:center;color:var(--color-primary);margin-bottom:3rem;font-size:1.85rem;font-weight:700}.convivencia__content{align-items:stretch;gap:2.5rem;display:flex}.convivencia__image{flex:1}.convivencia__image img{object-fit:cover;border-radius:16px;width:100%;height:100%}.convivencia__grid{flex:1.3;grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.convivencia__card{background-color:var(--color-surface);border-radius:12px;flex-direction:column;gap:.6rem;padding:1.75rem;display:flex}.convivencia__card-title{color:var(--color-primary);font-size:1.05rem;font-weight:700}.convivencia__card-description{color:var(--color-text-soft);font-size:.9rem;line-height:1.6}@media (width<=900px){.convivencia__content{flex-direction:column}}@media (width<=600px){.convivencia{padding:3rem 1.5rem}.convivencia__grid{grid-template-columns:1fr}.convivencia__title{font-size:1.4rem}}.acompanamiento{padding:5rem 2rem}.acompanamiento__container{align-items:flex-start;gap:3.5rem;max-width:1200px;margin:0 auto;display:flex}.acompanamiento__content{flex:1.2}.acompanamiento__title{color:var(--color-primary);margin-bottom:.75rem;font-size:1.75rem;font-weight:700}.acompanamiento__subtitle{color:var(--color-text-soft);margin-bottom:2rem;line-height:1.7}.acompanamiento__list{flex-direction:column;gap:1.5rem;display:flex}.acompanamiento__item{border-bottom:1px solid #eee;gap:1rem;padding-bottom:1.25rem;display:flex}.acompanamiento__item:last-child{border-bottom:none;padding-bottom:0}.acompanamiento__item-title{color:var(--color-primary);margin-bottom:.35rem;font-size:1.05rem;font-weight:700}.acompanamiento__item-description{color:var(--color-text-soft);font-size:.92rem;line-height:1.65}@media (width<=900px){.acompanamiento__container{flex-direction:column}}@media (width<=600px){.acompanamiento{padding:3rem 1.5rem}.acompanamiento__title{font-size:1.4rem}}.acompanamiento__image{flex-direction:column;flex:1;gap:1rem;display:flex}.acompanamiento__image img{border-radius:16px;width:100%;display:block}
