:root{--primary-color: #1a5276;--secondary-color: #3498db;--accent-color: #f39c12;--text-color: #333333;--light-text: #ffffff;--background-color: #f8f9fa;--footer-bg: #2c3e50;--card-bg: #ffffff;--border-color: #e0e0e0;--success-color: #27ae60;--error-color: #e74c3c;--mobile-padding: 16px;--mobile-margin: 20px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,sans-serif;color:var(--text-color);line-height:1.6;background-color:var(--background-color);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;margin-bottom:1rem;font-weight:600;line-height:1.2}a{text-decoration:none;color:var(--primary-color);transition:color .3s ease;-webkit-tap-highlight-color:transparent}a:hover{color:var(--secondary-color)}ul{list-style:none}img{max-width:100%;height:auto;display:block}p{margin-bottom:1rem}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--mobile-padding)}.divider{height:3px;width:60px;background-color:var(--accent-color);margin:1rem 0 2rem}.btn{display:inline-block;background-color:var(--primary-color);color:var(--light-text);padding:14px 28px;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:background-color .3s ease;font-size:1rem;min-height:44px;text-align:center}.btn:hover{background-color:var(--secondary-color)}header{background-color:var(--light-text);box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:1002;padding:12px 0}.mobile-nav-toggle{position:relative;z-index:1003}header .container{display:flex;justify-content:space-between;align-items:center;padding:0 var(--mobile-padding)}.logo{color:var(--primary-color);font-size:1.3rem;font-weight:700;line-height:1}.mobile-nav-toggle{display:none;background:none;border:none;font-size:1.5rem;color:var(--primary-color);cursor:pointer;padding:8px}@media(max-width:1023px){.mobile-nav-toggle{display:block}}nav{display:none;position:fixed;top:0;right:0;width:250px;height:100vh;background-color:#fff;box-shadow:-2px 0 10px #0000001a;z-index:1000}nav.active{display:block}nav ul{padding:60px 20px 20px;margin:0;list-style:none}nav ul li{margin-bottom:0;border-bottom:1px solid #eee}nav ul li a{color:var(--text-color);font-weight:500;padding:15px 0;display:block;text-decoration:none}nav ul li a:hover{color:var(--primary-color)}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;width:calc(100% - 250px);height:100%;background-color:#0000004d;z-index:999;pointer-events:auto}.mobile-menu-overlay.active{display:block}@media(min-width:1024px){.mobile-nav-toggle{display:none}nav{display:block;position:static;width:auto;height:auto;background:none;box-shadow:none}nav ul{display:flex;padding:0;margin:0}nav ul li{margin-left:20px;border-bottom:none}.mobile-menu-overlay{display:none!important;pointer-events:none!important}}.hero{position:relative;color:var(--light-text);padding:80px 0;text-align:center;background-color:var(--primary-color)}.home-hero{padding:120px 0;overflow:hidden}.home-hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1}.hero-image{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(../../../images/lake-hero.jpg);background-size:cover;background-position:center;z-index:0}.home-hero .container{position:relative;z-index:2}.hero h2{font-size:2.2rem;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.5);line-height:1.2}.hero p{font-size:1.1rem;max-width:100%;margin:0 auto;text-shadow:0 1px 2px rgba(0,0,0,.5);padding:0 var(--mobile-padding)}.amenities-hero,.visit-hero,.owner-hero{background-image:linear-gradient(#0009,#0009),url(../../../images/lake-hero.jpg);background-size:cover;background-position:center}main{padding:40px 0 60px;height:auto;min-height:auto}section{margin-bottom:40px}section h2{color:var(--primary-color);font-size:2rem;margin-bottom:1rem}.welcome p{font-size:1rem;margin-bottom:1.5rem}.amenities-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:30px}.amenity-card{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d;transition:transform .3s ease,box-shadow .3s ease}.amenity-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001a}.amenity-icon{font-size:2.5rem;margin-bottom:15px}.amenity-card h3{font-size:1.2rem;margin-bottom:10px;color:var(--primary-color)}.amenities-extra{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.amenities-extra h3{color:var(--primary-color);margin-bottom:15px}.visit-content{display:grid;grid-template-columns:1fr;gap:30px;margin-bottom:40px}.visit-text h3{color:var(--primary-color);margin-top:20px;margin-bottom:15px}.visit-text ul{margin-left:20px;margin-bottom:20px}.visit-text ul li{list-style-type:disc;margin-bottom:8px}.visit-map{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.map-container{margin-bottom:15px;border-radius:4px}.address{text-align:center;font-weight:500}.contact-form{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.contact-form h3{color:var(--primary-color);margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:14px;border:1px solid var(--border-color);border-radius:6px;font-family:inherit;font-size:1rem;min-height:44px}.form-group textarea{resize:vertical;min-height:100px}.message-container.error{background-color:#e74c3c1a;color:var(--error-color);border:1px solid rgba(231,76,60,.2)}.message-container.success{background-color:#27ae601a;color:var(--success-color);border:1px solid rgba(39,174,96,.2)}.owner-header{display:flex;flex-direction:column;align-items:center;margin-bottom:30px;position:relative;gap:15px}.owner-header h3{margin-bottom:0;font-size:1.6rem;color:var(--primary-color);text-align:center}.logout-link{color:var(--primary-color);font-weight:500;padding:10px 20px;border:1px solid var(--border-color);border-radius:6px;transition:all .2s ease;background-color:#fff;font-size:.9rem;text-decoration:none;min-height:44px;display:flex;align-items:center;justify-content:center}.logout-link:hover{background-color:#f8f8f8;color:var(--primary-color);border-color:#ccc}.quick-links-section{margin-bottom:40px}.quick-links-section h4{font-size:1.2rem;margin-bottom:20px;color:#333;font-weight:600;font-family:Montserrat,sans-serif}.quick-links-grid{display:grid;grid-template-columns:1fr;gap:15px}.quick-link-card{display:flex;align-items:center;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:18px;box-shadow:0 2px 5px #00000008;transition:transform .2s ease,box-shadow .2s ease;text-decoration:none;color:var(--primary-color);min-height:60px}.quick-link-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014;border-color:#ccc}.quick-link-icon{font-size:1.4rem;margin-right:15px;color:#666;flex-shrink:0}.quick-link-text{font-weight:500;font-size:.95rem;flex:1}.owner-info-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:30px;width:100%}.owner-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 2px 5px #00000008}.owner-card h4{color:var(--primary-color);margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--border-color);font-size:1.2rem;font-weight:600;font-family:Montserrat,sans-serif}.access-list{list-style:none;margin:0;padding:0}.access-list li{padding:12px 0;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:5px}.access-list li:last-child{border-bottom:none}.access-label{font-weight:500;color:#555;font-size:.9rem}.access-value{font-weight:600;color:#333;font-size:1rem}.board-email{margin-bottom:20px}.board-email a{color:var(--primary-color);text-decoration:none}.board-email a:hover{text-decoration:underline}.board-members{list-style:none;padding:0;margin:0}.board-members li{padding:12px 0;border-bottom:1px solid #f0f0f0}.board-members li:last-child{border-bottom:none}.board-name{font-weight:600;display:block;color:#333;margin-bottom:5px}.board-role{font-size:.85rem;display:block;color:#666}.contact-info{display:flex;flex-direction:column;gap:20px}.contact-item{display:flex;flex-direction:column;gap:8px}.contact-label{font-weight:600;color:var(--primary-color);font-size:.95rem}.contact-value{color:var(--text-color);line-height:1.5}.contact-value a{color:var(--secondary-color);text-decoration:none;font-weight:500}.contact-value a:hover{color:var(--primary-color);text-decoration:underline}.contact-value strong{color:var(--primary-color);font-weight:600}.board-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-top:20px}.board-member{background-color:var(--background-color);padding:15px;border-radius:6px;border:1px solid var(--border-color);text-align:center}.board-member .board-role{color:var(--primary-color);font-weight:600;margin-bottom:8px;font-size:.9rem}.board-member .board-name{color:var(--text-color);font-weight:500;font-size:1rem}.access-grid{display:grid;grid-template-columns:1fr;gap:15px;margin-top:20px}.access-item{background-color:var(--background-color);padding:15px;border-radius:6px;border:1px solid var(--border-color);text-align:center}.access-item .access-label{color:var(--primary-color);font-weight:600;margin-bottom:8px;font-size:.9rem}.access-item .access-value{color:var(--text-color);font-weight:500;font-size:1rem}.upcoming-events{margin-bottom:30px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 2px 5px #00000008}.upcoming-events h4{color:var(--primary-color);margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--border-color);font-size:1.2rem;font-weight:600;font-family:Montserrat,sans-serif}.upcoming-events .event-list{list-style:none;padding:0;margin:0}.upcoming-events .event-list li{padding:12px 0;border-bottom:1px solid #f0f0f0}.upcoming-events .event-list li:last-child{border-bottom:none}.upcoming-events .event-date{font-weight:600;color:#555;font-size:.9rem;display:block;margin-bottom:5px}.upcoming-events .event-title{font-size:1rem;display:block;color:#333}.owner-resources{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 2px 5px #00000008}.owner-resources h4{color:var(--primary-color);margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--border-color);font-size:1.2rem;font-weight:600;font-family:Montserrat,sans-serif}.notice{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f0f0f0}.notice:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.notice h5{margin-bottom:8px;color:#333;font-weight:600;font-size:1rem}.notice p{color:#555;font-size:.95rem;line-height:1.5}.owner-section h2{color:var(--primary-color);font-size:1.8rem;margin-bottom:.5rem;font-weight:600}.divider{height:2px;width:50px;background-color:var(--accent-color);margin:.5rem 0 2rem}.property-map{background-color:var(--background-color);padding:40px 0;margin-bottom:0;height:auto;min-height:auto}.property-map:last-child{margin-bottom:0}.map-container{margin-top:20px;text-align:center;width:100%;padding:0 var(--mobile-padding);min-height:auto;height:auto}.map-container img{max-width:100%;height:auto;display:block;margin:0 auto;box-shadow:0 4px 20px #0000001a;vertical-align:top}footer{background-color:var(--footer-bg);color:var(--light-text);padding:40px 0 20px}.footer-content{display:flex;flex-direction:column;margin-bottom:30px;text-align:center;gap:20px}.footer-info h3{margin-bottom:15px}.footer-links ul li{margin-bottom:10px}.footer-links ul li a{color:var(--light-text)}.footer-links ul li a:hover{color:var(--accent-color)}.copyright{text-align:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.9rem}@media(min-width:768px){.container{padding:0 30px}.hero h2{font-size:2.5rem}.hero p{font-size:1.2rem}.amenities-grid{grid-template-columns:repeat(2,1fr);gap:25px}.quick-links-grid,.owner-info-grid,.board-grid,.access-grid{grid-template-columns:repeat(2,1fr)}.visit-content{grid-template-columns:1fr 1fr;gap:30px}.owner-header{flex-direction:row;justify-content:space-between;align-items:center}}@media(min-width:1024px){.container{padding:0 40px}.hero h2{font-size:3rem}.hero p{font-size:1.3rem}.amenities-grid{grid-template-columns:repeat(3,1fr);gap:30px}.quick-links-grid,.board-grid,.access-grid{grid-template-columns:repeat(3,1fr)}.home-hero{padding:150px 0}.hero{padding:100px 0}main{padding:60px 0}section{margin-bottom:60px}section h2{font-size:2.5rem}.mobile-nav-toggle{display:none}nav{position:static;width:auto;height:auto;background:none;box-shadow:none;overflow:visible}nav ul{display:flex;padding:0;margin:0}nav ul li{margin-left:20px;margin-bottom:0;border-bottom:none}nav ul li:last-child{border-bottom:none}nav ul li a{color:var(--text-color);font-weight:500;padding:8px 0;position:relative;font-size:1rem}nav ul li a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent-color);transition:width .3s ease}nav ul li a:hover:after,nav ul li a.active:after{width:100%}nav ul li a.active{color:var(--primary-color);font-weight:600}.mobile-menu-overlay{display:none}.login-container{max-width:500px;margin:40px auto;padding:40px;background-color:var(--card-bg);border-radius:12px;box-shadow:0 4px 20px #0000001a}.login-container h3{font-size:2.2rem;margin-bottom:24px}.login-container p{font-size:1.1rem;margin-bottom:32px}.login-container .form-group input{padding:18px;min-height:56px;font-size:16px}.login-container .btn{padding:18px;min-height:56px;font-size:1.2rem}}@media(min-width:1200px){.amenities-grid{grid-template-columns:repeat(4,1fr)}.quick-links-grid{grid-template-columns:repeat(3,1fr)}}@media(hover:none)and (pointer:coarse){.btn:hover,.quick-link-card:hover,.amenity-card:hover{transform:none;box-shadow:0 2px 8px #0000000d}.btn:active,.quick-link-card:active,.amenity-card:active{transform:scale(.98)}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.hero-image{background-image:url(/images/lake-hero@2x.jpg)}}@media print{header,footer,.btn,.mobile-nav-toggle{display:none}body{background:#fff;color:#000}.container{max-width:none;padding:0}}.fuel-instructions{margin:20px 0;padding-left:20px;list-style-type:decimal}.fuel-instructions li{margin-bottom:12px;line-height:1.6;color:var(--text-color)}.fuel-instructions li a{word-break:break-all;color:var(--secondary-color);font-size:.9rem}.fuel-instructions li a:hover{color:var(--primary-color)}.owner-card .fuel-note{background-color:#fff3cd!important;border:1px solid #ffeaa7!important;border-radius:5px;padding:15px;margin:20px 0;color:#856404!important;font-size:.95rem}.owner-card .fuel-thank-you{text-align:center;margin-top:20px;font-size:1.1rem;color:var(--primary-color);font-weight:600}.btn:active,.quick-link-card:active,.amenity-card:active,.owner-card:active{transform:scale(.98);transition:transform .1s ease}.loading{position:relative;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top:2px solid var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.focused{position:relative}.focused:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid var(--accent-color);border-radius:8px;pointer-events:none}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInFromBottom{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(hover:hover)and (pointer:fine){.amenity-card:hover,.quick-link-card:hover,.owner-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}}.form-group.focused label{color:var(--primary-color);font-weight:600}.form-group.focused input,.form-group.focused textarea{border-color:var(--accent-color);box-shadow:0 0 0 3px #f39c121a}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--primary-color: #000000;--secondary-color: #0000ff;--accent-color: #ff0000;--text-color: #000000;--background-color: #ffffff;--border-color: #000000}}@media(prefers-color-scheme:dark){:root{--primary-color: #4a9eff;--secondary-color: #66b3ff;--accent-color: #ffb366;--text-color: #ffffff;--background-color: #1a1a1a;--card-bg: #2d2d2d;--border-color: #404040;--footer-bg: #000000}}@media(max-width:480px){.container{padding:0 12px}.hero{padding:60px 0}.hero h2{font-size:1.8rem}.hero p{font-size:1rem}main{padding:30px 0}section{margin-bottom:30px}.amenity-card,.quick-link-card,.owner-card{padding:16px}.btn{padding:12px 24px;font-size:.95rem}}@media(max-width:768px){h1{font-size:1.4rem}h2{font-size:1.8rem}h3{font-size:1.4rem}p{font-size:.95rem;line-height:1.5}}@media(max-width:768px){.owner-header{flex-direction:column;gap:15px;text-align:center}.logout-link{align-self:center}.quick-links-grid{grid-template-columns:1fr;gap:12px}.owner-info-grid{grid-template-columns:1fr;gap:20px}}@media(max-width:768px){.hero-image{background-attachment:scroll}.amenity-card,.quick-link-card,.owner-card{will-change:transform}}@media(max-width:768px){nav ul li a{min-height:48px;display:flex;align-items:center}.btn,.logout-link{min-height:44px;min-width:44px}}@media(max-width:768px){::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-color)}}@media print and (max-width:768px){.mobile-nav-toggle,nav,.mobile-menu-overlay{display:none!important}.container{max-width:none;padding:0}.hero{background:none!important;color:#000!important}.amenity-card,.quick-link-card,.owner-card{border:1px solid #ccc;box-shadow:none;break-inside:avoid}}@media(max-width:768px){.login-container,div[class*=login-container],#loginForm .login-container,body .login-container,html .login-container{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;margin:0!important;padding:40px 24px!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;width:100%!important;height:100vh!important;max-width:none!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;z-index:1000!important;box-sizing:border-box!important;transform:none!important;overflow:visible!important}.login-container h3{font-size:2.5rem;margin-bottom:20px;color:var(--primary-color);text-align:center;font-weight:700}.login-container p{font-size:1.3rem;margin-bottom:40px;color:#555;line-height:1.6;text-align:center;max-width:300px}.login-container .form-group{margin-bottom:30px;width:100%;max-width:320px}.login-container .form-group label{font-size:1.2rem;margin-bottom:12px;color:#333;font-weight:600;display:block}.login-container .form-group input{padding:20px;min-height:64px;font-size:16px;border-radius:16px;border:2px solid #e0e0e0;background-color:#fff;transition:all .3s ease;width:100%;box-sizing:border-box}.login-container .form-group input:focus{border-color:var(--accent-color);box-shadow:0 0 0 4px #f39c1226;outline:none}.login-container .btn{width:100%;padding:20px;min-height:64px;font-size:1.3rem;font-weight:700;border-radius:16px;background-color:var(--primary-color);color:#fff;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #1a52764d;text-transform:uppercase;letter-spacing:.5px;max-width:320px}.login-container .btn:hover{background-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.login-container .btn:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #1a52764d}.login-container .btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.message-container{margin-top:30px;padding:20px;border-radius:16px;font-size:1.1rem;font-weight:500;min-height:24px;text-align:center;max-width:320px;width:100%}.message-container.error{background-color:#e74c3c1a;color:var(--error-color);border:1px solid rgba(231,76,60,.2)}.message-container.success{background-color:#27ae601a;color:var(--success-color);border:1px solid rgba(39,174,96,.2)}}@media(max-width:480px){.login-container{padding:32px 20px}.login-container h3{font-size:2.2rem}.login-container p{font-size:1.2rem;max-width:280px}.login-container .form-group{max-width:280px}.login-container .form-group input{padding:18px;min-height:60px;font-size:16px}.login-container .btn{padding:18px;min-height:60px;font-size:1.2rem;max-width:280px}.message-container{max-width:280px}}@media(max-width:768px)and (orientation:landscape){.login-container{padding:60px 32px 24px;justify-content:flex-start}.login-container h3{font-size:2.2rem;margin-bottom:16px}.login-container p{font-size:1.2rem;margin-bottom:30px}.login-container .form-group{margin-bottom:24px}}@media(hover:none)and (pointer:coarse){.login-container .btn:hover{transform:none;box-shadow:0 2px 8px #1a52764d}.login-container .form-group input:focus{transform:none}}@media(prefers-contrast:high){.login-container .form-group input{border-width:3px}.login-container .btn{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.login-container .form-group input,.login-container .btn{transition:none}.login-container .form-group input:focus,.login-container .btn:hover,.login-container .btn:active{transform:none}}
