/*
Theme Name: EC Health
Author: EC Health
Description: An editorial wellness theme for health consulting, meal plans and fitness coaching, with native WooCommerce support and editable homepage settings.
Version: 1.0.2
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: root-and-rise
Tags: e-commerce, custom-logo, custom-menu, featured-images, wide-blocks
*/
:root{--ink:#163d30;--green:#163d30;--paper:#fbfaf5;--lime:#e4edb7;--muted:#58685d;--line:#d6ddd2;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}:focus-visible{outline:3px solid #ad6a2e;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(3.4rem,6.9vw,6.6rem);letter-spacing:-.055em;margin-bottom:28px}h2{font-size:clamp(2.5rem,4.7vw,4.6rem);letter-spacing:-.045em;margin-bottom:24px}h3{font-size:2rem;letter-spacing:-.025em}p{margin-bottom:20px}button{cursor:pointer}.wrap{width:min(1320px,90%);margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.14em;font-weight:700;text-transform:uppercase;margin-bottom:22px}.muted{color:var(--muted)}.skip-link{position:absolute;left:20px;top:-100px;z-index:100;background:white;padding:15px}.skip-link:focus{top:10px}.announcement{background:var(--green);color:#fff;text-align:center;padding:8px 20px;font-size:.78rem;letter-spacing:.04em}.site-header{padding:25px 0;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-family:var(--serif);font-size:2rem;letter-spacing:-.065em;text-decoration:none;white-space:nowrap}.brand small{font:10px var(--sans);display:block;text-transform:uppercase;letter-spacing:.27em;text-align:center}.custom-logo{max-height:65px;width:auto}.nav{display:flex;align-items:center;gap:30px}.nav ul{display:flex;gap:28px;list-style:none;padding:0;margin:0;align-items:center}.nav a{text-decoration:none;font-size:.875rem}.nav a:hover{text-decoration:underline}.nav .sub-menu{display:block;padding-left:14px}.button,.wp-block-button__link{display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:13px 25px;border-radius:4px;border:1px solid var(--green);background:var(--green);color:#fff;text-decoration:none;font-size:.86rem;font-weight:600;line-height:1.35;transition:background .2s}.button:hover,.wp-block-button__link:hover{background:#28533f;color:#fff}.button.light{background:var(--lime);color:var(--green);border-color:var(--lime)}.button.outline{color:var(--green);background:transparent}.button.outline:hover{background:var(--lime)}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:9px 14px;color:var(--ink)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:70px 0 64px}.hero-copy>p:not(.eyebrow){max-width:435px;color:var(--muted);font-size:1.05rem}.hero h1 em{font-weight:400;color:#567844}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:32px 0}.text-link{font-size:.875rem;font-weight:600}.hero-visual{position:relative}.hero-photo{width:100%;height:565px;object-fit:cover;border-radius:180px 180px 6px 6px}.photo-label{position:absolute;bottom:25px;left:-24px;right:45px;background:var(--lime);padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:3px}.photo-label strong{display:block;font-family:var(--serif);font-size:1.5rem;font-weight:400}.photo-label span{font-size:.78rem}.photo-label .label-number{font-family:var(--serif);font-size:2.6rem;line-height:1}.hero-note{font-size:.78rem;color:var(--muted);display:flex;gap:9px;align-items:center}.hero-note:before{content:'✓';font-size:1rem}.principles{border-block:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-around;gap:20px;font-size:.84rem}.section{padding:95px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:43px}.section-heading h2{max-width:650px;margin-bottom:0}.section-heading>p{max-width:320px;margin:0;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service{padding:34px 30px;border:1px solid var(--line);border-radius:6px}.service:nth-child(2){background:var(--lime);border-color:var(--lime)}.service-number{display:block;font-family:var(--serif);font-size:1.25rem;margin-bottom:42px}.service h3{font-size:2.1rem}.service p{color:var(--muted)}.service details{margin-top:28px}.service summary{cursor:pointer;font-size:.86rem;font-weight:600}.service details p{margin-top:18px;font-size:.93rem}.approach{background:var(--green);color:white}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.approach h2{max-width:470px}.approach p{color:#ced8ce}.steps{list-style:none;padding:0;margin:0}.steps li{padding:24px 0;border-bottom:1px solid #547262;display:grid;grid-template-columns:45px 1fr;gap:20px}.steps li:first-child{padding-top:0}.steps b{font:1.25rem var(--serif);color:var(--lime)}.steps h3{font-size:1.65rem;margin-bottom:10px}.steps p{margin:0;font-size:.93rem}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.plan{border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.plan-top{padding:30px;background:#e8eddf;min-height:175px;display:flex;flex-direction:column;justify-content:space-between}.plan:nth-child(2) .plan-top{background:#ece1cc}.plan:nth-child(3) .plan-top{background:#dce6d9}.plan-tag{font-size:.75rem;letter-spacing:.09em;text-transform:uppercase}.plan h3{margin:20px 0 0;font-size:2.1rem}.plan-bottom{padding:28px;display:flex;flex-direction:column;flex:1}.plan-bottom p{color:var(--muted)}.plan-bottom .text-link{margin-top:auto;align-self:start}.plan ul{padding-left:20px;font-size:.9rem;margin-top:0;margin-bottom:24px}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;font-size:1rem;font-weight:600;padding-right:15px}.faq details p{color:var(--muted);margin:18px 0 2px}.contact{padding:70px;background:var(--lime);text-align:center;border-radius:8px;margin-bottom:80px}.contact h2{max-width:700px;margin:0 auto 24px}.contact p{max-width:520px;margin:0 auto 30px}.contact-links{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}.site-footer{padding:45px 0 28px;border-top:1px solid var(--line)}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:30px}.footer-top{padding-bottom:40px}.footer-top p{max-width:290px;font-size:.85rem;margin-top:12px;color:var(--muted)}.footer-links{display:flex;gap:26px;align-items:start;font-size:.875rem}.footer-bottom{padding-top:24px;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.footer-bottom p{max-width:630px}.content-main{width:min(1160px,90%);margin:65px auto 90px;min-height:45vh}.content-main>h1{font-size:clamp(2.5rem,5vw,4.5rem)}.entry-content{overflow-wrap:anywhere}.entry-content:after{content:'';display:table;clear:both}.entry-content h2{font-size:2.6rem}.entry-content h3{font-size:2rem}.entry-content>*{max-width:100%}.alignwide{width:100%}.alignfull{max-width:100%}.alignleft{float:left;margin-right:24px}.alignright{float:right;margin-left:24px}.aligncenter{margin-inline:auto}.wp-caption,.gallery-caption{max-width:100%;font-size:.875rem}.wp-caption-text{color:var(--muted)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.post-card{padding:30px 0;border-bottom:1px solid var(--line)}.post-card h2{font-size:2.2rem}.post-card img{max-height:350px;object-fit:cover}.pagination{margin:30px 0}.page-numbers{padding:9px}.comment-list{padding-left:24px}input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select{max-width:100%;padding:12px;border:1px solid #aab8ab;border-radius:4px;background:#fff;color:var(--ink)}input[type=submit]{padding:12px 24px;background:var(--green);border:0;color:white;border-radius:4px}label{display:block}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.5rem;line-height:1.2}.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--green)}.woocommerce ul.products li.product a img{border-radius:6px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--green);color:#fff;border-radius:4px;padding:14px 20px}.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#28533f;color:white}.woocommerce span.onsale{background:var(--lime);color:var(--ink);padding:2px 9px}.woocommerce div.product .product_title{font-size:3rem}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#e8eddf}.woocommerce table.shop_table{border-color:var(--line)}.woocommerce .quantity .qty{padding:9px;min-width:70px}.woocommerce-message,.woocommerce-info{border-top-color:var(--green)}.woocommerce-message:before,.woocommerce-info:before{color:var(--green)}.wc-block-components-button:not(.is-link){background:var(--green);color:#fff;border-radius:4px}.wc-block-cart__submit-container a{color:#fff}.woocommerce .related>h2{font-size:2.3rem}.woocommerce-account .woocommerce-MyAccount-navigation li{margin:10px 0}.woocommerce form .form-row label{line-height:1.5}.woocommerce .woocommerce-breadcrumb{font-size:.875rem}.woocommerce div.product form.cart .variations select{min-width:120px}.sticky{border-left:3px solid var(--green);padding-left:20px}.bypostauthor{border-left:2px solid var(--line);padding-left:15px}
@media(min-width:901px){.nav .menu-item-has-children{position:relative}.nav .sub-menu{display:none;position:absolute;background:var(--paper);padding:15px;min-width:190px;z-index:5;box-shadow:0 5px 20px #0002}.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu{display:block}}
@media(max-width:1000px){.nav{gap:18px}.nav ul{gap:17px}.hero{gap:35px}.hero-photo{height:490px}.approach-grid{gap:45px}.service{padding:25px}.contact{padding:60px 30px}}
@media(max-width:900px){.header-inner{flex-wrap:wrap}.js .menu-toggle{display:block}.nav{width:100%;flex-direction:column;align-items:stretch}.nav ul{flex-direction:column;align-items:start;gap:18px}.js .nav:not(.is-open){display:none}.nav .button{align-self:start}.hero{grid-template-columns:1fr 1fr;padding:45px 0;gap:25px}.hero h1{font-size:clamp(3rem,6.9vw,5rem)}.hero-photo{height:460px}.photo-label{left:-12px;right:10px;padding:17px}.services,.plans{gap:15px}.service{padding:24px 20px}.service h3{font-size:1.7rem}.section{padding:65px 0}.faq-grid{gap:40px}.footer-links{flex-wrap:wrap}}
@media(max-width:640px){.wrap{width:89%}.announcement{font-size:.75rem}.site-header{padding:18px 0}.hero{grid-template-columns:1fr;gap:25px}.hero h1{font-size:3.7rem}.hero-photo{height:400px;border-radius:130px 130px 5px 5px}.photo-label{left:12px;right:12px;bottom:15px}.hero-actions{gap:20px}.principles{flex-wrap:wrap;justify-content:start;gap:12px 22px;font-size:.8rem}.section-heading{display:block}.section-heading>p{margin-top:25px}.services,.plans,.approach-grid,.faq-grid{grid-template-columns:1fr}.service-number{margin-bottom:28px}.service h3{font-size:2rem}.approach-grid{gap:35px}.plans{gap:24px}.plan-top{min-height:145px}.contact{padding:50px 23px;margin-bottom:50px}.contact h2{font-size:2.6rem}.footer-top,.footer-bottom{flex-direction:column;gap:15px}.footer-top{padding-bottom:25px}.content-main{margin-top:40px}.woocommerce div.product .product_title{font-size:2.4rem}.woocommerce ul.products[class*=columns-] li.product{width:100%;float:none;margin-right:0}.woocommerce table.shop_table{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
