*{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:#fff;min-width:320px;margin:0;font-family:Arial,sans-serif}button{font-family:inherit}.site-header{background:#fff;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:12px 5%;display:flex}.brand{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.header-logo{object-fit:contain;width:150px;height:auto;display:block}.main-nav{background:#fff;border:1px solid #e9f1f2;border-radius:40px;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;padding:7px;display:flex;box-shadow:0 5px 22px #17344d14}.main-nav a{color:#17344d;white-space:nowrap;border-radius:25px;justify-content:center;align-items:center;gap:7px;padding:12px 14px;font-size:15px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.main-nav a:hover{color:#168d98;background:#eaf7f6}.main-nav a:first-child{color:#fff;background:#168d98}.main-nav a:first-child:hover{background:#11737c}.business-link{color:#fff;white-space:nowrap;background:#168d98;border-radius:30px;justify-content:center;align-items:center;padding:13px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #168d9826}.business-link:hover{background:#11737c;transform:translateY(-2px)}@media (width<=1150px){.site-header{flex-wrap:wrap;gap:14px}.main-nav{order:3;width:100%}}@media (width<=600px){.site-header{gap:12px;padding:12px 16px}.header-logo{width:115px}.business-link{padding:10px 13px;font-size:11px}.main-nav{border-radius:18px;gap:4px;padding:6px}.main-nav a{padding:9px 11px;font-size:12px}}.hero{background:0 0;width:100%;padding-top:8px}.hero-banner{background:#eaf7f6;border-radius:18px;width:min(100% - 32px,1600px);height:clamp(340px,39vw,580px);margin:0 auto;overflow:hidden}.hero-banner img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.hero-search{z-index:2;background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;width:min(100% - 64px,1380px);margin:-38px auto 20px;padding:20px 28px;display:flex;position:relative;box-shadow:0 10px 30px #17344d21}.search-message{flex:1;min-width:0}.search-message h2{color:#17344d;margin:0 0 6px;font-size:22px}.search-message p{color:#526a70;margin:0;font-size:13px}.hero-weather{text-align:left;cursor:pointer;background:0 0;border:none;border-left:1px solid #dce8e9;border-right:1px solid #dce8e9;border-radius:0;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:0 24px;font-family:inherit;transition:background .2s;display:flex}.hero-weather:hover:not(:disabled){background:#eaf7f6;border-radius:10px}.hero-weather:focus-visible{outline-offset:3px;outline:2px solid #168d98}.hero-weather:disabled{cursor:default;opacity:.65}.weather-icon{font-size:32px}.weather-info{flex-direction:column;gap:4px;display:flex}.weather-info strong{color:#17344d;font-size:16px}.weather-info span{color:#526a70;font-size:12px}.search-button{color:#fff;white-space:nowrap;background:#168d98;border-radius:30px;justify-content:center;align-items:center;padding:14px 25px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.search-button:hover{background:#11737c}.weather-modal-overlay{z-index:9999;background:#0c2130a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.weather-modal{color:#17344d;background:#fff;border-radius:20px;width:100%;max-width:510px;max-height:90vh;padding:32px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000038}.weather-modal-close{color:#17344d;cursor:pointer;background:0 0;border:none;font-size:30px;position:absolute;top:12px;right:18px}.weather-modal h2{color:#17344d;margin:0 35px 8px 0;font-size:25px}.weather-modal>p{color:#526a70;line-height:1.6}.weather-modal-temperature{background:#eaf7f6;border-radius:16px;flex-direction:column;align-items:center;gap:5px;margin:20px 0;padding:20px;display:flex}.weather-modal-temperature strong{color:#168d98;font-size:46px}.weather-modal-temperature span{color:#17344d;font-size:15px}.weather-modal-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.weather-modal-details p{color:#17344d;background:#f2f8f8;border-radius:12px;margin:0;padding:16px 12px;font-size:13px}.weather-modal-tip{background:#eaf7f6;border-radius:14px;margin-bottom:18px;padding:18px}.weather-modal-tip h3{color:#168d98;margin:0 0 10px;font-size:17px}.weather-modal-tip p{color:#526a70;margin:0;font-size:14px;line-height:1.6}.weather-modal-note{color:#526a70;font-size:12px}.weather-modal-link{color:#fff;background:#168d98;border-radius:25px;margin-top:12px;padding:12px 18px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.weather-modal-link:hover{background:#11737c}@media (width<=1000px){.hero-banner{height:390px}.hero-search{gap:14px;width:min(100% - 40px,900px);padding:18px}.hero-weather{padding:0 14px}}@media (width<=768px){.hero{padding-top:0}.hero-banner{border-radius:0;width:100%;height:290px}.hero-banner img{object-fit:cover;object-position:center}.hero-search{text-align:center;flex-direction:column;gap:18px;width:calc(100% - 32px);margin:-25px auto 35px;padding:20px}.search-message h2{font-size:20px}.hero-weather{border:1px solid #dce8e9;border-left:none;border-right:none;width:100%;padding:14px 0}.search-button{width:100%}.weather-modal{border-radius:16px;padding:25px 20px}.weather-modal h2{font-size:21px}.weather-modal-temperature strong{font-size:38px}.weather-modal-details{grid-template-columns:1fr}}.today-section{background:#fff;padding:10px 24px 45px}.today-card{background:#eaf7f6;border:1px solid #dcebea;border-radius:20px;max-width:1200px;margin:0 auto;padding:30px}.today-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.today-label{color:#168d98;letter-spacing:1.5px;font-size:11px;font-weight:700}.today-heading h2{color:#17344d;margin:10px 0;font-size:30px}.today-heading p{color:#526a70;margin:0}.today-icon{font-size:50px}.today-info{grid-template-columns:1fr 1fr;gap:24px;margin-top:25px;display:grid}.today-info>div{background:#fff;border-radius:14px;padding:22px}.today-info h3{color:#17344d;margin:0 0 10px}.today-info p{color:#526a70;margin:0;font-size:14px;line-height:1.6}.today-tip strong{color:#168d98;margin-bottom:10px;display:block}.today-note{color:#647b80;margin:20px 0 0;font-size:12px}@media (width<=768px){.today-section{padding:10px 16px 35px}.today-card{padding:22px}.today-heading h2{font-size:25px}.today-info{grid-template-columns:1fr;gap:14px}.today-icon{font-size:36px}.weather-temperature{color:#168d98;margin:12px 0;font-size:38px;font-weight:700;display:block}.weather-details p+p{margin-top:5px}.today-official-link{color:#168d98;text-underline-offset:3px;margin-top:10px;font-size:13px;font-weight:600;text-decoration:underline;display:inline-block}.today-official-link:hover{color:#11737c}}.today-section{display:none}.place-details-overlay{z-index:3000;background:#000000a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.place-details-modal{color:#17344d;background:#fff;border-radius:18px;width:100%;max-width:700px;max-height:90vh;padding:30px;position:relative;overflow-y:auto}.place-details-close{color:#17344d;cursor:pointer;background:0 0;border:none;font-size:30px;position:absolute;top:12px;right:18px}.place-details-heading{margin-bottom:20px;padding-right:30px}.place-details-heading span{color:#168d98;font-size:13px;font-weight:700}.place-details-heading h2{color:#17344d;margin:10px 0}.place-details-heading p,.place-details-modal p,.place-details-modal li{color:#526a70;line-height:1.7}.place-details-gallery{scroll-snap-type:x mandatory;gap:12px;margin-bottom:24px;padding-bottom:10px;display:flex;overflow-x:auto}.place-details-gallery img{object-fit:cover;object-position:center;scroll-snap-align:start;border-radius:12px;flex-shrink:0;width:100%;max-width:none;height:320px;display:block}.place-details-gallery img[src*=playa-diamante]{object-position:center top}.place-details-modal h3{color:#17344d;margin:22px 0 12px}.place-details-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.place-details-info p{background:#f1f8f7;border-radius:10px;margin:0;padding:12px;font-size:13px}.place-details-map{color:#fff;background:#168d98;border-radius:25px;margin-top:24px;padding:13px 22px;font-weight:600;text-decoration:none;display:inline-block}.place-details-map:hover{background:#11737c}.place-details-services{flex-wrap:wrap;gap:10px;margin:12px 0 24px;display:flex}.place-service{color:#17344d;background:#eaf7f6;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;line-height:1.4;display:inline-flex}@media (width<=600px){.place-details-modal{padding:22px}.place-details-gallery img{width:95%;height:210px}.place-details-info{grid-template-columns:1fr}}.place-card{background:#fff;border:1px solid #e7eeee;border-radius:16px;transition:transform .25s;overflow:hidden;box-shadow:0 4px 14px #0000000d}.place-card:hover{transform:translateY(-5px)}.place-image{color:#168d98;background:#eaf7f6;justify-content:center;align-items:center;height:185px;font-weight:600;display:flex}.place-image img{object-fit:cover;width:100%;height:100%}.place-image img[src*=playa-diamante]{object-position:center top}.place-info{padding:18px}.place-category{color:#168d98;font-size:12px;font-weight:700}.place-info h3{color:#17344d;margin:8px 0;font-size:19px}.place-info p{color:#526a70;margin:0;font-size:14px;line-height:1.6}.place-details-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:15px;padding:10px 17px;font-weight:600}.place-details-button:hover{background:#11737c}.attractions{max-width:1250px;margin:0 auto;padding:60px 25px 90px}.attractions-heading{text-align:center;margin-bottom:35px}.section-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.attractions-heading h2{color:#17344d;margin:12px 0;font-size:36px}.attractions-heading p{color:#526a70;font-size:16px}.attractions-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;display:grid}@media (width<=900px){.attractions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=550px){.attractions{padding:40px 16px 60px}.attractions-grid{grid-template-columns:1fr}.attractions-heading h2{font-size:29px}}.nearby-section{background:#fff;padding:65px 24px 85px}.nearby-container{max-width:1200px;margin:0 auto}.nearby-heading{text-align:center;margin-bottom:35px}.nearby-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.nearby-heading h2{color:#17344d;margin:12px 0;font-size:34px}.nearby-heading p{color:#526a70;max-width:630px;margin:0 auto;line-height:1.7}.nearby-empty{text-align:center;background:#eaf7f6;border-radius:18px;padding:48px 25px}.nearby-empty-icon{margin-bottom:15px;font-size:45px;display:block}.nearby-empty h3{color:#17344d;margin:0 0 12px}.nearby-empty p{color:#526a70;max-width:480px;margin:0 auto;line-height:1.7}.nearby-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.nearby-card{background:#fff;border:1px solid #e1ebeb;border-radius:18px;overflow:hidden;box-shadow:0 6px 18px #0000000d}.nearby-image{background:#eaf7f6;justify-content:center;align-items:center;height:210px;display:flex}.nearby-image img{object-fit:cover;width:100%;height:100%;display:block}.nearby-image span{font-size:45px}.nearby-content{padding:22px}.nearby-category{color:#168d98;font-size:13px;font-weight:700}.nearby-content h3{color:#17344d;margin:12px 0}.nearby-content p{color:#526a70;font-size:14px;line-height:1.6}.nearby-travel-time{font-weight:600}.nearby-map-link{color:#fff;background:#168d98;border-radius:25px;margin-top:12px;padding:11px 18px;font-weight:600;text-decoration:none;display:inline-block}.nearby-map-link:hover{background:#11737c}.nearby-details-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:14px;padding:11px 18px;font-weight:600;display:inline-block}.nearby-details-button:hover{background:#11737c}@media (width<=900px){.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.nearby-section{padding:45px 16px 65px}.nearby-heading h2{font-size:28px}.nearby-grid{grid-template-columns:1fr}}.accommodations-section{background:#f8fbfa;padding:65px 24px 85px}.accommodations-container{max-width:1200px;margin:0 auto}.accommodations-heading{text-align:center;margin-bottom:30px}.accommodations-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.accommodations-heading h2{color:#17344d;margin:12px 0;font-size:34px}.accommodations-heading p{color:#526a70;line-height:1.6}.accommodations-filters{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:30px;display:flex}.accommodation-filter{color:#168d98;cursor:pointer;background:#fff;border:1px solid #c9e2e0;border-radius:25px;padding:11px 20px;font-weight:600;transition:all .2s}.accommodation-filter:hover,.accommodation-filter.active{color:#fff;background:#168d98;border-color:#168d98}.accommodations-empty{text-align:center;background:#eaf7f6;border-radius:18px;padding:48px 25px}.accommodations-empty>span{margin-bottom:15px;font-size:45px;display:block}.accommodations-empty h3{color:#17344d;margin:0 0 12px}.accommodations-empty p{color:#526a70;line-height:1.6}.accommodations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.accommodation-card{background:#fff;border:1px solid #e1ebeb;border-radius:18px;overflow:hidden;box-shadow:0 6px 18px #0000000d}.accommodation-image{background:#eaf7f6;justify-content:center;align-items:center;height:210px;display:flex}.accommodation-image img{object-fit:cover;width:100%;height:100%}.accommodation-image>span{font-size:45px}.accommodation-content{padding:22px}.accommodation-category,.accommodation-content a{color:#168d98;font-weight:600}.accommodation-content h3{color:#17344d}.accommodation-content p{color:#526a70;line-height:1.6}@media (width<=900px){.accommodations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.accommodations-section{padding:45px 16px 65px}.accommodations-heading h2{font-size:28px}.accommodations-grid{grid-template-columns:1fr}}.accommodations-search{background:#fff;border:1px solid #e1ebeb;border-radius:18px;margin-bottom:30px;padding:24px}.accommodations-main-filters{flex-wrap:wrap;align-items:end;gap:15px;display:flex}.accommodation-capacity{color:#17344d;flex-direction:column;gap:8px;font-size:14px;font-weight:600;display:flex}.accommodation-capacity select{color:#17344d;background:#fff;border:1px solid #c9e2e0;border-radius:10px;min-height:43px;padding:10px 14px;font-size:14px}.accommodations-more-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;padding:12px 20px;font-weight:600}.accommodations-clear-button{color:#526a70;cursor:pointer;background:#fff;border:1px solid #c9e2e0;border-radius:25px;padding:11px 18px}.accommodations-extra-filters{border-top:1px solid #e1ebeb;margin-top:25px;padding-top:20px}.accommodations-extra-filters h3{color:#17344d;margin:18px 0 16px;font-size:17px}.accommodations-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.accommodations-options label{color:#526a70;cursor:pointer;align-items:center;gap:9px;font-size:14px;display:flex}.accommodations-options input{accent-color:#168d98;width:17px;height:17px}.accommodation-details-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:12px;padding:11px 20px;font-weight:600;display:inline-block}.accommodation-modal-overlay{z-index:2000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.accommodation-modal{color:#17344d;background:#fff;border-radius:18px;width:100%;max-width:740px;max-height:90vh;padding:30px;position:relative;overflow-y:auto}.accommodation-modal-close{color:#17344d;cursor:pointer;z-index:1;background:#fff;border:none;font-size:30px;position:absolute;top:12px;right:18px}.accommodation-modal-image{object-fit:cover;border-radius:12px;width:100%;height:250px;margin-bottom:22px;display:block}.accommodation-modal h2,.accommodation-modal h3{color:#17344d}.accommodation-modal h3{margin-top:25px}.accommodation-modal>p{color:#526a70;line-height:1.7}.accommodation-modal-facts{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.accommodation-modal-facts span{background:#eaf7f6;border-radius:10px;padding:10px 14px;font-size:14px}.accommodation-modal-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;display:grid}.accommodation-modal-features p{color:#526a70;background:#f8fbfa;border-radius:8px;margin:0;padding:10px;font-size:13px}.accommodation-modal-features small{color:#168d98;margin-top:4px;display:block}.accommodation-modal-links a{color:#fff;background:#168d98;border-radius:25px;padding:12px 18px;font-weight:600;text-decoration:none}.accommodation-gallery{scroll-snap-type:x mandatory;gap:12px;margin-bottom:24px;padding-bottom:12px;display:flex;overflow-x:auto}.accommodation-gallery img{object-fit:cover;scroll-snap-align:start;border-radius:12px;flex-shrink:0;width:85%;max-width:460px;height:260px}.accommodation-modal-links{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.accommodation-modal-links a{color:#fff;background:#168d98;border-radius:25px;justify-content:center;align-items:center;padding:12px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.accommodation-modal-links a:hover{background:#11737c}.accommodation-modal-links a.accommodation-whatsapp{color:#fff;background:#25d366}.accommodation-modal-links a.accommodation-whatsapp:hover{background:#1eaf55}@media (width<=600px){.accommodation-modal-links{flex-direction:column}.accommodation-modal-links a{width:100%}.accommodation-gallery img{width:92%;height:210px}.accommodation-modal{padding:22px}.accommodation-modal-features{grid-template-columns:1fr}.accommodation-modal-image{height:190px}}@media (width<=900px){.accommodations-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.accommodations-search{padding:18px}.accommodations-main-filters{flex-direction:column;align-items:stretch}.accommodations-options{grid-template-columns:1fr}.accommodation-capacity select{width:100%}}.accommodation-logo{box-sizing:border-box;background:#fff;border:1px solid #e5eeee;border-radius:14px;justify-content:center;align-items:center;width:76px;height:76px;margin:0 0 12px;padding:5px;display:flex;position:static;box-shadow:0 3px 10px #17344d1a}.accommodation-logo img{object-fit:contain;border-radius:6px;width:100%;height:100%;display:block}@media (width<=768px){.accommodation-logo{width:68px;height:68px;margin-bottom:10px}}.accommodation-content{flex-direction:column;align-items:flex-start;display:flex}.accommodation-content>a{color:#168d98;align-items:center;margin-top:12px;margin-bottom:8px;font-size:14px;text-decoration:underline;display:inline-flex}.accommodation-details-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;justify-content:center;align-items:center;width:auto;max-width:100%;margin:8px 0 0;padding:11px 18px;font-size:14px;font-weight:600;display:inline-flex;position:static}.accommodation-details-button:hover{background:#117580}.accommodation-apartment-types{margin:30px 0}.accommodation-apartment-types>h3{color:#17344d;margin-bottom:20px;font-size:21px}.accommodation-apartment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.accommodation-apartment-card{background:#f8fcfc;border:1px solid #dceeed;border-radius:16px;padding:22px}.accommodation-apartment-card h4{color:#17344d;margin:0 0 18px;font-size:17px}.accommodation-apartment-card p{color:#526a70;margin:0 0 12px;font-size:14px;line-height:1.6}.accommodation-apartment-card .accommodation-apartment-price{color:#168d98;margin-top:20px;font-size:20px;font-weight:700}.accommodation-price-note{color:#71858a;margin:16px 0;font-size:13px;line-height:1.6}@media (width<=650px){.accommodation-apartment-grid{grid-template-columns:1fr}.accommodation-apartment-card{padding:18px}}.accommodation-gallery-item{cursor:zoom-in;background:0 0;border:none;border-radius:12px;flex:none;margin:0;padding:0;display:block;overflow:hidden}.accommodation-gallery-item img{object-fit:cover;width:100%;height:100%;display:block}.accommodation-lightbox-overlay{z-index:9999;background:#000000e6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.accommodation-lightbox{flex-direction:column;align-items:center;gap:15px;width:min(100%,1100px);max-height:95vh;display:flex;position:relative}.accommodation-lightbox>img{object-fit:contain;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:78vh;display:block}.accommodation-lightbox-close{color:#17344d;cursor:pointer;z-index:2;background:#fff;border:none;border-radius:50%;width:42px;height:42px;font-size:27px;position:absolute;top:-12px;right:0}.accommodation-lightbox-controls{color:#fff;justify-content:center;align-items:center;gap:25px;font-size:15px;display:flex}.accommodation-lightbox-controls button{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #fff6;border-radius:50%;width:44px;height:44px;font-size:22px}.accommodation-lightbox-controls button:hover{background:#168d98}@media (width<=650px){.accommodation-lightbox-overlay{padding:12px}.accommodation-lightbox>img{max-height:70vh}.accommodation-lightbox-controls{gap:18px}}.gastronomy-section{background:#fff;padding:65px 24px 85px}.gastronomy-container{max-width:1200px;margin:0 auto}.gastronomy-heading{text-align:center;margin-bottom:35px}.gastronomy-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.gastronomy-heading h2{color:#17344d;margin:12px 0;font-size:34px}.gastronomy-heading p{color:#526a70;line-height:1.6}.gastronomy-empty{text-align:center;background:#eaf7f6;border-radius:18px;padding:50px 25px}.gastronomy-empty>span{margin-bottom:15px;font-size:45px;display:block}.gastronomy-empty h3{color:#17344d;margin-bottom:12px}.gastronomy-empty p{color:#526a70;line-height:1.6}.gastronomy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.gastronomy-card{background:#fff;border:1px solid #e1ebeb;border-radius:18px;overflow:hidden;box-shadow:0 6px 18px #0000000d}.gastronomy-card img{object-fit:cover;width:100%;height:210px;display:block}.gastronomy-card-content{padding:22px}.gastronomy-card-content span,.gastronomy-card-content a{color:#168d98;font-weight:600}.gastronomy-card-content h3{color:#17344d}.gastronomy-card-content p{color:#526a70;line-height:1.6}@media (width<=900px){.gastronomy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.gastronomy-section{padding:45px 16px 65px}.gastronomy-grid{grid-template-columns:1fr}.gastronomy-heading h2{font-size:28px}}.snacks-section{background:#fff;width:100%;padding:65px 20px}.snacks-container{text-align:center;max-width:1100px;margin:0 auto}.snacks-label{color:#168d98;letter-spacing:2px;margin-bottom:12px;font-size:12px;font-weight:700;display:block}.snacks-heading h2{color:#17344d;margin:0 0 12px;font-size:clamp(25px,3vw,34px)}.snacks-heading p{color:#526a70;max-width:650px;margin:0 auto 30px;font-size:15px;line-height:1.7}.snacks-empty{background:#eaf7f6;border-radius:18px;padding:45px 25px}.snacks-icon{margin-bottom:15px;font-size:36px;display:block}.snacks-empty h3{color:#17344d;margin:0 0 12px;font-size:20px}.snacks-empty p{color:#526a70;margin:0;font-size:14px;line-height:1.6}@media (width<=768px){.snacks-section{padding:40px 16px}.snacks-empty{padding:35px 20px}}.promotions-section{background:#f8fcfc;width:100%;padding:65px 20px}.promotions-container{text-align:center;max-width:1100px;margin:0 auto}.promotions-label{color:#168d98;letter-spacing:2px;margin-bottom:12px;font-size:12px;font-weight:700;display:block}.promotions-heading h2{color:#17344d;margin:0 0 12px;font-size:clamp(25px,3vw,34px)}.promotions-heading p{color:#526a70;max-width:650px;margin:0 auto 30px;font-size:15px;line-height:1.7}.promotions-empty{background:#eaf7f6;border:1px solid #d6eeee;border-radius:18px;padding:45px 25px}.promotions-icon{margin-bottom:15px;font-size:36px;display:block}.promotions-empty h3{color:#17344d;margin:0 0 12px;font-size:20px}.promotions-empty p{color:#526a70;margin:0;font-size:14px;line-height:1.6}@media (width<=768px){.promotions-section{padding:40px 16px}.promotions-empty{padding:35px 20px}}.events-section{background:#fff;padding:65px 24px 80px}.events-container{max-width:1200px;margin:0 auto}.events-heading{text-align:center;margin-bottom:32px}.events-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.events-heading h2{color:#17344d;margin:12px 0;font-size:34px}.events-heading p{color:#526a70;line-height:1.6}.events-empty{text-align:center;background:#eaf7f6;border-radius:18px;padding:45px 25px}.events-icon{margin-bottom:15px;font-size:45px;display:block}.events-empty h3{color:#17344d;margin:0 0 12px}.events-empty p{color:#526a70;max-width:520px;margin:0 auto;line-height:1.6}.events-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.event-card{background:#eaf7f6;border-radius:16px;padding:24px}.event-date{color:#168d98;font-weight:700}.event-card h3{color:#17344d}.event-card p{color:#526a70;line-height:1.6}.events-cta{background:#f8f3ea;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding:28px;display:flex}.events-cta h3{color:#17344d;margin:0 0 8px}.events-cta p{color:#526a70;margin:0}.events-cta a{color:#fff;white-space:nowrap;background:#168d98;border-radius:30px;padding:14px 22px;font-weight:600;text-decoration:none}@media (width<=768px){.events-grid{grid-template-columns:1fr}.events-cta{text-align:center;flex-direction:column}.events-heading h2{font-size:28px}}.event-card{background:#fff;border:1px solid #e1ebeb;padding:0;overflow:hidden;box-shadow:0 6px 18px #0000000d}.event-photo{background:#eaf7f6;justify-content:center;align-items:center;height:190px;display:flex;position:relative}.event-photo img{object-fit:cover;width:100%;height:100%}.event-photo>span:first-child{font-size:48px}.event-date-badge{color:#168d98;background:#fff;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700;position:absolute;bottom:12px;left:12px}.event-content{padding:20px}.event-content h3{margin:0 0 12px}.event-details-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:12px;padding:11px 18px;font-weight:600}.event-details-button:hover{background:#11737c}.event-modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.event-modal{background:#fff;border-radius:18px;width:100%;max-width:550px;max-height:85vh;padding:35px;position:relative;overflow-y:auto}.event-modal h2{color:#17344d}.event-modal p{color:#526a70;line-height:1.7}.event-modal-close{color:#17344d;cursor:pointer;background:0 0;border:none;font-size:30px;position:absolute;top:12px;right:18px}.traditions-section{background:#f8fbfa;padding:65px 24px 90px}.traditions-container{max-width:1200px;margin:0 auto}.traditions-heading{text-align:center;margin-bottom:35px}.traditions-label{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.traditions-heading h2{color:#17344d;margin:12px 0;font-size:34px}.traditions-heading p{color:#526a70;line-height:1.6}.traditions-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.tradition-card{background:#fff;border:1px solid #e1ebeb;border-radius:18px;flex-direction:column;align-items:flex-start;padding:30px 25px;display:flex;box-shadow:0 6px 18px #0000000a}.tradition-icon{margin-bottom:18px;font-size:42px}.tradition-card h3{color:#17344d;margin:0 0 12px;font-size:20px}.tradition-card p{color:#526a70;flex-grow:1;font-size:14px;line-height:1.7}.tradition-frequency{color:#168d98;background:#eaf7f6;border-radius:20px;margin-top:18px;padding:8px 13px;font-size:12px;font-weight:700}.tradition-button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:18px;padding:11px 18px;font-weight:600}.tradition-button:hover{background:#11737c}.tradition-modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tradition-modal{background:#fff;border-radius:18px;width:100%;max-width:600px;max-height:85vh;padding:35px;position:relative;overflow-y:auto}.tradition-modal-close{color:#17344d;cursor:pointer;background:0 0;border:none;font-size:30px;position:absolute;top:12px;right:18px}.tradition-modal-icon{font-size:42px}.tradition-modal h2,.tradition-modal h3{color:#17344d}.tradition-modal p,.tradition-modal li{color:#526a70;line-height:1.7}.tradition-modal ul{padding-left:22px}.tradition-modal-note{background:#eaf7f6;border-radius:10px;margin-top:22px;padding:14px}.tradition-card{padding:0;overflow:hidden}.tradition-image{background:#f1f6f5;width:100%;height:230px;overflow:hidden}.tradition-image-main{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.tradition-card>h3,.tradition-card>p,.tradition-card>.tradition-frequency,.tradition-card>.tradition-button{margin-left:22px;margin-right:22px}.tradition-card>h3{margin-top:20px}.tradition-card>.tradition-button{margin-bottom:24px}@media (width<=768px){.traditions-grid{grid-template-columns:1fr}.traditions-heading h2{font-size:28px}.traditions-section{padding:45px 16px 65px}}.servicios-page{color:#17344d;background:#fff;min-height:75vh;padding:65px 20px}.servicios-container{text-align:center;max-width:1100px;margin:0 auto}.servicios-etiqueta{color:#168d98;letter-spacing:2px;font-size:12px;font-weight:700}.servicios-container h1{margin:15px 0;font-size:clamp(28px,4vw,40px)}.servicios-intro{color:#526a70;max-width:600px;margin:0 auto 30px;line-height:1.6}.servicios-buscador{width:min(100%,600px);font:inherit;border:1px solid #dce8e9;border-radius:30px;outline-color:#168d98;margin:0 auto 35px;padding:15px 20px;display:block}.servicios-categorias{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.servicio-categoria{color:#17344d;min-height:155px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e1ecec;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:15px;padding:22px;transition:all .2s;display:flex;box-shadow:0 5px 18px #17344d0d}.servicio-categoria:hover,.servicio-categoria.activa{background:#eaf7f6;border-color:#168d98;transform:translateY(-3px)}.servicio-icono{font-size:34px}.servicios-resultado{background:#f2f9f8;border-radius:18px;max-width:700px;margin:35px auto 0;padding:30px}.servicios-resultado h2{font-size:22px}.servicios-resultado p{color:#526a70;line-height:1.6}.servicios-resultado button{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:25px;margin-top:12px;padding:11px 20px}@media (width<=768px){.servicios-page{padding:40px 16px}.servicios-categorias{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.servicio-categoria{min-height:130px;padding:15px;font-size:13px}}@media (width<=400px){.servicios-categorias{grid-template-columns:1fr}}.servicios-listado{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px;display:grid}@media (width<=768px){.servicios-listado{grid-template-columns:1fr}}.servicio-establecimiento{text-align:left;background:#fff;border:1px solid #e1ecec;border-radius:16px;width:100%;padding:24px;box-shadow:0 5px 18px #17344d0f}.servicio-establecimiento h3{color:#17344d;margin:0 0 12px;font-size:18px}.servicio-establecimiento p{color:#526a70;font-size:14px;line-height:1.6}.servicio-establecimiento a{color:#fff;background:#168d98;border-radius:25px;margin:8px 8px 0 0;padding:10px 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.servicio-establecimiento a:hover{background:#11737c}@media (width<=900px){.servicios-listado{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.servicios-listado{grid-template-columns:1fr}}.servicio-imagen{object-fit:cover;object-position:center;border-radius:12px;width:100%;height:190px;margin-bottom:16px;display:block}.servicio-ver-detalles{color:#168d98;cursor:pointer;background:#eaf7f6;border:1px solid #b8dddd;border-radius:25px;margin:8px 8px 0 0;padding:10px 14px;font-size:13px;font-weight:600;display:inline-block}.servicio-ver-detalles:hover{background:#d6efed}.servicio-modal-overlay{z-index:9999;background:#0c2130a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.servicio-modal{text-align:left;color:#17344d;background:#fff;border-radius:20px;width:100%;max-width:650px;max-height:90vh;padding:30px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0003}.servicio-modal-cerrar{color:#17344d;cursor:pointer;background:0 0;border:none;font-size:30px;position:absolute;top:12px;right:18px}.servicio-modal h2{margin:0 35px 22px 0;font-size:24px;line-height:1.3}.servicio-modal h3{margin:22px 0 10px;font-size:17px}.servicio-modal p,.servicio-modal li{color:#526a70;font-size:14px;line-height:1.7}.servicio-modal-imagen{object-fit:contain;background:#f2f8f8;border-radius:12px;width:100%;max-height:320px;margin-bottom:20px;display:block}.servicio-modal-enlaces{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.servicio-modal-enlaces a{color:#fff;background:#168d98;border-radius:25px;justify-content:center;align-items:center;padding:11px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.servicio-modal-enlaces a:hover{background:#11737c}@media (width<=600px){.servicio-modal{border-radius:16px;padding:24px 18px}.servicio-modal h2{font-size:20px}.servicio-modal-imagen{max-height:240px}}.business-section{background:#f8fcfc;width:100%;padding:65px 20px}.business-container{max-width:800px;margin:0 auto}.business-heading{text-align:center;margin-bottom:35px}.business-label{color:#168d98;letter-spacing:2px;margin-bottom:12px;font-size:12px;font-weight:700;display:block}.business-heading h1{color:#17344d;margin:0 0 15px;font-size:clamp(26px,3vw,36px)}.business-heading p{color:#526a70;max-width:650px;margin:0 auto;font-size:15px;line-height:1.7}.business-form{background:#fff;border:1px solid #dceeed;border-radius:20px;padding:35px;box-shadow:0 8px 28px #17344d0f}.business-field{flex-direction:column;gap:8px;margin-bottom:22px;display:flex}.business-field label{color:#17344d;font-size:14px;font-weight:600}.business-field input,.business-field select,.business-field textarea{box-sizing:border-box;color:#17344d;width:100%;font:inherit;background:#fff;border:1px solid #ccdedd;border-radius:10px;padding:13px 15px;font-size:15px;transition:border-color .2s,box-shadow .2s}.business-field input:focus,.business-field select:focus,.business-field textarea:focus{border-color:#168d98;outline:none;box-shadow:0 0 0 3px #168d981f}.business-field textarea{resize:vertical;min-height:120px}.business-note{color:#345d63;background:#eaf7f6;border-radius:10px;margin-bottom:25px;padding:15px;font-size:13px;line-height:1.6}.business-submit{color:#fff;cursor:pointer;background:#168d98;border:none;border-radius:12px;width:100%;padding:15px 20px;font-size:16px;font-weight:700;transition:background .2s,transform .2s;display:block}.business-submit:hover{background:#117580;transform:translateY(-2px)}.business-disclaimer{color:#71858a;text-align:center;margin:18px 0 0;font-size:12px;line-height:1.6}@media (width<=768px){.business-section{padding:40px 16px}.business-form{padding:25px 18px}}#root{width:100%;min-height:100vh}.proxima-seccion{text-align:center;background:#fff;padding:70px 20px}.proxima-seccion h2{color:#17344d;font-size:32px}.proxima-seccion p{color:#526a70}
