@import url(https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Outfit:wght@300;400;500;600;700&display=swap);:root{--color-wine:#5A2D2E;--color-wine-dark:#3E1F20;--color-wine-light:#7A4344;--color-orange:#D97C2B;--color-orange-hover:#E8922F;--color-offwhite:#F7F3EF;--color-cream:#EDE8E2;--color-charcoal:#2C2C2C;--color-gray:#6B6B6B;--color-gray-light:#A0A0A0;--color-white:#FFFFFF;--color-overlay:rgba(62, 31, 32, 0.7);--font-display:'Cinzel',serif;--font-body:'Outfit',sans-serif;--text-xs:clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);--text-sm:clamp(0.875rem, 0.8rem + 0.35vw, 1rem);--text-base:clamp(1rem, 0.9rem + 0.5vw, 1.125rem);--text-lg:clamp(1.125rem, 1rem + 0.6vw, 1.25rem);--text-xl:clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);--text-2xl:clamp(1.5rem, 1.2rem + 1.5vw, 2rem);--text-3xl:clamp(2rem, 1.5rem + 2.5vw, 3rem);--text-4xl:clamp(2.5rem, 1.8rem + 3.5vw, 4rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--space-9:4rem;--space-10:5rem;--space-11:6rem;--space-12:8rem;--max-width:1200px;--container-padding:var(--space-5);--border-radius:3px;--border-radius-lg:6px;--shadow-sm:0 1px 3px rgba(44, 44, 44, 0.08);--shadow-md:0 4px 12px rgba(44, 44, 44, 0.1);--shadow-lg:0 8px 30px rgba(44, 44, 44, 0.12);--shadow-card:0 2px 16px rgba(90, 45, 46, 0.08);--transition-fast:200ms ease;--transition-base:300ms ease;--transition-slow:500ms ease;--navbar-height:72px}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--navbar-height)}body{overflow-x:hidden;font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:1.6;color:var(--color-charcoal);background-color:var(--color-offwhite);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:color var(--transition-fast)}ol,ul{list-style:none}button{cursor:pointer;border:none;background:0 0;font-family:inherit}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--container-padding)}.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}.section{padding:var(--space-11) 0}.section--alt{background-color:var(--color-white)}.section__header{text-align:center;margin-bottom:var(--space-9)}.section__title{font-family:var(--font-body);font-size:var(--text-3xl);font-weight:700;color:var(--color-wine);margin-bottom:var(--space-3);letter-spacing:-.02em}.section__subtitle{font-size:var(--text-lg);color:var(--color-gray);font-weight:400;max-width:600px;margin:0 auto}.section__divider{width:60px;height:3px;background:var(--color-orange);margin:var(--space-4) auto 0;border-radius:2px}.placeholder-img{background:var(--color-cream);display:flex;align-items:center;justify-content:center;color:var(--color-gray-light);font-size:var(--text-sm);font-weight:500;border:2px dashed rgba(160,160,160,.3);border-radius:var(--border-radius);position:relative;overflow:hidden}.placeholder-img::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(160,160,160,.05) 10px,rgba(160,160,160,.05) 20px)}.placeholder-img span{position:relative;z-index:1;background:rgba(255,255,255,.8);padding:var(--space-2) var(--space-4);border-radius:var(--border-radius);font-family:monospace}.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);z-index:1000;transition:background-color var(--transition-base),box-shadow var(--transition-base)}.navbar--transparent{background-color:transparent}.navbar--solid{background-color:var(--color-wine);box-shadow:var(--shadow-md)}.navbar__inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--container-padding)}.navbar__logo img{height:48px;width:auto}.navbar__links{display:flex;align-items:center;gap:var(--space-6)}.navbar__link{font-size:var(--text-sm);font-weight:500;color:var(--color-white);opacity:.85;transition:opacity var(--transition-fast);letter-spacing:.02em}.navbar__link:hover{opacity:1}.navbar__cta{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background-color:var(--color-orange);color:var(--color-white);font-size:var(--text-sm);font-weight:600;border-radius:var(--border-radius);transition:background-color var(--transition-fast),transform var(--transition-fast)}.navbar__cta:hover{background-color:var(--color-orange-hover);transform:translateY(-1px)}.navbar__cta svg{width:18px;height:18px}.navbar__toggle{display:none;flex-direction:column;gap:5px;padding:var(--space-2)}.navbar__toggle span{display:block;width:24px;height:2px;background:var(--color-white);transition:transform var(--transition-fast),opacity var(--transition-fast)}.navbar__toggle.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.navbar__toggle.active span:nth-child(2){opacity:0}.navbar__toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.hero__bg{position:absolute;inset:0;z-index:0}.hero__bg img{width:100%;height:100%;object-fit:cover}.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(62,31,32,.85) 0,rgba(62,31,32,.6) 50%,rgba(62,31,32,.75) 100%);z-index:1}.hero__content{position:relative;z-index:2;max-width:800px;padding:0 var(--container-padding)}.hero__logo{width:280px;max-width:80%;margin:0 auto var(--space-6)}.hero__logo .placeholder-img,.hero__logo img{width:100%}.hero__tagline{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;color:var(--color-white);margin-bottom:var(--space-3);letter-spacing:.08em;text-transform:uppercase}.hero__subtitle{font-size:var(--text-lg);color:rgba(255,255,255,.85);font-weight:300;margin-bottom:var(--space-8);line-height:1.7}.hero__cta{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-7);background-color:var(--color-orange);color:var(--color-white);font-size:var(--text-lg);font-weight:600;border-radius:var(--border-radius);transition:background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 4px 20px rgba(217,124,43,.3)}.hero__cta:hover{background-color:var(--color-orange-hover);transform:translateY(-2px);box-shadow:0 6px 24px rgba(217,124,43,.4)}.hero__cta svg{width:22px;height:22px}.hero__badges{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-top:var(--space-8);max-width:760px;margin-left:auto;margin-right:auto}.hero__badge{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-3);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--border-radius);backdrop-filter:blur(6px);transition:background var(--transition-fast),transform var(--transition-fast)}.hero__badge:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}.hero__badge svg{width:32px;height:32px;color:var(--color-white);flex-shrink:0}.hero__badge span{font-size:var(--text-sm);color:var(--color-white);font-weight:600;text-align:center;line-height:1.3}.hero__scroll{position:absolute;bottom:var(--space-7);left:50%;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.6);animation:bounce 2s infinite}.hero__scroll svg{width:28px;height:28px}@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9);align-items:center}.about__text h3{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-wine);margin-bottom:var(--space-4);font-weight:600}.about__text p{color:var(--color-gray);margin-bottom:var(--space-5);line-height:1.8}.about__highlight{display:inline-flex;align-items:center;gap:var(--space-2);background:linear-gradient(135deg,var(--color-wine),var(--color-wine-dark));color:var(--color-white);padding:var(--space-3) var(--space-5);border-radius:var(--border-radius);font-weight:600;font-size:var(--text-sm)}.about__image .placeholder-img{width:100%;aspect-ratio:4/3;border-radius:var(--border-radius-lg)}.rooms__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.room-card{background:var(--color-white);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:transform var(--transition-base),box-shadow var(--transition-base)}.room-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.room-card__image .placeholder-img{width:100%;aspect-ratio:3/2;border-radius:0;border:none}.room-card__body{padding:var(--space-5) var(--space-5) var(--space-6)}.room-card__title{font-size:var(--text-xl);font-weight:700;color:var(--color-wine);margin-bottom:var(--space-2)}.room-card__capacity{font-size:var(--text-sm);color:var(--color-gray);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.room-card__capacity svg{width:16px;height:16px;color:var(--color-orange)}.room-card__amenities{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-cream)}.room-card__amenity{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-gray)}.room-card__amenity svg{width:14px;height:14px;color:var(--color-wine-light)}.room-card__cta{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background-color:var(--color-orange);color:var(--color-white);font-size:var(--text-sm);font-weight:600;border-radius:var(--border-radius);transition:background-color var(--transition-fast),transform var(--transition-fast)}.room-card__cta:hover{background-color:var(--color-orange-hover);transform:translateY(-1px)}.room-card__cta svg{width:18px;height:18px}.room-slider{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0}.room-slider__track{display:flex;width:100%;height:100%;transition:transform .4s ease}.room-slider__track img{width:100%;height:100%;object-fit:cover;flex-shrink:0}.room-slider__btn{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.85);border:none;border-radius:50%;cursor:pointer;font-size:14px;color:var(--color-charcoal);z-index:3;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast);box-shadow:var(--shadow-sm)}.room-slider:hover .room-slider__btn{opacity:1}.room-slider__btn:hover{background:var(--color-white)}.room-slider__btn--prev{left:8px}.room-slider__btn--next{right:8px}.room-slider__dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:3}.room-slider__dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);border:none;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);padding:0}.room-slider__dot--active{background:var(--color-white);transform:scale(1.3)}.gallery-marquee{overflow:hidden;width:100%}.gallery-marquee__row{overflow:hidden;white-space:nowrap;margin-bottom:var(--space-4)}.gallery-marquee__row:last-child{margin-bottom:0}.gallery-marquee__track{display:inline-flex;gap:var(--space-4);will-change:transform}.gallery-marquee__row--left .gallery-marquee__track{animation:marquee-left 60s linear infinite}.gallery-marquee__row--right .gallery-marquee__track{animation:marquee-right 65s linear infinite}.gallery-marquee__track img{width:240px;height:320px;object-fit:cover;border-radius:var(--border-radius-lg);flex-shrink:0;transition:transform var(--transition-base),box-shadow var(--transition-base);cursor:pointer}.gallery-marquee__track img:hover{transform:scale(1.04);box-shadow:var(--shadow-lg)}@keyframes marquee-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}@keyframes marquee-right{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base)}.lightbox.active{display:flex;opacity:1}.lightbox__close{position:absolute;top:var(--space-5);right:var(--space-5);color:var(--color-white);font-size:var(--text-2xl);cursor:pointer;z-index:10;opacity:.7;transition:opacity var(--transition-fast)}.lightbox__close:hover{opacity:1}.lightbox__content{max-width:90vw;max-height:85vh}.lightbox__content .placeholder-img{max-width:90vw;max-height:85vh;border:none}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);color:var(--color-white);font-size:var(--text-2xl);cursor:pointer;opacity:.7;transition:opacity var(--transition-fast);padding:var(--space-4);z-index:10}.lightbox__nav:hover{opacity:1}.lightbox__nav--prev{left:var(--space-4)}.lightbox__nav--next{right:var(--space-4)}.google-reviews{position:relative}.google-reviews__track{display:flex;gap:var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:var(--space-2) 0}.google-reviews__track::-webkit-scrollbar{display:none}.g-review-card{flex:0 0 calc(33.333% - var(--space-5) * 2 / 3);scroll-snap-align:start;background:#f8f9fa;border-radius:12px;padding:var(--space-5);text-align:center;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.g-review-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.g-review-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:42px;height:42px;border-radius:50%;border:none;background:var(--color-white);box-shadow:0 2px 8px rgba(0,0,0,.15);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-charcoal);transition:all var(--transition-fast)}.g-review-arrow:hover{box-shadow:0 4px 14px rgba(0,0,0,.2);background:var(--color-charcoal);color:#fff}.g-review-arrow svg{width:20px;height:20px}.g-review-arrow--prev{left:-21px}.g-review-arrow--next{right:-21px}.g-review-card__header{display:flex;align-items:center;gap:10px;margin-bottom:var(--space-3)}.g-review-card__avatar{width:40px;height:40px;border-radius:50%;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.g-review-card__meta{display:flex;flex-direction:column;text-align:left;flex:1;min-width:0}.g-review-card__name{font-weight:600;font-size:var(--text-sm);color:var(--color-charcoal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.g-review-card__date{font-size:12px;color:var(--color-gray-light)}.g-review-card__google{flex-shrink:0}.g-review-card__stars{color:#fbbc04;font-size:16px;letter-spacing:2px;margin-bottom:var(--space-3);display:flex;align-items:center;justify-content:center;gap:4px}.g-review-card__verified{vertical-align:middle}.g-review-card__text{font-size:var(--text-base);color:var(--color-charcoal);line-height:1.6}.g-review-link{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--color-white);color:var(--color-charcoal);border-radius:50px;font-size:var(--text-sm);font-weight:600;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);text-decoration:none;border:1px solid var(--color-cream)}.g-review-link:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.location__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:start}.location__info h3{font-size:var(--text-xl);font-weight:700;color:var(--color-wine);margin-bottom:var(--space-5)}.location__detail{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.location__detail svg{width:20px;height:20px;color:var(--color-orange);flex-shrink:0;margin-top:2px}.location__detail p{color:var(--color-gray);line-height:1.6}.location__detail strong{color:var(--color-charcoal)}.location__map{border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.location__map iframe{width:100%;height:400px;border:none}.location__map .placeholder-img{width:100%;height:400px;border:none}.footer{background-color:var(--color-wine-dark);color:var(--color-white);padding:var(--space-5) 0}.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:var(--space-8);margin-bottom:var(--space-8);padding-bottom:var(--space-8);border-bottom:1px solid rgba(255,255,255,.1)}.footer__logo img{height:60px;margin-bottom:var(--space-4)}.footer__desc{font-size:var(--text-sm);color:rgba(255,255,255,.6);line-height:1.7;max-width:320px}.footer__col h4{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-4);color:var(--color-orange)}.footer__col a,.footer__col p{display:block;font-size:var(--text-sm);color:rgba(255,255,255,.6);margin-bottom:var(--space-3);transition:color var(--transition-fast)}.footer__col a:hover{color:var(--color-white)}.footer__bottom{text-align:center;font-size:var(--text-xs);color:rgba(255,255,255,.4)}.footer__bottom a{color:var(--color-orange);font-weight:500}.footer__bottom a:hover{color:var(--color-orange-hover)}.whatsapp-float{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:999;width:56px;height:56px;background-color:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.4);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.whatsapp-float:hover{transform:scale(1.08);box-shadow:0 6px 24px rgba(37,211,102,.5)}.whatsapp-float svg{width:28px;height:28px;fill:var(--color-white)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-weight:600;border-radius:var(--border-radius);transition:all var(--transition-fast);cursor:pointer}.btn--primary{background-color:var(--color-orange);color:var(--color-white);padding:var(--space-3) var(--space-6)}.btn--primary:hover{background-color:var(--color-orange-hover);transform:translateY(-1px)}.btn--outline{border:2px solid var(--color-wine);color:var(--color-wine);padding:var(--space-3) var(--space-6);background:0 0}.btn--outline:hover{background-color:var(--color-wine);color:var(--color-white)}@media (max-width:1024px){.rooms__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){:root{--navbar-height:64px;--container-padding:var(--space-4)}.section{padding:var(--space-8) 0}.navbar__links{position:fixed;top:var(--navbar-height);left:0;right:0;bottom:0;background:var(--color-wine-dark);flex-direction:column;justify-content:center;gap:var(--space-7);transform:translateX(100%);transition:transform var(--transition-base)}.navbar__links.active{transform:translateX(0)}.navbar__links .navbar__link{font-size:var(--text-xl)}.navbar__links .navbar__cta{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}.navbar__toggle{display:flex}.hero{min-height:100svh}.hero__content{max-width:100%}.hero__logo{width:180px}.hero__tagline{font-size:var(--text-lg)}.hero__subtitle{font-size:var(--text-base)}.hero__cta{font-size:var(--text-base);padding:var(--space-3) var(--space-6)}.hero__badges{grid-template-columns:repeat(2,1fr);gap:var(--space-3);max-width:100%;margin-top:var(--space-6)}.hero__badge{padding:var(--space-3)}.hero__badge svg{width:28px;height:28px}.hero__badge span{font-size:var(--text-xs)}.hero__scroll{display:none}.section__title{font-size:var(--text-xl)}.section__subtitle{font-size:var(--text-sm)}.about__grid{grid-template-columns:1fr;gap:var(--space-6)}.about__image{order:-1}.rooms__grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}.gallery-marquee__track img{width:180px;height:240px}.room-slider__btn{opacity:1;width:28px;height:28px;font-size:12px}.g-review-card{flex:0 0 85%}.g-review-arrow--prev{left:-4px}.g-review-arrow--next{right:-4px}.location__grid{grid-template-columns:1fr}.location__map .placeholder-img,.location__map iframe{height:280px}.footer{padding:var(--space-4) 0}.whatsapp-float{bottom:var(--space-4);right:var(--space-4);width:50px;height:50px}}@media (max-width:480px){.hero__badges{gap:var(--space-2)}.hero__badge svg{width:24px;height:24px}.hero__badge span{font-size:11px}.gallery-marquee__track img{width:150px;height:200px}.room-card__body{padding:var(--space-4)}}