/********************************************
	WindChime of Marin
	Built by WebSight Design, Inc.
*********************************************/

/* Webfonts 
font-family: 'Lato', sans-serif;
font-family: 'Taviraj', serif;
*/

/******** BROWSER CSS RESET *************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	/*** Include Padding/Borders in width for all elements ***/
	box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section { display: block; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after { content: none; }
table { border-collapse: collapse; border-spacing: 0; }
/* Responsive images & embedded objects (remove for image cropping) */
img, object, embed { max-width: 100%; }

/****** GLOBAL ELEMENT CSS ******/
html * { max-height: 999999px; } /* Android mobile font sizing fix */

body {
	line-height: normal;
	font-size: 18px;
	font-family: 'Lato', sans-serif;
	background: #fff;
	-webkit-text-size-adjust: none;
}

body, select, input, textarea { color: #000; }

ins { background-color: #fcd700; color: #000; text-decoration: none; }
mark { background-color: #fcd700; color: #000; font-style: italic; font-weight: bold; }

h1, h2, h3, h4, h5, h6 {
	padding:0 0 20px 0;
	font-family: 'Taviraj', serif;
    line-height:135%;
}
h1 { font-size: 28px !important; }
h2 { font-size: 24px !important; }
h3 { font-size: 22px !important; }
h4, h5, h6 { font-size: 20px !important; }

.super { font-size:30px; line-height:125%; }

.bluetext { /*color:#1068a7;*/ color:#4b72a9; }

a { color: #6c10a6; text-decoration: underline; }
a:hover, a:active { color: #1068a7; text-decoration: underline; }
a:link { -webkit-tap-highlight-color: initial; }

.blue-btn { display:inline-block; padding:17px 35px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; font-size:20px; text-align:center;
    /*background:#1068a7;*/ background:#4b72a9; border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
.blue-btn:hover { color:#fff; text-decoration:none; /*background:#e2b607;*/ background:#b41983; }

.pink-btn { display:inline-block; padding:17px 35px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; font-size:20px; text-align:center;
    background:#b41983; border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
.pink-btn:hover { color:#fff; text-decoration:none; /*background:#e2b607;*/ background:#b41983; }

.google-review { display:inline-block; padding:17px 35px 17px 60px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; text-align:center; font-family:'Lato',sans-serif; font-weight:bold; font-size:18px;
    background:url('../images/google-icon-white.svg') 30px 50% #b41983 no-repeat; background-size:20px auto;
    border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
.google-review:hover { color:#fff; text-decoration:none; }

.yelp-review { display:inline-block; padding:17px 35px 17px 55px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; text-align:center; font-family:'Lato',sans-serif; font-weight:bold; font-size:18px;
    background:url('../images/yelp-white.svg') 25px 50% #d30d2e no-repeat; background-size:20px auto;
    border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
.yelp-review:hover { color:#fff; text-decoration:none; }

.facebook-review { display:inline-block; padding:17px 35px 17px 50px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; text-align:center; font-family:'Lato',sans-serif; font-weight:bold; font-size:18px;
    background:url('../images/facebook-white.svg') 20px 50% #4b72a9 no-repeat; background-size:auto 20px;
    border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
.facebook-review:hover { color:#fff; text-decoration:none; }

p { padding:0 0 20px 0; line-height:140%; }
img { height:auto; }

b, strong { font-weight: 700; }
i, em { font-style: italic; }

.clear { clear: both; }
.clearfix::after { content:''; display:table; clear:both; }

div.linen { background:url('../images/linen.jpg') #edece8; }

.container { width:100%; max-width:1500px; margin:0 auto; }
.container1000 { width:100%; max-width:1000px; margin:0 auto; }
.container1200 { width:100%; max-width:1200px; margin:0 auto; }






.master-box {
display: flex; justify-content: center !important; align-items: center !important;
}
.sub-box {
    flex-direction: column;
    text-align: center !important;
}


.content-box {
    flex: 1;
    padding: 20px;
    margin-top: 30px;
    background-color: #fff;
    border: 1px solid #fff;
  
}






.hpad { padding-left:15px; padding-right:15px; }
.vertpad { padding-top:50px; padding-bottom:50px; }

.nopad { padding:0; }
.nomarg { margin:0; }

.dsk, .dsk2 { display:none; }
.mob { display:block; }
.mob2 { display:inline; }


/*** Basic List Styling ***/
ul {
	margin: 0px 0px 20px;
	padding: 0 0 0 20px;
	list-style-type: disc;
	list-style-position: outside;
}
ul li { margin-bottom: 5px; }
ul li ul li { margin-top: 5px; }
ul li ol li { margin-top: 5px; }

ol {
	margin: 0px 0px 20px;
	padding: 0px 0px 0px 20px;
	list-style-type: decimal;
	list-style-position: outside;
}
ol li { margin-bottom: 5px; }
ol li ol li { margin-top: 5px; }
ol li ul li { margin-top: 5px; }



/*** Blockquote ***/
/*genric styles for blockquote in content*/
blockquote {
  background: #f9f9f9;
  border-left: 10px solid #ccc;
  margin: 1.5em 10px;
  padding: 0.5em 10px;
  quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}
blockquote p {
  display: inline;
}




/****** FRONTEND LAYOUT ******/
#page {
	margin: 0 auto;
	width: 100%;
	min-width: 350px;
	max-width: 1920px;
	position: relative;
}



ul.team { display: flex; /* Makes this a flex container */
  justify-content: space-around; /* Distributes space between items */
  align-items: center; /* Centers items vertically */
  border: 0px solid #333; 
  list-style-type: none; 
  flex-wrap: wrap; 
}


ul.team li { width:100%; text-align:center; }
  

.flex-container {
  display: flex; /* Makes this a flex container */
  justify-content: space-around; /* Distributes space between items */
  align-items: center; /* Centers items vertically */
  border: 0px solid #333;
  flex-wrap: wrap;
  gap: 40px !important;
}



.column {
  padding: 0px; /* Adds internal spacing within each column */
min-width: 80px;
width: 100%;
display: block;
margin: 0 auto;
flex: 1 1 auto;
}






#nanobar { width:100%; padding:10px 15px; color:#fff; font-size:0.8em; background:#ac283c; text-align:center; border-bottom:1px #f3a2ae solid; }
#nanobar p { padding:0; }
#nanobar a { color:#fff; text-decoration:underline; }


/*** Header ***/
#header {
	margin:0; padding:0;
    background:#031a2b; color:#fff;
    text-align:right;
    width:100%; height:auto; position:fixed; top:0; left:0; z-index:9999;
}

/*** Main Menu ***/
#menuBtn { width:40px; height:40px; display:block; position:absolute; top:9px; left:0; z-index:100; cursor:pointer; }
#menuBtn svg:first-child { position:absolute; top:10px; left:0; width:100%; height:4px; transition:0.2s linear all; fill: #659fd3; }
#menuBtn svg:nth-child(2n) { position:absolute; top:18px; left:0; width:100%; height:4px; transition:0.2s linear all; fill: #659fd3; }
#menuBtn svg:last-child { position:absolute; top:26px; left:0; width:100%; height:4px; transition:0.2s linear all; fill: #659fd3; }

#menuBtn.open2 svg:first-child { transform: rotate(45deg); top:18px; fill: #4367a5 !important; }
#menuBtn.open2 svg:nth-child(2n) { opacity:0; }
#menuBtn.open2 svg:last-child { transform: rotate(-45deg); top:18px; fill: #4367a5 !important; }

#mainmenu {
	display: none;
	position: absolute; top:57px; left:0; width:100%; z-index:9999;
    background:#031a2b; padding:0 0 20px 0;
}
#mainmenu ul { 	margin:0; padding: 0; list-style-type: none; }
#mainmenu ul li { margin:0; text-align:left; }
	
#mainmenu ul li a {
	padding:10px 15px;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
	background-color: transparent;
    display:block;    
    font-weight:700;
}
#mainmenu ul li a.dsk { display:none; }
#mainmenu ul li > ul { display: none; padding-left:15px; }
#mainmenu ul li > ul li a { font-weight:400; padding:5px 15px; }

div.tour-tel { width:auto; display:inline-block; }
a.hdr-schedule { display:inline-block; width:auto; height:auto; text-align:center; /*background:#e2b607;*/ background:#b41983;
    /*color:#031a2b;*/ color:#fff; text-decoration:none; text-transform:uppercase; font-size:12px;
    padding:10px 13px; float:right;
}
a.hdr-tel { display:inline-block; width:auto; height:auto; text-align:center; background:#031a2b; 
    color:#e2b607; text-decoration:none; text-transform:uppercase; font-size:12px;
    padding:10px 15px 10px 13px;
}
a.hdr-tel2 { display:inline-block; width:auto; height:auto; text-align:center; background:#031a2b; 
    color:#e2b607; text-decoration:none; text-transform:uppercase; font-size:12px;
    padding:10px 15px 10px 13px;
}

.bigdsk { display:none; }
.hdr-tel3 { display:none; }


/*** Content Area ***/
#content { padding-top:57px; }

#featureImg { width:100%; max-width:100%; overflow:hidden; position:relative; background:#031a2b; height:300px; }
#featureImg img.fi-img { width:100%; height:300px; object-fit:cover; }

#featureImg .hp-logo-overlay { display:none; }

div.lower-title { text-align:center; color:#fff; background:#031a2b; padding:20px; }
div.lower-title h1 { padding:0; font-size:30px; color:#fff; }


/*** Footer ***/
#footer { background:#031a2b; color:#fff; padding:30px 15px 10px 15px; text-align: center; font-size: 16px; }
#footer p { line-height:150%; }
#footer a { color:#fff; text-decoration:none; }
#footer a:hover { color:#57a3f8; text-decoration:underline;  }

#footer a.wsd:hover { color:#ccc !important; }

ul.ftr-nav { list-style-type:none; padding:0; }
ul.ftr-nav li { margin:0 0 5px 0;  }
ul.ftr-nav a { text-transform:uppercase; /*color:#24b3e9 !important;*/ color:#fff !important; }
ul.ftr-nav a:hover { text-transform:uppercase; /*color:#24b3e9 !important;*/ color:#57a3f8 !important; }

ul.social { list-style-type:none; padding:0; /*margin-top:64px;*/ }
ul.social li { width:auto; display:inline-block; }

ul.social a { display:block; width:45px; height:45px; border-radius:50%; overflow:hidden; font-size:1px; text-indent:-3000px; margin-left:5px; }

a.yt { background:url('../images/youtube-play-icon.svg') 50% 50% #b41983 no-repeat; background-size:24px auto; }
a.tw { background:url('../images/x-white.svg') 50% 50% #12a0d5 no-repeat; background-size:19px auto; }
a.fb { background:url('../images/facebook-white.svg') 50% 50% #1068a7 no-repeat; background-size:10px auto; }
a.gmb { background:url('../images/google-icon-white.svg') 50% 50% #12a0d5 no-repeat; background-size:19px auto; }
a.yelp { background:url('../images/yelp-white.svg') 50% 50% #d30d2e no-repeat; background-size:auto 19px; }
a.bing { background:url('../images/bing-white.svg') 50% 50% #12a0d5 no-repeat; background-size:auto 19px; }

/****** FORMS STYLING ******/
div.form {
	margin: 0px auto;
	max-width: 600px;
}
div.form label {
	display: block;
	font-weight: normal;
}
div.form input,
div.form textarea,
div.form select {
	box-sizing: border-box;
	font-family: 'Lato', sans-serif; font-size:18px;
}
div.form fieldset {
	margin:0 0 20px 0;
}


div.form input[type=text],
div.form input[type=number],
div.form input[type=password] {
	padding: 4px;
	width: 100%;
	border: 1px solid #333;
	border-radius: 0px;
	-webkit-appearance: none;
}

div.form select {
    padding: 4px;
	width: 100%;
	border: 1px solid #333;
	border-radius: 0px;
}
div.form textarea {
	padding: 4px;
	width: 100%;
	height: 120px;
	resize: none;
	border: 1px solid #333;
	border-radius: 0px;
	-webkit-appearance: none;
}

div.form span.required { color:#cc0000; }
div.form .row.checkbox label,
div.form .row.radio label {
	float: none;
	padding: 0px;
	display: inline-block;
	width: auto;
}
div.form .row.buttons { text-align: center; }
div.form input[type=submit] {
	padding:17px 35px; margin:0 5px 5px 0;
    color:#fff; text-decoration:none; font-size:20px; text-align:center;
    background:#4b72a9; border:1px #ccc solid; border-radius:4px;
    cursor:pointer; transition:0.2s linear all;
}
div.form input[type=submit]:hover,
div.form input[type=submit]:active { color:#fff; text-decoration:none; background:#e2b607; }


/*** Form Errors ***/
div.form div.error label,
div.form label.error,
div.form span.error {
	color: #C00;
}
div.form div.error input,
div.form div.error textarea,
div.form div.error select,
div.form input.error,
div.form textarea.error,
div.form select.error {
	border-color: #C00;
}
div.form .errorMessage { color: #cc0000; margin:5px 0 10px 0; }

#memory-container #formResult { text-align:center; padding-top:20px; }
#memory-container #formResult h1 { color:#b41983; border-top:1px #ccc solid; padding-top:30px; }

.rc-intro #formResult { text-align:left; }
.rc-intro #formResult h1 { color:#b41983; }

/*** Request A Tour ***/
div#step-1 { padding:0 0 30px 0; margin:0 0 30px 0; border-bottom:1px #ccc solid; }

div#step-2 fieldset { margin:0 0 30px 0; }
div#step-2 fieldset label { width:100%; display:block; margin:0 0 7px 0; padding:0; }
div#step-2 fieldset select, div#step-2 fieldset input[type=text] { width:100%; display:block; }
div#step-2 fieldset span#Requests_importants input[type=checkbox] { clear:both; }
div#step-2 fieldset span#Requests_importants label { float:none; display:inline-block; width:80%; }

div#step-2 div.errorMessage { margin-left:0 !important; }


/****** HOMEPAGE ******/
div.banner-btns { padding-top:10px; }
#page-intro { width:100%; max-width:830px; margin:0 auto; text-align:center; font-size:22px; font-family: 'Taviraj', serif; line-height:125%; padding:50px 15px 50px 15px; }
#page-intro h1 { padding:0; font-size:22px; }
#page-intro h1.gal-title { font-size:30px; color:#b41983; padding:0; }

/* Banners */
#hp-banner { width:100%; max-width:100%; overflow:hidden; position:relative; background:#031a2b; margin-bottom:10px; }

img#first-logo { position:absolute; top:10%; left:calc(50% - 150px); z-index:100; width:300px; height:auto; }

div.hp-slideshow { width:100%; height:auto; display:block; }
div.hp-slideshow img { width:100%; height:40vh; object-fit:cover; }

div.hp-logo-overlay { position:absolute; top:0; left:0; z-index:100; width:100%; height:100%; display:flex; align-items:flex-start; text-align:center; color:#fff; padding:5% 0 0 0; }
div.hpo-inner { display:block; width:100%; text-align:center; /*padding-bottom:50px;*/ }
img#overlay-logo { width:75%; max-width:511px; }

div.hp-txt-overlay { /*position:absolute; bottom:10px; left:0; z-index:200; width:100%; height:auto; display:block; text-align:center; color:#fff; */}
div.hp-txt-overlay { background:#031a2b; padding:20px 0 10px 0; color:#fff; text-align:center; }

div.hp-txt-overlay h1 { /*font-size:30px;*/ font-size:22px; font-family: 'Taviraj', serif; line-height:125%; padding:0 15px 20px 15px; }

div.gradient-top { display:none; width:100%; height:75px; position:absolute; top:0; left:0; z-index:90; background:url('../images/upper-gradient.png') repeat-x; background-size:auto 75px; }
div.gradient-bot { width:100%; height:100px; position:absolute; bottom:0; left:0; z-index:90; display:block; background:url('../images/lower-gradient.png') repeat-x; background-size:auto 100px; }

a.hp-btns { width:90%; max-width:350px; display:block; margin:0 auto 10px auto; padding:20px 0 20px 0;
    color:#fff; text-decoration:none; font-size:20px; text-align:center;
    /*background:#1068a7;*/ background:#4b72a9; border:1px #ccc solid; border-radius:4px;
    transition:0.2s linear all;
}
a.hp-btns:hover { color:#fff; text-decoration:none; /*background:#e2b607;*/ background:#b41983; }


/* Tiles */
#tiles { }
div.tile-indv { margin-bottom:50px; }
div.tile-inner { width:100%; max-width:1500px; margin:0 auto; }

img.tile-img1 { display:block; margin:0 0 20px 0; }

div.tile-text { padding:0 15px; }
div.tile-text h2 { font-size:24px; color:#1068a7; line-height:125%; }

div.tile-img { display:block; padding-top: 20px;}

/* Last tile */
#tiles div.tile-indv:last-child { margin:0; }
#tiles div.tile-indv:last-child img.tile-img1 { display:none; }

#tiles div.tile-indv:last-child div.tile-inner { padding:50px 0; }
#tiles div.tile-indv:last-child div.tile-text { background:rgba(255,255,255,0.85); padding:50px 20px; display:block; margin:0 auto; width:90%; }

#tiles div.tile-indv:last-child div.tile-text h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; }

#tiles div.tile-indv:last-child div.tile-img { display:none; }

/* New Last Tile */
div.the-last-tile { /*background:#b41983;*/ background:url('../images/green-leaves.jpg') #056036; position:relative; margin-top:0; opacity:1; padding-bottom:30px; }
div.the-last-tile img.main-img { width:100%; display:block; }
div.tlt-overlay-container { position:relative; margin-top:-50px; z-index:10; }
div.tlt-overlay { background:#fff; padding:30px; width:90%; margin:0 auto 20px auto; }

div.tlt-overlay h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; }


/* Explore Tiles */
#explore { text-align:center; }
div.explore-tile { width:calc(100% - 20px); max-width:368px; margin:0 10px; display:inline-block; vertical-align:top;
    padding:20px; background:transparent; box-shadow:none;
    text-align:left; font-size:16px;
    transition:0.2s linear all;
}
div.explore-tile:hover { background:#fff; box-shadow:0 0 10px rgba(0,0,0,0.1); }
div.explore-tile img { width:100%; height:250px; object-fit:cover; margin:0 0 15px 0; }


/*** Community / Subpage 2 ***/
ul#subpages { list-style-type:none; padding:0; margin:0; text-align:center; }
ul#subpages li { width:100%; max-width:400px; display:inline-block; vertical-align:top; position:relative; text-align:center; margin-bottom:50px; opacity:0; margin-top:100px; }
.moveme { animation-name: fadeup;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
}
    
@keyframes fadeup {
    from { margin-top:100px; opacity:0; }
     to { margin-top:0; opacity:1; }
}

ul#subpages li:first-child { margin-top:0; opacity:1; }
    
ul#subpages li img { width:100%; height:auto; display:block; opacity:1; transition:0.2s linear all; margin:0 0 15px 0; }
ul#subpages li .subpage-title { width:100%; height:100%; display:flex; align-items:center; justify-content:center; position:absolute; top:0; left:0; z-index:100; color:#fff; text-decoration:none; }
ul#subpages li .subpage-title h2 { display:block; text-align:center; padding:0; }


.fade-up { animation-name: fadeup;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
}
    
@keyframes fadeup {
    from { margin-top:100px; opacity:0; }
    to { margin-top:0; opacity:1; }
}

.already-visible { margin-top:0; opacity:1; }

/** In-Page Reviews **/
.page-review { margin:0; }
.page-review img.tile-img1 { display:none; }

.page-review div.tile-inner { padding:50px 0; }
.page-review div.tile-text { background:rgba(255,255,255,0.85); padding:50px 20px; display:block; margin:0 auto; width:90%; }

.page-review div.tile-text h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; line-height:125%; }


/*** Reviews ***/
#reviews { display:block; }

#reviews .review-indv { background:#fff; display:block; padding:30px 20px; margin-bottom:30px; margin-top:100px; opacity:0; }
#reviews .review-indv h2 { background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; line-height:125%; }

#reviews .review-indv:first-child { margin-top:0; opacity:1; }


/*** Photo Gallery List ***/
div.gallery-list { display:block; text-align:center; }

div.gallery-thm { width:calc(100% - 30px); max-width:400px;  display:inline-block; vertical-align:top; margin:0 15px 30px 15px; }
div.gal-img { width:100%; position:relative; margin:0 0 15px 0; background:#000; }
div.gal-img img { width:100%; height:300px; object-fit:cover; display:block; opacity:1; transition:0.2s linear all; border:1px #edece8 solid; }
div.gal-img:hover img { border:1px #e2b607 solid; }
div.gal-img a { width:100%; height:100%; display:flex; text-align:center; align-items:center; color:#fff; text-decoration:none; position:absolute; top:0; left:0; z-index:100; }
div.gal-img a h3 { width:100%; text-align:center; }

/** Gallery **/
div.photo-gallery { column-count: 2; column-gap: 20px; }
div.photo-gallery img { width:100%; margin-bottom:20px; }
.gal-title { font-size:30px; color:#b41983; padding:0; }

/*** Video Gallery List ***/
#video-list { text-align:center; }
div.videoLink { width:100%; max-width:300px; display:inline-block; margin:0 auto 30px auto; vertical-align:top; }

.video-featureImg { height:auto !important; padding:10px; }
.video-featureImg img.fi-img { display:none; }

#featured-video { width:100%; display:block; }
div.fv-wrapper { padding:20px; background:rgba(255,255,255,0.8); }
div.fv-embed { margin-bottom:20px; }

.byline { font-weight:bold; text-transform:uppercase; font-size:0.8em; padding:0 0 10px 0; }

div.vidthm { width:100%; display:block; margin:0 0 20px 0; position:relative; }
div.vidthm a.vidthm-play { width:100%; height:100%; display:flex; align-items:center; text-align:center; 
    position:absolute; top:0; left:0; z-index:100; 
    background:url('../images/youtube-play-icon.svg') 50% 50% no-repeat; background-size:75px auto;
}
div.videoLink img { width:100%; display:block; }


/*** Blog ***/
/* List */
ul#news-list { width:100%; list-style-type:none; padding:0; text-align:center; }
ul#news-list li { width:100%; max-width:450px; display:inline-block; vertical-align:top; background:#fff; margin-bottom:30px; text-align:left; }

div.news-thm { width:100%; position:relative; background:#000; }
div.news-thm img { width:100%; height:350px; object-fit:cover; }
div.news-thm p.date { width:100%; height:auto; position:absolute; bottom:0; left:0; z-index:100;
    color:#fff; font-size:16px; background:rgba(3,26,43,0.75);  padding:10px; 
}
div.news-intro { padding:20px; }

div.news-intro h2 a { color:#4b72a9; text-decoration:none; }
div.news-intro h2 a:hover { color:#4b72a9; text-decoration:underline; }

nav.pager { text-align:center; }
nav.pager ul.yiiPager { font-size:18px; }
ul.yiiPager .hidden a { border:none !important; color:#333 !important;}
ul.yiiPager .selected a { border:none !important; background:#4b72a9; }
ul.yiiPager a:link, ul.yiiPager a:visited { border:none; }

div.news-image { width:100%; height:auto; overflow:hidden; position:relative; margin:0 0 40px 0; }
div.news-image img { width:100%; display:block; }

div.article-body { width:100%; max-width:1200px; margin:0 auto; }

ul.tags { list-style-type:none; padding:0; font-size:0.8em; }
ul.tags li { display:inline-block; vertical-align:top; width:auto; padding:0 10px 0 0; margin:0 0 0 8px; border-right:1px #ccc solid; font-size:0.8em; }
ul.tags li:first-child { margin:0; border-right:none; padding:0; }
ul.tags li:last-child { border-right:none; padding:0; }


/** Vibrant Life **/
#seven-components { text-align:center; }
div.sevenblock { padding:30px; background:#fff; display:inline-block; vertical-align:top; width:calc(100% - 20px); max-width:350px; margin:0 10px 30px 10px; opacity:0; margin-top:100px; }

#paths-to-wellness { background:#fff; padding:20px 0 1px 0; margin:20px 0 40px 0; }
div.stone { text-align:center; border-bottom:1px #ccc solid; padding:0 0 30px 0; margin:0 0 30px 0; }
#paths-to-wellness div.stone:last-child { border-bottom:none; padding:0; }

div.vb-icon { width:52px; height:52px; display:block; margin:0 auto 20px auto; border:2px #fff solid; border-radius:50%; }
.star { background:url('../images/icons/star.svg') 50% 50% no-repeat; background-size:30px auto; }
.heart { background:url('../images/icons/heart.svg') 50% 50% no-repeat; background-size:30px auto; }
.flag { background:url('../images/icons/flag.svg') 50% 50% no-repeat; background-size:20px auto; }
.camera { background:url('../images/icons/camera.svg') 50% 50% no-repeat; background-size:25px auto; }
.people { background:url('../images/icons/people.svg') 50% 50% no-repeat; background-size:30px auto; }
.butterfly { background:url('../images/icons/butterfly.svg') 50% 50% no-repeat; background-size:30px auto; }
.chat { background:url('../images/icons/chat.svg') 50% 50% no-repeat; background-size:25px auto; }

/** Amenities **/
#amenities { }
div.amenity { background:#fff; margin-bottom:30px; }
div.am-inner { width:100%; display:block; }
img.am-img { width:100%; display:block; }
div.am-text { padding:20px 15px; }


/** EVENTS **/
ul.event-list { padding:0; margin:0; }
ul.event-list li { width:100%; display:block; margin:0 0 40px 0; border-bottom:1px #ccc solid; padding-bottom:20px; }
ul.event-list li:last-child { border-bottom:none; padding-bottom:0; }
div.event-thm img { display:block; margin:0 0 20px 0; }
div.event-desc h2, div.event-desc h1 { color:#b41983; }
div.event-desc ul { list-style-type:disc !important; padding:0; }
div.event-desc ul li { margin:0 0 10px 0; border:none; background:url('../images/dot.png') no-repeat 0 8px; padding:0 0 0 20px; }
div.event-desc ul li:last-child { margin:0; }

p.date { font-weight:bold; }

hr.classydiv { border:none; border-top:1px #666 solid; margin:0 0 30px 0; }


/*** PPC RESPITE ***/
#ppc-respite { }

div.heroImg { width:100%; position:relative; background:#031a2b; }
div.heroImg img { width:auto; height:350px; max-width:none; }

div.hero-overlay { padding:30px 20px; color:#fff; }
div.hero-overlay h2 { font-family:'Lato', sans-serif; }
div.rc-text { padding-top:20px; }

/*** PPC MEMORY ***/
div.heroArea { background:#fff; width:100%; }
div.ha-img, div.ha-img img { width:100%; display:block; }
div.ha-intro-container { width:100%; max-width:750px; text-align:center; padding:30px 20px 1px 20px; }

div.drop-shadow { width:100%; display:block; height:65px; background:url('../images/drop-shadow.png') repeat-x; opacity:0.5; }
img#ha-logo { width:200px; }

#memory-container { max-width:780px; padding-top:10px !important; }

#bc { padding:15px; }
#bc ul { list-style-type:none; margin:0; padding:0; font-size:0.8em; }
#bc ul li { display:inline-block; vertical-align:top; margin:0 5px 0 0; }
#bc ul li a { color:#666; }

/***************************************************
	DESKTOP LAYOUT BREAKPOINTS
****************************************************/
@media(min-width: 880px) {

	/****** GLOBAL ELEMENT CSS ******/
	body {  }
    
    .mob, .mob2 { display:none; }
    .dsk { display:block; }
    .dsk2 { display:inline; }
    
    div.half { width:50%; float:left; }
    
    .super { font-size:3.5vw; }
    
    .vertpad { padding-top:85px; padding-bottom:85px; }




.flex-container {
  display: flex; /* Makes this a flex container */
  justify-content: space-around; /* Distributes space between items */
  flex-wrap: wrap;
  justify-content:space-between;
  align-items:flex-start;
  gap: 40px !important; 
}

.column {
padding: 0px; /* Adds internal spacing within each column */
width: 45% !important;
justify-content: flex-start;
}





    .master-box {
        display: flex; justify-content: center; align-items: center; margin-top:-40px;
        }

        .sub-box {
        display: flex; 
        flex-wrap: wrap; 
        gap: 20px;
        padding: 20px; 
        flex-direction: row;
        }

        .content-box {
            flex: 1;
      background-color: #fff;
      padding: 40px;
      text-align: center;
        }


ul.team { justify-content:space-between; flex-wrap:wrap; width: 100%; list-style-type: none; display: flex; }
ul.team li { width:30%; text-align:center; }
   

	/****** FRONTEND LAYOUT ******/
    
    
    #featureImg { width:100%; max-width:100%; overflow:hidden; position:relative; background:#031a2b; height:680px; }
    #featureImg img.fi-img { width:100%; height:680px; object-fit:cover; }
    
    #featureImg .hp-logo-overlay { display:flex; }
    
    #featureImg div.hp-txt-overlay { bottom:0; }
    
    div.lower-title h1 { font-size:2.75vw; }
    

    /*** Footer ***/
	div.ftr-left { width:33%; float:left; text-align:left; }
    div.ftr-left ul { /*margin-top:89px;*/ }
    div.ftr-mid { width:33%; float:left; text-align:center; }
    div.ftr-right { width:33%; float:left; text-align:right; }
	
    

	
	/****** FORMS ******/
	div.form { }
	div.form label {
		float: left;
		padding: 5px 0px 0px;
		width: 25%;
	}
	div.form input[type=text],
	div.form input[type=number],
	div.form input[type=password],
    div.form select {
		width: 75%; height:40px;
	}
	div.form textarea {
		width: 75%;
	}
    div.form .errorMessage { margin-left:25%; }	
    
    div.form fieldset { margin:0 0 15px 0; }
    
    div.form fieldset.full-label label {
        width:100%; float:none; margin-bottom:5px;
    }
    div.form fieldset.full-label select, 
    div.form fieldset.full-label input, 
    div.form fieldset.full-label input[type=text], 
    div.form fieldset.full-label textarea { width:100% !important; max-width:none; }

	
    /****** HOMEPAGE ******/
    div.banner-btns { width:100%; height:auto; display:block; position:relative; z-index:8888; text-align:center; margin-top:-40px; padding:0; }
    #page-intro { font-size:28px; padding:85px 15px 65px 15px; }
    #page-intro h1 { padding:0; font-size:28px; }
    #page-intro h1.gal-title { font-size:40px; }
    
    img#first-logo { position:absolute; top:24%; left:39%; z-index:100; width:75%; max-width:400px; height:auto; }
    
    /* Banners */
    div.hp-slideshow { width:100%; height:90vh; display:block; }
    div.hp-slideshow img { width:100%; height:90vh; object-fit:cover; }

    div.hpo-inner { padding-bottom:50px; }
    div.hp-txt-overlay { position:absolute; bottom:0; left:0; z-index:200; width:100%; height:auto; display:block; text-align:center; color:#fff; align-items:center; padding:0 0 5% 0; background:none; }
    img#overlay-logo { width:50%; max-width:433px; }

    div.hp-txt-overlay h1 { font-size:3.5vw; padding:10px 0 20px 0; background:rgba(3,26,43,0.5); }

    div.gradient-top { height:285px; background:url('../images/upper-gradient.png') repeat-x; background-size:auto auto; }
    div.gradient-bot { height:285px; background:url('../images/lower-gradient.png') repeat-x; background-size:auto auto; }

    a.hp-btns { width:330px; height:73px; display:inline-block; margin:0 10px; padding:22px 20px 20px 20px; }
    
    
    /* Tiles */
    #tiles { /*margin-top:85px;*/ padding-top:0px; }

    div.tile-indv { margin-top:100px; margin-bottom:0; padding-bottom:85px; opacity:0; }
    div.tile-inner { display:table; }
    
    img.tile-img1 { display:none; }

    div.tile-text { width:50%; display:table-cell; vertical-align:middle; padding:0 5%; }
    div.tile-text h2 { font-size:30px; }

    div.tile-img { width:50%; display:table-cell; vertical-align:middle; }
    div.tile-img img { width:100%; display:block; }
    
    /* Last tile */
    #tiles div.tile-indv:last-child div.tile-inner { padding:85px 0; }
    #tiles div.tile-indv:last-child div.tile-inner::after { content:''; display:table; clear:both; }
        
    #tiles div.tile-indv:last-child div.tile-text { width:50%; float:right; background:rgba(255,255,255,0.85); padding:85px 70px; display:block; }
    #tiles div.tile-indv:last-child div.tile-text h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; }
    #tiles div.tile-indv:last-child div.tile-text p { margin-left:50px; }
    #tiles div.tile-indv:last-child div.tile-text a.blue-btn { margin-left:50px; }
    
    #tiles div.tile-indv:last-child div.tile-img { display:none; }
    
    /* New Last Tile */
    div.the-last-tile { padding:0; }
    div.the-last-tile img.main-img { width:66%; min-height:740px; object-fit:cover; }
    div.tlt-overlay-container { position:absolute; top:0; left:0; z-index:10; display:flex; width:100%; height:100%; align-items:center; margin:0;}
    div.tlt-overlay { background:#fff; padding:3.5%; width:30%; display:block; font-size:16px; margin-left:62.5%; }
    
    div.tlt-overlay h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; }
    
    /* Explore Tiles */
    #explore { /*margin-top:100px; opacity:0;*/ }
    div.explore-tile { padding:30px; margin-top:100px; opacity:0; }
    div.explore-tile img { margin:0 0 20px 0; }
    
    
    /*** Community / Subpage 2 ***/
    ul#subpages { list-style-type:none; padding:0; margin:0; display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; }
    ul#subpages li { width:30%; display:block; position:relative; text-align:center; margin-bottom:75px; /*background:#000;*/ max-width:none; opacity:0; margin-top:100px; }
    .moveme { animation-name: fadeup;
    	animation-duration: 0.5s;
    	animation-fill-mode: forwards;
    }
    
    @keyframes fadeup {
        from { margin-top:100px; opacity:0; }
	    to { margin-top:0; opacity:1; }
    }
    
    ul#subpages li:nth-child(2), ul#subpages li:nth-child(3) { margin-top:0; opacity:1; }
    
    ul#subpages li img { width:100%; height:300px; object-fit:cover; display:block; transition:0.2s linear all; border:1px #edece8 solid; margin:0 0 20px 0; }
    ul#subpages li:hover img { border:1px #e2b607 solid; }
    
    #subpages.services-sub { justify-content:center; }
    #subpages.services-sub li { margin-left:20px; margin-right:20px; }
    
    /** In-Page Reviews **/
    .page-review div.tile-inner { padding:85px 0; }
    .page-review div.tile-inner::after { content:''; display:table; clear:both; }
        
    .page-review div.tile-text { width:50%; float:right; background:rgba(255,255,255,0.85); padding:85px 70px; display:block; }
    .page-review div.tile-text h2 { color:#000; background:url('../images/quotes.png') no-repeat; padding:0 0 20px 50px; }
    .page-review div.tile-text p { margin-left:50px; }
    .page-review div.tile-text a.blue-btn { margin-left:50px; }
    
    
    /*** Reviews ***/
    #reviews .review-indv { width:46%; background:#fff; display:block; padding:50px; margin-bottom:50px; margin-top:100px; opacity:0; }
    #reviews .review-indv:nth-child(odd) { margin-right:4%; float:left; clear:left; }
    #reviews .review-indv:nth-child(even) { margin-left:4%; float:right; }
    
    #reviews .review-indv:first-child { margin-top:0; opacity:1; }
    #reviews .review-indv:nth-child(2) { margin-top:0; opacity:1; }
    
    #reviews .review-indv p { margin-left:50px; }
    
    
    /*** Photo Gallery List ***/
    div.gallery-thm { width:46%; max-width:none; margin:0 1.5% 50px 1.5%; }
    div.gal-img img { height:400px; }
    
    /** Gallery **/
    div.photo-gallery { column-count: 3; column-gap: 30px; }
    .gal-title { font-size:40px; }
    
    /*** Video Gallery List ***/
    div.videoLink { width:46%; margin:0 1.5% 50px 1.5%; }
    
    .video-featureImg img.fi-img { display:block; }
    
    #featured-video { width:100%; height:100%; display:flex; align-items:center; position:absolute; top:0; left:0; z-index:100; }
    div.fv-wrapper {  padding:20px; background:rgba(255,255,255,0.8); }
    div.fv-wrapper.viddetail { background:none !important; padding:0 !important; }
    div.fv-info { width:50%; float:left; text-align:left; padding:20px; display:block; }
    div.fv-wrapper.viddetail div.fv-info { padding:0 5% 0 0; }
    div.fv-embed { float:right; width:50%; display:block; margin:0; }
    
    /*** Video Gallery List ***/
    #video-list { width:100%; display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; }
    div.videoLink { width:30%; max-width:none; display:block; margin:0 0 40px 0; }
    
    
    /*** Blog ***/
    /* List */
    ul#news-list { display:flex; width:100%; justify-content:space-between; align-items:stretch; flex-wrap:wrap; list-style-type:none; padding:0; }
    ul#news-list li { width:46%; max-width:none; background:#fff; margin-bottom:50px; text-align:left; margin-top:100px; opacity:0; }

    div.news-thm img { width:100%; height:480px; object-fit:cover; }
    div.news-intro { padding:50px; }
    
    div.news-image { width:100%; max-width:1170px; height:650px; overflow:hidden; position:relative; margin:0 auto 50px auto; }
    div.news-image img { position:absolute; top:50%; left:50%; height:auto; transform: translate(-50%, -50%); width:100%; }
    
    /** Vibrant Life **/
    #seven-components { display:flex; justify-content:center; align-items:stretch; flex-wrap:wrap; }
    div.sevenblock { padding:30px; width:30%; }
    
    #paths-to-wellness { background:#fff; padding:30px 0; margin:20px 0 40px 0; }
    div.stone { width:33%; padding:0 30px; float:left; text-align:center; border:none; margin:0; }
    
    /** Amenities **/
    #amenities { display:flex; align-items:stretch; justify-content:space-between; }
    div.amenity { width:48%; margin-bottom:0; }
    div.am-text { padding:3%; }
    
    /** EVENTS **/
    div.event-thm { width:320px; float:left; }
    div.event-desc { width:calc(100% - 350px); float:right; }
    
    
    /*** PPC RESPITE ***/
    div.heroImg { width:100%; height:auto; display:block; position:relative; }
    div.heroImg img { width:100%; height:auto; display:block; }
    div.hero-overlay { position:absolute; top:0; left:0; z-index:100; display:flex; width:100%; height:100%; align-items:center; color:#fff; text-align:right; }
    div.hero-overlay .container { max-width:1300px; }
    div.hero-overlay h1 { max-width:835px; float:right; font-size:40px; }
    div.hero-overlay h2 { max-width:835px; float:right; clear:right; font-size:30px; }
    div.hero-overlay p { clear:right; margin:0; padding:0; }

    div.respite-content { margin: 0 auto; display:flex; width:100%; max-width:1200px; align-items:flex-start; }
    div.rc-intro { width:50%; padding:0 5%; }
    div.rc-text { width:50%; padding:0 30px 0 0; }
    
    
    /*** PPC MEMORY ***/
    div.heroArea { display:flex; align-items:center; }
    div.ha-img { width:50%; }
    div.ha-img img { width:100%; display:block; }
    div.ha-intro { width:50%; }
    div.ha-intro h1 { font-size:24px; }

    div.ha-intro-container { padding:0 30px; }
    img#ha-logo { width:50%; max-width:399px; }

    #memory-container { padding-top:30px !important; }

    #bc { padding:20px 0 0 0; }
    #bc ul li { margin:0 10px 0 0; }

}  /* @media(min-width: 880px) */



/***************************************************
	MAIN MENU BREAKPOINT
****************************************************/
@media(min-width: 1300px) {
    
    #scrollme { width:10px; height:10px; position:absolute; top:150px; left:0; z-index:100; }
    
	#header { position:relative; text-align:left; }
    #header.sticky { position:fixed; width:100%; height:auto; top:0; left:0; z-index:9999; 
        animation-name: show-menu;
    	animation-duration: 0.5s;
    	animation-fill-mode: forwards;
    }
    
    @keyframes show-menu {
	from { top:-61px; }
	to { top:0; }
    }

    /*** Main Menu ***/
    #menuBtn { display: none; }
	
	#mainmenu {
		display: inline-block; width:auto;
		position: relative; top:unset; left:unset;
		margin:0; padding:0;
		text-align: left; background:transparent; 
	}
	#mainmenu ul {
		display: inline-block; width:auto;
	}
	#mainmenu ul li {
		display:inline-block; width:auto;
		position: relative;
		border: none;
		text-align: center;
		margin:0 10px 0 0;
	}
	#mainmenu ul li a {
		padding: 10px;
		font-size: 16px; color:#fff; text-decoration:none; text-transform:uppercase; font-weight:400;
	}
    #mainmenu ul li a.dsk { display:block; }
    #mainmenu ul li a.mob { display:none; }
	#mainmenu ul li:hover a, a #mainmenu ul li:active a, #mainmenu ul li.active a { /*color:#e2b607;*/ color:#57a3f8; }
    
	#mainmenu ul li > ul {
		display: none;
		position: absolute; top:30px; left:-20px; z-index: 999;
		margin: 0; padding: 5px 0;
		min-width: 100px;
		background: #031a2b;
        text-align:left;
	}
	#mainmenu ul li:hover > ul { display: block; }

	#mainmenu ul li > ul li {
		margin: 0px;
		float: none;
		position: relative;
		border-top: 1px solid #195078;
        text-align:left;
        padding:10px 20px;
        display:block; 
	}

	#mainmenu ul li > ul li a {
		text-decoration: none;
		white-space:nowrap;
        display:inline; padding:10px;
	}
    
    div.tour-tel { width:auto; display:inline-block; position:absolute; top:0; right:0; z-index:1; }
    a.hdr-schedule { display:inline-block; width:auto; height:61px; text-align:center; /*background:#e2b607;*/ background:#b41983; color:#fff;
        /*color:#031a2b;*/ text-decoration:none; text-transform:uppercase; font-size:16px;
        padding:20px; float:none;
        transition:0.2s linear all;
    }
    a.hdr-schedule:hover { background:#1068a7; color:#fff; }
        
    a.hdr-tel { display:inline-block; width:auto; height:61px; text-align:center; background:#031a2b; 
        /*color:#e2b607;*/ color:#e971a1; text-decoration:none; text-transform:uppercase; font-size:16px;
        padding:20px;
        transition:0.2s linear all;
    }
    a.hdr-tel:hover { color:#12a0d5; }
    
    a.hdr-tel2 { display:inline-block; width:auto; height:61px; text-align:center; background:#031a2b; 
        /*color:#e2b607;*/ color:#e971a1; text-decoration:none; text-transform:uppercase; font-size:16px;
        padding:20px;
        transition:0.2s linear all;
    }
    a.hdr-tel2:hover { color:#12a0d5; }


	#content { padding-top:0; }
    
}  /* @media(min-width:1500px) */



@media (min-width:1300px) {
    a.hdr-tel2 { display:none; }
    .hdr-tel3 { width:auto; display:inline-block; vertical-align:top; white-space:nowrap; font-size:0.8em; line-height:175%; padding-top:5px; padding-left:10px; }
    .hdr-tel3 a { color:#e2b607; }
    .hdr-tel3 a:hover { color:#e2b607; }
}

@media (min-width:1350px) {
    .bigdsk { display:inline; }
}



/***************************************************
	FULL SIZE BREAKPOINT
****************************************************/
@media (min-width:1500px) {
    
    div.hp-txt-overlay h1 { font-size:50px; text-shadow:2px 2px 5px rgba(0,0,0,0.7); }
    .super { font-size:40px; }
    
    /*** PPC MEMORY ***/
    div.ha-intro h1 { font-size:28px; }
    
    div.lower-title h1 { font-size:47px; }
    
    #mainmenu ul li { margin:0 25px 0 0; }

}  /* @media(min-width:1500px) */




/*** Skip to Content invisible link for accessibility ***/
#skip a
{
position:absolute;
left:-10000px;
top:auto;
width:1px;
height:1px;
overflow:hidden;
}
/* uncommenting will make the link visible when focused
#skip a:focus
{
position:static;
float:left;
width:auto;
height:auto;
}
*/
