/* Things To Do - Grid Module */
.cms-things-to-do-grid-wrap { margin: 3.125rem 0; }
.cms-things-to-do-grid-wrap [class^=col] { margin-bottom: 1.875rem; }
.thing-to-do-wrap { overflow: hidden; display: block; position: relative; padding-bottom: 110%; background: hsl(var(--siteColor1)); border-radius: var(--borderRadiusCheckbox); box-shadow: var(--dropShadow); }
.thing-to-do-img { opacity: 0.95; width: 65%; height: auto; object-fit: cover; position: absolute; top: 40%; left: 50%; transform: translate(-50%,-40%); border-radius: var(--borderRadiusCheckbox); transition: all ease-in-out 0.4s; }
.thing-to-do-wrap:hover .thing-to-do-img { opacity: 0.5; }
.thing-to-do-link { width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; font-family: var(--siteFont2); }
.thing-to-do-link .title { text-align: center; position: absolute; right: 0; bottom: 1.25rem; left: 0; margin: 0; padding: 0.3125rem 0.625rem; font-size: 2rem; color: hsl(var(--white)); line-height: 1; font-weight: var(--wBold); font-style: italic; text-align: center; text-transform: capitalize; text-shadow: 0.0625rem 0.0625rem 0.1875rem hsla(0, 0%, 0%, 50%); transition: all ease-in-out 0.4s; transition-delay: 0.4s; }
.thing-to-do-wrap:hover .title { bottom: 50%; transition-delay: 0s; }
.thing-to-do-link .view { opacity: 0; visibility: hidden; position: absolute; bottom: 30%; left: 50%; transform: translate(-50%,-30%); padding: 0.625rem 3rem; background-color: hsla(var(--white), 90%); border: 0.0625rem hsla(var(--siteColor1), 25%) solid; border-radius: var(--borderRadiusPill); color: hsl(var(--bodyFontColor)); font-weight: 400; transition: all ease-in-out 0.4s; transition-delay: 0.4s; }
.thing-to-do-link .view:hover { background: hsla(var(--white), 1); box-shadow: 0 0 0 0.125rem hsla(var(--white), 25%); transition-delay: 0s; }
.thing-to-do-wrap:hover .thing-to-do-link .view { opacity: 1; visibility: visible; }

/* Things To Do - Category grid page */
.things-to-do-quick-nav { margin: 2rem 0 3rem; }
.things-to-do-quick-nav .btn { margin: 0 0.25rem 0.5rem 0; background: hsl(var(--siteColor1)); box-shadow: 0 0 0 0.125rem hsl(var(--siteColor1)); color: hsl(var(--white)); transition: all ease-in-out 0.4s; }
.things-to-do-quick-nav .btn.active { pointer-events: none; cursor: none; background-color: hsl(var(--white)); box-shadow: 0 0 0 0.125rem hsl(var(--gray)); color: hsl(var(--bodyFontColor)); }
.things-to-do-quick-nav .btn:hover { background: hsl(var(--siteColor2)); color: hsl(var(--white)); }
.things-to-do-category-grid [class^=col] { display: flex; margin-bottom: 1.875rem; }
.things-to-do-category-grid .card { overflow: hidden; width: 100%; position: relative; background: hsl(var(--white)); border: none; border-radius: var(--borderRadius); box-shadow: var(--dropShadow); }
.things-to-do-category-grid .card:hover { box-shadow: var(--dropShadow), var(--dropShadow); }
.things-to-do-category-grid .card-highlight { border: 0.25rem solid hsl(var(--siteColor1)); }
.things-to-do-category-grid .card-link { overflow: hidden; display: block; background: hsl(var(--black)); }
.things-to-do-category-grid .card-icon { opacity: 0.25; width: 8rem; height: 8rem; position: absolute; top: -1rem; right: -1rem; z-index: 1; border-radius: 50%; overflow: hidden; }
.things-to-do-category-grid .card-img-top { opacity: 0.85; width: 100%; height: 15.625rem; object-fit: cover; transform: scale(1); transition: all ease-in-out 0.4s; }
.things-to-do-category-grid .card:hover .card-img-top { opacity: 1; transform: scale(1.2); }
.things-to-do-category-grid .card-body { display: flex; flex-direction: inherit; justify-content: space-between; position: relative; z-index: 2; padding: 1rem 1.25rem; background-color: transparent; }
.things-to-do-category-grid .card-text { margin: 0; }
.things-to-do-category-grid .card-title { font-family: var(--siteFont1), sans-serif; font-weight: var(--wMedium); }
.things-to-do-category-grid .btn { display: block; margin-top: 0.9375rem; background-color: hsl(var(--siteColor1)); border-radius: var(--borderRadiusPill); color: hsl(var(--white)); font-weight: var(--wRegular); transition: all ease-in-out 0.4s; }
.things-to-do-category-grid .btn:hover { background-color: hsl(var(--siteColor2)); }

/* Things To Do - Collapsible Module */
.cms-things-to-do-collapse-wrap { margin: 1.5625rem 0; }
.cms-things-to-do-collapse-wrap .category { margin: 0 0 1.875rem; }
.cms-things-to-do-collapse-wrap .category .h2 { margin-bottom: 0.625rem; }
.cms-things-to-do-collapse-wrap .card-title { font-size: 1.75rem; }

/* Things To Do - Detail page */
.cms-things-to-do-detail-wrap { margin: 3.125rem 0; }
.cms-things-to-do-detail-wrap .contact-card { display: flex; flex-direction: column; align-items: center; max-width: 50rem; margin: -15rem auto 5rem; padding: 2rem 4rem; background-color: hsl(var(--white)); box-shadow: var(--dropShadow); border-radius: var(--borderRadius); text-align: center; }
.cms-things-to-do-detail-wrap .contact-card hr { width: 80%; margin: 2rem auto; }
.cms-things-to-do-detail-wrap .contact-card .title { margin-bottom: 0; }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-address { margin-bottom: 2rem; font-size: 1.5rem; }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-blocks { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-around; margin-bottom: 2rem; }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link { display: flex; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 100%; max-width: 100%; margin-bottom: 0.5rem; padding: 1.5rem; background-color: hsl(var(--siteColor1)); border-radius: var(--borderRadiusCheckbox); font-size: 1.25rem; color: hsl(var(--white)); text-align: center; transition: all 0.4s ease-in-out; }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link:hover { background: hsl(var(--siteColor2)); color: hsl(var(--white)); text-decoration: none; }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link .icon { display: block; width: 3rem; height: 3rem; margin: 0 auto 1rem; color: hsl(var(--white)); }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-block-text span { display: block; font-weight: var(--wMedium); }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-facebook-link { font-weight: var(--wMedium); }
.cms-things-to-do-detail-wrap .contact-card .things-to-do-facebook-link .icon { width: 3rem; height: 3rem; margin-right: 0.5rem; padding: 0.5rem; background-color: hsl(var(--siteColor1)); border-radius: 50vw; color: hsl(var(--white)); }

.cms-things-to-do-detail-wrap .card-img-wrap { overflow: hidden; width: 100%; max-width: 18.75rem; min-height: 18.75rem; margin: 0 auto 0.9375rem; padding-bottom: 65%; position: relative; border-radius: var(--borderRadius); box-shadow: var(--dropShadow); }
.cms-things-to-do-detail-wrap .card-img-wrap:before { content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 1; background-image: linear-gradient(-45deg, hsla(0, 0%, 100%, 90%), hsla(0, 0%, 100%, 15%) 50%, hsla(0, 0%, 100%, 0) 60%); box-shadow: inset 0 0 0 0.0625rem hsla(0, 0%, 100%, 20%); border-radius: var(--borderRadius); }
.cms-things-to-do-detail-wrap .card-img-left { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; }
@media(min-width:480px){
  .cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link { flex-basis: 47%; max-width: 47%; }
  .cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link:last-child { flex-basis: 97%; max-width: 97%; }
}
@media(min-width:578px){
  .cms-things-to-do-detail-wrap .card-img-wrap { max-width: 100%; min-height: 0; padding-bottom: 100%; }
}
@media(min-width:768px){
  .cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link { flex-basis: 30%; max-width: 30%; }
  .cms-things-to-do-detail-wrap .contact-card .things-to-do-block-link:last-child { flex-basis: 30%; max-width:30%; }
  .cms-things-to-do-detail-wrap .card-img-wrap { max-width: 100%; min-height: 0; padding-bottom: 100%; }
}

