/*
 Theme Name:   Trilogy Spa Holdings
 Theme URI:    https://trilogyspaholdings.com
 Description:  GeneratePress child theme for TSH
 Author:       Justin
 Author URI:   https://trilogyspaholdings.com
 Template:     generatepress
 Version:      1.0
*/

body { margin-top: 84px; }
body.admin-bar header.site-header { margin-top: 32px; }
header.site-header {  background: rgba(231, 230, 222, 0.8); position: fixed;
top: 0; width: 100%; z-index: 10;  }

.content-area ul { margin-left: 2rem; }

.inside-header { padding: 12px 40px; }

header + .site.grid-container:before { content: ' '; width: 100%; height: 114px; position: absolute; top:82px; left: 0; background-image: url(images/topstrip-bg.jpg); background-repeat: no-repeat; background-size: 100% 114px; }
body.admin-bar header + .site.grid-container:before { top: 114px; } 
header + .site.grid-container { padding-top: 114px; }

.main-navigation .main-nav ul li { padding-left: 12px; padding-right: 12px;  }
.main-navigation .main-nav ul li a { padding-left: 0; padding-right: 0;  transform: scaleX(1); transition: transform .4s ease;  }
.main-navigation .main-nav ul li a:hover { transform: scaleX(1.1); }


.button, .wpcf7-submit  { border: 1px solid #16355a !important; }
.wp-block-button__link { border-radius: 0; border-width: 1px !important; }
.wpcf7-form-control.wpcf7-textarea { height: 120px; }


h1.entry-title { text-align: center; }
body.single-team h2.entry-title { text-transform: uppercase; text-align:center;  }
/* h1.entry-title, .team-block h3, .team-block h4, h1.team-name, h3.job-title, .case-studies-wrap .item h3, .locations-block .item h3 { transform: scaleX(1.1); } */



body.single-post article.type-post { border: 1px solid #dbd9cf; padding: 60px 80px; }
body.single-post h1.entry-title { max-width: 80%; margin: 0 auto; }
body.single-post footer.entry-meta { display: none; }

body.single-post header.entry-header .entry-meta { text-align: center; margin-top: 10px; margin-bottom: 30px; }

body.single-post .blog-label { margin-bottom: 40px; }
body.single-post .blog-label a { text-decoration: none; }


.blogpostswrap { padding-top: 30px; }
.blogpostswrap .wp-block-post-author-name, .blogpostswrap .wp-block-post-date { font-size: 12px; }
.blogpostswrap .wp-block-post-author-name { padding-top: 8px; }
.blogpostswrap .wp-block-post-date  { padding-bottom: 8px; }
.blogpostswrap h2.wp-block-post-title { font-size: 30px; }
.blogpostswrap .wp-block-post-excerpt { padding-bottom: 10px; }

.blogpostswrap .wp-block-post > .wp-block-columns { border: 1px solid #dbd9cf; padding-right: 10px; }

.team-content-wrap { max-width: 700px; margin: 0 auto; display: grid; gap: 50px; grid-template-columns: 200px 1fr; padding-bottom: 30px; }
.team-content-wrap .col-1 { text-align: center; margin-top: 6px; }
.team-content-wrap .col-1 img { margin: 0 auto; max-width: 163px; height: auto; }
body.single-team h1.team-name { font-size: 18px !important; text-transform: uppercase; margin-top: 10px; margin-bottom: 0;   }
body.single-team h3.job-title { font-size: 15px; margin-top: 5px; }
.team-content-wrap .button { margin-top: 20px; }


.team-block { max-width: 1000px; margin: 25px auto 65px auto; display: grid; gap: 35px; grid-template-columns: 1fr 1fr 1fr 1fr 1fr;   text-align: center;  }
.team-block-2, .team-block-1 { max-width: 500px; grid-template-columns: 1fr 1fr; gap: 40px;  }
.team-block-3 { max-width: 750px; grid-template-columns: 1fr 1fr 1fr; gap: 35px;  }
.team-block-4 { max-width: 950px; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 30px;  }
.team-info { min-height: 90px; }
.team-block h3 { text-transform: uppercase; font-size: 15px; font-weight: 300; margin-bottom: 5px; letter-spacing: -.03rem; }
.team-block-2 h3, .team-block-1 h3 { font-size: 18px; }
.team-block h3 a { text-decoration: none; }
.team-block h4 { font-size: 12px; line-height: 1.3;   }
.team-block-2 h4, .team-block-1 h4 { font-size: 14px; }
.team-block img { aspect-ratio: 1 /1; max-width: 125px; height: auto; margin-bottom: 15px; }
.team-block-2 img, .team-block-1 img { max-width: 160px; }

.team-block .button { padding: 4px 18px; }

.teamfooterpattern > .is-layout-constrained { max-width: 100% !important; padding-bottom: 0 !important}


.bordershadowbox { border: 4px solid #fff; border-radius: 10px; box-shadow:rgba(0, 0, 0, 0.24) 9.51px 8.86px 25px 0px; }

.whatwedobox { margin-bottom: 80px !important; }
.whatwedobox .wp-block-group__inner-container {padding: 0 !important; }
.whatwedobox .wp-block-columns { margin-bottom: 0; text-align: center; }
.whatwedobox .wp-block-columns .wp-block-column { padding: 25px 25px 10px 25px; }
.whatwedobox .wp-block-cover { height: 100%;  }
.whatwedobox .wp-block-columns .bgbox:first-child { border-right: 4px solid #fff; border-radius: 12px;  }
.whatwedobox .wp-block-columns .bgbox:last-child { border-left: 4px solid #fff; border-radius: 12px;  }
.whatwedobox .wp-block-cover .wp-block-cover__image-background { height: auto; width: 100%;    left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);  }
.whatwedobox h2 { font-size: 28px; }
.whatwedobox ul { display: inline-block;  }
.whatwedobox li { text-align: left; }


body.single-case-study .top-area { position: relative; margin-bottom: 40px; }
body.single-case-study .case-study-head { color: #fff; text-align: center; background: rgba(22, 53, 90, 0.8); border-radius: 15px; width: 90%; margin: 0 auto; position: absolute; 
bottom: 30px; left: 5%; padding: 20px 50px;  }
body.single-case-study .case-content-wrap { text-align: center; }
body.single-case-study h2.case-kicker { text-transform: uppercase; letter-spacing: .35em; font-size: 16px; margin: 0 0 10px 0; }
.case-study-content { max-width: 900px; margin: 0 auto 50px auto; display: grid; gap: 30px; grid-template-columns: 60% 1fr; padding-bottom: 30px; text-align: left; }
.case-study-content .col-1 .bordershadowbox { padding: 40px 60px; }
.case-study-content .col-1 h2, .case-study-content .col-2 h3 { text-transform: uppercase; font-size: 22px; margin-bottom: 10px; }
.case-study-content .col-2 .bordershadowbox { background: #d7d5c8; border-color: #e6e5de; padding: 40px 30px 20px 30px; }



.case-studies-wrap { max-width: 800px; margin: 25px auto 65px auto; display: flex; gap: 60px;  text-align: center; flex-wrap: wrap;
  justify-content: center;  }
.case-studies-wrap .item { flex: 0 0 calc(50% - 60px); background: #f1f0ec; border-radius: 10px; padding: 20px; box-shadow: rgba(0, 0, 0, 0.24) 9.51px 8.86px 25px 0px;  }
.case-studies-wrap .item a { text-decoration: none; }
.case-studies-wrap .item h3 { padding-left: 10px; padding-right: 10px; font-size: 18px; line-height: 1.2; }
.case-studies-wrap .item-content { background-color: #666; line-height: 1.3; background-repeat: none; background-size: cover; aspect-ratio: 1 / 1; color: #fff; position: relative;  }
.case-studies-wrap .item-content .item-inner { opacity: 0; transition: opacity 0.5s ease-in-out; padding: 50px 15px 10px 15px; position: relative;   }
.case-studies-wrap .item-content:hover .item-inner  { opacity: 1; z-index: 10;  }
.case-studies-wrap .item-content .item-shade { opacity: 0;  transition: opacity 0.5s ease-in-out; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0,0,0,.5); display: block; z-index: 2; }
.case-studies-wrap .item-content:hover .item-shade { opacity: 1; }
.case-studies-wrap .item-content span { font-size: 90%;  }

.case-studies-slider .item a { display: block; text-decoration: none !important; aspect-ratio: 20 / 7; background-size: cover; background-repeat: no-repeat; position: relative; }
.case-studies-slider .item .casecontent { color: #fff;  position: absolute; left: 10%; top: 13%; max-width: 400px; }
.case-studies-slider .item .casecontent h3 {  font-size: 36px; }
.case-studies-slider .item .button { border-color: #fff !important; padding: 6px 20px; font-size: 15px; }
.case-studies-slider .item .button:hover { background: rgba(255,255,255,.3); }

.locations-block { display: flex; gap: 40px;  text-align: center; flex-wrap: wrap;
  justify-content: center; padding-top: 15px; padding-bottom: 50px;  }
  .locations-block a { text-decoration: none; }
.locations-block .item { flex: 0 0 calc(33% - 40px); background: #f1f0ec; border-radius: 10px; padding: 12px; box-shadow: rgba(0, 0, 0, 0.24) 9.51px 8.86px 25px 0px; }
.locations-block.layout-2 .item { flex: 0 0 calc(50% - 40px); }
.locations-block .item img { width: 100%; height: auto; aspect-ratio: 3 / 2; }
.locations-block .item h3 { font-size: 15px; text-transform: uppercase; margin: 6px 0 4px 0;}
.locations-block .item h4 { font-size: 15px; line-height: 1.3; margin: 0; min-height: 50px;  }
.locations-block .item .citystate { color: #b3ac90; font-size: 15px;  }
.locations-block .arrow { margin-bottom: 20px; }
.locations-block .arrow svg { width: 35px; height: 11px; fill: #b3ac90; }


.careerlinks-wrap { display: grid; gap: 25px; grid-template-columns: 1fr 1fr; }
.careerlinks-wrap .button { width: 100%; text-align: center; font-size: 13px; height: 100%; vertical-align: middle; align-content: center;  }
.careerlinks-wrap > div { min-height: 67px; }

/* Slider */
.slick-loading .slick-list
{
    background: #fff url('./slick/ajax-loader.gif') center center no-repeat;
}


/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 40px;
    padding: 0;

    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    z-index: 20 !important;
    opacity: 1;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: .6;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .75;
}




.slick-prev:before,
.slick-next:before
{
    font-size: 20px;
    line-height: 1;

    opacity: 1;
    color: #fff !important;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: 25px;
}

.slick-prev:before, .slick-next:before {
    content: '';
    display: block;
    width: 20px; /* adjust as needed */
    height: 40px; /* adjust as needed */
    background-repeat: no-repeat;
    background-size: contain;
    color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 41'%3E%3Cpath fill='%23fff' d='M20.3 40.8 0 20.5 20.3.2l.7.7L1.3 20.5 21 40.1z'/%3E%3C/svg%3E");
}


.slick-next
{
    right: 25px;
}

.slick-next:before
{
    transform: rotate(180deg);
}


/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: 25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width:15px;
    height: 15px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 6px;
    height: 6px;
    padding: 0;

	background: #fff;
	border: none;
	border-radius: 50%;
	
    cursor: pointer;

    color: transparent;
    outline: none;
    box-sizing: content-box;

}
.slick-dots li button:hover,
.slick-dots li button:focus,
.slick-dots .slick-active button
{
    outline: none;
    background: transparent;
	border: 2px solid #fff !important;
}

.news-links-list { list-style-type: none; padding: 0 !important; margin: 0 !important; display: block;  }
.news-link-item { display: block;  padding: 20px; background: #f1f0ec; border-radius: 2px; box-shadow: rgba(0, 0, 0, 0.25) 1px 2px 5px 0px; margin-bottom: 20px;  }
.news-link-item .news-top { display: flex; font-family: AkzidenzGroteskBE-LightEx, Helvetica, Arial, sans-serif; width: 100%;  column-gap: 30px;  margin-bottom: 5px;}
.news-link-item h3 { width: 80%; letter-spacing: -.04em; font-weight: 400; text-transform: uppercase; font-size: 18px; margin: 0;   }
.news-link-item .news-top div { width: 20%; min-width: 150px; text-align: right; font-size: 14px; color: #B3AD90;  }
.news-link-item .info { font-size: 14px; min-height: 58px; }
.news-link-item .button { background: #e6e5de; font-size: 13px; line-height: 1; padding: 4px 8px; margin-top: 2px; }

#news-links-pagination { text-align: center; margin-top: 40px;  }
#news-links-pagination .news-page-btn, .news-page-current { cursor: pointer; display: inline-block; font-weight: 300; color: #919191; width: 32px; height:32px; border-radius: 50%; text-align: center; line-height: 30px; margin: 0 6px; border: 1px solid #919191; }
.news-page-btn { border-color: transparent !important; }
.news-page-btn.disabled { opacity: 0; cursor: default !important; }

.footer-widgets-container { padding-bottom: 0; }
.site-footer .widget_nav_menu { padding-left: 0; }
#menu-footer-menu { text-align: center; }
#menu-footer-menu li { display: inline-block; position: relative; padding-left: 5px; padding-right: 5px; font-size: 14px;  }
#menu-footer-menu li:before { content: '|'; display: block; position: absolute; left: -5px; top: 0; }
#menu-footer-menu li:first-child:before { display: none; }

footer.site-info { margin-bottom: 40px; }

.menu-toggle, #mobile-menu-control-wrapper { background: none !important; }
.gp-icon.icon-menu-bars { font-size: 24px; position: relative; top: 5px; }

@media (max-width: 1500px) {
.hometophero .hometopherocontent { height: 500px; }
}

@media (max-width: 1200px) {
.hometophero .hometopherocontent p { font-size: 14px; }
}

@media (max-width: 1024px) {
.hometophero .hometopherocontent { height: auto; }
.team-block { grid-template-columns: 1fr 1fr 1fr; }
.team-block-2 { grid-template-columns: 1fr 1fr; }
.case-studies-slider .item .casecontent h3 { font-size: 24px; }
.whatwedobox h2 { font-size: 24px; }
.blogpostswrap h2.wp-block-post-title { font-size: 26px; }

.blogpostswrap .wp-block-columns.alignwide {  width: 100% !important; margin-left: auto; margin-right: auto; }
.blogpostswrap .wp-block-post-template { margin-left: 0 !important; }

}

@media (max-width: 781px) {

.mobilereverse { flex-direction: column-reverse; }
.whatwedobox .wp-block-columns .bgbox { border: none !important; border-bottom: 4px solid #fff !important; }
.whatwedobox .wp-block-columns .bgbox .wp-block-cover { min-height: 380px; }
.whatwedobox h2 { font-size: 22px; }
.whatwedobox .wp-block-columns .wp-block-column { padding-top: 5px; }

body.single-post article.type-post { padding: 20px; }
.blogpostswrap .wp-block-post > .wp-block-columns { padding-right: 0; }
.wp-block-query-is-layout-flow .wp-block-column.is-layout-flow.wp-block-column-is-layout-flow:last-child { padding: 0 20px 20px 20px; }
.blogpostswrap h2.wp-block-post-title { font-size: 24px; }


}



@media (min-width: 769px) and (max-width: 1024px) { 
.site-header .header-image { width: 150px; }
.main-navigation .main-nav ul li { padding: 0; }
.main-navigation .main-nav ul li a { transform: scaleX(0.85); }
.main-navigation .main-nav ul li a:hover { transform: scaleX(.95); }

}




@media (max-width: 768px) {

body { margin-top: 64px; } 
header + .site.grid-container:before { content: ' '; width: 100%; height: 59px; position: absolute; top: 62px; left: 0; background-image: url(images/topstrip-bg.jpg); background-repeat: no-repeat; background-size: 100% 114px; }
body.admin-bar header + .site.grid-container:before { top: 94px; } 
header + .site.grid-container { padding-top: 60px; }
.main-navigation.toggled .main-nav li { text-align: center; }
.inside-header { padding: 0 20px; }
#site-navigation { background: #d7d5c8; }
.wpcf7-form-control-wrap input { width: 100%; }
.careerlinks-wrap { display: block; }
.careerlinks-wrap > div { min-height: 30px; }
.careerlinks-wrap .item { margin-bottom: 25px; }
.news-link-item .news-top { column-gap: 0; row-gap: 5px; flex-direction: column-reverse; }
.news-link-item .news-top div, .news-link-item h3  { width: 100%; flex: 0 0 100%;  }
.news-link-item h3 { font-size: 16px; }
.news-link-item .info, .news-link-item .news-top div { font-size: 13px; }
.news-link-item .link { text-align: center; }
.news-link-item .button { font-size: 12px;  }
#news-links-pagination .news-page-btn, .news-page-current 
#news-links-pagination .news-page-btn, .news-page-current { width: 24px; height: 24px; line-height: 20px;  margin: 0 1px;} 

.case-studies-wrap {display: block;  }
.case-studies-wrap .item { margin-bottom: 30px; }
.case-studies-wrap .item  .item-inner { opacity: 1; background: #f1f0ec; color: #4c617b; position: absolute; bottom: 0; padding-top: 15px;  }
.case-studies-wrap .item-shade { display: none !important; }

.case-study-content { display: block; margin-bottom: 0;}
.case-study-content .col-1 .bordershadowbox, .case-study-content .col-2 .bordershadowbox { padding: 25px 25px 15px 25px; margin-bottom: 25px;  }
.case-study-content .col-1 h2, .case-study-content .col-2 h3 { font-size: 20px; }
h1.case-name.entry-title { font-size: 18px; }
body.single-case-study h2.case-kicker { font-size: 12px; letter-spacing: .02em; }
body.single-case-study .case-study-head { position: relative; bottom: auto; left: auto; margin-top: 10px; width: 100%; padding: 15px 20px; }

.locations-block { gap: 10px; justify-content:space-between;  }
.locations-block .item, .locations-block.layout-2 .item { flex: 0 0 calc(50% - 20px); margin-bottom: 30px;  }
.locations-block .item h3, .locations-block .item h4 { font-size: 13px; }
.locations-block .item .citystate { font-size: 12px; }
.locations-block .arrow { margin-bottom: 0; }

.team-content-wrap { display: block; } 
.team-content-wrap .buttonwrap { text-align: center; }
.team-content-wrap .buttonwrap a { display: inline-block; }

.case-studies-slider .item .casecontent h3 { font-size: 22px; margin-bottom: 25px; text-align: center;   }
.case-studies-slider .item { text-align: center; }
.case-studies-slider .item a { aspect-ratio: 16 / 7; }

.slick-next { right: 15px; }
.slick-prev { left: 15px; }
ul.slick-dots { margin-left: 0; bottom: 10px;  }
.case-studies-slider .item .casecontent { width: 100%; max-width: 1000px; left: 0; padding-left: 30px; padding-right: 30px; }
.case-studies-slider { margin-left: calc(-100vw / 2 + 100% / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
    max-width: 100vw;
    width: auto; }
    
    .case-studies-slider .item .button {
    display: inline-block; 
    border-color: #fff !important;
    padding: 4px 10px;
    font-size: 13px;
    margin: 0 auto;

}


    
.footer-bar { margin-bottom: 30px !important;}

}

@media (max-width: 567px) {

.team-block { grid-template-columns: 1fr; }
.team-info { min-height: 25px; }
.team-block img { margin-bottom: 8px; }
.team-block-2 h3, .team-block-1 h3 { font-size: 16px; }
.whatwedobox .wp-block-columns .bgbox .wp-block-cover { min-height: 300px; }
.locations-block.layout-2 { display: block; }

.case-studies-slider .item a { aspect-ratio: 14 / 7; }
.case-studies-slider .item .casecontent h3 { font-size: 18px;   }



}

@media (max-width: 467px) {
.locations-block { gap: 0; justify-content:space-between;  }
.locations-block .item  { flex: 0 0 100%; margin-bottom: 30px;  }
.whatwedobox .wp-block-columns .bgbox .wp-block-cover { min-height: 250px; }
#menu-footer-menu li { font-size: 12px; }
.case-studies-slider .item a { aspect-ratio: 12 / 7; }

}

@media (max-width: 349px) {

.site-header .header-image { width: 160px; }
#menu-footer-menu li { font-size: 11px; }
.case-studies-slider .item a { aspect-ratio: 10 / 7; }


}