:root{--primary-color:#12A4B8;--primary-hover:#0D8A9C;--secondary-color:#00576A;--secondary-hover:#004352;--accent-color:#FF8C25;--accent-hover:#E67A11;--gradient-blue:linear-gradient(135deg,#12A4B8 0,#00576A 100%);--gradient-red:linear-gradient(135deg,#EF4444 0,#B91C1C 100%);.bg-gradient-blue{background:var(--gradient-blue);color:white}.bg-gradient-danger{background:var(--gradient-red);color:white}--bg-light:#F9FAFB;--bg-dark:#0A2540;--bg-card:#FFF;--bg-card-dark:#0F2D48;--text-dark:#0A2540;--text-medium:#4B5563;--text-light:#9CA3AF;--text-white:#F9FAFB;--success:#10B981;--error:#EF4444;--warning:#F59E0B;--info:#3B82F6;--unavailable-indicator:#dc3545;--border-light:#E5E7EB;--border-medium:#D1D5DB;--border-dark:#9CA3AF;--success:#10B981;--warning:#F59E0B;--danger:#EF4444;--info:#3B82F6;--primary-rgb:18,164,184;--secondary-rgb:0,87,106;--accent-rgb:255,140,37;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem}body{font-family:'Plus Jakarta Sans','Outfit','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;background-color:var(--bg-light);color:var(--text-dark);line-height:1.5;font-size:var(--text-base)}a{color:var(--primary-color);text-decoration:none;transition:color .2s ease-in-out}a:hover{color:var(--primary-hover)}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--text-white)}.btn-primary:hover,.btn-primary:focus{background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-secondary{background-color:var(--secondary-color);border-color:var(--secondary-color);color:var(--text-white)}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--secondary-hover);border-color:var(--secondary-hover)}.btn-accent{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--text-white)}.btn-accent:hover,.btn-accent:focus{background-color:var(--accent-hover);border-color:var(--accent-hover)}.btn-outline-primary{color:var(--primary-color);border-color:var(--primary-color)}.btn-outline-primary:hover,.btn-outline-primary:focus{background-color:var(--primary-color);color:var(--text-white)}.card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;border:none;background-color:var(--bg-card)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.card-img-top{height:200px;object-fit:cover}.card-body{padding:var(--space-6)}.card-title{font-weight:700;margin-bottom:var(--space-2);color:var(--text-dark)}.card-text{color:var(--text-medium)}.navbar{background-color:#001232;background-image:linear-gradient(135deg,#001232 0,#001d4e 100%);box-shadow:0 4px 20px rgba(0,0,0,0.25);padding:.5rem 0;min-height:55px;transition:all .3s ease;border-bottom:1px solid rgba(18,164,184,0.3);position:relative;overflow:visible;display:flex;align-items:center;padding-left:0!important;margin-left:0!important}.navbar-toggler{padding:.7rem .85rem;border:1px solid rgba(255,255,255,0.3);border-radius:8px;background:rgba(18,164,184,0.15);position:relative;z-index:20;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,0.15),0 0 0 4px rgba(18,164,184,0.05);cursor:pointer;margin-right:5px;outline:none!important}.navbar-toggler:hover,.navbar-toggler:focus{background:rgba(18,164,184,0.25);border-color:rgba(255,255,255,0.5);box-shadow:0 4px 15px rgba(18,164,184,0.3),0 0 0 4px rgba(18,164,184,0.1);outline:none!important}.navbar-toggler i{font-size:1.25rem;color:white;text-shadow:0 0 10px rgba(18,164,184,0.5);position:relative;z-index:2}.navbar-toggler::after{content:'';position:absolute;inset:-3px;border-radius:12px;background:radial-gradient(circle,rgba(18,164,184,0.4) 0,rgba(18,164,184,0) 70%);opacity:0;transition:opacity .3s ease;z-index:1;pointer-events:none}.navbar-toggler:hover::after,.navbar-toggler:focus::after{opacity:1}@media(max-width:991.98px){.navbar-collapse{background:rgba(0,18,50,0.97);backdrop-filter:blur(10px);border-radius:12px;margin-top:10px;box-shadow:0 10px 30px rgba(0,0,0,0.25),0 0 0 1px rgba(18,164,184,0.1);padding:1rem;max-height:85vh;overflow-y:auto}.navbar-nav.mx-auto{margin:1rem 0!important;gap:0}.nav-item{width:100%;margin:.2rem 0}.navbar-nav:last-child{margin-top:1rem;border-top:1px solid rgba(255,255,255,0.1);padding-top:1rem}.portal-link{margin-left:0;margin-top:.5rem}.dropdown-menu{position:static!important;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);margin:.5rem 0;padding:.5rem;float:none;width:100%;transform:none!important;display:none;visibility:visible;opacity:1}.dropdown-menu.show{display:block!important}.dropdown:hover .dropdown-menu{display:none}.dropdown.show .dropdown-menu{display:block!important}.dropdown-item{color:rgba(255,255,255,0.8);padding:.5rem 1rem}.dropdown-item:hover,.dropdown-item:focus{background:rgba(255,255,255,0.1);color:white}.dropdown-header{color:var(--primary-color);padding:.5rem 1rem;margin-top:0}.dropdown-toggle{flex-direction:row;justify-content:space-between;width:100%}.dropdown-toggle .nav-link-text{flex:1}.dropdown-toggle .dropdown-arrow{margin-left:.5rem;font-size:.8rem;color:rgba(255,255,255,0.8)}.dropdown.show .dropdown-toggle .dropdown-arrow{color:var(--accent-color)}.dropdown-divider{margin:.3rem 0}}.navbar::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(18,164,184,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(18,164,184,0.05) 1px,transparent 1px);background-size:20px 20px;background-position:center center;opacity:.5;z-index:0}.navbar::after{content:'';position:absolute;bottom:0;left:0;height:2px;width:100%;background:linear-gradient(90deg,transparent 0,rgba(18,164,184,0.8) 20%,var(--accent-color) 50%,rgba(18,164,184,0.8) 80%,transparent 100%);background-size:200% 100%;animation:techLine 5s infinite linear;z-index:1}@keyframes techLine{0%{background-position:100% 0}100%{background-position:-100% 0}}.navbar-brand{font-weight:600;font-size:1.4rem;color:var(--primary-color);letter-spacing:.5px;transition:all .4s ease;padding:0!important;margin:0!important;position:relative;display:flex;align-items:center;margin-right:1.5rem!important;margin-left:0!important;transform:translateY(0);overflow:visible}.brand-text{font-family:'Outfit','Plus Jakarta Sans',sans-serif;letter-spacing:1px;font-weight:700;font-size:1.6rem;color:var(--primary-color);background:linear-gradient(120deg,var(--primary-color),var(--accent-color),var(--primary-color));background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;animation:gradient-animation 6s ease infinite}@keyframes gradient-animation{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}.navbar-brand img{transition:transform .5s cubic-bezier(0.34,1.56,0.64,1),filter .4s ease;will-change:transform;max-height:60px;width:auto;position:relative;z-index:2}.navbar-brand::after{content:'';position:absolute;width:100%;height:100%;border-radius:6px;background:radial-gradient(circle,rgba(18,164,184,0.4) 0,rgba(255,140,37,0) 70%);top:50%;left:25px;transform:translateY(-50%) scale(0);opacity:0;filter:blur(10px);z-index:-1;transition:transform .5s cubic-bezier(0.34,1.56,0.64,1),opacity .5s ease}.navbar-brand:hover{color:var(--accent-color)}.navbar-brand:hover img{transform:scale(1.05) translateY(0) rotate(2deg);filter:drop-shadow(0 8px 16px rgba(18,164,184,0.25))}.navbar-brand:hover::after{transform:translateY(-50%) scale(1);opacity:1}.navbar-nav.mx-auto{font-family:'Inter',sans-serif;display:flex;align-items:center;gap:.3rem}.nav-item{position:relative;margin:0 .15rem}.nav-link{font-weight:600;color:rgba(255,255,255,0.92);padding:.6rem 1.1rem;margin:.2rem 0;border-radius:6px;transition:all .4s cubic-bezier(0.17,0.67,0.83,0.67);letter-spacing:.5px;position:relative;text-transform:uppercase;font-size:.82rem;font-family:'Outfit','Plus Jakarta Sans',sans-serif;overflow:hidden;z-index:2;display:flex;align-items:center;backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,0.05);box-shadow:0 2px 10px rgba(0,0,0,0.15)}.nav-link::after{content:'';position:absolute;bottom:6px;left:50%;transform:translateX(-50%) scale(0);width:4px;height:4px;background:var(--primary-color);border-radius:50%;box-shadow:0 0 10px 2px var(--primary-color);opacity:0;transition:all .4s cubic-bezier(0.17,0.67,0.83,0.67)}.nav-link::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(18,164,184,0.08) 0,rgba(18,164,184,0.12) 50%,rgba(255,140,37,0.08) 100%);opacity:0;z-index:-1;transition:opacity .4s ease,transform .4s ease;transform:translateY(100%);border-radius:6px}.nav-link span{position:relative;z-index:2}.nav-link:hover::after,.nav-link:focus::after,.nav-link.active::after{transform:translateX(-50%) scale(1);opacity:1}.nav-link:hover::before,.nav-link:focus::before,.nav-link.active::before{opacity:1;transform:translateY(0)}.nav-link:hover,.nav-link:focus,.nav-link.active{color:white;background:rgba(18,164,184,0.08);box-shadow:0 4px 15px rgba(18,164,184,0.2);border-color:rgba(18,164,184,0.3);letter-spacing:.6px;transform:translateY(-1px)}.nav-link i{margin-right:.5rem;font-size:.9rem;transition:transform .4s cubic-bezier(0.34,1.56,0.64,1);opacity:.9;position:relative;top:-1px}.nav-link:hover i{transform:scale(1.2);color:var(--accent-color)}.dropdown-toggle{position:relative;display:flex;flex-direction:column;align-items:center}.dropdown-toggle::after{display:none}.dropdown-toggle .nav-link-text{display:block;position:relative}.dropdown-toggle .dropdown-arrow{display:block;margin-top:2px;color:rgba(255,255,255,0.7);font-size:.7rem;transition:all .3s ease}.dropdown-toggle:hover .dropdown-arrow{color:var(--accent-color)}.dropdown.show .dropdown-toggle .dropdown-arrow,.dropdown:hover .dropdown-toggle .dropdown-arrow{color:var(--accent-color)}.dropdown-menu{border-radius:12px;backdrop-filter:blur(10px);background:rgba(255,255,255,0.97);box-shadow:0 10px 30px rgba(0,0,0,0.15),0 1px 5px rgba(18,164,184,0.1),0 -1px 0 rgba(255,255,255,0.6) inset;border:1px solid rgba(18,164,184,0.1);padding:1rem .5rem;margin-top:.5rem;min-width:240px;display:block;opacity:0;visibility:hidden;transform:translateY(10px) scale(0.98);transform-origin:top center;transition:all .3s cubic-bezier(0.17,0.67,0.83,0.67);overflow:hidden}.dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.dropdown-header{font-weight:700;color:var(--primary-color);background:linear-gradient(to right,var(--primary-color),var(--secondary-color));background-clip:text;-webkit-background-clip:text;color:transparent;padding:.7rem 1.2rem .4rem;font-size:.8rem;letter-spacing:.8px;text-transform:uppercase;margin-top:.3rem;position:relative;display:flex;align-items:center}.dropdown-item{padding:.6rem 1.5rem;font-size:.92rem;font-weight:500;color:var(--text-dark);transition:all .25s ease;border-radius:8px;margin:.2rem .5rem;position:relative;display:flex;align-items:center;position:relative;overflow:hidden}.dropdown-item i{margin-right:.5rem;font-size:.9rem;color:var(--primary-color);transition:transform .3s ease}.dropdown-item:hover,.dropdown-item:focus{background:linear-gradient(to right,rgba(18,164,184,0.1),rgba(18,164,184,0.05));color:var(--primary-color);transform:translateX(5px)}.dropdown-item:hover i{transform:scale(1.2)}.dropdown-item::after{content:'';position:absolute;left:0;top:0;height:100%;width:2px;background:linear-gradient(to bottom,var(--primary-color),var(--accent-color));transform:scaleY(0);transform-origin:top;transition:transform .3s ease}.dropdown-item:hover::after{transform:scaleY(1)}.dropdown-divider{margin:.6rem 1rem;border:none;height:1px;background:linear-gradient(to right,transparent,rgba(18,164,184,0.2),rgba(18,164,184,0.2),transparent);opacity:.5}.portal-link{color:#fff;border-radius:12px;padding:.65rem 1.4rem;margin-left:.5rem;font-weight:600;letter-spacing:.3px;position:relative;overflow:hidden;font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s cubic-bezier(0.4,0,0.2,1);backdrop-filter:blur(10px);border:1.5px solid transparent}.portal-link.owner-portal{background:linear-gradient(135deg,rgba(18,164,184,0.2) 0,rgba(18,164,184,0.35) 100%);border-color:rgba(18,164,184,0.4);box-shadow:0 2px 8px rgba(18,164,184,0.15),0 1px 0 rgba(255,255,255,0.1) inset}.portal-link.manager-portal{background:linear-gradient(135deg,rgba(255,140,37,0.2) 0,rgba(255,140,37,0.35) 100%);border-color:rgba(255,140,37,0.4);box-shadow:0 2px 8px rgba(255,140,37,0.15),0 1px 0 rgba(255,255,255,0.1) inset}.portal-link i{font-size:1rem;transition:transform .3s cubic-bezier(0.34,1.56,0.64,1);position:relative;z-index:2}.portal-link::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .3s ease;z-index:0;border-radius:12px}.portal-link.owner-portal::before{background:linear-gradient(135deg,rgba(18,164,184,0.5) 0,rgba(18,164,184,0.7) 100%)}.portal-link.manager-portal::before{background:linear-gradient(135deg,rgba(255,140,37,0.5) 0,rgba(255,140,37,0.7) 100%)}.portal-link::after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:width .4s ease,height .4s ease,opacity .4s ease;z-index:1;background:radial-gradient(circle,rgba(255,255,255,0.25) 0,transparent 70%)}.portal-link span{position:relative;z-index:2}.portal-link.owner-portal:hover{color:white;transform:translateY(-2px);box-shadow:0 8px 20px rgba(18,164,184,0.35),0 1px 0 rgba(255,255,255,0.2) inset;border-color:rgba(18,164,184,0.7)}.portal-link.manager-portal:hover{color:white;transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,140,37,0.35),0 1px 0 rgba(255,255,255,0.2) inset;border-color:rgba(255,140,37,0.7)}.portal-link:hover::before{opacity:1}.portal-link:hover::after{width:200%;height:200%;opacity:1}.portal-link:hover i{transform:translateX(2px) scale(1.1)}.portal-link:active{transform:translateY(0)}@media(max-width:991px){.portal-link{margin-left:0;margin-top:.5rem;justify-content:center;width:100%}}.hero{position:relative;height:80vh;min-height:500px;display:flex;align-items:center;background-size:cover;background-position:center;background-image:linear-gradient(rgba(0,0,0,0.4),rgba(0,0,0,0.4)),url('/static/images/hero-bg.jpg');color:white}.hero-content{max-width:800px;padding:var(--space-8)}.hero-title{font-size:var(--text-5xl);font-weight:800;margin-bottom:var(--space-4)}.hero-subtitle{font-size:var(--text-xl);margin-bottom:var(--space-6)}.property-card{margin-bottom:var(--space-6);height:100%}.property-card .card-img-top{height:250px}.property-price{font-size:var(--text-lg);font-weight:700;color:var(--primary-color)}.pricing-info-badge{background-color:var(--primary-color);color:white;padding:15px;border-radius:8px;margin-bottom:10px;text-align:center;box-shadow:0 2px 5px rgba(0,0,0,0.1)}.variable-price{color:var(--primary-color);font-weight:bold}.special-price-date{position:relative}.special-price-date::after{content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:4px;height:4px;background-color:var(--primary-color);border-radius:50%}.property-meta{display:flex;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.property-meta-item{display:flex;align-items:center;color:var(--text-medium)}.property-meta-item i{margin-right:var(--space-2);color:var(--primary-color)}.feature-section{padding:var(--space-16) 0}.feature-card{text-align:center;padding:var(--space-6);height:100%}.feature-icon{width:60px;height:60px;margin:0 auto var(--space-4);background-color:rgba(37,99,235,0.1);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:var(--text-2xl)}.testimonial{text-align:center;padding:var(--space-6);border-radius:var(--radius-lg);background-color:var(--bg-card);box-shadow:var(--shadow-md)}.testimonial-text{font-style:italic;margin-bottom:var(--space-4)}.testimonial-author{font-weight:600}.footer{background-color:var(--bg-dark);color:var(--text-white);padding:var(--space-16) 0 var(--space-8);margin-top:var(--space-16)}.footer-heading{font-family:'Outfit','Plus Jakarta Sans',sans-serif;font-size:1.25rem;font-weight:600;margin-bottom:var(--space-6);color:var(--accent-color);letter-spacing:.5px;position:relative;padding-bottom:12px}.footer-heading::after{content:'';position:absolute;bottom:0;left:0;width:40px;height:2px;background-color:var(--primary-color)}.footer-link{color:var(--text-light);display:block;margin-bottom:var(--space-3);transition:all .2s ease;font-weight:300;letter-spacing:.3px}.footer-link:hover{color:var(--accent-color);transform:translateX(3px)}.footer-divider{height:1px;background:linear-gradient(to right,rgba(18,164,184,0.1),rgba(18,164,184,0.5),rgba(18,164,184,0.1));margin:var(--space-6) 0}.footer-bottom{padding-top:var(--space-4);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:15px;color:var(--text-light)}.footer-bottom p{margin-bottom:0}.footer-legal{display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center;margin-top:10px}.footer-legal-link{color:var(--text-light);font-size:.9rem;transition:color .2s ease;text-decoration:none;padding:3px 8px;border-radius:4px}.footer-legal-link:hover{color:var(--primary-color);background-color:rgba(18,164,184,0.1)}.social-icons{display:flex;gap:var(--space-3)}.social-icon{width:42px;height:42px;border-radius:var(--radius-full);background-color:rgba(18,164,184,0.1);display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:all .3s ease;border:1px solid rgba(18,164,184,0.2)}.social-icon:hover{background-color:var(--primary-color);color:var(--text-white);transform:translateY(-3px)}.footer-btn{border-color:var(--primary-color);color:var(--primary-color);padding:8px 20px;font-size:14px;letter-spacing:.5px;transition:all .3s ease}.footer-btn:hover{background-color:var(--primary-color);color:white}.fc-theme-standard .fc-scrollgrid{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-light)}.fc .fc-toolbar-title{font-size:var(--text-2xl);font-weight:700;color:var(--text-dark)}.fc .fc-button-primary{background-color:var(--primary-color);border-color:var(--primary-color)}.fc .fc-button-primary:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.fc .fc-daygrid-day.fc-day-today{background-color:rgba(37,99,235,0.1)}.datepicker-cell.disabled{position:relative;color:#dc3545!important;text-decoration:line-through;font-weight:bold;background-color:#fee;background-image:repeating-linear-gradient(45deg,rgba(255,0,0,0.1),rgba(255,0,0,0.1) 5px,rgba(255,0,0,0.2) 5px,rgba(255,0,0,0.2) 10px)!important;border:1px solid #dc3545!important}.datepicker-cell.disabled::before{content:"✕";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#dc3545;font-size:1rem;z-index:2}.unavailable-indicator{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.custom-calendar{width:100%;max-width:400px;margin:0 auto;font-family:var(--font-primary)}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding:5px 0}.calendar-nav .month-title{margin:0;font-weight:600;font-size:1.1rem}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:10px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-cell{text-align:center;padding:10px 0;border-radius:4px;cursor:pointer;position:relative;transition:all .2s ease}.calendar-cell:hover:not(.empty):not(.weekday):not(.unavailable):not(.disabled){background-color:#e6f7ff;transform:scale(1.05)}.calendar-cell.weekday{font-weight:bold;color:#666;margin-bottom:5px}.calendar-cell.empty{cursor:default}.calendar-cell.unavailable{background-color:#fee;background-image:repeating-linear-gradient(45deg,rgba(255,0,0,0.1),rgba(255,0,0,0.1) 5px,rgba(255,0,0,0.2) 5px,rgba(255,0,0,0.2) 10px);border:1px solid #dc3545;color:#dc3545;text-decoration:line-through;cursor:not-allowed;position:relative}.calendar-cell.disabled{color:#aaa;cursor:not-allowed}.calendar-cell.premium-price{background-color:rgba(245,124,0,0.1)}.calendar-cell.discount-price{background-color:rgba(46,125,50,0.1)}.price-tag{position:absolute;top:2px;right:2px;font-size:8px;font-weight:bold;color:#333;background-color:rgba(255,255,255,0.8);padding:1px 3px;border-radius:3px}.price-tag.default-price{color:#666}.x-mark{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;color:#dc3545;font-weight:bold;font-size:1.2rem;opacity:.7}.x-mark::before{content:"✕"}.unavailable-tag{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);background-color:#dc3545;color:white;font-size:.6rem;padding:1px 4px;border-radius:2px;font-weight:bold}.unavailable-date-sample,.available-date-sample{width:20px;height:20px;border-radius:3px}.unavailable-date-sample{background-color:#fee;background-image:repeating-linear-gradient(45deg,rgba(255,0,0,0.1),rgba(255,0,0,0.1) 5px,rgba(255,0,0,0.2) 5px,rgba(255,0,0,0.2) 10px);border:1px solid #dc3545;position:relative}.unavailable-date-sample::before{content:"✕";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#dc3545;font-size:.8rem;font-weight:bold}.available-date-sample{background-color:#e6f7ff;border:1px solid #06c}.dashboard-header{margin-bottom:var(--space-6)}.dashboard-card{margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.dashboard-card:hover{transform:none}.dashboard-card-header{background-color:rgba(37,99,235,0.05);border-bottom:1px solid var(--border-light)}.property-filter{margin-bottom:var(--space-6)}.property-detail-header{margin-bottom:40px;position:relative;padding:30px 40px;background:linear-gradient(to bottom,rgba(255,255,255,0.9) 0,rgba(249,250,251,0.95) 100%);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.05);backdrop-filter:blur(5px);border:1px solid rgba(230,230,230,0.5)}.luxury-header-content{position:relative;z-index:2}.luxury-badge{display:inline-block;background:var(--primary-color);color:white;padding:6px 16px;border-radius:30px;font-size:.8rem;letter-spacing:.5px;font-weight:600;margin-bottom:15px;text-transform:uppercase;box-shadow:0 4px 10px rgba(18,164,184,0.2)}.luxury-property-title{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:var(--bg-dark);margin-bottom:16px;line-height:1.1;letter-spacing:-0.7px;background:linear-gradient(135deg,#0A2847 0,#154766 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;text-shadow:0 1px 1px rgba(255,255,255,0.1)}.luxury-property-location{font-size:1rem;color:#666;margin-bottom:25px;display:flex;align-items:center}.luxury-property-features{display:flex;flex-wrap:wrap;gap:30px;margin-bottom:25px}.luxury-feature-item{display:flex;align-items:center;gap:15px}.luxury-feature-icon{width:50px;height:50px;border-radius:50%;background-color:rgba(18,164,184,0.1);display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:1.2rem}.luxury-feature-details{display:flex;flex-direction:column}.luxury-feature-value{font-weight:700;font-size:1.2rem;color:var(--bg-dark)}.luxury-feature-label{font-size:.9rem;color:#666}.luxury-price-container{margin-top:20px;padding-top:20px;border-top:1px solid rgba(0,0,0,0.1)}.luxury-price-display{font-size:1.1rem;color:var(--primary-color);font-weight:500}.luxury-select-dates-msg{display:flex;align-items:center;color:var(--primary-color);font-weight:600;font-size:1.1rem}@media(max-width:767px){.property-detail-header{padding:20px}.luxury-property-title{font-size:2.2rem;background:linear-gradient(135deg,#0A2847 0,#12A4B8 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.luxury-property-features{gap:15px}.luxury-feature-icon{width:40px;height:40px}}.airbnb-property-gallery{position:relative;margin:20px 0 40px;width:100%;max-width:1200px;margin-left:auto;margin-right:auto}.airbnb-gallery-grid{display:grid;grid-template-columns:2fr 1fr;grid-gap:8px;height:450px;border-radius:12px;overflow:hidden}.gallery-item{position:relative;overflow:hidden;border-radius:8px;background-color:#f5f5f5}.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease;display:block}.gallery-item:hover img{transform:scale(1.05)}.main-photo{grid-row:span 2;grid-column:1;height:100%;border-radius:12px 0 0 12px;overflow:hidden}.gallery-right-column{grid-column:2;grid-row:span 2;display:grid;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:8px;height:100%}.top-right-photo{height:100%;overflow:hidden}.top-right-photo:first-child{border-radius:0 12px 0 0}.bottom-right-photo{height:100%;overflow:hidden}.bottom-right-photo:last-child{border-radius:0 0 12px 0;position:relative}.more-photos-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;color:white;font-weight:600;text-align:center;font-size:14px;padding:0 10px}.show-all-photos-btn{position:absolute;bottom:20px;right:20px;background-color:white;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;color:#222;box-shadow:0 2px 8px rgba(0,0,0,0.15);transition:all .3s ease;z-index:5;cursor:pointer}.show-all-photos-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.2)}.view-all-photos-btn{background-color:white;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;color:#333;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,0.1);transition:all .2s ease}.view-all-photos-btn:hover{background-color:#f8f8f8;box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:translateY(-2px)}.gallery-navigation{position:absolute;width:100%;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;padding:0 15px;pointer-events:none;z-index:5}.gallery-nav-btn{width:40px;height:40px;border-radius:50%;background-color:white;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,0.2);pointer-events:auto;opacity:.8;transition:all .2s ease}.gallery-nav-btn:hover{opacity:1;transform:scale(1.05)}.view-all-photos-btn-standalone{position:absolute;bottom:20px;right:20px;background-color:white;border:1px solid rgba(0,0,0,0.1);border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;z-index:10;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px rgba(0,0,0,0.1);transition:all .2s ease;margin-right:-5px;transform:translateY(5px)}.view-all-photos-btn-standalone:hover{background-color:#f8f8f8;box-shadow:0 4px 12px rgba(0,0,0,0.15);transform:translateY(-2px)}.lightbox-gallery{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.9);z-index:9999;display:none;justify-content:center;align-items:center;flex-direction:column;padding:40px;overflow:hidden}.lightbox-gallery.show{display:flex;animation:fadeIn .2s ease}.lightbox-content{position:relative;max-width:90%;max-height:80vh;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,0.5)}.lightbox-main-image{display:block;max-width:100%;max-height:80vh;object-fit:contain;margin:0 auto}.lightbox-nav{position:absolute;width:100%;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;padding:0 20px}.lightbox-nav-btn{width:60px;height:60px;border-radius:50%;background-color:rgba(255,255,255,0.3);border:2px solid white;color:white;font-size:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 0 15px rgba(0,0,0,0.3)}.lightbox-nav-btn:hover{background-color:rgba(255,255,255,0.5);transform:scale(1.05)}.lightbox-close{position:absolute;top:20px;right:20px;width:50px;height:50px;border-radius:50%;background-color:rgba(255,255,255,0.3);border:2px solid white;color:white;font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10;box-shadow:0 0 15px rgba(0,0,0,0.3)}.lightbox-close:hover{background-color:rgba(255,255,255,0.5);transform:scale(1.05)}.lightbox-thumbnails{display:flex;gap:10px;margin-top:20px;overflow-x:auto;max-width:90%;padding:10px 0;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,0.3) transparent}.lightbox-thumbnails::-webkit-scrollbar{height:8px}.lightbox-thumbnails::-webkit-scrollbar-track{background:transparent}.lightbox-thumbnails::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,0.3);border-radius:10px}.lightbox-thumbnail{width:80px;height:60px;object-fit:cover;border-radius:4px;cursor:pointer;border:2px solid transparent;transition:all .2s ease}.lightbox-thumbnail.active{border-color:var(--primary-color);transform:scale(1.05)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.thumbnail-img{cursor:pointer;border:2px solid transparent;transition:all .2s ease;width:100%;height:100%;object-fit:cover;object-position:center}.thumbnail-img:hover{border-color:var(--primary-color)}.thumbnail-img.active-thumbnail{border-color:var(--primary-color);box-shadow:0 0 10px rgba(0,0,0,0.2)}@media(max-width:767.98px){.gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}.main-photo{grid-row:1;grid-column:1;height:300px}.top-right,.bottom-left,.bottom-right{grid-column:1;height:100px;margin-top:10px}.gallery-status-badge{top:15px;right:25px;font-size:12px;padding:5px 12px}.airbnb-gallery-grid{grid-template-columns:1fr;height:auto;gap:6px}.main-photo{border-radius:12px 12px 0 0;height:250px}.gallery-right-column{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,150px);grid-column:1}.top-right-photo:first-child{border-radius:0}.bottom-right-photo:last-child{border-radius:0 0 12px 0}.show-all-photos-btn{bottom:15px;right:15px;font-size:12px;padding:6px 12px}}.property-status-badge{position:absolute;top:15px;right:15px;z-index:10;background-color:#06c;color:white;padding:5px 15px;border-radius:4px;font-weight:600;font-size:14px;box-shadow:0 2px 4px rgba(0,0,0,0.2)}.luxury-amenities-section{padding:40px;background:linear-gradient(to right,rgba(240,240,245,0.7),rgba(245,245,250,0.7));border-radius:20px;box-shadow:0 15px 30px rgba(0,0,0,0.05);position:relative;overflow:hidden;margin-bottom:50px}.luxury-amenities-section::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%2312a4b8' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");opacity:.5;z-index:0}.luxury-amenities-section h3{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:700;margin-bottom:30px;position:relative;display:inline-block;z-index:1;background:linear-gradient(135deg,#0A2847 0,#154766 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;text-shadow:0 1px 1px rgba(255,255,255,0.1)}.luxury-amenities-section h3::after{content:"";position:absolute;bottom:-10px;left:0;width:60px;height:3px;background:var(--primary-color);border-radius:3px}.luxury-amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:15px;position:relative;z-index:1}.luxury-amenity-item{display:flex;align-items:center;background-color:rgba(255,255,255,0.8);padding:10px 15px;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,0.02);transition:all .3s ease;border-left:2px solid var(--primary-color)}.luxury-amenity-item:hover{transform:translateY(-5px);box-shadow:0 10px 20px rgba(0,0,0,0.08);background-color:white}.luxury-amenity-icon{width:25px;height:25px;border-radius:6px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));display:flex;align-items:center;justify-content:center;margin-right:10px;color:white;font-size:.7rem;box-shadow:0 3px 8px rgba(18,164,184,0.15);flex-shrink:0}.luxury-amenity-name{font-weight:500;color:var(--bg-dark);font-size:.85rem;letter-spacing:.2px}.premium-calendar{background-color:white;border-radius:12px;padding:20px;box-shadow:0 5px 15px rgba(0,0,0,0.05)}.calendar-legend{display:flex;justify-content:center;gap:20px;margin-top:20px}.legend-item{display:flex;align-items:center;gap:8px}.legend-dot{width:16px;height:16px;border-radius:50%}.legend-dot.available{background-color:#28a745;border:1px solid rgba(0,0,0,0.1)}.legend-dot.unavailable{background-color:#dc3545;border:1px solid rgba(0,0,0,0.1)}.premium-map-container{position:relative;height:300px;border-radius:12px;overflow:hidden;margin-bottom:20px;box-shadow:0 5px 15px rgba(0,0,0,0.1);border:1px solid rgba(230,230,230,0.5)}.premium-map{width:100%;height:100%;border:none}.premium-location-details{padding:10px 0}.premium-location-address{display:flex;align-items:center;gap:10px;margin-bottom:15px;color:var(--bg-dark);font-weight:500}.premium-location-address i{color:var(--primary-color);font-size:1.2rem}.premium-location-nearby{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.nearby-item{display:flex;align-items:center;gap:10px;padding:10px 15px;background-color:rgba(255,255,255,0.7);border-radius:8px;border-left:2px solid var(--primary-color)}.nearby-item i{color:var(--primary-color)}.property-amenities-list{list-style:none;padding-left:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4)}.property-amenity-item{display:flex;align-items:center}.property-amenity-item i{color:var(--primary-color);margin-right:var(--space-2)}.booking-card{border-radius:16px;box-shadow:0 15px 40px rgba(0,0,0,0.08);padding:30px;position:sticky;top:30px;background:linear-gradient(to bottom,rgba(255,255,255,0.95),rgba(250,252,255,0.95));backdrop-filter:blur(10px);border:1px solid rgba(230,230,230,0.7);overflow:hidden}.booking-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%2312a4b8' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");opacity:.4;z-index:0}.booking-card label{font-weight:600;color:var(--bg-dark);margin-bottom:8px}.booking-card .form-control{border-radius:8px;border-color:rgba(200,200,200,0.5);padding:12px 15px;font-size:.95rem;transition:all .3s ease}.booking-card .form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(18,164,184,0.15)}.booking-card .form-select{border-radius:8px;border-color:rgba(200,200,200,0.5);padding:12px 15px;height:auto;font-size:.95rem}.booking-card .btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;padding:14px 20px;font-weight:600;letter-spacing:.5px;border-radius:12px;transition:all .3s ease;box-shadow:0 5px 15px rgba(18,164,184,0.2)}.booking-card .btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(18,164,184,0.3)}.pricing-info-badge{background-color:rgba(18,164,184,0.1);padding:15px;border-radius:10px;margin-bottom:20px;text-align:center;border-left:4px solid var(--primary-color)}.owner-property-card{padding:var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4);background-color:var(--bg-card)}.owner-property-card:hover{box-shadow:var(--shadow-md)}.section-title{font-family:'Playfair Display',serif;font-size:2.25rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#0A2847 0,#154766 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;text-shadow:0 1px 1px rgba(255,255,255,0.1)}.section-subtitle{font-size:1.125rem;color:var(--text-medium);margin-bottom:2rem}.section-divider{width:60px;height:4px;background:linear-gradient(to right,var(--primary-color),var(--accent-color));margin:1.5rem auto 2rem;border-radius:2px}.cta-section{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);padding:5rem 0;text-align:center;color:white;margin:3rem 0 0}.cta-button{display:inline-block;background-color:var(--accent-color);color:white;padding:.8rem 2rem;border-radius:30px;font-weight:600;transition:all .3s ease;margin-top:1rem;box-shadow:0 4px 15px rgba(0,0,0,0.2)}.cta-button:hover{background-color:var(--accent-hover);transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,0.25);color:white}@media(max-width:767.98px){.hero{height:60vh}.hero-title{font-size:var(--text-4xl)}.property-meta{flex-direction:column;gap:var(--space-2)}.booking-card{position:static;margin-top:var(--space-8)}}.text-primary{color:var(--primary-color)!important}.bg-primary{background-color:var(--primary-color)!important}.border-primary{border-color:var(--primary-color)!important}.text-secondary{color:var(--secondary-color)!important}.bg-secondary{background-color:var(--secondary-color)!important}.border-secondary{border-color:var(--secondary-color)!important}.text-accent{color:var(--accent-color)!important}.bg-accent{background-color:var(--accent-color)!important}.border-accent{border-color:var(--accent-color)!important}body.modal-open-custom{overflow:hidden;position:relative}.fullscreen-modal-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.8);z-index:2147483646;display:none;overflow:hidden}.fullscreen-modal-iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:500px;height:80%;max-height:600px;border:none;border-radius:10px;box-shadow:0 0 20px rgba(0,0,0,0.5);background-color:white}.fullscreen-modal-close{position:absolute;top:10px;right:10px;width:40px;height:40px;background-color:white;border-radius:50%;box-shadow:0 0 10px rgba(0,0,0,0.3);display:flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;z-index:2147483647}#body-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,0.95);z-index:99999;display:none}.custom-modal-overlay{position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.8);display:none}.custom-modal-container{position:fixed;z-index:100001;left:50%;top:50%;transform:translate(-50%,-50%);width:90%;max-width:500px;background-color:#fff;border-radius:10px;box-shadow:0 10px 25px rgba(0,0,0,0.7);border:2px solid var(--primary-color);display:none;overflow:hidden}.custom-modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e5e5e5;background-color:#fff;position:relative;z-index:2}.custom-modal-title{margin:0;font-weight:600;color:#000}.custom-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#000;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-left:auto}.custom-modal-close:hover{background-color:#f0f0f0}.custom-modal-body{padding:20px;background-color:#fff;position:relative;z-index:2}.custom-modal-footer{padding:15px 20px;border-top:1px solid #e5e5e5;text-align:right;background-color:#fff;position:relative;z-index:2}.custom-modal-container::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff;z-index:1;pointer-events:none}.modal-backdrop{display:none!important}body.modal-open-custom{overflow:hidden}.table-optimized{width:100%;margin-bottom:0;font-size:.9rem;border-collapse:collapse}.table-optimized th{font-weight:600;padding:.5rem .75rem;white-space:nowrap}.table-optimized td{padding:.4rem .75rem;vertical-align:middle}.table-optimized .description-col{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-optimized .date-col{width:95px;white-space:nowrap}.table-optimized .amount-col{width:90px;white-space:nowrap;text-align:right}.table-optimized .category-col{width:120px;white-space:nowrap}.table-optimized .conf-col{width:90px;white-space:nowrap}.table-optimized .nights-col{width:60px;text-align:center;white-space:nowrap}#financialReportSection .table-responsive{margin-bottom:0}#financialReportSection .card-body{padding:0}#financialReportSection .table th,#financialReportSection .table td{padding:.4rem .75rem}@media print{.no-print{display:none!important}.table-responsive{overflow:visible!important}.table-optimized{font-size:9pt!important;width:100%!important}.table-optimized th,.table-optimized td{padding:3pt 5pt!important}.financial-cards{display:flex;justify-content:space-between}.financial-card{max-width:30%;padding:5pt!important}.financial-card .value{font-size:12pt!important}.chart-container{max-height:200pt;page-break-inside:avoid}#financialReportSection .card{page-break-inside:avoid}*{-webkit-print-color-adjust:exact!important;color-adjust:exact!important;print-color-adjust:exact!important}}.before-after-hover-container{position:relative;overflow:hidden;cursor:pointer}.before-after-hover-container img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:all .5s ease}.before-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .5s ease;display:flex;justify-content:center;align-items:center;background-color:rgba(0,0,0,0.1)}.before-image-overlay img{width:100%;height:100%;object-fit:cover}.before-after-hover-container:hover .before-image-overlay{opacity:1}.compare-badge{position:absolute;bottom:10px;right:10px;background:rgba(0,18,50,0.75);color:white;padding:5px 10px;border-radius:20px;font-size:.75rem;z-index:10;opacity:.7;transition:all .3s ease;backdrop-filter:blur(5px);box-shadow:0 2px 10px rgba(0,0,0,0.2)}.before-after-hover-container:hover .compare-badge{opacity:1;background:rgba(0,229,255,0.75);color:#001232;box-shadow:0 2px 15px rgba(0,229,255,0.5)}.metrics-card{border:1px solid rgba(0,229,255,0.1);box-shadow:0 10px 30px rgba(0,0,0,0.05);transition:all .3s ease}.metrics-card:hover{box-shadow:0 15px 40px rgba(0,0,0,0.1);border-color:rgba(0,229,255,0.3)}.metric-item{transition:all .3s ease;padding:1rem;border-radius:8px}.metric-item:hover{background:rgba(0,229,255,0.05);transform:translateY(-5px)}.site-footer{margin-top:auto;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.footer-gradient-wrapper{background:linear-gradient(135deg,#00576A 0,#0D8A9C 50%,#12A4B8 100%);padding:80px 0 0;position:relative;overflow:hidden}.footer-gradient-wrapper::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(rgba(18,164,184,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(18,164,184,0.05) 1px,transparent 1px);background-size:40px 40px;opacity:.3}.footer-top{position:relative;z-index:1}.footer-brand-title{font-size:32px;font-weight:700;color:white;margin-bottom:16px;letter-spacing:-0.02em}.footer-brand-description{font-size:15px;line-height:1.7;color:rgba(255,255,255,0.85);margin-bottom:24px;max-width:360px}.footer-cta-button{display:inline-flex;align-items:center;gap:10px;padding:12px 28px;background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.3);border-radius:8px;color:white;font-size:15px;font-weight:600;text-decoration:none;transition:all .2s;box-shadow:0 4px 12px rgba(0,0,0,0.1)}.footer-cta-button:hover{background:rgba(255,255,255,0.25);border-color:rgba(255,255,255,0.5);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.15);color:white}.footer-cta-button i{font-size:13px;transition:transform .2s}.footer-cta-button:hover i{transform:translateX(4px)}.footer-column-title{font-size:11px;font-weight:700;color:rgba(255,255,255,0.7);letter-spacing:.1em;margin-bottom:20px;text-transform:uppercase}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:12px}.footer-link{font-size:14px;color:rgba(255,255,255,0.8);text-decoration:none;transition:all .2s;display:inline-block}.footer-link:hover{color:white;transform:translateX(4px)}.footer-contact{list-style:none;padding:0;margin:0 0 24px}.footer-contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;color:rgba(255,255,255,0.85);font-size:14px;line-height:1.6}.footer-contact-item i{color:rgba(255,255,255,0.7);font-size:16px;width:20px;flex-shrink:0;margin-top:2px}.footer-contact-item a{color:rgba(255,255,255,0.85);text-decoration:none;transition:color .2s}.footer-contact-item a:hover{color:white}.footer-social{display:flex;gap:12px}.footer-social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(255,255,255,0.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);border-radius:8px;color:white;font-size:16px;text-decoration:none;transition:all .2s}.footer-social-icon:hover{background:rgba(255,255,255,0.25);border-color:rgba(255,255,255,0.4);transform:translateY(-2px);color:white}.footer-divider-modern{height:1px;background:linear-gradient(90deg,transparent 0,rgba(255,255,255,0.3) 50%,transparent 100%);margin:60px 0 32px}.footer-bottom-modern{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px;flex-wrap:wrap;gap:20px}.footer-copyright{color:rgba(255,255,255,0.7);font-size:13px;margin:0}.footer-copyright p{margin:0}.footer-legal-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.footer-legal-link{font-size:13px;color:rgba(255,255,255,0.7);text-decoration:none;transition:color .2s}.footer-legal-link:hover{color:white}.footer-legal-separator{color:rgba(255,255,255,0.4);font-size:12px}@media(max-width:991px){.footer-gradient-wrapper{padding:60px 0 0}.footer-brand-description{max-width:100%}}@media(max-width:767px){.footer-gradient-wrapper{padding:50px 0 0}.footer-brand-title{font-size:28px}.footer-bottom-modern{flex-direction:column;text-align:center;gap:16px}.footer-legal-links{justify-content:center}}.site-footer{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;margin-top:80px;position:relative}.footer-gradient-wrapper{background:linear-gradient(135deg,#00576A 0,#0D8A9C 50%,#12A4B8 100%);padding:80px 0 0;position:relative;overflow:hidden}.footer-gradient-wrapper::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(18,164,184,0.1) 0,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,87,106,0.1) 0,transparent 50%);pointer-events:none}.footer-top{position:relative;z-index:1;padding-bottom:60px}.footer-brand{max-width:380px}.footer-brand-title{font-size:32px;font-weight:700;color:#FFF;margin-bottom:20px;letter-spacing:-0.5px}.footer-brand-description{font-size:15px;line-height:1.7;color:rgba(255,255,255,0.85);margin-bottom:28px;font-weight:400}.footer-cta-button{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);border-radius:8px;color:#FFF;font-size:15px;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(0.4,0,0.2,1);backdrop-filter:blur(10px)}.footer-cta-button:hover{background:rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.35);color:#FFF;transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.15)}.footer-cta-button i{font-size:14px;transition:transform .3s ease}.footer-cta-button:hover i{transform:translateX(4px)}.footer-column{margin-bottom:20px}.footer-column-title{font-size:13px;font-weight:700;letter-spacing:1.2px;color:rgba(255,255,255,0.7);margin-bottom:24px;text-transform:uppercase}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:14px}.footer-link{font-size:15px;color:rgba(255,255,255,0.9);text-decoration:none;transition:all .2s ease;display:inline-block;font-weight:400}.footer-link:hover{color:#FFF;transform:translateX(4px)}.footer-contact{list-style:none;padding:0;margin:0 0 32px 0}.footer-contact-item{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;color:rgba(255,255,255,0.9);font-size:15px;line-height:1.6}.footer-contact-item i{font-size:18px;color:rgba(255,255,255,0.7);margin-top:2px;min-width:20px;text-align:center}.footer-contact-item a{color:rgba(255,255,255,0.9);text-decoration:none;transition:color .2s ease}.footer-contact-item a:hover{color:#FFF}.footer-social{display:flex;gap:12px;margin-top:28px}.footer-social-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.15);color:#FFF;font-size:18px;text-decoration:none;transition:all .3s cubic-bezier(0.4,0,0.2,1)}.footer-social-icon:hover{background:rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.3);transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,0.15)}.footer-divider-modern{height:1px;background:linear-gradient(90deg,transparent 0,rgba(255,255,255,0.15) 20%,rgba(255,255,255,0.15) 80%,transparent 100%);margin:0 0 32px 0}.footer-bottom-modern{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px;flex-wrap:wrap;gap:20px;position:relative;z-index:1}.footer-copyright{margin:0}.footer-copyright p{font-size:14px;color:rgba(255,255,255,0.7);margin:0;font-weight:400}.footer-legal-links{display:flex;align-items:center;gap:16px}.footer-legal-link{font-size:14px;color:rgba(255,255,255,0.7);text-decoration:none;transition:color .2s ease;font-weight:400}.footer-legal-link:hover{color:#FFF}.footer-legal-separator{color:rgba(255,255,255,0.4);font-size:12px}@media(max-width:991px){.footer-gradient-wrapper{padding:60px 0 0}.footer-top{padding-bottom:40px}.footer-brand{max-width:100%;margin-bottom:40px}.footer-column{margin-bottom:32px}}@media(max-width:767px){.site-footer{margin-top:60px}.footer-gradient-wrapper{padding:50px 0 0}.footer-brand-title{font-size:28px}.footer-bottom-modern{flex-direction:column;text-align:center;gap:16px}.footer-legal-links{flex-wrap:wrap;justify-content:center}.footer-cta-button{width:100%;justify-content:center}}@media(max-width:575px){.footer-gradient-wrapper{padding:40px 0 0}.footer-top{padding-bottom:32px}.footer-brand-title{font-size:24px}.footer-brand-description{font-size:14px}.footer-column-title{font-size:12px}.footer-link{font-size:14px}.footer-contact-item{font-size:14px}.footer-social{justify-content:flex-start}.footer-bottom-modern{padding-bottom:32px}}