* {margin:0%;padding:0%;box-sizing:border-box;}
body {font-family:"Montserrat", sans-serif;}
.header {position:fixed;top:0;left:0;right:0;background-color:#124675;color:white;z-index:1000;}
.desktop-header {display:none;}
.header-container {display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;max-width:1200px;margin:0 auto;}
.logo-section {flex:0 0 auto;margin-right:2rem;}
.logo {height:100%;width:150px;}
@media (max-width:1287px) {.logo {height:100%;width:150px;}}
.nav-section {flex:1;display:flex;justify-content:center;}
.nav-menu {display:flex;list-style:none;gap:2rem;margin:0;padding:0;}
.nav-menu a {color:white;text-decoration:none;font-weight:500;font-size:0.9rem;transition:color 0.3s ease;white-space:nowrap;}
.nav-menu a:hover {color:#bee3f8;}
.user-section {display:flex;align-items:center;flex:0 0 auto;margin-left:2rem;width:42px;height:40px;}
.user-btn {background:none;border:none;color:white;cursor:pointer;padding:0.5rem;border-radius:0.375rem;transition:background-color 0.3s ease;}
.user-btn:hover {background-color:rgba(255, 255, 255, 0.1);}
.search-btn {background-color:#1a365d;color:white;border:none;padding:0.75rem 2rem;border-radius:0.5rem;cursor:pointer;font-weight:500;transition:background-color 0.3s ease;}
.search-btn:hover {background-color:#153a52;}
.mobile-header {display:block;height:117px;min-height:10dvh;}
.mobile-container {display:flex;align-items:center;justify-content:space-between;padding:1rem;}
.mobile-menu-btn {background:none;border:none;cursor:pointer;padding:0.5rem;display:flex;flex-direction:column;gap:0.25rem;}
.hamburger-line {width:24px;height:3px;background-color:white;transition:all 0.3s ease;}
.mobile-logo {flex:1;display:flex;justify-content:center;width:50%;height:20%;}
.mobile-search {padding:0 1rem 1rem;}
.mobile-search .search-wrapper {max-width:none;}
.mobile-menu-overlay {position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.5);opacity:0;visibility:hidden;transition:all 0.3s ease;}
.mobile-menu {position:fixed;top:0;left:-300px;width:300px;height:100vh;background-color:#124675;transition:left 0.3s ease;z-index:1001;}
.mobile-nav-list {list-style:none;padding:2rem 0;}
.mobile-nav-list li {margin:0;}
.mobile-nav-list a {display:block;color:white;text-decoration:none;padding:1rem 2rem;font-weight:500;transition:background-color 0.3s ease;}
.mobile-nav-list a:hover {background-color:rgba(255, 255, 255, 0.1);}
.mobile-menu.active {left:0;}
.mobile-menu-overlay.active {opacity:1;visibility:visible;}
.main-content {margin-top:70px;}
.container {max-width:1200px;margin:0 auto;padding:0 1rem;}
.hero {text-align:center;padding:4rem 0;background-color:#f7fafc;}
.hero h1 {font-size:3rem;margin-bottom:1rem;color:#2d3748;}
.hero p {font-size:1.25rem;color:#4a5568;}
.products {padding:4rem 0;}
.products h2 {text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2d3748;}
.products-grid {display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem;margin-bottom:4rem;}
.product-card {background:white;border-radius:0.5rem;padding:1.5rem;box-shadow:0 4px 6px rgba(0, 0, 0, 0.1);transition:transform 0.3s ease;}
.product-card:hover {transform:translateY(-5px);}
.product-image {height:200px;background-color:#e2e8f0;border-radius:0.5rem;margin-bottom:1rem;}
.product-card h3 {font-size:1.25rem;margin-bottom:0.5rem;color:#2d3748;}
.product-card p {color:#4a5568;}
.about {padding:4rem 0;background-color:#f7fafc;}
.about h2 {font-size:2.5rem;margin-bottom:2rem;color:#2d3748;}
.about p {font-size:1.1rem;margin-bottom:1.5rem;color:#4a5568;line-height:1.8;}
@media (min-width:899px) {
.desktop-header {display:block;}
.mobile-header {display:none;}
.main-content {margin-top:70px;}
.hero h1 {font-size:4rem;}
}
@media (max-width:1023px) {
.nav-menu {gap:1rem;}
.nav-menu a {font-size:0.8rem;}
}
@media (max-width:768px) {
.hero h1 {font-size:2rem;}
.hero p {font-size:1rem;}
.products h2,.about h2 {font-size:2rem;}
.products-grid {grid-template-columns:1fr;}
}

.placeholder {height:0px;transition:height 0.3s ease;}
.placeholder.active {height:60px;}
footer {bottom:0;width:100%;background-color:#124675;color:#fff;display:flex;justify-content:space-between;flex-direction:row;padding:20px;box-shadow:0 -2px 5px rgba(0, 0, 0, 0.2);}
footer h1 {font-size:18px;font-weight:700;}
.footer-left,.footer-right,.footer-center {display:flex;align-items:center;justify-content:center;flex-direction:column;width:48%;background-color:rgba(127, 255, 212, 0);}
.footer-left img {width:100px;margin-bottom:10px;}
.footer-left p {margin:2px 0;font-size:14px;text-align:center;}
.footer-left a {margin:2px 0;font-size:14px;text-align:center;color:#fff;font-weight:400;text-decoration:none;transition:all .25s ease;}
.footer-right {display:flex;flex-wrap:wrap;justify-content:center;height:230px;font-size:12px;background-color:rgba(55, 16, 212, 0);flex-direction:column;font-size:14px;line-height:1.5;}
.footer-right a {margin:2px 0;font-size:14px;text-align:center;color:#fff;font-weight:400;text-decoration:none;transition:all .25s ease;}
.footer-center {display:flex;flex-wrap:wrap;justify-content:center;height:230px;font-size:12px;background-color:rgba(55, 16, 212, 0);flex-direction:column;font-size:14px;line-height:1.5;}
.footer-center a {margin:2px 0;font-size:14px;text-align:center;color:#fff;font-weight:400;text-decoration:none;transition:all .25s ease;}
.descubre {display:flex;flex-direction:column;flex-wrap:wrap;list-style:none;justify-content:space-between;background-color:rgba(128, 0, 128, 0);margin-top:2%;text-align:center;padding-left:0%;}
.descubre li {padding:10px;}
.footer-center a {text-decoration:none;color:#fff;}
.redes-sociales {display:flex;width:100%;background-color:#c2e9fc00;justify-content:center;align-items:center;gap:10px;padding:10px 0;flex-wrap:wrap;}
.iconos-link {display:flex;justify-content:center;align-items:center;background-color:#36427600;width:40px;height:40px;margin:3%;}
.iconos-redes {display:flex;justify-content:center;align-items:center;background-color:#36427600;width:40px;height:40px;margin:3%;}
.acomodo-iconos {width:100%;height:100%;object-fit:cover;}
@media (max-width:600px) {
.iconos-link {width:30px;height:30px;}
.iconos-redes {width:30px;height:30px;}
}
.politicas {display:flex;flex-direction:column;flex-wrap:wrap;list-style:none;justify-content:space-between;background-color:rgba(128, 0, 128, 0);margin-top:2%;text-align:center;padding-left:0%;}
.politicas li {padding:10px;}
.footer-right a {text-decoration:none;color:#fff;}
.breadcrumb {list-style:none;display:flex;flex-wrap:wrap;font-size:14px;padding:10px 16px;background-color:#f5f5f5;border-radius:4px;margin-top: 40px;}
.breadcrumb li {display:flex;align-items:center;}
.breadcrumb li + li::before {content:"›";padding:0 8px;color:#666;}
.breadcrumb a {text-decoration:none;color:#0056b3;transition:color 0.2s;}
.breadcrumb a:hover {color:#0056b3;}
.breadcrumb .active {color:#393939;pointer-events:none;text-decoration:none;}
.blank-page {height:100VH;}
@media (max-width:768px) {
	main {padding:20px;}
	.spacer {height:100px;}
	footer {bottom:0;width:100%;background-color:#124675;color:#fff;display:flex;justify-content:space-between;flex-direction:column;align-items:center;padding:20px;box-shadow:0 -2px 5px rgba(0, 0, 0, 0.2);}
	.footer-left p {font-size:12px;}
	.footer-right {display:flex;justify-content:center;flex-direction:column;height:230px;font-size:12px;background-color:rgba(1, 247, 247, 0);margin-top:6%;}
	.footer-left,.footer-right {width:100%;}
}

#search-btn {padding:0 20px;background:#0c3b6e;color:white;border:none;font-size:16px;cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center;}
.search-container .dropdown-results {position:absolute;top:100%;left:0;right:0;width:80%;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #ddd;border-top:none;z-index:999;display:none;border-radius:0 0 8px 8px;box-shadow:0 10px 30px rgba(0, 0, 0, 0.08);}
.search-container .dropdown-results .item-link {display:flex;align-items:center;padding:12px 16px;text-decoration:none;color:inherit;border-bottom:1px solid #f0f0f0;transition:background 0.2s ease;}
.search-container .dropdown-results .item-link:hover {background-color:#f9f9f9;}
.search-container .dropdown-results img {width:50px;height:50px;object-fit:contain;margin-right:12px;}
.search-container .dropdown-results .info {display:flex;flex-direction:column;gap:4px;}
.search-container .dropdown-results .info strong {font-size:15px;color:#333;}
.search-container .dropdown-results .info span {font-size:14px;color:#777;}
.search-container .dropdown-results::after {content:attr(data-footer);display:block;padding:12px 16px;color:#0c3b6e;font-weight:500;cursor:pointer;border-top:1px solid #eee;background:#fafafa;}
.alert {padding:15px 20px;margin:20px 0;border-radius:6px;font-size:16px;font-weight:500;display:flex;align-items:center;gap:10px;}
.alert.alert-success {background-color:#d4edda;border:1px solid #c3e6cb;color:#155724;}
.alert.alert-error {background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;}
.alert.alert-success::before {content:"✅";font-size:20px;}
.alert.alert-error::before {content:"❌";font-size:20px;}

.search-container {position:relative;background-color:#124675;padding:0.5rem 1rem;width:100%;display:flex;justify-content:center;margin-top:80px;}
.search-wrapper {display:flex;width:100%;max-width:600px;}
.search-input {flex:1;padding:0.75rem 1rem;border:none;border-radius:0.5rem;font-size:1rem;outline:none;width:480px;}
.search-btn {padding:0.75rem 1.5rem;background:#0e3a66;color:white;border:none;border-radius:0.5rem;font-size:1rem;cursor:pointer;}
.search-btn:hover {background:#092c4d;}
.dropdown-results {position:absolute;top:100%;left:0;right:0;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #ddd;border-top:none;z-index:999;display:none;border-radius:0 0 8px 8px;box-shadow:0 10px 30px rgba(0, 0, 0, 0.08);}
@media (max-width:768px) {
.search-wrapper {flex-direction:column;}
.search-input {border-radius:0.5rem;margin-bottom:0.5rem;}
.search-btn {border-radius:0.5rem;width:100%;}
.search-container .dropdown-results {position:absolute;top:50%;width:100%;}
}
.dropdown-results .search-footer {padding:8px;font-weight:bold;color:#007bff;cursor:pointer;border-top:1px solid #ddd;}
h1 {font-weight:600;}
h2 {font-weight:700;}

.popup-overlay {position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.8);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all 0.3s ease;padding:1rem;}
.popup-overlay.active {opacity:1;visibility:visible;}
.popup-content {background:white;border-radius:1rem;padding:2rem;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;transform:scale(0.8);transition:transform 0.3s ease;}
.popup-overlay.active .popup-content {transform:scale(1);}
.close-btn {position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#666;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all 0.2s ease;}
.close-btn:hover {background:#f3f4f6;color:#333;}
.popup-header {text-align:center;margin-bottom:2rem;}
.popup-header h2 {font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:0.5rem;}
.popup-header p {color:#666;font-size:1rem;}
.images-container {display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:1.5rem;}
.image-option {text-decoration:none;color:inherit;display:block;transition:transform 0.3s ease;}
.image-option:hover {transform:translateY(-5px);}
.image-wrapper {position:relative;border-radius:0.75rem;overflow:hidden;box-shadow:0 10px 25px rgba(0, 0, 0, 0.1);transition:box-shadow 0.3s ease;}
.image-wrapper:hover {box-shadow:0 20px 40px rgba(0, 0, 0, 0.15);}
.image-wrapper img {width:100%;height:250px;object-fit:cover;display:block;}
.image-overlay {position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(40, 72, 116, 1) 1%, rgba(40, 72, 116, 0.62) 51%, rgba(40, 72, 116, 0) 100%);color:white;padding:2rem 1.5rem 1.5rem;transform:translateY(100%);transition:transform 0.3s ease;}
.image-wrapper:hover .image-overlay {transform:translateY(0);}
.image-overlay h3 {font-size:1.25rem;font-weight:600;margin-bottom:0.5rem;}
.image-overlay p {font-size:0.9rem;opacity:0.9;}
@media (max-width:768px) {.popup-content {padding:1.5rem;margin:1rem;}
.popup-header h2 {font-size:1.8rem;padding:10%;}
.images-container {grid-template-columns:1fr;gap:1rem;}
.image-wrapper img {height:200px;}
.image-overlay {position:static;transform:none;background:#284874;padding:1rem;}
}
@media (max-width:480px) {.popup-content {padding:1rem;}
.image-wrapper img {height:180px;}
}

.cookie-banner {position:fixed;bottom:0;left:0;right:0;background:#0d3b66;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;font-size:14px;z-index:9999;box-shadow:0 -2px 6px rgba(0, 0, 0, 0.3);}
.cookie-banner p {margin:0;}
.cookie-banner a {color:#4cafef;text-decoration:underline;}
.cookie-buttons {display:flex;gap:10px;}
.cookie-buttons button {padding:8px 14px;border:none;border-radius:5px;cursor:pointer;}
#acceptCookies {background:#4caf50;color:white;}
#rejectCookies {background:#f44336;color:white;}

.cintillo {display:flex;justify-content:center;align-items:center;position:fixed;top:0;left:0;width:100%;z-index:9999;background-color:#f00;height:40px;margin-bottom:15%;padding-top:1%;}
@media (max-width:596px) {.cintillo { padding-top:3%;}}
.cintillo a {color:white;text-align:center;}
.header {position:fixed;top:0;left:0;right:0;background-color:#124675;color:white;z-index:1000;top:40px;}
.search-container {position:relative;background-color:#124675;padding:0.5rem 1rem;width:100%;display:flex;justify-content:center;margin-top:80px;top:40px;}

.dropdown-results {position:absolute;top:100%;left:0;width:100%;background:#fff;border:1px solid #ddd;z-index:1000;max-height:300px;display:none;display:flex;flex-direction:column;}
.results-body {overflow-y:auto;max-height:240px;}
.results-body .item {display:flex;align-items:center;padding:8px;cursor:pointer;}
.results-body .item img {width:40px;height:40px;object-fit:contain;margin-right:10px;}
.results-body .item:hover {background:#f5f5f5;}
.search-footer {padding:10px;font-weight:bold;color:#007bff;cursor:pointer;border-top:1px solid #ddd;background:#fff;flex-shrink:0;}
@media (max-width:1287px) {.search-container {margin-top:80px;}}
@media (max-width:1023px) {.search-container {margin-top:85px !important;top:40px;}}
@media (max-width:899px) {.search-container {margin-top:115px !important;top:40px;}}