/* --------------- Text attributes ---------------------- */
body, p, label { color: #666666; font-size: 20px; font-family: 'latoregular'; }
h1 { font-family: 'bd_garmonderegular'; color: #103968; font-size: 45px; text-align: left; }
.page-node-type-banquet-page h1, .page-node-type-banquet-main-page h1 { color: #073b37; }
.page-node-type-camp-resort-main-page h1, .page-node-type-camp-resort-service h1 { font-family: 'HoboBT-Regular'; }
h2 { font-family: 'bd_garmonderegular'; color: #103968; font-size: 35px; }
.page-node-type-camp-resort-main-page h2, .page-node-type-camp-resort-service h2 { font-family: 'HoboBT-Regular'; color: #103968; font-size: 30px; }
.page-node-type-banquet-main-page h2, .page-node-type-banquet-page h2 { color: #073b37; }
footer h2{color:#fff !important;}
.page-node-type-banquet-page .region-content h2 { margin-top: 60px; }
h3 { font-family: 'bd_garmonderegular'; color: #103968; font-size: 30px; font-weight: bold; text-align: left; }
.page-node-type-camp-resort-main-page h3 { color: #103968; }
.page-node-type-banquet-main-page h3, .page-node-type-banquet-page h3 { color: #073b37; }
.page-node-type-basic-page-with-two-content-colu h3 { font-family: 'latoregular'; font-size: 20px; }
p { margin-bottom: 1.2rem; }
.thinbox { border: 1px solid #cccccc; border-radius: 5px; margin: 30px auto; display: block; max-width: 360px; padding: 25px; }
.thinbox:hover { border-color: #073b37; }
a { color: inherit; }
a:hover { color: unset; }

.row { max-width: 65.5rem; }
.full.row { max-width: 100%; }
.wide.row { max-width: 92.5rem; }
.no-padding { padding: 0; }
.no-padding-left { padding-left: 0; }
.no-padding-right { padding-right: 0; }
.fat-padding-left { padding-left: 30px; }
.fat-padding-right { padding-right: 30px; }
.clearboth { clear: both; }
.scrolled .sticky-on-scroll { position: fixed; top: 66px; width: 100%; z-index: 101; }
.shrink { padding:0 20%; }
.anchorfix185 { padding-top: 185px; margin-top: -185px; }
.hide { display: none; }
table.column-2 tr { vertical-align: top; }
table.column-2 td { width: 50%; }

section.black { background-color: #000; }
section.black * { color: #fff; }
section.blue { background-color: #103968; }
section.blue * { color: #fff; }
section.green { background-color: #073b37; }
section.green * { color: #fff; }
section.grey { background-color: #ccc; }
section.grey * { color: #073b37; }
section.banner-bottom { position: relative; z-index: 200; width: 100%; }

.button { color: #fff; background-color: #103968; font-family: 'latoblack'; font-size: 20px; border-radius: 7px; padding: 12px 45px; }
a.green-button { display: inline-flex; background-color: #073b37; color: #fff; font-family: 'latoblack'; font-size: 20px; border-radius: 7px; padding: 12px 45px; margin: 5px; }
.blue.button { background-color: #103968; }
.blue.button a { color: #fff; }
section.blue .blue.button, .blue.button.invert { border: 2px solid #fff; }
section.blue .blue.button:hover, .blue.button.invert:hover { background-color: #fff; color: #103968; }
.green.button { background-color: #073b37; }
.black.button { background-color: #000; }
.grey.button { background-color: grey; color: #fff; }

.node__content img.align-left { margin: 0 15px 15px 0; }
.page-node-type-banquet-page .node__content img.align-left { max-width: 40%; clear: left; }
.field--name-field-h { margin-bottom: 30px; }

.page-node-type-camp-resort-service .node__content strong,
.page-node-type-camp-resort-page-with-sidebar strong { color: #103968; }
.page-node-type-banquet-page .node__content strong,
.page-node-type-banquet-page .node__content strong,
.page-node-type-banquet-page-with-sidebar strong { color: #073b37; }
/* --------------- Header ------------------------------- */
header { background-color: #000; border-bottom: 2px solid #fff; position: fixed; width: 100%; z-index: 100; }
header * { color: #fff; font-family: 'latoregular'; font-size: 22px; }
header p { margin: 0; }

.region.region-header-left { text-align: left; }
.region.region-header-right { text-align: right; }

/* --------------- Main Menu ---------------------------- */
.sf-accordion-toggle { text-align: center; }
#block-waldenwoods-main-menu ul, ul.sf-menu { text-align: center; justify-content: space-around; display: flex; margin: 0; }
#block-waldenwoods-main-menu ul li, ul.sf-menu li { display: inline-block; }
#block-waldenwoods-main-menu li.menu-item { padding: 0; }
#block-waldenwoods-main-menu ul a,
ul.sf-menu a, ul.sf-menu span.nolink { display: inline-block; padding: 22px 2vw; }
ul.sf-menu .sf-with-ul { padding-right: 2vw; }
.page-node-type-splash-page  #block-waldenwoods-main-menu ul a { padding: 25px 2vw; }
#block-waldenwoods-main-menu ul a:hover, ul.sf-menu a:hover, ul.sf-menu span.nolink:hover
 { background-color: #103968; }
.page-node-type-banquet-main-page #block-waldenwoods-main-menu ul a:hover,
.page-node-type-banquet-main-page ul.sf-menu a:hover, .page-node-type-banquet-main-page ul.sf-menu span.nolink:hover { background-color: #073b37; }
.page-node-type-splash-page #block-waldenwoods-main-menu ul a:hover
 { background-color: #0e403c; }
#block-waldenwoods-main-menu ul.menu a.is-active,
ul.sf-menu a.is-active { color: #fff; }
ul.sf-menu .sf-sub-indicator:after { display: none; }
ul.sf-menu ul { background-color: #000; text-align: left; }
ul.sf-menu li:hover > ul, ul.sf-menu li.sfHover > ul { top: 65px; }

/* --------------- Banner ------------------------------- */
.region-banner { margin-top: 65px; }
.region-banner p { margin: 0; }

/* --------------- Header Bottom Regions ---------------- */
#block-campresortleft ul, #block-banquetleft ul { text-align: center; justify-content: space-around; margin: 0; }
#block-campresortleft ul li, #block-banquetleft ul li { display: inline-block; }
#block-campresortleft ul li span, #block-banquetleft ul li span { display: none; }
#block-campresortleft li.menu-item, #block-banquetleft li.menu-item { padding: 0; }
#block-campresortleft ul a, #block-banquetleft ul a { display: inline-block; padding: 35px 1vw; }
#block-campresortleft ul a:hover { background-color: #103968; }
#block-banquetleft ul a:hover { background-color: #073b37; }
#block-campresortleft ul.menu a.is-active { color: #fff; background-color: #103968; }
#block-banquetleft ul.menu a.is-active { color: #fff; background-color: #073b37; }
#block-campresortleft .field--name-field-image, #block-banquetleft .field--name-field-image { position: relative; top: -100px; height: 0; z-index: 100; }
.scrolled #block-campresortleft .field--name-field-image, .scrolled #block-banquetleft .field--name-field-image { max-width: 100px;
    top: 5px; }
/* .page-node-type-camp-resort-service #block-campresortleft .field--name-field-image, .page-node-type-banquet-page #block-banquetleft .field--name-field-image { top: -145px; }
 #block-campresortleft ul li.menu-item--expanded ul, #block-banquetleft ul li.menu-item--expanded ul { position: absolute; background-color: #103968; width: 100%; left: 0; }
#block-banquetleft ul li.menu-item--expanded ul { background-color: #073b37; }
#block-campresortleft ul li.menu-item--expanded ul li, #block-banquetleft ul li.menu-item--expanded ul li { display: inline-block; }
#block-campresortleft ul li.menu-item--expanded ul a:hover, #block-banquetleft ul li.menu-item--expanded ul a:hover { background-color: #000; } */

.region-mobbanbot-left { position: relative; height: 0; top: -9vw; }

/* --------------- Hamb icons --------------- */
.page-node-type-splash-page #hamb-icons { position: relative; }
#hamb-icons .mobile-nav-toggle.right { position: absolute; left: -25px; top: 45px; }
#hamb-icons .mobile-nav-toggle.left { position: absolute; right: -25px; top: 45px; }
#hamb-icons .mobile-nav-toggle a.button { padding: 0; border: 0; margin: 0; cursor: pointer; }
#hamb-icons .mobile-nav-toggle a.button span,
#hamb-icons .mobile-nav-toggle a.button span::before,
#hamb-icons .mobile-nav-toggle a.button span::after {
	content: ""; display: block; height: 8px; width: 65px; border-radius: 3px; background-color: #fff; }
#hamb-icons .mobile-nav-toggle a.button span::before { position: relative; top: -15px; }
#hamb-icons .mobile-nav-toggle a.button span::after { position: relative; top: 7px; }
#hamb-icons.single { height: 60px; }
#hamb-icons.single .mobile-nav-toggle { text-align: right; padding-top: 13px; }

/* --------------- Splash page content ------------------ */
.page-node-type-splash-page main { padding: 45px 65px; }
.page-node-type-splash-page .region-content { margin-top: 75px; position: relative; }
#block-views-block-view-site-selector-block-1 .views-row { text-align: center; }
#block-views-block-view-site-selector-block-1 .views-row * { color: #fff; }
#block-views-block-view-site-selector-block-1 .views-field-field-logo { margin-bottom: 20px; }
#block-views-block-view-site-selector-block-1 .views-field-field-phone,
#block-views-block-view-site-selector-block-1 .views-field-field-email,
#block-views-block-view-site-selector-block-1 .views-field-field-email-list {
	font-family: 'latobold'; font-weight: bold; text-shadow: 0px 0px 10px #000; }
#block-views-block-view-site-selector-block-1 .views-field-field-phone { font-size: 44px; }
#block-views-block-view-site-selector-block-1 .views-field-field-email { font-size: 30px; }
#block-views-block-view-site-selector-block-1 .views-field-field-email-list { font-size: 26px; margin-bottom: 40px; }
#block-views-block-view-site-selector-block-1 .views-field-field-page-url a { font-family: 'latoblack'; font-size: 25px;
background-color: #0e403c; border: 4px solid #fff; border-radius: 13px; padding: 8px 45px; 
-webkit-box-shadow: 0px -1px 10px 5px rgba(0,0,0,0.75);
-moz-box-shadow: 0px -1px 10px 5px rgba(0,0,0,0.75);
box-shadow: 0px 0px 15px 8px rgba(0,0,0,0.75);}
#block-views-block-view-site-selector-block-1 .views-row:nth-of-type(2) .views-field-field-page-url a { background-color: #173e6c; }

/* --------------- Splash Page Banner region ----------- */
.region-banner-backg { margin-top: 65px; }
#block-frontpagebannerbackground { position: relative; z-index: 0; height: 0; }
#block-frontpagebannerbackground img { width: auto; height: 820px; position: fixed; max-width: unset; }

/* --------------- Main content region ----------------- */
main { padding: 100px 0 30px; text-align: justify; }
.page-node-type-page main, .page-node-type-basic-page-with-two-content-colu main { padding-top: 165px; }
main a { color: #103968; }
main a:hover { text-decoration: underline; }

/* --------------- Call Us block ------------------------------ */
.promotion.block { position: relative; margin-top: 35px; }
.promotion.block .field--name-field-background-image { position: absolute; z-index: 1; top: -35px; }
.promotion.block .field--name-field-background-image img { width: 100%; }
.promotion.block .field--name-field-first-line-text,
.promotion.block .field--name-field-second-line-text,
.promotion.block .field--name-field-third-line-text { 
	color: #fff; font-size: 34px; font-family: 'latoblack'; text-align: center; position: relative; z-index: 1; max-width: 50%; }
.promotion.block .field--name-field-link-button { text-align: center; position: relative; z-index: 1; max-width: 50%; margin-top: 54px;  }
.promotion.block .field--name-field-link-button a { 
	border: 2px solid #fff; color: #fff; font-family: 'latoblack'; font-size: 20px; border-radius: 7px; padding: 12px 45px; }

/* --------------- Secondary & Tertiary content region - */
.region-secondary-content, .region-tertiary-content { padding: 100px 0; }
.page-node-type-banquet-main-page .region-secondary-content { padding-top: 0; padding-bottom: 15px; display: inline-block;}
.page-node-type-banquet-main-page main { padding-bottom: 50px; }
.region-secondary-content h2, .region-tertiary-content h2 { margin-bottom: 30px; }
.region-secondary-content p, .region-tertiary-content p { text-align: justify; }
.page-node-type-camp-resort-service .region-secondary-content { padding-top:0; }

/* --------------- Camp Resort Services ---------------- */
.camp-service-list .views-row { margin-bottom: 75px; }
.camp-service-list.compact .views-row { margin-bottom: 30px; }
.camp-service-list .camp-resort-service.teaser { position: relative; }
.camp-service-list.compact .field--name-field-h { margin-bottom: 0; }
.camp-service-list .description-wrapper { 
	position: absolute; top: 3vw; left: 6vw; background-color: #000; opacity: 0.8; padding: 10px; max-width: 45%; border-radius: 8px; }
.camp-service-list.compact .description-wrapper { position: unset; max-width: 100%; border-top-left-radius: 0; border-top-right-radius: 0; }
.camp-service-list .description-wrapper h2 { font-size: 50px; color: #fff; text-align: center; }
.camp-service-list .description-wrapper .field--name-body { color: #fff; font-size: 16px; text-align: center; }
.camp-service-list .more-button-wrapper { text-align: center; margin-top: 20px; }
.camp-service-list .blue.button { border: 2px solid #fff; }

/* --------------- Camp Resort Banner ------------------ */
#block-campingresortpagesbanner img,
.view-camp-resort-pages-header .views-field-field-h img { width: 100%; }

/* --------------- Free Camping Graphic ---------------- */
#block-freecampingbannergraphic { position: absolute; top: 30px; right: 0; max-width: 50%; }

/* --------------- Banquet Banner ---------------------- */
#block-banquetpagesbanner img { width: 100%; }

/* --------------- Banquet pages content --------------- */
.page-node-type-banquet-page tbody tr:nth-child(even) { background-color: transparent; }

/* --------------- Banquet teasers --------------------- */
.banquet-page.teaser { position:relative; }
.banquet-page.teaser img { width:80%; }
.banquet-page.teaser .content-description { width: 50%; position: absolute; top: 0; text-align: center; }
.banquet-page.teaser .img-overlay { position: absolute; top:0; width:100%; bottom: 0;
	background-image: linear-gradient(to right, #073b37,#073b37 40%, transparent 60%, transparent); }
.content-description { color: #fff !important; text-align: left; line-height: 1; padding: 10px; }
.banquet-page.teaser .content-description h2{ line-height: 1; margin: 0; }
.banquet-page.teaser .content-description .more-button-wrapper a { text-decoration: underline; }
.banquet-page.teaser .content-description h2 { text-align:center; }
.banquet-page.teaser .content-description h2 span { font-size: 3.1rem; color: #fff; }
.banquet-page.teaser .field-image > div:first-child { text-align: right;}

/* --------------- Camp Resort Subpages Anchor Links --- */
.view-camp-resort-subpages-anchor-links { text-align: center; }
.view-camp-resort-subpages-anchor-links .views-row { display: inline-block; }
.camp-service-list .view-camp-resort-subpages h2 { color: #103968; }
.camp-service-list .view-camp-resort-subpages .camp-resort-service.teaser{ border: 5px solid #103968; border-radius: 7px; }
.camp-service-list .view-camp-resort-subpages .description-wrapper { background-color: #fff; }


/* --------------- Leave Nothing to Chance block ------- */
#block-leavenothingtochance { background-image: url('../images/weddingplace.jpg'); padding: 100px 0 50px; background-repeat-y: no-repeat; }
#block-leavenothingtochance * { color: #fff; }
#block-leavenothingtochance h2 { font-family: 'latobold'; font-size: 77px; text-align: center; }
#block-leavenothingtochance .field--name-body { max-width: 1190px; display: block; margin: auto; }
#block-leavenothingtochance .field--name-body p { font-family: 'latobold'; font-size: 44px; line-height: 1; }
#block-leavenothingtochance .black.button { margin-top: 50px; }

/* --------------- Doordash block ---------------------- */
#block-bellringerdoordash { max-width: 262px; padding: 0 15px; }

/* --------------- Featured Banquet Pages block -------- */
.view-featured-banquet-pages .views-row { margin-bottom: 60px; position: relative; }

.banquet-page.teaser { text-align: center; }
.banquet-page.teaser h2 { font-size: 55px; font-weight: bold; margin: 30px 0 0; }
.banquet-page.teaser .more-button-wrapper { margin-top: 15px; }
.banquet-page.teaser .field-body { font-size: 19px; line-height: 1.3; margin-bottom: 45px; font-family: 'latobold'; }

.view-featured-banquet-pages .description-wrapper {     position: absolute; left: 4vw; top: 8vw; max-width: 350px; background-color: #fff; opacity: 0.8; border-radius: 20px; padding: 10px; }

/* --------------- Middle Content Divider region ------- */
.page-node-type-banquet-main-page .region-middle-content-divider { padding: 15px 100px; margin-bottom: 100px; }
.page-node-type-camp-resort-main-page .region-middle-content-divider { padding-top: 30px; }

/* --------------- Our Awards block -------------------- */
#block-views-block-award-badges-block-1 { text-align: center; margin-bottom: 50px; }
#block-views-block-award-badges-block-1 h2 { text-align: center; font-family: 'latobold'; font-size: 45px; }
.view-award-badges { display: inline-block; }

/* --------------- Free Consultation form -------------- */
.block-webform { text-align: center; }
.block-webform h2 { font-family: 'latobold'; font-size: 63px; }
.block-webform .form-item-header-markup { font-family: 'bd_garmonderegular'; font-size: 63px; margin-bottom: 10px; }
#edit-container { border: 1px solid #fff; border-radius: 7px; padding: 35px; max-width: 55%; display: inline-block; }
.block-webform .form-item:nth-of-type(1) { margin-top: 0; }
.webform-element--title-inline label { max-width: 15%; clear: both; padding-right: 0; }
.webform-element--title-inline input, 
.webform-element--title-inline select { max-width: 85%; float: right; border-radius: 5px; height: 1.75rem; }
.webform-element--title-inline input.form-radio { height: unset; }
.green input, .green textarea, .green input:focus, .green textarea:focus { background-color: #073b37; border: 1px solid #fff; }
.form-type-textarea label { clear: both; text-align: left; }
.block-webform .form-item:last-of-type { margin-bottom: 0; }
label, input.form-submit, span.fieldset-legend { font-family: 'latobold'; font-size: 18px; }
input.form-submit { padding: 15px 60px; border-radius: 10px; }
.green input.form-submit { border-width: 2px; }
.block-webform .form-item-footer-markup { font-family: 'bd_garmonderegular'; font-size: 45px; position: relative; top: 60px; }
.webform-submission-schedule-free-consultation-form input.form-submit { position: relative; top: -125px; }
.form-composite.webform-fieldset--title-inline legend { margin-bottom: 50px; width: 40%; }  

/* --------------- Free Consultation form -------------- */
#block-mailphone p { font-family: 'bd_garmonderegular'; font-size: 30px; text-align: center; }

/* --------------- Content Bottom Region  -------------- */
.region-bottom-content { padding: 50px 0; }
.page-node-type-banquet-main-page .region-bottom-content { padding-bottom: 0; }
.region-bottom-content h2 { text-align: center; font-size: 60px; }

/* --------------- Promotion Region  ------------------- */
.region-promotion { height: 286px; }

/* --------------- Off Canvas Menus -------------------- */
.off-canvas.position-left { background-color: #0e403c; color: #fff; padding-top: 125px; }
.off-canvas.position-right { background-color: #173e6c; color: #fff; padding-top: 125px; }
.page-node-type-banquet-page .off-canvas.position-right, .page-node-type-banquet-main-page .off-canvas.position-right { background-color: #0e403c; }
.off-canvas.position-left ul.menu li.menu-item, .off-canvas.position-right ul.menu li.menu-item {
display: block; width: 100%; }
.off-canvas .field--name-field-image, .off-canvas span { display: none; }
.off-canvas .menu--extended-waldenwoods-family ul.menu { margin-left: 0.5rem; }
.off-canvas .menu--extended-waldenwoods-family a { padding: 10px 5px; }

/* --------------- Footer ------------------------------ */
footer { background-color: #000; padding: 45px 60px; position: relative; }
footer * { color: #e6e6e6; font-family: 'latoregular'; font-size: 14px; line-height: 1.1; }
footer h2, .page-node-type-camp-resort-main-page footer h2, .page-node-type-camp-resort-service footer h2 { color: #fff; border-bottom: 1px solid #fff; padding-bottom: 5px; font-family: 'latobold'; font-size: 16px; }
#block-mailingaddress p, #block-physicaladress p { margin-bottom: 0; }
.region-footer-top { text-align: center; }
.region-footer-3 { text-align: right; }
#block-copyright { padding: 25px 0 10px; }
#block-copyright p { font-size: 12px; text-align: center; }
#block-extendedwaldenwoodsfamily ul { margin-left: 0; }
#block-extendedwaldenwoodsfamily li { display: inline-table; width: 50%; float: left; }
#block-extendedwaldenwoodsfamily li:nth-of-type(even) { text-align: right; }
#block-extendedwaldenwoodsfamily a { padding: 0; }
#block-extendedwaldenwoodsfamily a.is-active { color: #fff; }
.region-footer-mid-left #block-extendedwaldenwoodsfamily .field--name-field-image { display: none; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 a { color: #fff; padding: 20px; height: fit-content; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 a.bellringer { color: transparent; position: absolute; z-index: 101; left: 0; top: -72px; padding: 80px; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 .field--name-field-image { position: relative; top: -80px; right: 15px; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 ul.menu { background-color: #103968; height: 60px; margin-left: 0; z-index: 100; justify-content: space-around; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 li { display: inline-flex; }
.region-banner-bottom #block-extendedwaldenwoodsfamily-2 li.menu-item { padding-top: 0; height: fit-content; position: relative; }
/* - Privacy Policy block - */
#block-privacypolicy { text-align: right; padding-top: 45px; }
#block-privacypolicy p { margin-bottom: 0; }
#block-privacypolicy a { color: #fff; font-family: 'latobold'; font-size: 16px; }



/* --------------- About Us page ----------------------- */
.node-10 h1 { margin-bottom: 30px; }

/* --------------- Join Our Team page ----------------------- */
.node-12 .field--name-body { border-bottom: 2px solid #103968; margin-bottom: 30px; }
#block-views-block-current-openings-block-1 { float: left; width: 50%; padding: 15px 15px 79px; }
#block-seasonalpositionsavailable { float: right; width: 50%; padding: 15px; }
#block-applications { clear: both; }

/* --------------- Location and Hours page ------------- */
.node-11 h3 { line-height: 1; margin-bottom: 0; font-size: 20px; }

/* --------------- Contact Us page --------------------- */
.view-staff-members .views-row { min-height: 225px; margin-bottom: 30px; }
.view-staff-members .columns:last-child:not(:first-child) { float: left; }
.view-staff-members .views-field-title { color: #103968; }
.view-staff-members .views-field-field-position,
.view-staff-members .views-field-field-phone-number,
.view-staff-members .views-field-field-fax,
.view-staff-members .views-field-field-email { font-size: 16px; text-align: left; }
.view-staff-members .views-field-field-email { overflow-wrap: break-word; word-wrap: break-word; }

#block-webform-2 select#edit-department { padding: 0; height: 26px; }

/* --------------- Webforms ---------------------------- */
.half-width { width: 49.5%; }
.half-width.left { margin-right: 0.5%; float: left; }
.half-width.right { margin-left: 0.5%; float: right; }
.two-columns .webform-element--title-inline label { max-width: 40%; }
.two-columns .webform-element--title-inline input,
.two-columns .webform-element--title-inline select { max-width: 60%; }
.page-node-type-special-offer-page .form-item { margin: 0; }
.page-node-type-special-offer-page .webform-element--title-inline input,
.page-node-type-special-offer-page .webform-element--title-inline select { background-color: #7fb6ff; color: #fff; }
.page-node-type-special-offer-page .webform-element--title-inline select { padding: 1px 5px; }
.page-node-type-special-offer-page input.form-submit { background-color: #7fb6ff; }
.page-node-type-special-offer-page .region-tertiary-content { position: relative; z-index: -100; margin-top: -75px; }

/* --------------- Historial Documents ----------------- */
.block.sidebar-top-right { 
	max-width: 360px; min-width: 360px; float: right; margin: 0 0 15px 15px; padding: 10px 5px 10px 10px;
	position: absolute; right: 15px; top: 160px; border-radius: 7px; }
.page-node-type-page .block.sidebar-top-right,
.page-node-type-basic-page-with-two-content-colu .block.sidebar-top-right { background-color: #999999; }
.page-node-type-camp-resort-service .block.sidebar-top-right { background-color: #103968; top: 920px; }
.page-node-type-banquet-page .block.sidebar-top-right { background-color: #073b37; top: 920px; }
#block-views-block-historical-documents-block-1 { top: 8vw; }
.block.sidebar-top-right p, .block.sidebar-top-right a { color: #fff; }
.block.sidebar-top-right h2 { text-align: center; color: #fff; }
.block-views-blockhistorical-documents-block-1 .views-row { padding-bottom: 5px; margin-bottom: 5px; }
.block-views-blockhistorical-documents-block-1 .views-row:last-of-type { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.block-views-blockhistorical-documents-block-1 .columns:last-child:not(:first-child) { float: left; }

/* .block-views-blockhistorical-documents-block-1 .views-row { margin-bottom: 30px; } */

/* --------------- Activities Calendar ----------------- */
.view-activities-calendar .views-row { margin: 15px 0; }
.view-activities-calendar .views-field-field-activi,
.view-activities-calendar .views-field-title { text-align: center; }


/* --------------- Accomodations ----------------------- */
.block.sidebar-top-right.block-views-blockaccomodations-block-2 { padding: 15px; }

.view-accomodations.view-display-id-block_1 .views-row { display: inline-block; border-bottom: 10px solid #103968; margin-top: 30px; padding-bottom: 15px; }
.view-accomodations.view-display-id-block_1 .views-row:last-of-type { border-bottom: none; }
.view-accomodations.view-display-id-block_1 .columns.left { border-right: 1px solid #103968; }
.view-accomodations.view-display-id-block_1 .field--name-field-image { margin-bottom: 15px; }

#block-bookcottagebutton { margin: 45px 0 0; }

/* --------------- Sidebar ----------------------------- */
.region-sidebar { padding: 100px 0; }

/* --------------- Banquet pages sidebar --------------- */
.page-node-type-banquet-page .block.sidebar-top-right { padding-top: 15px; }
.page-node-type-banquet-page .block.sidebar-top-right h2 {
font-size: 30px; margin: 15px 0 20px; line-height: 1; font-family: 'bd_garmonderegular'; }
.page-node-type-banquet-page .block.sidebar-top-right .form-item-header,
.page-node-type-banquet-page .block.sidebar-top-right .form-type-webform-markup {
	font-size: 16px; line-height: 1; color: #fff; }
.page-node-type-banquet-page .block.sidebar-top-right input,
.page-node-type-banquet-page .block.sidebar-top-right input:focus,
.page-node-type-banquet-page .block.sidebar-top-right textarea,
.page-node-type-banquet-page .block.sidebar-top-right textarea:focus { 
background-color: #073b37; border: 1px solid #fff; color: #fff; }

.block.sidebar-top-right.second { top: 1500px; }
.block.sidebar-top-right.white { background-color: #fff; }


/* --------------- Request Info form ------------------- */
.region-bottom-content .webform-submission-request-info-schedule-tour-form { max-width: 510px; display: block; margin: 0 auto; }
.region-bottom-content .webform-submission-request-info-schedule-tour-form .form-item-header,
.region-bottom-content .webform-submission-request-info-schedule-tour-form .form-type-webform-markup { 
	font-size: 16px; line-height: 1; color: #fff; }


/* --------------- Downloadable Maps ------------------- */
.view-downloadable-maps .views-field-title { text-align: center; }
.view-downloadable-maps a.button { display: block; }

/* --------------- Gallery ----------------------------- */
.view-gallery-images { display: inline-block; }
.view-gallery-images .views-row { margin-bottom: 15px; }
.view-gallery-images .columns:last-child:not(:first-child) { float: left; }
.view-gallery-images .views-field-field-image { text-align: center; }
.view-gallery-images .views-field-field-image img { border: 1px solid #103968; }
.page-node-type-banquet-page .view-gallery-images .views-field-field-image { text-align: center; }
.page-node-type-banquet-page .view-gallery-images .views-field-field-image img { border: 3px solid #073b37; border-radius: 3px; }

.view-gallery-images .flexslider ol li { margin-bottom: 1vw; }
.view-gallery-images .flexslider .field-content { padding: 0 0.5%; }
.view-gallery-images .flexslider .flex-control-thumbs li { width: 24%; margin: 0 0.5% 1vw; }
.view-gallery-images .flexslider .flex-direction-nav a { background-color: #fff; border-radius: 5px; width: 60px; height: 75px; margin: 0; padding: 0 5px; font-size: 12px; text-align: center; }
.view-gallery-images .flexslider .flex-direction-nav a:hover { text-decoration: none; }
.view-gallery-images .flexslider .flex-direction-nav a:before { height: 40px; }

/* --------------- Amenities page ---------------------- */
.node-97 #list-wrapper p { text-align: left; line-height: 1; }
#list-wrapper p strong { font-size: 16px; }

/* --------------- Special Offer page ------------------ */
.page-node-type-special-offer-page #titles-wrapper {
	text-align: center; padding: 30px 0; margin-bottom: 30px; 
	background-image: linear-gradient(to right, #5066ad, #003189);
}
.page-node-type-special-offer-page #titles-wrapper h1 { 
	color: #fff; font-family: 'HoboBT-Regular'; text-transform: uppercase; text-align: center; margin-bottom: 0; }
.page-node-type-special-offer-page #titles-wrapper h2 { 
	text-transform: uppercase; font-family: 'latolight'; font-size: 80px; color: #fff; line-height: 0.8; }
.page-node-type-special-offer-page main { padding-bottom: 15px; }
.page-node-type-special-offer-page .node__content { max-width: 65rem; display: block; margin: auto; }
.page-node-type-special-offer-page .region-secondary-content,
.page-node-type-special-offer-page .region-tertiary-content { padding: 0; }

.page-node-type-special-offer-page input.form-radio { float: left; position: relative; top: 7px; margin-right: 7px; }
.page-node-type-special-offer-page label.option,
.page-node-type-special-offer-page [type=checkbox]+label, [type=radio]+label { display: table-cell; }

/* --------------- Booking Calendar -------------------- */
#availability-calendar .slot { margin: 5px; min-width: 175px; }
#availability-calendar span.date { width: 100px; display: inline-block; }
#availability-calendar span.no-slots { font-size: 14px; font-weight: bold; display: inline-block; margin: 15px; }
#availability-calendar span.number-of-slots { font-size: 12px; }

/* --------------- Popup Window ----------------------- */
.spb-popup-main-wrapper { width: 480px !important; top: 25%; padding: 0; border: none; }
.spb-popup-main-wrapper::after { content: "."; position: absolute; top: 0; left: 480px; width: 327px;
background: url(../images/splash_ad_right.jpg); height: -webkit-fill-available; background-repeat-y: no-repeat; background-size: contain; }
.spb_center { margin-left: -403px; }
.spb_center .block-webform { background-color: #103968; padding: 30px; display: inline-block; }
.spb_center .block-webform h2 { font-size: 34px; line-height: 1.1; color: #fff; }
.spb_center .block-webform h3 { color: #fff; font-size: 40px; font-family: 'latolight'; line-height: 1.1; }
.spb_center .block-webform label { color: #fff; }
.spb_center .block-webform input { background-color: #7fb6ff; color: #fff; border: none; border-radius: 0; }
.spb_center .block-webform .form-item.form-type-checkbox { margin: 0; height: 30px; }
.webform-element--title-inline input { max-width: 70%; }
.longlabel.webform-element--title-inline label { max-width: 30%; }
.longlabel.webform-element--title-inline input { max-width: 50%; }
.spb-popup-main-wrapper .form-item-footer-description { display: inline-block; width: 50%; }
.spb-popup-main-wrapper .form-item-footer-description p { color: #fff; line-height: 1.2; text-align: left; font-size: 14px }
.spb-popup-main-wrapper .form-actions { width: 50%; float: right; }
.spb-popup-main-wrapper .form-actions input.form-submit { width: 100%; color: #000; text-transform: uppercase; padding: 15px 0; font-size: 25px; margin-bottom: 0; }
.spb_close { position: relative; right: -327px; }

/* --------------- Wedding Planner ----------------------- */
.webform-submission-wedding-planner-form .form-item-cromaine-wedding-hall { max-width: 49%; float: left; }
.webform-submission-wedding-planner-form .form-item-lakeview-tented-wedding { max-width: 49%; float: right; }
.webform-submission-wedding-planner-form  input { max-width: unset; float: unset; height: unset; }
.webform-submission-wedding-planner-form  label { max-width: unset; }
.webform-submission-wedding-planner-form .webform-fieldset--title-inline legend { margin-bottom: 0; width: 100%; float: unset; }
.webform-submission-wedding-planner-form [type=radio]+label { display: inline-block; }
.webform-submission-wedding-planner-form #edit-questions input.form-number { max-width: 150px; }
.webform-submission-wedding-planner-form #edit-contact-information input.form-text,
.webform-submission-wedding-planner-form #edit-contact-information select { max-width: 49%; float: left; margin-right: 1%; height: 42px; }
.webform-submission-wedding-planner-form #edit-contact-information fieldset { clear: both; }

/* --------------- Testimonials -------------------------- */
.view-testimonials .view-header { margin-bottom: 15px; }
.view-testimonials .views-field-field-stars { display: inline-block; width: 100%; }
.view-testimonials .views-field-field-stars .rate-image { float: right; }
.view-testimonials .views-field-title,
.view-testimonials .views-field-field-highlighted-first-sentence { font-size: 16px; }

/* --------------- Other Wedding Services block ---------- */
#block-otherweddingservices a.button { display: inline-block; width: 24%; padding: 12px; }

/* --------------- Bellringer ---------------------------- */
.view-bellringer-menus { margin-bottom: 30px; display: grid; }
.view-bellringer-menus a.blue.button { width: 100%; padding: 12px 15px; display: block; }

/* --------------- Status Messages ----------------------- */
.page-node-type-camp-resort-main-page .messages--status,
.page-node-type-camp-resort-service .messages--status,
.page-node-type-special-offer-page .messages--status {
	color: #fff; border-color: #103968; background-color: #258dad; background-image: none; 
	box-shadow: -8px 0 0 #103968; margin-right: 30px 0;
}

/* ---------------- Garden Gnome player ------------------ */


@media only screen and (min-width: 1920px) {
	#block-frontpagebannerbackground img { width: 100%; }
}

@media only screen and (max-width: 1820px) {
	ul.sf-menu a, ul.sf-menu span.nolink { padding: 22px 1.5vw; }
	.block.sidebar-top-right { position: unset; border-left: 1px solid #103968; max-width: 100%; }
	.block.sidebar-top-right.second { border: none; max-width: unset; float: unset; margin: 0; padding: 0; }
}

@media only screen and (max-width: 1400px) {
	header * { font-size: 18px; }
	#block-waldenwoods-main-menu ul a, ul.sf-menu a, ul.sf-menu span.nolink { padding: 22px 0.8vw; }
	ul.sf-menu .sf-with-ul { padding-right: 1vw; }
	#block-campresortleft ul a, #block-banquetleft ul a { display: inline-block; padding: 35px 0.75vw; }
}
@media only screen and (max-width: 1240px) {
	#hamb-icons .mobile-nav-toggle.right { left: 15px; }
	#hamb-icons .mobile-nav-toggle.left { right: 15px; }
	#block-campresortleft ul a, #block-banquetleft ul a { font-size: 16px; }
	.region-banner-bottom #block-extendedwaldenwoodsfamily-2 a { font-size: 16px; padding: 20px 10px; }
}
@media only screen and (max-width: 1024px) {
	footer { padding: 45px 30px; }
	.region-banner-bottom-middle { height: 0; top: -100px; }
	.camp-service-list .views-row { margin-bottom: 0; }
	.camp-service-list .description-wrapper { left: 1vw; max-width: 55%; }
	#edit-container { max-width: 75%; }
	#block-campresortleft .field--name-field-image, #block-banquetleft .field--name-field-image { max-width: 175px; top: -65px; }
	#block-campresortleft ul a, #block-banquetleft ul a { font-size: 12px; padding: 25px 0.5vw; }
	.promotion.block .field--name-field-first-line-text, .promotion.block .field--name-field-second-line-text, .promotion.block .field--name-field-third-line-text, .promotion.block .field--name-field-link-button { font-size: 28px; }
	.normal-padding-left-medium { padding-left: 15px; }
	.normal-padding-right-medium { padding-right: 15px; }
	#block-contactus { margin-top: 15px; }
	#block-privacypolicy { text-align: left; padding-top: 30px; }
	.banquet-page.teaser .content-description { width: 100%; bottom: 0; top: unset; }
	.banquet-page.teaser img { width: 100%; }
	.banquet-page.teaser .img-overlay { background: linear-gradient(to bottom, transparent, transparent 40%, #073b37 70%, #073b37); }
	#block-frontpagebannerbackground img { height: 90vw; margin-left: -80vw; }
	#block-joinourteambutton { text-align: center; margin-top: 30px; }
	.region-banner-bottom #block-extendedwaldenwoodsfamily-2 .field--name-field-image { max-width: 150px; top: -30px; right: 0; }
	.region-banner-bottom #block-extendedwaldenwoodsfamily-2 a { font-size: 14px; padding: 20px 8px; }
}
@media only screen and (max-width: 1080px) {
	main, .region-secondary-content, .region-tertiary-content, .region-bottom-content { padding-left: 15px; padding-right: 15px; }
}
@media only screen and (max-width: 1050px) {
	.region-promotion { height: 27vw; }
}

@media only screen and (max-width: 900px) {
	#block-views-block-view-site-selector-block-1 .views-field-field-phone { font-size: 32px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-email { font-size: 24px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-email-list { font-size: 20px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-page-url a { font-size: 20px; }
	#block-leavenothingtochance h2 { font-size: 66px; line-height: 1; }
	#block-leavenothingtochance .field--name-body p { font-size: 33px; }
	.camp-service-list .description-wrapper { position: relative; max-width: 100%; top: -10vw; left: 0; }
}
@media only screen and (max-width: 865px) {
	.webform-submission-schedule-free-consultation-form input.form-submit { top: -190px; }
}
@media only screen and (max-width: 800px) {
	#block-waldenwoods-main-menu ul a, ul.sf-menu a, ul.sf-menu span.nolink { font-size: 16px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-email { font-size: 19px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-page-url a { font-size: 16px; }
	.region-footer-1, .region-footer-3 { margin-bottom: 15px; }
	.region-footer-1 p, .region-footer-3 p { margin-bottom: 0.2rem; text-align: center; }
	#edit-container { max-width: 100%; }
	.promotion.block .field--name-field-background-image { left: -33%; }
	.promotion.block .field--name-field-link-button { margin-top: 30px; }
	.view-staff-members .views-field-field-position,
	.view-staff-members .views-field-field-phone-number,
	.view-staff-members .views-field-field-fax,
	.view-staff-members .views-field-field-email { font-size: 13px; }
	#block-campresortleft ul a, #block-banquetleft ul a { font-size: 12px; padding: 22px 0.5vw; }
	.spb-popup-main-wrapper::after { display: none; }
	.spb_center { margin-left: -240px; }
	.spb_close { position: unset; }
	.region-promotion { height: 34vw; }
	.banquet-page.teaser .content-description { font-size: 16px; }
	.region-banner-bottom #block-extendedwaldenwoodsfamily-2 ul.menu { height: 50px; }
	.region-banner-bottom #block-extendedwaldenwoodsfamily-2 a { font-size: 12px; padding: 20px 3px; }
}
@media only screen and (max-width: 640px) {
	.no-padding-mobile { padding: 0; }
	body, p, label { font-size: 20px; }
	main { padding: 50px 15px 15px; }
	footer p { font-size: inherit; }
	.scrolled .sticky-on-scroll { top: 94px; }
	.page-node-type-page main, .page-node-type-basic-page-with-two-content-colu main { padding-top: 140px; }
	.region-sidebar { padding: 30px 0; }
	h1.page-title { margin-top: 30px; }
	.button { font-size: 18px; }
	table.column-2 td p { font-size: 16px; }
	#block-waldenwoods-main-menu ul a, ul.sf-menu a, ul.sf-menu span.nolink{ font-size: 14px; padding: 25px 1vw }
	#block-views-block-view-site-selector-block-1 .views-row:nth-of-type(1) { margin-bottom: 45px; }
	#block-views-block-view-site-selector-block-1 .views-field-field-page-url a { font-size: 20px; display: block; }
	.region-banner { margin-top: 90px; }
	.region-banner-bottom-middle { top: -13vw; }	
	.small-single-column .webform-element--title-inline label,
	.small-single-column .webform-element--title-inline input,
	.small-single-column .webform-element--title-inline select { max-width: 100%; float: unset; }
	.small-single-column .webform-element--title-inline input.form-radio { max-width: 60%; float: right; }
	.form-type-textarea label { text-align: center; }
	.region-bottom-content h2 { font-size: 48px; line-height: 1; }
	.block-webform .form-item-header-markup { font-size: 50px; line-height: 1; }
	#edit-container { padding: 25px; }
	#block-leavenothingtochance { padding: 75px 0 35px; }
	#block-leavenothingtochance h2 { font-size: 55px; margin-bottom: 30px; }
	#block-leavenothingtochance .field--name-body p { font-size: 30px; }
	.banquet-page.teaser h2 { font-size: 50px; }
	.region-secondary-content h2, .region-tertiary-content h2, .banquet-page.teaser .field-body { margin-bottom: 20px; }
	.promotion.block .field--name-field-background-image { width: 200%; left: -100%; }
	.promotion.block .field--name-field-first-line-text, 
	.promotion.block .field--name-field-second-line-text, 
	.promotion.block .field--name-field-third-line-text,
	.promotion.block .field--name-field-link-button { max-width:100%; width: 100%; text-align: left; font-size: 6vw; }
	.block.sidebar-top-right { max-width: 100%; width: 100%; margin-left: 0; margin-bottom: 30px; border-left: none; }
	.page-node-type-camp-resort-main-page .region-middle-content-divider { padding-top: 15px; }
	ul.sf-menu ul li { text-align: center; }
	.view-accomodations.view-display-id-block_1 .columns.left { border-right: none; }
	.small-single-column { padding: 15px; }
	.small-single-column .half-width { width: 100%; }
	.view-award-badges .views-row { margin: 15px 0; }
	.view-featured-banquet-pages .description-wrapper { position: relative; top: -6vw; left: 0; max-width: unset; }
	#block-views-block-current-openings-block-1 { width: 100%; padding-bottom: 15px; }
	#block-seasonalpositionsavailable { width: 100%; }
	.webform-submission-wedding-planner-form .form-item-cromaine-wedding-hall, 
	.webform-submission-wedding-planner-form .form-item-lakeview-tented-wedding { max-width: 100%; float: none; }
	.spb-popup-main-wrapper { top: 80px; }
	.page-node-type-banquet-page .node__content img.align-left { max-width: 100%; }
	.view-downloadable-maps { margin-top: 60px; }
	#block-otherweddingservices a.button { width: 49%; }
	#block-mailingaddress div:nth-of-type(2) { margin-top: 15px; }
	#block-extendedwaldenwoodsfamily li { width: 100%; }
	#block-extendedwaldenwoodsfamily li:nth-of-type(even) { text-align: left; }
	.region-promotion { height: 52vw; padding-left: 15px; }
	.region-banner-backg { margin-top: 93px; }
	#block-frontpagebannerbackground img { height: 860px; margin-left: -1000px; }
	.node--type-virtual-tour .field--name-field-ggp-file { margin-top: 50px; }
	#block-freecampingbannergraphic { top: 85px; }
}
@media only screen and (max-width: 480px) {
	h1 { font-size: 40px; line-height: 1.1; }
	h2 { font-size: 32px; }
	body, p, label { font-size: 18px; }
	.button { font-size: 16px; }
	#block-waldenwoods-main-menu ul a, ul.sf-menu a, ul.sf-menu span.nolink { font-size: 12px; padding: 10px 1vw }
	#block-leavenothingtochance h2 { font-size: 50px; }
	#block-leavenothingtochance .field--name-body p { font-size: 27px; }
	.banquet-page.teaser h2 { font-size: 45px; }
	.region-secondary-content h2, .region-tertiary-content h2, .banquet-page.teaser .field-body { margin-bottom: 15px; }
	#block-views-block-award-badges-block-1 h2 { font-size: 40px; }
	.block-webform .form-item-footer-markup { font-size: 32px; }
	.webform-submission-schedule-free-consultation-form input.form-submit { top: -130px; }
	.spb-popup-main-wrapper { width: 96% !important; }
	.spb_center { margin-left: -48%; }
	.spb_center .block-webform { padding: 10px; }
	.region-promotion { height: 48vw; }
}
@media only screen and (max-width: 479px) {
	.spb_center .block-webform h2 { font-size: 30px; margin-top: 22px; }
	.spb_center .block-webform h3 { font-size: 34px; }
	.spb_center .block-webform label,
	.spb-popup-main-wrapper .form-item-footer-description p { font-size: 16px; }
	.spb-popup-main-wrapper .form-actions input.form-submit { font-size: 24px; padding: 22px 0; }

}
@media only screen and (max-width: 400px) {
	.xsmall-6 { width: 50%; }
	.xsmall-12 { width: 100%; }
	.page-node-type-splash-page main { padding: 45px 30px;  }
	.region-mobbanbot-left { top: -5vw; }
	#block-otherweddingservices a.button { width: 100%; }
	.view-staff-members .views-row { min-height: unset; }
}
@media only screen and (max-width: 399px) {
	.spb_center .block-webform h2 { font-size: 26px; margin-top: 22px; }
	.spb_center .block-webform h3 { font-size: 30px; }
	.spb_center .block-webform label,
	.spb-popup-main-wrapper .form-item-footer-description p { font-size: 14px; }
	.spb-popup-main-wrapper .form-actions input.form-submit { font-size: 22px; padding: 18px 0; }
}
@media only screen and (max-width: 390px) {
	.block.sidebar-top-right { min-width: unset; }
}

#block-views-block-featured-banquet-pages-block-1 .columns{
	margin-bottom: 50px;
}
body.page-node-type-banquet-main-page section[role="content"] > div:not(.full).row{
	max-width: 70rem;
}
.more-button-wrapper{
	text-align:center;
}
/* Banner */
.region-banner img{
	width:100%;
}

.form-item-nodeid { opacity: 0; }