:root{--primary-color: #4a90e2;--secondary-color: #2c3e50;--accent-color: #e74c3c;--background-color: #ffffff;--text-color: #2c3e50;--light-gray: #ecf0f1;--light-orange: #fc9536}*{margin:0;padding:0;box-sizing:border-box}main{margin-top:80px;min-height:calc(100vh - 280px)}body{font-family:Inter,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--background-color)}.header{background-color:#fff;box-shadow:0 2px 4px #0000001a;padding:1rem 2rem;position:fixed;top:0;width:100%;z-index:1000;transition:all .3s ease-in-out}.header__container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.header__logo{font-size:1.5rem;font-weight:600;color:#07c;text-decoration:none}.header__nav{display:flex;gap:1.5rem;align-items:center;transition:transform .3s ease,opacity .3s ease}.header__menu{display:flex;justify-content:flex-end;gap:1.5rem;list-style:none;width:360px}.header__link{text-decoration:none;color:#333;font-weight:400;transition:color .3s ease}.header__link:hover{color:#07c}.header__toggle{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#07c}@media screen and (max-width: 768px){.header__toggle{display:block;z-index:1}.header__nav{position:fixed;top:0;right:0;height:100%;width:70%;background-color:#fff;box-shadow:-4px 0 6px #0000001a;flex-direction:column;justify-content:center;align-items:center;transform:translate(100%);opacity:0;transition:transform .3s ease,opacity .3s ease}.header__nav.header__nav--visible{transform:translate(0);opacity:1}.header__menu{flex-direction:column;gap:1.5rem;padding-left:50px}}@media screen and (max-width: 450px){.header__menu{padding-left:100px}}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.5rem;color:var(--secondary-color);margin-bottom:1rem}.section-header p{color:#666;font-size:1.1rem}.hero-new{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;padding:6rem 1rem;position:relative;overflow:hidden}.hero-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:4rem}.hero-text{max-width:600px}.hero-text h1{font-size:4rem;line-height:1.2;margin-bottom:1.5rem;font-weight:800}.hero-text p{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.hero-buttons{display:flex;gap:1rem}.cta-button{display:inline-block;padding:1rem 2rem;background-color:#fff;color:var(--primary-color);text-decoration:none;border-radius:50px;font-weight:600;transition:all .3s;text-align:center}.cta-secondary{background-color:transparent;color:#fff;border:2px solid white}.cta-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.hero-stats{display:flex;gap:3rem;justify-content:flex-start}.stat-item{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.stat-label{font-size:1rem;opacity:.9}@media (max-width: 768px){.hero-content{gap:2rem}.hero-text h1{font-size:3rem}.hero-text p{font-size:1rem}.hero-stats{flex-direction:column;gap:2rem}}@media (max-width: 370px){.hero-text h1{font-size:2.5rem}}.latest-animals{padding:4rem 2rem;background-color:#fff}.latest-animals.gray-background{background-color:#f0f0f0;border-radius:150px}.latest-animals__header{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;margin-bottom:3rem}.latest-animals__title{display:flex;flex-direction:column}.latest-animals__category{font-size:18px;color:#4a90e2;font-weight:700;margin-right:10px}.latest-animals__view-all{font-size:16px;background-color:#4a90e2;text-decoration:none;font-weight:700;display:flex;align-items:center;padding:.6rem 1.2rem;border-radius:15px;transition:background-color .3s ease;color:#fff}.latest-animals__view-all:hover{background-color:#357abd}.latest-animals__view-all .arrow{margin-left:5px;font-size:18px}.latest-animals__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:1200px;margin:0 auto}.latest-animals__card{background-color:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .3s ease}.latest-animals__image{width:100%;height:200px;-o-object-fit:cover;object-fit:cover}.latest-animals__info{padding:1rem}.latest-animals__name{font-size:1.6rem;font-weight:600;margin-bottom:.5rem}.latest-animals__age,.latest-animals__breed{font-size:1rem;margin-bottom:.5rem}.latest-animals__cta{font-size:1rem;text-decoration:none;color:#fff;background-color:#4a90e2;padding:.2rem 1.2rem;border-radius:5px;display:inline-block;transition:background-color .3s ease;margin-top:20px}.latest-animals__cta:hover{background-color:#357abd}@media (max-width: 1400px){.latest-animals.gray-background{border-radius:50px}}@media (max-width: 1024px){.latest-animals__grid{grid-template-columns:repeat(2,1fr)}.newsletter .dog-pointing-gif{display:none}}@media (max-width: 600px){.latest-animals__header{flex-direction:column;align-items:flex-start;gap:40px}.latest-animals.gray-background{border-radius:20px}.latest-animals__grid{grid-template-columns:1fr}.latest-animals__title{font-size:2rem}.latest-animals__image{height:350px}}.adoption-process{background-color:#fff;padding:6rem 1rem}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.step{text-align:center;padding:2rem}.step-number{width:50px;height:50px;background-color:var(--primary-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1rem}.step h3{margin-bottom:1rem;color:var(--secondary-color)}.success-stories{padding:6rem 1rem}.stories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.story-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.story-card img{width:100%;height:200px;-o-object-fit:cover;object-fit:cover}.story-content{padding:1.5rem}.pets-header{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;padding:4rem 1rem;text-align:center}.pets-header-content{max-width:900px;margin:0 auto}.pets-header h1{font-size:3rem;margin-bottom:1rem;font-weight:800}.pets-header p{font-size:1.2rem;opacity:.9}.pets-container{gap:2rem;max-width:1400px;margin:2rem auto;padding:0 1rem}.pets-sidebar{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;height:-moz-fit-content;height:fit-content;position:sticky;top:100px}.search-box{margin-bottom:1.5rem}.search-box input{width:100%;padding:.8rem 1rem;border:2px solid var(--light-gray);border-radius:25px;font-size:1rem;transition:border-color .3s}.search-box input:focus{outline:none;border-color:var(--primary-color)}.filter-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--light-gray)}.filter-section:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.filter-section h3{font-size:1.1rem;color:var(--secondary-color);margin-bottom:1rem}.filter-options{display:flex;flex-direction:column;gap:.8rem}.filter-options select{padding:.5rem 1rem;border:2px solid var(--primary-color);border-radius:5px;font-size:1rem;transition:border-color .3s}.filter-options select:focus{outline:none;border-color:var(--primary-color)}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.8rem 1rem;background-color:var(--light-gray);border:none;border-radius:25px;cursor:pointer;transition:all .3s;width:100%;font-size:1rem;color:var(--text-color)}.filter-btn.active{background-color:var(--primary-color);color:#fff}.filter-icon{font-size:1.2rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:5px;transition:background-color .3s}.checkbox-label:hover{background-color:var(--light-gray)}.checkbox-label input[type=checkbox]{width:18px;height:18px;border:2px solid var(--primary-color);border-radius:4px;cursor:pointer}.pets-main{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.pet-card .no-pets-img{transform:scaleX(-1)}@media (max-width: 768px){.pet-card .no-pets-img{-o-object-fit:contain;object-fit:contain}}.pet-card{border:1px solid var(--light-gray);border-radius:10px;overflow:hidden;transition:transform .3s,box-shadow .3s;position:relative}.pet-card .animal-status{position:absolute;top:0;right:0;background-color:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:0 8px;font-size:.9rem}.pet-card .animal-status.no-disponible{background-color:var(--accent-color)}.pet-card .animal-status.adoptado{background-color:var(--light-orange)}.pet-card:hover{box-shadow:0 5px 15px #0000001a}.pet-card img{width:100%;height:300px;-o-object-fit:cover;object-fit:cover}.pet-card .cta-button{width:60%;text-align:center;margin-top:auto;background-color:var(--primary-color);color:#fff;font-size:small;padding:.5rem}.pet-card .cta-button:hover{transform:none}.pet-info{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.pet-info h3{font-size:1.3rem;margin-bottom:.5rem;color:var(--secondary-color)}.pet-description{color:#666;margin:.8rem 0;line-height:1.5}@media (max-width: 1024px){.pets-container{grid-template-columns:1fr}.pets-sidebar{position:static;margin-bottom:1rem}}@media (max-width: 768px){.hero-text h1{font-size:2.5rem}.hero-stats{flex-direction:column;gap:2rem}.hero-buttons{flex-direction:column}nav{flex-direction:column;gap:1rem}nav ul{gap:1rem}.process-steps{grid-template-columns:1fr}.pets-header h1{font-size:2rem}.pets-grid{grid-template-columns:1fr}}.card{max-width:800px;margin:6rem auto;padding:1.5rem;background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow:hidden;border:1px solid var(--primary-color)}.card__header{text-align:center;margin-bottom:1.5rem}.card__title{font-size:2rem;color:#333}.card__name{color:var(--primary-color)}.card__subtitle{font-size:1rem;color:#666}.card__shelter{text-align:center;margin-bottom:1.5rem}.card__shelter-name{font-size:1.2rem;font-weight:700;color:var(--primary-color)}.card__shelter-location{font-size:.9rem;color:#555;margin-bottom:1rem}.card__cta{padding:.5rem 1rem;font-size:1rem;color:#fff;background-color:var(--primary-color);border:none;border-radius:4px;cursor:pointer;text-decoration:none}.card__cta:hover{background-color:#357abd}.card__gallery{margin-bottom:1.5rem}.card__gallery-main{text-align:center;margin-bottom:1rem;position:relative}.card__gallery-main .animal-status{position:absolute;top:0;right:0;background-color:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:0 8px;font-size:.9rem}.card__gallery-main .animal-status.no-disponible{background-color:var(--accent-color)}.card__gallery-main .animal-status.adoptado{background-color:var(--light-orange)}.card__gallery-image{width:100%;height:auto;border-radius:8px;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease-in-out;max-height:800px}.card__gallery-image--main{max-width:100%}.card__gallery-thumbnails{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.card__gallery-thumbnail{width:80px;height:80px;-o-object-fit:cover;object-fit:cover;border-radius:8px;cursor:pointer;transition:transform .3s ease-in-out}.card__gallery-thumbnail:hover{transform:scale(1.1)}.card__details{padding:1rem;background-color:#f1f1f1;border-radius:8px}.card__details-title{font-size:1.5rem;margin-bottom:.5rem;color:#333}.card__details-list{list-style:none;padding:0;margin:0}.card__details-item{margin-bottom:.5rem;font-size:.95rem;color:#555}.card__details-item strong{color:#333}@media (max-width: 768px){.card{max-width:95%}}.contact-wrapper{text-align:center}.contact-form{max-width:600px;margin:7rem auto;padding:2rem;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;text-align:center}.contact-form__title{font-size:1.8rem;font-weight:600;color:#333;margin-bottom:1rem}.contact-form__description{font-size:1rem;color:#666;margin-bottom:2rem}.contact-form__form{display:flex;flex-direction:column;gap:1.5rem}.contact-form__group{display:flex;flex-direction:column;text-align:left}.contact-form__label{font-size:.9rem;font-weight:500;color:#555;margin-bottom:.5rem}.contact-form__input,.contact-form__textarea{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:5px;font-size:1rem;transition:border-color .3s,box-shadow .3s}.contact-form__input:focus,.contact-form__textarea:focus{border-color:var(--primary-color);box-shadow:0 0 4px #007bff80;outline:none}.contact-form__textarea{resize:none}.contact-form__button{padding:.8rem 1.5rem;background-color:var(--primary-color);color:#fff;font-size:1rem;font-weight:600;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s,transform .2s,box-shadow .3s}.contact-form__button:hover{background-color:#357abd;transform:translateY(-2px);box-shadow:0 6px 8px #007bff4d}.contact-form__button:focus{outline:none;box-shadow:0 0 4px #007bff80}.notification{padding:16px;margin:16px 0;border-radius:8px;font-family:Arial,sans-serif;font-size:16px;line-height:1.5;color:#fff;display:flex;align-items:center;box-shadow:0 4px 6px #0000001a}.notification--success{background-color:#4caf50;border:1px solid #388e3c}.notification--error{background-color:#f44336;border:1px solid #d32f2f}.notification__text{margin:0}.notification--hide{opacity:0;transform:translateY(-20px);pointer-events:none}@media (max-width: 768px){.contact-form{max-width:90%}}.pagination{display:flex;justify-content:center;gap:.5rem;margin-top:50px;margin-bottom:100px}.pagination__link{padding:.2rem .8rem;border-radius:25px;border:1px solid #ccc;text-decoration:none;color:#000}.pagination__link--active{background-color:var(--primary-color);color:#fff}@media (max-width: 768px){.pagination{margin-top:20px;margin-bottom:50px}.pagination__link,.pagination__link--active{padding:.3rem .8rem}}@media (max-width: 480px){.pagination{margin-top:10px;margin-bottom:30px}.pagination__link{padding:.2rem .6rem;font-size:.7rem}.pagination__link--active{padding:.2rem .6rem}}.not-found__wrapper{height:100vh;width:100%;display:flex;justify-content:center;align-items:center}.page-not-found__container{max-width:400px;width:-moz-fit-content;width:fit-content;padding:20px;box-shadow:0 4px 10px #0000001a;border-radius:10px;background-color:#fff;animation:fadeIn 1s ease-out;text-align:center}.page-not-found__image img{max-width:100%;height:auto;border-radius:10px;margin-bottom:20px}.page-not-found__title{font-size:5rem;font-weight:700;color:var(--primary-color);margin:0}.page-not-found__message{font-size:1.25rem;margin:15px 0;color:#666}.page-not-found__button{display:inline-block;padding:12px 24px;font-size:1rem;font-weight:700;color:#fff;background-color:var(--primary-color);border:none;border-radius:5px;text-decoration:none;transition:transform .2s ease,background-color .3s ease;box-shadow:0 4px 6px #0000001a}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.page-not-found__title{font-size:4rem}.page-not-found__message{font-size:1rem}.page-not-found__button{font-size:.9rem}}.footer{background-color:#f8f9fa;padding:40px 20px;font-family:Arial,sans-serif}.footer__container{display:flex;justify-content:space-between;max-width:1200px;margin:0 auto}.footer__section{flex:1;min-width:180px;margin:10px}.footer__title{font-size:18px;font-weight:700;margin-bottom:10px;color:#333;width:-moz-fit-content;width:fit-content}.footer__list{list-style:none;padding:0}.footer__item{margin-bottom:5px;position:relative;width:-moz-fit-content;width:fit-content}.footer__item:before{content:"";position:absolute;left:50%;bottom:-2px;width:0;height:2px;transform:translate(-50%);background-color:var(--primary-color);transition:width .5s}.footer__item:hover:before{width:100%}.footer__link{text-decoration:none;color:var(--primary-color);font-size:14px}.footer__link:hover{color:#357abd}.footer__section--legal{text-align:center;margin-top:20px}@media (max-width: 768px){.footer__container{flex-direction:column;align-items:center}.footer__section{text-align:center}}.legal-text{width:800px;margin:8rem auto;font-size:1rem}.legal-text h2{margin-bottom:20px}.legal-text h3{margin-bottom:10px}.legal-text p{margin-bottom:30px}@media (max-width: 768px){.legal-text{width:100%;padding:0 20px}}.alert-wrapper{max-width:250px;margin:0 auto}.alert{padding:16px;margin:16px 0;border-radius:8px;font-family:Arial,sans-serif;font-size:16px;line-height:1.5;color:#000;display:flex;align-items:center;box-shadow:0 4px 6px #0000001a}.alert.alert-success{border-left:5px solid #388e3c}.alert.alert-error{border-left:5px solid #d32f2f}
