/*
Theme Name: GreenTouchMassage
Theme URI: https://greentouchmassage.com/
Description: A Divi 5 child theme for Green Touch Massage.
Author: Wildcat SEO
Author URI: https://wildcatseo.com/
Template: Divi
Version: 1.0.8
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: green-touch-massage
*/

/* ==========================================================
   Green Touch Massage — styles for the Divi module build.
   Breakpoints follow Divi: tablet <=980px, phone <=767px.
   Section padding and heading sizes are set per device on the
   Divi modules themselves; this file handles layout and look.
   ========================================================== */
:root{--gtm-green:#173d32;--gtm-light:#f5f2e9;--gtm-lime:#dce6b2;--gtm-ink:#23392f}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body,body #page-container,body #main-content,body #et-main-area{background:var(--gtm-light)!important}
/* header (top bar + nav) is sticky; the top bar scrolls away and the nav stays pinned */
:root{--gtm-topbar-h:38px}
@media(max-width:767px){:root{--gtm-topbar-h:54px}}
#page-container .et-l:has(>.gtm-header){position:sticky;top:0;z-index:99}
body.admin-bar #page-container .et-l:has(>.gtm-header){top:32px}
@media(max-width:782px){body.admin-bar #page-container .et-l:has(>.gtm-header){top:0}}

/* ---- top bar ---- */
#page-container .gtm-topbar{height:var(--gtm-topbar-h);display:flex;align-items:center;border-bottom:1px solid #ffffff1f}
#page-container .gtm-topbar .et_pb_row{width:100%;max-width:1400px;padding:0;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
#page-container .gtm-topbar .et_pb_row:before,#page-container .gtm-topbar .et_pb_row:after{display:none!important;content:none!important}
#page-container .gtm-topbar .et_pb_column{width:auto!important;margin:0!important;float:none;flex:0 0 auto}
#page-container .gtm-topbar .gtm-topbar-right{margin-left:auto!important;text-align:right}
#page-container .gtm-topbar .et_pb_module{margin:0}
#page-container .gtm-topbar p{margin:0;padding:0;font-size:12px;line-height:1.4;letter-spacing:.3px;color:#dfe8dc}
#page-container .gtm-topbar a{color:#dfe8dc;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
#page-container .gtm-topbar a:hover{color:var(--gtm-lime)}
#page-container .gtm-topbar a:before{content:'';width:14px;height:14px;flex:0 0 14px;background:var(--gtm-lime);-webkit-mask:var(--gtm-ico) center/contain no-repeat;mask:var(--gtm-ico) center/contain no-repeat}
#page-container .gtm-topbar-addr a{--gtm-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 00-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 00-7-7zm0 9.5A2.5 2.5 0 1112 6.5a2.5 2.5 0 010 5z'/%3E%3C/svg%3E")}
#page-container .gtm-topbar-phone a{--gtm-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 006.6 6.6l2.2-2.2a1 1 0 011-.25 11.4 11.4 0 003.6.57 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.25.2 2.45.57 3.57a1 1 0 01-.25 1z'/%3E%3C/svg%3E");font-weight:600}
@media(max-width:767px){
#page-container .gtm-topbar .et_pb_row{flex-direction:column;justify-content:center;gap:4px}
#page-container .gtm-topbar p{font-size:11px;text-align:center}
#page-container .gtm-topbar .gtm-topbar-right{margin-left:0!important;text-align:center}
}

/* ---- same-day appointments popup ---- */
.gtm-pop{position:fixed;inset:0;z-index:100000;background:rgba(10,36,27,.55);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .3s}
.gtm-pop.is-open{opacity:1}
.gtm-pop-box{position:relative;width:100%;max-width:450px;background:#fff;border-radius:4px 60px 4px 4px;padding:36px 32px 30px;text-align:center;box-shadow:0 25px 60px rgba(0,0,0,.25);transform:translateY(12px);transition:transform .3s;font-family:Arial,sans-serif;color:#23392f}
.gtm-pop.is-open .gtm-pop-box{transform:none}
.gtm-pop-close{position:absolute;top:10px;right:14px;background:none;border:0;font-size:28px;line-height:1;color:#7a877d;cursor:pointer;padding:4px}
.gtm-pop-close:hover{color:#173d32}
.gtm-pop-logo{display:block;margin:0 auto 14px;width:104px;height:auto}
.gtm-pop-eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:#6d845d;margin:0 0 10px}
.gtm-pop h2{font-family:Georgia,serif;font-weight:400;font-size:40px;line-height:1.1;color:#173d32;margin:0 0 10px;padding:0}
.gtm-pop-text{font-size:17px;line-height:1.6;color:#4d5e52;margin:0 0 22px}
.gtm-pop-btn{display:block;background:#173d32;color:#fff!important;text-decoration:none;font-weight:700;font-size:18px;padding:14px 16px;border-radius:20px 0;margin:0 0 18px;transition:.2s}
.gtm-pop-btn:hover{background:#dce6b2;color:#173d32!important}
.gtm-pop-note{font-size:13px;line-height:1.6;color:#6a765f;margin:0}
@media(max-width:480px){.gtm-pop-box{padding:30px 22px 24px}.gtm-pop h2{font-size:34px}.gtm-pop-btn{font-size:16px}}
body{color:var(--gtm-ink);font:16px/1.65 Arial,sans-serif}
#page-container{overflow-y:visible!important;overflow-x:clip!important}
#main-content .container:before{display:none}
body.single-post #main-content>.container{width:100%;max-width:none;padding-top:0}
body.single-post #left-area{width:100%;padding:0;float:none}
body.single-post .et_post_meta_wrapper{display:none}

/* ---- neutralise Divi spacing inside our sections ---- */
#page-container .et_pb_section.gtm-sec:not(.gtm-hero):not(.gtm-closing):not(.gtm-visit):not(.gtm-header):not(.gtm-footer){background-color:transparent}
#page-container .gtm-sec .et_pb_row,#page-container .gtm-sec .et_pb_row_inner{width:100%;max-width:1320px;margin:0 auto;padding:0}
#page-container .gtm-sec .et_pb_column{margin-right:0;margin-bottom:0}
#page-container .gtm-sec .et_pb_module{margin-bottom:0}
#page-container .gtm-sec .et_pb_text_inner>*:last-child{margin-bottom:0;padding-bottom:0}
#page-container .gtm-sec p{padding-bottom:0;margin:0 0 1em}
#page-container .gtm-sec p:last-child{margin-bottom:0}
#page-container .gtm-sec a{color:inherit}
#page-container .gtm-sec h1,#page-container .gtm-sec h2,#page-container .gtm-sec h3,#page-container .gtm-sec h4,#page-container .gtm-sec .et_pb_module_heading{font-family:Georgia,serif;font-weight:400;line-height:1.1;color:inherit;padding-bottom:0;margin-top:0}
#page-container .gtm-sec .gtm-h{margin-bottom:20px}
#page-container .gtm-sec h2{letter-spacing:-1.5px}
#page-container .gtm-sec .et_pb_text{color:inherit;font-size:16px;line-height:1.65}
#page-container .gtm-sec ul,#page-container .gtm-sec ol{padding:0 0 0 22px;margin:0 0 1em}
#page-container .gtm-sec ul{list-style:disc}
#page-container .gtm-sec .gtm-img img{display:block;width:100%;object-fit:cover}
#page-container .gtm-sec .gtm-img .et_pb_image_wrap{display:block;width:100%}

/* ---- eyebrow, buttons ---- */
#page-container .gtm-eyebrow{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;margin-bottom:25px;line-height:1.5}
#page-container .gtm-eyebrow p{margin:0}
#page-container .gtm-sec .et_pb_button_module_wrapper{margin:0}
body #page-container .et_pb_button.gtm-btn,body #page-container .et_pb_button.gtm-btn:hover{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 25px!important;border-radius:3px;background:var(--gtm-lime);color:var(--gtm-green)!important;font:600 14px/1.4 Arial,sans-serif!important;letter-spacing:0;border:1px solid transparent!important;transition:.2s}
body #page-container .et_pb_button.gtm-btn:hover{background:#fff;transform:translateY(-2px)}
body #page-container .et_pb_button.gtm-btn:after,body #page-container .et_pb_button.gtm-btn:before{display:none!important}
body #page-container .et_pb_button.gtm-btn-dark,body #page-container .et_pb_button.gtm-btn-dark:hover{background:var(--gtm-green);color:#fff!important}
#page-container .gtm-sec .gtm-sec-btn,#page-container .gtm-card-row-btn{margin-top:35px}

/* ---- hero ---- */
#page-container .gtm-hero{min-height:480px;display:flex;align-items:center;color:#fff;overflow:hidden}
#page-container .gtm-hero.gtm-hero-home{min-height:650px}
#page-container .gtm-hero>.et_pb_row{max-width:1300px}
#page-container .gtm-hero .gtm-crumb{font-size:12px;color:#e1e7dc;margin-bottom:28px}
#page-container .gtm-hero .gtm-crumb a{text-decoration:underline}
#page-container .gtm-hero .gtm-eyebrow{color:var(--gtm-lime);margin-bottom:18px}
#page-container .gtm-hero .et_pb_module_heading,#page-container .gtm-hero h1{color:#fff;line-height:1.09;letter-spacing:-2px;max-width:950px;margin-bottom:25px;text-wrap:balance}
#page-container .gtm-hero.gtm-hero-home .et_pb_module_heading{max-width:760px}
#page-container .gtm-hero .gtm-hero-home-p p{max-width:570px;color:#e4eadd;font-size:17px}
#page-container .gtm-hero .et_pb_button_module_wrapper,#page-container .gtm-hero .gtm-hero-phone{display:inline-block;vertical-align:middle;margin:28px 18px 0 0}
#page-container .gtm-hero .gtm-hero-phone a{font-size:19px;color:#fff;text-decoration:underline;text-underline-offset:6px}
#page-container .gtm-hero .gtm-hero-foot{font-size:11px;letter-spacing:1px;margin-top:28px;color:#e1e8db}

/* ---- section heading rows ---- */
#page-container .gtm-heading-row{margin-bottom:45px!important}
#page-container .gtm-sec-h .et_pb_module_heading{margin-bottom:0}

/* ---- card grids (rows become grid items) ---- */
#page-container .gtm-grid{display:grid;grid-template-columns:repeat(var(--gtm-cols,3),minmax(0,1fr));gap:45px 28px;padding-left:max(6%,calc((100% - 1320px)/2))!important;padding-right:max(6%,calc((100% - 1320px)/2))!important}
#page-container .gtm-grid.gtm-grid-4{--gtm-cols:4;column-gap:25px}
#page-container .gtm-grid.gtm-grid-2{--gtm-cols:2;gap:45px}
#page-container .gtm-grid>.et_pb_row{grid-column:1/-1;max-width:none}
#page-container .gtm-grid>.et_pb_row.gtm-cardrow{display:contents}
#page-container .gtm-grid:before,#page-container .gtm-grid:after,#page-container .gtm-grid>.gtm-cardrow:before,#page-container .gtm-grid>.gtm-cardrow:after{display:none!important;content:none!important}
#page-container .gtm-grid .gtm-card{width:auto!important;margin:0!important;float:none;border-bottom:1px solid #bec7b8;padding-bottom:24px}
#page-container .gtm-grid .gtm-card-empty{display:none!important}
#page-container .gtm-grid>.gtm-heading-row{margin-bottom:0!important}
#page-container .gtm-grid>.gtm-flow-row{margin-top:-10px!important}
#page-container .gtm-grid-4 .gtm-card .gtm-card-p p{min-height:70px}
#page-container .gtm-card .gtm-card-img img{height:250px;border-radius:140px 140px 4px 4px}
#page-container .gtm-card .gtm-h{margin:26px 0 12px;letter-spacing:0}
#page-container .gtm-card .gtm-card-p p{color:#667367;font-size:14px}
#page-container .gtm-card .gtm-card-link{margin-top:12px}
#page-container .gtm-card .gtm-card-link a{text-decoration:none;font-size:13px;display:flex;justify-content:space-between}
#page-container .gtm-journal-card{border-bottom-color:#c7d1bf!important;padding-bottom:30px!important}
#page-container .gtm-journal-card .gtm-card-img img{height:320px;border-radius:0;margin-bottom:30px}
#page-container .gtm-journal-card .gtm-eyebrow{font-size:10px;letter-spacing:1px}
#page-container .gtm-journal-card h2{letter-spacing:-.7px;line-height:1.15}
#page-container .gtm-journal-card h2 a{text-decoration:none}
#page-container .gtm-journal-card .gtm-journal-p p{color:#61705b}

/* ---- story blocks ---- */
#page-container .gtm-story{margin-bottom:70px!important}
#page-container .gtm-story:last-child{margin-bottom:0!important}
#page-container .gtm-story.gtm-plain{max-width:900px}
#page-container .gtm-story .gtm-h{margin-bottom:22px;letter-spacing:-.8px;line-height:1.18;overflow-wrap:anywhere}
#page-container .gtm-story-text p,#page-container .gtm-story-text li{font-size:16px;line-height:1.9;color:#556650}
#page-container .gtm-story-text li{line-height:1.8;margin-bottom:12px}
#page-container .gtm-story-text p:has(strong){color:#334b37}
#page-container .gtm-story-text .et_pb_text_inner>p:has(strong){padding-left:15px;border-left:2px solid #a4b48e}
#page-container .gtm-story-text li p{padding:0;border:0;margin:0}
#page-container .gtm-story-text a{color:#355b38;text-underline-offset:3px}
#page-container .gtm-story-photo img{height:420px;border-radius:120px 4px 4px 4px}
#page-container .gtm-reverse .gtm-story-photo img{border-radius:4px 120px 4px 4px}
@media(min-width:768px){
#page-container .gtm-sec .gtm-pictured{display:flex;gap:7%;align-items:center}
#page-container .gtm-pictured>.gtm-story-text{flex:1.15 1 0;min-width:0}
#page-container .gtm-pictured>.gtm-story-photo{flex:1 1 0;min-width:0}
#page-container .gtm-pictured.gtm-reverse{flex-direction:row-reverse}
}

/* ---- service article + sticky booking aside (specialty section) ---- */
#page-container .gtm-service-layout>.et_pb_row{max-width:1320px}
#page-container .gtm-intro-row{border-bottom:1px solid #ccd4c3;padding-bottom:32px!important;margin-bottom:45px!important}
#page-container .gtm-intro p{font-size:19px;line-height:1.85}
#page-container .gtm-service-layout .gtm-story{margin-bottom:52px!important}
#page-container .gtm-service-layout .gtm-story.gtm-plain{max-width:none}
#page-container .gtm-service-layout .gtm-story-photo img{height:350px;border-radius:4px 60px 4px 4px}
#page-container .gtm-aside{background:#e5ead9;border:1px solid #d0dac3;padding:25px!important}
#page-container .gtm-aside .gtm-eyebrow{font-size:9px;letter-spacing:1px}
#page-container .gtm-aside .gtm-h{letter-spacing:-1px}
#page-container .gtm-aside .et_pb_button_module_wrapper{margin:25px 0 14px}
body #page-container .gtm-aside .et_pb_button.gtm-btn{width:100%;font-size:12px!important;padding:14px 10px!important}
#page-container .gtm-aside .gtm-aside-p p{font-size:13px;line-height:1.8;margin-bottom:10px}
#page-container .gtm-aside .gtm-aside-p a{display:block;font-size:13px;text-decoration:underline}
#page-container .gtm-visit-box{border-top:1px solid #ffffff45}
#page-container .gtm-aside hr{border:0;border-top:1px solid #c5d1b9;margin:25px 0}
#page-container .gtm-aside .notice{font-size:13px;color:#6a765f}
@media(min-width:768px){
#page-container .gtm-service-layout>.et_pb_row{display:flex;gap:65px;align-items:flex-start}
#page-container .gtm-service-layout .gtm-stories-col{flex:1 1 0;min-width:0;width:auto!important;margin:0!important}
#page-container .gtm-service-layout .gtm-aside{flex:0 0 285px;width:285px!important;margin:0!important;position:sticky;top:115px}
}
@media(min-width:1101px){
#page-container .gtm-service-layout .gtm-pictured{display:flex;gap:30px;align-items:flex-start}
#page-container .gtm-service-layout .gtm-pictured>.gtm-story-text{flex:1.4 1 0}
#page-container .gtm-service-layout .gtm-pictured>.gtm-story-photo{flex:1 1 0;position:sticky;top:120px}
}
@media(max-width:1100px){
#page-container .gtm-service-layout .gtm-pictured{display:block}
#page-container .gtm-service-layout .gtm-story-photo{margin-top:30px!important}
#page-container .gtm-service-layout .gtm-story-photo img{height:300px}
}

/* ---- price rows + rates ---- */
#page-container .price-row{display:grid;grid-template-columns:1fr auto;gap:20px;border-bottom:1px solid #d6dccd;padding:16px 0;font-size:15px}
#page-container .price-row span:last-child{font-family:Georgia,serif;font-size:22px}
@media(min-width:981px){
#page-container .gtm-rates{display:flex;gap:8%}
#page-container .gtm-rates>.gtm-rates-intro{flex:0 0 32%;width:auto!important}
#page-container .gtm-rates>.gtm-rates-menu{flex:1 1 0;width:auto!important}
}
@media(max-width:980px){#page-container .gtm-rates-intro{margin-bottom:25px!important}}
#page-container .gtm-rates-intro .gtm-sec-p p{color:#677466}
#page-container .gtm-rate-tabs{border:0!important;background:none!important;margin-bottom:16px!important}
#page-container .gtm-rate-tabs .et_pb_tabs_controls{background:none!important;border-bottom:1px solid #b9c3b2;display:flex}
#page-container .gtm-rate-tabs .et_pb_tabs_controls:after{display:none}
#page-container .gtm-rate-tabs .et_pb_tabs_controls li{background:none!important;border:0!important;margin:0;padding:0;float:none}
#page-container .gtm-rate-tabs .et_pb_tabs_controls li a{display:block;padding:15px 23px;color:#62705e!important;font-size:16px}
#page-container .gtm-rate-tabs .et_pb_tabs_controls li.et_pb_tab_active a{color:var(--gtm-green)!important;font-weight:700;border-bottom:3px solid var(--gtm-green)}
#page-container .gtm-rate-tabs .et_pb_all_tabs{background:none!important;padding:0}
#page-container .gtm-rate-tabs .et_pb_tab{padding:0!important}
#page-container .gtm-rates-menu .gtm-rates-p .addon{font-size:13px;color:#66745f;margin-top:22px}
#page-container .gtm-rates-menu .gtm-h{margin-top:35px}
#page-container .gtm-rates-menu .et_pb_button_module_wrapper{margin-top:10px}

/* ---- service link grid ---- */
#page-container .service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
#page-container .service-links a{padding:18px;border:1px solid #b8c5af;text-decoration:none}
#page-container .service-links a:hover{background:#e4ead7}

/* ---- closing CTA ---- */
#page-container .gtm-closing,#page-container .gtm-closing .et_pb_module,#page-container .gtm-closing .et_pb_button_module_wrapper{text-align:center}
#page-container .gtm-closing .gtm-h{margin-bottom:28px}
#page-container .gtm-closing .et_pb_module_heading{letter-spacing:-1.5px}

/* ---- contact ---- */
@media(min-width:768px){
#page-container .gtm-contact-row,#page-container .gtm-visit-row,#page-container .gtm-pair{display:flex;align-items:flex-start}
#page-container .gtm-contact-row{gap:8%}
#page-container .gtm-visit-row{gap:10%;max-width:1300px!important}
#page-container .gtm-pair{gap:28px}
#page-container .gtm-contact-row>.et_pb_column,#page-container .gtm-visit-row>.et_pb_column,#page-container .gtm-pair>.et_pb_column{flex:1 1 0;width:auto!important;min-width:0}
}
#page-container .gtm-contact-copy .gtm-h{margin:25px 0 12px;letter-spacing:-.5px}
#page-container .gtm-contact-copy .gtm-h:first-child{margin-top:0}
#page-container .gtm-contact-book .gtm-contact-p p{margin-top:25px;font-size:14px}
#page-container .gtm-mini-links .mini-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:25px}
#page-container .gtm-mini-links a{font-size:14px}
#page-container .contact-map{width:100%;height:360px;border:0;margin-top:25px;display:block}
#page-container .gtm-visit{color:#fff}
#page-container .gtm-visit .gtm-visit-p p{color:#ccd7cd}
#page-container .gtm-visit .gtm-h h2{letter-spacing:-1.5px}
#page-container .gtm-visit .et_pb_button_module_wrapper{margin-top:20px}
#page-container .contact-box{border-top:1px solid #ffffff45}
#page-container .contact-row{padding:22px 0;border-bottom:1px solid #ffffff45;display:grid;grid-template-columns:100px 1fr;gap:20px}
#page-container .contact-row small{text-transform:uppercase;letter-spacing:1px;color:var(--gtm-lime);font-size:10px}
#page-container .contact-row p{margin:0;color:#fff}
#page-container .contact-row a{text-decoration:none;color:#fff}
#page-container .contact-row a[href^="tel"]{font-size:26px}
#page-container .contact-row a[href^="sms"]{font-size:13px;text-decoration:underline}
#page-container .gtm-pair-img img{height:340px;border-radius:4px 60px 4px 4px}
#page-container .gtm-review-source .gtm-pair{margin-top:50px!important}
#page-container .reviews-embed{width:100%;min-height:180px;margin:30px 0}
#page-container .gtm-review-source>.et_pb_row,#page-container .gtm-editorial-stories>.et_pb_row{max-width:1250px}
#page-container .gtm-content-narrow>.et_pb_row{max-width:800px}
#page-container .gtm-narrow-h{margin-top:35px}
#page-container .gtm-narrow-h:first-child{margin-top:0}

/* ---- header (Theme Builder) ---- */
#page-container .gtm-header{border-bottom:1px solid #ffffff25}
#page-container .gtm-header .et_pb_row{width:100%;max-width:1400px;padding:0;display:flex;align-items:center;gap:20px}
#page-container .gtm-header .gtm-nav-col{flex:1 1 auto;width:auto!important;margin:0!important}
#page-container .gtm-header .gtm-book-col{flex:0 0 auto;width:auto!important;margin:0!important}
#page-container .gtm-header .et_pb_menu{background:transparent}
#page-container .gtm-header .et_pb_menu_inner_container{display:flex;align-items:center;width:100%}
#page-container .gtm-header .et_pb_menu__wrap{flex:1 1 auto;justify-content:flex-end;margin-left:auto}
#page-container .gtm-header .et_pb_menu__menu>nav>ul{justify-content:flex-end}
#page-container .gtm-header .et-menu .menu-item-has-children>a:first-child{padding-right:0}
#page-container .gtm-header .et-menu .menu-item-has-children>a:first-child:after{font-family:Arial,sans-serif;content:"\25BE";position:static;display:inline-block;font-size:12px;margin-left:4px;transform:none;top:auto;right:auto}
#page-container .gtm-header .et-menu .sub-menu .menu-item-has-children>a:first-child:after{display:none}
#page-container .gtm-header .et_pb_menu__menu>nav>ul>li{padding-left:18px;padding-right:0}
#page-container .gtm-header .et_pb_menu__menu>nav>ul>li>a{padding:10px 0;color:#fff!important}
#page-container .gtm-header .et_pb_menu__logo{margin-right:20px}
#page-container .gtm-header .sub-menu{background:var(--gtm-green)!important;border-top:0!important;width:260px;padding:18px!important;box-shadow:0 15px 30px #0002}
#page-container .gtm-header .sub-menu li{padding:0!important}
#page-container .gtm-header .sub-menu li a{width:100%!important;padding:7px 4px!important;color:#fff!important}
#page-container .gtm-header .et_mobile_menu{background:var(--gtm-green)!important;border-top-color:var(--gtm-lime)!important}
#page-container .gtm-header .et_mobile_menu a{color:#fff!important}
#page-container .gtm-header .mobile_menu_bar:before{color:#fff!important}
body #page-container .gtm-header .et_pb_button.gtm-btn{padding:12px 17px!important}
@media(max-width:1000px){#page-container .gtm-header .gtm-book-col{display:none!important}}
/* scrolled state: light, partly transparent sticky nav */
#page-container .gtm-header{transition:background-color .3s,box-shadow .3s,border-color .3s}
body.gtm-scrolled #page-container .et_pb_section.gtm-header{background-color:rgba(255,255,255,.86)!important;background-image:none!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:rgba(23,61,50,.12);box-shadow:0 6px 24px rgba(23,61,50,.08)}
body.gtm-scrolled #page-container .gtm-header .et_pb_menu__menu>nav>ul>li>a{color:var(--gtm-green)!important}
body.gtm-scrolled #page-container .gtm-header .et_pb_menu__menu>nav>ul>li>a:hover{opacity:.7}
body.gtm-scrolled #page-container .gtm-header .sub-menu{background:rgba(255,255,255,.97)!important;box-shadow:0 15px 30px rgba(23,61,50,.12)}
body.gtm-scrolled #page-container .gtm-header .sub-menu li a{color:var(--gtm-green)!important}
body.gtm-scrolled #page-container .gtm-header .sub-menu li a:hover{background:#eef2e4!important}
body.gtm-scrolled #page-container .gtm-header .mobile_menu_bar:before{color:var(--gtm-green)!important}
body.gtm-scrolled #page-container .gtm-header .et_pb_button.gtm-btn{background:var(--gtm-green)!important;color:#fff!important}
body.gtm-scrolled #page-container .gtm-header .et_pb_button.gtm-btn:hover{background:var(--gtm-lime)!important;color:var(--gtm-green)!important}

/* ---- footer (Theme Builder) ---- */
#page-container .gtm-footer{color:#ccd6cb;font-size:11px}
#page-container .gtm-footer .et_pb_row{width:100%;max-width:none;padding:0;display:flex;justify-content:space-between;align-items:center;gap:30px}
#page-container .gtm-footer .et_pb_column{width:auto!important;margin:0!important}
#page-container .gtm-footer .gtm-foot-logo{max-width:210px}
#page-container .gtm-footer p{margin:0;padding:0;font-size:11px;line-height:1.65;color:#ccd6cb}
#page-container .gtm-footer a{color:#ccd6cb}

/* ---- tablet ---- */
@media(max-width:980px){
#page-container .gtm-grid.gtm-grid-4,#page-container .gtm-grid.gtm-grid-3{--gtm-cols:2}
#page-container .gtm-card .gtm-card-img img{height:220px}
#page-container .gtm-service-layout>.et_pb_row{gap:35px}
#page-container .gtm-service-layout .gtm-aside{flex-basis:250px;width:250px!important;padding:20px!important}
}

/* ---- phone ---- */
@media(max-width:767px){
#page-container .gtm-hero{min-height:460px}
#page-container .gtm-hero.gtm-hero-home{min-height:590px}
#page-container .gtm-hero .et_pb_module_heading{letter-spacing:-1.1px}
#page-container .gtm-hero .gtm-crumb{font-size:10px;margin-bottom:23px}
#page-container .gtm-hero .gtm-eyebrow{font-size:10px;letter-spacing:1.5px}
#page-container .gtm-hero .gtm-hero-phone a{font-size:16px}
#page-container .gtm-hero .gtm-hero-foot{font-size:10px;letter-spacing:.6px}
body #page-container .gtm-hero .et_pb_button.gtm-btn{padding:14px 18px!important}
#page-container .gtm-heading-row{margin-bottom:30px!important}
#page-container .gtm-grid.gtm-grid-4,#page-container .gtm-grid.gtm-grid-3,#page-container .gtm-grid.gtm-grid-2{--gtm-cols:1;row-gap:38px}
#page-container .gtm-card .gtm-card-img img{height:300px;border-radius:120px 120px 3px 3px}
#page-container .gtm-journal-card .gtm-card-img img{height:260px;border-radius:0}
#page-container .gtm-story{margin-bottom:50px!important}
#page-container .gtm-story-photo{margin-top:30px!important}
#page-container .gtm-story-photo img{height:310px}
#page-container .gtm-story-text p,#page-container .gtm-story-text li{font-size:15px}
#page-container .gtm-service-layout .gtm-aside{margin-top:20px!important}
#page-container .gtm-service-layout .gtm-story-photo img{height:280px}
#page-container .gtm-intro p{font-size:17px}
#page-container .service-links{grid-template-columns:1fr 1fr}
#page-container .gtm-contact-copy{margin-bottom:35px!important}
#page-container .gtm-visit-copy{margin-bottom:35px!important}
#page-container .contact-row{grid-template-columns:80px 1fr}
#page-container .contact-map{height:300px}
#page-container .gtm-pair-col+.gtm-pair-col{margin-top:28px!important}
#page-container .gtm-pair-img img{height:280px}
#page-container .gtm-footer .et_pb_row{flex-direction:column;align-items:flex-start}
}

/* ---- 404 page (Theme Builder body layout) ---- */
body #page-container .et_pb_button.gtm-btn-outline,body #page-container .et_pb_button.gtm-btn-outline:hover{background:transparent;color:var(--gtm-green)!important;border:1px solid var(--gtm-green)!important}
body #page-container .et_pb_button.gtm-btn-outline:hover{background:var(--gtm-green);color:#fff!important}
body #page-container .et_pb_button.gtm-btn-dark:hover{background:var(--gtm-ink);color:#fff!important}
#page-container .et_pb_section.gtm-404{padding:90px 6% 40px;min-height:calc(100vh - 150px);display:flex;flex-direction:column;justify-content:center}
#page-container .gtm-404 .gtm-404-row{display:flex;align-items:center;gap:6%;max-width:1320px}
#page-container .gtm-404 .gtm-404-row:before,#page-container .gtm-404 .gtm-404-row:after,#page-container .gtm-404 .gtm-404-strip:before,#page-container .gtm-404 .gtm-404-strip:after{display:none!important;content:none!important}
#page-container .gtm-404 .gtm-404-text{flex:0 0 44%;width:44%!important;margin:0!important;color:var(--gtm-green)}
#page-container .gtm-404 .gtm-404-media{flex:1 1 auto;width:auto!important;margin:0!important}
#page-container .gtm-404 .gtm-404-eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;color:#6d845d;margin-bottom:24px}
#page-container .gtm-404 .gtm-404-title .et_pb_module_heading{font-size:76px;line-height:1.02;letter-spacing:-2px;color:var(--gtm-green);margin:0 0 26px}
#page-container .gtm-404 .gtm-404-lead p{font-size:18px;line-height:1.7;color:#4d5e52}
#page-container .gtm-404 .gtm-404-lead{margin-bottom:36px}
#page-container .gtm-404 .et_pb_button_module_wrapper{display:inline-block;margin:0 12px 14px 0}
#page-container .gtm-404 .gtm-404-book{margin-top:22px;font-size:15px;color:#4d5e52}
#page-container .gtm-404 .gtm-404-book a{color:var(--gtm-green);font-weight:600;text-decoration:underline;text-underline-offset:4px}
#page-container .gtm-404 .gtm-404-book a:hover{color:#6d845d}
#page-container .gtm-404 .gtm-404-img,#page-container .gtm-404 .gtm-404-img .et_pb_image_wrap{display:block;width:100%}
#page-container .gtm-404 .gtm-404-img img{display:block;width:100%;aspect-ratio:6/5;max-height:640px;object-fit:cover;object-position:54% 50%;border-radius:999px 999px 6px 6px;box-shadow:0 30px 60px rgba(23,61,50,.15)}
#page-container .gtm-404 .gtm-404-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1320px;margin-top:70px;padding-top:24px;border-top:1px solid rgba(23,61,50,.18)}
#page-container .gtm-404 .gtm-404-strip .et_pb_column{width:auto!important;margin:0!important;flex:1 1 0}
#page-container .gtm-404 .gtm-404-info p{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#4d5e52;margin:0}
#page-container .gtm-404 .gtm-404-mid{text-align:center}
#page-container .gtm-404 .gtm-404-end{text-align:right}
#page-container .gtm-404 .gtm-404-info a{color:var(--gtm-green);font-weight:600;text-decoration:none}
@media(max-width:980px){
#page-container .et_pb_section.gtm-404{padding:60px 6% 36px;min-height:0}
#page-container .gtm-404 .gtm-404-row{flex-direction:column-reverse;align-items:stretch;gap:44px}
#page-container .gtm-404 .gtm-404-text,#page-container .gtm-404 .gtm-404-media{flex:none;width:100%!important}
#page-container .gtm-404 .gtm-404-media{max-width:560px;margin:0 auto!important}
#page-container .gtm-404 .gtm-404-title .et_pb_module_heading{font-size:58px}
#page-container .gtm-404 .gtm-404-strip{margin-top:54px}
}
@media(max-width:767px){
#page-container .et_pb_section.gtm-404{padding:40px 20px 30px}
#page-container .gtm-404 .gtm-404-row{gap:34px}
#page-container .gtm-404 .gtm-404-title .et_pb_module_heading{font-size:44px;letter-spacing:-1px}
#page-container .gtm-404 .gtm-404-lead p{font-size:16px}
#page-container .gtm-404 .et_pb_button_module_wrapper{display:block;margin:0 0 12px}
body #page-container .gtm-404 .et_pb_button.gtm-btn{width:100%}
#page-container .gtm-404 .gtm-404-strip{flex-direction:column;align-items:flex-start;gap:10px;margin-top:40px}
#page-container .gtm-404 .gtm-404-strip .et_pb_column{width:100%!important;margin:0 0 10px!important}
#page-container .gtm-404 .gtm-404-strip .et_pb_column:last-child{margin-bottom:0!important}
#page-container .gtm-404 .gtm-404-mid,#page-container .gtm-404 .gtm-404-end{text-align:left}
}
