.header{background:var(--white);box-shadow:var(--shadow);position:sticky;top:0;z-index:100}.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.logo{text-decoration:none;color:var(--primary-color);display:flex;align-items:center}.logo-image{height:50px;width:auto;max-width:180px;transition:var(--transition)}.logo:hover .logo-image{transform:scale(1.05)}.nav-menu{display:flex;list-style:none;align-items:center;gap:2rem}.nav-link{text-decoration:none;color:var(--text-dark);font-weight:500;transition:var(--transition);padding:.5rem 0}.nav-link:hover{color:var(--primary-color)}.nav-cta{margin-left:1rem}.menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem}.menu-toggle span{width:25px;height:3px;background:var(--text-dark);margin:3px 0;transition:var(--transition)}.menu-toggle.active span:nth-child(1){transform:rotate(-45deg) translate(-5px,6px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(45deg) translate(-5px,-6px)}@media (max-width: 768px){.logo-image{height:40px;max-width:150px}.menu-toggle{display:flex}.nav-menu{position:fixed;top:70px;left:-100%;width:100%;height:calc(100vh - 70px);background:var(--white);flex-direction:column;justify-content:flex-start;align-items:center;padding-top:2rem;transition:var(--transition);box-shadow:var(--shadow)}.nav-menu.active{left:0}.nav-menu li{margin:1rem 0}.nav-link{font-size:1.125rem}.nav-cta{margin-left:0;margin-top:1rem}}.footer{background:var(--text-dark);color:var(--white);padding:3rem 0 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:2rem}.footer-section{display:flex;flex-direction:column}.footer-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--accent-color)}.footer-subtitle{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--white)}.footer-text{color:#a0aec0;line-height:1.6;margin-bottom:.75rem}.footer-location{color:var(--accent-color);font-size:1rem;margin-top:.5rem}.contact-info p{margin-bottom:.5rem;color:#a0aec0}.quick-links{display:flex;flex-direction:column;gap:.5rem}.contact-link{color:var(--accent-color);text-decoration:none;margin-left:.5rem}.social-links{display:flex;flex-direction:column;gap:.5rem}.social-link{color:var(--accent-color);text-decoration:none;transition:var(--transition)}.social-link:hover{color:var(--white);text-decoration:underline}.footer-bottom{border-top:1px solid #4a5568;padding-top:1.5rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;text-align:center}.copyright{text-align:left}.copyright p{margin-bottom:.25rem;font-size:.875rem}.legal-text{color:#a0aec0;font-size:.75rem;font-style:italic}.developer-credit{text-align:right}.dev-text{color:#a0aec0;font-size:.75rem;margin:0}.dev-link{color:var(--accent-color);text-decoration:none;transition:var(--transition)}.dev-link:hover{color:var(--white);text-decoration:underline}.footer-links{display:flex;gap:1rem}.footer-link{color:#a0aec0;text-decoration:none;font-size:.875rem}.footer-link:hover{color:var(--white);text-decoration:underline}@media (max-width: 768px){.footer-bottom{grid-template-columns:1fr;text-align:center;gap:1.5rem}.copyright,.developer-credit{text-align:center}.social-links{flex-direction:row;justify-content:center}.footer-content{grid-template-columns:1fr;text-align:center}}.cabana-card{height:100%;display:flex;flex-direction:column}.cabana-card .card-content{flex:1;display:flex;flex-direction:column}.cabana-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.price{font-size:1.125rem;font-weight:600;color:var(--primary-color)}.capacity{font-size:.875rem;color:var(--text-light);display:flex;align-items:center;gap:.5rem}.card-actions{display:flex;gap:.75rem;margin-top:auto;padding-top:1rem}.card-actions .btn{flex:1;text-align:center;font-size:.875rem;padding:.625rem 1rem}.lazy-image-container{position:relative;width:100%;height:200px;overflow:hidden;background:var(--bg-light);display:flex;align-items:center;justify-content:center}.cabana-card .lazy-image{width:100%;height:100%;object-fit:cover}.image-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-light);font-size:.875rem}@media (max-width: 480px){.card-actions{flex-direction:column}.cabana-meta{flex-direction:column;align-items:flex-start}}.location-section{padding:4rem 0;background:var(--bg-light)}.location-content{display:grid;grid-template-columns:1fr 2fr;gap:3rem;margin-top:2rem}.location-info{display:flex;flex-direction:column;justify-content:center}.address-card{background:var(--white);padding:2rem;border-radius:var(--border-radius);box-shadow:var(--shadow)}.address-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color)}.address-text{font-size:1.125rem;line-height:1.6;color:var(--text-dark);margin-bottom:1rem}.location-highlight{font-size:1rem;font-weight:600;color:var(--primary-color);background:#f0fdf4;padding:.75rem;border-radius:6px;border-left:3px solid var(--primary-color);margin-bottom:1.5rem}.contact-details p{margin-bottom:.75rem;color:var(--text-light)}.contact-link{color:var(--primary-color);text-decoration:none;margin-left:.5rem;font-weight:500}.contact-link:hover{text-decoration:underline}.map-container{border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-lg);position:relative}.map-container iframe{width:100%;height:450px;border:none}.map-link{padding:1rem;background:#fff;text-align:center}.map-link .btn{display:inline-block}@media (max-width: 768px){.location-content{grid-template-columns:1fr;gap:2rem}.address-card{padding:1.5rem}.map-container iframe{height:300px}}.hero{position:relative;min-height:85vh;display:flex;align-items:center;overflow:hidden;background:linear-gradient(to bottom,#1a2f1d,#2c5530)}.hero-content{position:relative;z-index:2;width:100%}.hero-image{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-bg{width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1.02);filter:brightness(.85) contrast(1.1) saturate(1.2);transition:transform .3s ease}.hero-image:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#2c5530bf,#2c553080 40%,#0000004d);-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px)}.hero-text{max-width:600px;color:var(--white);text-align:left}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;line-height:1.2;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-title .highlight{color:var(--accent-color);text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-subtitle{font-size:1.25rem;margin-bottom:2rem;opacity:.95;line-height:1.6;text-shadow:1px 1px 2px rgba(0,0,0,.4)}.hero-subtitle strong{color:var(--accent-color);font-weight:600}.hero-actions{display:flex;gap:1rem;justify-content:flex-start;flex-wrap:wrap}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.bg-light{background-color:var(--bg-light)}.benefits-grid{margin-top:2rem}.benefit-card{text-align:center;padding:2rem 1rem}.benefit-icon{font-size:3rem;margin-bottom:1rem;color:var(--primary-color);display:flex;justify-content:center}.benefit-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-dark)}.benefit-text{color:var(--text-light);line-height:1.6}.section-cta{text-align:center;margin-top:3rem}.cta-section{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:var(--white)}.cta-content{text-align:center;max-width:600px;margin:0 auto}.cta-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.cta-text{font-size:1.125rem;margin-bottom:2rem;opacity:.95}.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width: 768px){.hero{min-height:75vh}.hero-text{text-align:center;padding:0 1rem}.hero-bg{transform:scale(1.03);object-position:center 35%;filter:brightness(.8) contrast(1.15) saturate(1.3)}.hero-image:after{background:linear-gradient(135deg,#2c5530cc,#2c553099,#0006)}.hero-title{font-size:2.2rem;margin-bottom:1rem;text-shadow:2px 2px 6px rgba(0,0,0,.5)}.hero-subtitle{font-size:1rem;margin-bottom:1.5rem;text-shadow:1px 1px 3px rgba(0,0,0,.6)}.hero-actions,.cta-actions{flex-direction:column;align-items:center;justify-content:center}.btn-lg{width:100%;max-width:280px;padding:.875rem 1.5rem;font-size:1rem}.cta-title{font-size:2rem}.benefit-card{padding:1.5rem .5rem}}@media (max-width: 480px){.hero{min-height:70vh}.hero-title{font-size:1.9rem;line-height:1.1}.hero-subtitle{font-size:.95rem;line-height:1.5}.hero-bg{object-position:center 40%}.btn-lg{font-size:.95rem;padding:.8rem 1.25rem}}.cabanas-page{padding:2rem 0}.page-header{text-align:center;margin-bottom:3rem}.page-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-dark)}.page-subtitle{font-size:1.125rem;color:var(--text-light);max-width:600px;margin:0 auto}.filters-section{margin-bottom:2rem}.filters{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;padding:1.5rem;background:var(--bg-light);border-radius:var(--border-radius)}.filter-group{display:flex;flex-direction:column;min-width:180px}.filter-label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-dark)}.filter-select{padding:.5rem;border:1px solid #e2e8f0;border-radius:var(--border-radius);background:var(--white);font-size:.875rem;color:var(--text-dark);cursor:pointer}.filter-select:focus{outline:2px solid var(--primary-color);outline-offset:2px;border-color:var(--primary-color)}.results-section{margin-top:2rem}.results-header{margin-bottom:1.5rem}.results-count{font-size:.875rem;color:var(--text-light);text-align:center}.cabanas-grid{margin-top:1.5rem}.no-results{text-align:center;padding:3rem 1rem;background:var(--bg-light);border-radius:var(--border-radius)}.no-results h3{font-size:1.5rem;margin-bottom:.5rem;color:var(--text-dark)}.no-results p{color:var(--text-light);margin-bottom:1.5rem}@media (max-width: 768px){.page-title{font-size:2rem}.filters{flex-direction:column;align-items:stretch}.filter-group{min-width:auto}.cabanas-grid{grid-template-columns:1fr}}@media (max-width: 480px){.cabanas-page{padding:1rem 0}.page-header{margin-bottom:2rem}}.pricing-table{background:var(--white);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--shadow)}.pricing-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-dark);text-align:center}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.pricing-tier{background:var(--bg-light);border:1px solid #e2e8f0;border-radius:var(--border-radius);padding:1rem;text-align:center;transition:var(--transition)}.pricing-tier:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.tier-capacity{display:flex;flex-direction:row;align-items:baseline;justify-content:center;gap:.25rem;margin-bottom:.5rem}.capacity-number{font-size:1.5rem;font-weight:700;color:var(--primary-color);line-height:1}.capacity-label{font-size:.75rem;color:var(--text-light);font-weight:500}.tier-price{font-size:1.25rem;font-weight:600;color:var(--text-dark);margin-bottom:.75rem;padding:.5rem 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.tier-includes{display:flex;flex-direction:column;gap:.25rem}.include-item{font-size:.75rem;color:var(--text-light);display:flex;align-items:center;justify-content:center;gap:.25rem}.pricing-notes{background:#fff3cd;border:1px solid #ffc107;border-radius:var(--border-radius);padding:.75rem 1rem}.notes-title{font-size:.875rem;font-weight:600;color:#856404;margin-bottom:.5rem}.notes-list{list-style:none;padding:0;margin:0}.note-item{font-size:.8rem;color:#856404;padding:.2rem 0 .2rem 1.25rem;position:relative;line-height:1.4}.note-item:before{content:"⚠";position:absolute;left:0;font-size:.875rem}@media (max-width: 768px){.pricing-grid{grid-template-columns:repeat(2,1fr)}.pricing-table{padding:1rem}.pricing-title{font-size:1.1rem}.capacity-number{font-size:1.25rem}.tier-price{font-size:1.1rem}}@media (max-width: 480px){.pricing-grid{grid-template-columns:1fr;gap:.5rem}.pricing-tier{padding:.75rem}}.cabana-detail{padding:2rem 0}.breadcrumb{display:flex;align-items:center;margin-bottom:2rem;font-size:.875rem}.breadcrumb-link{color:var(--primary-color);text-decoration:none}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-separator{margin:0 .5rem;color:var(--text-light)}.breadcrumb-current{color:var(--text-light)}.detail-header{margin-bottom:2rem}.detail-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-dark)}.detail-meta{display:flex;gap:2rem;align-items:center;flex-wrap:wrap}.detail-price{font-size:1.5rem;font-weight:600;color:var(--primary-color)}.detail-capacity{font-size:1.125rem;color:var(--text-light)}.gallery-section{margin-bottom:3rem}.gallery{display:grid;gap:1rem}.main-image{width:100%;height:400px;border-radius:var(--border-radius);overflow:hidden}.gallery-main{width:100%;height:100%;object-fit:cover}.image-thumbnails{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem 0}.thumbnail{flex-shrink:0;width:80px;height:60px;border:2px solid transparent;border-radius:var(--border-radius);overflow:hidden;cursor:pointer;background:none;padding:0}.thumbnail.active{border-color:var(--primary-color)}.thumbnail-image{width:100%;height:100%;object-fit:cover}.detail-content{display:grid;grid-template-columns:1fr 350px;gap:3rem;margin-bottom:3rem}.detail-main{display:flex;flex-direction:column;gap:2rem}.content-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-dark)}.description-text{font-size:1.125rem;line-height:1.7;color:var(--text-light)}.amenities-list,.services-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.75rem;list-style:none}.amenity-item,.service-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.amenity-icon{color:var(--primary-color);font-size:1rem;display:flex;align-items:center}.service-icon{font-size:1.125rem;color:var(--secondary-color);display:flex;align-items:center}.reservation-sidebar{position:sticky;top:100px;height:fit-content}.reservation-card{background:var(--white);border:1px solid #e2e8f0;border-radius:var(--border-radius);padding:2rem;box-shadow:var(--shadow-lg)}.reservation-title{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-dark)}.price-display{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1rem}.price-amount{font-size:2rem;font-weight:700;color:var(--primary-color)}.price-period{color:var(--text-light)}.capacity-display{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;color:var(--text-light)}.capacity-icon{color:var(--primary-color)}.reservation-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.reservation-btn{width:100%}.contact-info{text-align:center;padding-top:1rem;border-top:1px solid #e2e8f0}.contact-text{font-size:.875rem;color:var(--text-light);margin-bottom:.5rem}.contact-phone a{color:var(--primary-color);text-decoration:none;font-weight:500}.related-section{margin-top:4rem}.related-cabanas{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.related-card{display:block;text-decoration:none;background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition)}.related-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.related-image{width:100%;height:150px;object-fit:cover}.related-content{padding:1rem}.related-name{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-dark)}.related-price{color:var(--primary-color);font-weight:500}.not-found{text-align:center;padding:4rem 1rem}.not-found h1{font-size:2rem;margin-bottom:1rem;color:var(--text-dark)}.not-found p{color:var(--text-light);margin-bottom:2rem}@media (max-width: 1024px){.detail-content{grid-template-columns:1fr;gap:2rem}.reservation-sidebar{position:static}}@media (max-width: 768px){.detail-title{font-size:2rem}.detail-meta{flex-direction:column;align-items:flex-start;gap:.5rem}.main-image{height:250px}.amenities-list,.services-list,.related-cabanas{grid-template-columns:1fr}}@media (max-width: 480px){.cabana-detail{padding:1rem 0}.breadcrumb{font-size:.75rem}.reservation-card{padding:1.5rem}}.rooms-info{background:var(--bg-light);border-radius:var(--border-radius);padding:1.5rem}.rooms-summary{display:flex;gap:2rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.room-stat{display:flex;align-items:center;gap:.5rem}.room-icon{font-size:1.5rem;color:var(--primary-color)}.room-label{font-size:1rem;font-weight:500;color:var(--text-dark)}.distribution-title{font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-dark)}.beds-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.bed-item{font-size:.875rem;color:var(--text-light);padding-left:1.5rem;position:relative}.bed-item:before{content:"•";position:absolute;left:.5rem;color:var(--primary-color);font-weight:700}.checkin-section{background:#f9fafb;border-radius:8px;padding:1.5rem;border:1px solid #e5e7eb}.checkin-section .content-title{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.checkin-grid-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.checkin-item{background:#fff;padding:1rem;border-radius:6px;border:1px solid #e5e7eb}.checkin-label{font-size:.95rem;font-weight:600;color:#374151;margin-bottom:.75rem}.checkin-times-detail{display:flex;flex-direction:column;gap:.5rem}.time-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#f9fafb;border-radius:4px}.time-label-small{font-size:.875rem;font-weight:500;color:#6b7280}.time-value-small{font-size:.95rem;font-weight:600;color:var(--color-primary)}.checkin-section .btn{margin-top:.5rem}@media (max-width: 768px){.rooms-summary{flex-direction:column;gap:1rem}.checkin-section{padding:1.25rem}.checkin-grid-detail{grid-template-columns:1fr}}.facility-card{height:100%;display:flex;flex-direction:column;text-align:center}.facility-icon-wrapper{display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem 1rem;background:linear-gradient(135deg,var(--bg-light) 0%,var(--white) 100%)}.facility-icon{font-size:3rem;color:var(--primary-color);transition:var(--transition)}.facility-card:hover .facility-icon{transform:scale(1.1);color:var(--secondary-color)}.facility-card .card-content{flex:1;display:flex;flex-direction:column;padding:1rem 1.5rem 1.5rem}.facility-details{font-size:.875rem;color:var(--text-light);font-style:italic;margin-top:.5rem}.facility-cost{margin-top:auto;padding-top:1rem;font-weight:600}.cost-free{color:var(--primary-color);font-size:1rem}.cost-amount{color:var(--secondary-color);font-size:1.125rem}@media (max-width: 480px){.facility-icon{font-size:2.5rem}.facility-icon-wrapper{padding:1.5rem 1rem .75rem}}.services-list{max-width:800px;margin:0 auto;display:grid;gap:1.5rem}.service-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow);transition:var(--transition)}.service-item:hover{box-shadow:var(--shadow-lg);transform:translate(4px)}.service-check{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:var(--white);border-radius:50%;font-weight:700;font-size:1.25rem}.service-content{flex:1}.service-name{font-size:1.125rem;font-weight:600;color:var(--text-dark);margin-bottom:.25rem}.service-notes{font-size:.875rem;color:var(--text-light);line-height:1.5}.additional-service-card{display:flex;flex-direction:column}.additional-service-card .card-content{flex:1;display:flex;flex-direction:column}.service-price{margin-top:auto;padding-top:1rem;font-weight:600;font-size:1.125rem}.price-free{color:var(--primary-color)}.price-amount{color:var(--secondary-color)}.price-consult{color:var(--text-light);font-size:.875rem;font-style:italic}.cta-actions .btn{display:inline-flex;align-items:center;gap:.5rem}@media (max-width: 768px){.services-list{gap:1rem}.service-item{padding:1rem}.service-check{width:1.75rem;height:1.75rem;font-size:1rem}.service-name{font-size:1rem}}.policy-section{margin-bottom:2rem;background:var(--color-white);border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.policy-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-primary)}.policy-icon-wrapper{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-primary-light);border-radius:50%;color:var(--color-primary);font-size:1.5rem}.policy-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-dark)}.policy-list{list-style:none;padding:0;margin:0}.policy-item{margin-bottom:1rem}.policy-item:last-child{margin-bottom:0}.policy-item-highlight{background:var(--color-warning-light, #fff3cd);padding:.75rem;border-radius:6px;border-left:4px solid var(--color-warning, #ffc107)}.policy-rule{display:flex;gap:.75rem;align-items:flex-start}.policy-bullet{color:var(--color-primary);font-size:1.5rem;line-height:1.5;font-weight:700;flex-shrink:0}.policy-content{flex:1}.policy-text{margin:0;font-size:1rem;line-height:1.6;color:var(--color-text)}.policy-description{margin:.5rem 0 0;font-size:.9rem;line-height:1.5;color:var(--color-text-light)}.policy-penalty{margin:.5rem 0 0;font-size:.9rem;line-height:1.5;color:var(--color-danger, #dc3545)}.policy-penalty strong{font-weight:600}@media (max-width: 768px){.policy-section{padding:1rem}.policy-header{gap:.75rem}.policy-icon-wrapper{width:40px;height:40px;font-size:1.25rem}.policy-title{font-size:1.25rem}.policy-text{font-size:.95rem}}@media (prefers-reduced-motion: reduce){.policy-section{transition:none}}@media (prefers-contrast: high){.policy-section{border:2px solid currentColor}.policy-item-highlight{border-width:3px}}.pet-friendly-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px #0000001a}.pet-friendly-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid var(--color-primary)}.pet-icon-wrapper{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--color-primary);border-radius:50%;color:var(--color-white);font-size:2rem;flex-shrink:0}.pet-header-content{flex:1}.pet-title{margin:0 0 .25rem;font-size:2rem;font-weight:700;color:var(--color-text-dark)}.pet-subtitle{margin:0;font-size:1.1rem;color:var(--color-text)}.pet-section-title{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--color-text-dark)}.pet-costs-section{margin-bottom:2rem}.pet-costs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.pet-cost-card{background:var(--color-white);border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease}.pet-cost-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.pet-cost-label{margin:0 0 .5rem;font-size:1rem;font-weight:500;color:var(--color-text)}.pet-cost-amount{margin:0;font-size:2rem;font-weight:700;color:var(--color-primary)}.pet-deposit-section{margin-bottom:2rem}.pet-deposit-card{background:var(--color-white);border-radius:8px;padding:1.5rem;text-align:center;margin-bottom:1rem;box-shadow:0 2px 4px #0000001a}.pet-deposit-amount{margin:0 0 .25rem;font-size:2.5rem;font-weight:700;color:var(--color-success, #28a745)}.pet-deposit-description{margin:0;font-size:1rem;color:var(--color-text)}.pet-deposit-conditions{background:var(--color-white);border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.pet-conditions-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--color-text-dark)}.pet-conditions-list{list-style:none;padding:0;margin:0}.pet-condition-item{padding:.5rem 0 .5rem 1.5rem;position:relative;font-size:.95rem;line-height:1.5;color:var(--color-text)}.pet-condition-item:before{content:"✓";position:absolute;left:0;color:var(--color-success, #28a745);font-weight:700}.pet-rules-section{background:var(--color-white);border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.pet-rules-list{list-style:none;padding:0;margin:0}.pet-rule-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--color-border, #e0e0e0)}.pet-rule-item:last-child{border-bottom:none}.pet-rule-bullet{font-size:1.25rem;flex-shrink:0;line-height:1.5}.pet-rule-text{flex:1;font-size:1rem;line-height:1.6;color:var(--color-text)}@media (max-width: 768px){.pet-friendly-section{padding:1.5rem}.pet-friendly-header{gap:1rem}.pet-icon-wrapper{width:56px;height:56px;font-size:1.75rem}.pet-title{font-size:1.5rem}.pet-subtitle{font-size:1rem}.pet-costs-grid{grid-template-columns:1fr}.pet-deposit-amount{font-size:2rem}}@media (prefers-reduced-motion: reduce){.pet-cost-card{transition:none}}@media (prefers-contrast: high){.pet-friendly-section{border:2px solid currentColor}.pet-cost-card,.pet-deposit-card,.pet-deposit-conditions,.pet-rules-section{border:1px solid currentColor}}.menu-card{height:100%;display:flex;flex-direction:column;text-align:left}.menu-icon-wrapper{display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem 1rem;background:linear-gradient(135deg,var(--bg-light) 0%,var(--white) 100%)}.menu-icon{font-size:3rem;color:var(--primary-color);transition:var(--transition)}.menu-card:hover .menu-icon{transform:scale(1.1);color:var(--secondary-color)}.menu-card .card-content{flex:1;display:flex;flex-direction:column;padding:1rem 1.5rem 1.5rem}.menu-items-list{list-style:none;padding:0;margin:1rem 0 0}.menu-item{padding:1rem 0;border-bottom:1px solid var(--border-color)}.menu-item:last-child{border-bottom:none}.menu-item-name{font-size:1.125rem;font-weight:600;color:var(--text-dark);margin:0 0 .5rem}.menu-item-description{font-size:.9375rem;color:var(--text-light);margin:0 0 .75rem;line-height:1.5}.menu-item-accompaniments{margin-top:.75rem}.accompaniments-label{font-size:.875rem;font-weight:600;color:var(--text-dark);display:block;margin-bottom:.5rem}.accompaniments-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}.accompaniments-list li{font-size:.875rem;color:var(--text-light);background:var(--bg-light);padding:.25rem .75rem;border-radius:var(--border-radius);border:1px solid var(--border-color)}.menu-item-category{display:inline-block;font-size:.75rem;font-weight:600;color:var(--primary-color);background:var(--bg-light);padding:.25rem .75rem;border-radius:var(--border-radius);margin-top:.5rem;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 480px){.menu-icon{font-size:2.5rem}.menu-icon-wrapper{padding:1.5rem 1rem .75rem}.menu-item-name{font-size:1rem}.accompaniments-list{flex-direction:column;gap:.25rem}}.policies-hero{background:linear-gradient(135deg,var(--color-primary, #2c5f2d) 0%,#1a3a1b 100%);color:#fff;padding:3rem 0;text-align:center}.policies-main-title{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.policies-main-subtitle{font-size:1.1rem;opacity:.9;font-weight:400}.checkin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.checkin-card{background:var(--color-white);border:1px solid #e5e7eb}.checkin-times{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0}.time-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:4px}.time-label{font-weight:500;color:#374151;font-size:.95rem}.time-value{font-size:1.1rem;font-weight:600;color:var(--color-primary)}.checkin-note{margin-top:.75rem;padding:.75rem;background:#f0f9ff;border-left:3px solid #0ea5e9;border-radius:4px;font-size:.9rem;line-height:1.4}.breakfast-card{max-width:800px;margin:1.5rem auto}.breakfast-schedule{text-align:center;padding:1.5rem;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%);border-radius:6px;margin-bottom:1.5rem}.breakfast-time{margin:0 0 .25rem;font-size:2rem;font-weight:600;color:var(--color-white)}.breakfast-subtitle{margin:0;font-size:1rem;color:var(--color-white);opacity:.9}.breakfast-instructions{list-style:none;padding:0;margin:0}.breakfast-instruction{padding:.75rem;margin-bottom:.5rem;background:#f9fafb;border-radius:4px;border-left:3px solid var(--color-primary);font-size:.95rem;line-height:1.5}.breakfast-instruction:last-child{margin-bottom:0}.rules-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.discounts-card{max-width:800px;margin:1.5rem auto}.discounts-list{list-style:none;padding:0;margin:0 0 1.5rem}.discounts-list li{padding:.75rem;margin-bottom:.5rem;background:#d1fae5;border-left:3px solid #10b981;border-radius:4px;font-size:1rem;font-weight:500}.discounts-list li:last-child{margin-bottom:0}.discounts-restrictions{padding:1rem;background:#fef3c7;border-radius:4px;border-left:3px solid #f59e0b}.discounts-restrictions h4{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#78350f}.discounts-restrictions ul{margin:0;padding-left:1.25rem}.discounts-restrictions li{margin-bottom:.4rem;font-size:.9rem;line-height:1.4;color:#78350f}.discounts-restrictions li:last-child{margin-bottom:0}.section-icon{margin-right:.75rem;color:var(--color-primary);vertical-align:middle}@media (max-width: 768px){.policies-main-title{font-size:2rem}.policies-main-subtitle{font-size:1rem}.checkin-grid{grid-template-columns:1fr;gap:1rem}.time-item{flex-direction:column;gap:.4rem;text-align:center}.breakfast-time{font-size:1.75rem}.breakfast-subtitle,.discounts-list li{font-size:.95rem}}@media (max-width: 480px){.policies-hero{padding:2rem 0}.policies-main-title{font-size:1.75rem}.checkin-note{font-size:.85rem}.breakfast-schedule{padding:1.25rem}.breakfast-time{font-size:1.75rem}.breakfast-instruction{font-size:.95rem}}@media (prefers-reduced-motion: reduce){.checkin-card{transition:none}}@media (prefers-contrast: high){.checkin-card,.breakfast-card,.discounts-card{border:2px solid currentColor}.time-item,.breakfast-instruction,.discounts-list li{border-width:2px}}.menu-section{margin-top:3rem}.menu-section-title{font-size:2rem;font-weight:700;color:var(--color-text-dark);text-align:center;margin:0 0 .5rem}.menu-section-subtitle{font-size:1.125rem;color:var(--color-text-light);text-align:center;margin:0 0 2rem}.menu-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-top:2rem}.menu-sides-beverages{display:flex;flex-direction:column;gap:2rem}.menu-extras-card{background:var(--color-white)}.menu-extras-card .card-title{font-size:1.25rem;font-weight:600;color:var(--color-text-dark);margin:0 0 1rem}.extras-list{list-style:none;padding:0;margin:0}.extras-list li{padding:.75rem;margin-bottom:.5rem;background:var(--color-background, #f8f9fa);border-radius:6px;border-left:3px solid var(--color-primary);font-size:.95rem;line-height:1.5}.extras-list li:last-child{margin-bottom:0}.menu-notes{margin-top:2rem;padding:1.5rem;background:var(--color-info-light, #d1ecf1);border-radius:8px;border-left:4px solid var(--color-info, #17a2b8);text-align:center}.menu-note{margin:.5rem 0;font-size:.95rem;color:var(--color-text);line-height:1.6}.menu-note:first-child{margin-top:0}.menu-note:last-child{margin-bottom:0}@media (max-width: 1024px){.menu-grid{grid-template-columns:1fr}.menu-sides-beverages{flex-direction:row}}@media (max-width: 768px){.menu-section-title{font-size:1.75rem}.menu-section-subtitle{font-size:1rem}.menu-sides-beverages{flex-direction:column;gap:1.5rem}}@media (max-width: 480px){.menu-section-title{font-size:1.5rem}.menu-notes{padding:1rem}.menu-note{font-size:.875rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #2c5530;--secondary-color: #8b4513;--accent-color: #a67c52;--text-dark: #2d3748;--text-light: #5a6c7d;--bg-light: #f7fafc;--white: #ffffff;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--border-radius: 8px;--transition: all .3s ease}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:var(--text-dark);background-color:var(--white)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:var(--border-radius);font-weight:500;text-decoration:none;text-align:center;cursor:pointer;transition:var(--transition);font-size:1rem}.btn-primary{background-color:var(--primary-color);color:var(--white);box-shadow:0 4px 14px #2c553063}.btn-primary:hover{background-color:#1e3a21;transform:translateY(-2px);box-shadow:0 6px 20px #2c553080}.btn-secondary{background-color:#ffffffe6;color:var(--primary-color);border:2px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background-color:var(--white);color:var(--primary-color);transform:translateY(-2px);box-shadow:0 6px 20px #ffffff4d}.section{padding:4rem 0}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:1rem;color:var(--text-dark)}.section-subtitle{font-size:1.125rem;text-align:center;color:var(--text-light);margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.grid{display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.card{background:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;transition:var(--transition)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-image{width:100%;height:200px;object-fit:cover;background:var(--bg-light)}.card-content{padding:1.5rem}.card-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-dark)}.card-text{color:var(--text-light);margin-bottom:1rem}.error-fallback{text-align:center;padding:3rem 1rem;background:var(--bg-light);border-radius:var(--border-radius);margin:2rem auto;max-width:500px}.error-fallback h2{color:#e53e3e;margin-bottom:1rem}.error-fallback p{color:var(--text-light);margin-bottom:1.5rem}.image-error{display:flex;align-items:center;justify-content:center;height:100%;background:var(--bg-light);color:var(--text-light);font-size:.875rem}@media (max-width: 768px){.section-title{font-size:2rem}.container{padding:0 .75rem}.section{padding:2rem 0}}.lazy-image{opacity:0;transition:opacity .3s;max-width:100%;max-height:100%;object-fit:contain}.lazy-image.loaded{opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn:focus,a:focus{outline:2px solid var(--primary-color);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:var(--primary-color);color:var(--white);padding:8px;text-decoration:none;z-index:1000}.skip-link:focus{top:6px}
