:root{--espresso: #2E1F14;--espresso-soft: #3E2B1B;--caramel: #C98F4E;--caramel-ink: #8A5E2A;--cream: #FBF4EA;--cream-deep: #F3E7D7;--foam: #FFFDF8;--terra: #B4552E;--terra-ink: #A34A26;--text-primary: #2E1F14;--text-secondary: #5C4A3B;--text-on-dark: #F5E9DA;--text-on-dark-soft: #D9C6B2;--white: #FFFFFF;--radius: 22px;--radius-lg: 24px;--radius-sm: 14px;--shadow-soft: 0 6px 24px rgba(46, 31, 20, .08);--shadow-medium: 0 14px 40px rgba(46, 31, 20, .13);--shadow-deep: 0 22px 55px rgba(46, 31, 20, .18)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;color:var(--text-primary);line-height:1.75;background-color:var(--cream);font-weight:400;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:Fraunces,serif;font-weight:550;line-height:1.22}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 2rem}.header{background:#fffdf8f0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1rem 0;position:sticky;top:0;z-index:200;border-bottom:1px solid rgba(46,31,20,.08);transition:box-shadow .35s ease,padding .35s ease}.header.hdr-scrolled{box-shadow:0 10px 30px #2e1f141a;padding:.7rem 0}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}.logo{font-family:Fraunces,serif;font-weight:600;font-size:1.5rem;color:var(--espresso);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}.header-right{display:flex;align-items:center;gap:1.6rem}.header-phone{color:var(--text-secondary);text-decoration:none;font-size:.92rem;font-weight:700}.header-phone:hover{color:var(--terra-ink)}.header-cta{background:var(--terra);color:var(--white);padding:.68rem 1.5rem;text-decoration:none;font-size:.88rem;font-weight:700;border-radius:999px;transition:transform .25s ease,background .25s ease}.header-cta:hover{background:var(--espresso);transform:translateY(-2px)}body .bizdir-breadcrumbs{background:var(--cream-deep);border-bottom:1px solid rgba(46,31,20,.07);color:var(--text-secondary);font-size:.8rem}body .bizdir-crumb a:hover{color:var(--terra-ink);opacity:1}body .bizdir-crumb--current{color:var(--espresso)}body .bizdir-type-tags{background:var(--cream-deep);margin:0;padding:.55rem max(2rem,calc((100vw - 1160px)/2 + 2rem)) .75rem}body .bizdir-type-tags .bizdir-type-tag{background:var(--foam);color:var(--caramel-ink);border:1px solid rgba(138,94,42,.35);font-weight:700}.hero{padding:clamp(3rem,7vw,5.5rem) 0;background:linear-gradient(180deg,var(--foam) 0%,var(--cream) 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,4.5rem);align-items:center}.hero-text,.hero-content{max-width:500px}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--cream-deep);color:var(--caramel-ink);padding:.45rem 1.05rem;border-radius:999px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.4rem;border:1px solid rgba(138,94,42,.25)}.hero-badge svg{width:14px;height:14px}.hero-title{font-size:clamp(2.3rem,4.6vw,3.5rem);color:var(--espresso);margin-bottom:1.2rem;letter-spacing:-.01em;text-wrap:balance}.hero-description{font-size:1.05rem;color:var(--text-secondary);margin-bottom:1.6rem;line-height:1.8}.hero-desc-wrap{color:var(--text-secondary)}.hero-desc-wrap .hero-about-title{color:var(--espresso)}body .hero .hero-desc-toggle{color:var(--terra-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}.hero-rating{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.stars{color:var(--caramel-ink);font-size:1.1rem;letter-spacing:3px}.rating-text{color:var(--text-secondary);font-size:.92rem;font-weight:600}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.btn-primary{display:inline-block;background:var(--terra);color:var(--white);padding:.95rem 2.2rem;text-decoration:none;font-size:.92rem;font-weight:700;border-radius:999px;transition:transform .25s ease,background .25s ease;box-shadow:var(--shadow-soft)}.btn-primary:hover{background:var(--espresso);transform:translateY(-3px)}.btn-secondary{display:inline-block;background:transparent;color:var(--espresso);padding:.95rem 2.2rem;text-decoration:none;font-size:.92rem;font-weight:700;border-radius:999px;border:2px solid var(--espresso);transition:background .25s ease,color .25s ease,transform .25s ease}.btn-secondary:hover{background:var(--espresso);color:var(--cream);transform:translateY(-3px)}.hero-image{position:relative}.hero-image:before{content:"";position:absolute;inset:-14px -14px 14px 14px;background:var(--cream-deep);border-radius:var(--radius-lg);transform:rotate(-2deg)}.hero-image img{position:relative;width:100%;height:460px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);display:block}.hero-image-placeholder{position:relative;width:100%;height:460px;background:linear-gradient(145deg,var(--caramel) 0%,var(--espresso-soft) 100%);border-radius:var(--radius-lg)}.hero-float-card{position:absolute;bottom:-22px;left:22px;z-index:2;background:var(--foam);padding:1.15rem 1.5rem;border-radius:var(--radius-sm);box-shadow:var(--shadow-medium);display:flex;align-items:center;gap:1rem;border:1px solid rgba(46,31,20,.06)}.float-card-icon{width:46px;height:46px;background:var(--cream-deep);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.float-card-icon svg{width:22px;height:22px;stroke:var(--terra-ink)}.float-card-text{font-weight:800;color:var(--espresso);font-size:.9rem;line-height:1.4}.float-card-text span{display:block;font-family:Fraunces,serif;font-style:italic;font-weight:500;color:var(--caramel-ink);font-size:.85rem}.mq-band{background:var(--caramel);color:var(--espresso);overflow:hidden;padding:.8rem 0;white-space:nowrap}.mq-track{display:inline-flex;gap:3rem;padding-right:3rem;animation:mq-scroll 30s linear infinite;will-change:transform}.mq-track span{font-family:Fraunces,serif;font-style:italic;font-size:.95rem;font-weight:500;letter-spacing:.06em;display:inline-flex;align-items:center;gap:3rem}.mq-track span:after{content:"\274b";font-size:.8rem;font-style:normal}@keyframes mq-scroll{to{transform:translate(-50%)}}.stats-band{background:var(--espresso);padding:3.4rem 0}.stats-band .container{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:2rem;text-align:center}.stat-num{font-family:Fraunces,serif;font-weight:550;font-size:clamp(2.3rem,5vw,3.4rem);color:var(--caramel);line-height:1}.stat-lbl{margin-top:.55rem;font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--text-on-dark-soft)}.section-header{text-align:center;max-width:620px;margin:0 auto clamp(2.5rem,5vw,3.5rem)}.section-tagline{font-family:Fraunces,serif;font-style:italic;font-weight:500;font-size:1.1rem;letter-spacing:.02em;text-transform:none;color:var(--terra-ink);margin-bottom:.5rem;display:block}.section-title{font-size:clamp(1.9rem,3.6vw,2.7rem);color:var(--espresso);margin-bottom:1rem;text-wrap:balance}.section-description{color:var(--text-secondary);font-size:1.02rem}.menu{padding:clamp(4rem,8vw,6rem) 0;background:var(--cream-deep)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem}.menu-card{background:var(--foam);border-radius:var(--radius);padding:2.4rem 2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(46,31,20,.05);box-shadow:var(--shadow-soft)}.menu-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-medium)}.menu-icon{width:74px;height:74px;margin:0 auto 1.4rem;background:var(--cream-deep);border-radius:50%;display:flex;align-items:center;justify-content:center}.menu-icon svg{width:32px;height:32px;stroke:var(--terra-ink)}.menu-name{font-family:Fraunces,serif;font-weight:550;font-size:1.45rem;color:var(--espresso);margin-bottom:.7rem}.menu-description{color:var(--text-secondary);font-size:.96rem;line-height:1.7}.story{padding:clamp(4rem,8vw,6rem) 0;background:var(--foam)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,4.5rem);align-items:center}.story-image{position:relative}.story-image img{width:100%;height:430px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);display:block}.story-image-placeholder{width:100%;height:430px;background:linear-gradient(145deg,var(--caramel) 0%,var(--espresso-soft) 100%);border-radius:var(--radius-lg)}.story-content{max-width:480px}.story-content .section-tagline{text-align:left}.story-title{font-size:clamp(1.8rem,3.4vw,2.4rem);color:var(--espresso);margin-bottom:1.2rem}.story-text{color:var(--text-secondary);margin-bottom:1.4rem;font-size:1.02rem;line-height:1.8}.story-features{list-style:none;margin-top:1.8rem;display:flex;flex-wrap:wrap;gap:.9rem}.story-features li{display:flex;align-items:center;gap:.55rem;color:var(--espresso);font-size:.9rem;font-weight:700;background:var(--cream-deep);padding:.5rem 1.1rem;border-radius:999px;border:1px solid rgba(46,31,20,.06)}.feature-check{width:19px;height:19px;background:var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-check svg{width:10px;height:10px;stroke:var(--white)}.gallery-section{padding:clamp(4rem,8vw,6rem) 0;background:var(--cream)}body .gallery-section .bizdir-sec-tagline{color:var(--terra-ink)!important}body .gallery-section .bizdir-sec-title{color:var(--espresso)!important;font-family:Fraunces,serif!important}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:200px;grid-auto-flow:dense;gap:1rem}.gallery-item{position:relative;overflow:hidden;border-radius:20px;cursor:pointer;grid-column:span 2;background:var(--cream-deep);box-shadow:var(--shadow-soft)}.gallery-item:nth-child(5n+1){grid-column:span 3;grid-row:span 2}.gallery-item:nth-child(5n+3){grid-row:span 2}.gallery-item:nth-child(5n+5){grid-column:span 3}.gallery-item img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:transform .45s ease;display:block}.gallery-item:hover img{transform:scale(1.05)}.gallery-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#2e1f14d1);color:var(--text-on-dark);padding:1.6rem 1rem .75rem;font-size:.86rem}.gallery-video-item{position:relative}.video-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#2e1f1461;z-index:1;pointer-events:none}.reviews-section{padding:clamp(4rem,8vw,6rem) 0;background:var(--cream-deep)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.6rem}.review-card{background:var(--foam);padding:1.9rem 1.8rem;border-radius:var(--radius);box-shadow:var(--shadow-soft);border:1px solid rgba(46,31,20,.05)}.review-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.reviewer-photo{width:48px;height:48px;border-radius:50%;object-fit:cover}.reviewer-photo-placeholder{width:48px;height:48px;border-radius:50%;background:var(--espresso);color:var(--caramel);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;font-family:Fraunces,serif;flex-shrink:0}.reviewer-info{flex:1;min-width:0}.reviewer-name{margin:0;font-size:1.05rem;color:var(--espresso);font-family:Fraunces,serif;font-weight:550}.local-guide-badge{font-size:.7rem;font-weight:800;color:var(--terra-ink);display:block}.review-date{font-size:.75rem;color:var(--text-secondary)}.review-rating{margin-bottom:.75rem;letter-spacing:2px}.review-rating .star{font-size:.95rem;color:#2e1f1440}.review-rating .star.filled{color:var(--caramel-ink)}.review-text{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem;font-size:.95rem}.owner-response{background:var(--cream-deep);padding:1rem 1.1rem;border-radius:var(--radius-sm);border-left:3px solid var(--caramel-ink);margin-top:1rem}.owner-response strong{color:var(--caramel-ink);font-size:.85rem}.owner-response p{margin:.5rem 0 0;color:var(--text-secondary);font-size:.9rem}.review-photos{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.review-photo{width:66px;height:66px;object-fit:cover;border-radius:12px;cursor:pointer;transition:transform .2s ease}.review-photo:hover{transform:scale(1.05)}.testimonial{padding:clamp(3.5rem,7vw,5rem) 0;background:var(--espresso);text-align:center}.testimonial-content{max-width:680px;margin:0 auto}.testimonial-quote{font-family:Fraunces,serif;font-style:italic;font-weight:450;font-size:clamp(1.3rem,2.6vw,1.75rem);color:var(--text-on-dark);margin-bottom:1.4rem;line-height:1.55}.testimonial-author{color:var(--caramel);font-size:.85rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.contact{padding:clamp(4rem,8vw,6rem) 0;background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,4rem);align-items:start}.contact-info h2{font-size:clamp(1.8rem,3.4vw,2.4rem);color:var(--espresso);margin-bottom:1rem}.contact-info>p{color:var(--text-secondary);margin-bottom:2rem}.contact-details{margin-bottom:2rem}.contact-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.contact-icon{width:46px;height:46px;background:var(--espresso);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon svg{width:20px;height:20px;stroke:var(--caramel)}.contact-item-content h3,.contact-item-content h4{font-family:Nunito,sans-serif;font-size:.78rem;font-weight:800;color:var(--caramel-ink);margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.08em}.contact-item-content p,.contact-item-content a,.contact-item-content address{color:var(--text-secondary);text-decoration:none;font-size:.95rem}.contact-item-content a:hover{color:var(--terra-ink)}.map-container{margin-top:1.5rem;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}.map-container iframe{display:block;width:100%;height:460px;border:none}.contact-form-wrapper{background:var(--foam);padding:clamp(1.8rem,4vw,2.6rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);border:1px solid rgba(46,31,20,.06)}.contact-form-wrapper h3{font-size:1.65rem;color:var(--espresso);margin-bottom:.5rem}.contact-form-wrapper>p{color:var(--text-secondary);margin-bottom:1.7rem;font-size:.95rem}.form-group{margin-bottom:1.2rem}.form-label{display:block;font-size:.8rem;font-weight:800;color:var(--espresso);margin-bottom:.45rem;letter-spacing:.03em}.form-control{width:100%;padding:.85rem 1.1rem;font-size:.95rem;font-family:inherit;color:var(--text-primary);background:var(--white);border:1px solid rgba(46,31,20,.14);border-radius:var(--radius-sm);transition:border-color .25s ease,box-shadow .25s ease}.form-control::placeholder{color:#8c7b6c}.form-control:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3px #b4552e29}textarea.form-control{min-height:110px;resize:vertical}.form-submit{width:100%;background:var(--terra);color:var(--white);padding:1rem;border:none;font-family:inherit;font-size:.92rem;font-weight:700;border-radius:999px;cursor:pointer;transition:background .25s ease,transform .25s ease;margin-top:.4rem}.form-submit:hover{background:var(--espresso);transform:translateY(-2px)}.subsite-share-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-sm);border:1px solid rgba(46,31,20,.14);background:var(--foam);color:var(--text-secondary);font-size:1.1rem;transition:transform .2s ease,box-shadow .2s ease;text-decoration:none;cursor:pointer}.subsite-share-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.subsite-share-btn.fb:hover{color:#1877f2;border-color:#1877f2}.subsite-share-btn.tw:hover{color:#1da1f2;border-color:#1da1f2}.subsite-share-btn.wa:hover{color:#128c4b;border-color:#25d366}.subsite-share-btn.lk:hover{color:var(--terra-ink);border-color:var(--terra)}.footer{background:var(--espresso);color:var(--text-on-dark-soft);padding:3rem 0;text-align:center}.footer-logo{font-family:Fraunces,serif;font-style:italic;font-weight:500;font-size:1.55rem;color:var(--caramel);margin-bottom:.75rem}.footer p{color:#ffffffd9;font-size:.85rem}.lightbox{display:none;position:fixed;inset:0;background:#1e140df0;z-index:1000;justify-content:center;align-items:center;cursor:pointer;padding:2rem}.lightbox.active{display:flex}.lightbox img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:var(--radius-sm)}.lightbox-close{position:absolute;top:1.2rem;right:1.8rem;color:var(--caramel);font-size:2.4rem;cursor:pointer;line-height:1;visibility:hidden}.lightbox.active .lightbox-close{visibility:visible}.maction{display:none;position:fixed;left:0;right:0;bottom:0;z-index:300;background:#2e1f14f0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:.65rem .9rem calc(.65rem + env(safe-area-inset-bottom));gap:.7rem}.maction a{flex:1;text-align:center;padding:.85rem 0;border-radius:999px;font-size:.85rem;font-weight:800;text-decoration:none}.maction .ma-call{border:1px solid rgba(251,244,234,.45);color:var(--text-on-dark)}.maction .ma-visit{background:var(--caramel);color:var(--espresso)}.to-top{position:fixed;right:1.4rem;bottom:1.4rem;z-index:290;width:48px;height:48px;border-radius:50%;background:var(--terra);color:var(--white);border:none;cursor:pointer;font-size:1.2rem;box-shadow:var(--shadow-deep);opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease}.to-top.show{opacity:1;pointer-events:auto;transform:none}@media (prefers-reduced-motion: reduce){.mq-track{animation:none}.to-top{transition:none}html{scroll-behavior:auto}}@media (max-width: 992px){.hero-grid{grid-template-columns:1fr}.hero-text{max-width:100%;text-align:center}.hero-image{order:-1}.hero-image img,.hero-image-placeholder{height:340px}.hero-image:before{display:none}.hero-rating,.hero-buttons{justify-content:center}.hero-float-card{display:none}.menu-grid,.story-grid{grid-template-columns:1fr}.story-content{max-width:100%}.contact-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.gallery-item,.gallery-item:nth-child(5n+1),.gallery-item:nth-child(5n+3),.gallery-item:nth-child(5n+5){grid-column:span 1;grid-row:span 1}.gallery-item:nth-child(4n+1){grid-column:span 2}}@media (max-width: 768px){.header-cta{display:none}.maction{display:flex}body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.footer{padding-bottom:5.5rem}.to-top{bottom:5.2rem}.map-container iframe{height:340px}}@media (max-width: 480px){.container{padding:0 1.25rem}.logo{font-size:1.2rem}.btn-primary,.btn-secondary{width:100%;text-align:center}.stars{letter-spacing:2px}}
