@font-face{font-display:swap;font-family:Lali;font-style:normal;font-weight:400;src:url(/static/media/GL-EREKLES-STAMBA-REGULAR-38755905276.cd353ab491312f5cb4cd.TTF) format("truetype")}@font-face{font-display:swap;font-family:GL Erekles Stamba;font-style:normal;font-weight:400;src:url(/static/media/GL-EREKLES-STAMBA-REGULAR-38755905276.cd353ab491312f5cb4cd.TTF) format("truetype")}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-forest:#345528;--light-moss:#517e09;--accent-earth:#be4b4e;--cream:#f9f7c4;--accent-sky:#b9e3e5;--accent-orange:#f89939;--dark-text:#2d2d2d;--light-text:#666;--white:#fff;--overlay-dark:#0006}body,html{overflow-x:hidden;overflow-y:auto}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f9f7c4;background:var(--cream);color:#2d2d2d;color:var(--dark-text);line-height:1.6}body.lang-ka,body.lang-ka *{font-family:Lali,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}body.lang-en,body.lang-en *{font-family:GL Erekles Stamba,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}h1,h2,h3,h4,h5,h6{color:#345528;color:var(--primary-forest);font-weight:600;line-height:1.3}img{display:block;height:auto;max-width:100%}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f9f7c4;background:var(--cream)}::-webkit-scrollbar-thumb{background:#345528;background:var(--primary-forest);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#517e09;background:var(--light-moss)}::selection{background:#be4b4e;background:var(--accent-earth);color:#fff;color:var(--white)}*{font-feature-settings:normal;font-variant-numeric:normal;transition:opacity .3s ease,transform .3s ease}@media (max-width:768px){html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}*{max-width:100%}a,button,input,select,textarea{min-height:44px;min-width:44px}a,button{-webkit-tap-highlight-color:rgba(52,85,40,.1)}}@media (max-width:480px){body{font-size:15px}h1,h2,h3,h4,h5,h6{line-height:1.2}}@media (max-width:360px){body{font-size:14px}}.date-range-calendar{background:var(--white);border-radius:16px;padding:15px;width:100%}.calendar-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:15px;width:100%}.nav-btn{align-items:center;background:var(--cream);border:none;border-radius:50%;color:var(--primary-forest);cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:45px;justify-content:center;transition:all .3s ease;width:45px}.nav-btn:hover{background:var(--primary-forest);color:var(--white);transform:scale(1.1)}.calendar-months{grid-gap:15px;display:grid;flex:1 1;gap:15px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.calendar-month{min-width:0;width:100%}.month-header{color:var(--primary-forest);font-size:1.1rem;font-weight:600;margin-bottom:10px;text-align:center}.calendar-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.day-name{color:var(--light-text);font-size:.85rem;font-weight:600;padding:6px 2px;text-align:center}.calendar-day{align-items:center;aspect-ratio:1;border-radius:8px;color:var(--dark-text);cursor:pointer;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;justify-content:center;min-height:50px;padding:4px;position:relative;transition:all .2s ease;width:100%}.calendar-day.with-price{gap:4px;min-height:68px;padding:6px 4px}.day-number{font-size:.95rem;font-weight:600;line-height:1.2}.day-price{color:var(--accent-earth);font-size:.7rem;font-weight:700;line-height:1.2;white-space:nowrap}.calendar-day.empty{cursor:default;pointer-events:none}.calendar-day.past{color:var(--light-text);cursor:not-allowed;opacity:.3}.calendar-day.booked{background:repeating-linear-gradient(45deg,#e74c3c1a,#e74c3c1a 5px,#e74c3c0d 0,#e74c3c0d 10px);color:#e74c3c;cursor:not-allowed;opacity:.7}.calendar-day.booked .day-number{font-weight:500;text-decoration:line-through}.booked-label{color:#e74c3c;font-size:1.8rem;font-weight:700;left:50%;opacity:.6;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.calendar-day:not(.empty):not(.past):not(.booked):hover{background:var(--cream);transform:scale(1.1)}.calendar-day.selected{background:var(--accent-earth);color:var(--white);font-weight:600}.calendar-day.selected .day-number{font-weight:700}.calendar-day.selected .day-price{color:#fffffff2;font-weight:700}.calendar-day.in-range{background:#be4b4e33;color:var(--dark-text)}.calendar-day.in-range .day-price{color:var(--primary-forest)}.calendar-day.range-start{border-radius:8px 0 0 8px}.calendar-day.range-end{border-radius:0 8px 8px 0}.calendar-day.selected.range-end,.calendar-day.selected.range-start{border-radius:8px}.selected-dates{align-items:center;background:var(--cream);border-radius:14px;display:flex;gap:20px;justify-content:center;margin-top:15px;padding:18px}.date-display{display:flex;flex-direction:column;gap:6px}.date-display .label{color:var(--light-text);font-size:.95rem}.date-display .date{color:var(--primary-forest);font-size:1.2rem;font-weight:600}.date-separator{color:var(--accent-earth);font-size:1.8rem;font-weight:600}@media (max-width:900px){.calendar-months{gap:20px;grid-template-columns:1fr}.calendar-month{min-width:0;width:100%}.day-number{font-size:.9rem}.day-price{font-size:.65rem}}@media (max-width:768px){.date-range-calendar{padding:8px}.calendar-header{flex-direction:column;gap:10px;margin-bottom:12px}.nav-btn{display:none}.calendar-months{gap:18px}.month-header{font-size:1rem;margin-bottom:10px}.calendar-grid{gap:4px}.calendar-day{border-radius:4px;font-size:.8rem;min-height:36px;padding:2px}.calendar-day.with-price{gap:2px;min-height:50px;padding:4px 2px}.day-name{font-size:.65rem;padding:3px 1px}.day-number{font-size:.75rem}.day-price{font-size:.5rem}.booked-label{font-size:1.4rem}.selected-dates{flex-direction:column;gap:8px;margin-top:15px;padding:15px}.date-display{gap:4px;text-align:center;width:100%}.date-display .label{font-size:.9rem}.date-display .date{font-size:1.1rem}.date-separator{font-size:1.5rem;transform:rotate(90deg)}}@media (max-width:480px){.date-range-calendar{padding:6px}.calendar-months{gap:15px}.month-header{font-size:.95rem;margin-bottom:8px}.calendar-grid{gap:3px}.calendar-day{font-size:.75rem;min-height:34px}.calendar-day.with-price{min-height:48px}.day-name{font-size:.6rem;padding:2px 1px}.day-number{font-size:.7rem}.day-price{font-size:.45rem}.booked-label{font-size:1.2rem}.selected-dates{margin-top:12px;padding:12px}.date-display .label{font-size:.85rem}.date-display .date{font-size:1rem}}@media (max-width:360px){.calendar-day{min-height:32px}.calendar-day.with-price{min-height:46px}.day-number{font-size:.65rem}.day-price{font-size:.4rem}.booked-label{font-size:1rem}}.reservation-bar{max-width:1400px;width:calc(100% - 80px);z-index:100}.reservation-bar-original{bottom:50px;left:50%;position:absolute;transform:translateX(-50%)}.reservation-bar-sticky{border-radius:100px;bottom:50px;box-shadow:0 10px 50px #00000040;left:50%;pointer-events:auto;position:fixed;transform:translateX(-50%) translateY(0);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.reservation-bar-sticky.visible{animation:slideDownFromTop .4s cubic-bezier(.34,1.56,.64,1);opacity:1;transform:translateX(-50%) translateY(0)}.reservation-bar-sticky.disappearing{animation:slideUpToTop .3s cubic-bezier(.4,0,1,1) forwards;opacity:1;pointer-events:none;transform:translateX(-50%) translateY(0)}@keyframes slideDownFromTop{0%{opacity:0;transform:translateX(-50%) translateY(-150px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes slideUpToTop{0%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) trans lateY(-150px)}}.reservation-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #be4b4e33;border-radius:100px;box-shadow:0 4px 20px #0000001a;padding:10px 15px 10px 40px;width:100%}.reservation-bar.sticky .reservation-container{background:#fffffffa;box-shadow:0 8px 40px #0003}.reservation-bar-static{margin:0 auto;max-width:1200px;padding:0 40px;position:relative;width:100%;z-index:100}.reservation-bar-static .reservation-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #be4b4e33;border-radius:100px;box-shadow:0 4px 20px #0000001a;padding:18px 40px;width:100%}.reservation-mobile,.reservation-mobile-compact{display:none}.reservation-mobile-full{background:var(--white);border:2px solid var(--accent-earth);border-radius:16px;box-shadow:0 4px 20px #be4b4e33;display:none;padding:50px 20px 20px;position:relative;transition:all .3s ease}.mobile-close-btn{align-items:center;background:#0000;border:none;color:#000;cursor:pointer;display:flex;font-size:1.6rem;font-weight:700;height:32px;justify-content:center;padding:4px;position:absolute;right:12px;top:12px;transition:all .3s ease;width:32px;z-index:100}.mobile-close-btn svg{fill:#000;stroke:#000;stroke-width:2.5;height:24px;width:24px}.mobile-close-btn:hover{transform:rotate(90deg) scale(1.1)}.mobile-close-btn:hover svg{fill:#000;stroke:#000}.mobile-close-btn:active{transform:rotate(90deg) scale(.9)}.mobile-reservation-grid{display:flex;flex-direction:column;gap:12px}.mobile-reservation-item{background:#f0f8f980;border:1px solid #0000;border-radius:12px;cursor:pointer;padding:16px;transition:all .3s ease}.mobile-reservation-item:active{background:#f0f8f9cc;border-color:var(--accent-earth);transform:scale(.98)}.mobile-item-content{align-items:center;display:flex;gap:14px}.mobile-item-icon{color:var(--accent-earth);flex-shrink:0;font-size:1.3rem}.mobile-item-text{display:flex;flex:1 1;flex-direction:column;gap:4px}.mobile-item-label{color:var(--light-text);font-size:.85rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.mobile-item-value{color:var(--dark-text);font-size:1rem;font-weight:600}.mobile-reservation-btn{align-items:center;background:var(--accent-earth);border:none;border-radius:12px;color:var(--white);cursor:pointer;display:flex;font-size:1.05rem;font-weight:600;gap:10px;justify-content:center;margin-top:8px;padding:16px;transition:all .3s ease;width:100%}.mobile-reservation-btn:active{background:var(--primary-forest);transform:scale(.98)}@keyframes pulse{0%,to{box-shadow:0 4px 20px #be4b4e33}50%{box-shadow:0 6px 25px #be4b4e66}}.reservation-mobile:hover{border-color:var(--primary-forest);box-shadow:0 6px 25px #3455284d;transform:translateY(-2px)}.mobile-header-expanded{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.mobile-header-left{align-items:center;display:flex;gap:10px}.mobile-collapse-btn{align-items:center;background:none;border:none;color:var(--accent-earth);cursor:pointer;display:flex;font-size:1.3rem;justify-content:center;padding:4px;transition:all .3s ease}.mobile-collapse-btn:hover{color:var(--primary-forest);transform:rotate(90deg)}.mobile-header{align-items:center;display:flex;gap:10px;margin-bottom:15px}.mobile-booking-icon{color:var(--accent-earth);font-size:1.2rem}.mobile-title{color:var(--primary-forest);font-size:1.1rem;font-weight:600}.mobile-content{position:relative}.mobile-content,.mobile-content-expanded{display:flex;flex-direction:column;gap:12px}.mobile-content-expanded{cursor:pointer;margin-top:12px}.mobile-item{align-items:center;display:flex;gap:12px}.mobile-icon{color:var(--accent-earth);flex-shrink:0;font-size:1rem}.mobile-text{color:var(--dark-text);font-size:.95rem;font-weight:500}.mobile-arrow{color:var(--accent-earth);font-size:1.1rem;position:absolute;right:20px;top:20px;transition:transform .3s ease}.reservation-mobile:hover .mobile-arrow{transform:translateX(5px)}.reservation-desktop{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:1fr 1fr auto}.reservation-item{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;min-width:280px;padding:5px 10px;transition:all .3s ease}.reservation-item:hover{background:#ffffff1a}.item-content{align-items:center;display:flex;flex:1 1;gap:15px}.item-icon{color:var(--accent-earth);flex-shrink:0;font-size:1.5rem}.item-text{display:flex;flex-direction:column;gap:4px}.item-title{color:var(--light-text);font-size:.85rem;font-weight:500}.item-value{color:var(--dark-text);font-size:1rem;font-weight:600;margin:0}.dropdown-icon{color:var(--primary-forest);font-size:1rem;transition:transform .3s ease}.reservation-item:hover .dropdown-icon{transform:translateY(3px)}.reservation-btn{align-items:center;background:var(--primary-forest);border:none;border-radius:40px 40px 40px 40px;color:var(--white);cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;letter-spacing:.5px;padding:18px 40px;transition:all .3s ease;white-space:nowrap}.reservation-btn:hover{background:var(--light-moss);box-shadow:0 8px 20px #3455284d;transform:translateY(-2px)}.reservation-btn svg{font-size:1.2rem;transition:transform .3s ease}.reservation-btn:hover svg{transform:translateX(5px)}.modal-backdrop{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000bf;bottom:0!important;height:100vh;justify-content:center;left:0!important;overflow:hidden;padding:30px;position:fixed;right:0!important;top:0!important;width:100vw;z-index:999999}.modal-backdrop,.modal-box{display:flex;transform:none}.modal-box{animation:slideUpModal .4s cubic-bezier(.25,.46,.45,.94);background:var(--white);border-radius:24px;box-shadow:0 30px 100px #0006;flex-direction:column;margin:auto;max-height:85vh;overflow-x:hidden;overflow-y:auto;position:relative}@keyframes slideUpModal{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.date-modal{max-width:900px;width:100%}.guest-modal{max-width:550px;width:100%}.guest-modal .modal-header{padding:15px 30px 20px}.modal-header{align-items:flex-start;border-bottom:1px solid var(--cream);display:flex;flex-shrink:0;gap:20px;justify-content:space-between;padding:20px 30px}.modal-header h3{color:var(--primary-forest);flex:1 1;font-size:2rem;line-height:1.2;margin:0;padding-top:8px}.modal-close-btn{background:#f5f5f5;border:2px solid #000;color:#000;flex-shrink:0;height:45px;margin:0;min-height:45px;min-width:45px;padding:0;width:45px;z-index:100}.modal-close-btn svg{fill:#000;stroke:#000;stroke-width:2;height:22px;width:22px}.modal-close-btn:hover{background:#e0e0e0;border-color:#000;transform:rotate(90deg) scale(1.08)}.modal-close-btn:hover svg{fill:#000;stroke:#000}.modal-body{flex:1 1;overflow-y:auto;padding:16px}.calendar-note{background:var(--cream);border-radius:10px;color:var(--light-text);font-size:.9rem;line-height:1.6;margin-top:20px;padding:15px;text-align:center}.guest-picker{display:flex;flex-direction:column;gap:0;padding-top:10px}.picker-row{align-items:center;border-bottom:1px solid var(--cream);display:flex;justify-content:space-between;padding:20px 0}.picker-row:last-child{border-bottom:none}.picker-info{display:flex;flex-direction:column;gap:8px}.picker-title{color:var(--dark-text);font-size:1.3rem;font-weight:600}.picker-subtitle{color:var(--light-text);font-size:1rem}.picker-controls{gap:20px}.control-btn,.picker-controls{align-items:center;display:flex}.control-btn{background:#0000;border:2px solid var(--primary-forest);border-radius:50%;color:var(--primary-forest);cursor:pointer;font-size:1.8rem;font-weight:600;height:50px;justify-content:center;transition:all .3s ease;width:50px}.control-btn:hover:not(:disabled){background:var(--primary-forest);color:var(--white);transform:scale(1.1)}.control-btn:disabled{border-color:var(--light-text);color:var(--light-text);cursor:not-allowed;opacity:.25}.control-value{color:var(--primary-forest);font-size:1.7rem;font-weight:700;min-width:60px;text-align:center}.modal-done-btn{background:var(--primary-forest);border:none;border-radius:14px;color:var(--white);cursor:pointer;font-size:1.3rem;font-weight:600;letter-spacing:1.5px;margin-top:35px;padding:20px;text-transform:uppercase;transition:all .3s ease;width:100%}.modal-done-btn:hover:not(:disabled){background:var(--light-moss);box-shadow:0 10px 30px #34552866;transform:translateY(-3px)}.modal-done-btn:disabled{cursor:not-allowed;opacity:.5}.mobile-modal-hint{background:var(--cream);border-radius:10px;color:var(--light-text);font-size:.9rem;line-height:1.6;margin-top:15px;padding:15px;text-align:center}.mobile-date-summary{align-items:center;background:var(--cream);border-radius:12px;display:flex;gap:15px;justify-content:space-between;margin-bottom:25px;padding:20px}.mobile-date-summary svg{color:var(--accent-earth);flex-shrink:0;font-size:1.5rem}.mobile-date-summary span{color:var(--primary-forest);flex:1 1;font-size:1.1rem;font-weight:600}.change-dates-btn{background:var(--white);border:2px solid var(--accent-earth);border-radius:8px;color:var(--accent-earth);cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.change-dates-btn:hover{background:var(--accent-earth);color:var(--white)}.reservation-btn-mobile{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:30px}.reservation-btn-mobile svg{font-size:1.2rem;transition:transform .3s ease}.reservation-btn-mobile:hover svg{transform:translateX(5px)}@media (max-width:1200px){.reservation-item{min-width:240px}.reservation-btn{font-size:1rem;padding:16px 32px}}@media (max-width:968px){.reservation-bar{width:calc(100% - 40px)}.reservation-bar.sticky{bottom:20px}.reservation-container{border-radius:16px;padding:15px 20px}.reservation-bar-static{padding:0 20px}.reservation-bar-static .reservation-container{padding:15px 20px}.reservation-desktop{gap:12px;grid-template-columns:1fr}.reservation-item{min-width:auto}.reservation-btn{justify-content:center;width:100%}}.reservation-mobile-full-always{display:none}@media (max-width:768px){.reservation-bar{bottom:20px;max-width:400px;width:calc(100% - 20px)}.reservation-bar.sticky{bottom:20px}.reservation-container{background:#0000;border:none;border-radius:16px;box-shadow:none;padding:0}.reservation-container-transparent{background:#0000!important;border:none!important;box-shadow:none!important;padding:0!important}.reservation-mobile-full-always{display:block;width:100%}.reservation-mobile-full-always .mobile-reservation-grid{display:flex;flex-direction:column;gap:12px}.reservation-mobile-compact{align-items:center;background:var(--white);border:2px solid var(--accent-earth);border-radius:50px;box-shadow:0 4px 20px #be4b4e33;cursor:pointer;display:flex;gap:12px;justify-content:center;padding:16px 24px;transition:all .25s ease-out;width:100%}.reservation-mobile-compact:active{transform:scale(.96)}.mobile-compact-icon{color:var(--accent-earth);font-size:1.2rem}.mobile-compact-text{color:var(--primary-forest);font-size:1.05rem;font-weight:600}.mobile-compact-arrow{color:var(--accent-earth);font-size:1rem}.reservation-mobile-full{animation:fadeInUp .3s ease-out;display:block;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reservation-desktop,.reservation-mobile{display:none}.modal-backdrop{padding:10px}.modal-box{border-radius:16px;margin:0;max-height:92vh}.date-modal,.modal-box{max-width:100%}.modal-header{min-height:70px;padding:20px}.modal-header h3{font-size:1.4rem;line-height:1.2}.modal-close-btn{border-width:2px;font-size:1.4rem;height:40px;width:40px}.modal-close-btn svg{height:18px;width:18px}.modal-body{padding:20px 15px}.picker-row{padding:18px 0}.picker-controls{gap:12px}.control-btn{font-size:1.4rem;height:42px;width:42px}.control-value{font-size:1.3rem;min-width:40px}.modal-done-btn{font-size:1rem;margin-top:25px;padding:15px}.mobile-modal-hint{font-size:.85rem;margin-top:12px;padding:12px}.mobile-date-summary{gap:10px;margin-bottom:20px;padding:15px}.mobile-date-summary svg{font-size:1.2rem}.mobile-date-summary span{font-size:.95rem}.change-dates-btn{font-size:.85rem;padding:6px 12px}.reservation-mobile{min-height:80px;padding:18px;touch-action:manipulation}.mobile-header{margin-bottom:12px}.mobile-booking-icon{font-size:1.1rem}.mobile-title{font-size:1rem}.mobile-content{gap:10px}.mobile-item{min-height:44px;padding:8px 0}.mobile-icon{align-items:center;display:flex;font-size:.95rem;height:20px;justify-content:center;width:20px}.mobile-text{font-size:.9rem}.mobile-arrow{font-size:1rem;right:18px;top:18px}}@media (max-width:480px){.reservation-bar{bottom:15px;width:calc(100% - 15px)}.reservation-mobile{min-height:75px;padding:15px}.mobile-title{font-size:.95rem}.mobile-text{font-size:.85rem}}@media (max-width:360px){.reservation-bar{bottom:10px;width:calc(100% - 10px)}.reservation-mobile{min-height:70px;padding:12px}.mobile-title{font-size:.9rem}}.hero{align-items:center;display:flex;height:100vh;justify-content:center;overflow:hidden;position:relative}.hero-background{animation:slowZoom 9s ease-in-out infinite alternate;background:url(/static/media/hero2.49af97030203d0a4a825.jpg);background-attachment:fixed;background-position:50%;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}@keyframes slowZoom{0%{transform:scale(1)}to{transform:scale(1.1)}}.hero-overlay{background:radial-gradient(ellipse at center,#0000 0,#0000004d 100%);height:100%;left:0;position:absolute;top:0;width:100%}.hero-content{color:var(--white);max-width:800px;padding:0 20px;position:relative;text-align:center;z-index:2}.hero-title{color:var(--white);font-size:clamp(4rem,12vw,10rem);font-weight:700;letter-spacing:8px;line-height:.9;margin-bottom:2rem;text-shadow:0 10px 40px #00000080}.hero-logo-text{filter:drop-shadow(0 10px 40px rgba(0,0,0,.5));height:auto;max-width:1000px;width:100%}.hero-subtitle{color:var(--accent-earth);display:block;font-size:clamp(8rem,5vw,1rem);font-style:italic;font-weight:700;letter-spacing:7px;margin-top:1.5rem}.hero-tagline{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:300;letter-spacing:1px;line-height:1.8;margin-bottom:3rem;opacity:.95}.hero-tagline span{display:block;font-size:clamp(1rem,1.8vw,1.4rem);margin-top:.5rem;opacity:.9}.hero-actions{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.hero-actions .btn{font-size:1.05rem;min-width:240px;padding:18px 40px}.scroll-indicator{animation:bounce 2s infinite;bottom:120px;color:var(--white);cursor:pointer;font-size:2rem;left:50%;opacity:.7;position:absolute;transform:translateX(-50%);z-index:1}@keyframes bounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(15px)}}@media (max-width:768px){.hero{height:100vh;min-height:100vh}.hero-background{animation:slowZoom 9s ease-in-out infinite alternate;background-attachment:scroll;background:url(/static/media/hero1.948826de5463a68c2b75.jpg);background-position:50%;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}.hero-content{max-width:100%;padding:0 15px}.hero-title{font-size:clamp(2.5rem,8vw,4rem);letter-spacing:2px;line-height:1.1;margin-bottom:1.5rem}.hero-subtitle{font-size:clamp(.9rem,3vw,1.2rem);letter-spacing:3px;margin-top:.8rem}.hero-tagline{font-size:clamp(1rem,4vw,1.3rem);line-height:1.6;margin-bottom:2rem}.hero-actions{align-items:center;flex-direction:column;gap:1rem}.hero-actions .btn{font-size:.95rem;max-width:280px;padding:16px 24px;width:100%}.scroll-indicator{bottom:80px;font-size:1.5rem}.tour-close{font-size:1.8rem;height:45px;right:15px;top:15px;width:45px}.tour-frame{height:85vh;margin:0 10px}}@media (max-width:480px){.hero{height:100vh;min-height:100vh}.hero-content{padding:0 15px}.hero-title{font-size:clamp(1.8rem,12vw,2.5rem);letter-spacing:1px;line-height:1.1;margin-bottom:1rem}.hero-subtitle{font-size:clamp(.75rem,4vw,.95rem);letter-spacing:2px;margin-top:.5rem}.hero-tagline{font-size:clamp(.9rem,4vw,1.1rem);line-height:1.5;margin-bottom:1.5rem}.hero-tagline span{font-size:clamp(.85rem,3.5vw,1rem);margin-top:.3rem}.hero-actions{gap:.8rem}.hero-actions .btn{font-size:.9rem;max-width:100%;min-width:auto;padding:14px 20px;width:100%}.scroll-indicator{bottom:60px;font-size:1.3rem}.tour-close{font-size:1.5rem;height:40px;right:10px;top:10px;width:40px}.tour-frame{border-radius:8px;height:80vh;margin:0 5px}}@media (max-width:360px){.hero-title{font-size:clamp(1.5rem,14vw,2rem)}.hero-subtitle{font-size:clamp(.7rem,5vw,.85rem)}.hero-tagline{font-size:clamp(.85rem,5vw,1rem)}}.language-switcher{align-items:center;background:#0000;border:none;color:var(--text-dark);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.3rem;padding:.5rem;transition:all .3s ease}.language-switcher:hover{opacity:.7}.lang-option{opacity:.5;transition:all .3s ease}.lang-option.active{color:var(--primary-forest);font-weight:600;opacity:1}.separator{color:var(--text-light);font-weight:300}@media (max-width:768px){.language-switcher{font-size:.85rem;padding:.4rem}}.navigation{background:#0000;left:0;padding:2rem 0;position:fixed;right:0;top:0;transition:all .4s cubic-bezier(.25,.46,.45,.94);z-index:1000}.navigation.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;box-shadow:0 4px 30px #0000001a;padding:.4rem 0}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1600px;padding:0 40px}.logo{cursor:pointer;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo-image{display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:80px;transition:all .3s ease;width:auto}.navigation.scrolled .logo-image{filter:drop-shadow(0 1px 3px rgba(0,0,0,.15));height:65px}.nav-links{align-items:center;display:flex;gap:3rem}.nav-links a{color:var(--white);cursor:pointer;font-size:1.3rem;font-weight:500;letter-spacing:.5px;padding:.5rem 0;position:relative;transition:color .3s ease}.navigation.scrolled .nav-links a{color:var(--dark-text)}.nav-links a:after{background:var(--accent-earth);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .4s cubic-bezier(.25,.46,.45,.94);width:0}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:var(--accent-earth)}.nav-right{align-items:center;display:flex;gap:1.5rem}.menu-toggle{background:none;border:none;color:var(--white);cursor:pointer;display:none;font-size:1.8rem;z-index:1001}.navigation.scrolled .nav-right .language-switcher{color:var(--dark-text)}.nav-right .language-switcher{color:var(--white)}.navigation.scrolled .menu-toggle{color:var(--primary-forest)}@media (max-width:968px){.navigation{padding:1.5rem 0}.navigation.scrolled{padding:.5rem 0}.nav-container{padding:0 20px}.nav-right{gap:1rem}.menu-toggle{display:block;font-size:1.6rem;height:44px;min-height:44px;min-width:44px;width:44px}.nav-links{align-items:flex-start;background:var(--white);box-shadow:-10px 0 50px #0003;flex-direction:column;gap:0;height:100vh;max-width:320px;padding:6rem 2rem 3rem;position:fixed;right:-100%;top:0;transition:right .5s cubic-bezier(.25,.46,.45,.94);width:100%;z-index:1000}.nav-links.open{right:0}.nav-links a{align-items:center;border-bottom:1px solid var(--cream);display:flex;font-size:1.1rem;min-height:44px;padding:1.2rem 0;width:100%}.nav-links a,.nav-right .language-switcher,.navigation.scrolled .nav-right .language-switcher{color:var(--dark-text)}.logo-image{height:65px}.navigation.scrolled .logo-image{height:55px}}@media (max-width:480px){.navigation{padding:1rem 0}.nav-container{padding:0 15px}.logo-image{height:55px}.navigation.scrolled .logo-image{height:48px}.nav-links{padding:5rem 1.5rem 2rem}.nav-links a{font-size:1rem;padding:1rem 0}}@media (max-width:360px){.logo-image{height:50px}.navigation.scrolled .logo-image{height:45px}.nav-links{max-width:100%;padding:4.5rem 1rem 2rem}}.swipeable-gallery{overflow:hidden;position:relative;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%}.gallery-arrow{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#34552880;border:1.5px solid #ffffffb3;border-radius:50%;box-shadow:0 3px 10px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:38px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:38px;z-index:100}.gallery-arrow svg{display:block;height:15px;width:15px}.gallery-arrow:hover{background:#345528bf;border-color:#ffffffe6;box-shadow:0 4px 15px #0006;transform:translateY(-50%) scale(1.05)}.gallery-arrow:active{transform:translateY(-50%) scale(.95)}.gallery-arrow-left{left:10px}.gallery-arrow-right{right:10px}.gallery-track{display:flex;width:100%;will-change:transform}.gallery-slide{flex:0 0 100%;position:relative;width:100%}.gallery-slide img{display:block;height:280px;object-fit:cover;width:100%}.slide-caption-top{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#be4b4ed9;border-radius:6px;color:var(--white);font-size:1rem;font-weight:500;left:20px;letter-spacing:.5px;padding:.8rem 1.2rem;position:absolute;text-shadow:none;top:20px}.gallery-indicators{align-items:center;bottom:15px;display:flex;gap:6px;justify-content:center;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.indicator{background:#ffffff80;border-radius:50%;display:block;height:6px;transition:all .3s ease;width:6px}.indicator.active{background:var(--white);box-shadow:0 0 8px #fff9;transform:scale(1.4)}@keyframes swipeHint{0%,to{transform:translateX(0)}25%{transform:translateX(-20px)}75%{transform:translateX(20px)}}.hint-animation{animation:swipeHint 2s ease-in-out .5s}@media (min-width:769px){.swipeable-gallery{display:none}}@media (max-width:480px){.gallery-slide img{height:250px}.slide-caption-top{font-size:.9rem;left:15px;padding:.6rem 1rem;top:15px}.indicator{height:5px;width:5px}.gallery-arrow{font-size:.95rem;height:34px;width:34px}.gallery-arrow svg{height:13px;width:13px}.gallery-arrow-left{left:8px}.gallery-arrow-right{right:8px}}@media (max-width:360px){.gallery-slide img{height:220px}.slide-caption-top{font-size:.85rem;left:12px;padding:.5rem .9rem;top:12px}.indicator{height:4px;width:4px}.gallery-arrow{font-size:.9rem;height:32px;width:32px}.gallery-arrow svg{height:12px;width:12px}.gallery-arrow-left{left:6px}.gallery-arrow-right{right:6px}}.story-section{background:var(--cream);padding:120px 0 0}.story-container{margin-bottom:100px;max-width:100%;position:relative}.story-hero-image{height:85vh;overflow:hidden;width:100%}.story-hero-image img{filter:brightness(.85);height:100%;object-fit:cover;width:100%}.story-content{left:30%;max-width:800px;position:absolute;top:50%;transform:translate(-50%,-50%);width:90%;z-index:10}.story-text-box{animation:slideIn 1s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-left:6px solid var(--accent-earth);box-shadow:0 20px 80px #0000004d;padding:4rem}@keyframes slideIn{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}.story-title{color:var(--primary-forest);font-size:clamp(2.5rem,5vw,4rem);letter-spacing:2px;line-height:1.1;margin-bottom:.5rem}.story-subtitle{color:var(--accent-earth);font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;font-weight:400;margin-bottom:2rem}.story-description{color:var(--dark-text);font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.9;margin-bottom:1.5rem}.story-description:last-child{color:var(--light-text);font-size:clamp(1.05rem,1.6vw,1.3rem);font-style:italic;margin-bottom:0}.location-map-section{grid-gap:60px;align-items:center;animation:mapFadeIn 1s ease-out .5s forwards;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto 100px;max-width:1400px;opacity:0;padding:0 40px;width:100%}.location-map-wrapper{align-items:center;display:flex;justify-content:flex-start}.location-map-link{border:1px solid #00000014;border-radius:12px;box-shadow:0 10px 40px #00000026,0 4px 12px #0000001a;cursor:pointer;display:block;max-width:600px;overflow:hidden;position:relative;transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s ease;width:100%}.location-map-link:hover{box-shadow:0 20px 60px #00000040,0 8px 20px #00000026;transform:translateY(-6px) scale(1.02)}.location-map-image{display:block;height:auto;transition:transform .6s cubic-bezier(.25,.46,.45,.94),filter .4s ease;width:100%}.location-map-link:hover .location-map-image{filter:brightness(.7);transform:scale(1.1)}.map-overlay{align-items:center;background:linear-gradient(135deg,#4a90e2f2,#4a90e2d9);bottom:0;display:flex;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .4s ease}.location-map-link:hover .map-overlay{opacity:1}.map-overlay-content{align-items:center;display:flex;flex-direction:column;gap:1rem;transform:translateY(20px);transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.location-map-link:hover .map-overlay-content{transform:translateY(0)}.map-icon{stroke-width:2.5;animation:bounceIcon .6s ease-out .2s;color:#fff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));height:48px;width:48px}.map-text-georgian{color:#fff;font-size:1.5rem;font-weight:500;letter-spacing:.5px;margin-bottom:-.5rem;text-shadow:0 2px 8px #0000004d}.map-text-english{color:#fffffff2;font-size:1.1rem;font-weight:400;letter-spacing:1px;text-shadow:0 2px 6px #0003;text-transform:uppercase}@keyframes bounceIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes mapFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.directions-box{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-left:4px solid var(--accent-earth);border-radius:12px;box-shadow:0 10px 40px #0000001a;padding:3rem}.directions-title{color:var(--primary-forest);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:600;letter-spacing:1px;margin-bottom:1.2rem}.directions-description{color:var(--dark-text);font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.8;margin-bottom:2rem}.directions-list{list-style:none;margin:0 0 2rem;padding:0}.direction-item{border-bottom:1px solid #00000014;padding:0;transition:all .3s ease}.direction-item:last-child{border-bottom:none}.direction-link{align-items:center;color:var(--dark-text);display:flex;font-size:clamp(1rem,1.3vw,1.1rem);gap:1rem;padding:1rem 0;text-decoration:none;transition:all .3s ease;width:100%}.direction-link:hover{color:var(--accent-earth);padding-left:.5rem;transform:translateX(4px)}.direction-link:hover .direction-icon{color:#4a90e2;transform:scale(1.2)}.direction-icon{stroke-width:2.5;color:var(--accent-earth);flex-shrink:0;height:20px;transition:all .3s ease;width:20px}.directions-closing{color:var(--primary-forest);font-size:clamp(1.05rem,1.5vw,1.2rem);font-style:italic;font-weight:500;margin-bottom:0;margin-top:1.5rem}.story-images-grid{grid-gap:20px;display:grid;gap:20px;grid-auto-rows:200px;grid-template-columns:repeat(12,1fr);margin:0 auto;max-width:1600px;padding:0 40px}.grid-item{border-radius:2px;box-shadow:0 10px 40px #00000026;overflow:hidden;position:relative;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}.grid-item:hover{transform:scale(1.03);z-index:10}.grid-item img{height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,.46,.45,.94);width:100%}.grid-item:hover img{transform:scale(1.1)}.image-caption{background:linear-gradient(0deg,#000c,#0000);bottom:0;color:var(--white);font-size:1.1rem;font-weight:500;left:0;letter-spacing:1px;opacity:0;padding:3rem 1.5rem 1.5rem;position:absolute;right:0;transition:opacity .4s ease}.grid-item:hover .image-caption{opacity:1}.grid-item.large{grid-column:span 7;grid-row:span 3}.grid-item.medium,.grid-item.small{grid-column:span 5;grid-row:span 2}.grid-item.medium-tall{grid-column:span 7;grid-row:span 2}@media (max-width:1200px){.story-images-grid{grid-auto-rows:180px}}@media (max-width:968px){.story-section{padding:80px 0 0}.story-text-box{padding:3rem 2rem}.story-images-grid{gap:15px;grid-auto-rows:150px;grid-template-columns:repeat(6,1fr);padding:0 20px}.grid-item.large,.grid-item.medium-tall{grid-column:span 6;grid-row:span 2}.grid-item.medium,.grid-item.small{grid-column:span 3;grid-row:span 2}}@media (max-width:768px){.story-section{padding:60px 0 0}.story-container{margin-bottom:60px}.story-hero-image{height:50vh;min-height:300px}.story-content{margin-top:-60px;padding:0 15px;position:static;transform:none;width:auto}.story-text-box{border-left-width:4px;padding:1.8rem 1.2rem}.story-title{font-size:clamp(1.8rem,6vw,2.5rem);margin-bottom:.3rem}.story-subtitle{font-size:clamp(1.2rem,4vw,1.8rem);margin-bottom:1.5rem}.story-description{font-size:clamp(.95rem,2.5vw,1.1rem);line-height:1.7;margin-bottom:1rem}.story-description:last-child{font-size:clamp(1rem,2.8vw,1.2rem)}.location-map-section{gap:40px;grid-template-columns:1fr;margin-bottom:60px;padding:0 20px}.location-map-wrapper{justify-content:center}.location-map-link{border-radius:10px;max-width:500px}.directions-box{padding:2rem 1.5rem}.map-text-georgian{font-size:1.3rem}.map-text-english{font-size:1rem}.map-icon{height:42px;width:42px}.story-images-grid{display:none}}@media (max-width:480px){.story-section{padding:50px 0 0}.story-hero-image{height:45vh;min-height:250px}.story-content{margin-top:-50px;padding:0 10px}.story-text-box{padding:1.5rem 1rem}.location-map-section{gap:30px;margin-bottom:40px;padding:0 15px}.location-map-link{border-radius:8px;max-width:450px}.location-map-link:hover{transform:translateY(-4px) scale(1.01)}.directions-box{padding:1.8rem 1.2rem}.directions-title{margin-bottom:1rem}.directions-description{margin-bottom:1.5rem}.direction-item{padding:.8rem 0}.map-text-georgian{font-size:1.2rem}.map-text-english{font-size:.9rem}.map-icon{height:38px;width:38px}.story-images-grid{gap:10px;grid-auto-rows:200px;padding:0 10px}.image-caption{font-size:.85rem;padding:1.5rem .8rem .8rem}}@media (max-width:360px){.story-hero-image{height:40vh;min-height:200px}.story-text-box{padding:1.2rem .8rem}.location-map-section{gap:25px;margin-bottom:30px;padding:0 10px}.location-map-link{border-radius:6px;max-width:100%}.directions-box{padding:1.5rem 1rem}.direction-item{padding:.7rem 0}.map-overlay-content{gap:.75rem}.map-text-georgian{font-size:1.1rem}.map-text-english{font-size:.85rem;letter-spacing:.5px}.map-icon{height:36px;width:36px}.story-images-grid{grid-auto-rows:180px}}.accommodations-section{background:var(--white);overflow:hidden;padding:150px 0;position:relative}.section-header{margin-bottom:100px;text-align:center}.section-title{color:var(--primary-forest);font-size:clamp(3rem,6vw,5rem);letter-spacing:3px;margin-bottom:1rem}.section-subtitle{color:var(--accent-earth);font-size:clamp(1.2rem,2vw,1.8rem);font-style:italic}.accommodations-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(12,1fr);margin:0 auto;max-width:1400px;padding:0 40px;position:relative;z-index:2}.accommodation-card{animation:fadeInUp .8s ease-out forwards;background:var(--white);box-shadow:0 20px 60px #00000026;cursor:pointer;opacity:0;overflow:hidden;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}@keyframes fadeInUp{to{opacity:1}}.accommodation-card:hover{transform:translateY(-20px)}.card-1{grid-column:1/8;grid-row:1}.card-2{grid-column:8/13;grid-row:1/3;margin-top:80px}.card-3{grid-column:2/8;grid-row:2;margin-top:0}.card-image{height:400px;overflow:hidden;position:relative}.card-image img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94);width:100%}.accommodation-card:hover .card-image img{transform:scale(1.15)}.card-overlay{align-items:flex-end;background:linear-gradient(180deg,#0000,#000c);display:flex;height:100%;justify-content:center;left:0;opacity:0;padding:2rem;position:absolute;top:0;transition:opacity .4s ease;width:100%}.accommodation-card:hover .card-overlay{opacity:1}.tour-btn{align-items:center;background:var(--accent-earth);border:none;color:var(--white);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;letter-spacing:1px;padding:14px 32px;transition:all .3s ease}.tour-btn:hover{background:#963c3e;transform:scale(1.05)}.card-content{display:flex;flex-direction:column;height:100%;padding:2.5rem}.card-title{color:var(--primary-forest);font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:.5rem}.card-subtitle{color:var(--accent-earth);font-size:clamp(1.2rem,2vw,1.6rem);font-style:italic;font-weight:400;margin-bottom:1.5rem}.card-description{color:var(--light-text);font-size:1.05rem;line-height:1.8;margin-bottom:1.5rem}.property-view-btn{background:linear-gradient(135deg,var(--primary-green),var(--light-green));border:2px solid #0000;border-radius:8px;box-shadow:0 8px 25px #2c553040;color:var(--white);cursor:pointer;font-size:1.1rem;font-weight:700;letter-spacing:2px;margin-top:auto;overflow:hidden;padding:14px 32px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.25,.46,.45,.94);width:100%}.property-view-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.property-view-btn:hover:before{left:100%}.property-view-btn:hover{background:linear-gradient(135deg,var(--light-green),var(--primary-green));border-color:var(--accent-gold);box-shadow:0 12px 35px #2c553066;transform:translateY(-3px) scale(1.02)}.property-view-btn:active{box-shadow:0 5px 15px #2c55304d;transform:translateY(-1px) scale(1)}.side-images{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.side-img{box-shadow:0 20px 60px #0003;height:380px;opacity:.3;overflow:hidden;position:absolute;width:280px}.side-img img{height:100%;object-fit:cover;width:100%}.side-img-1{right:5%;top:15%;transform:rotate(8deg)}.side-img-2{bottom:10%;left:3%;transform:rotate(-5deg)}.inline-tour-modal{align-items:center;animation:fadeIn .3s ease;background:#000000f2;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:9999}.inline-tour-content{border-radius:8px;height:90vh;max-width:1600px;overflow:hidden;position:relative;width:100%}.close-tour{background:none;border:none;color:var(--white);cursor:pointer;font-size:3rem;position:absolute;right:0;top:-50px;transition:transform .3s ease;z-index:10}.close-tour:hover{transform:rotate(90deg)}@media (max-width:1200px){.side-images{display:none}}@media (max-width:968px){.accommodations-section{padding:100px 0}.accommodations-grid{gap:60px;grid-template-columns:1fr;padding:0 20px}.card-1,.card-2,.card-3{grid-column:1;grid-row:auto;margin-top:0!important}.card-image{height:350px}}@media (max-width:768px){.accommodations-section{padding:80px 0}.section-header{margin-bottom:50px;padding:0 15px}.section-title{font-size:clamp(2rem,8vw,3.5rem)}.section-subtitle{font-size:clamp(1rem,3vw,1.5rem)}.accommodations-grid{gap:40px;padding:0 15px}.card-image{height:280px}.card-content{padding:1.8rem 1.2rem}.card-title{font-size:clamp(1.5rem,5vw,2rem);margin-bottom:.3rem}.card-subtitle{font-size:clamp(1rem,3vw,1.4rem);margin-bottom:1rem}.card-description{font-size:.95rem;line-height:1.7}.card-overlay{padding:1.5rem}.tour-btn{font-size:.95rem}.property-view-btn,.tour-btn{min-height:44px;padding:12px 28px}.property-view-btn{font-size:1rem;letter-spacing:1.5px}}@media (max-width:480px){.accommodations-section{padding:60px 0}.section-header{margin-bottom:40px;padding:0 10px}.accommodations-grid{gap:30px;padding:0 10px}.card-image{height:250px}.card-content{padding:1.5rem 1rem}.tour-btn{font-size:.9rem;padding:10px 24px}.property-view-btn{font-size:.95rem;letter-spacing:1px;padding:10px 24px}}@media (max-width:360px){.card-image{height:220px}.card-content{padding:1.2rem .8rem}}.restaurant-section{background:var(--cream)}.restaurant-parallax{align-items:center;background-image:url(/static/media/real-restaurant.44dde70febd4b0f50477.jpg);display:flex;height:70vh;justify-content:center;position:relative}.parallax-overlay{background:#34552880;height:100%;left:0;position:absolute;top:0;width:100%}.parallax-content{color:var(--white);position:relative;text-align:center;z-index:2}.parallax-title{color:var(--white);font-size:clamp(3.5rem,8vw,6rem);letter-spacing:4px;margin-bottom:1rem}.parallax-subtitle{color:var(--accent-earth);font-size:clamp(1.5rem,3vw,3.5rem);font-style:italic;font-weight:700}.restaurant-content{margin:0 auto;max-width:1600px;padding:120px 40px}.content-grid{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin-bottom:100px}.large-image{box-shadow:0 30px 80px #0003;height:600px;overflow:hidden;position:relative;width:100%}.large-image:before{border:3px solid var(--accent-earth);content:"";height:100%;position:absolute;right:-20px;top:-20px;width:100%;z-index:-1}.large-image img{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.large-image:hover img{transform:scale(1.08)}.content-right{display:flex;flex-direction:column;gap:40px}.text-content h3{color:var(--primary-forest);font-size:clamp(2rem,4vw,3rem);margin-bottom:2rem}.text-content p{color:var(--light-text);font-size:1.1rem;line-height:1.9;margin-bottom:1.5rem}.small-images{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.small-img{box-shadow:0 10px 30px #00000026;height:250px;overflow:hidden;position:relative}.small-img img{height:100%;object-fit:cover;object-position:bottom;transition:transform .6s ease;width:100%}.small-img:hover img{transform:scale(1.1)}.img-label{background:linear-gradient(0deg,#000000e6,#0000);bottom:0;color:var(--white);font-size:.95rem;left:0;letter-spacing:1px;padding:2rem 1rem 1rem;position:absolute;right:0}.restaurant-features{grid-gap:40px;background:var(--white);box-shadow:0 20px 60px #0000001a;display:grid;gap:40px;grid-template-columns:repeat(4,1fr);padding:60px}.feature{border-left:3px solid var(--accent-earth);padding:20px;text-align:center}.feature h4{color:var(--primary-forest);font-size:1.3rem;margin-bottom:.5rem}.feature p{color:var(--light-text);font-size:1rem;font-style:italic}@media (max-width:1200px){.restaurant-features{gap:30px;grid-template-columns:repeat(2,1fr)}}@media (max-width:968px){.restaurant-parallax{height:50vh}.restaurant-content{padding:80px 20px}.content-grid{gap:40px;grid-template-columns:1fr;margin-bottom:60px}.large-image{height:400px}.large-image:before{display:none}.small-images{grid-template-columns:1fr}.small-img{height:200px}}@media (max-width:768px){.restaurant-parallax{height:45vh;min-height:300px}.parallax-title{font-size:clamp(2rem,10vw,3.5rem);letter-spacing:2px}.parallax-subtitle{font-size:clamp(1.2rem,4vw,2rem)}.restaurant-content{padding:60px 15px}.content-grid{gap:30px;margin-bottom:50px}.large-image{height:350px}.text-content h3{font-size:clamp(1.5rem,6vw,2.5rem);margin-bottom:1.5rem}.text-content p{font-size:1rem;line-height:1.8;margin-bottom:1.2rem}.small-img{height:280px}.img-label{font-size:.85rem;padding:1.5rem .8rem .8rem}.restaurant-features{gap:20px;grid-template-columns:1fr;padding:40px 20px}.feature{border-left:none;border-top:3px solid var(--accent-earth);padding:15px 10px 10px}.feature h4{font-size:1.1rem;margin-bottom:.3rem}.feature p{font-size:.9rem}}@media (max-width:480px){.restaurant-parallax{height:40vh;min-height:250px}.restaurant-content{padding:50px 10px}.content-grid{gap:25px;margin-bottom:40px}.large-image,.small-img{height:300px}.restaurant-features{gap:15px;padding:30px 15px}.feature{padding:12px 8px 8px}}@media (max-width:360px){.restaurant-parallax{height:35vh;min-height:200px}.large-image{height:250px}.small-img{height:280px}}.experiences-section{background:var(--white);padding:150px 0}.experiences-container{margin:0 auto;max-width:1600px;padding:0 40px}.section-intro{margin-bottom:120px;text-align:center}.experience-block{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;margin-bottom:150px}.block-image{box-shadow:0 30px 80px #0003;height:500px;overflow:hidden;position:relative}.large-block{height:650px}.block-image img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94);width:100%}.experience-block:hover .block-image img{transform:scale(1.1)}.block-content{padding:40px}.icon-wrapper{align-items:center;background:var(--cream);border-radius:50%;color:var(--accent-earth);display:flex;font-size:3rem;height:100px;justify-content:center;margin-bottom:2rem;transition:all .4s ease;width:100px}.experience-block:hover .icon-wrapper{background:var(--accent-earth);color:var(--white);transform:rotate(15deg) scale(1.1)}.block-content h3{color:var(--primary-forest);font-size:clamp(2rem,4vw,3rem);line-height:1.3;margin-bottom:1.5rem}.block-content p{color:var(--light-text);font-size:1.15rem;line-height:1.9}.yard-block .block-content{order:2}.pool-block .block-content,.yard-block .block-image{order:1}.pool-block .block-image{order:2}.experience-mosaic{grid-gap:20px;display:grid;gap:20px;grid-auto-rows:200px;grid-template-columns:repeat(12,1fr);margin-top:100px}.mosaic-item{box-shadow:0 15px 40px #00000026;overflow:hidden;position:relative;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}.mosaic-item:hover{transform:scale(1.03);z-index:10}.mosaic-item img{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.mosaic-item:hover img{transform:scale(1.15)}.mosaic-overlay{background:linear-gradient(0deg,#000000e6,#0000);bottom:0;color:var(--white);left:0;opacity:0;padding:3rem 2rem 2rem;position:absolute;right:0;transform:translateY(20px);transition:all .4s ease}.mosaic-item:hover .mosaic-overlay{opacity:1;transform:translateY(0)}.mosaic-icon{color:var(--accent-earth);font-size:2.5rem;margin-bottom:1rem}.mosaic-overlay h4{color:var(--white);font-size:1.3rem;margin-bottom:.5rem}.mosaic-overlay p{font-size:1rem;font-style:italic;opacity:.9}.mosaic-item.large{grid-column:span 6;grid-row:span 3}.mosaic-item.medium{grid-column:span 3;grid-row:span 2}.mosaic-item.small{grid-column:span 3;grid-row:span 1}.campfire-item{grid-row-start:2}@media (max-width:1200px){.experience-mosaic{grid-auto-rows:180px}}@media (max-width:968px){.experiences-section{padding:100px 0}.experiences-container{padding:0 20px}.section-intro{margin-bottom:80px}.experience-block{display:flex;flex-direction:column;gap:40px;margin-bottom:100px}.experience-block .block-content{order:1}.experience-block .block-image{order:2}.block-image,.large-block{height:400px}.block-content{padding:20px}.experience-mosaic{grid-auto-rows:150px;grid-template-columns:repeat(6,1fr)}.mosaic-item.large{grid-column:span 6;grid-row:span 2}.mosaic-item.medium{grid-column:span 3;grid-row:span 2}.mosaic-item.small{grid-column:span 6;grid-row:span 1}}@media (max-width:768px){.experiences-section{padding:80px 0}.experiences-container{padding:0 15px}.section-intro{margin-bottom:60px}.experience-block{gap:30px;margin-bottom:70px}.block-image,.large-block{height:280px}.block-content{padding:20px 15px}.icon-wrapper{font-size:2.2rem;height:70px;margin-bottom:1.5rem;width:70px}.block-content h3{font-size:clamp(1.5rem,5vw,2.5rem);margin-bottom:1rem}.block-content p{font-size:1rem;line-height:1.8}.experience-mosaic{display:none}.campfire-item{grid-row-start:auto}}@media (max-width:480px){.experiences-section{padding:60px 0}.experiences-container{padding:0 10px}.experience-block,.section-intro{margin-bottom:50px}.experience-block{gap:25px}.block-image,.large-block{height:250px}.block-content{padding:18px 12px}.icon-wrapper{font-size:2rem;height:60px;width:60px}}@media (max-width:360px){.block-image,.large-block{height:220px}}.lightbox-overlay{bottom:0;overflow:hidden;overscroll-behavior:contain;padding:20px;right:0;z-index:9999}.lightbox-content{align-items:center;animation:zoomIn .3s ease;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;position:relative}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.lightbox-content img{border-radius:4px;box-shadow:0 20px 80px #00000080;max-height:85vh;max-width:100%;object-fit:contain}.lightbox-close{background:#0000;height:50px;right:0;top:-50px;width:50px;z-index:10000}.lightbox-close:hover{color:var(--accent-earth)}.lightbox-caption{background:#0009;border-radius:4px;color:var(--white);font-size:1.2rem;margin-top:20px;padding:10px 20px;text-align:center}@media (max-width:768px){.lightbox-content{max-height:95vh;max-width:95vw}.lightbox-content img{max-height:80vh}.lightbox-close{font-size:2.5rem;height:40px;top:-40px;width:40px}.lightbox-caption{font-size:1rem;margin-top:15px}}.gallery-section{background:var(--cream);padding:150px 0}.gallery-container{margin:0 auto;max-width:1800px;padding:0 40px}.gallery-header{margin-bottom:80px;text-align:center}.tour-cta{background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));margin:100px 0;overflow:hidden;padding:100px 40px;position:relative}.tour-cta:before{background:url(https://images.unsplash.com/photo-1506905925346-21bda4d32df4?ixlib=rb-4.0.3&auto=format&fit=crop&w=2070&q=80);background-position:50%;background-size:cover;content:"";height:100%;left:0;mix-blend-mode:overlay;opacity:.15;position:absolute;top:0;width:100%}.tour-cta-content{color:var(--white);position:relative;text-align:center;z-index:2}.tour-cta-content h3{color:var(--white);font-size:clamp(2.5rem,5vw,4rem);letter-spacing:2px;margin-bottom:1rem}.tour-cta-content p{color:var(--accent-earth);font-size:clamp(1.2rem,2vw,1.8rem);font-style:italic;margin-bottom:2.5rem}.creative-gallery{grid-gap:15px;display:grid;gap:15px;grid-auto-rows:180px;grid-template-columns:repeat(12,1fr)}.gallery-card{box-shadow:0 10px 30px #00000026;cursor:pointer;overflow:hidden;position:relative;transition:all .5s cubic-bezier(.25,.46,.45,.94)}.gallery-card:hover{box-shadow:0 20px 50px #00000040;transform:translateY(-10px);z-index:10}.gallery-card img{height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25,.46,.45,.94);width:100%}.gallery-card:hover img{transform:scale(1.15)}.gallery-hover{align-items:center;background:#345528cc;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity .4s ease;width:100%}.gallery-card:hover .gallery-hover{opacity:1}.gallery-hover svg{color:var(--white);font-size:3rem}.size-large{grid-column:span 6;grid-row:span 3}.size-medium{grid-column:span 4;grid-row:span 2}.size-small{grid-column:span 3;grid-row:span 2}.size-tall{grid-column:span 3;grid-row:span 3}.size-wide{grid-column:span 6;grid-row:span 2}.lightbox-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000f2;display:flex;height:100%;justify-content:center;left:0;padding:40px;position:fixed;top:0;width:100%;z-index:10000}.lightbox-overlay img{box-shadow:0 20px 80px #00000080;max-height:90%;max-width:90%;object-fit:contain}.lightbox-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:none;border-radius:50%;color:var(--white);cursor:pointer;display:flex;font-size:3rem;height:70px;justify-content:center;position:absolute;right:30px;top:30px;transition:all .3s ease;width:70px}.lightbox-close:hover{background:#ffffff40;transform:rotate(90deg)}.tour-modal-overlay{animation:fadeIn .3s ease;background:#000000f2;height:100%;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:10000}.modal-close-btn,.tour-modal-overlay{align-items:center;display:flex;justify-content:center}.modal-close-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:none;border-radius:50%;color:var(--white);cursor:pointer;font-size:3rem;height:70px;position:absolute;right:30px;top:30px;transition:all .3s ease;width:70px;z-index:10001}.modal-close-btn:hover{background:#ffffff40;transform:rotate(90deg)}.tour-modal-frame{animation:scaleIn .4s cubic-bezier(.25,.46,.45,.94);border-radius:8px;height:90vh;max-width:1600px;overflow:hidden;width:100%}@media (max-width:1200px){.creative-gallery{grid-auto-rows:150px}}@media (max-width:968px){.gallery-section{padding:100px 0}.gallery-container{padding:0 20px}.tour-cta{margin:60px 0;padding:80px 20px}.creative-gallery{grid-auto-rows:120px;grid-template-columns:repeat(6,1fr)}.size-large,.size-wide{grid-column:span 6;grid-row:span 2}.size-medium,.size-small,.size-tall{grid-column:span 3;grid-row:span 2}}@media (max-width:768px){.gallery-section{padding:80px 0}.gallery-container{padding:0 15px}.gallery-header{margin-bottom:50px}.tour-cta{margin:60px 0;padding:60px 20px}.tour-cta-content h3{font-size:clamp(1.8rem,6vw,3rem)}.tour-cta-content p{font-size:clamp(1rem,3vw,1.5rem);margin-bottom:2rem}.creative-gallery{gap:10px;grid-auto-rows:220px;grid-template-columns:1fr}.size-large,.size-medium,.size-small,.size-tall,.size-wide{grid-column:span 1;grid-row:span 1}.gallery-hover svg{font-size:2.5rem}.lightbox-overlay{padding:10px}.lightbox-overlay img{max-height:85%;max-width:95%}.lightbox-close,.modal-close-btn{font-size:2rem;height:50px;min-height:44px;min-width:44px;right:15px;top:15px;width:50px}.tour-modal-frame{border-radius:8px;height:85vh}}@media (max-width:480px){.gallery-section{padding:60px 0}.gallery-container{padding:0 10px}.gallery-header{margin-bottom:40px}.tour-cta{margin:50px 0;padding:50px 15px}.creative-gallery{gap:8px;grid-auto-rows:200px}.lightbox-close,.modal-close-btn{font-size:1.8rem;height:44px;right:10px;top:10px;width:44px}.tour-modal-frame{height:80vh}}@media (max-width:360px){.creative-gallery{grid-auto-rows:180px}.tour-modal-frame{height:75vh}}.contact-section{background:var(--cream);padding-bottom:0}.contact-wrapper{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.contact-info-side{align-items:center;background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));color:var(--white);display:flex;padding:100px 80px}.info-content h2{color:var(--white);font-size:clamp(3.5rem,6vw,5rem);letter-spacing:3px;margin-bottom:1rem}.info-subtitle{color:var(--accent-earth);font-size:clamp(1.5rem,2.5vw,2rem);font-style:italic;margin-bottom:4rem}.info-details{display:flex;flex-direction:column;gap:3rem;margin-bottom:4rem}.info-item{flex-wrap:nowrap;gap:2rem}.info-icon{color:var(--accent-earth);flex-shrink:0;font-size:2.5rem}.info-item>div{flex:1 1;min-width:0}.info-item h4{font-size:1.3rem;margin-bottom:.5rem}.info-item h4,.info-item p{word-wrap:break-word;color:#000}.info-item p{line-height:1.7}.contact-link{color:#ffffffe6;display:inline-block;font-size:1.05rem;text-decoration:none;transition:all .3s ease;word-break:break-word}.contact-link:hover{color:var(--accent-earth);transform:translateX(3px)}.map-link{color:var(--accent-earth);display:inline-block;font-weight:600;margin-top:.5rem;text-decoration:underline;transition:all .3s ease;word-break:break-word}.map-link:hover{transform:translateX(5px)}.social-connect h4{color:var(--white);font-size:1.5rem;margin-bottom:1.5rem}.social-buttons{display:flex;flex-direction:column;gap:1rem}.social-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;display:flex;gap:1rem;padding:1rem 1.5rem;transition:all .3s ease}.social-btn:hover{background:#fff3;transform:translateX(10px)}.social-btn svg{font-size:1.8rem}.contact-form-side{align-items:center;background:var(--white);display:flex;padding:100px 80px}.form-wrapper{max-width:600px;width:100%}.form-wrapper h3{color:var(--primary-forest);font-size:clamp(2.5rem,4vw,3.5rem);margin-bottom:1rem}.form-intro{color:var(--light-text);font-size:1.1rem;margin-bottom:3rem}.success-alert{background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));color:var(--white);padding:2rem}.error-alert,.success-alert{animation:slideDown .5s ease;border-radius:8px;margin-bottom:2rem;text-align:center}.error-alert{background:#f44;color:#fff;padding:1.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.error-alert p,.success-alert p{font-size:1.1rem;margin-bottom:.5rem}.form-hidden{display:none}.form-field{margin-bottom:2.5rem}.form-field input,.form-field textarea{width:100%}.form-field label{left:0}.form-wrapper .btn{margin-top:1rem;padding:18px;width:100%}.form-wrapper .btn:disabled{cursor:not-allowed;opacity:.6}.site-footer{background:var(--primary-forest);color:var(--white);padding:60px 40px;text-align:center}.footer-content{margin:0 auto;max-width:800px}.footer-logo h3{color:var(--white);font-size:2.5rem;letter-spacing:4px;margin-bottom:.5rem}.footer-logo span{color:var(--accent-earth);font-size:1.5rem;letter-spacing:2px}.footer-tagline{font-size:1.1rem;font-style:italic;margin:2rem 0 1rem;opacity:.9}.footer-coordinates{font-size:.95rem;margin-bottom:2rem;opacity:.7}.footer-copyright{border-top:1px solid #ffffff1a;font-size:.9rem;opacity:.6;padding-top:2rem}@media (max-width:1200px){.contact-form-side,.contact-info-side{padding:80px 60px}}@media (max-width:968px){.contact-wrapper{grid-template-columns:1fr}.contact-form-side,.contact-info-side{padding:80px 40px}.contact-info-side{min-height:auto}}@media (max-width:768px){.contact-wrapper{min-height:auto}.contact-form-side,.contact-info-side{padding:50px 20px}.info-content h2{font-size:clamp(2rem,8vw,3.5rem);margin-bottom:.8rem}.info-subtitle{font-size:clamp(1.2rem,4vw,1.8rem);margin-bottom:3rem}.info-details{gap:2rem;margin-bottom:3rem}.info-item{flex-wrap:nowrap;gap:1.5rem}.info-icon{font-size:2rem;min-width:30px}.info-item h4{font-size:1.1rem;margin-bottom:.3rem}.info-item p{font-size:.95rem;line-height:1.6}.social-connect h4{font-size:1.3rem;margin-bottom:1.2rem}.social-btn{min-height:44px;padding:.9rem 1.2rem}.social-btn svg{font-size:1.6rem}.form-wrapper h3{font-size:clamp(1.8rem,5vw,2.5rem);margin-bottom:.8rem}.form-intro{font-size:1rem}.form-field,.form-intro{margin-bottom:2rem}.form-field input,.form-field textarea{font-size:1rem;padding:14px 14px 14px 0}.form-field label{font-size:1rem}.form-wrapper .btn{font-size:1rem;min-height:44px;padding:16px}.site-footer{padding:40px 20px}.footer-logo h3{font-size:2rem}.footer-logo span{font-size:1.3rem}.footer-tagline{font-size:1rem;margin:1.5rem 0 .8rem}.footer-coordinates{font-size:.9rem;margin-bottom:1.5rem}.footer-copyright{font-size:.85rem;padding-top:1.5rem}}@media (max-width:480px){.contact-form-side,.contact-info-side{padding:40px 15px}.info-content h2{font-size:clamp(1.8rem,9vw,2.8rem)}.info-subtitle{font-size:clamp(1.1rem,4.5vw,1.6rem);margin-bottom:2.5rem}.info-details{gap:1.5rem;margin-bottom:2.5rem}.info-item{align-items:flex-start;flex-wrap:nowrap;gap:1.2rem}.info-icon{font-size:1.8rem;min-width:25px}.social-btn{padding:.8rem 1rem}.form-wrapper{max-width:100%}.form-field textarea{min-height:80px}.site-footer{padding:35px 15px}}@media (max-width:360px){.contact-form-side,.contact-info-side{padding:35px 10px}.info-icon{font-size:1.6rem;min-width:22px}.info-item{gap:1rem}.social-btn{font-size:.9rem;padding:.7rem .9rem}}.loading-screen{align-items:center;animation:fadeIn .3s ease-in-out;display:flex;height:100vh;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:9999}.loading-background{animation:backgroundFadeIn .3s ease-in-out;background:#f9f7c4;height:100%;left:0;position:absolute;top:0;width:100%}.loading-content{align-items:center;display:flex;flex-direction:column;gap:2rem;justify-content:center;position:relative;z-index:1}.logo-wrapper{animation:logoReveal .7s ease-in-out .3s both;max-width:400px;position:relative;width:80vw}.loading-logo{animation:logoScale .7s ease-in-out .3s both,logoPulse 1s ease-in-out 1s both,logoGlow 1s ease-in-out 1s both;filter:drop-shadow(0 0 0 rgba(74,144,226,0));height:auto;width:100%}.loading-screen.fade-out,.loading-screen.fade-out .loading-background,.loading-screen.fade-out .loading-content{animation:fadeOut .5s ease-in-out forwards}@keyframes backgroundFadeIn{0%{opacity:0}to{opacity:1}}@keyframes logoReveal{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes logoScale{0%{opacity:0;transform:scale(.9)}50%{opacity:.5}to{opacity:1;transform:scale(1)}}@keyframes logoPulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes logoGlow{0%{filter:drop-shadow(0 0 0 rgba(74,144,226,0))}50%{filter:drop-shadow(0 0 20px rgba(74,144,226,.3))}to{filter:drop-shadow(0 0 0 rgba(74,144,226,0))}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media (max-width:768px){.logo-wrapper{max-width:320px;width:85vw}}@media (max-width:480px){.logo-wrapper{max-width:280px;width:90vw}}@media (max-width:360px){.logo-wrapper{max-width:240px;width:90vw}}@media (prefers-reduced-motion:reduce){.loading-background,.loading-logo,.loading-screen,.logo-wrapper{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.room-selection-page{background:var(--cream);min-height:100vh;padding-bottom:60px}.page-header{background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));color:var(--white);margin-bottom:0;padding:25px 0 20px}.reservation-bar-wrapper{background:var(--cream);padding:20px 0}.back-btn{margin-bottom:15px}.page-header h1{color:var(--white);font-size:1.8rem;margin-bottom:.3rem}.page-header .subtitle{color:var(--accent-earth);font-size:1rem;font-style:italic;margin-bottom:1rem}.booking-summary{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:8px;display:flex;flex-wrap:wrap;font-size:.9rem;gap:10px;margin-top:12px;padding:10px 16px}.booking-summary .divider{color:var(--accent-earth);font-weight:600}.rooms-container{padding:0 0 40px}.container{max-width:1200px}.room-card-wide{background:var(--white);border-radius:12px;box-shadow:0 4px 20px #00000014;display:grid;grid-template-columns:280px 1fr;height:240px;margin-bottom:20px;overflow:hidden;transition:all .4s ease}.room-card-wide:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.room-image-section{cursor:pointer;height:240px;overflow:hidden;position:relative}.room-image-section img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.room-image-section:hover img{transform:scale(1.08)}.image-overlay{align-items:center;background:#345528d9;color:var(--white);display:flex;flex-direction:column;gap:10px;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:opacity .4s ease;width:100%}.room-image-section:hover .image-overlay{opacity:1}.image-overlay svg{font-size:3rem}.image-overlay span{font-size:1.2rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.room-type-badge{border-radius:15px;left:15px}.room-type-badge,.unavailable-badge{font-size:.85rem;position:absolute;top:15px}.unavailable-badge{align-items:center;animation:pulse-unavailable 2s ease-in-out infinite;background:#e74c3cf2;border-radius:8px;box-shadow:0 4px 15px #e74c3c66;color:var(--white);display:flex;font-weight:600;gap:8px;padding:8px 16px;right:15px;z-index:10}@keyframes pulse-unavailable{0%,to{box-shadow:0 4px 15px #e74c3c66}50%{box-shadow:0 6px 20px #e74c3c99}}.unavailable-badge svg{font-size:1rem}.room-details-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 200px;height:240px;overflow:hidden;padding:12px 20px}.room-details-left{display:flex;flex-direction:column;gap:6px;overflow:hidden}.room-details-right{align-items:center;display:flex;flex-direction:column;justify-content:space-between;padding:8px 0}.room-header{border-bottom:1px solid var(--cream);flex-shrink:0;margin-bottom:4px;padding-bottom:6px}.room-header h2{color:var(--primary-forest);font-size:1.3rem;line-height:1.2;margin-bottom:.2rem}.room-header h3{color:var(--light-text);font-size:.9rem;font-style:italic;font-weight:400}.room-price{background:linear-gradient(135deg,#3455280d,#be4b4e14);border:1px solid var(--cream);border-radius:10px;box-shadow:0 2px 8px #0000000d;margin-bottom:12px;padding:12px 16px;text-align:center;width:100%}.price-per-night{align-items:baseline;display:flex;gap:6px;justify-content:center}.price-amount{color:var(--primary-forest);font-size:1.4rem;font-weight:700}.price-label{color:var(--light-text);font-size:.75rem;font-weight:500}.total-price{background:#be4b4e1a;border-radius:4px;display:inline-block;font-size:.8rem;margin-top:4px;padding:3px 8px}.room-description{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--light-text);display:-webkit-box;flex-shrink:0;font-size:.8rem;line-height:1.3;margin:2px 0;overflow:hidden}.room-specs{flex-shrink:0;flex-wrap:wrap;gap:12px;margin:2px 0}.spec-item{font-size:.8rem;font-weight:500;gap:6px}.spec-item svg{font-size:.9rem}.room-amenities{display:flex;flex-shrink:0;flex-wrap:wrap;gap:4px;margin:2px 0}.amenity-tag{background:var(--cream);border-radius:12px;color:var(--primary-forest);font-size:.7rem;font-weight:500;padding:3px 8px}.room-actions{display:flex;flex-shrink:0;width:100%}.select-room-btn{background:var(--primary-forest);border:none;border-radius:8px;color:var(--white);cursor:pointer;flex-shrink:0;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:10px 16px;text-align:center;text-transform:uppercase;transition:all .3s ease;width:100%}.select-room-btn:hover{background:var(--light-moss);box-shadow:0 8px 20px #3455284d;transform:translateY(-2px)}@media (max-width:968px){.page-header{padding:35px 0 25px}.page-header h1{font-size:1.8rem}.page-header .subtitle{font-size:1rem}.reservation-bar-wrapper{padding:25px 0}.container{padding:0 20px}.room-card-wide{grid-template-columns:1fr;height:auto;min-height:300px}.room-image-section{height:180px}.room-details-section{gap:15px;grid-template-columns:1fr;height:auto;padding:15px}.room-details-right{align-items:center;flex-direction:row;justify-content:space-between;padding:0}.room-price{flex:1 1;margin-bottom:0;margin-right:15px;text-align:left;width:auto}.room-actions{flex-shrink:0;width:auto}.select-room-btn{min-width:140px;width:auto}}@media (max-width:768px){.room-selection-page{padding-bottom:50px}.page-header{padding:25px 0 18px}.page-header h1{font-size:clamp(1.4rem,5vw,1.6rem)}.page-header .subtitle{font-size:clamp(.9rem,2.5vw,1rem)}.back-btn{font-size:.9rem;margin-bottom:10px;min-height:44px;padding:7px 14px}.reservation-bar-wrapper{padding:18px 0}.booking-summary{flex-wrap:wrap;font-size:clamp(.75rem,2vw,.8rem);gap:6px;padding:10px 12px}.container{padding:0 15px}.room-card-wide{border-radius:10px;margin-bottom:18px}.room-image-section{height:180px}.room-type-badge{font-size:.8rem;left:10px;padding:5px 12px;top:10px}.unavailable-badge{font-size:.75rem;gap:6px;padding:6px 12px;right:10px;top:10px}.unavailable-badge svg{font-size:.9rem}.room-details-section{gap:12px;grid-template-columns:1fr;padding:12px 15px}.room-header{margin-bottom:3px;padding-bottom:5px}.room-header h2{font-size:clamp(1.2rem,4vw,1.3rem);margin-bottom:.15rem}.room-header h3{font-size:clamp(.85rem,2.5vw,.9rem)}.room-description{font-size:.75rem;line-height:1.4;margin:3px 0}.room-specs{gap:10px;margin:3px 0}.spec-item{font-size:.75rem;gap:5px}.spec-item svg{font-size:.85rem}.room-amenities{gap:3px;margin:3px 0}.amenity-tag{font-size:.65rem;padding:2px 6px}.room-details-right{align-items:stretch;flex-direction:column;gap:10px;justify-content:space-between;padding:0}.room-price{margin-bottom:10px;padding:10px 12px;text-align:center;width:100%}.price-amount{font-size:clamp(1.3rem,4vw,1.5rem)}.price-label{font-size:.7rem}.total-price{font-size:.75rem;padding:2px 6px}.room-actions{width:100%}.select-room-btn{font-size:.85rem;min-height:44px;min-width:auto;padding:12px 16px;width:100%}}@media (max-width:480px){.page-header{padding:20px 0 15px}.container{padding:0 10px}.room-image-section{height:160px}.room-details-section{gap:10px;padding:10px 12px}.room-price{padding:8px 10px}}@media (max-width:360px){.room-image-section{height:140px}.room-details-section{padding:8px 10px}}.date-range-calendar-single{background:var(--white);border-radius:16px;padding:15px;width:100%}.calendar-header-single{align-items:flex-start;display:flex;gap:12px;margin-bottom:15px;width:100%}.nav-btn-single{align-items:center;background:var(--cream);border:none;border-radius:50%;color:var(--primary-green);cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:45px;justify-content:center;transition:all .3s ease;width:45px}.nav-btn-single:hover{background:var(--primary-green);color:var(--white);transform:scale(1.1)}.calendar-months-single{flex:1 1;width:100%}.calendar-month-single{min-width:0;width:100%}.month-header-single{color:var(--primary-green);font-size:1.1rem;font-weight:600;margin-bottom:10px;text-align:center}.calendar-grid-single{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.day-name-single{color:var(--light-text);font-size:.85rem;font-weight:600;padding:6px 2px;text-align:center}.calendar-day-single{align-items:center;aspect-ratio:1;border-radius:8px;color:var(--dark-text);cursor:pointer;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;justify-content:center;min-height:50px;padding:4px;position:relative;transition:all .2s ease;width:100%}.calendar-day-single.with-price{gap:4px;min-height:68px;padding:6px 4px}.day-number-single{font-size:.95rem;font-weight:600;line-height:1.2}.day-price-single{color:var(--accent-gold);font-size:.7rem;font-weight:700;line-height:1.2;white-space:nowrap}.calendar-day-single.empty{cursor:default;pointer-events:none}.calendar-day-single.past{color:var(--light-text);cursor:not-allowed;opacity:.3}.calendar-day-single.booked{background:repeating-linear-gradient(45deg,#e74c3c1a,#e74c3c1a 5px,#e74c3c0d 0,#e74c3c0d 10px);color:#e74c3c;cursor:not-allowed;opacity:.7}.calendar-day-single.booked .day-number-single{font-weight:500;text-decoration:line-through}.booked-label-single{color:#e74c3c;font-size:1.8rem;font-weight:700;left:50%;opacity:.6;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.calendar-day-single:not(.empty):not(.past):not(.booked):hover{background:var(--cream);transform:scale(1.1)}.calendar-day-single.selected{background:var(--accent-gold);color:var(--white);font-weight:600}.calendar-day-single.selected .day-number-single{font-weight:700}.calendar-day-single.selected .day-price-single{color:#fffffff2;font-weight:700}.calendar-day-single.in-range{background:#d4a57433;color:var(--dark-text)}.calendar-day-single.in-range .day-price-single{color:var(--primary-green)}.calendar-day-single.range-start{border-radius:8px 0 0 8px}.calendar-day-single.range-end{border-radius:0 8px 8px 0}.calendar-day-single.selected.range-end,.calendar-day-single.selected.range-start{border-radius:8px}.selected-dates-single{align-items:center;background:var(--cream);border-radius:14px;display:flex;gap:20px;justify-content:center;margin-top:15px;padding:18px}.date-display-single{display:flex;flex-direction:column;gap:6px}.date-display-single .label{color:var(--light-text);font-size:.95rem}.date-display-single .date{color:var(--primary-green);font-size:1.2rem;font-weight:600}.date-separator-single{color:var(--accent-gold);font-size:1.8rem;font-weight:600}@media (max-width:768px){.date-range-calendar-single{padding:8px}.calendar-header-single{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:45px 1fr 45px;margin-bottom:12px}.nav-btn-single{font-size:1rem;height:40px;width:40px}.month-header-single{font-size:1rem;margin-bottom:10px}.calendar-grid-single{gap:4px}.calendar-day-single{border-radius:4px;font-size:.8rem;min-height:36px;padding:2px}.calendar-day-single.with-price{gap:2px;min-height:50px;padding:4px 2px}.day-name-single{font-size:.65rem;padding:3px 1px}.day-number-single{font-size:.75rem}.day-price-single{font-size:.5rem}.booked-label-single{font-size:1.4rem}.selected-dates-single{flex-direction:column;gap:8px;margin-top:15px;padding:15px}.date-display-single{gap:4px;text-align:center;width:100%}.date-display-single .label{font-size:.9rem}.date-display-single .date{font-size:1.1rem}.date-separator-single{font-size:1.5rem;transform:rotate(90deg)}}@media (max-width:480px){.date-range-calendar-single{padding:6px}.month-header-single{font-size:.95rem;margin-bottom:8px}.calendar-grid-single{gap:3px}.calendar-day-single{font-size:.75rem;min-height:34px}.calendar-day-single.with-price{min-height:48px}.day-name-single{font-size:.6rem;padding:2px 1px}.day-number-single{font-size:.7rem}.day-price-single{font-size:.45rem}.booked-label-single{font-size:1.2rem}.selected-dates-single{margin-top:12px;padding:12px}.date-display-single .label{font-size:.85rem}.date-display-single .date{font-size:1rem}}@media (max-width:360px){.calendar-day-single{min-height:32px}.calendar-day-single.with-price{min-height:46px}.day-number-single{font-size:.65rem}.day-price-single{font-size:.4rem}.booked-label-single{font-size:1rem}}.room-detail-page{background:var(--cream);min-height:100vh;overflow:visible;padding-bottom:40px;position:relative}.detail-header{background:linear-gradient(180deg,var(--primary-forest),var(--light-moss));color:var(--white);margin-bottom:20px;padding:15px 0 12px}.back-to-rooms{align-items:center;background:#fff3;border:none;border-radius:8px;color:var(--white);cursor:pointer;display:inline-flex;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.9rem;gap:6px;margin-bottom:8px;padding:6px 14px;transition:all .3s ease}.back-to-rooms:hover{background:#ffffff4d;transform:translateX(-5px)}.header-info{text-align:left}.room-type-tag-large{background:var(--accent-earth);border-radius:12px;color:var(--white);display:inline-block;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;padding:4px 12px;text-transform:uppercase}.header-info h1{color:var(--white);font-size:1.8rem;line-height:1.2;margin-bottom:.2rem}.header-info h1,.header-info p{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif}.header-info p{color:var(--accent-earth);font-size:1rem;font-style:italic;margin:0}.detail-content{overflow:visible;padding:0}.container{overflow:visible;padding:0 30px}.detail-grid{grid-gap:30px;align-items:flex-start;display:grid;gap:30px;grid-template-columns:1.1fr .7fr;overflow:visible}.detail-left-col{display:flex;flex-direction:column;gap:15px}.main-gallery{background:var(--white);border-radius:10px;box-shadow:0 2px 12px #00000014;padding:12px}.featured-image{border-radius:8px;height:500px;margin-bottom:12px;overflow:hidden;position:relative;width:100%}.featured-image img{height:100%;object-fit:cover;width:100%}.img-nav{align-items:center;background:#fffffff2;border:none;border-radius:50%;box-shadow:0 4px 15px #0003;color:var(--primary-forest);cursor:pointer;display:flex;font-size:1.3rem;height:50px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:50px}.img-nav:hover{background:var(--white);transform:translateY(-50%) scale(1.1)}.img-nav.prev{left:20px}.img-nav.next{right:20px}.img-counter{background:#000000b3;border-radius:20px;bottom:12px;color:var(--white);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.85rem;font-weight:600;padding:5px 12px;position:absolute;right:12px}.thumbnail-strip{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.thumb{border:2px solid #0000;border-radius:6px;cursor:pointer;height:80px;opacity:.7;overflow:hidden;transition:all .3s ease}.thumb:hover{opacity:1;transform:scale(1.05)}.thumb.active{border-color:var(--accent-earth);opacity:1}.thumb img{height:100%;object-fit:cover;width:100%}.virtual-tour-section{background:var(--white);border-radius:10px;box-shadow:0 2px 12px #00000014;padding:15px}.virtual-tour-section h3{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.3rem;margin-bottom:12px}.kuula-embed-container{background:var(--cream);border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-bottom:12px;overflow:hidden;width:100%}.kuula-embed-container iframe{display:block;min-height:400px;width:100%}.launch-360-btn{align-items:center;background:var(--accent-earth);border:none;border-radius:8px;color:var(--white);cursor:pointer;display:flex;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;letter-spacing:.5px;margin-top:8px;padding:12px;text-transform:uppercase;transition:all .3s ease;width:100%}.launch-360-btn:hover{background:#963c3e;box-shadow:0 10px 30px #be4b4e4d;transform:translateY(-2px)}.room-about{background:var(--white);border-radius:10px;box-shadow:0 2px 12px #00000014;padding:15px}.room-about h3{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.3rem;margin-bottom:10px}.room-about p{color:var(--light-text);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.95rem;line-height:1.6;margin:0}.room-amenities-section{background:var(--white);border-radius:10px;box-shadow:0 2px 12px #00000014;padding:15px}.room-amenities-section h3{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.3rem;margin-bottom:12px}.amenities-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.amenity-badge{align-items:center;background:var(--cream);border-radius:6px;color:var(--dark-text);display:flex;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.9rem;gap:8px;padding:8px 10px}.amenity-badge .check{color:var(--accent-earth);font-size:1rem;font-weight:700}.property-rules-section{background:var(--white);border-radius:10px;box-shadow:0 2px 12px #00000014;margin-top:0;padding:15px}.property-rules-section h3{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.3rem;font-weight:700;margin-bottom:12px}.rules-group{border-bottom:1px solid #00000014;margin-bottom:12px;padding-bottom:12px}.rules-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.rules-group h4{color:var(--dark-text);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.95rem;font-weight:600;margin-bottom:8px}.rules-item{display:flex;flex-direction:column;gap:6px}.rule-detail{align-items:center;display:flex;justify-content:space-between;padding:4px 0}.rule-label{color:var(--light-text);font-size:.85rem}.rule-label,.rule-value{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif}.rule-value{color:var(--primary-forest);font-size:.9rem;font-weight:600}.rule-text{color:var(--dark-text);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.85rem;line-height:1.5;margin:0}.rules-allowed{display:flex;flex-direction:column;gap:6px}.allowed-item{align-items:center;border-radius:6px;display:flex;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.85rem;gap:6px;padding:6px 10px}.allowed-item.allowed{background:#4caf501a;color:#4caf50}.allowed-item.not-allowed{background:#f443361a;color:#f44336}.allowed-item .check{color:#4caf50;font-size:1rem;font-weight:700}.allowed-item .cross{color:#f44336;font-size:1rem;font-weight:700}.detail-right-col{height:auto;overflow:visible;position:relative}.sticky-booking-card{align-self:flex-start;background:var(--white);border-radius:12px;box-shadow:0 4px 20px #0000001f;padding:20px;position:-webkit-sticky;will-change:transform;z-index:100}.sticky-booking-card::-webkit-scrollbar{width:8px}.sticky-booking-card::-webkit-scrollbar-track{background:var(--cream);border-radius:10px}.sticky-booking-card::-webkit-scrollbar-thumb{background:var(--accent-earth);border-radius:10px}.sticky-booking-card::-webkit-scrollbar-thumb:hover{background:#963c3e}.quick-specs{grid-gap:10px;border-bottom:2px solid var(--cream);display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-bottom:18px;padding-bottom:18px}.spec-box{align-items:center;background:var(--cream);border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px 8px;text-align:center}.spec-box svg{color:var(--accent-earth);font-size:1.5rem}.spec-box strong{color:var(--primary-forest);font-size:1.1rem}.spec-box span,.spec-box strong{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif}.spec-box span{color:var(--light-text);font-size:.8rem}.booking-dates-summary{border-bottom:2px solid var(--cream);margin-bottom:18px;padding-bottom:18px}.booking-dates-summary h4{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.1rem;margin-bottom:12px}.dates-info{display:flex;flex-direction:column;gap:10px}.date-item{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;justify-content:space-between}.date-item .value{font-size:.95rem}.pricing-calendar-section{margin-bottom:18px}.pricing-calendar-section h4{color:var(--primary-forest);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,serif;font-size:1.1rem;margin-bottom:8px}.calendar-desc{color:var(--light-text);font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.85rem;margin-bottom:15px}.price-breakdown{background:var(--cream);border-radius:10px;margin-bottom:18px;padding:15px}.price-line{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:.95rem}.price-line.total{font-size:1.1rem;margin-top:8px}.price-line .price,.total-price{font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif}.total-price{font-size:1.6rem}.checkout-btn{background:var(--primary-forest);border:none;border-radius:10px;color:var(--white);cursor:pointer;font-family:Lali,Arachveulebrivi Thin SP,Arachveulebrivi Thin,sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:1px;padding:16px;text-transform:uppercase;transition:all .3s ease;width:100%}.checkout-btn:hover{background:var(--light-moss);box-shadow:0 15px 40px #34552866;transform:translateY(-3px)}@media (max-width:1200px){.container{padding:0 25px}.detail-grid{gap:25px}}@media (max-width:1024px){.detail-grid{gap:20px;grid-template-columns:1fr}.sticky-booking-card{max-height:none;position:relative;top:0}.detail-left-col{gap:20px}.featured-image{height:380px}}@media (max-width:768px){.room-detail-page{padding-bottom:40px}.container{padding:0 15px}.detail-header{margin-bottom:15px;padding:12px 0 10px}.back-to-rooms{font-size:.85rem;margin-bottom:6px;min-height:44px;padding:6px 12px}.room-type-tag-large{font-size:.7rem;margin-bottom:6px;padding:4px 10px}.header-info h1{font-size:clamp(1.4rem,5vw,1.8rem);margin-bottom:.15rem}.header-info p{font-size:clamp(.9rem,3vw,1rem)}.detail-grid{gap:15px}.detail-left-col{gap:12px}.main-gallery{border-radius:8px;padding:10px}.featured-image{border-radius:8px;height:240px;margin-bottom:10px}.img-nav{font-size:1rem;height:38px;min-height:44px;min-width:44px;width:38px}.img-nav.prev{left:10px}.img-nav.next{right:10px}.img-counter{bottom:12px;font-size:.85rem;padding:5px 12px;right:12px}.thumbnail-strip{gap:6px;grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.thumb{border-width:2px;height:60px}.property-rules-section,.room-about,.room-amenities-section,.virtual-tour-section{border-radius:8px;padding:12px}.property-rules-section h3,.room-about h3,.room-amenities-section h3,.virtual-tour-section h3{font-size:clamp(1.1rem,4vw,1.3rem);margin-bottom:10px}.room-about p{font-size:.9rem;line-height:1.6}.kuula-embed-container iframe{min-height:320px}.launch-360-btn{font-size:.9rem;margin-top:8px;min-height:44px;padding:10px}.amenities-list{gap:8px;grid-template-columns:1fr}.amenity-badge{font-size:.85rem;padding:7px 10px}.amenity-badge .check{font-size:.95rem}.rules-group{margin-bottom:10px;padding-bottom:10px}.rules-group h4{font-size:.9rem;margin-bottom:6px}.allowed-item{font-size:.8rem;padding:5px 8px}.sticky-booking-card{border-radius:10px;padding:15px}.quick-specs{gap:10px;grid-template-columns:1fr;margin-bottom:15px;padding-bottom:15px}.spec-box{padding:10px 8px}.spec-box svg{font-size:1.4rem}.spec-box strong{font-size:1rem}.spec-box span{font-size:.75rem}.booking-dates-summary h4,.pricing-calendar-section h4{font-size:1rem;margin-bottom:10px}.dates-info{gap:8px}.date-item,.date-item .label{font-size:.85rem}.date-item .value{font-size:.9rem}.calendar-desc{font-size:.8rem;margin-bottom:12px}.price-breakdown{margin-bottom:15px;padding:12px}.price-line{font-size:.9rem;padding:6px 0}.price-line.total{font-size:1rem;padding-top:10px}.total-price{font-size:1.5rem}.checkout-btn{font-size:1rem;min-height:44px;padding:14px}}@media (max-width:480px){.container{padding:0 10px}.detail-header{margin-bottom:10px;padding:10px 0 8px}.featured-image{height:210px}.thumbnail-strip{gap:5px;grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}.thumb{height:50px}.property-rules-section,.room-about,.room-amenities-section,.virtual-tour-section{padding:10px}.property-rules-section h3,.room-about h3,.room-amenities-section h3,.virtual-tour-section h3{font-size:1.1rem;margin-bottom:8px}.sticky-booking-card{padding:12px}.kuula-embed-container iframe{min-height:280px}.checkout-btn{font-size:.95rem;padding:12px}.detail-left-col{gap:10px}.main-gallery{padding:8px}.amenity-badge{font-size:.8rem;padding:6px 8px}}@media (max-width:360px){.featured-image{height:190px}.thumb{height:45px}.container{padding:0 8px}.detail-left-col{gap:8px}.property-rules-section,.room-about,.room-amenities-section,.virtual-tour-section{padding:8px}.kuula-embed-container iframe{min-height:260px}}.tour-modal{align-items:center;animation:fadeIn .3s ease;background:#000000f2;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tour-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:none;border-radius:50%;color:var(--white);cursor:pointer;display:flex;font-size:2.5rem;height:60px;justify-content:center;position:absolute;right:30px;top:30px;transition:all .3s ease;width:60px;z-index:10000}.tour-close:hover{background:#ffffff40;transform:rotate(90deg)}.tour-frame{animation:scaleIn .4s cubic-bezier(.25,.46,.45,.94);border-radius:12px;height:90vh;max-width:1600px;overflow:hidden;width:100%}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.tour-modal{padding:10px}.tour-close{font-size:1.8rem;height:44px;min-height:44px;min-width:44px;right:15px;top:15px;width:44px}.tour-frame{border-radius:8px;height:85vh}}@media (max-width:480px){.tour-modal{padding:5px}.tour-close{font-size:1.6rem;height:40px;right:10px;top:10px;width:40px}.tour-frame{height:80vh}}@media (max-width:360px){.tour-frame{height:75vh}}.checkout-page{background:var(--cream);min-height:100vh;padding-bottom:60px}.checkout-header{background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));color:var(--white);margin-bottom:30px;padding:20px 0 18px}.back-btn{background:#fff3;border:none;border-radius:8px;color:var(--white);display:inline-flex;font-size:.95rem;gap:8px;margin-bottom:12px;transition:all .3s ease}.back-btn:hover{background:#ffffff4d;transform:translateX(-5px)}.checkout-header h1{color:var(--white);font-size:2rem;margin-bottom:.3rem}.checkout-header .subtitle{color:var(--accent-earth);font-size:1.1rem;font-style:italic}.checkout-content{padding:0}.container{max-width:1400px;padding:0 40px}.checkout-grid{grid-gap:40px;align-items:start;display:grid;gap:40px;grid-template-columns:1.2fr 1fr}.checkout-form-section{display:flex;flex-direction:column;gap:30px}.form-card,.payment-card{background:var(--white);border-radius:16px;box-shadow:0 4px 20px #00000014;padding:30px}.form-card h2,.payment-card h2{color:var(--primary-forest);font-size:1.8rem;margin-bottom:10px}.form-description{color:var(--light-text);font-size:1rem;margin-bottom:25px}.booking-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-field{align-items:center;display:flex;gap:12px;position:relative}.field-icon{color:var(--accent-earth);flex-shrink:0;font-size:1.2rem}.form-field input,.form-field textarea{background:#0000;border:none;border-bottom:2px solid #e0e0e0;flex:1 1;font-size:1.05rem;padding:16px 16px 16px 0;transition:border-color .3s ease}.form-field input:focus,.form-field textarea:focus{border-bottom-color:var(--accent-earth);outline:none}.form-field label{color:var(--light-text);font-size:1.05rem;left:40px;pointer-events:none;position:absolute;top:16px;transition:all .3s ease}.form-field input:focus+label,.form-field input:not(:placeholder-shown)+label,.form-field textarea:focus+label,.form-field textarea:not(:placeholder-shown)+label{color:var(--accent-earth);font-size:.85rem;top:-20px}.form-field textarea{min-height:100px;padding-top:16px;resize:vertical}.payment-options{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.payment-option{align-items:center;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.payment-option:hover{background:#be4b4e0d;border-color:var(--accent-earth)}.payment-option.selected{background:#3455280d;border-color:var(--primary-forest)}.payment-info{align-items:center;display:flex;gap:15px}.payment-icon{color:var(--primary-forest);font-size:1.8rem}.payment-info h3{color:var(--dark-text);font-size:1.2rem;margin-bottom:4px}.payment-info p{color:var(--light-text);font-size:.9rem}.payment-badge{align-items:center;background:var(--accent-earth);border-radius:20px;color:var(--white);display:flex;font-size:.8rem;font-weight:600;gap:6px;padding:6px 12px}.payment-buttons{margin-top:20px}.cash-pay-btn,.tbc-pay-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;justify-content:center;letter-spacing:1px;padding:18px 30px;text-transform:uppercase;transition:all .3s ease;width:100%}.tbc-pay-btn{background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:var(--white)}.tbc-pay-btn:hover:not(:disabled){background:linear-gradient(135deg,#1e40af,#2563eb);box-shadow:0 8px 25px #1e3a8a4d;transform:translateY(-2px)}.cash-pay-btn{background:var(--primary-forest);color:var(--white)}.cash-pay-btn:hover:not(:disabled){background:var(--light-moss);box-shadow:0 8px 25px #3455284d;transform:translateY(-2px)}.cash-pay-btn:disabled,.tbc-pay-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{border:2px solid #ffffff4d;border-top:2px solid var(--white);height:20px;width:20px}.booking-summary-section{position:-webkit-sticky;position:sticky;top:20px}.summary-card{background:var(--white);border-radius:16px;box-shadow:0 8px 30px #0000001f;padding:30px}.summary-card h2{color:var(--primary-forest);font-size:1.8rem;margin-bottom:25px}.summary-room{border-bottom:2px solid var(--cream);display:flex;gap:15px;margin-bottom:25px;padding-bottom:20px}.room-image{border-radius:10px;flex-shrink:0;height:80px;overflow:hidden;width:80px}.room-image img{height:100%;object-fit:cover;width:100%}.room-details h3{color:var(--primary-forest);font-size:1.2rem;margin-bottom:4px}.room-details p{color:var(--light-text);font-size:.9rem;margin-bottom:8px}.room-type-badge{border-radius:12px;font-size:.75rem;padding:4px 12px}.summary-dates{border-bottom:2px solid var(--cream);margin-bottom:25px;padding-bottom:20px}.date-item svg{font-size:1.1rem}.date-item .label{font-size:.9rem}.date-item .value{font-size:1rem}.pricing-breakdown{background:var(--cream);border-radius:12px;margin-bottom:25px;padding:20px}.price-line{align-items:center;display:flex;font-size:1rem;justify-content:space-between;padding:8px 0}.price-line.total{border-top:2px solid var(--white);font-size:1.2rem;font-weight:700;margin-top:10px;padding-top:12px}.price-line .price{color:var(--primary-forest);font-weight:600}.total-price{color:var(--accent-earth);font-size:1.4rem}.room-specs{display:flex;flex-direction:column;gap:8px}.spec-item{align-items:center;color:var(--dark-text);display:flex;font-size:.9rem;gap:8px}.spec-item svg{color:var(--accent-earth);font-size:1rem}@media (max-width:1200px){.container{padding:0 30px}.checkout-grid{gap:35px}}@media (max-width:1024px){.checkout-grid{gap:30px;grid-template-columns:1fr}.booking-summary-section{position:relative;top:0}}@media (max-width:768px){.checkout-page{padding-bottom:50px}.container{padding:0 15px}.checkout-header{margin-bottom:20px;padding:18px 0 15px}.back-btn{font-size:.9rem;margin-bottom:10px;min-height:44px;padding:7px 14px}.checkout-header h1{font-size:clamp(1.4rem,5vw,1.6rem);margin-bottom:.2rem}.checkout-header .subtitle{font-size:clamp(.95rem,2.5vw,1rem)}.checkout-form-section,.checkout-grid{gap:20px}.form-card,.payment-card,.summary-card{border-radius:12px;padding:20px}.form-card h2,.payment-card h2,.summary-card h2{font-size:clamp(1.4rem,4vw,1.8rem);margin-bottom:8px}.form-description{font-size:.95rem;margin-bottom:20px}.booking-form{gap:18px}.form-row{gap:18px;grid-template-columns:1fr}.form-field{gap:10px;margin-bottom:0}.field-icon{font-size:1rem}.form-field input,.form-field textarea{font-size:1rem;padding:14px 14px 14px 0}.form-field label{font-size:1rem;left:35px}.form-field textarea{min-height:90px}.payment-options{gap:12px;margin-bottom:20px}.payment-option{min-height:44px;padding:15px}.payment-icon{font-size:1.5rem}.payment-info h3{font-size:1.1rem;margin-bottom:2px}.payment-info p{font-size:.85rem}.payment-badge{font-size:.75rem;padding:5px 10px}.cash-pay-btn,.tbc-pay-btn{font-size:1rem;min-height:44px;padding:16px 24px}.summary-room{gap:12px;margin-bottom:20px;padding-bottom:18px}.room-image{border-radius:8px;height:70px;width:70px}.room-details h3{font-size:clamp(1rem,3vw,1.1rem);margin-bottom:3px}.room-details p{font-size:.85rem;margin-bottom:6px}.room-type-badge{font-size:.7rem;padding:3px 10px}.summary-dates{margin-bottom:20px;padding-bottom:18px}.date-item{margin-bottom:10px}.date-item svg{font-size:1rem}.date-item .label{font-size:.85rem}.date-item .value{font-size:.95rem}.pricing-breakdown{margin-bottom:20px;padding:15px}.price-line{font-size:.95rem;padding:7px 0}.price-line.total{font-size:1.1rem;padding-top:10px}.total-price{font-size:1.3rem}.spec-item{font-size:.85rem;gap:6px}.spec-item svg{font-size:.95rem}}@media (max-width:480px){.container{padding:0 10px}.checkout-header{padding:15px 0 12px}.form-card,.payment-card,.summary-card{padding:18px}.form-field input,.form-field textarea{font-size:.95rem}.payment-option{padding:12px}.room-image{height:60px;width:60px}.cash-pay-btn,.tbc-pay-btn{font-size:.95rem;padding:14px 20px}}@media (max-width:360px){.form-card,.payment-card,.summary-card{padding:15px}.room-image{height:55px;width:55px}}.booking-success-page{background:var(--cream);min-height:100vh;padding:40px 0}.success-container{margin:0 auto;max-width:800px;padding:0 20px}.success-header{margin-bottom:40px;text-align:center}.success-icon{animation:bounceIn .6s ease;color:var(--primary-forest);font-size:4rem;margin-bottom:20px}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.success-header h1{color:var(--primary-forest);font-size:2.5rem;margin-bottom:10px}.success-subtitle{color:var(--light-text);font-size:1.2rem;font-style:italic}.confirmation-details{display:flex;flex-direction:column;gap:30px}.confirmation-card{background:var(--white);border-radius:16px;box-shadow:0 8px 30px #0000001f;padding:30px}.confirmation-card h2{color:var(--primary-forest);font-size:1.8rem;margin-bottom:25px;text-align:center}.booking-id,.transaction-id{align-items:center;border-bottom:1px solid var(--cream);display:flex;justify-content:space-between;padding:12px 0}.booking-id .label,.transaction-id .label{color:var(--light-text);font-size:1rem}.booking-id .value,.transaction-id .value{color:var(--primary-forest);font-size:1.1rem;font-weight:600}.room-info{background:var(--cream);border-radius:12px;margin:25px 0;padding:20px;text-align:center}.room-info h3{color:var(--primary-forest);font-size:1.5rem;margin-bottom:8px}.room-info p{color:var(--light-text);font-size:1.1rem;margin-bottom:12px}.room-type-badge{background:var(--accent-earth);border-radius:16px;color:var(--white);display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:1px;padding:6px 16px;text-transform:uppercase}.dates-info{background:var(--cream);border-radius:12px;margin:25px 0;padding:20px}.date-item{align-items:center;display:flex;gap:12px;margin-bottom:12px}.date-item:last-child{margin-bottom:0}.date-item svg{color:var(--accent-earth);flex-shrink:0;font-size:1.2rem}.date-item .label{color:var(--light-text);font-size:.95rem;margin-right:8px;min-width:80px}.date-item .value{color:var(--dark-text);font-size:1.05rem;font-weight:600}.pricing-info{background:linear-gradient(135deg,var(--primary-forest),var(--light-moss));border-radius:12px;margin:25px 0;padding:20px;text-align:center}.total-price{align-items:center;color:var(--dark-text);display:flex;font-size:1.3rem;font-weight:700;justify-content:space-between}.total-price .price{color:var(--accent-earth);font-size:1.6rem}.check-in-info,.customer-info{background:var(--cream);border-radius:12px;margin:25px 0;padding:20px}.check-in-info h3,.customer-info h3{color:var(--primary-forest);font-size:1.3rem;margin-bottom:15px}.customer-details{display:flex;flex-direction:column;gap:10px}.customer-item{align-items:center;color:var(--dark-text);display:flex;font-size:1rem;gap:10px}.customer-item svg{color:var(--accent-earth);flex-shrink:0;font-size:1.1rem}.check-in-details{display:flex;flex-direction:column;gap:12px}.check-in-item{align-items:center;display:flex;gap:12px}.check-in-item svg{color:var(--accent-earth);flex-shrink:0;font-size:1.1rem}.check-in-item .label{color:var(--light-text);font-size:.95rem;margin-right:8px;min-width:80px}.check-in-item .value{color:var(--dark-text);font-size:1.05rem;font-weight:600}.action-buttons{gap:20px}.btn-primary,.btn-secondary{border-radius:12px;font-size:1.1rem;letter-spacing:1px;min-width:200px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.btn-primary:hover{box-shadow:0 8px 25px #3455284d}.btn-secondary{background:var(--white);border:2px solid var(--primary-forest);color:var(--primary-forest)}.btn-secondary:hover{background:var(--primary-forest);box-shadow:0 8px 25px #3455284d;color:var(--white);transform:translateY(-2px)}@media print{.booking-success-page{background:#fff;padding:0}.action-buttons{display:none}.confirmation-card{border:1px solid #ddd;box-shadow:none}}@media (max-width:768px){.booking-success-page{padding:30px 0}.success-container{padding:0 15px}.success-header{margin-bottom:30px}.success-icon{font-size:3.5rem;margin-bottom:15px}.success-header h1{font-size:clamp(1.8rem,6vw,2rem);margin-bottom:8px}.success-subtitle{font-size:clamp(.95rem,2.5vw,1rem)}.confirmation-details{gap:25px}.confirmation-card{border-radius:12px;padding:20px}.confirmation-card h2{font-size:clamp(1.3rem,4vw,1.5rem);margin-bottom:20px}.booking-id,.transaction-id{align-items:flex-start;flex-direction:column;gap:5px;padding:10px 0}.booking-id .label,.transaction-id .label{font-size:.9rem}.booking-id .value,.transaction-id .value{font-size:1rem}.room-info{margin:20px 0;padding:18px}.room-info h3{font-size:clamp(1.2rem,4vw,1.5rem);margin-bottom:6px}.room-info p{font-size:1rem;margin-bottom:10px}.room-type-badge{font-size:.75rem;padding:5px 12px}.dates-info{margin:20px 0;padding:18px}.date-item{margin-bottom:10px}.date-item svg{font-size:1.1rem}.date-item .label{font-size:.9rem;min-width:70px}.date-item .value{font-size:1rem}.pricing-info{margin:20px 0;padding:18px}.total-price{flex-direction:column;font-size:1.2rem;gap:8px}.total-price .price{font-size:1.4rem}.check-in-info,.customer-info{margin:20px 0;padding:18px}.check-in-info h3,.customer-info h3{font-size:1.2rem;margin-bottom:12px}.customer-details{gap:8px}.customer-item{font-size:.95rem;gap:8px}.customer-item svg{font-size:1rem}.check-in-details,.check-in-item{gap:10px}.check-in-item svg{font-size:1rem}.check-in-item .label{font-size:.9rem;min-width:70px}.check-in-item .value{font-size:1rem}.action-buttons{align-items:center;flex-direction:column;gap:15px;margin-top:10px}.btn-primary,.btn-secondary{font-size:1rem;max-width:300px;min-height:44px;padding:14px 25px;width:100%}}@media (max-width:480px){.booking-success-page{padding:25px 0}.success-container{padding:0 10px}.success-icon{font-size:3rem}.confirmation-card{padding:18px}.check-in-info,.customer-info,.dates-info,.pricing-info,.room-info{padding:15px}.btn-primary,.btn-secondary{max-width:100%;padding:12px 20px}}@media (max-width:360px){.success-icon{font-size:2.5rem}.confirmation-card{padding:15px}.check-in-info,.customer-info,.dates-info,.pricing-info,.room-info{padding:12px}}.reservation-ticket-page{background:#f5f5f5;min-height:100vh;padding:20px 15px}.ticket-container{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:800px}.ticket-header{align-items:center;background:#000;border-bottom:3px solid #333;color:#fff;display:flex;justify-content:space-between;padding:20px}.ticket-header h1{font-size:20px;font-weight:600;margin:0}.back-btn,.print-btn{align-items:center;background:#0000;border:1px solid #fff;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .2s}.back-btn:hover,.print-btn:hover{background:#fff;color:#000}.ticket-content{padding:25px 20px}.confirmation-badge{background:#000;border-left:4px solid #666;color:#fff;margin-bottom:25px;padding:20px;text-align:center}.check-icon{font-size:40px;margin-bottom:10px}.confirmation-badge h2{font-size:22px;font-weight:600;margin:8px 0}.confirmation-code{display:flex;flex-direction:column;gap:5px;margin-top:15px}.confirmation-code .label{font-size:12px;letter-spacing:1px;opacity:.8;text-transform:uppercase}.confirmation-code .code{font-family:Courier New,monospace;font-size:20px;font-weight:700;letter-spacing:3px}.ticket-section{border-bottom:1px solid #e0e0e0;margin-bottom:20px;padding-bottom:20px}.ticket-section:last-child{border-bottom:none}.ticket-section h3{align-items:center;color:#000;display:flex;font-size:16px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:15px;text-transform:uppercase}.property-info h4{color:#000;font-size:18px;font-weight:600;margin-bottom:8px}.property-description{color:#666;font-size:14px;line-height:1.5;margin-bottom:15px}.booking-details,.customer-details,.payment-details,.property-details{display:flex;flex-direction:column;gap:10px}.detail-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.detail-item{align-items:flex-start;background:#fafafa;border-left:2px solid #000;display:flex;gap:10px;padding:12px}.detail-item svg{color:#000;flex-shrink:0;font-size:16px;margin-top:2px}.detail-item .label{color:#000;font-size:13px;font-weight:600;margin-right:8px}.detail-item .value{color:#333;font-size:14px}.pricing-section .pricing-details{background:#fafafa;border-left:3px solid #000;padding:15px}.price-row{border-bottom:1px solid #e0e0e0;font-size:14px;padding:8px 0}.price-row:last-child{border-bottom:none;color:#000;font-size:18px;font-weight:700;margin-top:5px}.price{color:#000;font-size:20px}.status-section .status-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.status-item{background:#fafafa;border-left:2px solid #000;padding:12px;text-align:left}.status-badge{margin-top:8px}.special-requests{background:#fafafa;border-left:2px solid #666;color:#333;font-size:14px;line-height:1.6;padding:15px}.ticket-footer{border-top:1px solid #e0e0e0;color:#666;font-size:12px;margin-top:20px;padding-top:20px;text-align:center}.ticket-footer p{margin:4px 0}.btn-primary{border:none;cursor:pointer;font-size:14px;padding:10px 24px;transition:all .2s}@media print{.reservation-ticket-page{background:#fff}.ticket-header{background:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.back-btn,.print-btn{display:none}.confirmation-badge{background:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (max-width:768px){.reservation-ticket-page{padding:10px}.ticket-header{flex-direction:column;gap:10px;padding:15px}.ticket-header h1{font-size:18px}.detail-row,.status-grid{grid-template-columns:1fr}.ticket-content{padding:15px}.ticket-section h3{font-size:14px}.confirmation-code .code,.property-info h4{font-size:16px}}.reservation-details-page{background:#f5f5f5;min-height:100vh;padding:20px 15px}.details-container{background:#fff;border:1px solid #e0e0e0;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:900px}.details-header{align-items:center;background:#000;border-bottom:3px solid #333;color:#fff;display:flex;gap:15px;padding:20px}.details-header h1{font-size:20px;font-weight:600;margin:0}.back-btn{align-items:center;background:#0000;border:1px solid #fff;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .2s}.back-btn:hover{background:#fff;color:#000}.details-content{padding:25px 20px}.details-card{background:#fafafa;border-left:3px solid #000;margin-bottom:20px;padding:20px}.details-card h2{border-bottom:1px solid #e0e0e0;color:#000;font-size:16px;font-weight:600;letter-spacing:.5px;margin-bottom:15px;padding-bottom:8px;text-transform:uppercase}.details-card h3{color:#333;font-size:15px;font-weight:600;margin-bottom:12px}.info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{align-items:flex-start;background:#fff;border-left:2px solid #000;display:flex;gap:10px;padding:12px}.info-item svg{color:#000;flex-shrink:0;font-size:16px;margin-top:2px}.info-item .label{color:#000;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.info-item .value{color:#333;display:block;font-size:14px}.status-badge{background:#000;color:#fff;display:inline-block;font-size:12px;font-weight:500;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.property-section{background:#fff;border-left:2px solid #000;padding:12px}.property-section h3{color:#000;font-size:16px;margin-bottom:10px}.special-requests-section{background:#fff;border-left:2px solid #666;margin-top:15px;padding:12px}.special-requests-section h3{color:#000;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.special-requests-section p{color:#333;font-size:14px;line-height:1.6}.pricing-card{background:#000;border-left:none;color:#fff}.pricing-card h2{border-bottom-color:#333;color:#fff}.pricing-section{background:#ffffff0d;border-left:3px solid #fff;padding:15px}.price-row{align-items:center;display:flex;justify-content:space-between;padding:10px 0}.price-row span:first-child{font-size:14px;letter-spacing:1px;opacity:.9;text-transform:uppercase}.price{font-size:28px;font-weight:700}.action-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:25px}.btn-primary,.btn-secondary{border:none;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .2s}.btn-primary{background:#000;color:#fff}.btn-primary:hover{background:#333}.btn-secondary{background:#fff;border:2px solid #000;color:#000}.btn-secondary:hover{background:#000;color:#fff}.error-state,.loading-state{padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #f0f0f0;border-radius:50%;border-top-color:#000;height:40px;margin:0 auto 15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-state p{color:#000;font-size:16px;margin-bottom:20px}@media (max-width:768px){.reservation-details-page{padding:10px}.details-card,.details-content{padding:15px}.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.details-header{padding:15px}.details-header h1{font-size:18px}.details-card h2{font-size:14px}.price{font-size:24px}}.App{overflow-x:hidden;overflow-y:hidden;width:100%}.App.loading{opacity:0;visibility:hidden}.App.loaded{animation:appFadeIn .5s ease-in-out;opacity:1;visibility:visible}@keyframes appFadeIn{0%{opacity:0}to{opacity:1}}.fade-in-section{opacity:0;transform:translateY(120px) scale(.95);transition:opacity 1.4s cubic-bezier(.25,.46,.45,.94),transform 1.4s cubic-bezier(.25,.46,.45,.94)}.fade-in-section.visible{opacity:1;transform:translateY(0) scale(1)}.fade-in-section .accommodation-card,.fade-in-section .grid-item,.fade-in-section .story-text-box{opacity:0;transform:translateY(60px);transition:opacity .8s cubic-bezier(.25,.46,.45,.94),transform .8s cubic-bezier(.25,.46,.45,.94)}.fade-in-section.visible .accommodation-card,.fade-in-section.visible .grid-item,.fade-in-section.visible .story-text-box{opacity:1;transform:translateY(0)}.fade-in-section.visible .accommodation-card:first-child{transition-delay:.1s}.fade-in-section.visible .accommodation-card:nth-child(2){transition-delay:.3s}.fade-in-section.visible .accommodation-card:nth-child(3){transition-delay:.5s}.fade-in-section.visible .grid-item:first-child{transition-delay:.1s}.fade-in-section.visible .grid-item:nth-child(2){transition-delay:.2s}.fade-in-section.visible .grid-item:nth-child(3){transition-delay:.3s}.fade-in-section.visible .grid-item:nth-child(4){transition-delay:.4s}#story.fade-in-section{transform:translateY(150px) scale(.9)}#story.fade-in-section.visible{transform:translateY(0) scale(1)}html{scroll-behavior:smooth}.reveal-image img{transform:scale(1.1);transition:transform 1.5s cubic-bezier(.25,.46,.45,.94)}.fade-in-section.visible .reveal-image img{transform:scale(1)}.parallax{background-attachment:fixed;background-position:50%;background-repeat:no-repeat;background-size:cover}@media (max-width:768px){.parallax{background-attachment:scroll}}.reveal-image{overflow:hidden;position:relative}.reveal-image:after{animation:reveal 1.2s cubic-bezier(.77,0,.175,1) forwards;background:var(--cream);content:"";height:100%;left:0;position:absolute;top:0;transform-origin:left;width:100%}@keyframes reveal{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.container{margin:0 auto;max-width:1600px;padding:0 20px}.wide-container{max-width:100%;padding:0}section{position:relative}.shape-divider{bottom:0;left:0;line-height:0;overflow:hidden;position:absolute;width:100%}.shape-divider svg{display:block;height:60px;position:relative;width:calc(100% + 1.3px)}.btn{border:2px solid #0000;border-radius:0;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;letter-spacing:2px;overflow:hidden;padding:16px 40px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.btn:before{background:#fff3;content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s cubic-bezier(.25,.46,.45,.94);width:100%;z-index:0}.btn:hover:before{left:100%}.btn span{position:relative;z-index:1}.btn-primary{background:var(--primary-forest);border-color:var(--primary-forest);color:var(--white)}.btn-primary:hover{background:var(--light-moss);border-color:var(--light-moss);box-shadow:0 10px 30px #3455284d;transform:translateY(-2px)}.btn-outline{background:#0000;border:2px solid var(--white);color:var(--white)}.btn-outline:hover{background:var(--white);color:var(--primary-forest)}.btn-gold{background:var(--accent-earth);border-color:var(--accent-earth);color:var(--white)}.btn-gold:hover{background:#963c3e;border-color:#963c3e;box-shadow:0 10px 30px #be4b4e4d;transform:translateY(-2px)}.slide-up{animation:slideUp 1s ease-out forwards;opacity:0}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.container{padding:0 15px}.btn{font-size:.9rem;min-height:44px;padding:14px 32px}.fade-in-section{transform:translateY(80px) scale(.97)}.fade-in-section.visible{transform:translateY(0) scale(1)}#story.fade-in-section{transform:translateY(100px) scale(.95)}#story.fade-in-section.visible{transform:translateY(0) scale(1)}}@media (max-width:480px){.container{padding:0 10px}.btn{font-size:.85rem;padding:12px 28px}.wide-container{padding:0}}@media (max-width:360px){.container{padding:0 8px}.btn{font-size:.8rem;padding:11px 24px}}
/*# sourceMappingURL=main.bc7d2c2d.css.map*/