.site-page{height:100vh;overflow-y:auto;overflow-x:hidden;background:var(--surface-page)}.site-page-loading,.site-page-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:var(--text-secondary);text-align:center;padding:40px 20px}.site-page-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--brand-primary);border-radius:50%;animation:site-page-spin .8s linear infinite}@keyframes site-page-spin{to{transform:rotate(360deg)}}.site-page-error h2{color:var(--text-primary);font-size:20px;font-weight:500}.site-page-error p{max-width:400px;line-height:1.6}.site-page-back-link{color:var(--brand-primary);text-decoration:none;border:1px solid rgba(192,32,35,.4);padding:8px 20px;border-radius:6px;margin-top:8px;transition:background .2s,border-color .2s}.site-page-back-link:hover{background:#c020231a;border-color:var(--brand-primary)}.site-page .site-popup.standalone{max-width:none;margin:0;max-height:none;height:auto;border:none;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;overflow:visible;contain:none;width:100%}.site-page .popup-main-layout{overflow:visible;flex:none}.site-page .popup-content-side{overflow:visible}.site-page .popup-hero-header{height:250px;cursor:default}.site-page .popup-hero-content{padding:24px 32px}.site-page .popup-title-overlay{font-size:28px}.site-page .popup-body{padding:20px 32px;flex:none}.site-page .popup-description{font-size:15px;line-height:1.7;flex:none;max-height:none}.site-page .popup-maps-side{min-height:500px}.site-page .popup-gallery-section.expanded{position:static!important;inset:auto!important;z-index:auto!important;border-radius:0!important;overflow:visible!important}.site-page .popup-gallery-section.expanded .gallery-grid-container{overflow:visible}.site-page .page-header{z-index:200}.site-page .popup-standalone-close{display:none}@media (max-width: 1024px){.site-page .popup-main-layout{flex-direction:column}.site-page .popup-content-side,.site-page .popup-maps-side{flex:none}.site-page .popup-hero-header{height:200px}.site-page .popup-hero-content{padding:20px 24px}.site-page .popup-title-overlay{font-size:22px}}@media (max-width: 767px){.site-page .popup-hero-header{height:150px}.site-page .popup-hero-content{padding:16px}.site-page .popup-title-overlay{font-size:18px}.site-page .popup-description{font-size:16px}.site-page .popup-maps-side{min-height:250px}.site-page .popup-body{padding:16px}}
