:root {
	--perfectcamp-white-black-background: var(--perfectcamp-gray1);
	--perfectcamp-white-black-background-rgba: var(--perfectcamp-gray1-rgb);
	
	--perfectcamp-white-black-foreground: var(--perfectcamp-gray6);
	
	--perfectcamp-header-height: 55px;
	--perfectcamp-container-width: 950px;
	
	--perfectcamp-gray1: #F5F5F5; 
	--perfectcamp-gray2: #E6E6E6;
	--perfectcamp-gray3: #BBBBBB;
	--perfectcamp-gray4: #888888;
	--perfectcamp-gray5: #565656;
	--perfectcamp-gray6: #383838;
	--perfectcamp-gray7: #202020;
	
	--perfectcamp-gray1-rgb: 245, 245, 245; 
	--perfectcamp-gray2-rgb: 230, 230, 230; 
	--perfectcamp-gray3-rgb: 187, 187, 187; 
	--perfectcamp-gray4-rgb: 136, 136, 136; 
	--perfectcamp-gray5-rgb: 86, 86, 86; 
	--perfectcamp-gray6-rgb: 56, 56, 56;
	--perfectcamp-gray7-rgb: 32, 32, 32; 
	
	--perfectcamp-green1: #eaf1e6;
	--perfectcamp-green2: #c2d0b7;
	--perfectcamp-green3: #adce93;
	--perfectcamp-green4: #7f9d68;
	--perfectcamp-green5: #78A809;
	--perfectcamp-green6: #668f07;
	--perfectcamp-green7: #486605;
	--perfectcamp-green8: #334805;
	
	--perfectcamp-green1-rgb: 234, 241, 230;
	--perfectcamp-green2-rgb: 194, 208, 183;
	--perfectcamp-green3-rgb: 173, 206, 147;
	--perfectcamp-green4-rgb: 127, 157, 104;
	--perfectcamp-green5-rgb: 120, 168, 9;
	--perfectcamp-green6-rgb: 102, 143, 7;
	--perfectcamp-green7-rgb: 53, 75, 4;
	
	--perfectcamp-blue: #2196F3;
	--perfectcamp-lightblue: #cce2f5;
	--perfectcamp-blue-rgb: 33, 150, 243;
	
	--perfectcamp-red: #BD0A0A;
	--perfectcamp-orange: orange;
	--perfectcamp-yellow: #ebd76f;
	
	--perfectcamp-footer-background-color: var(--perfectcamp-gray2);
	--perfectcamp-text-color: var(--perfectcamp-gray5);
	--perfectcamp-heading-color: white;
	--perfectcamp-user-header-start-height: 500px;
	--perfectcamp-user-header-height: var(--perfectcamp-user-header-start-height);
	--perfectcamp-card-header-background-color: var(--perfectcamp-gray2);
	--perfectcamp-button-background-color: var(--perfectcamp-gray1);
	--perfectcamp-gauge-background-color: var(--perfectcamp-gray2);
	--perfectcamp-list-button-hover-background-color: var(--perfectcamp-gray1);
	--perfectcamp-list-button-hover-color: black;
	--perfectcamp-twitter-color: #1DA1F2;
	
	--f7-font-size: 16px;
	--f7-theme-color: var(--perfectcamp-green5);
	--f7-theme-color-shade: var(--perfectcamp-green6);
	--f7-theme-color-tint: var(--perfectcamp-green4);
	--f7-theme-color-rgb: 120, 168, 9;
	--f7-badge-font-size: 14px;
	--f7-badge-size: 20px;
	--f7-button-text-transform: initial;
	--f7-checkbox-size: 30px;
	--f7-dialog-width: 300px;
	--f7-input-outline-border-color: var(--perfectcamp-gray2);
	--f7-input-placeholder-color: var(--perfectcamp-gray3);
	--f7-list-button-font-size: 15px;
	--f7-list-button-text-align: left;
	--f7-list-item-title-font-size: 16px;
	--f7-navbar-height: var(--perfectcamp-header-height); 
	--f7-navbar-tablet-height: var(--perfectcamp-header-height);
	--f7-navbar-link-color: var(--perfectcamp-green5); 
	--f7-navbar-link-line-height: 55px;
	--f7-navbar-title-font-size: 18px;
	--f7-navbar-title-line-height: 55px;
	--f7-notification-margin: 8px;
	--f7-notification-padding: 10px;
	--f7-notification-border-radius: 12px;
	--f7-notification-box-shadow: 0px 5px 25px -10px rgba(0, 0, 0, 0.7);
	--f7-notification-icon-size: 20px;
	--f7-notification-title-font-size: 13px;
	--f7-notification-title-text-transform: uppercase;
	--f7-notification-title-line-height: 1.4;
	--f7-notification-title-font-weight: 300;
	--f7-notification-title-letter-spacing: 0.02em;
	--f7-notification-title-right-font-size: 13px;
	--f7-notification-subtitle-font-size: 15px;
	--f7-notification-subtitle-font-weight: 500;
	--f7-notification-text-font-size: 15px;
	--f7-notification-text-line-height: 1.2;
	--f7-notification-bg-color: rgba(250, 250, 250, 0.95);
	--f7-notification-bg-color-rgb: 255, 255, 255;
	--f7-notification-title-color: #000;
	--f7-notification-title-right-color: rgba(0, 0, 0, 0.45);
	--f7-notification-subtitle-color: #000;
	--f7-notification-text-color: #000;
	--f7-popup-border-radius: 10px; 
	--f7-page-bg-color: white;
	--f7-ptr-preloader-size: 28px;
	--f7-ptr-size: 44px;
	--f7-range-knob-color: var(--perfectcamp-green5);
	--f7-tabbar-link-text-transform: normal;
	--f7-toolbar-border-color: rgba(0, 0, 0, .05);
	--f7-toast-text-color: var(--perfectcamp-gray2) !important;
	--f7-toast-bg-color: rgba(var(--perfectcamp-gray7-rgb), 0.9) !important;
}

::-webkit-scrollbar 				{ width: 10px; height: 10px; }
::-webkit-scrollbar-track 			{ background-color: var(--perfectcamp-gray1); }
::-webkit-scrollbar-thumb 			{ background-color: var(--perfectcamp-gray2); }
::-webkit-scrollbar-thumb:hover		{ background-color: var(--perfectcamp-gray3); } 
::-webkit-scrollbar-corner			{ background-color: transparent; }

.alert-dialog .dialog-inner							{ display: none; }	
.animated-gif-container								{ position: relative; box-sizing: border-box; border: 1.5px solid transparent; border-radius: 15px; background-color: var(--perfectcamp-gray1); display: inline-block; font-size: 12px; padding: 0 10px 0 31px; line-height: 2em; transition-duration: .1s; margin-right: 6px; }
.animated-gif-container:hover						{ cursor: pointer; border-color: rgba(0, 0, 0, .3); background-color: white; font-weight: bold; }
.animated-gif-container.add-reaction				{ padding-right: 2px !important; }
.animated-gif-container.add-reaction span			{ position: absolute; font-size: 19px; left: 7px; top: 0px; }
.animated-gif										{ width: 30px; position: absolute; left: 0; top: -3px }
.animated-gif.thumbsup								{ top: -6px; }
.animated-gif.party									{ width: 39px; top: -8px; }
.animated-gif.fire									{ top: -8px; }
.animated-gif.shush									{ top: -2px; }
.animated-gif.hand-over-mouth,
.animated-gif.yawn									{ top: -1px; }
.animated-gif.exhaling								{ top: -5px; }
.animated-gif.man-facepalm							{ top: -4px; }

.background-photo									{ position: relative; height: calc(100vh - var(--perfectcamp-header-height)); min-height: 600px; background-position: center; background-repeat: no-repeat; background-size: cover; text-align: center; }
.basic-editor-content .emoji						{ vertical-align: -4px; width: 20px; height: 20px; }
body												{ color: var(--perfectcamp-text-color); margin: 0; box-sizing: border-box; background-color: var(--perfectcamp-green6); }
body a												{ color: var(--perfectcamp-green5); }
.bold												{ font-weight: bold; }
.button:not(.button-fill):hover						{ background-color: var(--perfectcamp-button-background-color); }

.stars												{ color: var(--perfectcamp-yellow); }

.color-blue											{ color: var(--perfectcamp-blue); }
.chip:not([data-userid]) img						{ max-height: 76%; max-width: 66%; border-radius: unset; }
.closed-season										{ background-color: var(--perfectcamp-red); color: white; text-shadow: none; margin: -4px -10px 5px; padding: 2px 11px; }
.container											{ position: relative; max-width: var(--perfectcamp-container-width); margin: 0 auto; padding: 20px; }
.debug												{ display: none; font-size: 10px; }
.device-desktop .debug								{ display: block; }
.device-ios .panel-discussion ::-webkit-scrollbar,
.device-ios .panel-followers ::-webkit-scrollbar 	{ display: none; }
.display-none										{ display: none; }
.elastic-scrolling-top								{ margin-top: -10px; width: 1px; height: 1px; position: relative; top: -4px; }
.emoji-inline,
.icon-inline										{ height: 20px; vertical-align: -5px; }
.footnote											{ font-size: 11px; font-weight: normal; color: var(--perfectcamp-gray3); }
.grayscale											{ filter: grayscale(100%); }
.stop-scrolling 									{ height: 100%; overflow: hidden; }
.youtube-image										{ width: 100%; cursor: pointer; }
h1													{ font-size: 22px; font-weight: 600; font-family: var(--f7-font-family); margin: 18px 0 10px 0; }
h2													{ font-size: 16px; font-weight: 600; font-family: 'Nunito', sans-serif; margin: 18px 0 5px 0; }
h3													{ font-size: 12px; font-weight: 400; font-family: 'Nunito', sans-serif; margin: 18px 0 5px 0; }
#helperTargetEl										{ position: absolute; width: 1px; height: 1px; }
textarea.input-outline-box,
input.input-outline-box								{ overflow-y: hidden; cursor: text; width: 100%; padding: 10px; border: 2px solid var(--perfectcamp-gray2); border-radius: 5px; box-sizing: border-box; margin-bottom: 20px; min-height: 48px; }
textarea.input-outline-box.highlight,
input.input-outline-box.highlight					{ border-color: var(--perfectcamp-blue); }
textarea.input-outline-box:focus,
input.input-outline-box:focus						{ border-color: var(--perfectcamp-blue); }
.main-container										{ min-height: 100vh; } 
.mapbox-improve-map 										{ display: none; }
.mapboxgl-popup-anchor-right .mapboxgl-popup-tip 			{ border-left-color: black; }
.mapboxgl-popup-anchor-left .mapboxgl-popup-tip 			{ border-right-color: black; }
.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip,
.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip,
.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip 	{ border-top-color: white; }

.mapboxgl-popup-anchor-top .mapboxgl-popup-tip,
.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip,
.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip 		{ border-bottom-color: white; }
.mapboxgl-popup-close-button								{ width: 25px; }


.mention											{ background-color: var(--perfectcamp-green1); color: var(--perfectcamp-green6); border-radius: 4px; padding: 3px; }
.navbar-main										{ position: fixed !important; touch-action: none; }
.navbar-main .offline-icon							{ display: none; position: absolute; right: -21px; top: 6px; }
.notification										{ backdrop-filter: blur(6px); }
.notification-icon									{ border-radius: 5px; }
.notification-title-right-text 						{ margin-right: 6px; margin-left: auto !important; text-align: center; width: 56px; }
.notification-title-right-text:before 				{ background: none !important; }
.notification .photo								{ float: right; margin-left: 20px; border-radius: 6px; width: 50px; height: 50px; background-repeat: no-repeat; background-size: cover; background-position: center; }
.notification .photo.user							{ border-radius: 25px; }
.notification-subtitle								{ font-weight: normal; }
.notification.modal-in								{ cursor: pointer; }
.notification-text									{ color: var(--perfectcamp-text-color); -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; display: -webkit-box; white-space: normal; }
.notification-text strong							{ font-weight: 500; }
.notification-text .points							{ color: var(--perfectcamp-green6); font-weight: bold; }
.opacity50											{ opacity: .5; }

.perfectcamp-border-button						{ display: inline-block; width: 166px; height: 36px; line-height: 36px; margin: 20px; border: 1.5px solid var(--perfectcamp-gray2); color: var(--perfectcamp-gray5); }
.perfectcamp-border-button .icon				{ margin-right: 10px; }
.perfectcamp-points								{ color: var(--perfectcamp-green5); font-weight: bold; }

.perfectcamp-green1								{ color: var(--perfectcamp-green1); }
.perfectcamp-green2								{ color: var(--perfectcamp-green2); }
.perfectcamp-green3								{ color: var(--perfectcamp-green3); }
.perfectcamp-green4								{ color: var(--perfectcamp-green4); }
.perfectcamp-green5								{ color: var(--perfectcamp-green5); }
.perfectcamp-green6								{ color: var(--perfectcamp-green6); }
.perfectcamp-green7								{ color: var(--perfectcamp-green7); }

.perfectcamp-gray1								{ color: var(--perfectcamp-gray1); }
.perfectcamp-gray2								{ color: var(--perfectcamp-gray2); }
.perfectcamp-gray3								{ color: var(--perfectcamp-gray3); }
.perfectcamp-gray4								{ color: var(--perfectcamp-gray4); }
.perfectcamp-gray5								{ color: var(--perfectcamp-gray5); }
.perfectcamp-gray6								{ color: var(--perfectcamp-gray6); }
.perfectcamp-gray7								{ color: var(--perfectcamp-gray7); }

.perfectcamp-red								{ color: var(--perfectcamp-red); }

.photo-browser-popup							{ border-radius: 0; }
.photo-browser-popup.youtube					{ --f7-popup-tablet-height: 500px; }
.photo-browser-popup .credit					{ font-size: 12px; }
.point											{ color: var(--perfectcamp-green5); font-weight: 600; font-family: var(--f7-font-family); font-size: 26px; }
.popup .button-send								{ display: inline-block; height: 39px; width: 62px; font-size: 14px; margin-left: 20px; text-transform: unset; }
.popup .circle-action-button					{ right: 17px; top: 19px; }
.popup .navbar .right							{ margin-right: 10px; }
.pro-badge										{ color: white; --fa-secondary-opacity: 1; --fa-secondary-color: var(--perfectcamp-green5); }
.pulsating-circle 								{ position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); width: 14px; height: 14px; }
.pulsating-circle .before 						{ content: ''; position: relative; display: block; width: 800%; height: 800%; left: 8px; top: 8px; box-sizing: border-box; margin-left: -400%; margin-top: -400%; border-radius: 100%; background-color: #01a4e9; animation: pulse-ring 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }
.pulsating-circle .after 						{ content: ''; position: absolute; left: 0; top: 0; display: block; width: 100%; height: 100%; background-color: #4285F4; border-radius: 9px; border: 2px solid white; box-shadow: 0 0 8px rgba(0,0,0,.3); animation: pulse-dot 2s cubic-bezier(0.455, 0.03, 0.515, 0.955) -.4s infinite; }
.sheet-emoji .categories						{ display: flex; padding: 5px 10px; font-size: 18px; border-bottom: 1px solid var(--perfectcamp-gray2); line-height: 18px; }
.sheet-emoji .category							{ padding: 8px; color: var(--perfectcamp-gray4); }
.sheet-emoji .category:hover					{ color: var(--perfectcamp-gray5); }

.profile-sheet-modal .profile-pic				{ width: 72px; transform: translate(-50%, -50%); position: absolute; left: 50%; border-radius: 40px; border: 4px solid var(--perfectcamp-white-black-background); background-color: white; }
.profile-sheet-modal .username					{ text-align: center; margin-top: 55px; font-size: 20px; font-weight: bold; }
.profile-sheet-modal .bio						{ height: 60px; text-align: center; margin-top: 10px; font-size: 14px; color: var(--perfectcamp-gray4); -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; display: -webkit-box; white-space: normal; }
.profile-sheet-modal .totals					{ width: 98%; }
.profile-sheet-modal .totals td					{ width: 25%; text-align: center; }
.profile-sheet-modal .total						{ font-size: 31px; margin-top: 15px; font-weight: bold; line-height: 31px; }
.profile-sheet-modal .label						{ font-size: 14px; }
.profile-sheet-modal .follow-button				{ width: 100px; float: right; margin: 20px; position: absolute; right: 0; background-color: var(--perfectcamp-gray1); color: var(--perfectcamp-text-color); }
.profile-sheet-modal .follow-button.following	{ background-color: var(--perfectcamp-blue) !important; color: white !important; }

.ratings-container + .photo						{ min-width: 218px; }

.reaction[data-name="clown-face"]				{ top: -5px !important; }
.reaction[data-name="exploding-head"]			{ top: -10px !important; width: 38px !important; height: 38px !important; }
.reaction[data-name="face-exhaling"]			{ top: -4px !important; }
.reaction[data-name="face-with-thermometer"]	{ top: -4px !important; }
.reaction[data-name="fire"]						{ top: -8px !important; }
.reaction[data-name="partying-face"]			{ top: -8px !important; width: 38px !important; height: 38px !important; }
.reaction[data-name="pouting-face"]				{ top: -6px !important; width: 36px !important; height: 36px !important; }
.reaction[data-name="shushing-face"]			{ top: -2px !important; width: 32px !important; height: 32px !important; }
.reaction[data-name="thumbs-up"]				{ top: -5px !important; }

.supporter										{ --fa-primary-color: white; --fa-primary-opacity: 1; --fa-secondary-opacity: 1; --fa-secondary-color: var(--perfectcamp-green5); font-size: 19px; }
.toast-text .emoji								{ width: 25px; height: 25px; vertical-align: -5px; margin-right: 5px; }
.tooltip										{ background-color: rgba(var(--perfectcamp-gray6-rgb),.9); --f7-tooltip-desktop-padding: 8px 8px; --f7-tooltip-desktop-font-size: 14px; }
.tooltip .mention								{ width: 24px; height: 24px; border-radius: 12px; padding: 0; vertical-align: -7px; margin-right: 5px; }

.tooltip-reaction								{ background-color: black; min-width: 300px; max-width: 100%; }
.tooltip-reaction .emoji-large					{ width: 100px; height: 100px; float: left; margin-left: -5px; }
.tooltip-reaction strong						{ color: var(--perfectcamp-gray1); }
.tooltip-reaction .inner						{ padding: 5px 5px 5px 0; color: var(--perfectcamp-gray3); }
.tooltip-reaction .short-name					{ white-space: nowrap; }

.upload-instructions							{ display: none; position: absolute; top: 23%; width: 100%; color: var(--perfectcamp-gray2); text-align: center; font-size: 30px; }
.upload-instructions .icon						{ font-size: 70px; }
.upload-instructions .or						{ margin: 20px 0; font-weight: bold; }
.view-setup-alerts 								{ background-size: cover; background-repeat: no-repeat; background-position: 0 278px; }

.youtube-wrapper								{ max-height: 240px; max-width: 426px; position: relative; cursor: pointer; }
.youtube-wrapper[data-youtubeid]::before		{ display: inline-block; text-rendering: auto; -webkit-font-smoothing: antialiased; content: '\f04b'; position: absolute; top: 50%; left: 50%; z-index: 1; color: rgba(255,255,255,.8); font: var(--fa-font-solid); font-size: 60px; margin-left: -23px; margin-top: -30px; }

.videoWrapper 									{ position: relative; padding-bottom: 56.25%; height: 0; margin-top: 10px; }
.videoWrapper iframe 					 		{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.videoWrapper > div								{ overflow: hidden; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.videoWrapper > div img							{ margin: -10.6% 0; }

.bottom-nav .tab-link-highlight					{ display: none; }
.bottom-nav .tab-link 							{ color: var(--perfectcamp-gray5); font-size: 23px; transition-duration: .3s; overflow: hidden; position: relative; padding-left: 0; padding-right: 0; flex-direction: column !important; }
.bottom-nav .tabbar-label						{ font-size: 9px; line-height: 1.8; font-weight: normal; margin-bottom: -4px; max-width: 100%; overflow: hidden; }
.bottom-nav .selected							{ color: var(--perfectcamp-green5) !important; }
.bottom-nav .selected .tabbar-label				{ color: var(--perfectcamp-gray7); }
.bottom-nav .favorites.selected					{ color: var(--perfectcamp-red) !important; }
.bottom-nav:before								{ height: .5px; }
.bottom-nav .icon-container						{ position: relative; line-height: 1em; }
.bottom-nav .badge								{ display: none; position: absolute; top: -4px; right: -13px; background-color: var(--perfectcamp-blue); padding: 0 4px; color: white; font-size: 12px; font-weight: 600; line-height: 18px; border: 2px solid var(--f7-toolbar-bg-color,var(--f7-bars-bg-color)); }

.calendar-month-slider .table								{ display: table; box-sizing: border-box; border-collapse: separate; border-spacing:2px; }
.calendar-month-slider .tr									{ display: table-row; }
.calendar-month-slider .td									{ display: table-cell; text-align: center; height: 32px; box-sizing: border-box; color: var(--perfectcamp-gray6); }
.calendar-month-slider .td.past								{ color: rgba(var(--perfectcamp-gray6-rgb), .3); }
.calendar-month-slider .td:first-child						{ background-color: white; width: 36px; min-width: 36px; position: relative; }
.calendar-month-slider .td:not(:first-child)				{ width: 32px; min-width: 32px; }
.calendar-month-slider .weekend								{ background-color: var(--perfectcamp-gray2) !important; }
.calendar-month-slider .days-header							{ position: fixed; overflow: hidden; width: 100%; background-color: white; border-bottom: 1px solid var(--perfectcamp-gray3); box-shadow: 2px 0 8px rgba(0,0,0,0.6); z-index: 3; }
.calendar-month-slider .days								{ margin: 0 auto; padding-right: 10px; }
.calendar-month-slider .days .td:not(:first-child)			{ font-weight: bold; font-size: 12px; width: 32px; min-width: 32px; background-color: var(--perfectcamp-gray1); }
.calendar-month-slider .days .today 						{ border: 2px solid; }
.calendar-month-slider .days .weekday						{ font-size: 10px; text-transform: uppercase; }
.calendar-month-slider .days .day							{ font-size: 12px; }
.calendar-month-slider .days .holiday						{ border: 2px solid; border-color: var(--perfectcamp-green6); }
.calendar-month-slider .campsite-number-header				{ overflow: hidden; width: 44px; position: absolute; z-index: 1; }
.calendar-month-slider .campsite-number-header .table		{ margin-bottom: 10px; margin-top: 1px; background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,0)); }
.calendar-month-slider .campsite-number-header .td			{ background-color: transparent;  }
.calendar-month-slider .campsite-number						{ font-size: 10px; font-weight: bold; background-color: #BDD09F; border: 3px solid white; box-sizing: border-box; width: 28px; height: 28px; border-radius: 14px; line-height: 22px; box-shadow: 1px 1px 3px rgba(0,0,0,0.6); margin-top: 2px; }
.calendar-month-slider .campsite-number.favorite			{ background-color: var(--perfectcamp-red); color: white; }
.calendar-month-slider .availability-container				{ overflow: auto; width: calc(100%); height: calc(100% - 95px); position: absolute; top: 95px; }
.calendar-month-slider .availability						{ margin: 0 auto 10px auto; padding-right: 10px; }
.calendar-month-slider .availability .td:not(:first-child)	{ background-color: var(--perfectcamp-gray1); vertical-align: middle; }
.calendar-month-slider .availability .td.past 				{ background-color: rgba(var(--perfectcamp-gray1-rgb), .3); }
.calendar-month-slider .availability .available				{ background-color: var(--perfectcamp-green2) !important; font-weight: bold; }
.calendar-month-slider .availability .available.past		{ background-color: rgba(var(--perfectcamp-green2-rgb), .3) !important; }
.calendar-month-slider .highlight							{ filter: brightness(90%); }

.campgroundOverview									{ min-height: 244px; position: relative; font-size: 14px; color: var(--perfectcamp-gray1); text-shadow: 0 0 3px black, 0 0 10px black, 0 0 4px black; background-size: cover; }
.campgroundOverview .price							{ position: absolute; left: 0; top: 0; background-color: var(--perfectcamp-green5); width: 64px; height: 40px; line-height: 40px; text-align: center; font-size: 23px; text-shadow: 0 0 4px black; font-weight: bold; }
.campgroundOverview .content						{ padding: 10px; padding-top: 44px; }
.campgroundOverview h2								{ cursor: pointer; max-width: 247px; margin-top: 0 !important; font-size: 17px !important; font-weight: bold !important; height: 40px; position: absolute; top: 0; line-height: 40px; left: 64px; width: 80%; padding-left: 10px; background-image: linear-gradient(to right, rgba(0,0,0,.5) , rgba(0,0,0,0)); overflow: hidden; }
.campgroundOverview .stars							{ color: #ddc920; display: inline-block; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; font-size: 18px; }
.campgroundOverview .rating							{ color: #ddc920; font-size: 18px; font-weight: bold; }	
.campgroundOverview .footer							{ position: absolute; bottom: 1px; font-size: 9px; animation-delay: 1500ms; color: rgba(var(--perfectcamp-gray1-rgb), .5); }
.campgroundOverview .campground-rating				{ margin-bottom: 8px; margin-top: 8px; }
.campgroundOverview .icon 							{ margin-right: 0; font-size: 27px;  filter: drop-shadow(0 0 1px black); }
.campgroundOverview .driving 						{ animation-delay: 200ms; position: absolute; top: 11px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.1em; width: 53px; }
.campgroundOverview .driving .icon					{ margin-bottom: 2px; }
.campgroundOverview .elevation						{ animation-delay: 400ms; position: absolute; top: 81px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.1em; width: 53px; }
.campgroundOverview .elevation .icon				{ margin-bottom: 3px; }
.campgroundOverview .temperature					{ animation-delay: 600ms; position: absolute; top: 143px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.3em; width: 53px; }
.campgroundOverview .temperature .iconDIV			{ position: absolute; left: 3px; }
.campgroundOverview .temperature .iconDIV .icon		{ font-size: 30px; }
.campgroundOverview .temperature .temps 			{ margin-left: 18px; }
.campgroundOverview .temperature .temps .low 		{ font-weight: normal; }
.campgroundOverview .signal							{ animation-delay: 800ms; position: absolute; top: 187px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.3em; width: 53px; }
.campgroundOverview .signal .no-signal				{ opacity: .4; }
.campgroundOverview .attributes						{ position: absolute; bottom: 10px; left: 10px; width: 75%; }
.campgroundOverview .attributes img					{ width: 27px; height: 27px; margin-right: 3px; }

.campground-tooltip .mapboxgl-popup-content			{ padding: 5px 10px; background-color: black; color: white; }	
.campground-tooltip .mapboxgl-popup-tip				{ border-top-color: black; }

.circle-action-button								{ position: absolute; font-size: 20px; width: 34px; height: 34px; border-radius: 17px; text-align: center; line-height: 34px; cursor: pointer; z-index: 0; transition: all .25s ease-in-out; }
.circle-action-button:hover							{ background-color: var(--perfectcamp-gray1); color: black; }
.circle-action-button:active						{ background-color: var(--perfectcamp-gray2); color: black; }

.device-desktop .row-footer							{ display: block; }

.dialog .forgot-password							{ text-align: right; font-size: 12px; margin-top: 8px; }

.discussions .actions										{ width: 100%; max-width: 350px; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; color: var(--perfectcamp-gray4); }
.discussions .actions > div									{ flex-basis: 0; flex-grow: 1;}
.discussions .action										{ cursor: pointer; height: 23px; display: inline-block; line-height: 26px; padding: 5px; }
.discussions .action .count									{ margin-left: 6px; font-size: 13px; } 
.discussions .action.active									{ color: var(--perfectcamp-text-color); }
.discussions .action.unlike									{ color: var(--perfectcamp-text-color); }
.discussions .body											{ transition-duration: .5s; overflow: hidden; position: relative; padding-bottom: 10px; }
.discussions .body.truncated								{ overflow: hidden; max-height: 250px; } 
.discussions .expand										{ width: 100%; position: absolute; bottom: 0; display: none; font-size: 14px; height: 50px; background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) ); cursor: pointer; }
.discussions .expand .icon									{ margin-right: 4px; }
.discussions .expand-link									{ position: absolute; display: none; bottom: 12px; right: 11px; background-color: white; padding: 0 9px; border-radius: 12px; }
.discussions .button-add									{ display: inline-block; margin-bottom: 20px; }
.discussions .button-add svg								{ margin-right: 4px; }
.discussions .button-reply									{ display: inline-block; min-width: 175px; margin: 20px 0 40px 0; }
.discussions .carrier										{ position: absolute; left: 125px; bottom: 12px; max-width: 50px; }
.discussions .chip[data-tagid="3486"]						{ background-color: var(--perfectcamp-blue) !important; color: var(--perfectcamp-gray1) !important; }
.discussions .chip[data-tagid="3486"] .chip-media			{ color: var(--perfectcamp-gray1) !important; }
.discussions .chip[data-tagid="3484"]						{ background-color: var(--perfectcamp-red) !important; color: var(--perfectcamp-gray1) !important; }
.discussions .chip[data-tagid="3484"] .chip-media			{ color: var(--perfectcamp-gray1) !important; }
.discussions .chip[data-tagid="3484"] .chip-delete			{ color: white !important; }
.discussions .chip[data-tagid="3487"]						{ background-color: var(--perfectcamp-yellow) !important; color: var(--perfectcamp-gray6) !important; }
.discussions .chip[data-tagid="3487"] .chip-delete			{ color: black !important; }
.discussions .chip[data-tagid="3485"]						{ background-color: var(--perfectcamp-green5) !important; color: var(--perfectcamp-gray1) !important; }
.discussions .chip[data-tagid="3485"] .chip-media			{ color: var(--perfectcamp-gray1) !important; }
.discussions .discussion-menu								{ float: right; color: var(--perfectcamp-gray4); width: 30px; height: 30px; border-radius: 15px; text-align: center; line-height: 30px; box-sizing: border-box; cursor: pointer; margin-top: -4px; }
.discussions .discussion-menu:hover							{ background-color: var(--perfectcamp-gray2); color: var(--perfectcamp-gray6); }
.discussions .emoji 										{ width: 20px; height: 1em; margin: 0 1px; position: relative; display: inline-block; }
.discussions .emoji img 									{ position: absolute; left: -4px; top: -6px; width: 30px; height: 30px; }

.discussions .improvements 									{ margin-top: 15px; }
.discussions .indent 										{ margin-left: 47px; }
.discussions .marker-container								{ transform: translate(-110%, 0); display: inline-block; background-color: rgba(0,0,0,.4); padding: 10px; border-top-left-radius: 6px; border-bottom-left-radius: 6px; position: absolute; top: 8px; left: 8px; color: var(--perfectcamp-gray2); text-shadow: 0 0 2px black; height: calc(100% - 36px); }
.discussions .marker-container .marker-name					{ font-weight: bold; font-size: 16px; }
.discussions .marker-container .marker-address				{ margin-bottom: 10px; }
.discussions .marker-container .marker-div					{ margin: 5px 0; }
.discussions .marker-container .marker-div .marker-icon		{ width: 20px; vertical-align: -5px; margin-right: 5px; }
.discussions .marker-container .marker-div .price			{ font-size: 15px; font-weight: bold; color: var(--perfectcamp-gray2); }
.discussions .marker-container .marker-div .per-gallon		{ color: var(--perfectcamp-gray3); font-size: 10px; }
.discussions .marker-container .marker-div .icon			{ margin-right: 8px; font-size: 14px; filter: drop-shadow(0 0 2px black); }
.discussions .marker-container .marker-div .phone-button	{ margin: 10px 0; background-color: var(--perfectcamp-gray2); color: black; }
.discussions .new-content									{ background-color: var(--perfectcamp-blue); color: white; padding: 0 7px; height: 16px; display: inline-block; line-height: 16px; border-radius: 10px; font-size: 11px; margin-left: 4px; }
.discussions .parent										{ padding: 8px 0 6px 0; }
.discussions .parent:not(:last-child)						{ border-bottom: 1px solid var(--perfectcamp-gray2); }
.discussions .photos										{ overflow: hidden; position: relative; margin-top: 5px; }
.discussions .photos .attributes 							{ position: absolute; bottom: 20px; left: 20px; }
.discussions .photos .attributes img						{ width: 30px; height: 30px; margin-right: 4px; }
.discussions .photos .photo									{ margin-left: 0; }
.discussions .photo											{ height: 200px; margin-top: 8px; margin-left: 4px; border-radius: 6px; cursor: pointer; box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12); }
.discussions .points										{ color: var(--perfectcamp-green6); font-weight: bold; }
.discussions .pro-badge										{ margin-left: 3px; font-size: 14px; }
.discussions .profile-link									{ cursor: pointer; color: var(--perfectcamp-green5); }
.discussions .profile-pic									{ float: left; cursor: pointer; width: 40px; height: 40px; border-radius: 20px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.discussions .ratings-container 							{ transform: translate(-110%, 0); display: inline-block; background-color: rgba(0,0,0,.4); padding: 10px; border-top-left-radius: 6px; border-bottom-left-radius: 6px; position: absolute; top: 8px; left: 8px; color: var(--perfectcamp-gray2); text-shadow: 0 0 2px black; height: calc(100% - 36px); }
.discussions .ratings-container .rating-overall				{ color: var(--perfectcamp-yellow); font-weight: bold; text-shadow: 0 0 2px black, 0 0 3px black; font-size: 24px; margin-bottom: 20px; }
.discussions .ratings-container .rating-overall .stars		{ color: var(--perfectcamp-yellow); filter: drop-shadow(0 0 5px black); }
.discussions .ratings-container table						{ width: 100%; font-size: 14px; }
.discussions .ratings-container table td:first-child		{ font-weight: bold; }
.discussions .reactions										{ margin: 5px 0; }
.discussions .reactions .reacted							{ border: 1.5px solid rgba(var(--perfectcamp-blue-rgb), 1); background-color: rgba(var(--perfectcamp-blue-rgb), .1); font-weight: bold; color: rgba(var(--perfectcamp-blue-rgb), .8) }
.discussions .reactions .reaction							{ position: absolute; width: 30px; height: 30px; top: -3px; left: 0; }
.discussions .reactions .reaction-slider					{ overflow: hidden; display: inline-block; vertical-align: middle; }

.discussions .replies-separator								{ background-color: var(--perfectcamp-gray2); padding: 5px 10px; margin: 16px 0 5px 0; font-size: 14px; font-weight: bold; }
.discussions .replies .actions								{ max-width: 150px; }
.discussions .replies > .reply								{ padding: 8px 0 6px 0; border-bottom: 1px solid var(--perfectcamp-gray2); }
.discussions .speed-test-container							{ position: relative; width: 310px; display: inline-block; }
.discussions .speed-test-container .bars					{ position: absolute; top: -18px; left: 131px; font-size: 30px; --fa-primary-color: var(--perfectcamp-blue); }
.discussions .speed-test-container .download				{ position: absolute; left: 63px; bottom: 77px; font-size: 26px; color: var(--perfectcamp-gray3); }
.discussions .speed-test-container .upload					{ position: absolute; right: 71px; bottom: 77px; font-size: 26px; color: var(--perfectcamp-gray3); }
.discussions .speed-test-container canvas					{ margin-bottom: 18px; }
.discussions .subject										{ font-weight: 500; color: var(--perfectcamp-gray7); }
.discussions .tags .chip									{ cursor: pointer; font-size: 11px; background-color: var(--perfectcamp-gray2); color: var(--perfectcamp-text-color); height: 20px; margin-right: 2px; }
.discussions .tags .chip .chip-media						{ font-size: 11px; color: var(--perfectcamp-text-color); width: 24px; height: 20px; }
.discussions .tags .chip .chip-label						{ margin-left: 0; }
.discussions .username-div									{ color: var(--perfectcamp-gray4); font-size: 13px; }
.discussions .vimeo											{ max-width: 500px; position: relative; margin: 5px 0; }
.discussions .vimeo iframe									{ border-radius: 6px; box-shadow: var(--f7-elevation-3)!important; }
.discussions .swiper-container								{ margin-bottom: 5px; }
.discussions .swiper-wrapper								{ padding-bottom: 20px; }
.discussions .swiper-pagination								{ bottom: 0px; }
.discussions .swiper-slide									{ max-width: 500px; }

.discussions .replies-summary								{ margin-top: 4px; color: var(--perfectcamp-green5); cursor: pointer; display: inline-block; font-size: 14px; }
.discussions .replies-summary .pic							{ width: 26px; height: 26px; border-radius: 15px; border: 2px solid var(--f7-page-bg-color); vertical-align: -9px; }
.discussions .replies-summary .pic:nth-child(n+2)			{ margin-left: -6px; }

.discussions .scrolling-container										{ position: relative; width: 100%; height: 216px; margin-left: -8px; margin-top: 5px; }
.discussions .scrolling-container .scrolling-wrapper					{ width: 100%; box-sizing: border-box; height: 100%; overflow-x: scroll; padding: 0 4px; overflow-y: hidden; white-space: nowrap; -webkit-overflow-scrolling: touch; position: relative; scroll-behavior: smooth; }
.discussions .scrolling-container .scrolling-wrapper::-webkit-scrollbar { display: none; }
.discussions .scrolling-container .scrolling-wrapper .photo				{ height: 200px; margin-top: 8px; margin-left: 4px; border-radius: 6px; cursor: pointer; box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12); }
.discussions .scrolling-container .scrolling-wrapper .photo-wrapper		{ display: inline-block; }
.discussions .scrolling-container .scrolling-wrapper .attributes 		{ position: absolute; bottom: 20px; left: 20px; }
.discussions .scrolling-container .scrolling-wrapper .attributes img	{ width: 30px; height: 30px; margin-right: 4px; }
.discussions .scrolling-container .scroll-arrow							{ display: none; opacity: 0; pointer-events: none; position: absolute; font-size: 60px; color: rgba(255,255,255,.7); filter: drop-shadow(0 0 3px gray); top: 50%; margin-top: -30px; transition-duration: .4s; z-index: 2; }
.discussions .scrolling-container .scroll-arrow:hover					{ color: rgba(255,255,255,1); filter: drop-shadow(0 0 3px black); }	
.discussions .scrolling-container .scroll-left							{ left: 10px; }
.discussions .scrolling-container .scroll-right							{ right: 5px; }
.discussions .scrolling-container .fadeout								{ opacity: 0; position: absolute; z-index: 1; width: 30px; height: 100%; transition-duration: 1s; }
.discussions .scrolling-container .fadeout-left							{ left: 0;  background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0)); }
.discussions .scrolling-container .fadeout-right						{ right: 0; background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1)); }
.discussions .scrolling-container .visible								{ opacity: 1; pointer-events: all; cursor: pointer; }

.discussion-search 										{ --f7-popup-tablet-height: 680px; }
.discussion-search .page-content						{ padding-right: 20px; padding-left: 20px; padding-bottom: 20px; }
.discussion-search .search-box							{ position: relative; margin: 20px 0; }
.discussion-search [name=TagSearch]						{ border-radius: 20px; width: 100%; height: 40px; padding-left: 50px; box-sizing: border-box; background-color: var(--perfectcamp-gray2); }
.discussion-search [name=TagSearch]::placeholder		{ color: var(--perfectcamp-gray3); }
.discussion-search .search-icon							{ position: absolute; font-size: 20px; left: 16px; top: 7px; color: var(--perfectcamp-gray4); }
.discussion-search .search-clear						{ position: absolute; font-size: 20px; right: 3px; top: 4px; color: var(--perfectcamp-gray4); cursor: pointer; display: none; padding: 2px 10px; }
.discussion-search .recent	 							{ display: none; margin-top: 23px; }
.discussion-search .more								{ display: none; margin-top: 23px; }
.discussion-search .label								{ text-transform: uppercase; font-size: 11px; letter-spacing: 1px; color: var(--perfectcamp-gray3); }
.discussion-search .chip 								{ padding-right: 7px; cursor: pointer; transition-duration: 300ms; margin-right: 4px; }
.discussion-search .chip .chip-label					{ margin-left: -3px; }
.discussion-search .chip[data-userid] .chip-label 		{ margin-left: 4px; }
.discussion-search .chip:hover 							{ background-color: var(--perfectcamp-gray3); }
.discussion-search .chip-add							{ font-size: 18px; margin-left: 4px; margin-top: 2px; }
.discussion-search .chip-media							{ color: var(--perfectcamp-textcolor); font-size: 15px; }
.discussion-search .chip-image							{ height: 24px; }
.discussion-search .skeleton-text span					{ margin-right: 10px; } 

.filter-box											{ border: 2px solid var(--perfectcamp-gray2); border-radius: 20px; min-height: 40px; width: 100%; position: relative; cursor: text; box-sizing: border-box; padding: 0 2px; margin-bottom: 7px; }
.filter-box .chip-slider							{ overflow: hidden; display: inline-flex; vertical-align: middle; }
.filter-box .chip									{ cursor: pointer; margin-right: 4px; transition-duration: 300ms; } 
.filter-box .chip-image								{ height: 24px; }
.filter-box .chip-label								{ margin-left: -3px; }
.filter-box .chip[data-userid] .chip-label 			{ margin-left: 4px; }
.filter-box .chip-media								{ color: var(--perfectcamp-textcolor); font-size: 15px; }

/* used for popover and sheet emojis */
.grid .emoji										{ position: absolute; width: 42px; height: 42px; top: -3px; left: -3px; }
.grid .emoji[data-name="astonished-face"]			{ top: -5px; }
.grid .emoji[data-name="clown-face"]				{ top: -5px; }
.grid .emoji[data-name="disguised-face"]			{ top: 0; }
.grid .emoji[data-name="exploding-head"]			{ top: -10px; left: -8px; width: 53px; height: 53px; }
.grid .emoji[data-name="face-vomiting"]				{ left: -5px; width: 46px; height: 46px; }
.grid .emoji[data-name="face-with-thermometer"]		{ top: -6px; left: -4px; width: 44px; height: 44px; }
.grid .emoji[data-name="fire"]						{ top: -9px; }
.grid .emoji[data-name="partying-face"]				{ top: -8px; left: -2px; width: 50px; height: 50px; }
.grid .emoji[data-name="pouting-face"]				{ top: -6px; left: -6px; width: 48px; height: 48px; }
.grid .emoji[data-name="shushing-face"]				{ top: -1px; }

.navbar-main									{ --f7-navbar-font-size: 18px;  color: var(--perfectcamp-heading-color); }
.navbar-main a									{ color: var(--perfectcamp-heading-color); }
.navbar-main .navbar-bg 						{ background-color: var(--perfectcamp-green6); }
.navbar-main .account-profile-pic						{ cursor: pointer; width: 40px; height: 40px; background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; right: 9px; top: 8px; border-radius: 20px; box-sizing: border-box; }
.navbar-main .border							{ position: absolute; width: 40px; height: 40px; right: 9px; top: 8px; border-radius: 20px; box-sizing: border-box; border: 1px solid rgba(255,255,255,.3); }
.navbar-main .notifications						{ display: none; cursor: pointer; background-color: var(--perfectcamp-blue); width: 14px; height: 14px; position: absolute; bottom: 5px; right: 5px; border-radius: 7px; border: 1.5px solid white; box-sizing: border-box; }
.navbar-main .container							{ padding-top: 0; padding-bottom: 0; font-size: 14px; }
.navbar-main .button							{ background-color: var(--perfectcamp-green5); }
.navbar-main .left								{ margin-right: 0; }
.navbar-main .menu								{ margin-right: 0; height: 38px !important; }
.navbar-main .prev-month						{ display: none; position: absolute; left: 80px; width: 30px; font-size: 24px; }
.navbar-main .next-month						{ display: none; position: absolute; right: 80px; width: 30px; font-size: 24px; }

.photo-browser .caption-header					{ color: var(--perfectcamp-gray2); width: 95%; margin: 0 auto 10px auto; }
.photo-browser .caption-header .profile			{ text-align: left; }
.photo-browser .caption-header .profile	span	{ position: relative; width: 35px; display: inline-block; }
.photo-browser .caption-header .profile-pic		{ position: absolute; top: -20px; left: 0; width: 30px; height: 30px; border-radius: 15px; }
.photo-browser .caption-header .likes a			{ color: var(--perfectcamp-gray2); }
.photo-browser .caption-header .likes .icon		{ margin-left: 8px; font-size: 19px; }
.photo-browser .caption-header .date-taken		{ text-align: right; }
.photo-browser  .photo-browser-caption a		{ pointer-events: none; }
.photo-browser  .photo-browser-caption-active a	{ pointer-events: all; }

.popover .icon-container						{ width: 35px; display: inline-block; position: relative; }
.popover .icon-container .icon					{ position: absolute; font-size: 18px; left: 0px; top: -14px; }
.popover .list-button							{ transition-duration: initial; }
.popover .list-button:hover						{ background-color: var(--perfectcamp-list-button-hover-background-color); color: var(--perfectcamp-list-button-hover-color); }	
.popover .list .icon							{ margin-right: 12px; font-size: 20px; }

.popup .editor												{ position: relative; }
.popup .editor .placeholder									{ position: absolute; color: var(--perfectcamp-gray3); padding: 20px; }
.popup .editor .editor-content								{ padding: 20px; outline: 0px solid transparent; min-height: 100px; }
.popup .editor .editor-content span.hyperlink				{ cursor: pointer; color: var(--perfectcamp-green5); }
.popup .editor .editor-content:focus 						{ outline: 0px solid transparent; }
.popup .editor .editor-content .emoji						{ vertical-align: -4px; width: 20px; height: 20px; }
.popup .editor .editor-content .photo,
.popup .editor .editor-content .video						{ display: block; margin: 5px 0 7px 0; width: 100%; max-width: 500px; border-radius: 6px; box-shadow: var(--f7-elevation-3)!important; cursor: pointer; }
.popup .editor .editor-content .video						{ max-width: 250px; }
.popup .editor .editor-content .photo[data-max-width="320"]	{ max-width: 320px; }
.popup .editor .editor-content .photo[data-max-width="100"]	{ max-width: 100px; }
.popup .editor-buttons										{ color: var(--perfectcamp-gray4); }
.popup .editor-buttons.focus								{ border-color: var(--perfectcamp-gray3); }
.popup .editor-button										{ display: inline-block; width: 30px; text-align: center; margin: 5px; padding: 3px; box-sizing: border-box; cursor: pointer; border-radius: 3px; height: 30px; vertical-align: middle; }
.popup .editor-button:hover									{ background-color: var(--perfectcamp-gray2); color: var(--perfectcamp-gray6); }
.popup .editor-button .icon									{ vertical-align: 13px; }
.popup .editor-buttons .input-photo,
.popup .editor-buttons .input-video							{ display: none; }
.popup .editor-buttons [data-button="photo"],
.popup .editor-buttons [data-button="video"],
.popup .editor-buttons [data-button="link"]					{ position: relative; }
.popup .editor-button .pro-tag								{ position: absolute; top: -2px; right: -5px; color: white; background-color: var(--perfectcamp-green5); border-radius: 2px; font-size: 8px; padding: 0 2px; }

.row-footer 									{ display: none; font-size: 20px; background-color: var(--perfectcamp-footer-background-color); text-align: center; }
.row-footer .container 							{ text-align: center; background-color: var(--perfectcamp-footer-background-color) !important; padding-bottom: 50px; }
.row-footer .heading2 							{ font-size: 15px; font-weight: bold; line-height: 2.5em; }
.row-footer .stay-connected						{ width: 250px; text-align: left; display: inline-block; color: var(--perfectcamp-gray4); }
.row-footer .social-container					{ display: flex; justify-content: space-between; width: 100%; }
.row-footer .social								{ font-size: 31px; }
.row-footer a									{ color: var(--perfectcamp-gray4); }

.video-full-width								{ position: relative; padding-bottom: calc(var(--video--height) / var(--video--width) * 100%); overflow: hidden; max-width: 100%; background: black; }
.video-full-width iframe,
.video-full-width object,
.video-full-width embed 						{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }





/* page specific styles */

.page-about .mission							{ margin-top: 14px; font-weight: bold; font-style: italic; font-size: 20px; }
.page-about .pictureDIV							{ margin-top: 40px; width: 100%; }
.page-about .pictureDIV img						{ filter: grayscale(100%); }
.page-about .pictureDIV td:nth-child(2)			{ text-align: center; }
.page-about .supporting							{ color: var(--perfectcamp-gray3); margin-bottom: 2em; }
.page-about .supporters img						{ max-height: 66px; margin-bottom: 1em; }
.page-about .supporters .lnt div				{ max-height: 58px; margin-bottom: 1em; display: inline-block; background-image: url(/images/logos/lnt_white.png); background-repeat: no-repeat; width: 150px; height: 86px; background-size: contain;}					
.page-about .photo								{ max-width: 100%; }

.page-account .alerts								{ animation-delay: 1100ms; }
.page-account .real-time-alert						{ background-color: var(--perfectcamp-yellow); color: black; padding: 10px; font-size: 14px; }
.page-account .real-time-alert .icon				{ float: left; font-size: 28px; margin-left: 5px; }
.page-account .real-time-alert .alert-text			{ margin-left: 50px; }
.page-account .real-time-alert .bubble				{ white-space: nowrap; background-color: #d4c266; border-radius: 6px; padding: 2px 8px; font-weight: normal; }

.page-account .profile .frequency					{ margin-top: 10px; }
.page-account .profile .label						{ font-size: 11px; color: var(--perfectcamp-gray4); text-transform: uppercase; }
.page-account .profile .list .item-inner:after		{ width: calc(100% - 15px); }
.page-account .profile .notification-frequency		{ display: inline-block; height: 28px; border: 2px solid var(--perfectcamp-gray3); padding: 0; border-radius: 14px; font-size: 12px; line-height: 24px; }
.page-account .profile .newsletter-frequency		{ display: inline-block; height: 28px; border: 2px solid var(--perfectcamp-gray3); padding: 0; border-radius: 14px; font-size: 12px; line-height: 24px; }
.page-account .profile .setting 					{ height: 28px; display: inline-block; padding: 0 6px; line-height: 28px; border-radius: 14px; }
.page-account .profile .setting:hover 				{ background-color: #e8e8e8; color: #666666; }
.page-account .profile .selected 					{ background-color: #2196F3 ; color: white; }
.page-account .profile .lnt-container				{ position: absolute; right: -10px; bottom: -11px; z-index: 2; }
.page-account .profile .lnt-container img			{ width: 28px; filter: drop-shadow(0 0 2px black); }

.page-account .alerts .alert						{ margin-bottom: 14px; border-collapse: collapse; font-size: var(--f7-font-size); width: 100%; cursor: pointer; }
.page-account .alerts .alert:last-child				{ margin-bottom: 0; }
.page-account .alerts .whistle						{ font-size: 24px; background-color: var(--perfectcamp-green5); text-align: center; width: 58px; color: var(--perfectcamp-green1); }
.page-account .alerts .paused .whistle				{ background-color: var(--perfectcamp-gray2); color: white; }
.page-account .alerts .whistle .icon				{ filter: drop-shadow(0 0 3px black); }
.page-account .alerts .paused .whistle .icon		{ filter: none; }
.page-account .alerts .text							{ font-style: italic; background-color: var(--perfectcamp-gray1); padding: 8px; }
.page-account .alerts .paused .text					{ color: var(--perfectcamp-gray3); }
.page-account .card									{ margin-bottom: 15px; }
.page-account .card .preloader						{ margin-top: 31px; width: 45px; height: 45px; }
.page-account .card-header							{ background-color: var(--perfectcamp-card-header-background-color); font-weight: 500; }
.page-account .card-content							{ min-height: 120px; }
.page-account .navigation div						{ display: inline-block; width: 100px; text-align: center; height: 30px; font-size: 15px; font-weight: 500; color: var(--perfectcamp-heading-color); }
.page-account .navigation div:hover					{ font-weight: 600; }
.page-account .navigation .selected					{ border-bottom: 4px solid var(--perfectcamp-green3); font-weight: 600; }
.page-account .avatar-container						{ position: relative; display: inline-block; }	
.page-account .pro-badge							{ position: absolute; left: -9px; bottom: -3px; font-size: 31px; color: white; --fa-secondary-opacity: 1; --fa-secondary-color: var(--perfectcamp-green5); filter: drop-shadow(0 0 2px black); z-index: 2; }
.page-account .avatar								{ width: 100px; height: 100px; border-radius: 10px; }
.page-account .gauge 								{ display: none; }
.page-account .gauge-label-text						{ display: none; }
.page-account .col									{ overflow: hidden; text-overflow: ellipsis; }
.page-account .profile								{ animation-delay: 200ms; }
.page-account .profile [class^=col]:first-child		{ min-width: 100px; text-align: center; }
.page-account .subscription							{ animation-delay: 500ms; }
.page-account .subscription [class^=col]:first-child { min-width: 150px; }
.page-account .logins								{ animation-delay: 800ms; }
.page-account .logins table							{ width: 90%; margin: 0 auto; }
.page-account .logins td							{ padding: 10px; height: 70px; width: 50%; }
.page-account .logins .account						{ transition-duration: 500ms; cursor: pointer; color: var(--perfectcamp-gray2); border-radius: 26px; height: 100%; border: 4px solid var(--perfectcamp-gray1); position: relative; text-align: center; font-size: 36px; line-height: 62px; box-sizing: border-box; }
.page-account .logins .facebook i					{ margin-top: 13px; margin-left: -7px; }
.page-account .logins .google i						{ margin-top: 13px; margin-left: -16px; }
.page-account .logins .twitter i					{ margin-top: 13px; margin-left: -15px; }
.page-account .logins .email i						{ margin-top: 13px; margin-left: 1px; }
.page-account .logins .active						{ border-color: var(--perfectcamp-green5) !important; color: var(--perfectcamp-gray4) !important; }
.page-account .logins .account:hover				{ color: var(--perfectcamp-gray4); border-color: var(--perfectcamp-gray4); }
.page-account .logins .card-content					{ min-height: 186px; }
.page-account .tags-of-interest .earn-points		{ position: absolute; right: 15px; }
.page-account .tags-of-interest .earn-points .points	{ color: var(--perfectcamp-green5); font-size: 18px; font-weight: bold; }
.page-account .tags-of-interest .chip-media			{ color: var(--perfectcamp-textcolor); }
.page-account .tags-of-interest .card-content		{ min-height: 138px; }
.page-account .tags-of-interest .chip-label			{ margin-left: 0; }
.page-account .tags-of-interest .example			{ overflow: hidden; white-space: nowrap; }
.page-account .tags-of-interest .example .chip 		{ visibility: hidden; }
.page-account .tags-of-interest .example .cursor	{ visibility: hidden; position: absolute; z-index: 3; font-size: 22px; color: white; opacity: 1; filter: drop-shadow(1px 1px 1px var(--perfectcamp-gray6)); }
.page-account .tags-of-interest .example .cursor .fa-hand-pointer	{ filter: drop-shadow(1px 1px 2px var(--perfectcamp-gray7)); }
.page-account .promo								{ background-color: var(--perfectcamp-yellow); font-size: 12px; padding: 5px 15px; position: absolute; bottom: 0; left: 0; width: 100%; box-sizing: border-box; }

.page-campground-overview .navbar .left .icon					{ margin-right: 10px; }
.page-campground-overview .container							{ max-width: 1230px; margin: 0 auto; }
.page-campground-overview .navigation							{ margin-bottom: 20px; }
.page-campground-overview .navigation .icon						{ margin: 0 5px; }
.page-campground-overview .insert-information-container-here	{ margin-top: 20px; }
.page-campground-overview .information							{ list-style-type: none; padding-left: 0; margin-top: 0; }
.page-campground-overview .information .icon					{ margin-right: 6px; font-size: 20px; color: var(--perfectcamp-green5); }
.page-campground-overview .information li						{ padding: 5px 0; }
.page-campground-overview .button-reserve						{ margin-bottom: 20px; background-color: var(--perfectcamp-blue); }
.page-campground-overview h2									{ font-size: 18px; font-weight: bold; margin-top: 40px; }
.page-campground-overview .campground-image						{ height: 60vh; background-repeat: no-repeat; background-size: cover; background-position: center; }
.page-campground-overview .alerts								{ position: absolute; background-color: var(--perfectcamp-yellow); padding: 8px 15px; font-size: 13px; box-shadow: 1px 1px 3px black; 
																	width: 100%; overflow: hidden; max-height: 45px; box-sizing: border-box; z-index: 1; }
.page-campground-overview .alerts .alert-header					{ font-size: 16px; font-weight: bold; color: var(--perfectcamp-gray7); padding: 5px 0 10px 0; cursor: pointer; }
.page-campground-overview .alerts .footer						{ margin-top: 1em; text-align: center; }
.page-campground-overview .alerts .hide 						{ cursor: pointer; font-weight: bold; padding: 10px 0; text-align: center; }
.page-campground-overview .alerts .hide .button					{ display: inline-block; --f7-button-bg-color: rgba(255,255,255,.4); }
.page-campground-overview #campgroundOverviewMap				{ width: 100%; height: 200px; filter: drop-shadow(2px 3px 8px black); }
.page-campground-overview #availabilityMap						{ width: 100%; height: 600px; max-height: 70vh; margin: 0; position: relative; }
.page-campground-overview #availabilityMap .legend				{ position: absolute; bottom: 20px; right: 10px; z-index: 1; background-color: white; padding: 10px; border-radius: 5px; font-size: 14px; font-weight: bold; }
.page-campground-overview #availabilityMap .legend .color		{ background-color: var(--perfectcamp-blue); border: 2px solid black; width: 40px; display: inline-block; height: 15px; vertical-align: middle;     margin-right: 8px; }
.page-campground-overview .text-wrapper							{ float: right; width: 20px; height: 40px; }
.page-campground-overview .low-temp								{ color: var(--perfectcamp-gray3); }
.page-campground-overview .cancellations-card					{ margin: 20px 0 0 0; }
.page-campground-overview .cancellations-card h2				{ margin-top: 0; }
.page-campground-overview .cancellations-card td:first-child	{ font-weight: bold; }
.page-campground-overview .cancellations-card .button-subscribe	{ display: inline-block; margin-top: 1em; }
.page-campground-overview .reviews .profile-pic					{ float: left; width: 40px; height: 40px; border-radius: 20px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.page-campground-overview .reviews .username-div				{ color: var(--perfectcamp-gray4); font-size: 13px; }
.page-campground-overview .reviews .indent 						{ margin-left: 47px; }
.page-campground-overview .reviews .parent						{ margin-top: 25px; }
.page-campground-overview .reviews .stars .filled				{ color: var(--perfectcamp-yellow); filter: drop-shadow(1px 1px 1px var(--perfectcamp-gray6)); }
.page-campground-overview .reviews .stars .empty				{ color: var(--perfectcamp-gray2); }
.page-campground-overview .reviews .cell-report					{ color: var(--perfectcamp-blue); margin-left: 10px; }
.page-campground-overview .reviews .cell-report .bars			{ --fa-secondary-color: var(--perfectcamp-gray3); }
.page-campground-overview .reviews .carrier						{ max-width: 40px; max-height: 16px; margin-left: 6px; vertical-align: -2px; }
.page-campground-overview .reviews .see-more-reviews-container	{ margin-top: 18px; }
.page-campground-overview .reviews .more-reviews-container		{ display: none; }

.page-campground-overview .weather-card							{ margin: 10px 0 20px; text-align: center; padding: 13px; }
.page-campground-overview .weather-card .fa-fw					{ font-size: 22px; width: 29px; }
.page-campground-overview .forecast-image						{ width: 100%; margin: 10px 0; cursor: pointer; } 
.page-campground-overview .information-container .profile-pic	{ width: 40px; height: 40px; border-radius: 20px; margin-top: -9px; float: left; }
.page-campground-overview .information-container .username		{ text-align: right; }


.page-campground-overview .scrolling-container											{ position: relative; width: 100%; margin-top: 5px; }
.page-campground-overview .scrolling-container .scrolling-wrapper						{ width: 100%; box-sizing: border-box; height: 100%; overflow-x: scroll; padding: 0 4px; overflow-y: hidden; white-space: nowrap; -webkit-overflow-scrolling: touch; position: relative; scroll-behavior: smooth; }
.page-campground-overview .scrolling-container .scrolling-wrapper::-webkit-scrollbar 	{ display: none; }
.page-campground-overview .scrolling-container .scrolling-wrapper .photo				{ height: 200px; margin-top: 8px; margin-left: 4px; border-radius: 6px; cursor: pointer; box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12); }
.page-campground-overview .scrolling-container .scrolling-wrapper .photo-wrapper		{ display: inline-block; }
.page-campground-overview .scrolling-container .scrolling-wrapper .attributes 			{ position: absolute; bottom: 20px; left: 20px; }
.page-campground-overview .scrolling-container .scrolling-wrapper .attributes img		{ width: 30px; height: 30px; margin-right: 4px; }
.page-campground-overview .scrolling-container .scroll-arrow							{ display: none; opacity: 0; pointer-events: none; position: absolute; font-size: 40px; color: rgba(255,255,255,.7); filter: drop-shadow(0 0 3px gray); top: 50%; margin-top: -30px; transition-duration: .4s; z-index: 2; }
.page-campground-overview .scrolling-container .scroll-arrow:hover						{ color: rgba(255,255,255,1); filter: drop-shadow(0 0 3px black); }	
.page-campground-overview .scrolling-container .scroll-left								{ left: 10px; }
.page-campground-overview .scrolling-container .scroll-right							{ right: 5px; }
.page-campground-overview .scrolling-container .fadeout									{ opacity: 0; position: absolute; z-index: 1; width: 30px; height: 100%; transition-duration: 1s; pointer-events: none; }
.page-campground-overview .scrolling-container .fadeout-left							{ left: 0;  background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0)); }
.page-campground-overview .scrolling-container .fadeout-right							{ right: 0; background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1)); }
.page-campground-overview .scrolling-container .visible									{ opacity: 1; pointer-events: all; cursor: pointer; }

.page-campground-overview .availability-map-container .days-wrapper .day				{ display: inline-block; width: 38px; font-size: 13px; font-weight: bold; text-align: center; border-radius: 6px; border: 1px solid var(--perfectcamp-gray2); cursor: pointer; overflow: hidden; }
.page-campground-overview .availability-map-container .days-wrapper .day.selected		{ border-color: var(--perfectcamp-blue); }
.page-campground-overview .availability-map-container .days-wrapper .day div			{ background-color: var(--perfectcamp-gray1); font-size: 10px; font-weight: normal; line-height: 1.1em; padding: 3px 0; border: none; }
.page-campground-overview .availability-map-container .days-wrapper .day.weekend div	{ background-color: var(--perfectcamp-gray2); }
.page-campground-overview .availability-map-container .days-wrapper .day.selected div	{ background-color: var(--perfectcamp-blue); color: white; }

.page-campground-overview .campgroundOverview											{ margin: 10px 0; }


.page-contact .topics								{ width: 100%; text-align: center; margin-top: 30px; }
.page-contact .topics a								{ color: var(--perfectcamp-green5); }
.page-contact .topic .link							{ display: block; }
.page-contact .topic								{ height: 139px; font-size: 14px; }
.page-contact .topic .icon							{ font-size: 62px; color: var(--perfectcamp-gray3); margin-bottom: 10px; --fa-secondary-color: var(--perfectcamp-gray3); --fa-secondary-opacity: .3; }

.page-contact-add-destination .points				{ font-weight: bold; color: var(--perfectcamp-green5); }
.page-contact-add-destination .button				{ width: 100%; margin: 10px 0; background-color: var(--perfectcamp-gray2); color: var(--perfectcamp-text-color); }
.page-contact-add-destination .icon					{ height: 18px; margin-right: 5px; vertical-align: -5px; }

.page-contact-add-dispersed-campsite									{ --f7-checkbox-inactive-color: var(--perfectcamp-gray2); }
.page-contact-add-dispersed-campsite .upload-icon						{ margin-top: calc(24% - .5em); }
.page-contact-add-dispersed-campsite #dispersedMap						{ width: 100%; height: 400px; margin-bottom: 20px; }				
.page-contact-add-dispersed-campsite .points							{ color: var(--perfectcamp-green5); font-weight: bold; }
.page-contact-add-dispersed-campsite .step2								{ display: none; }
.page-contact-add-dispersed-campsite .uploaded-photo					{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.page-contact-add-dispersed-campsite .upload-box						{ margin-top: 20px; padding: 5px; position: relative; width: 100%; height: 70vw; max-width: 400px; max-height: 250px; cursor: pointer; border-radius: 10px; box-sizing: border-box; }
.page-contact-add-dispersed-campsite .upload-box > div					{ box-sizing: border-box; font-size: 61px; text-align: center; border: 3px dashed var(--perfectcamp-green5); color: var(--perfectcamp-green5); height: 100%; border-radius: 11px; }
.page-contact-add-dispersed-campsite .form-upload						{ height: 100%; }
.page-contact-add-dispersed-campsite .form-upload.is-dragover			{ background-color: var(--perfectcamp-green1); }
.page-contact-add-dispersed-campsite .file-container					{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.page-contact-add-dispersed-campsite .file-container label 				{ color: var(--perfectcamp-green5); cursor: pointer; font-size: 19px; font-weight: 600; display: block; padding-top: calc(36% - .5em); padding-bottom: calc(26% - .5em); }
.page-contact-add-dispersed-campsite #uploadFile						{ display: none; }
.page-contact-add-dispersed-campsite .after-upload						{ max-width: 400px; width: 100%; margin-bottom: 10em; }
.page-contact-add-dispersed-campsite .after-upload .editor-buttons		{ float: right; }
.page-contact-add-dispersed-campsite .after-upload .uploaded-photo		{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.page-contact-add-dispersed-campsite .after-upload .slide-down			{ display: none; width: 100%; }
.page-contact-add-dispersed-campsite .after-upload .photo-description	{ min-height: 150px !important; outline: 0px solid transparent; }
.page-contact-add-dispersed-campsite .after-upload .button-submit		{ width: 100%; max-width: 400px; margin-top: 20px; }
.page-contact-add-dispersed-campsite .after-upload .input-label			{ color: var(--perfectcamp-gray4); }
.page-contact-add-dispersed-campsite .after-upload .date-taken-label	{ margin-top: 20px; }
.page-contact-add-dispersed-campsite .after-upload .input-outline-box	{ cursor: text; width: 100%; max-width: 400px; padding: 10px; border: 2px solid var(--perfectcamp-gray2); border-radius: 5px; box-sizing: border-box; margin-bottom: 20px; min-height: 48px; }
.page-contact-add-dispersed-campsite .after-upload .input-outline-box.highlight	{ border-color: var(--perfectcamp-blue); }
.page-contact-add-dispersed-campsite .after-upload .input-outline-box:focus	{ border-color: var(--perfectcamp-blue); }
.page-contact-add-dispersed-campsite .after-upload .checkbox			{ margin-right: 5px; }
.page-contact-add-dispersed-campsite .after-upload .rights				{ vertical-align: -2px; }
.page-contact-add-dispersed-campsite .after-upload .step3				{ margin: 20px 0; }
.page-contact-add-dispersed-campsite .after-upload .attributes			{ margin-top: 10px; }	
.page-contact-add-dispersed-campsite .after-upload .attributes img 		{ width: 27px; margin-right: 9px; border: 4px solid rgba(0,0,0,0); border-radius: 7px; padding: 2px; cursor: pointer; transition-duration: .5s; }
.page-contact-add-dispersed-campsite .after-upload .attributes img.highlight 	{ border-color: var(--perfectcamp-gray2); }
.page-contact-add-dispersed-campsite .after-upload .attributes img.active		{ border-color: var(--perfectcamp-blue); }
.page-contact-add-dispersed-campsite .lnglat							{ display: none; }
.page-contact-add-dispersed-campsite .footer							{ color: var(--perfectcamp-gray4); font-size: 12px; }

.page-contact-add-marker										{ --f7-checkbox-inactive-color: var(--perfectcamp-gray2); }
.page-contact-add-marker .upload-icon							{ margin-top: calc(24% - .5em); }
.page-contact-add-marker #markerMap								{ width: 100%; height: 400px; margin-bottom: 20px; }				
.page-contact-add-marker .points								{ color: var(--perfectcamp-green5); font-weight: bold; }
.page-contact-add-marker .step2									{ display: none; }
.page-contact-add-marker .uploaded-photo						{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.page-contact-add-marker .upload-box							{ margin-top: 20px; padding: 5px; position: relative; width: 100%; height: 70vw; max-width: 400px; max-height: 250px; cursor: pointer; border-radius: 10px; box-sizing: border-box; }
.page-contact-add-marker .upload-box > div						{ box-sizing: border-box; font-size: 61px; text-align: center; border: 3px dashed var(--perfectcamp-green5); color: var(--perfectcamp-green5); height: 100%; border-radius: 11px; }
.page-contact-add-marker .form-upload							{ height: 100%; }
.page-contact-add-marker .form-upload.is-dragover				{ background-color: var(--perfectcamp-green1); }
.page-contact-add-marker .file-container						{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.page-contact-add-marker .file-container label 					{ color: var(--perfectcamp-green5); cursor: pointer; font-size: 19px; font-weight: 600; display: block; padding-top: calc(36% - .5em); padding-bottom: calc(26% - .5em); }
.page-contact-add-marker #uploadFile							{ display: none; }
.page-contact-add-marker .after-upload							{ max-width: 400px; width: 100%; margin-bottom: 10em; }
.page-contact-add-marker .after-upload .checkbox-agree			{ margin-bottom: 20px; }
.page-contact-add-marker .after-upload .editor-buttons			{ float: right; }
.page-contact-add-marker .after-upload .uploaded-photo			{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.page-contact-add-marker .after-upload .slide-down				{ display: none; width: 100%; }
.page-contact-add-marker .after-upload .photo-description		{ min-height: 72px !important; outline: 0px solid transparent; }
.page-contact-add-marker .after-upload .button-submit			{ width: 100%; max-width: 400px; margin-top: 20px; }
.page-contact-add-marker .after-upload .input-label				{ color: var(--perfectcamp-gray4); }
.page-contact-add-marker .after-upload .date-taken-label		{ margin-top: 20px; }
.page-contact-add-marker .after-upload .input-outline-box		{ cursor: text; width: 100%; max-width: 400px; padding: 10px; border: 2px solid var(--perfectcamp-gray2); border-radius: 5px; box-sizing: border-box; margin-bottom: 20px; min-height: 48px; }
.page-contact-add-marker .after-upload .input-outline-box.highlight	{ border-color: var(--perfectcamp-blue); }
.page-contact-add-marker .after-upload .input-outline-box:focus	{ border-color: var(--perfectcamp-blue); }
.page-contact-add-marker .after-upload .checkbox				{ margin-right: 5px; }
.page-contact-add-marker .after-upload .rights					{ vertical-align: -4px; }
.page-contact-add-marker .after-upload .step3					{ margin: 20px 0; }
.page-contact-add-marker .lnglat								{ display: none; }
.page-contact-add-marker .footer								{ color: var(--perfectcamp-gray3); font-size: 12px; }
.page-contact-add-marker .point 								{ color: var(--perfectcamp-green5); font-weight: 600; width: 30px; text-align: right; }
.page-contact-add-marker .marker-properties						{ margin-top: 40px; }
.page-contact-add-marker .marker-property						{ margin-bottom: 10px; }
.page-contact-add-marker .marker-property:first-child			{ margin-top: 20px; }
.page-contact-add-marker .marker-property img					{ width: 27px; margin-top: 3px; }
.page-contact-add-marker .marker-property > div:first-child		{ text-align: right; font-size: 16px; }
.page-contact-add-marker .marker-property .icon					{ margin-right: 5px; margin-top: 8px; }
.page-contact-add-marker .marker-property .helper				{ font-size: 12px; color: var(--perfectcamp-gray3); }
.page-contact-add-marker input[type=text] 						{ width: 100%; padding: 5px; border: 2px solid var(--perfectcamp-gray2); border-radius: 4px; }
.page-contact-add-marker .checkbox								{ margin-top: 5px; }
.page-contact-add-marker .button-update							{ margin-top: 40px; }

.page-contact-advertise								{ --f7-list-item-title-white-space: wrap; }
.page-contact-advertise .example1					{ width: 100%; max-width: 640px; }
.page-contact-advertise .item-link					{ color: var(--perfectcamp-green5); }
.page-contact-advertise .button-advertise			{ background-color: var(--perfectcamp-green5); margin-bottom: 50px;  }


.page-contact-bug .navbar							{ color: var(--perfectcamp-text-color); }
.page-contact-bug .navbar a							{ color: var(--perfectcamp-text-color); }
.page-contact-bug .step								{ font-size: 17px; font-weight: bold; }
.page-contact-bug .button-buglist					{ width: 200px; }
.page-contact-bug .button-buglist .icon				{ font-size: 18px; font-size: 18px; margin-right: 5px; vertical-align: -4px; }
.page-contact-bug .checkbox-confirm					{ margin-top: 40px; }
.page-contact-bug .checkbox							{ margin-right: 6px; --f7-checkbox-size: 20px; }
.page-contact-bug .videos							{ display: none; padding: 1px 0; }
.page-contact-bug .step2							{ display: none; padding: 1px 0; }


.page-create-alert									{ background: transparent; color: var(--perfectcamp-gray4); --f7-searchbar-in-page-content-margin: 0; }
.page-create-alert .description						{ padding: 22px; font-size: 15px; }
.page-create-alert .examples						{ margin: 21px 30px 24px 22px; }
.page-create-alert .example							{ margin-bottom: 14px; border-collapse: collapse; font-size: 15px; }
.page-create-alert .example1						{ animation-delay: 200ms; }
.page-create-alert .example2						{ animation-delay: 400ms; }
.page-create-alert .example3						{ animation-delay: 600ms; }
.page-create-alert .whistle							{ background-color: rgba(164,210,0,.2); text-align: center; width: 50px; }
.page-create-alert .text							{ font-style: italic; background-color: rgba(255, 255, 255, .8); padding: 8px; }
.page-create-alert .button-container				{ margin: 35px auto 15px auto; width: 200px; }
.page-create-alert .go-pro							{ text-align: center; color: var(--perfectcamp-gray6); font-weight: 600; text-shadow: 0 0 5px white, 0 0 5px white; margin: 5px -22px 0 -22px; background-color: rgba(255,255,255,.5); padding: 5px 0; }
.page-create-alert .list							{ margin: 0; display: inline-block; }
.page-create-alert .list ul							{ background-color: transparent; }
.page-create-alert .step-title						{ font-size: 18px; margin-bottom: 25px; }
.page-create-alert .step-body						{ font-size: 18px; }
.page-create-alert .step-body td					{ padding-bottom: 30px; }
.page-create-alert .step-body td:first-child 		{ vertical-align: top; padding-right: 10px; }
.page-create-alert .choose-campgrounds-container	{ display: none; margin-top: 20px; max-width: 100%; }
.page-create-alert .button-prev-next				{ margin-top: 20px; }
.page-create-alert .button-prev						{ background-color: rgba(255,255,255,.5); text-shadow: 0 0 4px white, 0 0 4px white; }
.page-create-alert .button-prev .icon				{ margin-right: 15px; filter: drop-shadow(0 0 4px white); }
.page-create-alert .button-next .icon				{ margin-left: 15px; }
.page-create-alert .proximity-container				{ display: none; }
.page-create-alert .proximity-container .item-input-error-message { display: none; }
.page-create-alert .proximity-container .list		{ margin: 0; display: inline-block; max-width: 105px; }
.page-create-alert .proximity-container li			{ padding-left: 0; }
.page-create-alert .proximity-container .item-inner	{ padding-right: 0; }
.page-create-alert .proximity-container span		{ vertical-align: -29px; padding: 3px; }
.page-create-alert .nights							{ margin: 0; max-width: 135px; }
.page-create-alert input[name=Nights]				{ font-size: 30px; color: var(--perfectcamp-gray4); }
.page-create-alert .specific-date-container			{ display: none; }
.page-create-alert .date-range-container			{ display: none; }
.page-create-alert .date-range						{ margin-bottom: 10px; }
.page-create-alert .day-of-week-container			{ display: none; }
.page-create-alert .days-of-week					{ margin-top: 10px; }
.page-create-alert .alert							{ font-size: 14px; font-weight: 600; margin-top: 5px; }
.page-create-alert .tip								{ margin: 30px 0; padding: 20px; background-color: var(--perfectcamp-green1); font-size: 14px; border-radius: 10px; }
.page-create-alert .campground-searchbar 			{ border: 2px solid lightgray; padding: 10px; border-radius: 8px; }
.page-create-alert #campground-dropdown				{ width: 100%; padding-top: 10px; padding-bottom: 10px; border: 2px solid lightgray; border-radius: 6px; font-size: 17px; }
.page-create-alert .autocomplete-dropdown .list		{ width: 100%; }
.page-create-alert .autocomplete-dropdown .item-content	{ width: calc(100% - 20px); }
.page-create-alert #campground-dropdown::placeholder	{ color: lightgray; opacity: 1; }

.page-discussion .chip								{ pointer-events: none; }
.page-discussion .actions .reply					{ pointer-events: none; }
.page-discussion .chip[data-tagid="3486"]			{ pointer-events: all; cursor: pointer; }
.page-discussion .container 						{ padding-left: 10px; padding-right: 10px; }

.page-discussion-content .parent					{ border-bottom: none !important; }



.page-discussions .button-add-mobile				{ font-size: 28px; cursor: pointer; filter: drop-shadow(2px 2px 4px rgba(0,0,0,.5)); z-index: 10; position: fixed; right: 10px; bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom) + 17px); }
.page-discussions .button-add-mobile .circle		{ color: var(--perfectcamp-green5); }
.page-discussions .button-add-mobile .comment-lines	{ color: white; }

.page-discussions .discussions						{ padding-left: 10px; padding-right: 10px; max-width: 1600px; }
.page-discussions .discussions-content				{ padding-bottom: 50px; }
.page-discussions .page-content						{ overflow-y: scroll !important; }
.page-discussions .left-nav							{ position: absolute; display: none; left: 0; padding: 10px; overflow: hidden; width: 250px; box-sizing: border-box; }
.page-discussions .photo[data-fullsize]				{ cursor: pointer; }
.page-discussions .vimeo	 						{ cursor: pointer; }
.page-discussions .groups							{ height: 50px; margin-bottom: 5px; }
.page-discussions .groups .label					{ height: 50px; display: inline-block; font-weight: bold; font-size: 16px; margin-right: 5px; }
.page-discussions .groups .group					{ position: relative; height: 40px; line-height: 40px; cursor: pointer; padding: 0 17px 0 72px; background-image: linear-gradient(#F5A960, #9D5B26); border-radius: 25px; display: inline-block; color: white; font-size: 14px; font-weight: bold; text-shadow: 0 0 3px black; }
.page-discussions .groups .group img				{ max-height: 50px; position: absolute; left: -5px; top: -5px; transition-duration: .2s; cursor: pointer; }
.page-discussions .groups .group img:hover			{ transform-origin: center; transform: scale(1.1); }

.page-discussions .common-tags-container										{ position: relative; width: 100%; height: 39px; margin-left: 0; margin-top: 5px; }
.page-discussions .common-tags-container .scrolling-wrapper						{ width: 100%; box-sizing: border-box; height: 100%; overflow-x: scroll; padding: 0 4px; overflow-y: hidden; white-space: nowrap; -webkit-overflow-scrolling: touch; position: relative; scroll-behavior: smooth; }
.page-discussions .common-tags-container .scrolling-wrapper::-webkit-scrollbar 	{ display: none; }
.page-discussions .common-tags-container .scroll-arrow							{ display: none; opacity: 0; pointer-events: none; position: absolute; font-size: 34px; color: rgba(255,255,255,.7); filter: drop-shadow(0 0 3px black); top: 50%; margin-top: -26px; transition-duration: .4s; z-index: 2; }
.page-discussions .common-tags-container .scroll-arrow:hover					{ color: rgba(255,255,255,1); filter: drop-shadow(0 0 2px black); }	
.page-discussions .common-tags-container .scroll-left							{ left: 0; }
.page-discussions .common-tags-container .scroll-right							{ right: 0; }
.page-discussions .common-tags-container .fadeout								{ opacity: 0; position: absolute; pointer-events: none; z-index: 1; width: 30px; height: 100%; transition-duration: .3s; }
.page-discussions .common-tags-container .fadeout-left							{ left: 0;  background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,0)); }
.page-discussions .common-tags-container .fadeout-right							{ right: 0; background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1), rgba(255,255,255,1)); }
.page-discussions .common-tags-container .visible								{ opacity: 1; pointer-events: all; cursor: pointer; }
.page-discussions .common-tags													{ white-space: nowrap; overflow: hidden; }
.page-discussions .common-tags .chip											{ cursor: pointer; margin-right: 4px; transition-duration: 300ms; color: var(--perfectcamp-text-color); }
.page-discussions .common-tags .chip-image										{ height: 24px; }
.page-discussions .left-nav .chip												{ position: relative; }
.page-discussions .common-tags .chip-label										{ margin-left: -3px; }
.page-discussions .left-nav .chip-label											{ margin-left: 3px; }
.page-discussions .common-tags .chip[data-userid] .chip-label 					{ margin-left: 4px; }
.page-discussions .common-tags .chip-media,
.page-discussions .left-nav .tags-of-interest .chip-media						{ color: var(--perfectcamp-textcolor); font-size: 15px; }
.page-discussions .left-nav .tags-of-interest .chip								{ background-color: unset; }
.page-discussions .left-nav .tags-of-interest .chip-label						{ font-size: 15px; }
.page-discussions .left-nav .tags-of-interest .chip:hover						{ background-color: var(--f7-chip-bg-color); }
.page-discussions .left-nav .tags-of-interest .chip.new							{ background-color: var(--f7-chip-bg-color); }
.page-discussions .left-nav .tags-of-interest a 								{ display: block; cursor: pointer; }
.page-discussions .left-nav .setup-tags .button									{ margin-top: 10px; }
.page-discussions .left-nav .chip .new											{ position: absolute; right: -13px; background-color: var(--perfectcamp-blue); width: 10px; height: 10px; border-radius: 5px; }

.page-dispersed-campsite .navbar .right						{ padding-right: 16px; font-size: 29px; color: var(--perfectcamp-gray4); }
.page-dispersed-campsite .swiper-container 					{ position: relative; }
.page-dispersed-campsite .swiper-slide 						{ max-height: 600px; height: 74vw; background-position: center; background-size: cover; }
.page-dispersed-campsite .swiper-pagination					{ position: relative; }
.page-dispersed-campsite .price								{ position: absolute; left: 0; top: 0; z-index: 10; background-color: var(--perfectcamp-green5); width: 15vw; height: 10vw; line-height: 10vw; text-align: center; font-size: 6vw; text-shadow: 0 0 4px black; font-weight: bold; color: white; }
.page-dispersed-campsite .rating-bar						{ position: absolute; top: 0; z-index: 9; width: 100%; height: 10vw; background-color: rgba(0,0,0,.3); }
.page-dispersed-campsite .attributes						{ position: absolute; left: 15px; bottom: 6px; z-index: 10; }
.page-dispersed-campsite .attribute-icon					{ width: 7vw; max-width: 50px; margin-right: 6px; }	
.page-dispersed-campsite .rating-stars						{ position: absolute; top: 5px; left: 15vw; z-index: 10; margin-left: 10px; }
.page-dispersed-campsite .rating-stars .stars				{ font-size: 5vw; display: inline-block; color: #ddc920; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; }
.page-dispersed-campsite .rating-stars .rating-number		{ font-size: 5.8vw; display: inline-block; font-weight: bold; color: white; text-shadow: 0 0 5px black, 0 0 3px black; vertical-align: -3px; }
.page-dispersed-campsite .discussions .profile-pic			{ float: left; width: 40px; height: 40px; border-radius: 20px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.page-dispersed-campsite .discussions .indent 				{ margin-left: 47px; }
.page-dispersed-campsite .discussions .username				{ color: var(--perfectcamp-gray3); }
.page-dispersed-campsite .timeSince							{ color: var(--perfectcamp-gray3); }
.page-dispersed-campsite .button-add-comment				{ margin-bottom: 20px; max-width: 200px; }
.page-dispersed-campsite .button-add-comment .icon			{ margin-right: 7px; font-size: 22px; vertical-align: -6px; }

.page-explore #map													{ z-index: 0; }
.page-explore #search												{ position: absolute; top: 65px; left: 10px; width: 36px; height: 36px; border: 2px solid silver; border-radius: 5px; color: var(--perfectcamp-white-black-foreground); background-color: var(--perfectcamp-white-black-background); font-size: 19px; transition-duration: .1s; transition-timing-function: 'ease-in-out'; overflow: hidden; display: none; cursor: pointer; z-index: 1; }
.page-explore #search .icon											{ position: absolute; left: 9px; top: 5px; color: var(--perfectcamp-white-black-foreground); }
.page-explore #search .clear										{ position: absolute; right: 9px; top: 5px; color: darkgray; opacity: 0; transition-duration: .3s; }
.page-explore #search .clear:hover									{ color: black; }
.page-explore #search input											{ margin: 5px 0 0 37px; width: calc(100% - 70px); font-size: 17px; line-height: 27px; }
.page-explore #search.expanded										{ width: calc(100% - 24px); }
.page-explore #search.showResults									{ height: 357px; }
.page-explore #search ::placeholder									{ color: var(--perfectcamp-gray3); }
.page-explore #search .results										{ padding: 10px; font-size: 14px; }
.page-explore #search .results img									{ width: 15px; transform: translateY(4px)   }
.page-explore #search .result										{ overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 5px; }
.page-explore #search .result.selected								{ background-color: var(--perfectcamp-gray2); border-radius: 4px; }
.page-explore #starlinkFilters										{ position: absolute; right: 80px; display: none; }	
.page-explore #starlinkFilters .box									{ width: 18px; height: 18px; opacity: .4; display: inline-block; border: 3px solid var(--perfectcamp-white-black-background); margin: 3px 3px 0px 4px; }
.page-explore #starlinkFilters .box.active							{ border-color: black; }
.page-explore #starlinkFilters .available							{ background-color: green; }
.page-explore #starlinkFilters .full								{ background-color: yellow; }
.page-explore #starlinkFilters .not-available						{ background-color: red; }
.page-explore #airQualityLegend										{ position: absolute; bottom: calc(var(--f7-safe-area-bottom) + 58px); left: 50%; transform: translateX(-50%); display: none;  }	
.page-explore #airQualityLegend .mapButton td 						{ padding: 0 7px; }
.page-explore #airQualityLegend .box								{ width: 23px; height: 23px; opacity: .9; display: inline-block; margin-top: 3px; }
.page-explore #airQualityLegend .green								{ background-color: #00e400; }
.page-explore #airQualityLegend .yellow								{ background-color: yellow; }
.page-explore #airQualityLegend .orange								{ background-color: orange; }
.page-explore #airQualityLegend .red								{ background-color: red; }
.page-explore #airQualityLegend .purple								{ background-color: purple; }
.page-explore #airQualityLegend .maroon								{ background-color: maroon; }

.page-explore #filters												{ position: absolute; right: 10px; display: none; }
.page-explore #filters .badge 										{ position: absolute; top: -5px; left: -6px; display: none; background-color: var(--perfectcamp-blue); --f7-badge-size: 22px; --f7-badge-font-size: 13px; line-height: var(--f7-badge-size); }
.page-explore #zoomIn												{ position: absolute; right: 10px; display: none; }
.page-explore #zoomOut												{ position: absolute; right: 10px; display: none; }
.page-explore #gps													{ position: absolute; right: 10px; display: none; }
.page-explore #gps .fas												{ color: var(--perfectcamp-blue); }
.page-explore #info													{ position: absolute; left: 10px; display: none; }
.page-explore #info .badge 											{ z-index: 501; position: absolute; top: -5px; right: -6px; background-color: var(--perfectcamp-yellow); --f7-badge-size: 22px; --f7-badge-font-size: 13px; --f7-badge-font-weight: bold; line-height: var(--f7-badge-size); color: var(--perfectcamp-gray7); box-shadow: 1px 1px 4px black; }
.page-explore #layers												{ position: absolute; right: 10px; display: none; }
.page-explore #calendar												{ position: absolute; left: 10px; display: none; }
.page-explore #discussions											{ position: absolute; left: 10px; display: none; }
.page-explore #add-location											{ position: absolute; left: 10px; display: none; }
.page-explore #earn-points											{ position: absolute; left: 10px; display: none; }
.page-explore #media-gallery										{ position: absolute; left: 10px; display: none; }
.page-explore #campground-list	 									{ position: absolute; left: 10px; display: none; }

.page-explore #virtualTourMarker									{ display: none; }
.page-explore a.mapboxgl-ctrl-logo									{ display: none; }
.page-explore canvas												{ outline: none; }
.page-explore .campground-close										{ padding: 0 8px !important; justify-content: center !important; }
.page-explore .campgroundsSwiper									{ position: absolute; bottom: -330px; height: 236px; width: 100%; overflow: visible; z-index: 3; }
.page-explore .campgroundsSwiper .swiper-slide						{ font-size: 14px; color: var(--perfectcamp-gray1); text-shadow: 0 0 3px black, 0 0 10px black, 0 0 4px black; background-size: cover; background-color: var(--perfectcamp-gray3); overflow: hidden; }
.page-explore .campgroundsSwiper .hide-button						{ position: absolute; top: -30px; left: 10px; background-color: var(--perfectcamp-gray2); height: 30px; width: 100px; line-height: 30px; text-align: center; border-top-right-radius: 6px; border-top-left-radius: 6px; box-shadow: 0 -3px 15px grey; font-size: 14px; }
.page-explore .campgroundsSwiper .hide-button .icon					{ margin-right: 5px; }
.page-explore .campgroundPhotosSwiper								{ position: absolute; bottom: -330px; height: 230px; width: 100%; overflow: hidden; z-index: 2;  }
.page-explore .campgroundPhotosSwiper .swiper-slide					{ position: relative; width: 320px; height: 230px; overflow: visible; background-repeat: no-repeat; background-size: cover; background-position: center center; font-size: 30px; color: white; text-align: center; line-height: 180px; text-shadow: 0 0 7px black; box-shadow: 0 -2px 9px 2px rgba(0,0,0,0.3); }
.page-explore .campgroundPhotosSwiper .swiper-slide .seconds		{ position: absolute; right: 5px; bottom: 17px; background-color: black; color: white; font-size: 14px; line-height: 14px; padding: 2px 4px 2px 4px; border-radius: 3px; }
.page-explore .campgroundPhotosSwiper .swiper-button-next,
.page-explore .campgroundPhotosSwiper .swiper-button-prev			{ outline: none; }
.page-explore .campsiteSwiper										{ position: absolute; bottom: -330px; height: 260px; width: 100%; overflow: visible; z-index: 3; }
.page-explore .campsiteSwiper .swiper-button-next,
.page-explore .campsiteSwiper .swiper-button-prev					{ outline: none; }
.page-explore .campsiteSwiper .swiper-wrapper 						{ height: 87%; margin-top: 14px }
.page-explore .campsiteSwiper .swiper-slide 						{ background: #fff; width: calc(100% - 40px); border-radius: 8px; overflow: visible; color: white; text-shadow: 0 0 5px black, 0 0 5px black, 0 0 8px black; box-sizing: border-box; }
.page-explore .campsiteSwiper .swiper-slide-content					{ background-size: cover; background-repeat: no-repeat; background-position: center center; background-color: gray; height: 100%; box-sizing: border-box; padding-right: 41px; }
.page-explore .campsiteSwiper .swiper-slide .iconAttribute 			{ width: 30px; cursor: pointer; }
.page-explore .campsiteSwiper .swiper-slide-content					{ overflow: hidden; }
.page-explore .campsiteSwiper .swiper-slide .post					{ position: absolute; width: 44px; height: 262px; background-color: #512604; top: -36px; left: 54px; text-align: center; border-radius: 4px 4px 0 0; background: rgb(105,74,13); background: linear-gradient(90deg, rgba(81,38,4,1) 2%, rgba(117, 85, 20) 7%, rgba(81,38,4,1) 13%, rgba(81,38,4,1) 92%, rgba(0,0,0,1) 100%); }
.page-explore .campsiteSwiper .swiper-slide .post .campsite-number	{ font-family: 'Delius Unicase', cursive; margin-top: 3px; font-size: 22px; background-color: black; color: transparent; text-shadow: 1px 1px 1px rgba(250, 250, 204, 0.9); background-clip: text; -webkit-background-clip: text; -moz-background-clip: text; }
.page-explore .campsiteSwiper .swiper-slide .sign					{ position: absolute; top: -1px; left: 22px; width: 105px; text-shadow: none; transform-origin: center 4px; animation-fill-mode: forwards; }
.page-explore .campsiteSwiper .swiper-slide .sign img				{ position: absolute; top: 2px; left: 2px; width: 100%; }
.page-explore .campsiteSwiper .swiper-slide .sign .date-from		{ position: absolute; top: 62px; left: 8px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px; }
.page-explore .campsiteSwiper .swiper-slide .sign .date-to			{ position: absolute; top: 62px; left: 54px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px;  }
.page-explore .campsiteSwiper .swiper-slide .attributeIconsWrapper	{ margin: 39px 19px 0 136px; text-align: center; }
.page-explore .campsiteSwiper .swiper-slide .attributeIcons 		{ display: inline-block; min-width: 64px; width: 80%; }
.page-explore .campsiteSwiper .swiper-slide .favorite path			{ stroke-width: 49px; stroke: white; }

.page-explore .campsiteSwiper .gallery 								{ position: absolute; display: inline-block; bottom: 103px; left: 24px;  }
.gallery .gallery-count												{ position: absolute; bottom: -85px; left: 11px; width: 100px; color: white; font-size: 14px; text-shadow: 0 0 5px black, 0 0 5px black, 0 0 8px black; }
.page-explore .campsiteSwiper .gallery .videoPreview				{ position: absolute; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(-5deg); }
.page-explore .campsiteSwiper .gallery .photo						{ position: absolute; top: 4px; left: 5px; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(7deg); }
.page-explore .campsiteSwiper .ratingCol							{ text-align: center; }
.page-explore .campsiteSwiper .rating-stars							{ margin-top: 31px; text-align: left; }
.page-explore .campsiteSwiper .rating-stars .stars					{ font-size: 24px; display: inline-block; color: #ddc920; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; }
.page-explore .campsiteSwiper .rating-stars .rating-number			{ font-size: 27px; display: inline-block; font-weight: bold; color: white; }
.page-explore .campsiteSwiper .ratingCol .table						{ text-align: left; margin-top: 54px; }
.page-explore .campsiteSwiper .ratingCol .table .row:nth-child(3)	{ margin-top: 8px; }
.page-explore .campsiteSwiper .ratingCol .title						{ font-size: 10px; color: rgba(255,255,255,.7); }
.page-explore .campsiteSwiper .ratingCol .value						{ font-size: 21px; line-height: 1em; }
.page-explore .campsiteSwiper .review-wrapper						{ position: relative; height: 43px; margin-top: 16px; }
.page-explore .campsiteSwiper .review								{ position: absolute; width: 100%; top: 0; }
.page-explore .campsiteSwiper .review .subject						{ font-size: 12px; padding-left: 33px; border-radius: 3px; text-align: left; margin-left: 2px; background-color: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%); }
.page-explore .campsiteSwiper .review .avatar						{ width: 40px; height: 40px; border-radius: 20px; position: absolute; left: -10px; top: -2px; border: 1px solid rgba(255,255,255,1); box-sizing: border-box; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); }
.page-explore .campsiteSwiper .review1,
.page-explore .campsiteSwiper .review2,
.page-explore .campsiteSwiper .review3								{ display: none; }
.page-explore .campsiteSwiper .campsiteContent 						{ display: flex; flex-wrap: wrap; }
.page-explore .campsiteSwiper .campsiteContent>.contentBlock 		{ flex-grow: 1; flex-basis: 200px; padding: 4px; height: 200px; margin-bottom: 10px; }
.page-explore .campsiteSwiper .availabilityCol						{ text-align: center; }
.page-explore .campsiteSwiper .availabilityCol .table 				{ display: table; table-layout: fixed; width: 100%; border-spacing: 2px; height: 175px; }
.page-explore .campsiteSwiper .availabilityCol .row 				{ display: table-row; }
.page-explore .campsiteSwiper .availabilityCol .row:first-child 	{ font-size: 10px; color: rgba(255, 255, 255, .5); }
.page-explore .campsiteSwiper .availabilityCol .col 				{ display: table-cell; padding-top: 3px; position: relative; border-radius: 3px; }
.page-explore .campsiteSwiper .availabilityCol .col div 			{ position: absolute; top: -2px; left: 1px; font-size: 9px; color: rgba(255, 255, 255, .4); }
.page-explore .campsiteSwiper .availabilityCol .empty div 			{ color: rgba(255, 255, 255, .2); }
.page-explore .campsiteSwiper .availabilityCol .row:not(:first-child) .col:not(.empty)	{ background-color: rgba(0, 0, 0, .8); }
.page-explore .campsiteSwiper .availabilityCol .col.empty			{ background-color: rgba(0, 0, 0, .2); }
.page-explore .campsiteSwiper .availabilityCol .col.hidden			{ visibility: hidden; }
.page-explore .campsiteSwiper .availabilityCol .navigationPrev,
.page-explore .campsiteSwiper .availabilityCol .navigationNext		{ width: 20px; cursor: pointer; filter: drop-shadow(0 0 2px black) drop-shadow(0 0 1px black); }
.page-explore .campsiteSwiper .availabilityCol .holiday				{ display: inline-block; position: absolute; color: white !important; font-size: 9px !important; top: -4px; right: -1px !important; text-align: right; }
.page-explore .campsiteSwiper .availabilityCol .col .today			{ color: white; }
.page-explore .map-loading											{ z-index: 20; font-size: 13px; background-color: rgba(255, 255, 255, .7); width: 100px; height: 30px; position: absolute; top: 120px; left: 50%; margin-left: -50px; text-align: center; border-radius: 15px; line-height: 30px; }
.page-explore .map-popup-dispersed									{ z-index: 4; font-size: 14px; color: var(--perfectcamp-gray1); text-shadow: 0 0 3px black, 0 0 10px black, 0 0 4px black; background-size: cover; }
.page-explore .map-popup-dispersed .mapboxgl-popup-content			{ width: 322px; height: 236px; box-shadow: 1px 1px 5px rgba(0,0,0,.3); color: var(--perfectcamp-gray1); text-shadow: 0 0 3px black, 0 0 10px black, 0 0 4px black; background-size: cover; border: 7px solid white; overflow: hidden; padding: 0; }
.page-explore .map-popup-dispersed .attributes						{ position: absolute; bottom: 5px; left: 10px; width: 75%; }
.page-explore .map-popup-dispersed .attributes img					{ width: 27px; height: 27px; margin-right: 3px; }
.page-explore .map-popup-dispersed .price							{ position: absolute; left: 0; top: 0; background-color: var(--perfectcamp-green5); width: 64px; height: 40px; line-height: 40px; text-align: center; font-size: 23px; text-shadow: 0 0 4px black; font-weight: bold; }
.page-explore .map-popup-dispersed .content							{ padding: 10px; padding-top: 44px; }
.page-explore .map-popup-dispersed h2								{ cursor: pointer; max-width: 247px; margin-top: 0; font-size: 17px; font-weight: bold; height: 40px; position: absolute; top: 0; line-height: 40px; left: 64px; width: 80%; padding-left: 10px; background-image: linear-gradient(to right, rgba(0,0,0,.5) , rgba(0,0,0,0)); overflow: hidden; }
.page-explore .map-popup-dispersed .stars							{ color: #ddc920; display: inline-block; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; font-size: 18px; }
.page-explore .map-popup-dispersed .rating							{ color: #ddc920; font-size: 18px; font-weight: bold; }	
.page-explore .map-popup-dispersed .footer							{ position: absolute; bottom: 1px; font-size: 9px; animation-delay: 1500ms; opacity: .4; }
.page-explore .map-popup-dispersed .campground-rating				{ margin-bottom: 8px; margin-top: 8px; }
.page-explore .map-popup-dispersed .icon 							{ margin-right: 0; font-size: 27px;  filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); }
.page-explore .map-popup-dispersed .driving 						{ animation-delay: 200ms; position: absolute; top: 11px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.1em; width: 53px; }
.page-explore .map-popup-dispersed .driving .icon					{ margin-bottom: 2px; }
.page-explore .map-popup-dispersed .elevation						{ animation-delay: 400ms; position: absolute; top: 81px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.1em; width: 53px; }
.page-explore .map-popup-dispersed .elevation .icon					{ margin-bottom: 3px; }
.page-explore .map-popup-dispersed .temperature						{ animation-delay: 600ms; position: absolute; top: 143px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.3em; width: 53px; }
.page-explore .map-popup-dispersed .temperature .iconDIV			{ position: absolute; left: 3px; }
.page-explore .map-popup-dispersed .temperature .iconDIV .icon		{ font-size: 30px; }
.page-explore .map-popup-dispersed .temperature .temps 				{ margin-left: 18px; }
.page-explore .map-popup-dispersed .temperature .temps .low 		{ font-weight: normal; }
.page-explore .map-popup-dispersed .signal							{ animation-delay: 800ms; position: absolute; top: 187px; right: 6px; font-size: 12px; text-align: center; font-weight: bold; line-height: 1.3em; width: 53px; }
.page-explore .map-popup-dispersed .signal .no-signal				{ opacity: .4; }

.starlink-sheet-modal .sheet-modal-inner							{ padding: 20px; }
.map-popup-starlink													{ width: 100%; max-width: 400px; min-width: 300px !important; font-size: 16px; color: gray; }
.map-popup-starlink .mapboxgl-popup-content							{ padding-top: 19px; min-width: 300px !important; }
.map-popup-starlink .plus-code										{ color: var(--perfectcamp-gray5); font-size: 17px; font-weight: bold; position: relative; background-color: var(--perfectcamp-gray2); padding: 18px 18px 18px 45px; border-radius: 6px; }
.map-popup-starlink .plus-code .fa-stack							{ position: absolute; top: -2px; left: -13px; font-size: 29px; color: var(--perfectcamp-blue); }
.map-popup-starlink .plus-code .button	 							{ position: absolute; right: 10px; width: 64px; top: 10px; }
.map-popup-starlink .coords											{ margin: 10px; font-size: 13px; color: var(--perfectcamp-gray4); }
.map-popup-starlink .availability									{ margin: 13px 10px 10px 40px; font-size: 14px; }
.map-popup-starlink .icon-container									{ float: left; }
.map-popup-starlink .icon											{ color: var(--perfectcamp-green5); font-size: 27px; vertical-align: -8px; margin-right: 6px; }
.map-popup-starlink .icon.green										{ color: var(--perfectcamp-green5); }
.map-popup-starlink .icon.yellow									{ color: var(--perfectcamp-yellow); }
.map-popup-starlink .icon.red										{ color: var(--perfectcamp-red); }

.page-explore .mapButton 											{ touch-action: none; border-spacing: 0; color: black; min-width: 40px; min-height: 40px; }
.page-explore .mapButton td											{ text-align: center; font-size: 19px; line-height: 19px; border-top: 2px solid silver; border-left: 2px solid silver; border-right: 2px solid silver; padding: 3px; background-color: var(--perfectcamp-white-black-background); border-bottom: none; border-radius: 0; color: var(--perfectcamp-white-black-foreground); }
.page-explore .mapButton td:hover									{ cursor: pointer; }
.page-explore .mapButton tr:first-child td:first-child				{ border-top: 2px solid silver; border-top-left-radius: 6px; border-top-right-radius: 6px; }
.page-explore .mapButton tr:last-child td 							{ border-bottom: 2px solid silver; border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; }
.page-explore .mapboxgl-ctrl-top-right								{ display: none; }
.page-explore .mapboxgl-ctrl-attrib-inner							{ font-size: 11px; }	
.page-explore .mapboxgl-ctrl-geolocate								{ display: none; }
.page-explore .mapboxgl-user-location-dot,
.page-explore .mapboxgl-user-location-dot:before					{ background-color: var(--perfectcamp-blue); }
.page-explore .marker-popup											{ min-width: 200px; z-index: 10; }
.page-explore .marker-popup .marker-name							{ font-weight: bold; font-size: 16px; }
.page-explore .marker-popup .marker-address							{ margin-bottom: 10px; }
.page-explore .marker-popup .earn-points							{ float: right; font-size: 16px; pointer-events: all; color: var(--perfectcamp-text-color); background-color: var(--perfectcamp-gray1); }
.page-explore .marker-popup .earn-points:hover						{ background-color: var(--perfectcamp-gray2); }
.page-explore .marker-popup .marker-div								{ margin: 5px 0; }
.page-explore .marker-popup .marker-div .marker-icon				{ width: 20px; vertical-align: -5px; margin-right: 5px; }
.page-explore .marker-popup .marker-div .price						{ font-size: 15px; font-weight: bold; color: var(--perfectcamp-green5); }
.page-explore .marker-popup .marker-div .per-gallon					{ color: var(--perfectcamp-gray3); font-size: 10px; }
.page-explore .marker-popup .marker-div .icon						{ margin-right: 8px; font-size: 14px; }
.page-explore .marker-popup .marker-div .phone-button				{ margin: 10px 0; background-color: var(--perfectcamp-gray2); color: black; }
.page-explore .marker-popup .directions-button						{ background-color: var(--perfectcamp-blue); margin-top: 15px; }
.page-explore .marker-popup .phone-button .icon,
.page-explore .marker-popup .directions-button .icon				{ margin-right: 10px; font-size: 20px; vertical-align: -5px; }
.page-explore .marker-popup .last-updated							{ margin-top: 10px; color: var(--perfectcamp-gray3); font-size: 11px; }
.page-explore .marker-popup .last-updated .profile-pic				{ display: inline-block; width: 26px; position: relative; }
.page-explore .marker-popup .last-updated .profile-pic img			{ width: 26px; height: 26px; border-radius: 13px; border: 2px solid var(--perfectcamp-white-black-background); box-sizing: border-box; position: absolute; top: -16px; }
.page-explore .marker-popup .last-updated .pro						{ color: var(--perfectcamp-green5); }
.page-explore .page-content											{ overflow: hidden; }
.page-explore .popup-campground-info								{ z-index: 4; font-size: 14px; }
.page-explore .popup-campground-info .mapboxgl-popup-content		{ width: 322px; height: 236px; box-shadow: 1px 1px 5px rgba(0,0,0,.3); color: var(--perfectcamp-gray1); text-shadow: 0 0 3px black, 0 0 10px black, 0 0 4px black; background-size: cover; border: 7px solid white; overflow: hidden; padding: 0; }
.page-explore .popup-campground-info .attributes					{ position: absolute; bottom: 15px; left: 10px; }
.page-explore .popup-marker											{ pointer-events: all; }
.page-explore .popup-wildfires .mapboxgl-popup-content 				{ width: 200px; box-shadow: 1px 1px 5px rgba(0,0,0,.3); border: 7px solid white; overflow: hidden; }
.page-explore .map-popup-mvum .mapboxgl-popup-content h2			{ margin-top: 0; padding-right: 50px; }
.page-explore .map-popup-mvum .mapboxgl-popup-content .miles		{ position: absolute; text-align: center; background-color: var(--perfectcamp-green5); color: white; right: 0; top: 0; padding: 5px; border-top-right-radius: 3px; }
.page-explore .map-popup-mvum .mapboxgl-popup-content .icon			{ font-size: 18px; }
.page-explore .map-popup-mvum .mapboxgl-popup-content .footer		{ font-size: 9px; margin-top: 11px; line-height: 1em; }

.page-explore .virtual-tour-container								{ touch-action: none; position: absolute; display: none; bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom) - 7px); z-index: 3; }
.page-explore .virtual-tour-container .video-header					{ height: 40px; line-height: 42px; padding-left: 14px; font-size: 14px; color: var(--perfectcamp-gray2); background-color: var(--perfectcamp-gray7); border-top-right-radius: 6px; border-top-left-radius: 6px; cursor: grab; }
.page-explore .virtual-tour-container .video-header .campsite		{ display: none; }
.page-explore .virtual-tour-container .video-header .like,
.page-explore .virtual-tour-container .video-header .unlike			{ margin-left: 20px; }
.page-explore .virtual-tour-container .video-header .like .icon		{ color: var(--perfectcamp-gray2); }
.page-explore .virtual-tour-container .video-header .unlike .icon	{ color: var(--perfectcamp-gray2); }
.page-explore .virtual-tour-container .video-header .like-counter	{ margin-left: 0; color: var(--perfectcamp-gray2); }
.page-explore .virtual-tour-container .video-header .icon			{ margin-right: 8px; font-size: 19px; }
.page-explore .virtual-tour-container .video-header .favorite .icon	{ margin-left: 20px; color: var(--perfectcamp-gray7); transition-duration: .2s;  }
.XXXXXpage-explore .virtual-tour-container .video-header .favorite .icon:hover		{ color: var(--perfectcamp-red);  }
.page-explore .virtual-tour-container .video-header .favorite.selected .icon	{ color: var(--perfectcamp-red);  }
.page-explore .virtual-tour-container .video-header .favorite path 	{ stroke-width: 42px; stroke: var(--perfectcamp-gray2); }

.page-explore .virtual-tour-container .close						{ float: right; width: 40px; height: 40px; border-radius: 20px; font-size: 20px; text-align: center; transition-duration: .3s; }
.page-explore .virtual-tour-container .link-close					{ color: var(--perfectcamp-gray1); vertical-align: -3px; }
.page-explore .virtual-tour-container #video-iframe					{ touch-action: none; }

.page-favorites h2													{ margin: 0; line-height: 1em; display: inline-block }
.page-favorites h3													{ margin: 2px 0 0 0; line-height: 1em; display: inline-block }
.page-favorites .days-header										{ top: calc(var(--f7-navbar-height) + var(--f7-safe-area-top)); }
.page-favorites .calendar-month-slider .campground 					{ margin: 10px auto; position: relative; }
.page-favorites .calendar-month-slider .availability-container		{ position: relative; height: unset; top: unset; overflow: visible; width: 100%; }
.page-favorites .calendar-month-slider .campsite-number-container 	{ position: unset; background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,0)); left: 0px; padding-left: 5px; height: 33px; cursor: pointer; }
.page-favorites .calendar-month-slider .campsite-number-container.fixed { width: 44px; position: fixed; }
.page-favorites .calendar-month-slider .campground-container		{ overflow: auto; margin: 0 auto; }
.page-favorites .calendar-month-slider .campground-container h2		{ pointer-events: auto; }
.page-favorites .section-container									{ height: 30px; position: relative; margin-top: 18px; padding: 5px 5px 5px 10px; }
.page-favorites .section											{ position: absolute; width: calc(100% - 15px); pointer-events: none; line-height: 1em; }
.page-favorites .section.fixed										{ position: fixed; line-height: 1em; }
.page-favorites .section .park										{ font-weight: 300; }
.page-favorites .section .menu										{ right: -1px; top: 0; pointer-events: auto; }
.page-favorites .distance											{ margin-top: 4px; line-height: 1em; font-size: 12px; font-weight: 400; font-family: 'Nunito', sans-serif; }
.page-favorites .campground td.highlight							{ background-color: #C0C0C0; color: white; }
.page-favorites .campground td.highlight.available 					{ background-color: var(--perfectcamp-green2); color: white; }
.page-favorites .campground.first .section							{ margin-top: 0; }
.page-favorites .navbar .navigation									{ font-size: 27px; color: white; position: absolute; width: 30px; line-height: var(--f7-navbar-link-line-height, var(--f7-navbar-height)); height: var(--f7-navbar-link-height, var(--f7-navbar-height)); }
.page-favorites .nav-button											{ position: fixed; height: 60px; width: 60px; border-radius: 30px; text-align: center; box-sizing: border-box; font-size: 18px; line-height: 60px;  left: 50%; top: 50%; transition: all .25s ease-in-out; cursor: pointer; }
.page-favorites .nav-button:hover									{ background-color: var(--perfectcamp-gray1); }	
.page-favorites .prev-month-button									{ transform: translate(-546px, -50%); margin-left: -30px; }
.page-favorites .next-month-button									{ transform: translate(530px, -50%); margin-left: -30px; }
.page-favorites	.intro												{ text-align: center; margin: 20px; }
.page-favorites .laptop-video										{ position: relative; }
.page-favorites .laptop-video img									{ width: 100%; }
.page-favorites .laptop-video .vimeo								{ position: absolute; }
.page-favorites .call-to-action										{ text-align: center; margin: 10px 20px 80px 20px; }
.page-favorites .call-to-action .points								{ font-weight: bold; font-size: 22px; color: var(--perfectcamp-green5); }
.page-favorites .call-to-action .button								{ width: 340px; margin: 30px auto; display: block; }


.page-giveaway .page-content						{ overflow-y: scroll !important; }
.page-giveaway .label								{ font-size: 15px; position: absolute; bottom: -46px; left: 0; text-align: center; width: 100%; text-shadow: 0 0 4px black; }
.page-giveaway .background 							{ padding-top: 17px; background-image: url('/images/backgrounds/twitter-background.png'); min-height: 500px; background-repeat: no-repeat; background-size: cover; background-position: center; position: relative; }
.page-giveaway .flipTimer-wrapper					{ width: 100%; text-align: center; z-index: 2; height: 129px; }
.page-giveaway .swiper-container					{ height: 273px; }
.page-giveaway .swiper-pagination					{ bottom: 0; }
.page-giveaway .swiper-pagination-bullet			{ opacity: .3; }
.page-giveaway .swiper-pagination-bullet-active		{ background-color: white; opacity: 1; }
.page-giveaway .swiper-slide						{ position: relative; text-align: center; }
.page-giveaway .video-preview						{ position: absolute; left: 50%; width: 118px; top: 167px; margin-left: -243px; cursor: pointer; }
.page-giveaway .video-preview img					{ border: 2px solid white; width: 100%; }
.page-giveaway .play-icon							{ position: absolute; width: 60px; top: 15px; left: 30px; font-size: 43px; color: rgba(255, 255, 255, .8); }
.page-giveaway .product-desc						{ opacity: 0; position: absolute; top: 0px; text-align: center; box-sizing: border-box; width: 100%; padding: 0 20px; font-size: 27px; font-weight: bold; color: var(--perfectcamp-yellow); text-shadow: 0 0 4px black, 0 0 4px black; }
.page-giveaway .product-wrapper						{ position: relative; margin-top: 6px; }
.page-giveaway .product								{ position: absolute; }


.page-giveaway .product.cancooler					{ top: 20px; max-height: 264px; left: 50%; margin-left: -92px; }
.page-giveaway .product.lantern						{ top: 39px; max-height: 221px; left: 50%; margin-left: -62px; }
.page-giveaway .product.watercooler					{ top: 39px; max-height: 221px; left: 50%; margin-left: -53px; }
.page-giveaway .product.firstaid					{ top: -13px; max-height: 298px; left: 50%; margin-left: -95px; }
.page-giveaway .product.shovel						{ top: 15px; max-height: 298px; left: 50%; margin-left: -95px; }

.page-giveaway .product.luxe-blanket				{ top: -12px; max-height: 264px; left: 50%; margin-left: -92px; }
.page-giveaway .product.drift-pillow				{ top: 39px; max-height: 221px; left: 50%; margin-left: -154px; }
.page-giveaway .product.luxe-pillow					{ top: 39px; max-height: 221px; left: 50%; margin-left: -154px; }
.page-giveaway .product.aspen20-bag					{ top: -42px; max-height: 298px; left: 50%; margin-left: -63px; }
.page-giveaway .product.hammock						{ top: -42px; max-height: 298px; left: 50%; margin-left: -253px; }
.page-giveaway .product.sleeping-pad				{ top: -13px; max-height: 322px; left: 50%; margin-left: -221px; }
.page-giveaway .product.v-seat						{ top: -45px; max-height: 298px; left: 50%; margin-left: -141px; }
.page-giveaway .product.cush-seat					{ top: 28px; max-height: 311px; left: 50%; margin-left: -185px; }

.page-giveaway .product.camp-stove2					{ top: -33px; max-height: 318px; left: 50%; margin-left: -154px; }
.page-giveaway .product.solar-panel5				{ top: -25px; max-height: 320px; left: 50%; margin-left: -160px; }
.page-giveaway .product.headlamp1					{ max-width: 349px; top: -85px; left: 50%; margin-left: -173px; }
.page-giveaway .product.headlamp2					{ max-width: 349px; top: 35px; left: 50%; margin-left: -150px; }
.page-giveaway .product.sunlight1					{ max-width: 212px; top: -44px; left: 50%; margin-left: -176px; }
.page-giveaway .product.sunlight2					{ max-width: 212px; top: 85px; left: 50%; margin-left: -9px; }
.page-giveaway .product.sunlight3					{ max-width: 212px; top: -44px; left: 50%; margin-left: -9px; }
.page-giveaway .product.sunlight4					{ max-width: 212px; top: 85px; left: 50%; margin-left: -176px; }
.page-giveaway .product.sitelight-mini1				{ max-width: 290px; top: -62px; left: 50%; margin-left: -203px; }
.page-giveaway .product.sitelight-mini2				{ max-width: 290px; top: 11px; left: 50%; margin-left: -75px; }

.page-giveaway .desc								{ color: white; font-weight: normal; line-height: 1.1em; text-shadow: 0 0 4px black, 0 0 5px black; }
.page-giveaway .use-marshmallows					{ position: absolute; bottom: 0; width: 100%; height: 107px; }
.page-giveaway .use-marshmallows .row 				{ height: 80px; }
.page-giveaway .use-marshmallows > .desc			{ font-size: 17px; text-align: center; padding: 0 10px; }
.page-giveaway .use-marshmallows .balance			{ padding: 0 10px; font-size: 72px; font-weight: bold; color: white; text-shadow: 0 0 4px black; line-height: 1em; text-align: center; }
.page-giveaway .use-marshmallows .slider .desc		{ margin-top: 15px; }
.page-giveaway .use-marshmallows .range-slider 		{ margin-top: 27px; --f7-range-bar-size: 8px; --f7-range-bar-border-radius: 4px; --f7-range-knob-size: 30px; --f7-range-knob-color: white; --f7-range-bar-active-bg-color: white; --f7-range-bar-bg-color: rgba(255, 255, 255, .5); }
.page-giveaway .use-marshmallows .entered			{ font-size: 72px; font-weight: bold; color: white; text-shadow: 0 0 4px black; line-height: 1em; text-align: center; }
.page-giveaway .use-marshmallows .desc				{ font-size: 13px; margin-top: -2px; }
.page-giveaway .discussions							{ margin: 60px 0; }

.page-home .page-content										{ overflow-y: scroll !important; -ms-overflow-style: none;  scrollbar-width: none; }
.page-home .navbar .title										{ text-shadow: 0 0 5px black; }
.page-home .page-content::-webkit-scrollbar 					{ display: none; }
.page-home .top-photo											{ width: 100%; position: fixed; margin-top: -1px; }
.page-home .main-container										{ max-width: unset; margin: unset; text-align: center; }
.page-home .heading												{ text-align: center; font-weight: bold; font-size: clamp(18px, 2vw, 20px); margin: 31px 0; color: white !important; text-shadow: 0 0 4px black, 0 0 4px black, 0 0 4px black; }
.page-home .heading2											{ color: white !important; }
.page-home .faq .item-title 									{ color: var(--perfectcamp-green5); }
.page-home .testimonials										{ position: relative; visibility: hidden; height: clamp(min(60vw, 50vh), 60vw, min(60vw,70vh)); width: 90%; max-width: 920px; margin: 0 auto; text-align: right; color: white; text-shadow: 0 0 16px black, 0 0 10px black, 0 0 6px black, 0 0 5px black, 0 0 4px black, 0 0 3px black, 0 0 2px black, 0 0 1px black; font-size: clamp(15px, 2.5vw + 4px, 36px); }
.page-home .testimonials .review								{ text-align: left; font-style: italic; position: absolute; top: 20px; }
.page-home .testimonials .review .user							{ font-style: normal; text-align: right; margin: 10px 10px 0 0; color: var(--perfectcamp-gray2); position: relative; line-height: 60px; }
.page-home .testimonials .profile-pic-big						{ vertical-align: -10px; margin-right: 10px; width: 36px; height: 36px; border-radius: 20px; border: 2px solid var(--f7-page-bg-color); }
.page-home .comparison-table									{ border-spacing: 3px; max-width: 960px; display: inline-block; }
.page-home .comparison-table a									{ font-weight: bold; }
.page-home .comparison-table .price								{ font-weight: normal; font-size: 12px; white-space: nowrap; }
.page-home .comparison-table .large-bold						{ font-weight: bold; font-size: 1.5em; }
.page-home .comparison-table .icon								{ float: left; font-size: 41px; position: absolute; left: 16px; top: 10px; }
.page-home .comparison-table .description						{ font-size: 12px; color: var(--perfectcamp-gray5); }
.page-home .comparison-table .check								{ --fa-primary-opacity: 1; --fa-primary-color: white; --fa-secondary-opacity: 1; }
.page-home .comparison-table tr td								{ padding: 15px; background-color: var(--perfectcamp-gray2); text-align: left; }
.page-home .comparison-table tr td:first-child a				{ color: var(--perfectcamp-green7); }
.page-home .comparison-table tr td:not(:first-child)			{ text-align: center; }
.page-home .comparison-table tr td > div:nth-child(2)			{ margin-left: 70px; }
.page-home .comparison-table tr td:nth-child(n+2)				{ width: clamp(60px, 6vw, 90px); }
.page-home .comparison-table tr td:first-child					{ position: relative; }
.page-home .comparison-table tr:first-child						{ vertical-align: top; }
.page-home .comparison-table tr:first-child td					{ font-weight: bold; font-size: clamp(15px, 2vw, 22px); }
.page-home .comparison-table tr:first-child td:first-child 		{ background-color: transparent; color: white; text-shadow: 0 0 4px black, 0 0 4px black, 0 0 4px black; }
.page-home .comparison-table tr:first-child td:nth-child(2)		{ border-top-left-radius: 15px; border-top-right-radius: 15px; }
.page-home .comparison-table tr:first-child td:last-child 		{ border-top-left-radius: 15px; border-top-right-radius: 15px; background-color: var(--perfectcamp-blue); color: white; text-shadow: 0 0 5px black; }
.page-home .comparison-table tr:first-child td:last-child a		{ text-decoration: none; color: white; }
.page-home .comparison-table tr:nth-child(2) td:first-child		{ border-top-left-radius: 15px; }
.page-home .comparison-table tr:not(:first-child) td:first-child	{ background-color: var(--perfectcamp-gray1); }
.page-home .comparison-table tr:not(:first-child) td:last-child { background-color: #C8DFF1; }
.page-home .comparison-table tr:last-child td:first-child 		{ border-bottom-left-radius: 15px; }
.page-home .comparison-table tr:last-child td:last-child 		{ border-bottom-right-radius: 15px; }
.page-home .comparison-table tr:not(:first-child) td:not(:first-child)	{ font-size: 31px; color: var(--perfectcamp-green5); }
.page-home .purchase-button										{ background-color: var(--perfectcamp-blue); width: 300px; margin: 20px auto 40px auto; }
.page-home .purchase-button span								{ position: relative; }
.page-home .purchase-button img									{ position: absolute; width: 38px; height: 38px; top: -12px; left: 6px; }
.page-home .row-footer 											{ margin-top: 20px; margin-bottom: 40px; text-shadow: 0 0 4px black, 0 0 4px black, 0 0 4px black; background-color: transparent !important; }
.page-home .row-footer .container								{ background-color: transparent !important; }
.page-home .row-footer a										{ color: white !important; }
.page-home .row-footer .social									{ filter: drop-shadow(2px 2px 4px rgba(0,0,0,1)); }

.page-join										{ --f7-input-clear-button-color: white; }
.page-join .join-us-container					{ display: inline-block; width: 250px; margin-top: calc(50vh - 270px); background-color: rgba(0, 0, 0, .5); padding: 30px; border-radius: 12px; }
.page-join .join-us-container span				{ position: relative; width: 21px; display: inline-block; }
.page-join .alternate							{ margin-top: 30px; color: white; }
.page-join .alternate a							{ color: white; text-decoration: underline; }
.page-join .icon								{ font-size: 24px; position: absolute; left: -13px; top: -17px; }
.page-join .page-content						{ overflow-y: hidden; }
.page-join .page-content .button 				{ text-transform: initial; text-align: left; padding-left: 18px; margin-bottom: 15px; font-weight: 600; }
.page-join .facebook							{ background-color: #4267b2; }
.page-join .facebook:hover						{ color: white; }
.page-join .google								{ background-color: white; color: black; }
.page-join .google img							{ width: 22px; height: 22px; position: absolute; top: -15px; left: -9px; }
.page-join .twitter								{ background-color: black; color: white; }
.page-join .email								{ background-color: white; color: black; margin-bottom: 0; }
.page-join .email .icon							{ font-size: 18px; left: -9px; top: -13px; }
.page-join .intro								{ margin-bottom: 16px; margin-top: -10px; color: white; }
.page-join .referral,
.page-join .step-email,
.page-join .step-verification,
.page-join .step-password						{ display: none; color: var(--perfectcamp-gray2); --f7-input-outline-border-color: white; }
.page-join h2									{ margin-bottom: 14px; margin-top: 0; font-size: 18px; }
.page-join ul									{ background: transparent; }
.page-join .item-title							{ background: rgba(0,0,0,.5) !important; color: var(--perfectcamp-gray2) !important; }
.page-join .list								{ margin-top: 5px; margin-bottom: 16px; }
.page-join .item-content						{ padding-left: 0; }
.page-join .item-inner							{ padding-right: 0; }
.page-join input								{ color: white !important; }
.page-join #reCaptchaV2JoinEmail				{ margin-bottom: 15px; }

.page-login .sign-in-container					{ display: inline-block; width: 250px; margin-top: calc(50vh - 250px); background-color: rgba(0, 0, 0, .5); padding: 30px; border-radius: 12px; }
.page-login .sign-in-container span				{ position: relative; width: 21px; display: inline-block; }
.page-login .sign-in-email						{ display: none; color: var(--perfectcamp-gray2); --f7-input-outline-border-color: white; }
.page-login .alternate							{ margin-top: 30px; color: white; }
.page-login .alternate a						{ color: white; text-decoration: underline; }
.page-login .icon								{ font-size: 24px; position: absolute; left: -13px; top: -17px; }
.page-login .page-content						{ overflow-y: hidden; }
.page-login .page-content .button 				{ text-transform: initial; text-align: left; padding-left: 18px; margin-bottom: 15px; font-weight: 600; }
.page-login .facebook							{ background-color: #4267b2; }
.page-login .facebook:hover						{ color: white; }
.page-login .google								{ background-color: white; color: black; }
.page-login .google img							{ width: 22px; height: 22px; position: absolute; top: -15px; left: -9px; }
.page-login .twitter							{ background-color: black; color: white; }
.page-login .email								{ background-color: white; color: black; margin-bottom: 0; }
.page-login .email .icon						{ font-size: 18px; left: -9px; top: -13px; }
.page-login #googleSignInButton					{ margin-bottom: 20px; }

.page-message .list										{ margin: 20px 0; }
.page-message .list ul									{ background-color: var(--perfectcamp-gray1); }
.page-message .list .item-title							{ white-space: normal; text-overflow: unset; }
.page-message .list .comments							{ line-height: var(--f7-list-item-after-line-height); }
.page-message .list .item-media							{ min-width: unset; }

/* MDB */
.page-message .marker-icon								{ width: 29px; vertical-align: -7px; margin-right: 5px; }
.page-message .fa-map-location-dot						{ font-size: 19px; margin: 0 8px 0 3px; }
.page-message .fa-wifi									{ font-size: 19px; margin: 0 8px 0 3px; }
.page-message .fa-phone									{ font-size: 19px; margin: 0 10px 0 6px; }
.page-message .fa-clock									{ font-size: 21px; margin: 0 9px 0 4px; }

.page-message .media-thumbnail							{ width: 57px; border-radius: 4px; float: left; margin: 6px 10px 10px 0; }
.page-message .attribute-icon							{ width: 24px; height: 24px; margin-right: 3px; vertical-align: bottom; }
.page-message hr 										{ background-color: var(--perfectcamp-gray2); border: none; height: 1px; }
.page-message .stars 									{ color: var(--perfectcamp-yellow); }
.page-message h1										{ font-size: 20px; }
.page-message .carrier									{ position: relative; }
.page-message .carrier img 								{ position: absolute; max-height: 31px; top: 3px; }
.page-message .carrier.verizon img 						{ max-height: 50px; top: -7px; }
.page-message .bars										{ margin-left: 62px; font-size: 24px; display: inline-block; margin-top: -1px; --fa-primary-color: var(--perfectcamp-blue); --fa-secondary-color: var(--perfectcamp-gray3); }

.page-message .list .attribute-icon						{ width: 24px; height: 24px; margin-left: 5px; }
.page-message .zoom										{ position: absolute; z-index: 1; opacity: 0;  width: 50px; height: 50px; color: var(--perfectcamp-gray2); font-size: 41px; transition-duration: .3s; }
.page-message .zoom:hover								{ opacity: .6; cursor: pointer; }
.page-message .photo									{ box-shadow: var(--f7-elevation-3)!important; cursor: pointer; max-height: 160px; max-width: 160px; border-radius: 3px; }
.page-message .navbar .title .emoji						{ width: 25px; height: 25px; vertical-align: -5px; }
.page-message .navbar .left .link						{ padding: 0 5px 0 20px; color: var(--perfectcamp-text-color); }
.page-message .container								{ padding: 0; }
.page-message .button-back								{ width: 166px; }
.page-message .button-reply,
.page-message .button-delete							{ width: 104px; }
.page-message .profile-pic								{ float: left; width: 40px; height: 40px; border-radius: 20px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.page-message .message-head								{ padding: 15px 20px 10px 20px; background-color: var(--perfectcamp-gray1); border-bottom: 1px solid var(--perfectcamp-gray2); width: 100%; box-sizing: border-box; position: relative; }
.page-message .message-head .message-from-date			{ margin-left: 50px; line-height: 1.4em; }
.page-message .message-head .date						{ color: var(--perfectcamp-gray4); font-size: 13px; }
.page-message .message-head .menu-link					{ position: absolute; right: 10px; top: 20px; font-size: 20px; color: var(--perfectcamp-gray4); width: 30px; height: 30px; text-align: center; border-radius: 15px; line-height: 32px; transition-duration: .3s; cursor: pointer; }
.page-message .message-head .menu-link:hover			{ background-color: var(--perfectcamp-gray2); }
.page-message .message-body								{ padding: 20px; position: relative; }
.page-message .message-body .emoji						{ vertical-align: -4px; width: 19px; height: 19px; margin: 0 1px; }
.page-message .purchase-receipt .subscription-number	{ font-size: 15px; font-weight: bold; padding-bottom: 1em; border-bottom: 1px solid var(--perfectcamp-gray2); }
.page-message .purchase-receipt .price					{ float: right; }
.page-message .purchase-receipt .line-item				{ border-bottom: 1px solid var(--perfectcamp-gray2); padding: 5px; }
.page-message .purchase-receipt .line-item:last-child	{ height: 30px; border-bottom: none; }
.page-message .purchase-receipt .description			{ color: var(--perfectcamp-gray3); font-size: 13px; }
.page-message .purchase-receipt .total					{ font-size: 16px; font-weight: bold; float: right; }
.page-message .button-reply.button-large				{ margin: 0 20px; }
.page-message .vimeo									{ max-width: 500px; position: relative; margin: 15px 0; }
.page-message .vimeo iframe								{ border-radius: 6px; box-shadow: var(--f7-elevation-3)!important; }

.page-messages .button-new-message					{ cursor: pointer; filter: drop-shadow(2px 2px 4px rgba(0,0,0,.5)); z-index: 10; position: fixed; right: 10px; bottom: calc(var(--f7-toolbar-height) + var(--f7-safe-area-bottom) + 17px); }
.page-messages .button-new-message .circle			{ color: var(--perfectcamp-green5); }
.page-messages .button-new-message .envelope		{ color: white; }
.page-messages .container							{ padding: 0; }
.page-messages .content,
.page-messages .swipeout-content					{ padding: 10px; cursor: pointer; }
.page-messages .list								{ margin-top: 0; }
.page-messages .list li								{ height: auto; line-height: unset; border-bottom: 1px solid var(--perfectcamp-gray2); }
.page-messages .list .replies						{ margin-left: 50px; color: var(--perfectcamp-gray4); font-size: 13px; line-height: 30px; }
.page-messages .list .replies .image-stack			{ position: relative; margin-right: 6px; }
.page-messages .list .replies .image-stack img:nth-child(n+2)	{ margin-left: -5px; }
.page-messages .list .replies .profile-pic			{ width: 26px; height: 26px; border-radius: 13px; border: 2px solid var(--perfectcamp-white-black-background); box-sizing: border-box; }
.page-messages .swipeout							{ cursor: pointer; }
.page-messages .messages .message-subject			{ margin-left: 50px; }
.page-messages .messages .message-subject .emoji 	{ vertical-align: -4px; width: 20px; height: 20px; margin: 0 1px; }
.page-messages .messages .message-from-date			{ margin-left: 50px; margin-right: 3em; font-size: 13px; line-height: 1.4em; color: var(--perfectcamp-gray4); }
.page-messages .messages .message-body				{ margin-left: 50px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 14px; }
.page-messages .messages .message-body .emoji 		{ vertical-align: -4px; width: 19px; height: 19px; margin: 0 1px; }
.page-messages .messages .profile-pic				{ float: left; width: 40px; height: 40px; border-radius: 20px; background-position: center; background-repeat: no-repeat; background-size: cover; }
.page-messages .messages .no-messages 				{ font-weight: bold; font-size: 22px; margin-top: 7vh; color: var(--perfectcamp-gray2); text-align: center; }
.page-messages .emoji-popup							{ display: none; }
.page-messages .read-receipt						{ margin-left: 1em; }

.page-notifications .container						{ padding: 0; }
.page-notifications .swipeout-content				{ width: 100%; padding-top: 10px; padding-bottom: 10px; }
.page-notifications .swipeout-content[data-url]		{ cursor: pointer; }	
.page-notifications .list							{ margin-top: 0; }
.page-notifications .simple-list li					{ height: auto; line-height: unset; }
.page-notifications .no-notifications 				{ font-weight: bold; font-size: 22px; margin-top: 7vh; color: var(--perfectcamp-gray2); text-align: center; }
.page-notifications .auto-delete					{ margin: 70px 0; color: var(--perfectcamp-gray3); text-align: center; font-size: 13px; }
.page-notifications .notification-left				{ margin-right: 60px; }
.page-notifications .notification-left .text		{ -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; display: -webkit-box; white-space: normal; }
.page-notifications .notification-left .text strong	{ font-weight: 500; color: var(--perfectcamp-gray7); }
.page-notifications .notification-right				{ float: right; width: 50px; text-align: center; margin-left: 10px; font-size: 12px; color: var(--perfectcamp-gray4); }
.page-notifications .photo							{ border-radius: 6px; width: 50px; height: 50px; background-repeat: no-repeat; background-size: cover; background-position: center; }
.page-notifications .photo.user						{ border-radius: 25px; }
.page-notifications .points							{ color: var(--perfectcamp-green6); font-weight: bold; }
.page-notifications .button-alerts					{ display: inline-block; margin: 10px 0; }

.page-points .page-content							{ overflow-y: scroll !important; }
.page-points .left-col								{ display: none; float: left; width: 250px; box-sizing: border-box; top: 60px; padding: 15px 0 0 15px; }
.page-points .left-col .top-10-marshmallow-users-month	{ margin-top: 20px; top: 40px; }
.page-points .leaderboard-mobile					{ --f7-button-font-size: 16px; margin-bottom: 10px; }
.page-points .leaderboard-mobile a					{ color: var(--perfectcamp-blue); }
.page-points .leaderboard-mobile .icon				{ margin-right: 4px; }
.page-points .discussions .button-add				{ margin-top: 40px; }
.page-points .total									{ color: var(--perfectcamp-green5); font-size: 38px; font-weight: 600; text-align: center; line-height: 1em; margin-bottom: 3px; }
.page-points .label									{ font-weight: 600; text-align: center; line-height: 1em; font-size: 14px; }
.page-points .balance								{ animation-delay: 200ms; }
.page-points .ytd									{ animation-delay: 400ms; }
.page-points .lifetime								{ animation-delay: 600ms; }
.page-points table									{ width: 100%; border-collapse: collapse; }
.page-points td										{ border-bottom: 1px solid var(--perfectcamp-green2); padding: 2px; }
.page-points .points-history						{ border-radius: 10px; background-color: var(--perfectcamp-gray1); border: none; font-size: 14px; }
.page-points .points-history tr:last-child td		{ border-bottom: 0 !important; }
.page-points .points-history td:first-child			{ font-size: 26px; text-shadow: 0 0 1px var(--perfectcamp-green6); padding-right: 5px; }
.page-points .point									{ color: var(--perfectcamp-green5); font-weight: 600; width: 30px; text-align: right; }
.page-points .faq .item-title						{ color: var(--perfectcamp-green5); }
.page-points .earn-points .row						{ width: 100%; }
.page-points .earn-points .point					{ font-size: 20px; width: 60px; position: absolute; right: 17px; top: 50%; margin-top: -15px; }
.page-points .earn-points .item-content				{ padding-left: 0; }
.page-points .earn-points .item-content .item-inner			{ padding-right: 20px; }
.page-points .earn-points .item-content .item-inner:before	{ right: 0; }
.page-points .fixed-position						{ position: fixed; }

.page-purchase .page-content						{ padding-right: 30px; padding-left: 30px; text-align: center; font-size: 16px; }
.page-purchase .page-content .icon-ssl,
.page-purchase2 .page-content .icon-ssl				{ width: 140px; margin-top: 20px; }
.page-purchase .page-content .description			{ color: var(--perfectcamp-gray3); font-size: 14px; }
.page-purchase .pricing								{ width: 100%; margin-top: 20px; border-collapse: collapse; }
.page-purchase .pricing td							{ padding: 10px 3px 10px 3px; text-align: left; }
.page-purchase .pricing tr.plan td					{ border-top: 2px solid var(--perfectcamp-gray2); border-bottom: 2px solid var(--perfectcamp-gray2); }
.page-purchase .pricing tr.plan td:nth-child(2)		{ vertical-align: top; }
.page-purchase .pricing tr.discount-code td			{ border-bottom: 2px solid var(--perfectcamp-gray2); }
.page-purchase #campgroundname-dropdown				{ padding: 10px; border-radius: 5px; background-color: var(--perfectcamp-gray1); width: 250px; display: inline-block; margin-right: 7px; margin-top: 6px; }
.page-purchase #campgroundname-dropdown::placeholder	{ color: var(--perfectcamp-gray3); }
.page-purchase .discount-code .discount-code-title	{ display: none; margin-right: 20px; }
.page-purchase .discount-code .remove				{ display: none; }
.page-purchase .discount-code .description			{ display: none; }
.page-purchase .discount-code .number				{ vertical-align: bottom; }
.page-purchase #discountCode						{ padding: 10px; border-radius: 5px; background-color: var(--perfectcamp-gray1); width: 160px; display: inline-block; margin-right: 7px; text-transform: uppercase; }
.page-purchase #discountCode::placeholder			{ color: var(--perfectcamp-gray3); text-transform: initial; }
.page-purchase .pricing td:nth-child(2)				{ text-align: right; }
.page-purchase .pricing .marshmallow-slider	table	{ width: 100%; }
.page-purchase .pricing .marshmallow-slider	table td				{ padding: 2px 25px 2px 0px; }
.page-purchase .pricing .marshmallow-slider	table td:first-child	{ width: 1%; }
.page-purchase .pricing .marshmallow-slider .points	{ font-size: 29px; font-weight: 700; color: var(--perfectcamp-green5); text-align: center; line-height: 1em; }
.page-purchase .pricing .marshmallow-slider .points .balance-label	{ font-size: 13px; font-weight: 600; line-height: 1em; color: var(--perfectcamp-text-color); }
.page-purchase .page-content .button-next			{ margin-top: 13px; }
.page-purchase .pricing tr.total					{ font-size: 20px; font-weight: 700; }
.page-purchase .pricing tr.total td					{ border-top: 2px solid var(--perfectcamp-gray2); }
.page-purchase .pricing tr.total td:first-child		{ text-align: right; }

.page-purchase2 .page-content						{ padding-right: 30px; padding-left: 30px; text-align: center; font-size: 16px; }
.page-purchase2 .page-content .button-next			{ margin-top: 40px; }
.page-purchase2 .list .item-content					{ padding-left: 0; }
.page-purchase2 .list .item-inner					{ padding-right: 0; }
.page-purchase2 .form-fields						{ margin-top: 20px; text-align: left; }
.page-purchase2 .form-fields label					{ margin-left: 5px; font-weight: 600; font-size: 13px; }
.page-purchase2 .form-fields .input					{ height: 30px; border: 1px solid var(--perfectcamp-gray2); border-radius: 4px; padding: 3px 5px 3px 11px; margin-bottom: 10px; transition: border-color 160ms; }
.page-purchase2 #button-submit						{ margin-top: 40px; }
.page-purchase2 .row-back							{ margin-top: 19px; border-bottom: 2px solid var(--perfectcamp-gray2); padding-bottom: 13px; }
.page-purchase2 .icon-cvc							{ width: 50px; margin-top: 25px; margin-right: 8px; }
.page-purchase2 .braintree-hosted-fields-focused 	{ border-color: var(--perfectcamp-green5) !important; }
.page-purchase2 .braintree-hosted-fields-invalid 	{ border-color: red !important; }
.page-purchase2 .braintree-hosted-fields-valid 		{ border-color: var(--perfectcamp-gray2) !important; }
.page-purchase2 .invalid							{ border-color: red !important; } 

.page-reset-password .page-content					{ overflow-y: hidden; }
.page-reset-password .reset-password-container		{ display: inline-block; width: 250px; margin-top: calc(50vh - 250px); background-color: rgba(0, 0, 0, .5); padding: 30px; border-radius: 12px; }
.page-reset-password .reset-password-container span	{ position: relative; width: 21px; display: inline-block; }

.page-terms h2 										{ font-weight: bold; font-size: 17px; }
.page-terms h3										{ font-weight: bold; font-size: 16px; }

.page-user .navbar-bg								{ background: none; }
.page-user .navbar .left .fa-bars					{ filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); }
.page-user .navbar .right .account-profile-pic		{ filter: drop-shadow(0 0 1px black); }
.page-user .navbar .right .border					{ display: none; }
.page-user .navbar .edit							{ text-align: center; background-color: rgba(0,0,0,.3); border-radius: 8px; padding: 4px 15px; font-size: 14px; cursor: pointer; }
.page-user .navbar .edit .icon						{ margin-right: 5px; }
.page-user .user-header								{ transition: .5s; top: 0; position: fixed; z-index: 3; height: var(--perfectcamp-user-header-height); width: 100%; color: white; text-shadow: 0 0 5px black; font-size: 18px; }
.page-user .user-header .container					{ padding-bottom: 0; }
.page-user .user-header .background					{ transition: .5s; position: relative; transition: .5s; padding-top: var(--f7-safe-area-top); height: calc(var(--perfectcamp-user-header-height) - 111px); background-position: center; background-repeat: no-repeat; background-size: cover; }			
.device-ios .page-user .user-header .background .gradient { background-color: rgba(0,0,0,.2); position: absolute; top: 0; height: 45px; width: 100%; }
.page-user .user-header .profile-nav 				{ position: absolute; right: 0; cursor: pointer; }
.page-user .user-header .profile-nav .profile-pic	{ cursor: pointer; width: 40px; height: 40px; background-position: center; background-repeat: no-repeat; background-size: cover; position: absolute; right: 9px; top: 8px; border-radius: 20px; box-sizing: border-box; }
.page-user .user-header .profile-nav .border		{ position: absolute; width: 40px; height: 40px; right: 9px; top: 8px; border-radius: 20px; box-sizing: border-box; border: 1px solid rgba(255,255,255,.3); }
.page-user .user-header .profile-nav .notifications	{ display: none; cursor: pointer; background-color: var(--perfectcamp-blue); width: 14px; height: 14px; position: absolute; bottom: -50px; right: 5px; border-radius: 7px; border: 1.5px solid white; box-sizing: border-box; }
.page-user .user-header .title						{ position: absolute; top: -78px; left: 0; font-size: 28px; font-weight: bold; display: block; width: 100%; text-align: center; }
.page-user .user-header .profile-pic-big			{ position: absolute; top: -32px; left: 15px; width: 96px; height: 96px; border-radius: 50px; border: 2px solid var(--f7-page-bg-color); box-shadow: 2px 2px 12px black; }
.page-user .user-header .pro-badge					{ filter: drop-shadow(0 0 2px var(--perfectcamp-gray6)); }
.page-user .user-header .stats-container			{ text-align: right; text-shadow: none; color: var(--perfectcamp-text-color); }
.page-user .user-header .followers					{ display: inline-block; text-align: center; margin: 0 10px; }
.page-user .user-header .followers .image-stack		{ position: relative; margin-right: 6px; }
.page-user .user-header .followers .image-stack img:nth-child(n+2)	{ margin-left: -10px; }
.page-user .user-header .followers .profile-pic		{ width: 36px; height: 36px; border-radius: 18px; border: 2px solid var(--perfectcamp-white-black-background); box-sizing: border-box; cursor: pointer; }
.page-user .user-header .social-icons				{ position: absolute; top: -43px; right: 0; font-size: 25px; box-sizing: border-box; width: 100%; text-align: right; padding-right: 40px; } 
.page-user .user-header .social-icons a				{ color: white; margin-left: 30px; }
.page-user .user-header .social-icons .icon			{ filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); }
.page-user .user-header .stats						{ display: inline-block; text-align: center; margin: 0 10px; }
.page-user .user-header .stats .label				{ font-size: 14px; color: var(--perfectcamp-gray3); }
.page-user .user-header .stats .value				{ font-size: 28px; font-weight: bold; line-height: 1em; }
.page-user .user-header .stats .followers-link,
.page-user .user-header .stats .reviews-link		{ cursor: pointer; }
.page-user .user-header .tab-content 				{ position: relative; margin-top: 10px; text-shadow: none; padding-bottom: 4px; border-bottom: 4px solid var(--perfectcamp-gray2); background-color: var(--f7-page-bg-color); }
.page-user .user-header .tab-content .col			{ cursor: pointer; text-align: center; color: var(--perfectcamp-gray4); }
.page-user .user-header .tab-content .col.selected	{ color: var(--perfectcamp-text-color); }
.page-user .user-header .adventure-map .fa-doutone	{ --fa-primary-color: var(--perfectcamp-green6); --fa-secondary-color: var(--perfectcamp-blue); }
.page-user .user-header .bar						{ background-color: var(--perfectcamp-green5); height: 4px; position: absolute; bottom: -4px; left: 0; transition: .3s; }
.page-user .thumbnail[data-discussionid]			{ cursor: pointer; }
.page-user .container								{ background-color: var(--f7-page-bg-color); }
.page-user .main-container							{ transition: .5s; padding-top: calc(var(--perfectcamp-user-header-height) - 26px); }
.page-user .discussions .filter-box					{ display: none; }
.page-user .year-header								{ font-weight: bold; font-size: 18px;  margin: 0 0 15px 0; }
.page-user .flow-gallery							{ margin-bottom: 23px; }
.page-user .flow-gallery .caption					{ font-size: 14px; }
.page-user .left-nav								{ position: absolute; display: none; left: 0; overflow: hidden; width: 250px; box-sizing: border-box; text-shadow: none; color: var(--f7-text-color); transition: .5s; padding: calc(var(--perfectcamp-user-header-height) + var(--f7-safe-area-top) + -94px) 0 10px 15px; }
.page-user .parent .profile-pic						{ cursor: unset; }
.page-user .lnt-container img						{ width: 28px; filter: drop-shadow(0 0 2px black); margin-left: 8px; vertical-align: -7px; }

.panel-discussion									{ --f7-panel-width: 100%; } 
.panel-discussion .container 						{ padding-left: 10px; padding-right: 10px; }
.panel-discussion .chip								{ pointer-events: none; }
.panel-discussion .chip[data-tagid="3486"]			{ pointer-events: all; cursor: pointer; }
.panel-discussion .actions .reply					{ pointer-events: none; }
.panel-discussion .replies							{ margin-bottom: 20px; }
.panel-discussion .new-reply .now 					{ color: var(--perfectcamp-gray3); font-size: 13px; }
.panel-discussion .editor .editor-content			{ outline: unset; border: 2px solid var(--perfectcamp-gray2); border-radius: 6px; padding: 10px; }

.panel-mypage-edit									{ --f7-panel-width: 100%; max-width: 450px; }
.panel-mypage-edit .page-content					{ padding: calc(var(--f7-safe-area-top) + 72px) 15px 15px 15px; }
.panel-mypage-edit .page-url-container				{ padding: 10px; background-color: var(--perfectcamp-gray1); border-radius: 6px; margin-bottom: 20px; }
.panel-mypage-edit .page-url-container .copy-url	{ float: right; font-size: 20px; color: var(--perfectcamp-gray4); }
.panel-mypage-edit table							{ width: 100%; margin-bottom: 40px; }
.panel-mypage-edit table td:first-child				{ width: 35px; vertical-align: bottom; }
.panel-mypage-edit table .icon						{ font-size: 22px; color: var(--perfectcamp-gray3); }
.panel-mypage-edit table .icon.active				{ color: var(--perfectcamp-gray4); }
.panel-mypage-edit .upload-box						{ margin-top: 20px; padding: 5px; position: relative; width: 100%; height: 70vw; max-width: 400px; max-height: 250px; cursor: pointer; border-radius: 10px; box-sizing: border-box; }
.panel-mypage-edit .upload-box > div				{ box-sizing: border-box; font-size: 61px; text-align: center; border: 3px dashed var(--perfectcamp-green5); color: var(--perfectcamp-green5); height: 100%; border-radius: 11px; }
.panel-mypage-edit .form-upload						{ margin-bottom: 20px; }
.panel-mypage-edit form.is-dragover					{ background-color: var(--perfectcamp-green1); }
.panel-mypage-edit .upload-icon						{ margin-top: calc(24% - .5em); }
.panel-mypage-edit .file-container					{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.panel-mypage-edit .file-container label 			{ color: var(--perfectcamp-green5); cursor: pointer; font-size: 19px; font-weight: 600; display: block; padding-top: calc(36% - .5em); padding-bottom: calc(26% - .5em); }
.panel-mypage-edit #uploadFile						{ display: none; }
.panel-mypage-edit .uploaded-photo					{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.panel-mypage-edit .button-submit					{ margin-top: 40px; }

.panel-followers									{ --f7-panel-width: 350px; } 
.panel-followers .page-content						{ padding: calc(var(--f7-safe-area-top) + 65px) 15px 15px 15px; }
.panel-followers .user-container					{ margin-bottom: 10px; }
.panel-followers .profile-pic						{ width: 36px; height: 36px; border-radius: 18px; margin-right: 6px; vertical-align: -11px; }
.panel-followers .profile-page						{ font-weight: bold; }
.panel-followers .follow-button						{ width: 120px; float: right; background-color: var(--perfectcamp-gray1); color: var(--perfectcamp-text-color); }
.panel-followers .follow-button.following			{ background-color: var(--perfectcamp-blue) !important; color: white !important; }

.popover-campground-info							{ width: 350px; height: 260px; color: white; border: 5px; background-size: cover; }
.popover-campground-info .price						{ border-top-left-radius: 5px; }

.popover-campground-menu 							{ width: 225px; }
.popover-campground-menu .item-content				{ padding-left: 10px; }
.popover-campground-menu .list-button:hover			{ color: var(--perfectcamp-list-button-hover-color); }

.popover-campsite										{ width: 800px; max-width: 90%; height: 493px; max-height: 90%; margin: 20px 10px 30px 10px; }
.popover-campsite .campsiteContent 						{ display: flex; flex-wrap: wrap; }
.popover-campsite .campsiteContent>.contentBlock 		{ flex-grow: 1; flex-basis: 200px; padding: 4px; height: 200px; margin-bottom: 10px; }
.popover-campsite #campsiteOverviewMap					{ position: absolute; width: 360px; height: 250px; right: 20px; bottom: 20px; box-shadow: 1px 1px 5px black; }
.popover-campsite #campsiteOverviewMap .mapboxgl-popup	{ z-index: 2;}
.popover-campsite .map-title							{ position: absolute; width: 360px; height: 30px; line-height: 30px; right: 20px; bottom: 240px; text-align: center; font-weight: bold; color: white; background-color: rgba(255, 255, 255, .9); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding: 0 10px; box-sizing: border-box; }
.popover-campsite .preloader							{ position: absolute; top: 186px; left: 50%; margin-left: -60px; --f7-preloader-color: var(--perfectcamp-gray3); --f7-preloader-size: 120px; }
.popover-campsite .preloader-text						{ position: absolute; top: 50%; margin: 50px auto 0 auto; font-size: 30px; text-align: center; width: 100%; color: var(--perfectcamp-gray3); }
.popover-campsite .popover-inner						{ height: 100%; border-radius: 4px; }
.popover-campsite .popover-inner-content				{ height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center center; background-color: gray; overflow: hidden; }
.popover-campsite .post									{ position: absolute; width: 44px; height: 253px; background-color: #512604; bottom: 0; left: 54px; text-align: center; border-radius: 4px 4px 0 0; background: rgb(105,74,13); background: linear-gradient(90deg, rgba(81,38,4,1) 2%, rgba(117, 85, 20) 7%, rgba(81,38,4,1) 13%, rgba(81,38,4,1) 92%, rgba(0,0,0,1) 100%); }
.popover-campsite .post .campsite-number				{ font-family: 'Delius Unicase', cursive; margin-top: 3px; font-size: 22px; background-color: black; color: transparent; text-shadow: 1px 1px 1px rgba(250, 250, 204, 0.9); background-clip: text; -webkit-background-clip: text; -moz-background-clip: text; }
.popover-campsite .sign									{ position: absolute; bottom: 222px; left: 22px; width: 105px; text-shadow: none; transform-origin: center 4px; animation-fill-mode: forwards; }
.popover-campsite .sign img								{ position: absolute; top: 2px; left: 2px; width: 100%; }
.popover-campsite .sign .date-from						{ position: absolute; top: 62px; left: 8px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px; }
.popover-campsite .sign .date-to						{ position: absolute; top: 62px; left: 54px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px;  }
.popover-campsite .row-content							{ position: absolute; bottom: 0; }
.popover-campsite .attributes 							{ position: absolute; bottom: 22px; width: 221px; left: 159px; height: 69px; }
.popover-campsite .iconAttribute						{ width: 30px; cursor: pointer; margin-right: 2px; }
.popover-campsite .favorite,
.campsiteSwiper .swiper-slide .favorite					{ position: absolute; left: 50%; top: -32px; font-size: 51px; margin-left: -25px; cursor: pointer; color: #EFEFEF; transition-duration: .2s; filter: drop-shadow(0 4px 7px gray); transform-origin: center; }
.popover-campsite .favorite:hover,
.campsiteSwiper .swiper-slide .favorite:hover			{ transform: scale(1.4); }
.popover-campsite .favorite.selected,
.campsiteSwiper .swiper-slide .favorite.selected		{ color: #BD0808; }
.popover-campsite .favorite path						{ stroke-width: 49px; stroke: white; }
.popover-campsite .gallery 								{ position: absolute; display: inline-block; bottom: 103px; left: 24px;  }
.popover-campsite .gallery .gallery-count				{ position: absolute; bottom: -85px; left: 11px; width: 100px; color: white; font-size: 14px; }
.popover-campsite .gallery .videoPreview				{ position: absolute; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(-5deg); }
.popover-campsite .gallery .photo						{ position: absolute; top: 4px; left: 5px; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(7deg); max-height: 90px; }
.popover-campsite .rating-stars							{ position: absolute; top: 35px; left: 50px; visibility: hidden; }
.popover-campsite .rating-stars .stars					{ font-size: 30px; display: inline-block; color: #ddc920; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; }
.popover-campsite .rating-stars .rating-number			{ font-size: 30px; display: inline-block; font-weight: bold; color: white; text-shadow: 0 0 7px black; }
.popover-campsite .review								{ position: absolute; top: 80px; visibility: hidden; color: white; font-size: 20px; font-style: italic; padding: 0 70px; text-shadow: 0 0 8px black, 0 0 3px black; }
.popover-campsite .review .quote						{ opacity: .3; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); font-size: 1.8em; }
.popover-campsite .review .quote-left					{ position: absolute; left: 31px; }
.popover-campsite .review .quote-right					{ position: absolute; right: 30px; bottom: 0; }
.popover-campsite .review .user							{ visibility: hidden; font-size: 16px; font-style: normal; text-align: right; margin: 10px 10px 0 0; color: var(--perfectcamp-gray2); }
.popover-campsite .stats								{ position: absolute; bottom: 94px; left: 159px; height: 130px; color: white; width: 255px; text-shadow: 0 0 8px black, 0 0 3px black; }
.popover-campsite .stats .row:nth-child(3)				{ margin-top: 10px; } 
.popover-campsite .title 								{ font-size: 13px; line-height: 1em; }
.popover-campsite .value 								{ font-size: 26px; line-height: 1.3em; font-weight: bold; }

#campsiteCalendar								{ position: absolute; width: 360px; right: 20px; bottom: 20px; text-align: center; color: white; }
#campsiteCalendar .navigation					{ font-weight: bold; font-size: 20px; text-shadow: 0 0 8px black, 0 0 3px black; }
#campsiteCalendar .table 						{ display: table; table-layout: fixed; width: 100%; border-spacing: 2px; height: 175px; }
#campsiteCalendar .row 						{ display: table-row; }
#campsiteCalendar .header						{ text-shadow: 0 0 8px black, 0 0 3px black; }
#campsiteCalendar .row:first-child 			{ font-size: 10px; color: white; }
#campsiteCalendar .col 						{ display: table-cell; padding-top: 3px; position: relative; border-radius: 3px; }
#campsiteCalendar .col div 					{ position: absolute; top: -2px; left: 1px; font-size: 9px; color: rgba(255, 255, 255, .4); }
#campsiteCalendar .empty div 					{ color: rgba(255, 255, 255, .2); }
#campsiteCalendar .row:not(:first-child) .col:not(.empty)	{ background-color: rgba(0, 0, 0, .8); }
#campsiteCalendar .col.empty					{ background-color: rgba(0, 0, 0, .2); }
#campsiteCalendar .col.hidden					{ visibility: hidden; }
#campsiteCalendar .navigationPrev,
#campsiteCalendar .navigationNext				{ width: 20px; cursor: pointer; filter: drop-shadow(0 0 2px black) drop-shadow(0 0 1px black); }
#campsiteCalendar .holiday					{ display: inline-block; position: absolute; color: white !important; font-size: 9px !important; top: -4px; right: -1px !important; text-align: right; }
#campsiteCalendar .col .today					{ color: white; }

.popover-discussion-menu .pending-bug .icon				{ color: var(--perfectcamp-yellow); }
.popover-discussion-menu .active-bug .icon				{ color: var(--perfectcamp-red); }
.popover-discussion-menu .resolved-bug .icon			{ color: var(--perfectcamp-green5); }

.popover-emoji											{ --f7-popover-width: 360px; }
.popover-emoji table									{ width: 100%; }
.popover-emoji table td									{ text-align: center; }
.popover-emoji span										{ border-radius: 5px; width: 36px; height: 36px; display: inline-block; cursor: pointer; position: relative; }
.popover-emoji span:hover								{ background-color: var(--perfectcamp-gray2); }
.popover-emoji .frequently-used							{ padding: 6px 15px 0 15px; }
.popover-emoji .bar										{ height: 340px; padding: 9px 15px 0 15px; overflow-y: auto; border-top: 2px solid var(--perfectcamp-gray2); }

.popover-emoji-filter 								{ --f7-popover-width: 360px; max-height: 200px; overflow: hidden; }
.popover-emoji-filter mark							{ background-color: var(--perfectcamp-yellow); color: var(--perfectcamp-gray5); }
.popover-emoji-filter .popover-inner				{ max-height: 200px; overflow-y: auto; overflow-x: hidden; }
.popover-emoji-filter .popover-inner .emoji-div		{ cursor: pointer; padding: 4px 4px 4px 35px; white-space: nowrap; position: relative; }
.popover-emoji-filter .popover-inner .emoji-div:hover	{ background-color: var(--perfectcamp-gray1); }
.popover-emoji-filter .popover-inner .emoji-div.selected	{ background-color: var(--perfectcamp-blue); color: white; }
.popover-emoji-filter .emoji						{ width: 30px; height: 30px; position: absolute; top: 0; left: 3px; }

.popover-filters 									{ min-width: 290px; }
.popover-filters .navbar							{ height: 48px; font-size: var(--f7-list-font-size); }
.popover-filters .navbar .close						{ font-size: 23px; color: gray; cursor: pointer; }
.popover-filters .navbar .right						{ padding-right: 16px; }
.popover-filters .navbar-bg							{ border-radius: 4px; }
.popover-filters .navbar-inner						{ padding: 0; }
.popover-filters .page-content	 					{ overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; padding-top: 0; padding-bottom: 0; }
.popover-filters .labelText							{ margin-left: 16px; width: 100%; }
.popover-filters .labelText img						{ width: 25px; height: 25px; margin-right: 7px; vertical-align: -6px; }
.popover-filters .count								{ color: lightgray; font-size: 14px; }
.popover-filters .valueLabel						{ position: absolute; top: -17px; font-size: 13px; } 
.popover-filters .resetFilters						{ display: none; }
.popover-filters .resetFilters a					{ color: var(--perfectcamp-blue); }
.popover-filters .date-range .item-content			{ padding-left: 0; }
.popover-filters #dateRangeCalendar					{ cursor: pointer; }
.popover-filters .rating .labelText					{ margin-left: 0; }
.popover-filters .rating .item-content				{ padding-left: 0; }
.popover-filters .rating .stars						{ font-size: 24px; cursor: pointer; color: var(--perfectcamp-gray2); }
.popover-filters .rating .star						{ transition-duration: .3s; }
.popover-filters .rating .star.hover				{ color: var(--perfectcamp-blue); }
.popover-filters .rating .rating-number				{ font-weight: bold; font-size: 20px; margin-left: -48px; transition-duration: .3s; }
.popover-filters .rating .count						{ transition-duration: .5s; }
.popover-filters .bars > div:first-child 			{ margin-left: 9px; }
.popover-filters .bars .item-cell					{ font-size: 20px; }
.popover-filters .bars .valueLabel					{ position: absolute; top: -17px; font-size: 13px; }
.popover-filters .bars .not-selected				{ color: silver; opacity: .5; }
.popover-filters .bars .selected,
.popover-filters .bars .selected1,
.popover-filters .bars .selected2,
.popover-filters .bars .selected3,
.popover-filters .bars .selected4					{ color: var(--perfectcamp-blue); display: none; --fa-secondary-color: silver }
.popover-filters .bars .selected0					{ display: none; color: var(--perfectcamp-gray2); }
.popover-filters .bars .range-knob					{ background-color: var(--perfectcamp-blue); }
.popover-filters .amps								{ display: none; }
.popover-filters .attributes 						{ margin-top: 10px; margin-bottom: 5px; white-space: normal; height: unset; line-height: 24px; }
.popover-filters .attributes .cabin					{ display: none; }				
.popover-filters .attributes img					{ width: 27px; margin-right: 9px; border: 4px solid rgba(0,0,0,0); border-radius: 7px; padding: 2px; cursor: pointer; transition-duration: .5s; }
.popover-filters .attributes img.highlight			{ border-color: var(--perfectcamp-gray2); }
.popover-filters .attributes img.active				{ border-color: var(--perfectcamp-blue); }
.popover-filters .attributes.campsite				{ line-height: 31px; }
.popover-filters .favorites .fa-heart				{ margin-right: 4px; }
.popover-filters .cabins .fa-house					{ margin-right: 4px; }

.popover-layers .starlink img						{ width: 26px; vertical-align: -8px; }

.popover-mention-filter  									{ --f7-popover-width: 300px; overflow: hidden; }
.popover-mention-filter .popover-inner						{ max-height: 200px; overflow-y: auto; overflow-x: hidden; }
.popover-mention-filter .popover-inner .user-div			{ cursor: pointer; padding: 4px; white-space: nowrap; }
.popover-mention-filter .popover-inner .user-div:hover		{ background-color: var(--perfectcamp-gray1); }
.popover-mention-filter .popover-inner .user-div.selected	{ background-color: var(--perfectcamp-blue); color: white; }
.popover-mention-filter .popover-inner .user-div .photo		{ vertical-align: -7px; width: 24px; height: 24px; border-radius: 12px; margin: 0 6px 0 3px; }

.popover-message-to		  									{ --f7-popover-width: 300px; max-height: 192px; overflow: hidden; }
.popover-message-to .popover-inner							{ max-height: 200px; overflow-y: auto; overflow-x: hidden; }
.popover-message-to .popover-inner .user-div				{ cursor: pointer; padding: 4px; white-space: nowrap; }
.popover-message-to .popover-inner .user-div:hover			{ background-color: var(--perfectcamp-gray1); }
.popover-message-to .popover-inner .user-div.selected		{ background-color: var(--perfectcamp-blue); color: white; }
.popover-message-to .popover-inner .user-div .photo			{ vertical-align: -7px; width: 24px; height: 24px; border-radius: 12px; margin: 0 6px 0 3px; }

.popover-question-tip										{ --f7-popover-width: 300px; }
.popover-question-tip .popover-inner						{ padding: 10px; }
.popover-question-tip .username								{ font-weight: bold; }

.popover-profile											{ width: 250px; }
.popover-profile .badge										{ margin-top: 14px; background-color: var(--perfectcamp-gray3); }
.popover-profile .badge.pro									{ border-radius: 4px; }
.popover-profile .new										{ background-color: var(--perfectcamp-blue) !important; }
.popover-profile .alert										{ background-color: var(--perfectcamp-red) !important; }

.popover-share												{ width: unset; background-color: transparent; box-shadow: none; }
.popover-share .popover-inner								{ padding: 2px 15px 15px 10px; }
.popover-share .button										{ display: inline-block; font-size: 20px; color: white; margin-right: 5px; box-shadow: var(--f7-popover-box-shadow); }
.popover-share .button-facebook								{ background-color: #4267B2; }
.popover-share .button-twitter								{ background-color: #1DA1F2; }
.popover-share .button-email								{ background-color: var(--perfectcamp-green5); }

.popover-tip.popover-on-bottom								{ margin-top: 5px; }

.popover-tip .popover-angle.on-bottom 						{ left: 0; top: 100%; }
.popover-tip .popover-angle 								{ width: 26px; height: 26px; position: absolute; left: -26px; top: 0; z-index: 100; overflow: hidden; }
.popover-tip .button										{ margin-top: 10px; display: inline-block; }
.popover-tip .blue-dot										{ background-color: var(--perfectcamp-blue); width: 10px; height: 10px; border-radius: 5px; display: inline-block; }

.popover-user												{ padding: 15px; min-height: 140px; min-width: 350px; margin-left: 30px }
.popover-user .username										{ margin-top: 6px; font-size: 16px; font-weight: bold; }
.popover-user .bio											{ height: 60px; text-align: center; margin-top: 15px; font-size: 14px; color: var(--perfectcamp-gray4); -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; display: -webkit-box; white-space: normal; }
.popover-user .totals										{ width: 100%; }
.popover-user .totals td									{ text-align: center; width: 25%; }
.popover-user .col											{ text-align: center; }
.popover-user .total										{ font-size: 31px; margin-top: 15px; font-weight: bold; line-height: 31px; }
.popover-user .label										{ font-size: 14px; }
.popover-user .follow-button								{ width: 100px; position: absolute; right: 15px; top: 15px; background-color: var(--perfectcamp-gray1); color: var(--perfectcamp-text-color); }
.popover-user .follow-button.following						{ background-color: var(--perfectcamp-blue) !important; color: white !important; }

.popup-advertise-purchase .page-content						{ padding-right: 30px; padding-left: 30px; text-align: center; font-size: 16px; }
.popup-advertise-purchase .icon-lock						{ margin-right: 5px; }

.popup-air-quality .row										{ padding: 0 20px; }
.popup-air-quality img.air-quality							{ width: 100%; margin-top: 20px; }
.popup-air-quality img.air-quality-map						{ width: 100%; margin-top: 20px; }
.popup-air-quality .emoji									{ width: 36px; height: 36px; vertical-align: middle; }
.popup-air-quality .pricing									{ font-size: 12px; text-align: center; }
.popup-air-quality .wildfire								{ color: var(--perfectcamp-red); }

.popup-air-quality-legend									{ --f7-popup-tablet-height: 476px; }
.popup-air-quality-legend td								{ padding: 5px; }
.popup-air-quality-legend td:first-child					{ text-align: center; white-space: nowrap; }
.popup-air-quality-legend .yellow td						{ background-color: yellow; }
.popup-air-quality-legend .orange td						{ background-color: orange; }
.popup-air-quality-legend .red td							{ background-color: red; color: white; }
.popup-air-quality-legend .purple td						{ background-color: purple; color: white; }
.popup-air-quality-legend .maroon td						{ background-color: maroon; color: white; }
.popup-air-quality-legend .last-updated						{ font-size: 12px; }

.popup-blm													{ --f7-popup-tablet-height: 570px; }
.popup-blm .navbar											{ background-color: white; }
.popup-blm .row												{ padding: 0 20px; }
.popup-blm .row p:first-child								{ margin-top: 0; }
.popup-blm .subscribe										{ margin: 20px auto; max-width: 223px; }
.popup-blm .code											{ font-size: 12px; text-align: center; margin-bottom: 20px; }

.popup-campground-calendar									{ --f7-popup-border-radius: 0; }
.popup-campground-calendar .navbar							{ background-color: white; }
.popup-campground-calendar .navbar .title					{ font-size: 18px; }
.popup-campground-calendar .navbar .navigation				{ font-size: 27px; color: var(--perfectcamp-gray3); position: absolute; width: 50px; line-height: var(--f7-navbar-link-line-height, var(--f7-navbar-height)); height: var(--f7-navbar-link-height, var(--f7-navbar-height)); }
.popup-campground-calendar .navbar .prev					{ left: 60px; }
.popup-campground-calendar .navbar .next					{ right: 60px; }
.popup-campground-calendar .navbar .disabled				{ opacity: .3; cursor: default; }
.popup-campground-calendar .campsite-number-container		{ height: 34px; width: 40px; position: absolute; margin: -1px 0 0 -1px; padding-left: 3px; background-image: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,1), rgba(255,255,255,0)); }
.popup-campground-calendar .availability					{ padding-right: 0; margin-bottom: 0; }
.popup-campground-calendar .campsite-number					{ cursor: pointer; }
.popup-campground-calendar [data-ridb-campsiteid] .td		{ cursor: pointer; }

.popup-campground-points									{ --f7-popup-border-radius: 0; }
.popup-campground-points .basic-editor-content				{ outline: 0px solid transparent; }
.popup-campground-points .footnote							{ margin-top: 3em; }
.popup-campground-points .navbar							{ background-color: white; }
.popup-campground-points .navbar .left						{ font-size: 20px; margin-left: 20px; }
.popup-campground-points .navbar .title						{ font-size: 18px; }
.popup-campground-points .page-content						{ padding-left: 20px; padding-right: 20px;}
.popup-campground-points .main-container					{ margin-bottom: 40px; }
.popup-campground-points .campsite							{ color: black; font-size: 12px; line-height: 26px; text-align: center; font-weight: bold; background-color: #BDD09F; border: 3px solid white; box-sizing: border-box; width: 30px; height: 30px; border-radius: 15px; box-shadow: 1px 1px 3px rgba(0,0,0,0.6); display: inline-block; margin-right: 2px; margin-bottom: 6px; }
.popup-campground-points .points							{ color: var(--perfectcamp-green5); font-weight: bold; }
.popup-campground-points p									{ margin-top: 25px; margin-bottom: 5px; }
.popup-campground-points .attribute img						{ width: 30px; height: 30px; margin-right: 5px; }
.popup-campground-points .tabs								{ margin-top: 10px; }
.popup-campground-points #tab-1 .button						{ font-size: 18px; width: 43px; height: 35px; line-height: 33px; text-align: center; display: inline-block; text-overflow: initial; }
.popup-campground-points #tab-2 .icon						{ width: 24px; height: 24px; vertical-align: -4px; }
.popup-campground-points .note								{ font-size: 12px; }
.popup-campground-points .tab-link							{ font-weight: normal; }
.popup-campground-points .back-link							{ margin-right: 7px; }
.popup-campground-points .upload-box						{ margin-top: 20px; padding: 5px; position: relative; width: 100%; height: 70vw; max-width: 400px; max-height: 250px; cursor: pointer; border-radius: 10px; box-sizing: border-box; }
.popup-campground-points .upload-box > div					{ box-sizing: border-box; font-size: 61px; text-align: center; border: 3px dashed var(--perfectcamp-green5); color: var(--perfectcamp-green5); height: 100%; border-radius: 11px; }
.popup-campground-points .form-upload						{ height: 100%; }
.popup-campground-points .form-upload.is-dragover			{ background-color: var(--perfectcamp-green1); }
.popup-campground-points .form-upload .upload-icon			{ margin-top: calc(24% - .5em); }
.popup-campground-points .file-container					{ position: absolute; width: 100%; height: 100%; top: 0; left: 0; }
.popup-campground-points .file-container label 				{ color: var(--perfectcamp-green5); cursor: pointer; font-size: 19px; font-weight: 600; display: block; padding-top: calc(36% - .5em); padding-bottom: calc(26% - .5em); }
.popup-campground-points #uploadFile						{ display: none; }
.popup-campground-points #speedTestCapture					{ display: none; }
.popup-campground-points #speedTestPhoto					{ display: none; }
.popup-campground-points #campsitePhoto						{ display: none; }
.popup-campground-points .after-upload						{ max-width: 400px; width: 100%; }
.popup-campground-points .after-upload .uploaded-photo,
.popup-campground-points .after-upload .uploaded-video		{ display: none; border-radius: 10px; margin-bottom: 20px; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.popup-campground-points .after-upload .uploaded-screen-capture	{ display: none; border-radius: 10px; margin: 0 0 20px 0; border: 5px solid white; width: 100%; max-width: 400px; box-sizing: border-box; }
.popup-campground-points .after-upload .slide-down			{ display: none; width: 100%; }
.popup-campground-points .after-upload .photo-description	{ min-height: 200px !important; outline: 0px solid transparent; }
.popup-campground-points .after-upload .button-submit		{ width: 100%; max-width: 400px; }
.popup-campground-points .after-upload .input-label			{ color: var(--perfectcamp-gray4); }
.popup-campground-points .after-upload .date-taken-label	{ margin-top: 20px; }
.popup-campground-points .after-upload .input-outline-box	{ cursor: text; width: 100%; max-width: 400px; padding: 10px; border: 2px solid var(--perfectcamp-gray2); border-radius: 5px; box-sizing: border-box; margin-bottom: 20px; min-height: 48px; }
.popup-campground-points .after-upload .input-outline-box:focus	{ border-color: var(--perfectcamp-blue); }
.popup-campground-points .after-upload .campsite-review			{ min-height: 288px !important; }
.popup-campground-points .after-upload .campground-improvements	{ min-height: 144px !important; }
.popup-campground-points .tips								{ font-size: 12px; color: var(--perfectcamp-gray3); }	
.popup-campground-points .editor-buttons					{ float: right; margin-top: -12px; }
.popup-campground-points 									{ --f7-checkbox-inactive-color: var(--perfectcamp-gray2); }
.popup-campground-points .checkbox							{ margin-right: 5px; }
.popup-campground-points .rights							{ vertical-align: -2px; }
.popup-campground-points .button-submit						{ margin: 30px 0 50px 0; }
.popup-campground-points [contenteditable] b 				{ font-weight: normal !important; }
.popup-campground-points [contenteditable] i 				{ font-style: normal !important; }
.popup-campground-points [contenteditable] u 				{ text-decoration: none !important; }
.popup-campground-points .carriers							{ margin-bottom: 20px; }	
.popup-campground-points .carriers .box,
.popup-campground-points .bars .box							{ border: 2px solid var(--perfectcamp-gray2); border-radius: 5px; text-align: center; height: 50px; box-sizing: border-box; position: relative; cursor: pointer; transition-duration: .4s; }
.popup-campground-points .bars								{ margin-bottom: 20px; }
.popup-campground-points .bars .box							{ font-size: 29px; height: unset}
.popup-campground-points .bars .box.active .icon			{ --fa-primary-color: var(--perfectcamp-blue); }
.popup-campground-points .carriers .box img					{ position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.popup-campground-points .bars .box.active,
.popup-campground-points .carriers .box.active				{ opacity: 1; border-color: var(--perfectcamp-blue); }
.popup-campground-points .carriers img.verizon				{ width: 35px; }
.popup-campground-points .carriers img.tmobile				{ width: 26px; }
.popup-campground-points .carriers img.att					{ width: 31px; }
.popup-campground-points .submit-container					{ display: none; }
.popup-campground-points .speedtest-photo-label				{ display: none; }
.popup-campground-points #speedtest-photo					{ margin-top: 0; }
.popup-campground-points .rating							{ font-size: 30px; margin-bottom: 20px; }
.popup-campground-points .rating .star						{ cursor: pointer; color: var(--perfectcamp-gray2);}
.popup-campground-points .rating .star.active				{ color: var(--perfectcamp-blue); }
.popup-campground-points .rating .star.selected				{ color: var(--perfectcamp-blue); }
.popup-campground-points .rating .star-value				{ font-weight: bold; margin-left: 10px; }
.popup-campground-points .speed-test .comments-label		{ margin-top: 20px; }
.popup-campground-points .speed-test .comments 				{ min-height: 144px !important; }

.popup-campground-overview									{ --f7-popup-border-radius: 0; }

.popup-change-email										{ --f7-popup-tablet-width: 400px; --f7-popup-tablet-height: 350px; }
.popup-change-password									{ --f7-popup-tablet-width: 400px; --f7-popup-tablet-height: 420px; }

.popup-discussion-post 									{ --f7-popup-tablet-height: 700px; }
.popup-discussion-post .icon							{ margin-right: 10px; }
.popup-discussion-post .body							{ overflow-y: hidden; min-height: 200px; }
.popup-discussion-post .container						{ padding-top: 15px; position: relative; }
.popup-discussion-post .editor .editor-content			{ border: 2px solid var(--perfectcamp-gray2); border-radius: 6px; min-height: 200px; padding: 15px; }
.popup-discussion-post .editor .editor-content:focus	{ border-color: var(--perfectcamp-blue); }
.popup-discussion-post .editor-button .icon				{ vertical-align: -2px; }
.popup-discussion-post .filter-box						{ margin-top: 5px; }
.popup-discussion-post .asking-question					{ margin-top: 20px; }
.popup-discussion-post .report-bug						{ margin-top: 20px; margin-bottom: 10px; }
.popup-discussion-post .bug-instructions				{ display: none; }
.popup-discussion-post .asking-question .icon-checkbox,
.popup-discussion-post .report-bug .icon-checkbox		{ margin-bottom: 3px; border-color: var(--perfectcamp-gray2); }
.popup-discussion-post .asking-question .input-label,
.popup-discussion-post .report-bug .input-label			{ margin-left: 5px; }
.popup-discussion-post .choose-tags 					{ margin-top: 20px; }
.popup-discussion-post .button-submit					{ margin-top: 30px; margin-bottom: 30px; }
.popup-discussion-post .upload-instructions				{ display: none; position: absolute; top: 60px; width: 343px; color: var(--perfectcamp-gray2); text-align: center; font-size: 20px; margin-left: calc(50% - 195px); }
.popup-discussion-post .upload-instructions .icon		{ font-size: 40px; }
.popup-discussion-post .upload-instructions .or			{ margin: 10px 0; font-weight: bold; }
.popup-discussion-post .photo-video-icon				{ display: inline-block; }
.popup-discussion-post .thumbnails span					{ position: relative; display: inline-block; }
.popup-discussion-post .thumbnails img					{ max-height: 100px; border-radius: 6px; margin-right: 10px; }
.popup-discussion-post .thumbnails .delete				{ position: absolute; top: -14px; right: -8px; font-size: 26px; cursor: pointer; --fa-secondary-opacity: 1; --fa-secondary-color: var(--perfectcamp-gray2); }
.popup-discussion-post [name="Points"]					{ width: 100px; }
.popop-discussion-post #discussionFile					{ display: none; }
.popup-discussion-post .shortcuts						{ margin: -17px 10px 10px 0; font-size: 13px; color: var(--perfectcamp-gray3); }
.popup-discussion-post .shortcuts .label				{ background-color: var(--perfectcamp-gray1); border-radius: 5px; padding: 2px 5px; color: var(--perfectcamp-gray4); font-family: Courier; }

.popup-file-upload										{ --f7-popup-tablet-width: 300px; --f7-popup-tablet-height: 300px; }

.popup-edit-profile .block								{ margin-top: 10px; }
.popup-edit-profile .button-update						{ margin: 25px 30px 0 30px; }
.popup-edit-profile .form-fields						{ margin-top: 10px; margin-bottom: 10px; }
.popup-edit-profile .avatar-container					{ margin-top: 25px; text-align: center; }
.popup-edit-profile .swiper-container					{ width: 200px; height: 200px; padding: 0 50px 43px 50px; display: inline-block; }
.popup-edit-profile .swiper-button-next,
.popup-edit-profile .swiper-button-prev					{ top: 100px; }
.popup-edit-profile .swiper-button-next:focus,
.popup-edit-profile .swiper-button-prev:focus			{ outline: none !important; }
.popup-edit-profile .link								{ display: none; }
.popup-edit-profile .swiper-slide						{ border-radius: 14px; }
.popup-edit-profile .swiper-slide.upload				{ padding: 5px; box-sizing: border-box; }
.popup-edit-profile .form-upload						{ height: 100%; }
.popup-edit-profile .form-upload.is-dragover			{ background-color: var(--perfectcamp-green1); }
.popup-edit-profile .upload > div						{ box-sizing: border-box; font-size: 61px; text-align: center; border: 3px dashed var(--perfectcamp-green5); color: var(--perfectcamp-green5); height: 100%; border-radius: 11px; }
.popup-edit-profile .upload-icon						{ margin-top: 43px; display: inline-block; }
.popup-edit-profile .delete								{ margin-top: 19px; font-size: 16px; }
.popup-edit-profile .file-container						{ position: absolute; width: 200px; height: 200px; top: 0; left: 0; }
.popup-edit-profile .upload #file						{ display: none; }
.popup-edit-profile .upload label						{ color: var(--perfectcamp-green5); cursor: pointer; font-size: 19px; font-weight: 600; display: block; padding-top: 112px; margin-top: 6px; padding-bottom: 51px; }
.popup-edit-profile .list ul							{ background-color: unset; }
.popup-edit-profile .email-settings						{ margin-left: 32px; margin-right: 32px; }
.popup-edit-profile .email-settings h1 					{ margin-bottom: 0; font-size: 18px; }
.popup-edit-profile .instructions						{ font-size: 11px; color: var(--perfectcamp-gray4); }

.popup-edit-tags 										{ --f7-skeleton-color: var(--perfectcamp-gray2); }
.popup-edit-tags .page-content							{ padding-top: 6px; }
.popup-edit-tags .navbar								{ --f7-navbar-height: 80px; position: relative; }
.popup-edit-tags .navbar-inner							{ top: 0; align-items: flex-start; }
.popup-edit-tags .popup-close							{ bottom: 12px; }
.popup-edit-tags .block									{ margin-top: 12px; }
.popup-edit-tags .clear-links							{ position: absolute; width: 100%; bottom: 8px; font-size: 16px; }
.popup-edit-tags .clear-selected						{ min-height: 24px; }
.popup-edit-tags .clear-selected a						{ display: none; }
.popup-edit-tags .center								{ text-align: center; }
.popup-edit-tags .hide									{ display: none; }
.popup-edit-tags .nowrap								{ white-space: nowrap; }
.popup-edit-tags .activities .category-label			{ margin-top: 0; }
.popup-edit-tags .category-label						{ margin: 18px 0 5px 0; font-weight: bold; color: var(--perfectcamp-gray5); }
.popup-edit-tags .category-label a						{ font-size: 14px; font-weight: normal; margin-left: 5px; }
.popup-edit-tags .chip									{ color: var(--perfectcamp-gray4); --f7-chip-bg-color: var(--perfectcamp-gray2); cursor: pointer; }
.popup-edit-tags .chip.favorite							{ color: white; --f7-chip-bg-color: var(--perfectcamp-green5); }
.popup-edit-tags .chip-media							{ color: inherit; }

.popup-edit-tags .chip .chip-label						{ margin-left: 0; }
.popup-edit-tags .show-all								{ font-size: 14px; }

.popup-leaderboard .top-10-marshmallow 					{ margin: 20px 5px; display: inline-block; }
.popup-leaderboard .top-10-marshmallow td:nth-child(2)	{ text-align: left; }
.popup-leaderboard .page-content						{ text-align: center; }

.popup-link-email										{ --f7-popup-tablet-width: 400px; --f7-popup-tablet-height: 450px; }

.popup-lpdp												{ --f7-popup-tablet-height: 520px; }
.popup-lpdp .navbar										{ background-color: white; }
.popup-lpdp .row										{ padding: 0 20px; }
.popup-lpdp .row p:first-child							{ margin-top: 0; }
.popup-lpdp .subscribe									{ margin: 20px auto; max-width: 223px; }
.popup-lpdp .code										{ font-size: 12px; text-align: center; margin-bottom: 20px; }

.popup-marker-edit .navbar								{ background-color: white; }
.popup-marker-edit .point 								{ color: var(--perfectcamp-green5); font-weight: 600; width: 30px; text-align: right; }
.popup-marker-edit .navbar .left 						{ margin-left: 19px; width: 50px; }
.popup-marker-edit .page-content > div					{ padding: 10px 20px 20px; }
.popup-marker-edit .marker-property						{ margin-bottom: 10px; }
.popup-marker-edit .marker-property:first-child			{ margin-top: 20px; }
.popup-marker-edit .marker-property img					{ width: 27px; margin-top: 3px; }
.popup-marker-edit .marker-property > div:first-child	{ text-align: right; font-size: 16px; }
.popup-marker-edit .marker-property .icon				{ margin-right: 5px; margin-top: 8px; }
.popup-marker-edit .marker-property .helper				{ font-size: 12px; color: var(--perfectcamp-gray3); }
.popup-marker-edit input[type=text] 					{ width: 100%; padding: 5px; border: 1px solid var(--perfectcamp-gray2); border-radius: 4px; }
.popup-marker-edit .checkbox							{ margin-top: 5px; }
.popup-marker-edit .button-update						{ margin-top: 40px; }

.popup-message .body									{ min-height: 250px; }
.popup-message [name="Points"]							{ width: 100px; }

.popup-mvum												{ --f7-popup-tablet-height: 570px; }
.popup-mvum .navbar										{ background-color: white; }
.popup-mvum .mvum-icon									{ width: 30px; height: 30px; margin-left: 20px; }
.popup-mvum .row										{ padding: 0 20px; }
.popup-mvum .row p:first-child							{ margin-top: 0; }
.popup-mvum .subscribe									{ margin: 20px auto; max-width: 223px; }
.popup-mvum .code										{ font-size: 12px; text-align: center; margin-bottom: 20px; }

.popup-new-message										{ --f7-popup-tablet-height: 700px; }
.popup-new-message [name="Body"]						{ min-height: 100px; }
.popup-new-message [name="Points"]						{ width: 85px; }
.popup-new-message .photo-video-icon					{ float: right; margin-right: 3px; }

.popup-pack-more-out .photo								{ width: 100%; max-width: 509px; }

.popup-points .page-content								{ padding-left: 20px; padding-right: 20px; font-size: 14px; }
.popup-points table										{ border-collapse: collapse; }
.popup-points td										{ background-color: var(--perfectcamp-gray1); padding: 10px; }
.popup-points .icon										{ font-size: 32px; }
.popup-points .stripe									{ background-color: var(--perfectcamp-green5); width: 8px; padding: 0; }
.popup-points .navbar .left								{ margin-left: 19px; }
.popup-points .tags-of-interest							{ max-width: 300px; float: right; margin-left: 10px; }

.popup-purchase .icon-lock								{ margin-right: 6px; }

.popup-question-answer-tip 								{ --f7-popup-tablet-width: 400px; --f7-popup-tablet-height: 400px; padding: 20px; }
.question-answer-tip h1									{ margin-top: 0; text-align: center; }
.question-answer-tip .tags								{ display: inline-block; } 	
.question-answer-tip .thumbsup							{ display: inline-block; width: 30px; position: relative; }
.question-answer-tip .thumbsup img						{ position: absolute; width: 36px; top: -27px; left: -3px; }
.question-answer-tip .chip								{ background-color: var(--perfectcamp-blue); color: white; font-size: 11px; height: 20px; margin-right: 2px; }
.question-answer-tip .chip-media						{ font-size: 11px; width: 24px; height: 20px; }
.question-answer-tip .chip-label						{ margin-left: 0; }
.question-answer-tip .button-dismiss					{ margin-top: 26px; }
.sheet-question-answer-tip								{ height: unset; padding: 20px 20px 30px 20px; }

.popup-reservation-website								{ --f7-popup-tablet-width: 500px; --f7-popup-tablet-height: 290px; }
.popup-reservation-website .button						{ background-color: var(--perfectcamp-green6); }
.popup-reservation-website .button .icon				{ margin-left: 10px; }

.popup-setup-alerts										{ --f7-popup-tablet-height: 700px; }
.popup-setup-alerts .popup-navbar						{ padding: 22px 22px 5px 22px; border-bottom: 1px solid lightgray; }

.popup-shooting											{ --f7-popup-tablet-height: 660px; }
.popup-shooting .page-content div:first-child			{ padding: 0 20px; }
.popup-shooting .shooting-icon							{ width: 30px; height: 30px; margin-left: 20px; }
.popup-shooting .video-full-width						{ --video--width: 640px; --video--height: 791px; height: 349px; }

.popup-social-follow .icon								{ padding: 10px; }

.popup-sort-campsites									{ --f7-popup-tablet-height: 650px; }
.popup-sort-campsites .page-content						{ padding: 25px; padding-top: calc(var(--f7-safe-area-top) + 25px) !important; }
.popup-sort-campsites .sortable							{ margin: 0 0 0 46px; }
.popup-sort-campsites .sort-number						{ position: absolute; left: -21px; width: 36px; height: 36px; border-radius: 18px; text-align: center; line-height: 36px; background-color: var(--perfectcamp-red); color: white; }
.popup-sort-campsites .sort-number span					{ font-size: 12px; }
.popup-sort-campsites .one								{ top: 22px; }
.popup-sort-campsites .two								{ top: 70px; }
.popup-sort-campsites .three							{ top: 118px; }
.popup-sort-campsites .four								{ top: 166px; }
.popup-sort-campsites .five								{ top: 214px; }
.popup-sort-campsites .six								{ top: 262px; }
.popup-sort-campsites .seven							{ top: 310px; }
.popup-sort-campsites .eight							{ top: 358px; }
.popup-sort-campsites .nine								{ top: 406px; }
.popup-sort-campsites .ten								{ top: 454px; }
.popup-sort-campsites .up-to-ten .button-container		{ padding: 30px; }

.popup-starlink .page-content							{ padding-left: 20px; padding-right: 20px; }
.popup-starlink .starlink-icon							{ width: 25px; margin-left: 20px; }
.popup-starlink .pricing								{ text-align: center; font-size: 12px; }

.popup-starlink-campgrounds .page-content				{ padding-left: 20px; padding-right: 20px; }
.popup-starlink-campgrounds .starlink-icon				{ width: 25px; margin-left: 20px; }
.popup-starlink-campgrounds .pricing					{ text-align: center; font-size: 12px; }

.popup-video											{ --f7-popup-tablet-height: 500px; background-color: black; padding-top: var(--f7-safe-area-top); }

.popup-vimeo											{ --f7-popup-border-radius: 0; --f7-popup-tablet-border-radius: 0; --f7-popup-tablet-height: 225px; --f7-popup-tablet-width: 300px;  }

.sheet-air-quality-legend								{ height: auto; font-size: 13px; }
.sheet-air-quality-legend td							{ padding: 5px; }
.sheet-air-quality-legend td:first-child				{ text-align: center; white-space: nowrap; }
.sheet-air-quality-legend .yellow td					{ background-color: yellow; }
.sheet-air-quality-legend .orange td					{ background-color: orange; }
.sheet-air-quality-legend .red td						{ background-color: red; color: white; }
.sheet-air-quality-legend .purple td					{ background-color: purple; color: white; }
.sheet-air-quality-legend .maroon td					{ background-color: maroon; color: white; }
.sheet-air-quality-legend .sheet-modal-inner			{ padding-bottom: 30px !important; }

.sheet-campsite 										{ --f7-sheet-height: 530px; max-height: 100%; }
.sheet-campsite .sheet-modal-inner						{ height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center center; background-color: gray; overflow: visible; }
.sheet-campsite .post									{ position: absolute; width: 44px; height: 253px; background-color: #512604; bottom: 0; left: 54px; text-align: center; border-radius: 4px 4px 0 0; background: rgb(105,74,13); background: linear-gradient(90deg, rgba(81,38,4,1) 2%, rgba(117, 85, 20) 7%, rgba(81,38,4,1) 13%, rgba(81,38,4,1) 92%, rgba(0,0,0,1) 100%); }
.sheet-campsite .post .campsite-number					{ font-family: 'Delius Unicase', cursive; margin-top: 3px; font-size: 22px; background-color: black; color: transparent; text-shadow: 1px 1px 1px rgba(250, 250, 204, 0.9); background-clip: text; -webkit-background-clip: text; -moz-background-clip: text; }
.sheet-campsite .sign									{ position: absolute; bottom: 222px; left: 22px; width: 105px; text-shadow: none; transform-origin: center 4px; animation-fill-mode: forwards; }
.sheet-campsite .sign img								{ position: absolute; top: 2px; left: 2px; width: 100%; }
.sheet-campsite .sign .date-from						{ position: absolute; top: 62px; left: 8px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px; }
.sheet-campsite .sign .date-to							{ position: absolute; top: 62px; left: 54px; font-size: 18px; font-family: 'Kalam', cursive; color: gray; text-align: center; width: 47px;  }
.sheet-campsite .row-content							{ position: absolute; bottom: 0; }
.sheet-campsite .attributes 							{ position: absolute; bottom: 22px; width: 221px; left: 159px; height: 69px; }
.sheet-campsite .iconAttribute							{ width: 30px; cursor: pointer; margin-right: 2px; }
.sheet-campsite .favorite								{ position: absolute; left: 50%; top: -32px; font-size: 51px; margin-left: -25px; cursor: pointer; color: #EFEFEF; transition-duration: .2s; filter: drop-shadow(0 4px 7px gray); transform-origin: center; }
.sheet-campsite .favorite.selected 						{ color: #BD0808; }
.sheet-campsite .favorite path							{ stroke-width: 49px; stroke: white; }
.sheet-campsite .stats									{ position: absolute; bottom: 94px; left: 159px; height: 130px; color: white; width: 255px; text-shadow: 0 0 8px black, 0 0 3px black; }
.sheet-campsite .stats .row:nth-child(3)				{ margin-top: 10px; } 
.sheet-campsite .title 									{ font-size: 13px; line-height: 1em; }
.sheet-campsite .value 									{ font-size: 26px; line-height: 1.3em; font-weight: bold; }
.sheet-campsite #campsiteCalendar						{ position: unset; width: 100%; right: unset; bottom: unset; padding: 30px 20px 0 20px; box-sizing: border-box; }
.sheet-campsite .map-container							{ padding: 40px 20px 0 20px; }
.sheet-campsite #campsiteOverviewMap					{ width: 100%; height: 200px; box-shadow: 1px 1px 5px black; }
.sheet-campsite #campsiteOverviewMap .mapboxgl-popup	{ z-index: 2;}
.sheet-campsite .map-title								{ position: absolute; width: 360px; height: 30px; line-height: 30px; right: 20px; bottom: 240px; text-align: center; font-weight: bold; color: white; background-color: rgba(255, 255, 255, .9); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding: 0 10px; box-sizing: border-box; }
.sheet-campsite .preloader								{ position: absolute; top: 186px; left: 50%; margin-left: -60px; --f7-preloader-color: var(--perfectcamp-gray3); --f7-preloader-size: 120px; }
.sheet-campsite .preloader-text							{ position: absolute; top: 50%; margin: 50px auto 0 auto; font-size: 30px; text-align: center; width: 100%; color: var(--perfectcamp-gray3); }
.sheet-campsite .gallery 								{ position: absolute; display: inline-block; bottom: 103px; left: 24px;  }
.sheet-campsite .gallery .gallery-count					{ position: absolute; bottom: -85px; left: 11px; width: 100px; color: white; font-size: 14px; }
.sheet-campsite .gallery .videoPreview					{ position: absolute; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(-5deg); }
.sheet-campsite .gallery .photo							{ position: absolute; top: 4px; left: 5px; border: 2px solid white; cursor: pointer; box-shadow: 0 0 8px black; transform: rotate(7deg); }
.sheet-campsite .rating-stars							{ position: absolute; top: 35px; left: 50px; visibility: hidden; }
.sheet-campsite .rating-stars .stars					{ font-size: 30px; display: inline-block; color: #ddc920; filter: drop-shadow(0 0 1px black) drop-shadow(0 0 3px black); --fa-secondary-opacity: .7; }
.sheet-campsite .rating-stars .rating-number			{ font-size: 30px; display: inline-block; font-weight: bold; color: white; text-shadow: 0 0 7px black; }

.sheet-emoji											{ --f7-sheet-height: 510px; }
.sheet-emoji table										{ width: 100%; }
.sheet-emoji table td									{ text-align: center; }
.sheet-emoji span										{ border-radius: 5px; width: 40px; height: 40px; display: inline-block; cursor: pointer; position: relative; }
.sheet-emoji .frequently-used							{ padding: 6px 5px 0 5px; }
.sheet-emoji .bar										{ padding: 9px 5px 0 5px; overflow-y: auto; border-top: 2px solid var(--perfectcamp-gray2); }

.sheet-reactions .sheet-modal-inner						{ padding: 20px; position: relative; }
.sheet-reactions .emoji-large							{ width: 100px; height: 100px; float: left; margin-left: -5px; }
.sheet-reactions strong									{ color: var(--perfectcamp-gray6); }
.sheet-reactions .inner									{ padding: 5px 5px 5px 0; color: var(--perfectcamp-gray4); max-height: 141px; overflow-y: auto; }
.sheet-reactions .short-name							{ white-space: nowrap; }
.sheet-reactions .button								{ position: absolute; bottom: 80px; width: calc(100% - 40px); }

.top-10-marshmallow										{ font-size: 14px; padding-right: 3px; width: 240px; max-width: 240px; }
.top-10-marshmallow .heading							{ font-size: 18px; font-weight: bold; text-align: center; margin-bottom: 6px; }
.top-10-marshmallow .table-container					{ border: 2px solid var(--perfectcamp-green2); border-radius: 4px; }
.top-10-marshmallow table								{ width: 100%; border-spacing: 1px; border-collapse: collapse; }
.top-10-marshmallow table td 							{ padding: 0; line-height: 1em; border-bottom: 1px solid var(--perfectcamp-green1); white-space: nowrap; overflow-x: hidden; text-overflow: ellipsis; }
.top-10-marshmallow table tr:last-child td 				{ border-bottom: none; }
.top-10-marshmallow td:nth-child(1)						{ font-weight: bold; font-size: 16px; background-color: var(--perfectcamp-green2); text-align: center; padding: 0 4px; }
.top-10-marshmallow td:nth-child(2)						{ max-width: 167px; }
.top-10-marshmallow td:nth-child(3)						{ font-weight: bold; font-size: 16px; text-align: right; padding-right: 6px; color: var(--perfectcamp-green5); }
.top-10-marshmallow .profile-pic						{ position: unset; top: 0; left: 0; vertical-align: -11px; box-sizing: border-box; width: 30px; height: 30px; border-radius: 15px; margin-right: 2px; cursor: pointer; }

.emoji[data-name="thumbs-up"]							{ margin-top: -4px; }


#campgroundHighlightMarker .pulsating-circle {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 20px;
  height: 20px;
}
  
#campgroundHighlightMarker .pulsating-circle .before {
    content: '';
    position: relative;
    display: block;
    width: 800%;
    height: 800%;
	left: 14px;
    top: 14px;
    box-sizing: border-box;
    margin-left: -400%;
    margin-top: -400%;
    border-radius: 100%;
    background-color: #01a4e9;
    animation: pulse-ring 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
}
  
#campgroundHighlightMarker .pulsating-circle .after {
    content: '';
    position: absolute;
    left: 0; 
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #4285F4;
    border-radius: 14px;
	border: 3px solid white;
    box-shadow: 0 0 8px rgba(0,0,0,.3);
    animation: pulse-dot 2s cubic-bezier(0.455, 0.03, 0.515, 0.955) -.4s infinite;
}


@keyframes pulse-ring {
  0% 		{ transform: scale(.33); }
  80%, 100% { opacity: 0; }
}

@keyframes pulse-dot {
  0% 	{ transform: scale(.8); }
  50% 	{ transform: scale(1); }
  100% 	{ transform: scale(.8); }
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */
}

.router-transition-push-reverse-forward .page-current	{ animation: push-reverse-current-to-prev 400ms; }
.router-transition-push-reverse-forward .page-next		{ animation: push-reverse-next-to-current 400ms; }
@keyframes push-reverse-current-to-prev 				{ from{transform:translateX(0%)} to {transform:translateX(100%)} }
@keyframes push-reverse-next-to-current 				{ from{transform:translateX(-100%)} to {transform:translateX(0%)} }

@media all and (max-width: 600px) {
	.popup-vimeo												{ --f7-popup-tablet-width: 300px; --f7-popup-tablet-height: 225px;
	    --f7-safe-area-top: 0px;
		--f7-safe-area-bottom: 0px;
		width: var(--f7-popup-tablet-width);
		height: var(--f7-popup-tablet-height);
		left: 50%;
		top: 50%;
		margin-left: calc(-1 * var(--f7-popup-tablet-width)/ 2);
		margin-top: calc(-1 * var(--f7-popup-tablet-height)/ 2);
		transform: translate3d(0,100vh,0);
		box-shadow: var(--f7-popup-box-shadow);
		border-radius: var(--f7-popup-tablet-border-radius,var(--f7-popup-border-radius));
	}
	.max600												{ display: none; }
	.page-user .tab-content .adventure-map span 		{ display: none; }
}


@media all and (min-width: 600px) {
	.popup-vimeo												{ --f7-popup-tablet-width: 480px; --f7-popup-tablet-height: 360px; width: 480px; height: 360px; }
}

@media all and (min-width: 800px) {
	.page-dispersed-campsite .rating-stars .stars				{ font-size: 44px; }
	.page-dispersed-campsite .rating-stars .rating-number		{ font-size: 52px; vertical-align: -5px; }
	.page-dispersed-campsite .price								{ width: 120px; height: 72px; line-height: 72px; font-size: 48px; }	
	.page-dispersed-campsite .rating-bar						{ height: 72px; line-height: 72px; }	
	.page-dispersed-campsite .rating-stars						{ left: 120px; top: 0; }	
	.panel-discussion 											{ --f7-panel-width: 600px; min-width: 500px; }
	.panel-followers 											{ --f7-panel-width: 350px; min-width: 350px; }
	.page-user .user-header .stats								{ width: 90px; }
	.popup-vimeo												{ --f7-popup-tablet-width: 640px; --f7-popup-tablet-height: 480px; width: 640px; height: 480px; }
	.page-home .testimonials .profile-pic-big					{ vertical-align: -14px; margin-right: 10px; width: 46px; height: 46px; border-radius: 25px; border: 2px solid var(--f7-page-bg-color); }
}

@media all and (min-width: 1024px) { 
	.md .toast 												{ margin-left: calc(-1 * var(--f7-toast-max-width)/ 2); }
	.page-discussions .main-container,
	.page-points .main-container							{ margin-left: 260px; }
	.page-discussions .left-nav,
	.page-points .left-col									{ display: block; }
	.page-points .leaderboard-mobile						{ display: none; }
	.popup-vimeo											{ --f7-popup-tablet-width: 1024px; --f7-popup-tablet-height: 768px; width: 1024px; height: 768px; }
	.page-home .testimonials .profile-pic-big				{ vertical-align: -20px; margin-right: 10px; width: 66px; height: 66px; border-radius: 35px; border: 2px solid var(--f7-page-bg-color); }
}

@media all and (max-width: 1400px) { 
	.XXXXpage-campground-overview .left-col						{ display: none; }
}

@media all and (max-width: 1000px) {
	.calendar-month-slider .availability td					{ width: 25px; }
	.calendar-month-slider .availability td:first-child	 	{ width: 36px; }
	.page-giveaway .flipTimer-wrapper						{ height: 85px; }
	.page-giveaway .flipTimer 								{ font-size: 54px; line-height: 60px; height: 60px; }
	.page-giveaway .flipTimer .digit-set 					{ width: 50px; }
	.page-giveaway .flipTimer .digit > div.shadow-top		{ width: 50px; }
	.page-giveaway .flipTimer .digit > div.shadow-bottom	{ width: 30px; }
	.page-giveaway .label 									{ font-size: 11px; bottom: -30px; }

	.page-giveaway .swiper-container 						{ height: 299px; }		
	.page-giveaway .product-wrapper							{ margin-top: 43px; }
	.page-giveaway .use-marshmallows .points				{ font-size: 40px; line-height: 1em; }
	.page-giveaway .use-marshmallows .points-entered		{ font-size: 40px; line-height: 1em; }
	.page-giveaway .use-marshmallows .desc					{ font-size: 13px; }
	.page-giveaway .video-preview 							{ margin-left: -243px; }
}	

@media all and (max-width: 860px) {
	.popover-campsite #campsiteOverviewMap					{ display: none; }
	.popover-campsite .map-title							{ display: none; }
	.page-user .user-header .social-icons					{ padding-right: 20px; }
}

@media all and (max-width: 725px) {
	.page-user .stats-container .followers					{ display: none; }
}

@media all and (max-width: 629px) {
	.ios, .md 												{ --f7-popup-border-radius: 0; }
	.example3												{ display: none; }
	.popup-sort-campsites .page-content						{ padding-top: 42px; }
	.popup .circle-action-button							{ top: 52px; }
	.popup-reservation-website	.page-content 				{ padding-top: 42px; }
	.page-about .pictureDIV > div 							{ display: block !important; width: 100% !important; }
	
	.page-giveaway .flipTimer-wrapper						{ height: 87px; }
	.page-giveaway .flipTimer 								{ font-size: 54px; line-height: 60px; height: 60px; }
	.page-giveaway .flipTimer .digit-set 					{ width: 50px; }
	.page-giveaway .flipTimer .digit > div.shadow-top		{ width: 50px; }
	.page-giveaway .flipTimer .digit > div.shadow-bottom	{ width: 30px; }
	.page-giveaway .label 									{ font-size: 11px; bottom: -30px; }
	

	.page-giveaway .swiper-container 						{ height: 299px; }
	.page-giveaway .product-wrapper							{ margin-top: 42px; }
	.page-giveaway .use-marshmallows .points				{ font-size: 32px; line-height: 1em; }
	.page-giveaway .use-marshmallows .points-entered		{ font-size: 32px; line-height: 1em; }
	.page-giveaway .use-marshmallows .desc					{ font-size: 13px; }
	.page-giveaway .video-preview 							{ margin-left: -243px; }

	.page-home .comparison-table .overview-text				{ display: none; }
	.page-home .comparison-table .icon						{ display: none; }
	.page-home .comparison-table tr td > div:nth-child(2)	{ margin-left: 0; }
	
	.page-user .user-header .title							{ font-size: 22px; }
}

@media all and (max-width: 550px) {
	.page-giveaway .flipTimer-wrapper						{ height: 62px; }
	.page-giveaway .flipTimer 								{ font-size: 33px; line-height: 38px; height: 38px; }
	.page-giveaway .flipTimer .digit-set 					{ width: 38px; }
	.page-giveaway .flipTimer .digit > div.shadow-top		{ width: 38px; }
	.page-giveaway .flipTimer .digit > div.shadow-bottom	{ width: 18px; }
	.page-giveaway .label 									{ font-size: 11px; bottom: -22px; }
	
	.page-giveaway .swiper-container 						{ height: 328px; }
	.page-giveaway .product-wrapper							{ margin-top: 58px; }
	.page-giveaway .use-marshmallows .points				{ font-size: 30px; line-height: 1em; }
	.page-giveaway .use-marshmallows .points-entered		{ font-size: 30px; line-height: 1em; }
	.page-giveaway .use-marshmallows .desc					{ font-size: 13px; }
	.page-giveaway .video-preview 							{ margin-left: -186px; }
	
	.page-campground-overview .weather-card .fa-fw			{ font-size: 22px; }
}

@media all and (max-width: 400px) {
	.page-user .user-header .social-icons a					{ margin-left: 20px; }
}

.theme-dark {
	--perfectcamp-white-black-background: var(--perfectcamp-gray6);
	--perfectcamp-white-black-background-rgba: var(--perfectcamp-gray6-rgb);

	--perfectcamp-white-black-foreground: var(--perfectcamp-gray1);
	--perfectcamp-text-color: var(--perfectcamp-gray3);
	--perfectcamp-card-header-background-color: var(--perfectcamp-gray5);
	--perfectcamp-button-background-color: black;
	--perfectcamp-gauge-background-color: var(--perfectcamp-gray5);
	--perfectcamp-list-button-hover-background-color: black;
	--perfectcamp-list-button-hover-color: white;
	--perfectcamp-footer-background-color: var(--perfectcamp-gray5);
	--pefectcamp-scrollbar-background-color: transparent;
	--pefectcamp-scrollbar-color: rgba(255,255,255,.3);
	
	--f7-badge-bg-color: var(--perfectcamp-gray5);
	--f7-button-text-color: var(--perfectcamp-green5);
	--f7-navbar-text-color: var(--perfectcamp-text-color);
	--f7-toolbar-border-color: gray;
	--f7-notification-bg-color: rgba(30, 30, 30, 0.95);
	--f7-notification-bg-color-rgb: 30, 30, 30;
	--f7-notification-title-color: silver;
	--f7-notification-subtitle-color: var(--perfectcamp-gray1);
	--f7-notification-text-color: var(--perfectcamp-gray1);
	--f7-notification-title-right-color: rgba(255, 255, 255, 0.55);
	--f7-list-item-after-text-color: var(--perfectcamp-green5);
	--f7-list-bg-color: black;
	--f7-navbar-bg-color: var(--perfectcamp-gray7);
	--f7-input-placeholder-color: var(--perfectcamp-gray5);
	--f7-toast-text-color: var(--perfectcamp-gray6) !important;
	--f7-toast-bg-color: rgba(var(--perfectcamp-gray2-rgb), 0.9) !important;
}

.theme-dark *::-webkit-scrollbar-track 								{ background-color: var(--perfectcamp-gray6); }
.theme-dark *::-webkit-scrollbar-thumb 								{ background-color: var(--perfectcamp-gray5); }

.theme-dark body 													{ background-color: black; }
.theme-dark .bottom-nav .selected .tabbar-label						{ color: var(--perfectcamp-green6) !important; }

.theme-dark .animated-gif-container									{ background-color: var(--perfectcamp-gray6); }
.theme-dark .animated-gif-container:hover							{ border-color: rgba(255, 255, 255, .3); background-color: black; }

.theme-dark .calendar-month-slider .td								{ color: var(--perfectcamp-gray3); }
.theme-dark .calendar-month-slider .td:first-child					{ background-color: black; }
.theme-dark .calendar-month-slider .availability .td:not(:first-child)	{ background-color: var(--perfectcamp-gray7); color: var(--perfectcamp-gray5); }
.theme-dark .calendar-month-slider .past 							{ color: rgba(var(--perfectcamp-gray3-rgb), .3); }
.theme-dark .calendar-month-slider .days-header						{ background-color: black; }
.theme-dark .calendar-month-slider .days .td:not(:first-child) 		{ background-color: var(--perfectcamp-gray7); }
.theme-dark .calendar-month-slider .navbar							{ background-color: black; }
.theme-dark .calendar-month-slider .campsite-number-header .table	{ background-image: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,1), rgba(0,0,0,1), rgba(0,0,0,0)); }
.theme-dark .calendar-month-slider .weekend							{ background-color: var(--perfectcamp-gray6) !important; }
.theme-dark .calendar-month-slider .weekend.past					{ background-color: var(--perfectcamp-gray7) !important; }
.theme-dark .calendar-month-slider .campsite-number					{ color: black; border-color: var(--perfectcamp-gray2); }
.theme-dark .calendar-month-slider .campsite-number.favorite		{ color: white; }
.theme-dark .calendar-month-slider .campsite-number-container 		{ background-image: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,1), rgba(0,0,0,1), rgba(0,0,0,0)); }
.theme-dark .calendar-month-slider .available						{ background-color: var(--perfectcamp-green6) !important; color: var(--perfectcamp-gray2) !important; }
.theme-dark .calendar-month-slider .available.past					{ background-color: rgba(var(--perfectcamp-green7-rgb), .3) !important; }
.theme-dark .calendar-month-slider .availability .past 				{ background-color: rgba(var(--perfectcamp-gray7-rgb), .3); }


.theme-dark .discussion-search [name=TagSearch]						{ background-color: var(--perfectcamp-gray6); }
.theme-dark .discussion-search .chip:hover 							{ background-color: var(--perfectcamp-gray5); }
.theme-dark .discussions .expand									{ background-image: linear-gradient(to bottom, rgba(18, 18, 18, 0), rgba(18, 18, 18, 1)); }
.theme-dark .discussions .expand-link								{ background-color: var(--perfectcamp-gray7); }
.theme-dark .discussions .chip[data-tagid="3486"]					{ background-color: var(--perfectcamp-blue); color: var(--perfectcamp-gray1); }
.theme-dark .discussions .chip[data-tagid="3484"]					{ background-color: var(--perfectcamp-red); color: var(--perfectcamp-gray1); }
.theme-dark .discussions .chip[data-tagid="3487"]					{ background-color: var(--perfectcamp-yellow); color: var(--perfectcamp-gray6); }
.theme-dark .discussions .chip[data-tagid="3485"]					{ background-color: var(--perfectcamp-green5); color: var(--perfectcamp-gray1); }
.theme-dark .discussions .discussion-menu:hover						{ background-color: var(--perfectcamp-gray6); color: var(--perfectcamp-gray2); }
.theme-dark .discussions .parent									{ border-color: var(--perfectcamp-gray6); }

.theme-dark .discussions .reactions .reacted						{ background-color: rgba(var(--perfectcamp-blue-rgb), 1); color: var(--perfectcamp-gray2); }

.theme-dark .discussions .replies-separator 						{ background-color: var(--perfectcamp-gray7); }
.theme-dark .discussions .replies > .reply 							{ border-color: var(--perfectcamp-gray6); }
.theme-dark .discussions .subject									{ color: var(--perfectcamp-gray2); }
.theme-dark .discussions .timeSince									{ color: var(--perfectcamp-gray4); }
.theme-dark .discussions .tags .chip								{ background-color: var(--perfectcamp-gray6); }

.theme-dark .discussions .fadeout-left								{ background-image: linear-gradient(to right, rgba(18,18,18,1), rgba(18,18,18,0)); }
.theme-dark .discussions .fadeout-right								{ background-image: linear-gradient(to right, rgba(18,18,18,0), rgba(18,18,18,1)); }

.theme-dark .ohv-icon												{ border: 2px solid white; border-radius: 10px; }
.theme-dark .page-contact .topic .icon 								{ --fa-primary-color: var(--perfectcamp-gray3); --fa-secondary-color: var(--perfectcamp-gray3); --fa-secondary-opacity: .6; }
.theme-dark .page-contact-add-destination .button					{ background-color: var(--perfectcamp-gray6); }
.theme-dark .circle-action-button:hover								{ background-color: rgba(0,0,0,.4); color: var(--perfectcamp-gray1); }
.theme-dark .circle-action-button:active							{ background-color: var(--perfectcamp-gray7); color: var(--perfectcamp-gray1); }
.theme-dark .filter-box												{ border-color: var(--perfectcamp-gray6); }
.theme-dark .item-floating-label									{ background-color: var(--perfectcamp-gray8) !important; color: var(--perfectcamp-gray5); }
.theme-dark .mention												{ background-color: var(--perfectcamp-green7); color: var(--perfectcamp-green2); }
.theme-dark .notification											{ background-color: rgba(30, 30, 30, 0.90); }
.theme-dark .notification-subtitle									{ color: var(--perfectcamp-gray2); }
.theme-dark .profile-sheet-modal .follow-button,
.theme-dark .popover-user .follow-button							{ background-color: var(--perfectcamp-gray6); color: var(--perfectcamp-gray3); }

.theme-dark .page-about .supporters .lnt div						{ background-image: url(/images/logos/lnt_black.png); filter: brightness(34%); }
.theme-dark .page-about .supporters .usfs img						{ filter: brightness(40%) grayscale(100%); }

.theme-dark .page-account .logins .account							{ color: var(--perfectcamp-gray5); border-color: var(--perfectcamp-gray5); }
.theme-dark .page-account .logins .active							{ color: var(--perfectcamp-gray2) !important; }
.theme-dark .page-account .account:hover							{ color: var(--perfectcamp-gray3); border-color: var(--perfectcamp-gray3); }
.theme-dark .page-account .alerts .paused .whistle					{ background-color: var(--perfectcamp-gray5); color: var(--perfectcamp-gray4); }
.theme-dark .page-account .alerts .text								{ background-color: var(--perfectcamp-gray6); color: var(--perfectcamp-text-color); }
.theme-dark .page-account .alerts .paused .text						{ color: var(--perfectcamp-gray4); }
.theme-dark .page-account .promo									{ color: var(--perfectcamp-gray5); }

.theme-dark .page-campground-overview .reviews .stars .filled		{ color: #ccb747; }
.theme-dark .page-campground-overview .reviews .stars .empty		{ color: var(--perfectcamp-gray6); }

.theme-dark .page-create-alert										{ color: var(--perfectcamp-gray3); }
.theme-dark .page-create-alert .days-of-week .button				{ background-color: rgba(0,0,0,.3); }
.theme-dark .page-create-alert .days-of-week .button:hover			{ background-color: var(--perfectcamp-green5); color: white; }
.theme-dark .page-create-alert .button-fill							{ background-color: var(--perfectcamp-green5) !important; color: white; }
.theme-dark .page-create-alert .button-prev							{ background-color: rgba(0,0,0,.6); text-shadow: none; box-shadow: 0 0 3px white; color: gray; }
.theme-dark .page-create-alert .button-prev:hover					{ color: var(--perfectcamp-green5); }
.theme-dark .page-create-alert .button-prev .icon					{ filter: none; }
.theme-dark .page-create-alert .item-after							{ color: var(--perfectcamp-green5); }
.theme-dark .page-create-alert .stepper								{ background-color: rgba(0,0,0,.5); }
.theme-dark .page-create-alert .examples .whistle					{ background-color: #78a8096e; }
.theme-dark .page-create-alert .examples .text						{ background-color: #78a80933; }
.theme-dark .page-create-alert .go-pro								{ background: none; color: var(--perfectcamp-gray3); text-shadow: none; }
.theme-dark .page-create-alert .tip									{ background-color: #182302; }

.theme-dark .page-discussions .left-nav .tags-of-interest .chip.new { background-color: var(--perfectcamp-gray7); }

.theme-dark .page-explore #search ::placeholder										{ color: var(--perfectcamp-gray5); }
.theme-dark .page-explore #search .result.selected									{ background-color: var(--perfectcamp-gray6); }
.theme-dark .page-explore .mapboxgl-popup-content									{ background-color: black; box-shadow: none; border-color: black; }
.theme-dark .page-home .launch										{ color: var(--perfectcamp-gray5); }

.theme-dark .page-message .list ul 									{ background-color: var(--perfectcamp-gray7); }
.theme-dark .page-messages .list li 								{ border-bottom: 1px solid var(--perfectcamp-gray5); }
.theme-dark .page-message .message-head 							{ background-color: var(--perfectcamp-gray7); border-color: black; }
.theme-dark .page-message .purchase-receipt .description			{ color: var(--perfectcamp-gray5); }
.theme-dark .page-message .purchase-receipt .line-item				{ border-color: var(--perfectcamp-gray5); }
.theme-dark .page-message .purchase-receipt .subscription-number	{ border-color: var(--perfectcamp-gray5); }
.theme-dark .page-message .message-head .menu-link:hover			{ background-color: var(--perfectcamp-gray6); color: var(--perfectcamp-gray3); }

.theme-dark .page-notifications .no-notifications					{ color: var(--perfectcamp-gray6); }
.theme-dark .page-notifications .notification-left .text strong		{ color: var(--perfectcamp-gray2); }

.theme-dark .page-points .points-history							{ background-color: black; }
.theme-dark .page-points td											{ border-bottom:  1px solid var(--perfectcamp-gray5); }

.theme-dark .page-purchase .pricing tr.total td						{ border-color: var(--perfectcamp-gray7); }
.theme-dark .page-purchase .pricing tr.plan td						{ border-color: var(--perfectcamp-gray7); }
.theme-dark .page-purchase .page-content .description 				{ color: var(--perfectcamp-gray4); }
.theme-dark .page-purchase #discountCode 							{ background-color: var(--perfectcamp-gray7); }
.theme-dark .page-purchase #discountCode::placeholder				{ color: var(--perfectcamp-gray5); }

.theme-dark .page-purchase2 .row-back								{ border-color: var(--perfectcamp-gray7); }
.theme-dark .page-purchase2 .form-fields .input						{ border-color: var(--perfectcamp-gray5); }

.theme-dark .page-user .user-header .tab-content 					{ border-color: var(--perfectcamp-gray6); }
.theme-dark .top-10-marshmallow .table-container					{ border-color: var(--perfectcamp-green7); }
.theme-dark .top-10-marshmallow td 									{ border-bottom-color: var(--perfectcamp-green8); }
.theme-dark .top-10-marshmallow tr:last-child td 					{ border-bottom: none; }
.theme-dark .top-10-marshmallow td:nth-child(1)						{ background-color: var(--perfectcamp-green7); }
.theme-dark .page-user .user-header .stats .label					{ color: var(--perfectcamp-gray5); }

.theme-dark .perfectcamp-border-button								{ border-color: var(--perfectcamp-gray4); color: var(--perfectcamp-gray4); }

.theme-dark .popover-emoji .categories								{ border-color: var(--perfectcamp-gray6); }
.theme-dark .popover-emoji .category.selected 						{ color: var(--perfectcamp-gray3); }
.theme-dark .popover-emoji .category:hover 							{ color: var(--perfectcamp-gray3); }
.theme-dark .popover-emoji .footer									{ background-color: var(--perfectcamp-gray7); border-color: var(--perfectcamp-gray6); }
.theme-dark .popover-emoji .bar .category-icons span:hover			{ background-color: black; }
.theme-dark .popover-emoji input[name=EmojiSearch] 					{ border-color: var(--perfectcamp-gray5); color: var(--perfectcamp-text-color); }
.theme-dark .popover-emoji-filter .popover-inner .emoji-div:hover	{ background-color: var(--perfectcamp-gray6); }
.theme-dark .popover-filters .count									{ color: var(--perfectcamp-gray5); }
.theme-dark .popover-filters .rating .stars							{ color: var(--perfectcamp-gray6); }
.theme-dark .popover-mention-filter .popover-inner .user-div:hover	{ background-color: var(--perfectcamp-gray6); }
.theme-dark .popover-profile .badge									{ background-color: var(--perfectcamp-gray5); }

.theme-dark .popup													{ background-color: var(--perfectcamp-gray7); color: var(--perfectcamp-gray3); }
.theme-dark .popup .editor-button:hover								{ background-color: black; color: var(--perfectcamp-gray3); }
.theme-dark .popup .title											{ color: var(--perfectcamp-gray3); }

.theme-dark .popup-campground-points .navbar 						{ background-color: var(--perfectcamp-gray7); }
.theme-dark .popup-campground-points .after-upload .uploaded-photo 	{ border-color: var(--perfectcamp-gray5); }
.theme-dark .popup-campground-points .after-upload .input-outline-box { border-color: var(--perfectcamp-gray5); }
.theme-dark .popup-campground-points .after-upload .input-outline-box:focus { border-color: var(--perfectcamp-green6); }
.theme-dark .popup-campground-points .after-upload .date-taken.active { border-color: var(--perfectcamp-green6); }
.theme-dark .popup-campground-points .icon-checkbox					{ --f7-checkbox-inactive-color: var(--perfectcamp-gray5); }

.theme-dark .popup-discussion-post .filter-box						{ border-color: var(--perfectcamp-gray3); }
.theme-dark .popup-discussion-post .thumbnails .delete				{ color: var(--perfectcamp-gray5); }
.theme-dark .popup-discussion-post .shortcuts .label				{ background-color: var(--perfectcamp-gray6); color: var(--perfectcamp-gray2); }


.theme-dark .popup-edit-tags .chip									{ color: var(--perfectcamp-gray3); --f7-chip-bg-color: var(--perfectcamp-gray6); }
.theme-dark .popup-edit-tags .chip.favorite							{ color: white; --f7-chip-bg-color: var(--perfectcamp-green5); }
.theme-dark .popup-edit-tags .chip-media							{ color: var(--perfectcamp-gray3); }
.theme-dark .popup-edit-tags .favorite .chip-media 					{ color: var(--perfectcamp-textcolor); }
.theme-dark .popup-edit-tags .category								{ color: var(--perfectcamp-gray3); }

.theme-dark .popover-emoji span:hover								{ background-color: var(--perfectcamp-gray5); }
.theme-dark .popover-emoji-filter .popover-inner .emoji-div:hover	{ background-color: var(--perfectcamp-gray5); }

.theme-dark .popup-points td										{ background-color: var(--perfectcamp-gray7); }
.theme-dark .popup-points .stripe									{ background-color: var(--perfectcamp-green5); }
.theme-dark .tooltip												{ background-color: rgba(var(--perfectcamp-gray6-rgb),.95); }
.theme-dark .upload-instructions									{ color: var(--perfectcamp-gray6); }

.swing-left-init 	{ animation: swing-left-init ease-in-out 1 forwards; animation-duration: .2s; }
.swing-left 		{ animation: swing-left ease-in-out 1 forwards; animation-duration: 1s; }
.swing-right-init 	{ animation: swing-right-init ease-in-out 1 forwards; animation-duration: .2s; }
.swing-right 		{ animation: swing-right ease-in-out 1 forwards; animation-duration: 1s; }
.slide-in-left		{ animation: slide-in-left; animation-duration: .5s; animation-fill-mode: forwards; }
.bounce 			{ animation-duration: 0.75s; animation-name: bounce; }


@keyframes swing-left-init {
	from	{ transform: rotate(0deg); animation-timing-function: ease-in-out; }
	to 		{ transform: rotate(10deg); animation-timing-function: ease-in-out; }
}
@keyframes swing-right-init {
	from	{ transform: rotate(0deg); animation-timing-function: ease-in-out; }
	to 		{ transform: rotate(-10deg); animation-timing-function: ease-in-out; }
}

@keyframes swing-left {
	0% 		{ transform: rotate(10deg); animation-timing-function: ease-out; }
	20% 	{ transform: rotate(-6deg); animation-timing-function: ease-in-out; }
	60% 	{ transform: rotate(2deg); animation-timing-function: ease-in-out; }
	100% 	{ transform: rotate(0deg); animation-timing-function: ease-in-out; }
}
@keyframes swing-right {
	0% 		{ transform: rotate(-10deg); animation-timing-function: ease-out; }
	20% 	{ transform: rotate(6deg); animation-timing-function: ease-in-out; }
	60% 	{ transform: rotate(-2deg); animation-timing-function: ease-in-out; }
	100% 	{ transform: rotate(0deg); animation-timing-function: ease-in-out; }
}
@keyframes slide-in-left {
  from 		{ transform: translate(-110%, 0); animation-timing-function: ease-out; }
  to 		{ transform: translate(0%, 0); animation-timing-function: ease-out; }
}

@keyframes bounce {
	from,
	20%,
	40%,
	60%,
	80%,
	to 		{ animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  
	0% 		{ transform: scale3d(0.3, 0.3, 0.3); }
	20% 	{ transform: scale3d(1.1, 1.1, 1.1); }
  	40% 	{ transform: scale3d(0.9, 0.9, 0.9); }
	60% 	{ transform: scale3d(1.03, 1.03, 1.03); }
	80% 	{ transform: scale3d(0.97, 0.97, 0.97); }
	to 		{ transform: scale3d(1, 1, 1); }
}
