:root{--nav-height:88px;--color-ink:#26211d;--color-muted:#6b6258;--color-accent:#8b5e34;--color-accent-strong:#6f4722;--color-sand:#f6efe6;--color-cream:#fffaf4;--color-border:#634a3024;--shadow-soft:0 18px 48px #2b201614;--shadow-card:0 14px 34px #3c2a1714}html{scroll-behavior:smooth}body{color:var(--color-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#ceaa8129,#0000 32%),linear-gradient(#fffdf9 0%,#fffaf4 100%);margin:0;font-family:Avenir Next,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}a,button,input,textarea,select{font:inherit}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--color-ink);line-height:1.6}.app{width:100%;padding-top:var(--nav-height);overflow-x:hidden}.container{width:min(1180px,100% - 2.5rem);margin:0 auto;padding:0}section{padding:clamp(4.5rem,8vw,6.5rem) 0}.route-loader{min-height:50vh;color:var(--color-muted);justify-content:center;align-items:center;font-weight:600;display:flex}.section-kicker{width:fit-content;color:var(--color-accent-strong);letter-spacing:.14em;text-transform:uppercase;background:#8b5e341f;border-radius:999px;margin:0 auto 1rem;padding:.4rem .85rem;font-size:.78rem;font-weight:700;display:block}.section-title{text-align:center;color:var(--color-ink);margin-bottom:.9rem;font-size:clamp(2.4rem,5vw,4rem);line-height:.95}.section-subtitle{text-align:center;max-width:720px;color:var(--color-muted);margin:0 auto 3.5rem;font-size:clamp(1rem,2vw,1.16rem)}@media (max-width:768px){.app{padding-top:80px}.container{width:min(100% - 1.5rem,1180px)}.section-kicker{margin-bottom:.85rem}.section-subtitle{margin-bottom:2.5rem}}@media (max-width:480px){.app{padding-top:76px}}.navbar{z-index:1000;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffbf5db;border-bottom:1px solid #6d4e2b1a;width:100%;padding:1rem 0;position:fixed;top:0;left:0;box-shadow:0 10px 30px #39291914}.nav-container{justify-content:space-between;align-items:center;gap:1.5rem;width:min(1180px,100% - 2.5rem);margin:0 auto;display:flex}.logo-container{z-index:1003;align-items:center;text-decoration:none;display:flex;position:relative}.logo{flex-direction:column;margin:0;line-height:1;display:flex}.logo-main{color:var(--color-accent-strong);letter-spacing:.18em;font-size:2rem;font-weight:700}.logo-sub{color:var(--color-muted);letter-spacing:.3em;text-transform:uppercase;margin-top:.2rem;margin-left:.15rem;font-size:.72rem;font-weight:700}.nav-panel{align-items:center;gap:2rem;display:flex}.nav-menu{align-items:center;gap:1.5rem;list-style:none;display:flex}.nav-menu a{color:var(--color-ink);font-size:.98rem;font-weight:600;text-decoration:none;transition:color .25s;position:relative}.nav-menu a:after{content:"";transform-origin:0;background:var(--color-accent);width:100%;height:2px;transition:transform .25s;position:absolute;bottom:-.35rem;left:0;transform:scaleX(0)}.nav-menu a:hover,.nav-menu a:focus-visible{color:var(--color-accent-strong)}.nav-menu a:hover:after,.nav-menu a:focus-visible:after{transform:scaleX(1)}.nav-cta{background:var(--color-accent-strong);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:.8rem 1.2rem;font-weight:700;text-decoration:none;transition:transform .25s,background .25s;display:inline-flex;box-shadow:0 12px 24px #6f472238}.nav-cta:hover,.nav-cta:focus-visible{background:var(--color-accent);transform:translateY(-1px)}.nav-toggle,.nav-backdrop{display:none}@media (max-width:900px){.nav-container{width:min(100% - 1.5rem,1180px)}.nav-toggle{z-index:1003;width:46px;height:46px;color:var(--color-ink);cursor:pointer;background:#ffffffdb;border:1px solid #6f472224;border-radius:14px;justify-content:center;align-items:center;display:inline-flex;position:relative}.nav-panel{top:calc(var(--nav-height) - 10px);opacity:0;pointer-events:none;z-index:1002;background:linear-gradient(#fffbf5fa 0%,#f9efe4fa 100%);border:1px solid #6f47221f;border-radius:20px;flex-direction:column;align-items:stretch;gap:1rem;width:auto;max-height:min(78vh,560px);padding:1rem 1rem 1.2rem;transition:opacity .2s,transform .2s;display:flex;position:fixed;left:.75rem;right:.75rem;overflow-y:auto;transform:translateY(-16px)scale(.98);box-shadow:0 24px 60px #281b0d38}.nav-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.nav-menu{flex-direction:column;align-items:stretch;gap:.35rem}.nav-menu a{background:#ffffffb8;border-radius:14px;padding:.9rem .95rem;display:block}.nav-menu a:after{display:none}.nav-cta{width:100%}.nav-backdrop{top:var(--nav-height);z-index:1001;cursor:default;background:#1e120857;border:0;display:block;position:fixed;bottom:0;left:0;right:0}}@media (max-width:480px){.logo-main{font-size:1.5rem}.logo-sub{letter-spacing:.24em;font-size:.6rem}.nav-panel{top:calc(var(--nav-height) - 8px);border-radius:18px;left:.5rem;right:.5rem}}.hero{min-height:calc(100vh - var(--nav-height));background:linear-gradient(105deg,#1c1510d1 0%,#1c15107a 45%,#1c15104d 100%),var(--hero-image)center/cover;color:#fff}.hero-overlay{min-height:calc(100vh - var(--nav-height));align-items:flex-start;display:flex}.hero-content{width:min(1180px,100% - 2.5rem);margin:0 auto;padding:clamp(1rem,2.5vw,2rem) 0 clamp(2rem,5vw,4rem)}.hero-title{text-wrap:balance;max-width:800px;margin-bottom:3.1rem;font-size:clamp(6.5rem,14vw,6rem);line-height:.92}.hero-subtitle{color:#fff8f0e0;max-width:620px;margin-bottom:2rem;font-size:clamp(1.05rem,2.4vw,1.35rem)}.hero-actions{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.cta-button{background:var(--color-accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:.95rem 1.5rem;font-size:1rem;font-weight:700;text-decoration:none;transition:transform .25s,background .25s,border-color .25s;display:inline-flex;box-shadow:0 14px 28px #00000038}.cta-button:hover,.cta-button:focus-visible{background:#a56c3b;transform:translateY(-2px)}.cta-button-secondary{background:#ffffff14;border:1px solid #fff3}.cta-button-secondary:hover,.cta-button-secondary:focus-visible{background:#ffffff2e}.hero-highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:820px;display:grid}.hero-highlight-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf41f;border:1px solid #ffffff1f;border-radius:22px;padding:1.1rem 1.2rem}.hero-highlight-value{margin-bottom:.3rem;font-size:1.65rem;font-weight:700;display:block}.hero-highlight-label{color:#fff6ecd1;font-size:.92rem}@media (max-width:768px){.hero,.hero-overlay{min-height:auto}.hero-content{width:min(100% - 1.5rem,1180px);padding:1rem 0 2.5rem}.hero-highlights{grid-template-columns:1fr}}@media (max-width:480px){.hero-title{margin-bottom:60px;font-size:2rem}.hero-subtitle{margin-bottom:1.5rem}.hero-actions{flex-direction:column}.cta-button{width:100%}.hero-highlight-card{border-radius:18px}}.rooms-section{background:radial-gradient(circle at 100% 0,#c49f772e,#0000 28%),linear-gradient(#fbf6f0 0%,#f6efe6 100%)}.rooms-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.room-card{border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fffcf7eb;border-radius:26px;transition:transform .3s,box-shadow .3s;overflow:hidden}.room-card:hover{transform:translateY(-8px);box-shadow:0 24px 44px #4f372024}.room-image{height:260px;position:relative}.room-image img{object-fit:cover;width:100%;height:100%;display:block}.room-image:after{content:"";background:linear-gradient(#0000 46%,#18110c94 100%);position:absolute;inset:0}.room-image-badge{z-index:1;color:var(--color-accent-strong);background:#fffaf4eb;border-radius:999px;padding:.45rem .8rem;font-size:.82rem;font-weight:700;position:absolute;bottom:1rem;left:1rem}.room-content{padding:1.5rem}.room-meta-row{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.room-meta-divider{background:#6b625873;border-radius:50%;width:5px;height:5px}.room-name{color:var(--color-ink);margin:.45rem 0 .65rem;font-size:2rem}.room-size{color:var(--color-muted)}.room-description{color:var(--color-muted);margin-bottom:1rem;line-height:1.6}.room-feature-list{flex-wrap:wrap;gap:.6rem;display:flex}.room-feature-chip{color:var(--color-accent-strong);background:#8b5e3414;border-radius:999px;padding:.45rem .7rem;font-size:.82rem;font-weight:600}.room-price{border-top:1px solid #634a301f;border-bottom:1px solid #634a301f;align-items:baseline;gap:.5rem;margin:1.5rem 0;padding:1rem 0;display:flex}.price-from{color:var(--color-muted);font-size:.9rem}.price-amount{color:var(--color-accent-strong);font-size:1.8rem;font-weight:700}.price-period{color:var(--color-muted);font-size:.9rem}.view-details-btn{background:var(--color-accent-strong);color:#fff;text-align:center;border-radius:16px;justify-content:center;align-items:center;width:100%;min-height:48px;padding:.9rem 1rem;font-weight:700;text-decoration:none;transition:background .3s,transform .3s;display:inline-flex}.view-details-btn:hover{background:var(--color-accent);transform:translateY(-1px)}.btn-label-mobile{display:none}.room-features{padding:0;list-style:none}.room-features li{color:#555;padding:.3rem 0}@media (max-width:768px){.rooms-grid{grid-template-columns:1fr}.room-card{border-radius:22px}.room-image{height:230px}}@media (max-width:480px){.room-content{padding:1.25rem}.room-name{font-size:1.8rem}}@media (max-width:600px){.rooms-grid{gap:1rem}.room-card{border-radius:18px}.room-image{height:180px}.room-image-badge,.room-meta-row,.room-description,.room-feature-list,.room-price{display:none}.room-content{justify-content:space-between;align-items:center;gap:.85rem;padding:1rem;display:flex}.room-name{flex:1;margin:0;font-size:1.35rem;line-height:1}.view-details-btn{white-space:nowrap;border-radius:14px;flex-shrink:0;width:auto;min-width:118px;min-height:44px;padding:.75rem 1rem}.btn-label-desktop{display:none}.btn-label-mobile{display:inline}}@media (max-width:420px){.room-content{flex-direction:column;align-items:stretch}.room-name{text-align:center}.view-details-btn{width:100%}}.about-section{background:#fff}.about-content{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:3rem;display:grid}.about-text p{color:var(--color-muted);margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.about-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin:2rem 0 .5rem;display:grid}.about-fact-card{border:1px solid var(--color-border);background:linear-gradient(#fffaf4 0%,#f7efe5 100%);border-radius:20px;flex-direction:column;gap:.35rem;padding:1.1rem;display:flex}.about-fact-card strong{color:var(--color-accent-strong);font-size:1rem}.about-fact-card span{color:var(--color-muted);font-size:.92rem}.amenities{margin-top:2.5rem}.amenities h3{color:var(--color-ink);margin-bottom:1.5rem;font-size:2rem}.booking-link-container{margin:2.5rem 0;display:flex}.booking-link{background:var(--color-accent-strong);color:#fff;border-radius:50px;padding:1rem 2.5rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block;position:relative;overflow:hidden;box-shadow:0 14px 30px #50341b33}.booking-link:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.booking-link:hover:before{left:100%}.booking-link:hover{background:var(--color-accent);transform:translateY(-2px);box-shadow:0 18px 34px #50341b3d}.booking-link:active{transform:translateY(-1px);box-shadow:0 4px 15px #0000004d}.amenities-grid{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}.amenity-card{border:1px solid var(--color-border);background:linear-gradient(135deg,#f9f3eb 0%,#fff 100%);border-radius:18px;align-items:flex-start;gap:1rem;padding:1.3rem;transition:all .3s;display:flex;box-shadow:0 8px 20px #0000000a}.amenity-card:hover{border-color:#8b5e344d;transform:translateY(-4px);box-shadow:0 16px 28px #8b45131f}.amenity-icon{background:linear-gradient(135deg,#fff5eb 0%,#ffe8d1 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex}.amenity-card:hover .amenity-icon{background:linear-gradient(135deg,#8b4513 0%,sienna 100%)}.amenity-card:hover .amenity-icon svg{stroke:#fff}.amenity-content{flex:1}.amenity-content h4{color:var(--color-ink);margin-bottom:.3rem;font-size:1rem;font-weight:600}.amenity-content p{color:var(--color-muted);margin:0;font-size:.85rem;line-height:1.4}.about-images{position:relative}.image-grid{flex-direction:column;gap:1rem;height:100%;display:flex}.grid-image{object-fit:cover;width:100%;height:300px;box-shadow:var(--shadow-card);border-radius:22px;transition:all .3s}.grid-image:hover{transform:scale(1.03);box-shadow:0 20px 34px #00000024}@media (max-width:768px){.about-content,.about-facts-grid{grid-template-columns:1fr}.grid-image{height:200px}.amenities-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.amenity-card{min-height:auto;box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.35rem .2rem}.amenity-card:hover{box-shadow:none;border-color:#0000;transform:none}.amenity-icon{border-radius:12px;width:46px;height:46px;min-height:46px;margin:0 auto}.amenity-icon svg{width:22px;height:22px}.amenity-content{text-align:center;flex:initial;display:block}.amenity-content h4{color:var(--color-muted);margin:0;font-size:.72rem;font-weight:600;line-height:1.2}.amenity-content p{display:none}.amenities h3{font-size:1.5rem}.booking-link-container{justify-content:stretch}.booking-link{text-align:center;width:100%}}@media (max-width:520px){.amenities-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.amenity-content h4{font-size:.68rem}}@media (max-width:360px){.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amenity-card{gap:.25rem}}.gallery-section{background:#fffdf9}.albums-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.album-card{border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fff;border-radius:24px;transition:transform .3s,box-shadow .3s;overflow:hidden}.album-card:hover{transform:translateY(-8px);box-shadow:0 22px 40px #0000001f}.album-thumbnail{cursor:pointer;background-position:50%;background-size:cover;height:320px;position:relative;overflow:hidden}.album-overlay{opacity:0;background:linear-gradient(#0000001f,#000000a6);flex-direction:column;justify-content:flex-end;align-items:center;gap:1rem;padding:1.4rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.album-thumbnail:hover .album-overlay{opacity:1}.photo-count{color:#fff;font-size:1rem;font-weight:600}.album-info{padding:1.4rem}.album-name{color:var(--color-ink);margin-bottom:.5rem;font-size:2rem}.album-description{color:var(--color-muted);margin-bottom:1rem}.view-album-btn{background:var(--color-accent-strong);color:#fff;cursor:pointer;border:none;border-radius:16px;width:100%;min-height:46px;padding:.8rem;font-size:1rem;font-weight:700;transition:background .3s}.view-album-btn:hover{background:var(--color-accent)}.lightbox-overlay{z-index:2000;background:#000000f2;justify-content:center;align-items:center;padding:2rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{cursor:pointer;z-index:2002;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:background .3s;display:flex;position:absolute;top:2rem;right:2rem}.lightbox-close:hover{background:#fff3}.lightbox-prev,.lightbox-next{cursor:pointer;z-index:2002;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:background .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:2rem}.lightbox-next{right:2rem}.lightbox-prev:hover,.lightbox-next:hover{background:#fff3}.lightbox-content{flex-direction:column;gap:1rem;max-width:90vw;max-height:70vh;display:flex}.lightbox-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:70vh;box-shadow:0 8px 40px #00000080}.lightbox-info{color:#fff;justify-content:space-between;align-items:center;padding:0 1rem;display:flex}.lightbox-album-name{font-size:1.2rem;font-weight:600}.lightbox-counter{color:#fffc;font-size:1rem}.thumbnail-strip{z-index:2001;background:#00000080;border-radius:12px;gap:.5rem;max-width:90vw;padding:1rem;display:flex;position:absolute;bottom:2rem;left:50%;overflow-x:auto;transform:translate(-50%)}.thumbnail-strip::-webkit-scrollbar{height:6px}.thumbnail-strip::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.thumbnail-strip::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.thumbnail-item{cursor:pointer;opacity:.6;background-position:50%;background-size:cover;border:2px solid #0000;border-radius:6px;flex-shrink:0;width:80px;height:60px;transition:opacity .3s,transform .3s}.thumbnail-item:hover{opacity:.9;transform:scale(1.05)}.thumbnail-item.active{opacity:1;border-color:#fff;transform:scale(1.1)}@media (max-width:768px){.albums-grid{grid-template-columns:1fr}.album-overlay{opacity:1;align-items:flex-start}.lightbox-prev,.lightbox-next{width:45px;height:45px}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-close{width:45px;height:45px;top:1rem;right:1rem}.thumbnail-strip{padding:.5rem;bottom:1rem}.thumbnail-item{width:60px;height:45px}.album-thumbnail{height:260px}}@media (max-width:480px){.lightbox-overlay{padding:1rem}.lightbox-content{width:100%}.lightbox-info{text-align:center;flex-direction:column;gap:.35rem}}.reviews-section{background:radial-gradient(circle at 0 100%,#c69e7824,#0000 28%),linear-gradient(#fffdf9 0%,#f7efe6 100%)}.rating-summary{border:1px solid var(--color-border);box-shadow:var(--shadow-soft);background:#fffcf7f5;border-radius:24px;grid-template-columns:auto 1fr;align-items:center;gap:3rem;margin-bottom:3rem;padding:2rem;display:grid}.overall-score{border-right:2px solid #f0f0f0;align-items:center;gap:1.5rem;padding-right:3rem;display:flex}.score-number{color:var(--color-accent-strong);font-size:4rem;font-weight:700}.score-text{flex-direction:column;gap:.3rem;display:flex}.score-label{color:var(--color-ink);font-size:1.5rem;font-weight:600}.score-reviews{color:var(--color-muted);font-size:.95rem}.rating-breakdown{gap:1rem;display:grid}.rating-item{grid-template-columns:100px 1fr 50px;align-items:center;gap:1rem;display:grid}.rating-bar{background:#e0e0e0;border-radius:10px;height:8px;overflow:hidden}.rating-fill{background:linear-gradient(90deg,var(--color-accent-strong),var(--color-accent));height:100%;transition:width .5s}.rating-score{color:var(--color-accent-strong);text-align:right;font-weight:600}.reviews-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.review-card{border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fffffff5;border-radius:22px;padding:1.5rem;transition:transform .3s,box-shadow .3s}.review-card:hover{transform:translateY(-5px);box-shadow:0 18px 30px #0000001f}.review-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.reviewer-info{align-items:center;gap:1rem;display:flex}.reviewer-avatar{background:linear-gradient(135deg,var(--color-accent-strong),var(--color-accent));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.5rem;font-weight:600;display:flex}.reviewer-name{color:var(--color-ink);align-items:center;gap:.4rem;font-weight:600;display:flex}.reviewer-flag{cursor:help;font-size:1.2rem;line-height:1}.reviewer-type{color:var(--color-muted);font-size:.85rem}.review-rating{flex-direction:column;align-items:flex-end;display:flex}.rating-badge{background:var(--color-accent-strong);color:#fff;border-radius:5px;padding:.3rem .8rem;font-size:1.1rem;font-weight:700}.rating-label{color:var(--color-muted);margin-top:.2rem;font-size:.8rem}.review-title{color:var(--color-ink);margin-bottom:.8rem;font-size:1.45rem}.review-comment{color:var(--color-muted);margin-bottom:1rem;line-height:1.6}.review-toggle{display:none}.review-footer{color:var(--color-muted);border-top:1px solid #634a301f;justify-content:space-between;padding-top:1rem;font-size:.85rem;display:flex}.review-source{font-style:italic}@media (max-width:768px){.rating-summary{grid-template-columns:1fr;gap:2rem}.overall-score{border-bottom:2px solid #f0f0f0;border-right:none;justify-content:center;padding-bottom:2rem;padding-right:0}.reviews-grid{grid-template-columns:1fr}.rating-item{grid-template-columns:80px 1fr 40px}.review-header,.review-footer{gap:.8rem}}@media (max-width:480px){.rating-summary{padding:1.4rem}.overall-score{text-align:center;flex-direction:column;gap:.5rem}.rating-score{text-align:left}.review-footer{flex-direction:column;align-items:flex-start}}@media (max-width:600px){.rating-summary{border-radius:18px;gap:1rem;padding:1rem}.overall-score{padding-bottom:1rem}.score-number{font-size:2.4rem}.score-label{font-size:1rem}.score-reviews{font-size:.82rem}.rating-breakdown{gap:.5rem}.rating-item{grid-template-columns:72px 1fr 34px;gap:.6rem;font-size:.82rem}.rating-bar{height:5px}.review-card{border-radius:16px;padding:1.05rem}.review-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.6rem;display:grid}.reviewer-info{min-width:0}.review-rating{flex-shrink:0;align-items:flex-end}.review-title{margin-bottom:.65rem;font-size:1.05rem}.review-toggle{color:var(--color-accent-strong);background:#8b5e3414;border:1px solid #6f47222e;border-radius:999px;justify-content:center;align-items:center;min-height:38px;margin-bottom:.7rem;padding:.45rem .8rem;font-size:.82rem;font-weight:700;display:inline-flex}.review-comment,.review-footer{display:none}.review-card.is-expanded .review-comment{display:block}.review-card.is-expanded .review-footer{display:flex}}.contact-section{background:#fffdf9}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.contact-info{flex-direction:column;gap:1.5rem;display:flex}.contact-item{border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fffffff5;border-radius:20px;align-items:center;gap:1.2rem;min-height:100px;padding:1.5rem;transition:all .3s;display:flex}.contact-item:hover{transform:translateY(-2px);box-shadow:0 18px 32px #8b45131f}.contact-icon{background:linear-gradient(135deg,#fff5eb 0%,#ffe8d1 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.contact-details{flex:1}.contact-details h3{color:var(--color-ink);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.contact-details p{color:var(--color-muted);margin:.2rem 0;font-size:1rem;line-height:1.6}.contact-details a{color:var(--color-accent-strong);font-weight:600;text-decoration:none;transition:color .3s}.contact-details a:hover{color:var(--color-accent)}.note{color:var(--color-muted);margin-top:.3rem;font-size:.85rem}.contact-details-full{width:100%}.social-links{flex-wrap:wrap;gap:.85rem;margin-top:.9rem;display:flex}.social-link{background:#8b5e3414;border-radius:999px;align-items:center;gap:.6rem;padding:.75rem 1rem;display:inline-flex}.social-link:hover{background:#8b5e3426}.contact-map{flex-direction:column;gap:1.5rem;display:flex}.contact-map-frame{border:0;border-radius:20px;height:475px;box-shadow:0 10px 30px #0000001a}.map-info{text-align:center;border:1px solid var(--color-border);box-shadow:var(--shadow-card);background:#fffffffa;border-radius:20px;flex-direction:column;align-items:center;gap:.8rem;padding:1.5rem;display:flex}.map-icon{background:linear-gradient(135deg,#fff5eb 0%,#ffe8d1 100%);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.map-title{color:var(--color-ink);margin:0;font-size:1.2rem;font-weight:600}.map-details{color:var(--color-muted);margin:0;line-height:1.8}.booking-link-contact{background:var(--color-accent-strong);text-align:center;border-radius:50px;width:100%;margin-top:.8rem;padding:1rem 2rem;font-size:1rem;transition:all .3s;display:inline-block;box-shadow:0 4px 15px #0000004d;color:#fff!important;font-weight:600!important;text-decoration:none!important}.booking-link-contact:hover{background:var(--color-accent);transform:translateY(-2px);box-shadow:0 6px 20px #0006;color:#fff!important}.booking-link-contact:active{transform:translateY(-1px);box-shadow:0 4px 15px #0000004d}@media (max-width:768px){.contact-grid{grid-template-columns:1fr}.contact-map-frame{height:300px}.contact-item{min-height:auto}}@media (max-width:480px){.contact-item{align-items:flex-start}.social-links{flex-direction:column}.social-link{justify-content:center}}.footer{color:#fff8f0eb;text-align:center;background:#2b211a;padding:2.5rem 1.5rem}.footer p{color:#fff8f0b8;margin:.35rem 0}
