:root{
  --forest:#6d4a57;--forest-2:#573a45;--sage:#eee6e2;--sage-2:#f7f1ee;--ivory:#f8f2ee;--paper:#fffdfb;
  --gold:#c49a88;--gold-dark:#946f61;--ink:#3f3a38;--muted:#756e6a;--line:rgba(109,74,87,.16);--white:#fff;
  --blush:#eedcdf;--blush-2:#f8eef0;--rose:#b9838f;--taupe:#b9aaa3;
  --shadow:0 22px 60px rgba(79,65,70,.11);--shadow-soft:0 12px 35px rgba(79,65,70,.075);
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --radius:22px;--radius-sm:12px;--container:min(1180px,calc(100vw - 40px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4{margin:0 0 .55em;color:var(--forest);font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(2.6rem,6vw,5.75rem)}h2{font-size:clamp(2.15rem,4vw,4rem)}h3{font-size:clamp(1.35rem,2vw,1.8rem)}p{margin:0 0 1.2em}em{color:var(--gold-dark);font-weight:400}.container{width:var(--container);margin-inline:auto}.content-narrow{max-width:820px}.site-shell{overflow:hidden}.site-main{min-height:50vh}.section{padding:clamp(76px,9vw,130px) 0}.section--ivory{background:var(--ivory)}.section--sage{background:var(--sage-2)}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{top:12px;left:12px;z-index:99999;width:auto;height:auto;padding:12px 18px;margin:0;clip:auto;background:#fff;color:#000;box-shadow:var(--shadow)}.skip-link{position:fixed}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 18px;color:var(--gold-dark);font-size:.77rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"";width:34px;height:1px;background:currentColor}.eyebrow--light{color:#eee1c8}.section-heading{max-width:760px;margin-bottom:50px}.section-heading h2{margin-bottom:16px}.section-heading__text{max-width:680px;color:var(--muted);font-size:1.05rem}.section-heading--split{display:flex;max-width:none;align-items:end;justify-content:space-between;gap:35px}.section-heading--split>div{max-width:760px}
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;min-height:50px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;padding:13px 25px;background:var(--forest);color:#fff!important;font-size:.8rem;font-weight:800;letter-spacing:.06em;line-height:1;text-decoration:none;text-transform:uppercase;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.button:hover,.button:focus-visible,.woocommerce a.button:hover,.woocommerce button.button:hover{transform:translateY(-2px);background:var(--forest-2);box-shadow:0 12px 24px rgba(32,55,47,.18)}.button--small{min-height:42px;padding:11px 19px;font-size:.72rem}.button--outline{border-color:var(--forest);background:transparent;color:var(--forest)!important}.button--outline:hover{background:var(--forest);color:#fff!important}.button--outline-light{border-color:rgba(255,255,255,.65);background:transparent;color:#fff!important}.button--outline-light:hover{border-color:#fff;background:#fff;color:var(--forest)!important}.button--light{background:#fff;color:var(--forest)!important}.button--light:hover{background:var(--ivory)}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-weight:800;text-decoration:none}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(4px)}
.topbar{position:relative;z-index:50;background:var(--forest);color:rgba(255,255,255,.86);font-size:.76rem}.topbar__inner{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:20px}.topbar p{margin:0;letter-spacing:.04em}.topbar__links{display:flex;gap:24px}.topbar a{text-decoration:none}.topbar a:hover{color:#fff}.site-header{position:relative;z-index:45;background:rgba(255,253,248,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.site-header.is-sticky{position:fixed;top:0;left:0;right:0;animation:headerIn .25s ease;box-shadow:0 8px 30px rgba(25,42,35,.08)}@keyframes headerIn{from{transform:translateY(-100%)}to{transform:none}}.site-header__inner{display:grid;grid-template-columns:minmax(165px,230px) 1fr auto;min-height:86px;align-items:center;gap:28px}.site-branding{position:relative;z-index:3}.custom-logo-link{display:block;max-width:220px}.custom-logo{max-height:64px;width:auto}.text-logo{display:inline-flex;flex-direction:column;color:var(--forest);line-height:1;text-decoration:none}.text-logo span{font-family:var(--serif);font-size:1.85rem;letter-spacing:.02em}.text-logo small{margin-top:7px;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.text-logo--light{color:#fff}.primary-navigation{justify-self:center}.primary-menu{display:flex;align-items:center;gap:clamp(15px,2vw,28px);margin:0;padding:0;list-style:none}.primary-menu li{position:relative}.primary-menu a{display:block;padding:31px 0;color:var(--ink);font-size:.75rem;font-weight:800;letter-spacing:.05em;text-decoration:none;text-transform:uppercase}.primary-menu a:hover,.primary-menu .current-menu-item>a,.primary-menu .current_page_item>a{color:var(--gold-dark)}.primary-menu .sub-menu{position:absolute;top:calc(100% - 10px);left:-20px;min-width:230px;margin:0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.primary-menu .sub-menu a{padding:11px 13px;border-radius:8px;text-transform:none}.primary-menu .sub-menu a:hover{background:var(--ivory)}.header-actions{display:flex;align-items:center;gap:12px}.header-cart{position:relative;display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--forest);font-size:1.2rem;text-decoration:none}.cart-count{position:absolute;top:-5px;right:-3px;display:grid;min-width:18px;height:18px;place-items:center;border-radius:50%;background:var(--gold);color:#fff;font-size:.62rem;font-weight:800}.menu-toggle{display:none;width:46px;height:44px;border:0;background:transparent}.menu-toggle__line{display:block;width:24px;height:2px;margin:5px auto;background:var(--forest);transition:.2s}
.hero{position:relative;display:flex;min-height:min(820px,calc(100vh - 122px));align-items:center;background-color:var(--forest);background-image:var(--hero-image);background-position:center;background-size:cover;color:#fff}.hero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,31,25,.89) 0%,rgba(16,31,25,.63) 48%,rgba(16,31,25,.18) 100%)}.hero__content{position:relative;z-index:2;padding-block:110px;max-width:1180px}.hero__content h1{max-width:850px;color:#fff;font-size:clamp(3rem,7vw,6.75rem)}.hero__lead{max-width:680px;margin:25px 0 34px;color:rgba(255,255,255,.9);font-size:clamp(1.05rem,2vw,1.3rem)}.hero__actions{display:flex;flex-wrap:wrap;gap:14px}.hero__scroll{position:absolute;z-index:2;right:5vw;bottom:35px;display:grid;width:46px;height:70px;place-items:start center;border:1px solid rgba(255,255,255,.45);border-radius:999px}.hero__scroll span{width:4px;height:9px;margin-top:13px;border-radius:10px;background:#fff;animation:scrollDot 1.8s infinite}@keyframes scrollDot{0%{opacity:0;transform:translateY(0)}35%{opacity:1}100%{opacity:0;transform:translateY(30px)}}
.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust-strip__grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-strip__grid>div{padding:25px 28px;border-right:1px solid var(--line)}.trust-strip__grid>div:first-child{padding-left:0}.trust-strip__grid>div:last-child{border-right:0}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{color:var(--forest);font-family:var(--serif);font-size:1.1rem}.trust-strip span{color:var(--muted);font-size:.78rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:360px;gap:20px}.service-card{position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-soft)}.service-card--large{grid-row:span 2}.service-card a{display:block;width:100%;height:100%;text-decoration:none}.service-card__image{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.service-card__overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:end;padding:32px;background:linear-gradient(0deg,rgba(12,27,21,.86),rgba(12,27,21,.02) 75%);color:#fff}.service-card__overlay span{margin-bottom:8px;color:#e9d6b3;font-size:.69rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.service-card__overlay h2,.service-card__overlay h3{margin-bottom:8px;color:#fff}.service-card__overlay p{max-width:420px;margin-bottom:12px;color:rgba(255,255,255,.83);font-size:.9rem}.service-card__overlay strong{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.service-card:hover .service-card__image{transform:scale(1.045)}.service-grid--overview{grid-template-columns:repeat(2,1fr);grid-auto-rows:430px}
.split-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(55px,8vw,110px)}.split-layout--reverse .split-layout__media{order:2}.split-layout--reverse .split-layout__content{order:1}.split-layout__content>p:not(.eyebrow){color:var(--muted);font-size:1.03rem}.image-frame{position:relative}.image-frame>img{width:100%;min-height:540px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.image-frame:before{content:"";position:absolute;z-index:-1;left:-26px;bottom:-26px;width:65%;height:72%;border:1px solid var(--gold);border-radius:var(--radius)}.image-frame__note{position:absolute;right:-28px;bottom:34px;display:flex;max-width:250px;flex-direction:column;padding:20px 24px;background:var(--forest);border-radius:14px;color:#fff;box-shadow:var(--shadow)}.image-frame__note strong{font-family:var(--serif);font-size:1.3rem}.image-frame__note span{font-size:.76rem}.check-list{display:grid;gap:10px;margin:28px 0 30px;padding:0;list-style:none}.check-list li{position:relative;padding-left:30px;color:var(--ink);font-weight:650}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--gold-dark);font-weight:900}.feature-pills{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.feature-pills span{padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--ivory);font-size:.78rem;font-weight:700}.small-note{font-size:.78rem!important}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{padding:35px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.info-card>span{display:inline-block;margin-bottom:35px;color:var(--gold-dark);font-family:var(--serif);font-size:1.6rem}.info-card p{color:var(--muted)}
.gift-section{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:var(--forest)}.gift-section__media{background-position:center;background-size:cover}.gift-section__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(55px,8vw,120px);color:#fff}.gift-section__content h2{color:#fff}.gift-section__content p:not(.eyebrow){max-width:510px;color:rgba(255,255,255,.82);font-size:1.05rem}.blog-preview{background:#fff}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.posts-grid--archive{row-gap:45px}.post-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.post-card__image{display:block;overflow:hidden;aspect-ratio:1.35}.post-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.post-card:hover .post-card__image img{transform:scale(1.04)}.post-card__body{padding:27px}.post-card__meta{margin-bottom:9px;color:var(--gold-dark);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.post-card h3{font-size:1.55rem}.post-card h3 a{text-decoration:none}.post-card__body>p:not(.post-card__meta){color:var(--muted);font-size:.9rem}.contact-band{padding:65px 0;background:var(--forest-2);color:#fff}.contact-band__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-band h2{max-width:700px;margin:0;color:#fff;font-size:clamp(2rem,4vw,3.5rem)}.contact-band__actions{display:flex;flex-wrap:wrap;gap:12px}
.page-hero{position:relative;background:var(--ivory)}.page-hero--compact{padding:75px 0}.page-hero--compact h1{max-width:950px;font-size:clamp(2.5rem,6vw,5rem)}.page-hero__intro{max-width:670px;color:var(--muted);font-size:1.15rem}.page-hero--image{display:flex;min-height:560px;align-items:end;background-image:var(--hero-image);background-position:center;background-size:cover;color:#fff}.page-hero__veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,31,25,.88),rgba(15,31,25,.15))}.page-hero__content{position:relative;z-index:2;padding-block:100px}.page-hero__content h1{max-width:970px;color:#fff}.page-hero__content>p:not(.eyebrow){max-width:700px;color:rgba(255,255,255,.86);font-size:1.12rem}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;color:var(--muted);font-size:.75rem}.breadcrumbs a{text-decoration:none}.page-hero--image .breadcrumbs{color:rgba(255,255,255,.72)}.treatment-list{display:grid}.treatment-list article{display:grid;grid-template-columns:100px 1fr;gap:30px;padding:35px 0;border-top:1px solid var(--line)}.treatment-list article:last-child{border-bottom:1px solid var(--line)}.treatment-list article>span{color:var(--gold-dark);font-family:var(--serif);font-size:2rem}.treatment-list h2{font-size:2rem}.treatment-list p{max-width:750px;color:var(--muted)}
.prose{font-size:1.03rem}.prose>*+*{margin-top:1.3em}.prose h2{margin-top:1.6em;font-size:2.2rem}.prose h3{margin-top:1.4em}.prose ul,.prose ol{padding-left:1.4em}.prose a{color:var(--gold-dark)}.prose img{border-radius:var(--radius)}.article-hero{padding:75px 0 45px;background:var(--ivory)}.article-hero h1{font-size:clamp(2.5rem,6vw,5rem)}.article-meta{color:var(--muted);font-size:.8rem}.article-featured{margin-top:50px}.article-featured img{width:100%;max-height:700px;object-fit:cover;border-radius:var(--radius)}.article-content{padding-block:65px}.article-footer{display:flex;justify-content:space-between;gap:15px;padding-bottom:90px}.pagination{padding-top:45px}.nav-links{display:flex;justify-content:center;gap:7px}.page-numbers{display:grid;min-width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;text-decoration:none}.page-numbers.current{background:var(--forest);color:#fff}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(45px,8vw,110px)}.contact-details h2,.contact-form-panel h2{font-size:clamp(2rem,4vw,3.2rem)}.contact-card{padding:21px 0;border-top:1px solid var(--line)}.contact-card>span{display:block;margin-bottom:5px;color:var(--gold-dark);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.contact-card>a:not(.text-link),.contact-card address{color:var(--forest);font-family:var(--serif);font-size:1.35rem;font-style:normal;text-decoration:none}.contact-card .text-link{margin-top:8px;font-size:.8rem}.contact-hours{margin-top:30px;padding:28px;background:var(--ivory);border-radius:var(--radius-sm)}.contact-hours h3{font-size:1.3rem}.hours-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hours-list li{display:flex;justify-content:space-between;gap:20px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.14);font-size:.82rem}.hours-list--dark li{border-bottom-color:var(--line)}.contact-form-panel{padding:clamp(30px,5vw,55px);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.lcb-form{display:grid;gap:17px}.lcb-form__row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.lcb-form label{display:grid;gap:7px;color:var(--forest);font-size:.78rem;font-weight:800}.lcb-form input,.lcb-form textarea,.lcb-form select{width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 14px;background:var(--paper);color:var(--ink)}.lcb-form input:focus,.lcb-form textarea:focus{outline:2px solid rgba(185,151,91,.35);border-color:var(--gold)}.lcb-form__notice{padding:12px 14px;border-radius:8px;background:var(--sage-2)}.lcb-form__notice--error{background:#f9e7e4;color:#8a2c1f}.lcb-hp{position:absolute;left:-9999px}.contact-image-strip{display:flex;min-height:520px;align-items:center;background-position:center;background-size:cover}.contact-image-strip__card{max-width:520px;padding:45px;background:rgba(32,55,47,.92);border-radius:var(--radius);color:#fff}.contact-image-strip__card h2{color:#fff}.social-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.social-card{display:block;min-height:320px;padding:45px;background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;transition:.25s}.social-card:hover{transform:translateY(-5px);background:var(--sage-2);box-shadow:var(--shadow-soft)}.social-card>span{color:var(--gold-dark);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.social-card p{color:var(--muted)}.error-page{display:flex;min-height:65vh;align-items:center;padding:90px 0;text-align:center}.error-page .content-narrow{margin:auto}.error-page .hero__actions{justify-content:center}
.site-footer{position:relative;background:#172a23;color:rgba(255,255,255,.76)}.footer-visual{height:180px;background-image:linear-gradient(rgba(23,42,35,.18),rgba(23,42,35,.88)),url('../../../../uploads/2024/06/Footer-image8-1-jpg.webp');background-position:center;background-size:cover}.footer-grid{display:grid;grid-template-columns:1.35fr .75fr 1fr 1fr;gap:50px;padding-block:70px}.footer-grid h2{color:#fff;font-family:var(--sans);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.footer-brand>p{max-width:340px;margin-top:25px;font-size:.9rem}.footer-menu{display:grid;gap:9px;margin:0;padding:0;list-style:none}.footer-menu a,.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{color:#fff}.social-links{display:flex;gap:16px;font-size:.8rem;font-weight:800}.site-footer address{font-style:normal}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:22px;border-top:1px solid rgba(255,255,255,.12);font-size:.72rem}.footer-bottom p{margin:0}.footer-bottom nav{display:flex;gap:18px}
.woocommerce .woocommerce-breadcrumb{display:none}.shop-main{padding:55px 0 100px}.woocommerce-products-header{padding:30px 0}.woocommerce-products-header__title{font-size:clamp(2.6rem,5vw,4.8rem)}.woocommerce .products ul,.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:35px 0 0}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);transition:transform .25s,box-shadow .25s}.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1.18;margin:0;object-fit:cover}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:22px 22px 5px;font-family:var(--serif);font-size:1.45rem;color:var(--forest)}.woocommerce ul.products li.product .price{padding:0 22px;color:var(--gold-dark);font-size:1rem;font-weight:800}.woocommerce ul.products li.product .button{margin:8px 22px 24px}.woocommerce span.onsale{top:15px!important;left:15px!important;min-width:0;min-height:0;padding:7px 11px;background:var(--gold);font-size:.68rem;line-height:1}.woocommerce div.product{padding-top:25px}.woocommerce div.product div.images img{border-radius:var(--radius)}.woocommerce div.product div.summary{padding-left:40px}.woocommerce div.product .product_title{font-size:clamp(2.4rem,4.5vw,4.5rem)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--gold-dark);font-size:1.35rem;font-weight:800}.woocommerce-product-details__short-description{color:var(--muted)}.woocommerce div.product form.cart .variations select{min-height:46px;border:1px solid var(--line);border-radius:9px;padding:8px}.woocommerce .quantity .qty{min-height:50px;border:1px solid var(--line);border-radius:9px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0}.woocommerce div.product .woocommerce-tabs ul.tabs li{border:0;background:transparent}.woocommerce table.shop_table{border-color:var(--line);border-radius:var(--radius-sm)}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{min-height:46px;border:1px solid var(--line);border-radius:9px;padding:10px 12px}.select2-container--default .select2-selection--single{height:46px;border-color:var(--line);border-radius:9px}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}.checkout-assurance{display:flex;flex-direction:column;margin-bottom:25px;padding:18px 20px;background:var(--sage-2);border-radius:var(--radius-sm)}.checkout-assurance span{color:var(--muted);font-size:.82rem}.woocommerce-message,.woocommerce-info{border-top-color:var(--gold);background:var(--ivory)}.woocommerce-message:before,.woocommerce-info:before{color:var(--gold-dark)}
@media(max-width:1100px){.site-header__inner{grid-template-columns:1fr auto auto}.menu-toggle{display:block;order:2}.header-actions{order:3}.primary-navigation{position:fixed;top:0;right:0;z-index:2;width:min(430px,90vw);height:100vh;padding:115px 35px 35px;background:var(--paper);box-shadow:-15px 0 50px rgba(0,0,0,.14);opacity:0;visibility:hidden;transform:translateX(100%);transition:.3s}.primary-navigation.is-open{opacity:1;visibility:visible;transform:none}.primary-menu{display:block}.primary-menu a{padding:15px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.35rem;text-transform:none}.primary-menu .sub-menu{position:static;display:block;min-width:0;padding:0 0 0 15px;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none}.primary-menu .sub-menu a{font-size:1rem}.menu-open .menu-toggle{position:relative;z-index:4}.menu-open .menu-toggle__line:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-open .menu-toggle__line:nth-child(2){opacity:0}.menu-open .menu-toggle__line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.trust-strip__grid{grid-template-columns:repeat(2,1fr)}.trust-strip__grid>div:nth-child(2){border-right:0}.trust-strip__grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card--large{grid-row:span 1}.products-section .products{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:820px){:root{--container:min(100% - 28px,720px)}.topbar__inner{justify-content:center}.topbar p,.topbar__links a:last-child{display:none}.site-header__inner{min-height:76px;gap:10px}.header-cta{display:none}.hero{min-height:680px;background-position:62% center}.hero__veil{background:linear-gradient(90deg,rgba(16,31,25,.9),rgba(16,31,25,.48))}.hero__content{padding-block:90px}.hero__scroll{display:none}.section-heading--split,.contact-band__inner{align-items:flex-start;flex-direction:column}.service-grid,.service-grid--overview{grid-template-columns:1fr;grid-auto-rows:400px}.split-layout,.contact-layout{grid-template-columns:1fr}.split-layout--reverse .split-layout__media,.split-layout--reverse .split-layout__content{order:initial}.image-frame>img{min-height:410px}.image-frame__note{right:15px}.three-columns,.posts-grid,.social-cards{grid-template-columns:1fr}.gift-section{grid-template-columns:1fr}.gift-section__media{min-height:420px}.gift-section__content{padding:65px 25px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}.woocommerce .products ul,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}.woocommerce div.product div.summary{padding-left:0}.page-hero--image{min-height:510px}.contact-band__actions{margin-top:10px}}
@media(max-width:560px){body{font-size:15px}.topbar__links{gap:10px}.text-logo span{font-size:1.45rem}.text-logo small{font-size:.55rem}.header-cart{width:38px;height:38px}.hero{min-height:650px}.hero__actions{align-items:stretch;flex-direction:column}.hero__actions .button{width:100%}.trust-strip__grid{grid-template-columns:1fr}.trust-strip__grid>div{padding:18px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid,.service-grid--overview{grid-auto-rows:350px}.service-card__overlay{padding:24px}.image-frame>img{min-height:350px}.image-frame:before{display:none}.image-frame__note{position:relative;right:auto;bottom:auto;margin:-35px 16px 0}.three-columns{gap:12px}.info-card{padding:25px}.treatment-list article{grid-template-columns:50px 1fr;gap:15px}.lcb-form__row{grid-template-columns:1fr}.contact-form-panel{padding:25px 20px}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-bottom{align-items:flex-start;flex-direction:column}.woocommerce .products ul,.woocommerce ul.products{grid-template-columns:1fr}.article-footer{align-items:stretch;flex-direction:column}.article-footer .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ------------------------------------------------------------
   V1.1 — softer visual direction + redesigned home/services
   ------------------------------------------------------------ */
.topbar{background:#6c746d}.site-header{background:rgba(255,253,249,.96)}
.site-footer{background:#59625b}.footer-visual{background-image:linear-gradient(rgba(89,98,91,.08),rgba(89,98,91,.78)),url('../../../../uploads/2024/06/Footer-image8-1-jpg.webp')}
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--forest);box-shadow:none}.button:hover,.button:focus-visible,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#4f5851;box-shadow:0 12px 24px rgba(79,88,81,.17)}
.button--soft-outline{border-color:rgba(94,103,95,.28);background:rgba(255,255,255,.5);color:var(--forest)!important;backdrop-filter:blur(8px)}
.button--soft-outline:hover{border-color:var(--forest);background:var(--forest);color:#fff!important}
.service-card__overlay{background:linear-gradient(0deg,rgba(62,67,63,.76),rgba(62,67,63,.02) 76%)}
.gift-section{background:#6f776f}.contact-band{background:#747d75}

/* Home hero: light, editorial and calm. */
.home-hero{position:relative;overflow:hidden;padding:clamp(64px,8vw,110px) 0;background:linear-gradient(135deg,#fffdfa 0%,#faf2ee 52%,#f0e5df 100%)}
.home-hero__wash{position:absolute;inset:auto auto -180px -160px;width:520px;height:520px;border-radius:50%;background:rgba(234,219,214,.55);filter:blur(2px)}
.home-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);align-items:center;gap:clamp(50px,7vw,105px)}
.home-hero__content{padding:25px 0}.home-hero__content h1{max-width:720px;margin-bottom:24px;color:var(--ink);font-size:clamp(3rem,6vw,6.1rem)}
.home-hero__content h1 em{display:block;color:var(--rose);font-style:italic}
.home-hero__lead{max-width:610px;margin-bottom:30px;color:var(--muted);font-family:var(--serif);font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.58}
.home-hero__actions{display:flex;flex-wrap:wrap;gap:13px}
.home-hero__signature{display:flex;align-items:center;gap:14px;margin-top:38px;color:var(--muted)}
.home-hero__signature>span{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(198,170,117,.45);border-radius:50%;background:rgba(255,255,255,.72);color:var(--gold-dark)}
.home-hero__signature p{margin:0;font-size:.84rem;line-height:1.5}.home-hero__signature strong{color:var(--ink);font-family:var(--serif);font-size:1.05rem;font-weight:500}
.home-hero__visual{position:relative;min-height:650px}
.home-hero__image-wrap{position:absolute;inset:0 0 0 60px;overflow:hidden;border-radius:240px 240px 32px 32px;background:var(--blush);box-shadow:0 30px 70px rgba(93,84,77,.14)}
.home-hero__image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,247,242,.08),rgba(96,79,69,.06));pointer-events:none}
.home-hero__image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.68) brightness(1.08) contrast(.92)}
.home-hero__floating-note{position:absolute;left:0;bottom:56px;min-width:190px;padding:24px 26px;border:1px solid rgba(255,255,255,.7);border-radius:20px;background:rgba(255,253,249,.9);box-shadow:var(--shadow-soft);backdrop-filter:blur(12px)}
.home-hero__floating-note span{display:block;margin-bottom:5px;color:var(--gold-dark);font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.home-hero__floating-note strong{color:var(--forest);font-family:var(--serif);font-size:1.34rem;font-weight:500;line-height:1.15}
.home-hero__petal{position:absolute;border:1px solid rgba(200,164,155,.42);border-radius:100% 0 100% 0;transform:rotate(35deg)}
.home-hero__petal--one{top:26px;right:-22px;width:92px;height:150px}.home-hero__petal--two{right:32px;bottom:-20px;width:62px;height:105px;transform:rotate(92deg)}
.trust-strip--soft{background:#fffaf6;border-top:1px solid rgba(200,164,155,.13);border-bottom:1px solid rgba(200,164,155,.18)}
.trust-strip--soft .trust-strip__grid>div{border-color:rgba(200,164,155,.22)}

/* Massages page: soft editorial layout instead of a dark image banner. */
.massages-page{background:var(--paper)}
.massages-hero{position:relative;overflow:hidden;padding:45px 0 clamp(85px,10vw,145px);background:linear-gradient(140deg,#fffdfa 0%,#f8efeb 58%,#eadbd6 100%)}
.massages-hero:before{content:"";position:absolute;top:-170px;right:-90px;width:420px;height:420px;border:1px solid rgba(200,164,155,.24);border-radius:50%}
.massages-hero .breadcrumbs{position:relative;z-index:2;margin-bottom:38px;color:#888b87}
.massages-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);align-items:center;gap:clamp(50px,7vw,105px)}
.massages-hero__content h1{max-width:730px;margin-bottom:24px;font-size:clamp(3rem,5.6vw,5.8rem)}
.massages-hero__content h1 em{color:var(--rose)}
.massages-hero__lead{max-width:620px;color:var(--muted);font-family:var(--serif);font-size:clamp(1.08rem,1.8vw,1.32rem);line-height:1.62}
.massages-hero__actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}
.massages-hero__details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:42px;padding-top:26px;border-top:1px solid rgba(94,103,95,.15)}
.massages-hero__details span{display:flex;flex-direction:column;color:var(--muted);font-size:.8rem}.massages-hero__details strong{margin-bottom:2px;color:var(--forest);font-family:var(--serif);font-size:1rem;font-weight:500}
.massages-collage{position:relative;min-height:620px}
.massages-collage img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(1.05) contrast(.94)}
.massages-collage__main{position:absolute;inset:25px 65px 80px 20px;overflow:hidden;border-radius:190px 190px 28px 28px;background:var(--blush);box-shadow:0 30px 65px rgba(88,75,67,.13)}
.massages-collage__small{position:absolute;overflow:hidden;border:8px solid rgba(255,253,249,.92);background:#fff;box-shadow:var(--shadow-soft)}
.massages-collage__small--rose{top:0;right:0;width:190px;height:230px;border-radius:100px 100px 18px 18px}
.massages-collage__small--stones{right:10px;bottom:20px;width:245px;height:165px;border-radius:18px}.massages-collage__small--stones img{object-position:center}
.massages-collage__label{position:absolute;left:0;bottom:25px;min-width:175px;padding:22px 24px;border:1px solid rgba(200,164,155,.25);border-radius:18px;background:rgba(255,253,249,.93);box-shadow:var(--shadow-soft);backdrop-filter:blur(10px)}
.massages-collage__label span{display:block;color:var(--gold-dark);font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.massages-collage__label strong{color:var(--forest);font-family:var(--serif);font-size:1.24rem;font-weight:500;line-height:1.18}
.massages-page .breadcrumbs a{color:var(--forest)}

.massage-benefits{position:relative;z-index:3;margin-top:-36px}.massage-benefits__grid{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid rgba(200,164,155,.22);border-radius:22px;background:rgba(255,253,249,.96);box-shadow:0 20px 55px rgba(79,88,81,.08)}
.massage-benefits article{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:28px 30px;border-right:1px solid rgba(200,164,155,.2)}.massage-benefits article:last-child{border-right:0}
.massage-benefits article>span{color:var(--rose);font-family:var(--serif);font-size:1.5rem}.massage-benefits strong{display:block;margin-bottom:4px;color:var(--forest);font-family:var(--serif);font-size:1.08rem;font-weight:500}.massage-benefits p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.55}
.massage-intro{padding-bottom:clamp(70px,8vw,110px)}.massage-intro__grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(55px,8vw,120px);align-items:start}.massage-intro__text>p{color:var(--muted);font-size:1.05rem}
.check-list--inline{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px}

.massage-shop{background:linear-gradient(180deg,#f9f3ef 0%,#f6eee9 100%)}
.section-heading--center{margin-right:auto;margin-left:auto;text-align:center}.section-heading--center .eyebrow{justify-content:center}.section-heading--center .section-heading__text{margin-right:auto;margin-left:auto}
.massage-shop__products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px!important}
.massage-shop__products ul.products li.product,.massage-shop__products .woocommerce ul.products li.product{position:relative;display:grid;grid-template-columns:42% 58%;min-height:285px;align-items:stretch;overflow:hidden;border:1px solid rgba(200,164,155,.22);border-radius:20px;background:rgba(255,253,249,.97);box-shadow:0 12px 35px rgba(79,88,81,.06)}
.massage-shop__products ul.products li.product>a.woocommerce-LoopProduct-link{display:contents}
.massage-shop__products ul.products li.product a img{grid-column:1;grid-row:1/5;width:100%;height:100%;min-height:285px;aspect-ratio:auto;object-fit:cover;filter:saturate(.72) brightness(1.04)}
.massage-shop__products ul.products li.product .woocommerce-loop-product__title{grid-column:2;align-self:end;padding:35px 30px 5px;font-size:1.55rem}
.massage-shop__products ul.products li.product .price{grid-column:2;padding:0 30px;color:var(--rose);font-family:var(--serif);font-size:1.12rem;font-weight:500}
.massage-shop__products ul.products li.product .button{grid-column:2;justify-self:start;margin:13px 30px 34px;padding:12px 20px}
.massage-shop__products ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(79,88,81,.09)}

.rituals-section{background:#fffdfa}.rituals-section .section-heading--split .section-heading__text{max-width:420px}
.rituals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.rituals-grid article{position:relative;min-height:260px;padding:38px;border:1px solid rgba(200,164,155,.2);border-radius:20px;background:linear-gradient(145deg,#fffdfa,#faf3ef);transition:transform .25s ease,box-shadow .25s ease}.rituals-grid article:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft)}
.rituals-grid article>span{display:grid;width:46px;height:46px;margin-bottom:30px;place-items:center;border:1px solid rgba(200,164,155,.35);border-radius:50%;color:var(--rose);font-family:var(--serif);font-size:1.1rem}.rituals-grid h3{font-size:1.75rem}.rituals-grid p{max-width:500px;margin:0;color:var(--muted);font-size:.94rem}
.massage-cta{padding:70px 0;background:var(--blush-2)}.massage-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.massage-cta h2{max-width:760px;margin:0;font-size:clamp(2rem,4vw,3.5rem)}

@media(max-width:1100px){
  .home-hero__grid,.massages-hero__grid{grid-template-columns:1fr 1fr;gap:45px}
  .home-hero__visual{min-height:560px}.home-hero__image-wrap{left:25px}
  .massages-collage{min-height:540px}.massages-collage__main{right:45px}.massages-collage__small--rose{width:155px;height:195px}.massages-collage__small--stones{width:210px;height:145px}
  .massage-shop__products ul.products li.product,.massage-shop__products .woocommerce ul.products li.product{grid-template-columns:1fr;display:block}.massage-shop__products ul.products li.product a img{width:100%;height:260px;min-height:0}.massage-shop__products ul.products li.product .woocommerce-loop-product__title{padding-top:25px}
}
@media(max-width:820px){
  .home-hero{padding-top:55px}.home-hero__grid,.massages-hero__grid{grid-template-columns:1fr}.home-hero__content{padding-bottom:0}.home-hero__content h1,.massages-hero__content h1{font-size:clamp(3rem,12vw,5rem)}
  .home-hero__visual{min-height:570px}.home-hero__image-wrap{inset:0 20px 0 55px}.home-hero__floating-note{left:10px;bottom:35px}
  .massages-hero{padding-bottom:105px}.massages-collage{min-height:560px;max-width:620px;width:100%;margin:15px auto 0}.massages-collage__main{inset:25px 65px 70px 30px}
  .massage-benefits__grid{grid-template-columns:1fr}.massage-benefits article{border-right:0;border-bottom:1px solid rgba(200,164,155,.2)}.massage-benefits article:last-child{border-bottom:0}
  .massage-intro__grid{grid-template-columns:1fr;gap:25px}.massage-shop__products .products{grid-template-columns:1fr!important}.rituals-grid{grid-template-columns:1fr}.massage-cta__inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .home-hero{padding:38px 0 68px}.home-hero__content h1,.massages-hero__content h1{font-size:clamp(2.75rem,14vw,4rem)}.home-hero__actions,.massages-hero__actions{align-items:stretch;flex-direction:column}.home-hero__actions .button,.massages-hero__actions .button{width:100%}
  .home-hero__visual{min-height:455px;margin-top:10px}.home-hero__image-wrap{inset:0 8px 0 28px;border-radius:150px 150px 24px 24px}.home-hero__floating-note{left:0;bottom:20px;min-width:160px;padding:18px}.home-hero__petal{display:none}.home-hero__signature{margin-top:28px}
  .massages-hero{padding-top:30px}.massages-hero .breadcrumbs{margin-bottom:25px}.massages-hero__details{grid-template-columns:1fr}.massages-collage{min-height:430px}.massages-collage__main{inset:15px 35px 55px 18px;border-radius:130px 130px 22px 22px}.massages-collage__small--rose{width:112px;height:145px;border-width:5px}.massages-collage__small--stones{right:0;bottom:5px;width:155px;height:105px;border-width:5px}.massages-collage__label{left:0;bottom:8px;min-width:140px;padding:15px 17px}.massages-collage__label strong{font-size:1.02rem}
  .massage-benefits article{grid-template-columns:38px 1fr;padding:22px}.check-list--inline{grid-template-columns:1fr}.rituals-grid article{min-height:0;padding:28px}.massage-shop__products ul.products li.product a img{height:230px}
}

/* ------------------------------------------------------------
   V1.2.0 — premium, conversion-focused product selection
   ------------------------------------------------------------ */
.products-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 4%,rgba(234,219,214,.62),transparent 27%),
    radial-gradient(circle at 92% 92%,rgba(231,235,229,.82),transparent 31%),
    #fbf8f4;
}
.products-section:before{
  content:"";
  position:absolute;
  top:70px;
  right:-105px;
  width:280px;
  height:280px;
  border:1px solid rgba(200,164,155,.18);
  border-radius:50%;
  pointer-events:none;
}
.products-section .container{position:relative;z-index:1;max-width:1240px}
.products-section .section-heading{margin-bottom:42px}

.home-product-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.home-product-card{
  position:relative;
  display:flex;
  min-width:0;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(94,103,95,.13);
  border-radius:24px;
  background:rgba(255,253,249,.98);
  box-shadow:0 12px 34px rgba(79,88,81,.065);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.home-product-card:hover{
  transform:translateY(-7px);
  border-color:rgba(200,164,155,.36);
  box-shadow:0 24px 54px rgba(79,88,81,.12);
}
.home-product-card__media{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:1.18/1;
  background:linear-gradient(145deg,#eee7df,#faf6f1);
  text-decoration:none;
}
.home-product-card__media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 56%,rgba(47,54,49,.25));
  pointer-events:none;
}
.home-product-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.76) brightness(1.04) contrast(.95);
  transition:transform .65s ease,filter .35s ease;
}
.home-product-card:hover .home-product-card__media img{
  transform:scale(1.045);
  filter:saturate(.88) brightness(1.02) contrast(.97);
}
.home-product-card__media-label{
  position:absolute;
  z-index:2;
  left:16px;
  bottom:15px;
  display:inline-flex;
  max-width:calc(100% - 32px);
  align-items:center;
  min-height:31px;
  border:1px solid rgba(255,255,255,.66);
  border-radius:999px;
  padding:7px 12px;
  background:rgba(255,253,249,.91);
  color:var(--forest);
  box-shadow:0 6px 20px rgba(48,57,50,.08);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.095em;
  line-height:1.2;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
}
.home-product-card__gift{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  padding:30px;
  background:
    radial-gradient(circle at 80% 12%,rgba(255,255,255,.68),transparent 24%),
    linear-gradient(145deg,#ead8d2 0%,#f6eae5 48%,#e1e7df 100%);
  color:var(--forest);
  text-align:center;
}
.home-product-card__gift:before,.home-product-card__gift:after{
  content:"";
  position:absolute;
  border:1px solid rgba(94,103,95,.16);
  border-radius:50%;
}
.home-product-card__gift:before{top:-55px;right:-35px;width:165px;height:165px}
.home-product-card__gift:after{left:-40px;bottom:-62px;width:185px;height:185px}
.home-product-card__gift svg{
  position:relative;
  z-index:1;
  width:54px;
  height:54px;
  margin-bottom:12px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-product-card__gift small,.home-product-card__gift strong{position:relative;z-index:1;display:block}
.home-product-card__gift small{margin-bottom:4px;font-size:.62rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.home-product-card__gift strong{font-family:var(--serif);font-size:1.65rem;font-weight:500;line-height:1.08}
.home-product-card__placeholder{
  display:grid;
  width:100%;
  height:100%;
  place-items:center;
  background:linear-gradient(145deg,var(--blush-2),var(--sage));
  color:var(--rose);
  font-family:var(--serif);
  font-size:3rem;
}
.home-product-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:23px 21px 21px;
}
.home-product-card__body h3{
  margin:0 0 11px;
  font-size:clamp(1.25rem,1.55vw,1.55rem);
  line-height:1.12;
}
.home-product-card__body h3 a{text-decoration:none}
.home-product-card__body h3 a:hover{color:var(--gold-dark)}
.home-product-card__body>p{
  margin:0 0 22px;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.62;
}
.home-product-card__footer{
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:flex-end;
  padding-top:17px;
  border-top:1px solid rgba(94,103,95,.12);
}
.home-product-card__price{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:15px;
}
.home-product-card__price>span{
  color:#8b918c;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.home-product-card__price>strong{
  color:var(--gold-dark);
  font-family:var(--serif);
  font-size:1.18rem;
  font-weight:500;
  line-height:1.2;
  text-align:right;
}
.home-product-card__price del{color:#aaa;font-size:.76em;font-weight:400}
.home-product-card__price ins{text-decoration:none}
.home-product-card__cta{
  display:flex;
  min-height:47px;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(94,103,95,.24);
  border-radius:999px;
  padding:11px 16px 11px 18px;
  color:var(--forest);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.055em;
  line-height:1.25;
  text-decoration:none;
  text-transform:uppercase;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
}
.home-product-card__cta span:last-child{
  display:grid;
  width:27px;
  height:27px;
  flex:0 0 27px;
  place-items:center;
  border-radius:50%;
  background:var(--sage-2);
  font-size:1rem;
  transition:transform .22s ease,background .22s ease;
}
.home-product-card__cta:hover,.home-product-card__cta:focus-visible{
  border-color:var(--forest);
  background:var(--forest);
  color:#fff;
  transform:translateY(-1px);
}
.home-product-card__cta:hover span:last-child,.home-product-card__cta:focus-visible span:last-child{
  background:rgba(255,255,255,.16);
  transform:translateX(2px);
}
.home-product-assurances{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin-top:30px;
  overflow:hidden;
  border:1px solid rgba(94,103,95,.13);
  border-radius:17px;
  background:rgba(255,253,249,.72);
}
.home-product-assurances span{
  padding:18px 22px;
  border-right:1px solid rgba(94,103,95,.12);
  color:var(--muted);
  font-size:.75rem;
  line-height:1.5;
  text-align:center;
}
.home-product-assurances span:last-child{border-right:0}
.home-product-assurances strong{color:var(--forest);font-weight:800}

@media(max-width:1080px){
  .home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:820px;margin-inline:auto}
  .home-product-card__media{aspect-ratio:1.45/1}
  .home-product-assurances{max-width:820px;margin-inline:auto;margin-top:28px}
}
@media(max-width:720px){
  .products-section .section-heading--split{gap:18px}
  .products-section .section-heading--split .button{width:100%}
  .home-product-assurances{grid-template-columns:1fr}
  .home-product-assurances span{border-right:0;border-bottom:1px solid rgba(94,103,95,.12)}
  .home-product-assurances span:last-child{border-bottom:0}
}
@media(max-width:580px){
  .home-product-grid{grid-template-columns:1fr;gap:17px;max-width:390px}
  .home-product-card{border-radius:21px}
  .home-product-card__media{aspect-ratio:1.42/1}
  .home-product-card__body{padding:21px 19px 19px}
  .home-product-card__body h3{font-size:1.42rem}
  .home-product-card__body>p{font-size:.84rem}
  .home-product-card__cta{font-size:.66rem}
  .home-product-assurances{max-width:390px}
}

/* ------------------------------------------------------------
   V1.2.1 — aesthetic page: calmer scale and cleaner hierarchy
   ------------------------------------------------------------ */
.aesthetic-page .aesthetic-hero{
  min-height:375px;
  align-items:center;
  background-position:center 43%;
}
.aesthetic-page .aesthetic-hero .page-hero__veil{
  background:linear-gradient(90deg,rgba(55,64,57,.82) 0%,rgba(55,64,57,.56) 52%,rgba(55,64,57,.18) 100%);
}
.aesthetic-page .aesthetic-hero .page-hero__content{
  padding-block:52px 58px;
}
.aesthetic-page .aesthetic-hero .breadcrumbs{
  margin-bottom:18px;
}
.aesthetic-page .aesthetic-hero h1{
  max-width:700px;
  margin-bottom:18px;
  font-size:clamp(2.3rem,3.8vw,3.55rem);
  line-height:1.08;
}
.aesthetic-page .aesthetic-hero .page-hero__content>p:not(.eyebrow){
  max-width:610px;
  margin-bottom:25px;
  font-size:1rem;
  line-height:1.65;
}
.aesthetic-page .aesthetic-section{
  padding:clamp(54px,6vw,78px) 0;
}
.aesthetic-page .split-layout{
  width:min(1080px,100%);
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(42px,6vw,72px);
}
.aesthetic-page .split-layout--reverse{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
}
.aesthetic-page .split-layout__content{
  max-width:540px;
}
.aesthetic-page .split-layout__content h2,
.aesthetic-page .section-heading h2{
  margin-bottom:16px;
  font-size:clamp(1.8rem,2.6vw,2.35rem);
  line-height:1.12;
}
.aesthetic-page .split-layout__content>p:not(.eyebrow),
.aesthetic-page .section-heading__text{
  font-size:.96rem;
  line-height:1.72;
}
.aesthetic-page .check-list{
  gap:7px;
  margin:22px 0 0;
}
.aesthetic-page .image-frame{
  width:100%;
  max-width:440px;
  justify-self:center;
}
.aesthetic-page .image-frame>img{
  width:100%;
  height:320px;
  min-height:0;
  object-fit:cover;
  border-radius:18px;
  box-shadow:0 14px 38px rgba(79,88,81,.1);
}
.aesthetic-page .aesthetic-intro .image-frame>img{
  object-position:center 42%;
}
.aesthetic-page .aesthetic-waxing .image-frame>img{
  object-position:center 50%;
}
.aesthetic-page .image-frame:before{
  left:-16px;
  bottom:-16px;
  width:58%;
  height:62%;
  border-color:rgba(198,170,117,.55);
  border-radius:18px;
}
.aesthetic-page .aesthetic-products .section-heading{
  max-width:650px;
  margin:0 auto 34px;
  text-align:center;
}
.aesthetic-page .aesthetic-products .section-heading .eyebrow{
  justify-content:center;
}
.aesthetic-page .aesthetic-products .woocommerce ul.products,
.aesthetic-page .aesthetic-products ul.products{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:0;
}
.aesthetic-page .aesthetic-products ul.products li.product,
.aesthetic-page .aesthetic-products .woocommerce ul.products li.product{
  border-radius:18px;
  box-shadow:0 9px 28px rgba(79,88,81,.065);
}
.aesthetic-page .aesthetic-products ul.products li.product:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 36px rgba(79,88,81,.09);
}
.aesthetic-page .aesthetic-products ul.products li.product a img{
  width:100%;
  height:185px;
  aspect-ratio:auto;
  object-fit:cover;
}
.aesthetic-page .aesthetic-products ul.products li.product .woocommerce-loop-product__title{
  min-height:0;
  padding:18px 18px 5px;
  font-size:1.12rem;
  line-height:1.2;
}
.aesthetic-page .aesthetic-products ul.products li.product .price{
  padding:0 18px;
  font-size:.92rem;
}
.aesthetic-page .aesthetic-products ul.products li.product .button{
  min-height:42px;
  margin:10px 18px 20px;
  padding:11px 17px;
  font-size:.68rem;
}

@media(max-width:820px){
  .aesthetic-page .aesthetic-hero{min-height:345px;background-position:center}
  .aesthetic-page .aesthetic-hero .page-hero__content{padding-block:48px 56px}
  .aesthetic-page .aesthetic-hero h1{font-size:clamp(2.2rem,7vw,3rem)}
  .aesthetic-page .split-layout,
  .aesthetic-page .split-layout--reverse{width:min(620px,100%);grid-template-columns:1fr;gap:32px}
  .aesthetic-page .split-layout__content{max-width:none}
  .aesthetic-page .image-frame{max-width:520px}
  .aesthetic-page .image-frame>img{height:305px}
  .aesthetic-page .aesthetic-products .woocommerce ul.products,
  .aesthetic-page .aesthetic-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
}

@media(max-width:560px){
  .aesthetic-page .aesthetic-hero{min-height:320px}
  .aesthetic-page .aesthetic-hero .page-hero__content{padding-block:38px 45px}
  .aesthetic-page .aesthetic-hero .breadcrumbs{margin-bottom:13px}
  .aesthetic-page .aesthetic-hero h1{font-size:2.15rem}
  .aesthetic-page .aesthetic-hero .page-hero__content>p:not(.eyebrow){font-size:.92rem}
  .aesthetic-page .aesthetic-section{padding:50px 0}
  .aesthetic-page .split-layout__content h2,
  .aesthetic-page .section-heading h2{font-size:1.8rem}
  .aesthetic-page .image-frame>img{height:255px;border-radius:15px}
  .aesthetic-page .aesthetic-products .section-heading{margin-bottom:26px}
  .aesthetic-page .aesthetic-products .woocommerce ul.products,
  .aesthetic-page .aesthetic-products ul.products{grid-template-columns:1fr;max-width:370px;margin-inline:auto}
  .aesthetic-page .aesthetic-products ul.products li.product a img{height:200px}
}


/* ------------------------------------------------------------
   V1.3.0 — refined page heroes + premium catalogue cards
   ------------------------------------------------------------ */
.page-hero--image{
  position:relative;
  display:block;
  min-height:auto;
  padding:42px 0 22px;
  background:
    radial-gradient(circle at 3% 18%,rgba(234,219,214,.55),transparent 24%),
    radial-gradient(circle at 100% 100%,rgba(231,235,229,.88),transparent 30%),
    linear-gradient(135deg,#fffdfa 0%,#faf3ee 56%,#eff3ed 100%) !important;
  color:var(--ink);
}
.page-hero--image:before{
  content:"";
  position:absolute;
  top:-80px;
  right:-46px;
  width:240px;
  height:240px;
  border:1px solid rgba(200,164,155,.2);
  border-radius:50%;
  pointer-events:none;
}
.page-hero--image .page-hero__veil{display:none}
.page-hero--image .page-hero__content{padding-block:12px 24px}
.page-hero--image .breadcrumbs,
.page-hero--image .page-hero__content>p:not(.eyebrow){color:var(--muted)}
.page-hero--image .eyebrow--light{color:var(--gold-dark)}
.page-hero--image .page-hero__content h1{max-width:820px;color:var(--forest);font-size:clamp(2.5rem,5vw,4.8rem)}
.page-hero--image .page-hero__content>p:not(.eyebrow){max-width:700px;font-size:1.02rem;line-height:1.7}

.aesthetic-page .aesthetic-hero,
.page-hero--image.aesthetic-hero{min-height:auto;background-position:center}
.aesthetic-page .aesthetic-hero .page-hero__content,
.page-hero--image.aesthetic-hero .page-hero__content{padding-block:12px 24px}
.aesthetic-page .aesthetic-hero h1{font-size:clamp(2.45rem,4.4vw,4rem)}

.home-product-grid--catalog{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.home-product-card--catalog .home-product-card__media{aspect-ratio:1.16/1}
.home-product-card--catalog .home-product-card__body{padding:24px 22px 22px}
.home-product-card--catalog .home-product-card__body h3{font-size:clamp(1.18rem,1.42vw,1.42rem)}
.home-product-card--catalog .home-product-card__body>p{margin-bottom:20px;font-size:.88rem;line-height:1.63}
.home-product-card--catalog .home-product-card__price>strong{font-size:1.1rem}
.home-product-grid--massages .home-product-card__media,
.home-product-grid--services .home-product-card__media{aspect-ratio:1.08/1}
.home-product-grid--minceur .home-product-card__media{aspect-ratio:1.1/1}
.aesthetic-page .aesthetic-products .section-heading{max-width:760px;margin:0 auto 38px}
.aesthetic-page .aesthetic-products .section-heading h2{font-size:clamp(1.95rem,3.1vw,2.7rem)}
.aesthetic-page .aesthetic-products .section-heading__text{max-width:620px;margin-inline:auto}
.aesthetic-page .aesthetic-products .home-product-grid--catalog{max-width:1120px;margin-inline:auto}
.aesthetic-page .aesthetic-products .home-product-card__media{aspect-ratio:1.2/1}
.aesthetic-page .aesthetic-products .home-product-card__body h3{font-size:1.28rem}

@media(max-width:1080px){
  .page-hero--image{padding-top:36px}
  .home-product-grid--catalog{grid-template-columns:repeat(2,minmax(0,1fr));max-width:860px;margin-inline:auto}
}
@media(max-width:820px){
  .page-hero--image{padding-top:32px}
  .page-hero--image .page-hero__content h1{font-size:clamp(2.2rem,7vw,3.2rem)}
  .page-hero--image .page-hero__content>p:not(.eyebrow){font-size:.96rem}
}
@media(max-width:580px){
  .page-hero--image{padding-top:26px}
  .page-hero--image .page-hero__content{padding-block:8px 18px}
  .home-product-grid--catalog{grid-template-columns:1fr;max-width:390px;gap:18px}
  .home-product-card--catalog .home-product-card__body{padding:21px 19px 19px}
}


/* ------------------------------------------------------------
   V1.4.0 — complete blog, exact slimming prices, no Divi leakage
   ------------------------------------------------------------ */
.blog-page__hero{padding:68px 0 58px;background:linear-gradient(135deg,#fffdfa,#f8efeb 58%,#eff3ed)}
.blog-page__hero h1{max-width:820px;font-size:clamp(2.6rem,5vw,4.7rem)}
.blog-page__archive{padding-top:72px}
.posts-grid--all{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.posts-grid--all .post-card{height:100%}
.posts-grid--all .post-card__image{aspect-ratio:1.45/1}
.posts-grid--all .post-card__image img{width:100%;height:100%;object-fit:cover}
.posts-grid--all .post-card__body{display:flex;height:calc(100% - 1px);flex-direction:column}
.posts-grid--all .post-card__body .text-link{margin-top:auto}

.slimming-page__hero{padding:68px 0 58px;background:linear-gradient(135deg,#fffdfa,#f7eeea 58%,#edf2eb)}
.slimming-page__hero h1{max-width:970px;font-size:clamp(2.55rem,5vw,4.9rem)}
.hero-inline-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}
.slimming-intro .split-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(44px,7vw,88px)}
.slimming-intro .image-frame{max-width:500px}
.slimming-intro .image-frame>img{height:440px;min-height:0;object-fit:cover;border-radius:24px}
.pricing-section{background:linear-gradient(180deg,#fbf7f2,#f8f2ec)}
.pricing-section__heading{max-width:760px;margin:0 auto 42px;text-align:center}
.pricing-section__heading .eyebrow{justify-content:center}
.pricing-grid{display:grid;gap:24px;align-items:stretch}
.pricing-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.pricing-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin-inline:auto}
.pricing-card{display:flex;min-width:0;flex-direction:column;padding:32px;border:1px solid rgba(94,103,95,.14);border-radius:24px;background:#fffdf9;box-shadow:0 14px 38px rgba(79,88,81,.075)}
.pricing-card--blush{background:linear-gradient(145deg,#fffdfa,#f8efeb)}
.pricing-card__kicker{margin:0 0 8px;color:var(--gold-dark);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.pricing-card h3{margin-bottom:24px;font-size:clamp(1.75rem,2.4vw,2.25rem)}
.pricing-card__list{margin:0 0 28px;padding:0;border-top:1px solid var(--line);list-style:none}
.pricing-card__list li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.92rem}
.pricing-card__list strong{color:var(--forest);font-family:var(--serif);font-size:1.2rem;font-weight:500;white-space:nowrap}
.pricing-card__button{width:100%;margin-top:auto}
.lifting-section{background:#fffdf9}
.lifting-section__intro{max-width:760px;margin:0 auto 40px;text-align:center}
.lifting-section__intro .eyebrow{justify-content:center}
.lifting-section__intro h2{font-size:clamp(2.2rem,4vw,3.6rem)}
.lifting-section__intro>p:last-child{color:var(--muted)}
.pricing-disclaimer{max-width:820px;margin:25px auto 0;text-align:center}

@media(max-width:1020px){
  .posts-grid--all{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-grid--three .pricing-card:last-child{grid-column:1/-1;max-width:510px;justify-self:center;width:100%}
}
@media(max-width:820px){
  .slimming-intro .split-layout{grid-template-columns:1fr;max-width:620px}
  .slimming-intro .image-frame{max-width:580px}
  .slimming-intro .image-frame>img{height:360px}
}
@media(max-width:650px){
  .posts-grid--all,.pricing-grid--three,.pricing-grid--two{grid-template-columns:1fr}
  .pricing-grid--three .pricing-card:last-child{grid-column:auto;max-width:none}
  .pricing-card{padding:26px 22px;border-radius:20px}
  .hero-inline-actions{align-items:stretch;flex-direction:column}
  .hero-inline-actions .button{width:100%}
}


/* ------------------------------------------------------------
   V1.4.1 — remove footer image band from every page
   ------------------------------------------------------------ */
.footer-visual{display:none!important;height:0!important;background:none!important}
.site-footer{border-top:1px solid rgba(255,255,255,.08)}
.footer-grid{padding-top:64px}
@media(max-width:820px){.footer-grid{padding-top:54px}}


/* ------------------------------------------------------------
   V1.4.2 — pricing card buttons visibility fix
   ------------------------------------------------------------ */
.pricing-card__button,
.pricing-card__button:visited{
  display:inline-flex;
  width:100%;
  min-height:66px;
  align-items:center;
  justify-content:center;
  margin-top:auto;
  padding:16px 24px;
  border:0;
  border-radius:999px;
  background:var(--forest) !important;
  color:#fff !important;
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.1;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  white-space:normal;
  box-shadow:none;
  opacity:1;
}
.pricing-card__button:hover,
.pricing-card__button:focus-visible{
  background:var(--forest-2) !important;
  color:#fff !important;
}
.pricing-card__button span,
.pricing-card__button *{
  color:#fff !important;
  opacity:1 !important;
}


/* ------------------------------------------------------------
   V1.4.3 — force visible labels on every clickable button
   ------------------------------------------------------------ */
:where(
  a.button,
  button.button,
  input.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
),
:where(
  a.button,
  button.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
):link,
:where(
  a.button,
  button.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
):visited{
  font-family:var(--sans) !important;
  font-size:.8rem !important;
  font-style:normal !important;
  font-weight:800 !important;
  letter-spacing:.06em !important;
  line-height:1.25 !important;
  text-align:center !important;
  text-decoration:none !important;
  text-indent:0 !important;
  text-shadow:none !important;
  text-transform:uppercase !important;
  white-space:normal !important;
  visibility:visible !important;
  opacity:1 !important;
  overflow:visible !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  mix-blend-mode:normal !important;
}

:where(
  a.button,
  button.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
) > *,
:where(
  a.button,
  button.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
)::before,
:where(
  a.button,
  button.button,
  .woocommerce a.button,
  .woocommerce button.button,
  .home-product-card__cta,
  .pricing-card__button,
  .header-cta
)::after{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* Preserve readable contrast for the light and outlined variants. */
a.button--outline,
a.button--outline:link,
a.button--outline:visited,
button.button--outline{
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}
a.button--outline:hover,
a.button--outline:focus-visible,
button.button--outline:hover,
button.button--outline:focus-visible{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
a.button--soft-outline,
a.button--soft-outline:link,
a.button--soft-outline:visited{
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}
a.button--soft-outline:hover,
a.button--soft-outline:focus-visible{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
a.button--light,
a.button--light:link,
a.button--light:visited{
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}
a.button--outline-light,
a.button--outline-light:link,
a.button--outline-light:visited{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
a.button--outline-light:hover,
a.button--outline-light:focus-visible{
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}

/* Product-card calls to action use a light background, so force dark text. */
.home-product-card__cta,
.home-product-card__cta:link,
.home-product-card__cta:visited{
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}
.home-product-card__cta:hover,
.home-product-card__cta:focus-visible{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Price-card buttons stay filled and readable in every browser state. */
.pricing-card__button,
.pricing-card__button:link,
.pricing-card__button:visited,
.pricing-card__button:hover,
.pricing-card__button:focus-visible{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* Native submit inputs need an explicit text color too. */
input.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
}


/* ------------------------------------------------------------
   V1.6.0 — warm blush, plum and champagne palette
   ------------------------------------------------------------ */
body{background:var(--paper);color:var(--ink)}
a{color:inherit}
h1,h2,h3,h4{color:var(--forest)}
em{color:var(--rose)}

.topbar{background:#6d4a57;color:rgba(255,255,255,.96)}
.site-header{background:rgba(255,253,251,.97);border-bottom-color:rgba(109,74,87,.13)}
.site-header.is-sticky{box-shadow:0 8px 30px rgba(63,58,56,.1)}
.primary-menu a{color:var(--ink)}
.primary-menu a:hover,
.primary-menu .current-menu-item>a,
.primary-menu .current_page_item>a{color:#986775}
.primary-menu .sub-menu{background:#fffdfb;border-color:rgba(109,74,87,.14);box-shadow:0 18px 45px rgba(63,58,56,.1)}
.primary-menu .sub-menu a:hover{background:var(--blush-2)}
.header-cart{border-color:rgba(109,74,87,.2);color:var(--forest)}
.cart-count{background:var(--rose);color:#fff}
.menu-toggle__line{background:var(--forest)}

.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.pricing-card__button{
  background:var(--forest) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 10px 24px rgba(109,74,87,.16);
}
.button:hover,
.button:focus-visible,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.pricing-card__button:hover,
.pricing-card__button:focus-visible{
  background:var(--forest-2) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 14px 28px rgba(87,58,69,.22);
}
.button--outline,
a.button--outline,
button.button--outline{
  border-color:#9c6c79 !important;
  background:transparent !important;
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
  box-shadow:none;
}
.button--outline:hover,
.button--outline:focus-visible,
a.button--outline:hover,
a.button--outline:focus-visible{
  border-color:var(--forest) !important;
  background:var(--forest) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.button--soft-outline{
  border-color:rgba(109,74,87,.28) !important;
  background:rgba(255,253,251,.78) !important;
  color:var(--forest) !important;
  -webkit-text-fill-color:var(--forest) !important;
}
.button--soft-outline:hover,
.button--soft-outline:focus-visible{
  background:var(--forest) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.button--light{background:#fffdfb !important;color:var(--forest) !important;-webkit-text-fill-color:var(--forest) !important}
.button--light:hover{background:var(--blush-2) !important;color:var(--forest) !important;-webkit-text-fill-color:var(--forest) !important}

.home-hero{
  background:
    radial-gradient(circle at 0 100%,rgba(185,131,143,.13),transparent 36%),
    linear-gradient(135deg,#fffdfb 0%,#f8eef0 54%,#ead9dc 100%);
}
.home-hero__wash{background:rgba(196,154,136,.15)}
.home-hero__content h1{color:var(--ink)}
.home-hero__content h1 em{color:#a66f7d}
.home-hero__signature>span{border-color:rgba(196,154,136,.5);background:rgba(255,253,251,.82);color:var(--gold-dark)}
.home-hero__image-wrap{background:var(--blush);box-shadow:0 30px 70px rgba(109,74,87,.14)}
.home-hero__floating-note{background:rgba(255,253,251,.93);box-shadow:0 14px 38px rgba(109,74,87,.11)}
.home-hero__petal{border-color:rgba(185,131,143,.42)}
.trust-strip--soft{background:#fcf6f4;border-color:rgba(185,131,143,.17)}
.trust-strip--soft .trust-strip__grid>div{border-color:rgba(185,131,143,.19)}

.section--ivory{background:var(--ivory)}
.section--sage{background:var(--sage-2)}
.products-section{
  background:
    radial-gradient(circle at 8% 4%,rgba(238,220,223,.76),transparent 27%),
    radial-gradient(circle at 92% 92%,rgba(196,154,136,.14),transparent 31%),
    #faf4f3;
}
.products-section:before{border-color:rgba(185,131,143,.2)}
.home-product-card{border-color:rgba(109,74,87,.13);background:rgba(255,253,251,.99);box-shadow:0 12px 34px rgba(109,74,87,.065)}
.home-product-card:hover{border-color:rgba(185,131,143,.38);box-shadow:0 24px 54px rgba(109,74,87,.12)}
.home-product-card__media{background:linear-gradient(145deg,#eadfdb,#fbf6f3)}
.home-product-card__media-label{background:rgba(255,253,251,.93);color:var(--forest);box-shadow:0 6px 20px rgba(109,74,87,.09)}
.home-product-card__gift{background:radial-gradient(circle at 80% 12%,rgba(255,255,255,.72),transparent 24%),linear-gradient(145deg,#ebd8dc 0%,#f8eef0 48%,#e7d4d0 100%)}
.home-product-card__body h3 a:hover{color:#986775}
.home-product-card__price>strong{color:var(--gold-dark)}
.home-product-card__cta,
.home-product-card__cta:link,
.home-product-card__cta:visited{color:var(--forest) !important;-webkit-text-fill-color:var(--forest) !important;border-color:rgba(109,74,87,.19)}
.home-product-card__cta:hover,
.home-product-card__cta:focus-visible{background:var(--forest) !important;color:#fff !important;-webkit-text-fill-color:#fff !important}

.page-hero--image,
.slimming-page__hero{
  background:
    radial-gradient(circle at 3% 18%,rgba(238,220,223,.68),transparent 24%),
    radial-gradient(circle at 100% 100%,rgba(196,154,136,.14),transparent 30%),
    linear-gradient(135deg,#fffdfb 0%,#f8eef0 56%,#eadadd 100%) !important;
}
.page-hero--image:before{border-color:rgba(185,131,143,.22)}
.massages-hero{background:linear-gradient(140deg,#fffdfb 0%,#f7edef 58%,#e4cdd2 100%)}
.massages-hero:before{border-color:rgba(185,131,143,.25)}
.massage-benefits{background:#fcf6f4}
.rituals-grid article{border-color:rgba(185,131,143,.2);background:linear-gradient(145deg,#fffdfb,#f8eef0)}
.massage-cta{background:var(--blush-2)}

.pricing-section{background:#f8f1ef}
.pricing-card{border-color:rgba(109,74,87,.14);background:#fffdfb;box-shadow:0 14px 38px rgba(109,74,87,.08)}
.pricing-card--blush{background:linear-gradient(145deg,#fffdfb,#f3e4e7)}
.pricing-card__kicker{color:#986775}
.pricing-card__list{border-color:rgba(109,74,87,.14)}
.pricing-card__list li{border-color:rgba(109,74,87,.13);color:var(--muted)}
.pricing-card__list strong{color:var(--forest)}

.service-card__overlay{background:linear-gradient(0deg,rgba(63,58,56,.84),rgba(63,58,56,.04) 76%)}
.gift-section{background:#8a6370}
.contact-band{background:#74515e}
.site-footer{background:#4a333d}
.site-footer a:hover{color:#eac6ce}
.footer-bottom{border-color:rgba(255,255,255,.12)}

.check-list li:before{color:#986775}
.eyebrow{color:var(--gold-dark)}
.text-link{color:var(--forest)}
.breadcrumbs a:hover{color:#986775}

::selection{background:#e6cbd1;color:#3f3a38}


/* ------------------------------------------------------------
   V1.7.0 — intuitive shop, compact cards and masked email labels
   ------------------------------------------------------------ */
.lcb-email-link,.topbar-email,.footer-email{font-weight:800;letter-spacing:.045em;text-decoration:none;text-transform:uppercase}
.lcb-email-link:hover,.topbar-email:hover,.footer-email:hover{text-decoration:underline}

.shop-catalog-page{background:var(--paper)}
.shop-catalog-hero{position:relative;overflow:hidden;padding:48px 0 52px;background:linear-gradient(135deg,#fffdfb 0%,#f7efed 56%,#efe8ec 100%)}
.shop-catalog-hero:after{content:"";position:absolute;right:-90px;bottom:-160px;width:390px;height:390px;border:1px solid rgba(169,111,124,.18);border-radius:50%}
.shop-catalog-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,430px);align-items:center;gap:56px}
.shop-catalog-hero h1{max-width:760px;margin-bottom:18px;font-size:clamp(2.45rem,4.7vw,4.7rem)}
.shop-catalog-hero__inner>div>p:last-child{max-width:680px;margin:0;color:var(--muted);font-size:1.02rem}
.shop-gift-highlight{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:19px;overflow:hidden;border:1px solid rgba(140,89,102,.18);border-radius:22px;padding:14px;background:rgba(255,253,251,.92);box-shadow:0 18px 42px rgba(91,61,69,.1);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}
.shop-gift-highlight:hover{transform:translateY(-4px);box-shadow:0 24px 52px rgba(91,61,69,.14)}
.shop-gift-highlight__image{width:145px;height:112px;border-radius:14px;object-fit:cover}
.shop-gift-highlight span{display:flex;min-width:0;flex-direction:column}
.shop-gift-highlight small{margin-bottom:4px;color:var(--gold-dark);font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.shop-gift-highlight strong{color:var(--forest);font-family:var(--serif);font-size:1.25rem;font-weight:500;line-height:1.18}
.shop-gift-highlight em{margin-top:8px;color:var(--forest);font-family:var(--sans);font-size:.73rem;font-style:normal;font-weight:800;text-transform:uppercase}

.shop-catalog-section{padding-top:54px}
.shop-catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.shop-filter-list{display:flex;flex-wrap:wrap;gap:9px}
.shop-filter{display:inline-flex;min-height:42px;align-items:center;gap:8px;border:1px solid rgba(87,70,74,.16);border-radius:999px;padding:9px 14px;background:#fffdfb;color:var(--ink);font-size:.75rem;font-weight:800;transition:.2s}
.shop-filter small{display:grid;min-width:22px;height:22px;place-items:center;border-radius:50%;background:#f4e8e9;color:var(--forest);font-size:.65rem}
.shop-filter:hover,.shop-filter:focus-visible{border-color:rgba(140,89,102,.5);background:#fbf3f3}
.shop-filter.is-active{border-color:var(--forest);background:var(--forest);color:#fff}
.shop-filter.is-active small{background:rgba(255,255,255,.18);color:#fff}
.shop-search{position:relative;display:block;min-width:240px}
.shop-search input{width:100%;height:44px;border:1px solid rgba(87,70,74,.18);border-radius:999px;padding:0 18px;background:#fff;color:var(--ink);outline:none}
.shop-search input:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(169,111,124,.12)}
.shop-results-summary{margin-bottom:24px;color:var(--muted);font-size:.82rem}
.shop-results-summary strong{color:var(--forest)}

.shop-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.shop-product-card{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid rgba(87,70,74,.12);border-radius:18px;background:#fffdfb;box-shadow:0 9px 28px rgba(91,61,69,.055);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.shop-product-card:hover{transform:translateY(-4px);border-color:rgba(169,111,124,.34);box-shadow:0 17px 38px rgba(91,61,69,.1)}
.shop-product-card[hidden]{display:none!important}
.shop-product-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:1.28/1;background:#f3e9e7;text-decoration:none}
.shop-product-card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.shop-product-card:hover .shop-product-card__image{transform:scale(1.035)}
.shop-product-card--gift .shop-product-card__image{object-position:center}
.shop-product-card__placeholder{display:grid;width:100%;height:100%;place-items:center;color:var(--forest);font-size:2rem}
.shop-product-card__category,.shop-product-card__featured{position:absolute;z-index:2;top:11px;border-radius:999px;padding:6px 9px;background:rgba(255,253,251,.92);color:var(--forest);font-size:.58rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase;backdrop-filter:blur(8px)}
.shop-product-card__category{left:11px;max-width:calc(100% - 22px)}
.shop-product-card__featured{right:11px;background:var(--forest);color:#fff}
.shop-product-card--gift .shop-product-card__category{display:none}
.shop-product-card__body{display:flex;flex:1;flex-direction:column;padding:17px 16px 16px}
.shop-product-card__body h2{margin-bottom:8px;font-size:1.08rem;line-height:1.18}
.shop-product-card__body h2 a{text-decoration:none}
.shop-product-card__body>p{display:-webkit-box;overflow:hidden;min-height:43px;margin:0 0 15px;color:var(--muted);font-size:.78rem;line-height:1.48;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.shop-product-card__footer{display:flex;flex:1;align-items:end;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid rgba(87,70,74,.1)}
.shop-product-card__price{color:var(--gold-dark);font-family:var(--serif);font-size:.98rem;font-weight:600}
.shop-product-card__price del{color:#aaa;font-size:.78em}.shop-product-card__price ins{text-decoration:none}
.shop-product-card__button{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:9px 12px;background:var(--forest);color:#fff!important;font-size:.64rem;font-weight:800;line-height:1;text-decoration:none;text-transform:uppercase}
.shop-product-card__button:hover{background:var(--forest-2)}
.shop-empty-message{margin:30px auto 0;text-align:center;color:var(--muted)}

body.tax-product_cat .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
body.tax-product_cat .woocommerce ul.products li.product{border-radius:18px}
body.tax-product_cat .woocommerce ul.products li.product a img{aspect-ratio:1.28/1}
body.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{padding:17px 16px 4px;font-size:1.08rem}
body.tax-product_cat .woocommerce ul.products li.product .price{padding:0 16px;font-size:.92rem}
body.tax-product_cat .woocommerce ul.products li.product .button{min-height:40px;margin:9px 16px 17px;padding:10px 14px;font-size:.64rem}

@media(max-width:1100px){
  .shop-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.tax-product_cat .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:860px){
  .shop-catalog-hero__inner{grid-template-columns:1fr;gap:28px}
  .shop-gift-highlight{max-width:520px}
  .shop-catalog-tools{align-items:stretch;flex-direction:column}
  .shop-search{width:100%}
  .shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tax-product_cat .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .shop-catalog-hero{padding:34px 0 38px}
  .shop-gift-highlight{grid-template-columns:105px 1fr;padding:10px}
  .shop-gift-highlight__image{width:105px;height:88px}
  .shop-filter-list{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-filter{justify-content:space-between;width:100%;font-size:.69rem}
  .shop-product-grid{grid-template-columns:1fr;max-width:390px;margin-inline:auto}
  .shop-product-card__media{aspect-ratio:1.4/1}
  body.tax-product_cat .woocommerce ul.products{grid-template-columns:1fr}
}

/* ------------------------------------------------------------
   V1.8.0 — mobile shop access, full responsive pass and launch hardening
   ------------------------------------------------------------ */
html,body{max-width:100%;overflow-x:clip}
iframe,video,embed,object{max-width:100%}
input,select,textarea,button{max-width:100%}
.mobile-nav-actions,.mobile-quick-actions,.mobile-nav-backdrop{display:none}

@media(max-width:1100px){
  .primary-navigation{overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(35px + env(safe-area-inset-bottom))}
  .mobile-nav-actions{display:grid;gap:11px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
  .mobile-nav-actions__shop{display:flex;min-height:52px;align-items:center;justify-content:center;gap:9px;border-radius:999px;background:var(--forest);color:#fff!important;font-size:.82rem;font-weight:800;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}
  .mobile-nav-actions__booking{width:100%;min-height:52px;background:var(--blush)!important;color:var(--ink)!important}
  .mobile-nav-actions__contact{padding:9px;color:var(--forest);font-size:.86rem;font-weight:700;text-align:center;text-decoration:none}
  .mobile-nav-backdrop{position:fixed;inset:0;z-index:43;width:100%;height:100%;border:0;background:rgba(42,31,35,.42);opacity:0;backdrop-filter:blur(2px);transition:opacity .25s ease}
  .mobile-nav-backdrop.is-visible{display:block;opacity:1}
  .site-header{z-index:45}.primary-navigation{z-index:46}.menu-open .menu-toggle{z-index:47}
}

@media(max-width:700px){
  body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
  body.woocommerce-cart,body.woocommerce-checkout,body.woocommerce-account{padding-bottom:0}
  .mobile-quick-actions{position:fixed;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));left:12px;z-index:40;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid rgba(109,74,87,.18);border-radius:999px;background:rgba(255,253,251,.96);box-shadow:0 14px 38px rgba(72,45,54,.2);backdrop-filter:blur(14px)}
  .mobile-quick-actions a{display:flex;min-height:54px;align-items:center;justify-content:center;gap:8px;color:var(--forest);font-size:.73rem;text-decoration:none;text-transform:uppercase}
  .mobile-quick-actions a+ a{background:var(--forest);color:#fff}
  .mobile-quick-actions span{font-size:1rem}.mobile-quick-actions strong{font-weight:800;letter-spacing:.045em}
  body.woocommerce-cart .mobile-quick-actions,body.woocommerce-checkout .mobile-quick-actions,body.woocommerce-account .mobile-quick-actions{display:none}
  .topbar__inner{min-height:32px}.topbar__links{gap:12px}.topbar__links>a:first-child{display:none}
  .site-header__inner{grid-template-columns:minmax(0,1fr) auto auto;min-height:70px;gap:6px}
  .custom-logo-link{max-width:155px}.custom-logo{max-height:50px}.text-logo span{font-size:1.35rem}.text-logo small{font-size:.48rem;letter-spacing:.08em}
  .header-actions{gap:6px}.header-cart{width:39px;height:39px}.menu-toggle{width:42px;height:42px}
  .primary-navigation{width:min(390px,94vw);padding:92px 24px 28px}
  .primary-menu a{padding:13px 0;font-size:1.2rem}
  .section{padding:56px 0}.section-heading{margin-bottom:32px}.section-heading h2{font-size:clamp(1.9rem,9vw,2.65rem)}
  .container{width:min(100% - 24px,1180px)}
  .footer-grid{gap:28px}.site-footer{padding-top:56px}.footer-bottom{padding-bottom:24px}
  .contact-band__actions,.hero-inline-actions{width:100%}.contact-band__actions .button,.hero-inline-actions .button{width:100%}
}

/* Shop: compact but readable on every viewport. */
@media(max-width:860px){
  .shop-catalog-section{padding-top:38px}
  .shop-catalog-tools{position:sticky;top:72px;z-index:12;margin-inline:-12px;padding:12px;background:rgba(255,253,251,.95);box-shadow:0 8px 24px rgba(75,50,58,.06);backdrop-filter:blur(12px)}
  .shop-filter-list{display:flex;width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;scroll-snap-type:x proximity}
  .shop-filter-list::-webkit-scrollbar{display:none}
  .shop-filter{flex:0 0 auto;scroll-snap-align:start}
  .shop-search{min-width:0}
}
@media(max-width:560px){
  .shop-catalog-hero h1{font-size:2.25rem}.shop-catalog-hero__inner>div>p:last-child{font-size:.92rem}
  .shop-gift-highlight{grid-template-columns:92px 1fr;border-radius:17px}.shop-gift-highlight__image{width:92px;height:78px}.shop-gift-highlight strong{font-size:1.05rem}
  .shop-filter-list{display:flex;grid-template-columns:none}.shop-filter{width:auto;min-height:39px;padding:8px 12px}
  .shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:10px}
  .shop-product-card{border-radius:15px}.shop-product-card__media{aspect-ratio:1/1}.shop-product-card__body{padding:12px 11px 11px}
  .shop-product-card__body h2{font-size:.94rem;line-height:1.18}.shop-product-card__body>p{display:none}
  .shop-product-card__category,.shop-product-card__featured{top:7px;padding:5px 7px;font-size:.5rem}.shop-product-card__category{left:7px}.shop-product-card__featured{right:7px}
  .shop-product-card__footer{align-items:stretch;flex-direction:column;gap:8px;padding-top:10px}.shop-product-card__price{font-size:.9rem}
  .shop-product-card__button{width:100%;justify-content:center;padding:10px 8px;font-size:.58rem}
  body.tax-product_cat .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
@media(max-width:390px){
  .shop-product-grid,body.tax-product_cat .woocommerce ul.products{grid-template-columns:1fr;max-width:330px;margin-inline:auto}
  .shop-product-card__media{aspect-ratio:1.35/1}
}

/* WooCommerce cart, checkout and account usability. */
.woocommerce table.shop_table{border-collapse:separate;border-spacing:0;border-color:var(--line);border-radius:16px;background:#fff;overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single{min-height:48px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 12px}
.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{border-color:var(--line);border-radius:16px;background:#fff}
@media(max-width:700px){
  .woocommerce table.shop_table_responsive tr,.woocommerce-page table.shop_table_responsive tr{display:block;padding:10px 0;border-bottom:1px solid var(--line)}
  .woocommerce table.shop_table_responsive tr td,.woocommerce-page table.shop_table_responsive tr td{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 12px;text-align:right!important}
  .woocommerce table.shop_table_responsive tr td::before,.woocommerce-page table.shop_table_responsive tr td::before{float:none;text-align:left}
  .woocommerce-cart-form .actions .coupon{display:grid!important;grid-template-columns:1fr;gap:8px;width:100%}.woocommerce-cart-form .actions .coupon .input-text,.woocommerce-cart-form .actions .button{width:100%!important}
  .woocommerce .col2-set .col-1,.woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2,.woocommerce-page .col2-set .col-2{float:none;width:100%}
  .woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{width:100%}
}

/* Accessibility and touch targets. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(169,111,124,.5);outline-offset:3px}
@media(pointer:coarse){.primary-menu a,.footer-menu a,.shop-filter,.button{min-height:44px}}
