/*
Theme Name: NP Empowered Wellness
Theme URI: https://www.npempoweredwellness.com/
Author: Kova Team
Author URI: https://kova.team/
Description: Custom theme for NP Empowered Wellness. Header, footer and menus live in the theme; every page is built from native blocks in the editor. Practice details are under Appearance > Customize > Practice details.
Version: 2.6.4
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: npew
*/

/* ==========================================================================
   Palette  Sarah's brand colors: Deep Teal #055661 · Muted Teal #395456 · Lime #A7D129 · Soft Cream #F3F6EA · White
            (plus Deep #034049, a darker shade of Deep Teal for footers and hovers) · Ink #14201F
   Type     Instrument Serif (display) · Jost (everything else)
   Photography is the design. Type stays out of its way.
   ========================================================================== */

:root{--ne-deep:#034049;--ne-teal:#055661;--ne-muted:#395456;--ne-lime:#A7D129;--ne-sand:#F3F6EA;--ne-off:#FFFFFF;--ne-ink:#14201F;--ne-body:#395456;--ne-line:#DCE4CF;--ne-serif:'Instrument Serif',Georgia,serif;--ne-sans:'Jost',Helvetica,Arial,sans-serif;--ne-max:1340px;--ne-pad:34px}
.ne-html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:110px}
.ne-lock{overflow:hidden}
.ne-body{margin:0;padding:0;background:var(--ne-off);color:var(--ne-ink);font-family:var(--ne-sans);font-size:17px;font-weight:400;line-height:1.62;-webkit-font-smoothing:antialiased}
.ne-body *,.ne-body *::before,.ne-body *::after{box-sizing:border-box}
.ne-body img{max-width:100%}
.ne-skip{position:absolute;left:-9999px;top:0;background:var(--ne-deep);color:var(--ne-off);padding:12px 18px;font-size:13px;z-index:400}
.ne-skip:focus{left:12px;top:12px}
.ne-main{display:block}

/* ---------- block normalisation (core block styles reset inside our sections) ---------- */
.ne-blocks figure,.ne-main figure{margin:0}
.ne-blocks :where(.wp-block-group,section) > *{margin-block-start:0}
.ne-blocks .wp-block-image img{display:block;height:auto}
.ne-fill{position:relative;overflow:hidden;background:var(--ne-teal)}
.ne-blocks .ne-fill img,.ne-main .ne-fill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 24%}
.ne-blocks .wp-block-buttons{gap:12px}
.ne-blocks .wp-block-button{margin:0}
.ne-blocks .wp-block-button__link{border-radius:0;font-family:var(--ne-sans);display:inline-block;text-decoration:none;box-shadow:none;transition:background .18s,color .18s,border-color .18s}
.ne-blocks ul.wp-block-list{margin:0;padding:0}

/* ---------- buttons (button block style classes) ---------- */
.ne-btnrow{margin:34px 0 0;display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center}
.ne-b-teal .wp-block-button__link,.ne-btn-teal{background:var(--ne-teal);color:var(--ne-off);font-size:12.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;padding:18px 30px;text-decoration:none;display:inline-block;border:0}
.ne-b-teal .wp-block-button__link:hover,.ne-btn-teal:hover{background:var(--ne-deep);color:var(--ne-off)}
.ne-b-ink .wp-block-button__link,.ne-b-plan .wp-block-button__link{background:var(--ne-teal);color:var(--ne-off);font-size:12.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:15px 24px}
.ne-b-ink .wp-block-button__link:hover,.ne-b-plan .wp-block-button__link:hover{background:var(--ne-deep)}
.ne-b-aqua .wp-block-button__link,.ne-btn-aqua{background:var(--ne-lime);color:var(--ne-deep);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:18px 30px;text-decoration:none;display:inline-block}
.ne-b-aqua .wp-block-button__link:hover,.ne-btn-aqua:hover{background:#fff;color:var(--ne-deep)}
.ne-b-glass .wp-block-button__link,.ne-btn-glass{background:rgba(251,250,247,.08);color:#fff;border:1px solid rgba(251,250,247,.45);font-size:13px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:17px 26px;text-decoration:none;display:inline-block}
.ne-b-glass .wp-block-button__link:hover,.ne-btn-glass:hover{background:#fff;color:var(--ne-deep);border-color:#fff}
.ne-b-line .wp-block-button__link{background:transparent;color:var(--ne-ink);padding:6px 0 5px;font-size:15.5px;font-weight:400;border-bottom:1px solid var(--ne-lime)}
.ne-b-line .wp-block-button__link:hover{color:var(--ne-teal);border-bottom-color:var(--ne-teal)}
.ne-b-under .wp-block-button__link{background:transparent;color:var(--ne-ink);padding:0 0 4px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid var(--ne-lime);white-space:nowrap}
.ne-b-under .wp-block-button__link:hover{color:var(--ne-teal);border-bottom-color:var(--ne-teal)}
.ne-sec-dark .ne-b-line .wp-block-button__link,.ne-sec-teal .ne-b-line .wp-block-button__link{color:#fff}

/* ---------- utility bar + header ---------- */
.ne-util{background:var(--ne-deep);padding:8px 0}
.ne-util-in{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad);display:flex;flex-wrap:wrap;gap:4px 24px;align-items:center;justify-content:center}
.ne-util-t{margin:0;font-size:12.5px;letter-spacing:.06em;color:#8CB0AD}
.ne-util-a{color:var(--ne-lime);text-decoration:underline;text-underline-offset:3px}
.ne-util-a:hover{color:var(--ne-off)}

.ne-head{position:sticky;top:0;z-index:200;background:var(--ne-off);border-bottom:1px solid var(--ne-line)}
.ne-head-in{max-width:var(--ne-max);margin:0 auto;padding:14px var(--ne-pad);display:flex;align-items:center;gap:28px}
.ne-head-logo{display:block;flex:0 0 auto}
.ne-head-logoimg{display:block;height:25px;width:auto}
.ne-nav{margin:0 0 0 auto;display:flex;align-items:center}
.ne-nav-l{margin:0;padding:0;list-style:none;display:flex;align-items:center;gap:26px}
.ne-nav-i{position:relative;margin:0;padding:0;list-style:none;display:flex;align-items:center}
.ne-nav-a{font-size:14px;font-weight:500;letter-spacing:.05em;color:#1F3634;text-decoration:none;padding:10px 0;border-bottom:1px solid transparent}
.ne-nav-a:hover,.ne-nav-i.is-current > .ne-nav-a{color:var(--ne-teal);border-bottom-color:var(--ne-lime)}
.ne-dd-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:30px;margin-left:2px;padding:0;background:none;border:0;cursor:pointer;color:#1F3634}
.ne-dd-btn span{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.ne-nav-i.is-open > .ne-dd-btn span{transform:translateY(2px) rotate(225deg)}
.ne-dd{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:280px;background:#fff;border:1px solid var(--ne-line);box-shadow:0 22px 50px rgba(3,64,73,.14);padding:26px 30px 24px;opacity:0;visibility:hidden;transition:opacity .16s,transform .16s,visibility 0s .16s;z-index:220}
.ne-nav-i:hover > .ne-dd,.ne-nav-i:focus-within > .ne-dd,.ne-nav-i.is-open > .ne-dd{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .16s,transform .16s}
.ne-dd-in{margin:0;padding:0;list-style:none;display:flex;gap:40px}
.ne-dd-i{margin:0;padding:0;list-style:none;min-width:170px}
.ne-dd-h{display:block;margin:0 0 12px;font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ne-teal);text-decoration:none;white-space:nowrap}
.ne-dd-h:hover{color:var(--ne-ink)}
.ne-dd-sub{margin:0;padding:0;list-style:none}
.ne-dd-si{margin:0;padding:0;list-style:none}
.ne-dd-a{display:block;padding:5px 0;font-size:15px;font-weight:400;color:var(--ne-ink);text-decoration:none;white-space:nowrap}
.ne-dd-a:hover,.ne-dd-a[aria-current]{color:var(--ne-teal)}
.ne-dd-a:hover{text-decoration:underline;text-decoration-color:var(--ne-lime);text-underline-offset:4px}
.ne-ext{font-size:12px;color:#5A6866}
.ne-nav-mob{display:none}
.ne-head-tel{flex:0 0 auto;text-decoration:none;display:block;text-align:right}
.ne-head-telcap{display:block;font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#5A6866}
.ne-head-telnum{display:block;margin:1px 0 0;font-family:var(--ne-serif);font-size:25px;color:var(--ne-deep);line-height:1.1}
.ne-head-tel:hover .ne-head-telnum{color:var(--ne-teal)}
.ne-head-cta{flex:0 0 auto;background:var(--ne-teal);color:var(--ne-off);text-decoration:none;font-size:13px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:15px 24px}
.ne-head-cta:hover{background:var(--ne-deep)}
.ne-burger{display:none;align-items:center;gap:10px;background:none;border:1px solid var(--ne-line);padding:10px 14px;cursor:pointer;font-family:var(--ne-sans);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ne-ink)}
.ne-burger-l{position:relative;width:18px;height:2px;background:currentColor;display:block;transition:background .15s}
.ne-burger-l::before,.ne-burger-l::after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;transition:transform .2s}
.ne-burger-l::before{top:-6px}.ne-burger-l::after{top:6px}
.is-menu .ne-burger-l{background:transparent}
.is-menu .ne-burger-l::before{transform:translateY(6px) rotate(45deg)}
.is-menu .ne-burger-l::after{transform:translateY(-6px) rotate(-45deg)}

/* ---------- shared type ---------- */
.ne-wrap{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad)}
.ne-narrow{max-width:780px}
.ne-eyebrow{margin:0 0 14px;font-size:11.5px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ne-teal)}
.ne-eyebrow-l{margin:0 0 14px;font-size:11.5px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ne-lime)}
.ne-eyebrow-rule{display:flex;align-items:center;gap:13px;margin-bottom:28px}
.ne-eyebrow-rule::before{content:"";width:34px;height:1px;background:var(--ne-teal);flex:0 0 auto}
.ne-h2{margin:0;font-family:var(--ne-serif);font-size:clamp(32px,4.2vw,56px);font-weight:400;line-height:1.08;letter-spacing:-.012em;color:var(--ne-ink);max-width:24ch}
.ne-h2-l{margin:0;font-family:var(--ne-serif);font-size:clamp(32px,4.2vw,56px);font-weight:400;line-height:1.08;letter-spacing:-.012em;color:#fff;max-width:24ch}
.ne-h3{margin:34px 0 0;font-family:var(--ne-serif);font-size:30px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-p{margin:20px 0 0;max-width:62ch;font-size:17.5px;font-weight:300;line-height:1.7;color:var(--ne-body)}
.ne-p-l{margin:20px 0 0;max-width:60ch;font-size:17.5px;font-weight:300;line-height:1.68;color:#B9D0CD}
.ne-p a,.ne-fine a,.ne-p-l a{color:var(--ne-teal);text-decoration:underline;text-decoration-color:rgba(167,209,41,.6);text-underline-offset:4px}
.ne-p-l a{color:#fff}
.ne-fine{margin:22px 0 0;max-width:80ch;font-size:15px;font-weight:300;line-height:1.6;color:#5C6A68}
.ne-crumb{margin:0 0 26px;font-size:12.5px;letter-spacing:.06em;color:#5A6866}
.ne-crumb a{color:#5A6866;text-decoration:none}
.ne-crumb a:hover{color:var(--ne-teal)}
.ne-crumb span{margin:0 6px;color:#B5BDBB}

/* ---------- sections ---------- */
.ne-sec{position:relative;padding:92px 0 96px;background:var(--ne-off)}
.ne-sec-tight{padding:56px 0 60px}
.ne-sec-sand{background:var(--ne-sand)}
.ne-sec-dark{background:var(--ne-deep)}
.ne-sec-teal{background:var(--ne-teal)}
.ne-sec-teal .ne-eyebrow-l{color:#C9E37A}
.ne-sec-teal .ne-p-l{color:#D3E8E5}

/* ==========================================================================
   HOMEPAGE (approved v3 design)
   ========================================================================== */
.ne-hero{padding:0;overflow:hidden}
.ne-hero-grid{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad);display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center}
.ne-hero-copy{padding:80px 0 76px}
.ne-hero-h1{margin:0;font-family:var(--ne-serif);font-size:clamp(42px,5.5vw,76px);font-weight:400;line-height:1.03;letter-spacing:-.015em;color:var(--ne-ink);max-width:14ch}
.ne-hero-h1 em{font-style:italic;color:var(--ne-teal)}
.ne-hero-p{margin:26px 0 0;max-width:46ch;font-size:18.5px;font-weight:300;line-height:1.62;color:var(--ne-body)}
.ne-hero-copy .ne-btnrow{gap:16px 28px;margin-top:36px}
.ne-hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:540px;margin-top:46px;padding-top:24px;border-top:1px solid var(--ne-line)}
.ne-hero-metak{margin:0;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#5A6866}
.ne-hero-metav{margin:9px 0 0;font-family:var(--ne-serif);font-size:20px;line-height:1.25;color:var(--ne-ink)}
.ne-hero-media{position:relative;min-height:580px;background:var(--ne-teal)}
.ne-hero-img{position:absolute;inset:0}
.ne-blocks .ne-hero-img img{object-position:52% 26%}
.ne-hero-card{position:absolute;left:0;bottom:0;max-width:340px;background:var(--ne-deep);padding:26px 28px 28px;z-index:2}
.ne-hero-cardk{margin:0;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ne-lime)}
.ne-hero-cardt{margin:14px 0 0;font-family:var(--ne-serif);font-size:22px;line-height:1.32;color:#fff}

.ne-trust{background:var(--ne-teal);border-top:1px solid #2C7581}
.ne-trust-grid{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad);display:grid;grid-template-columns:repeat(4,1fr)}
.ne-trust-c{padding:26px;border-right:1px solid #2C7581}
.ne-trust-c:first-child{padding-left:0}
.ne-trust-c:last-child{padding-right:0;border-right:0}
.ne-trust-k{margin:0;font-size:10px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:#C9E37A}
.ne-trust-t{margin:9px 0 0;font-size:14.5px;font-weight:300;line-height:1.5;color:#F3F6EA}
.ne-trust-t a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}
.ne-trust-t a:hover{color:var(--ne-lime);border-bottom-color:var(--ne-lime)}

.ne-concerns-head{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:end;margin:0 0 40px}
.ne-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ne-tile{position:relative;min-height:430px;overflow:hidden;background:var(--ne-teal);display:flex;flex-direction:column;justify-content:flex-end}
.ne-tile-media{position:absolute;inset:0}
.ne-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,64,73,.04) 28%,rgba(3,64,73,.55) 60%,rgba(3,64,73,.93) 100%);transition:background .2s;pointer-events:none}
.ne-tile:hover::after{background:linear-gradient(180deg,rgba(3,64,73,.25) 18%,rgba(3,64,73,.7) 56%,rgba(3,64,73,.96) 100%)}
.ne-tile-in{padding:26px 24px 24px;z-index:2}
.ne-tile-q{margin:0;font-family:var(--ne-serif);font-size:26px;line-height:1.26;color:#fff;padding-bottom:16px;border-bottom:1px solid rgba(251,250,247,.32)}
.ne-tile-q a{color:#fff;text-decoration:none}
.ne-tile-q a::after{content:"";position:absolute;inset:0;z-index:3}
.ne-tile-q a:focus-visible{outline:none}
.ne-tile:focus-within{outline:2px solid var(--ne-lime);outline-offset:3px}
.ne-tile-plan{margin:13px 0 0;font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--ne-lime)}
.ne-tile-go{margin:6px 0 0;font-size:14.5px;font-weight:300;color:#CFE1DF}
.ne-concerns-foot{margin:22px 0 0;display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center}
.ne-concerns-foot .ne-btnrow{margin:0}
.ne-concerns-foott{margin:0;font-size:16.5px;font-weight:300;color:var(--ne-body)}

.ne-sarah{background:var(--ne-sand);padding:0}
.ne-sarah-grid{max-width:var(--ne-max);margin:0 auto;display:grid;grid-template-columns:.86fr 1.14fr;align-items:stretch}
.ne-sarah-media{min-height:620px}
.ne-blocks .ne-sarah-media img{object-position:52% 14%}
.ne-sarah-body{padding:88px var(--ne-pad) 88px 62px;display:flex;flex-direction:column;justify-content:center}
.ne-sarah-name{margin:22px 0 0;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ne-teal)}
.ne-sarah-p{margin:20px 0 0;max-width:56ch;font-size:17.5px;font-weight:300;line-height:1.7;color:#2E3B39}
.ne-sarah-quote{margin:22px 0 0;font-family:var(--ne-serif);font-size:26px;line-height:1.3;color:var(--ne-ink);max-width:30ch}
.ne-sarah-body .ne-btnrow{margin-top:28px}

.ne-cake{background:var(--ne-deep)}
.ne-cake-head{margin:0 0 44px;max-width:74ch}
.ne-cake-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
.ne-cake-media{min-height:520px}
.ne-steps{margin:0}
.ne-step{padding:20px 0;border-bottom:1px solid #0B5560;display:grid;grid-template-columns:44px 1fr;gap:20px;align-items:baseline}
.ne-step-n{margin:0;font-family:var(--ne-serif);font-size:24px;color:var(--ne-lime);line-height:1}
.ne-step-name{margin:0;font-family:var(--ne-serif);font-size:26px;font-weight:400;letter-spacing:-.01em;line-height:1.2;color:#fff}
.ne-step-p{margin:7px 0 0;font-size:16px;font-weight:300;line-height:1.6;color:#A9C6C3}

.ne-plans-head{margin:0 0 42px}
.ne-plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ne-plan{background:#fff;border:1px solid var(--ne-line);display:flex;flex-direction:column;scroll-margin-top:110px}
.ne-plan-media{height:230px}
.ne-plan-body{padding:28px 26px 26px;display:flex;flex-direction:column;flex:1 1 auto}
.ne-plan-tag{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-plan-name{margin:9px 0 0;font-family:var(--ne-serif);font-size:33px;font-weight:400;letter-spacing:-.015em;line-height:1.08;color:var(--ne-ink)}
.ne-plan-for{margin:13px 0 0;padding-bottom:20px;border-bottom:1px solid var(--ne-line);font-size:16px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-blocks ul.ne-plan-list{margin:16px 0 0;list-style:none}
.ne-plan-list li{margin:0 0 8px;font-size:15.5px;font-weight:300;line-height:1.5;color:var(--ne-body)}
.ne-plan-when{margin:16px 0 20px;font-size:13px;font-weight:500;letter-spacing:.03em;color:var(--ne-teal);flex:1 1 auto}
.ne-plan-btns{margin:0}
.ne-plan-btns .wp-block-button{width:100%}
.ne-plan-btns .wp-block-button__link{display:block;text-align:center}
.ne-plans-note{margin:26px 0 0;max-width:88ch;font-size:16.5px;font-weight:300;line-height:1.68;color:var(--ne-body)}
.ne-plans-note strong{font-weight:500;color:var(--ne-ink)}
.ne-plans-note a{color:var(--ne-teal)}

.ne-offer{min-height:400px;background:var(--ne-deep);display:flex;align-items:center;overflow:hidden;padding:0}
.ne-offer-img{position:absolute;inset:0}
.ne-blocks .ne-offer-img img{object-position:50% 40%}
.ne-offer::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,64,73,.92) 0%,rgba(3,64,73,.7) 52%,rgba(3,64,73,.25) 100%);pointer-events:none}
.ne-offer-in{position:relative;z-index:2;width:100%;max-width:var(--ne-max);margin:0 auto;padding:64px var(--ne-pad)}
.ne-offer-h{margin:0;font-family:var(--ne-serif);font-size:clamp(30px,3.8vw,48px);font-weight:400;line-height:1.08;color:#fff;max-width:22ch}
.ne-offer-p{margin:18px 0 0;max-width:52ch;font-size:17.5px;font-weight:300;line-height:1.6;color:#CFE1DF}
.ne-offer-in .ne-btnrow{margin-top:28px}

.ne-treat-head,.ne-rev-head{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;margin:0 0 38px}
.ne-treat-head .ne-btnrow,.ne-rev-head .ne-btnrow{margin:0}
.ne-treat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ne-tcard,.ne-card{position:relative;min-height:300px;overflow:hidden;background:var(--ne-teal)}
.ne-tcard-media,.ne-card-media{position:absolute;inset:0}
.ne-tcard::after,.ne-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,64,73,.02) 36%,rgba(3,64,73,.6) 70%,rgba(3,64,73,.92) 100%);pointer-events:none;transition:background .2s}
.ne-tcard:hover::after,.ne-card:hover::after{background:linear-gradient(180deg,rgba(3,64,73,.3) 22%,rgba(3,64,73,.74) 62%,rgba(3,64,73,.96) 100%)}
.ne-tcard-in,.ne-card-in{position:absolute;left:0;right:0;bottom:0;padding:22px 22px 20px;z-index:2}
.ne-tcard-n,.ne-card-h{margin:0;font-family:var(--ne-serif);font-size:26px;font-weight:400;line-height:1.14;color:#fff}
.ne-tcard-n a,.ne-card-h a{color:#fff;text-decoration:none}
.ne-tcard-n a::after,.ne-card-h a::after{content:"";position:absolute;inset:0;z-index:3}
.ne-tcard:focus-within,.ne-card:focus-within{outline:2px solid var(--ne-lime);outline-offset:3px}
.ne-tcard-n a:focus-visible,.ne-card-h a:focus-visible{outline:none}
.ne-tcard-w,.ne-card-p{margin:7px 0 0;font-size:14.5px;font-weight:300;line-height:1.45;color:#CFE1DF}

.ne-rev{background:var(--ne-sand)}
.ne-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ne-rev-card{background:var(--ne-off);padding:30px 28px 28px}
.ne-rev-stars{margin:0 0 16px;font-size:15px;letter-spacing:.22em;color:var(--ne-teal)}
.ne-rev-t{margin:0;font-size:16.5px;font-weight:300;line-height:1.66;color:#2E3B39}
.ne-rev-n{margin:20px 0 0;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ne-teal)}

.ne-guide{background:var(--ne-deep);padding:0}
.ne-guide-grid{max-width:var(--ne-max);margin:0 auto;display:grid;grid-template-columns:.82fr 1.18fr;align-items:stretch}
.ne-guide-media{min-height:460px}
.ne-blocks .ne-guide-media img{object-position:50% 20%}
.ne-guide-body{padding:80px var(--ne-pad) 80px 62px;display:flex;flex-direction:column;justify-content:center}
.ne-guide-h{margin:0;font-family:var(--ne-serif);font-size:clamp(30px,3.6vw,46px);font-weight:400;line-height:1.06;color:#fff;max-width:20ch}
.ne-guide-p{margin:18px 0 0;max-width:56ch;font-size:17px;font-weight:300;line-height:1.64;color:#B9D0CD}
.ne-guide-link{margin:18px 0 0;font-size:15px}
.ne-guide-link a{color:var(--ne-lime)}

/* lead form */
.ne-lead{margin:28px 0 0;max-width:680px}
.ne-lead-row{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;align-items:end}
.ne-lead-row .ne-cap-btn{grid-column:1/-1}
.ne-lead-f{display:block}
.ne-lead-f span{display:block;margin:0 0 6px;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#A8C7C3}
.ne-input{background:rgba(251,250,247,.07);border:1px solid #2C7581;color:#fff;font-family:var(--ne-sans);font-size:15px;font-weight:300;padding:15px 14px;width:100%;border-radius:0}
.ne-input:focus{outline:2px solid var(--ne-lime);outline-offset:1px;border-color:var(--ne-lime)}
.ne-lead:not(.ne-lead-dark) .ne-input{background:#fff;border-color:#C9D3BB;color:var(--ne-ink)}
.ne-lead:not(.ne-lead-dark) .ne-lead-f span{color:#395456}
.ne-cap-btn{background:var(--ne-lime);color:var(--ne-deep);border:0;font-family:var(--ne-sans);font-size:12.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;padding:17px 22px;cursor:pointer;white-space:nowrap;border-radius:0}
.ne-cap-btn:hover{background:#fff}
.ne-cap-btn[disabled]{opacity:.6;cursor:wait}
.ne-cap-fine{margin:14px 0 0;font-size:13.5px;font-weight:300;color:#A8C7C3}
.ne-lead-msg{margin:12px 0 0;font-size:15px;color:#fff;min-height:1px}
.ne-lead-msg.is-err{color:#FFB8A8}
.ne-lead-msg a{color:var(--ne-lime)}
.ne-lead:not(.ne-lead-dark) .ne-lead-msg{color:var(--ne-teal)}
.ne-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.ne-visit-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:start}
.ne-visit-main .ne-btnrow{margin-top:30px}
.ne-visit-roomimg{margin:34px 0 0!important}
.ne-blocks .ne-visit-roomimg img{width:100%;height:300px;object-fit:cover;object-position:50% 40%}
.ne-area{margin:28px 0 0;max-width:80ch;font-size:16px;font-weight:300;line-height:1.72;color:var(--ne-body)}
.ne-info{background:var(--ne-sand);padding:32px 30px 10px}
.ne-sec-sand .ne-info{background:var(--ne-off)}
.ne-info-block{margin:0 0 24px}
.ne-info-k{margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-info-v{margin:0;font-size:16.5px;font-weight:300;line-height:1.62;color:#2E3B39}
.ne-info-v a{color:var(--ne-teal);text-decoration:none;border-bottom:1px solid rgba(5,86,97,.35)}
.ne-info-v a:hover{color:var(--ne-ink);border-bottom-color:var(--ne-ink)}
.ne-blocks ul.ne-hrs{list-style:none}
.ne-hrs li{margin:0;padding:8px 0;display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #D3DCC6;font-size:15px;font-weight:300;color:#2E3B39}
.ne-hrs li span:first-child{color:#395456;font-weight:400}
.ne-map{margin:30px 0 0}
.ne-map-frame{display:block;width:100%;height:320px;border:0;filter:grayscale(.35)}

/* ==========================================================================
   INTERIOR PAGES
   ========================================================================== */
/* page hero */
.ne-phero{padding:0;overflow:hidden}
.ne-phero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:stretch}
.ne-phero-copy{padding:56px 0 64px;display:flex;flex-direction:column;justify-content:center}
.ne-phero-h1{margin:0;font-family:var(--ne-serif);font-size:clamp(38px,4.6vw,64px);font-weight:400;line-height:1.05;letter-spacing:-.015em;color:var(--ne-ink);max-width:16ch}
.ne-phero-p{margin:24px 0 0;max-width:50ch;font-size:18.5px;font-weight:300;line-height:1.62;color:var(--ne-body)}
.ne-phero-copy .ne-btnrow{gap:14px 28px}
.ne-phero-media{min-height:560px;margin:0 calc(-1 * var(--ne-pad)) 0 0}
.ne-facts{margin:40px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;border-top:1px solid var(--ne-line)}
.ne-fact{padding:16px 0;border-bottom:1px solid var(--ne-line)}
.ne-fact-k{margin:0;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#5A6866}
.ne-fact-v{margin:6px 0 0;font-family:var(--ne-serif);font-size:19px;line-height:1.28;color:var(--ne-ink)}
.ne-quote{margin:38px 0 0;padding:22px 0 0 26px;border-left:2px solid var(--ne-lime)}
.ne-quote-c{max-width:640px;margin:44px auto 0}
.ne-quote-t{margin:0;font-family:var(--ne-serif);font-size:26px;line-height:1.3;color:var(--ne-ink)}
.ne-quote-a{margin:10px 0 0;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ne-teal)}

/* split intro */
.ne-split{display:grid;grid-template-columns:1.35fr .85fr;gap:64px;align-items:start}
.ne-split-even{grid-template-columns:1fr 1fr;align-items:end}
.ne-split-main .ne-h2{max-width:20ch}
.ne-split-side .ne-p:first-child{margin-top:0}
.ne-aside{background:var(--ne-sand);padding:32px 30px;position:sticky;top:120px}
.ne-aside-k{margin:0 0 16px;font-family:var(--ne-serif);font-size:26px;line-height:1.15;color:var(--ne-ink)}
.ne-blocks ul.ne-ticks{list-style:none}
.ne-ticks li{position:relative;margin:0;padding:10px 0 10px 30px;border-bottom:1px solid rgba(20,32,31,.1);font-size:16px;font-weight:300;line-height:1.5;color:#2E3B39}
.ne-ticks li:last-child{border-bottom:0}
.ne-ticks li::before{content:"";position:absolute;left:2px;top:16px;width:12px;height:7px;border-left:1.5px solid var(--ne-teal);border-bottom:1.5px solid var(--ne-teal);transform:rotate(-45deg)}
.ne-ticks-s li{padding:7px 0 7px 26px;font-size:15px;border-bottom:0}
.ne-ticks-s li::before{top:13px}
.ne-blocks ul.ne-dash{list-style:none}
.ne-dash li{position:relative;margin:0;padding:6px 0 6px 22px;font-size:15.5px;font-weight:300;line-height:1.55;color:#2E3B39}
.ne-dash li::before{content:"";position:absolute;left:0;top:17px;width:10px;height:1px;background:var(--ne-teal)}
.ne-sec-dark .ne-dash li,.ne-sec-teal .ne-dash li{color:#CFE1DF}

/* options */
.ne-opts{margin:40px 0 0;display:grid;gap:18px}
.ne-opts-1{grid-template-columns:minmax(0,760px)}
.ne-opts-2{grid-template-columns:1fr 1fr}
.ne-opts-3{grid-template-columns:repeat(3,1fr)}
.ne-opt{background:var(--ne-off);padding:30px 28px;border-top:3px solid var(--ne-teal);display:flex;flex-direction:column}
.ne-sec-sand .ne-opt{background:#fff}
.ne-opt-h{margin:0;font-family:var(--ne-serif);font-size:30px;font-weight:400;line-height:1.1;color:var(--ne-ink)}
.ne-opt-price{margin:10px 0 0;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ne-teal)}
.ne-opt-p{margin:14px 0 0;font-size:16px;font-weight:300;line-height:1.62;color:var(--ne-body)}
.ne-opt-quote{margin:12px 0 0;font-family:var(--ne-serif);font-size:20px;line-height:1.3;color:var(--ne-teal)}
.ne-opt .ne-ticks{margin-top:14px!important}
.ne-pricelist{margin:36px 0 0;background:#fff;padding:8px 32px;max-width:900px}
.ne-price-row{display:grid;grid-template-columns:1fr auto;gap:4px 24px;padding:18px 0;border-bottom:1px solid var(--ne-line)}
.ne-price-row:last-child{border-bottom:0}
.ne-price-n{margin:0;font-size:17px;font-weight:400;color:var(--ne-ink)}
.ne-price-v{margin:0;font-family:var(--ne-serif);font-size:21px;color:var(--ne-teal);text-align:right;white-space:nowrap}
.ne-price-s{grid-column:1 / -1;margin:0;font-size:14.5px;font-weight:300;color:#5C6A68}

/* cake placement */
.ne-place{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:stretch}
.ne-place-media{min-height:520px}
.ne-place-body{display:flex;flex-direction:column;justify-content:center}
.ne-blocks ul.ne-ladder{margin:30px 0 0;list-style:none;border-top:1px solid #0B5560}
.ne-ladder li{margin:0;padding:12px 0;border-bottom:1px solid #0B5560;font-family:var(--ne-serif);font-size:22px;color:#5F807D;white-space:pre}
.ne-ladder li.is-on{color:#fff;padding-left:16px;border-left:2px solid var(--ne-lime)}
.ne-place-body .ne-btnrow{margin-top:30px}

/* steps */
.ne-steps2{margin:44px 0 0;display:grid;gap:0;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ne-line)}
.ne-steps2-3{grid-template-columns:repeat(3,1fr)}
.ne-steps2-5{grid-template-columns:repeat(5,1fr)}
.ne-steps2-2{grid-template-columns:repeat(2,1fr)}
.ne-step2{padding:28px 28px 8px 0;margin-right:28px;border-right:1px solid var(--ne-line)}
.ne-step2:last-child{border-right:0;margin-right:0}
.ne-step2-n{margin:0;font-family:var(--ne-serif);font-size:30px;line-height:1;color:var(--ne-teal)}
.ne-step2-h{margin:16px 0 0;font-family:var(--ne-serif);font-size:25px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-step2-p{margin:10px 0 0;font-size:15.5px;font-weight:300;line-height:1.62;color:var(--ne-body)}

/* combo */
.ne-combo{margin:40px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.ne-combo-c{background:rgba(3,64,73,.42);padding:28px 26px;border-top:2px solid var(--ne-lime)}
.ne-combo-n{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-lime)}
.ne-combo-h{margin:12px 0 0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.12;color:#fff}
.ne-combo-p{margin:10px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:#CFE1DF}
.ne-combo-why{margin-top:28px}
.ne-sec-teal .ne-btnrow{margin-top:30px}

/* membership */
.ne-mem{background:var(--ne-off);display:grid;grid-template-columns:.9fr 1.1fr;gap:0}
.ne-mem-head{padding:46px 44px;background:var(--ne-deep)}
.ne-mem-head .ne-eyebrow{color:var(--ne-lime)}
.ne-mem-h{color:#fff;font-size:clamp(30px,3.2vw,42px)}
.ne-mem-price{margin:18px 0 0;font-family:var(--ne-serif);font-size:44px;line-height:1;color:var(--ne-lime)}
.ne-mem-head .ne-p{color:#B9D0CD}
.ne-mem-head .ne-b-line .wp-block-button__link{color:#fff}
.ne-mem-cols{padding:40px 40px 28px;display:grid;grid-template-columns:1fr 1fr;gap:10px 34px}
.ne-mem-col:last-child:nth-child(3){grid-column:1 / -1}
.ne-mem-k{margin:0 0 6px;font-size:11px!important;font-family:var(--ne-sans)!important;font-weight:600!important;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-mem-col{margin-bottom:18px}

/* aftercare */
.ne-care{margin:36px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ne-care-c{background:var(--ne-sand);padding:30px 30px 24px}
.ne-care-h{margin:0 0 12px;font-family:var(--ne-serif);font-size:26px;font-weight:400;color:var(--ne-ink)}
.ne-flag{margin:20px 0 0;background:#F7E9E4;border-left:3px solid #B4533F;padding:20px 24px}
.ne-flag-k{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#9A3F2D}
.ne-flag-p{margin:6px 0 0;font-size:16px;font-weight:400;line-height:1.55;color:#3E2A24}

/* faq */
.ne-faqwrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.ne-faq-head{position:sticky;top:120px}
.ne-faq-head .ne-btnrow{margin-top:26px}
.ne-faq{border-top:1px solid rgba(20,32,31,.18)}
.ne-q{border-bottom:1px solid rgba(20,32,31,.18);margin:0!important}
.ne-q summary{list-style:none;cursor:pointer;position:relative;padding:22px 48px 22px 0;font-family:var(--ne-serif);font-size:23px;line-height:1.28;color:var(--ne-ink)}
.ne-q summary::-webkit-details-marker{display:none}
.ne-q summary::before,.ne-q summary::after{content:"";position:absolute;right:6px;top:50%;width:16px;height:1.5px;background:var(--ne-teal);transition:transform .2s}
.ne-q summary::after{transform:rotate(90deg)}
.ne-q[open] summary::after{transform:rotate(0)}
.ne-q summary:hover{color:var(--ne-teal)}
.ne-q summary:focus-visible{outline:2px solid var(--ne-lime);outline-offset:2px}
.ne-q > p,.ne-q > ul,.ne-q > div,.ne-q > h4{margin:0 0 16px!important;max-width:66ch}
.ne-q > p{font-size:16.5px;font-weight:300;line-height:1.7;color:var(--ne-body)}
.ne-q > p:last-child,.ne-q > div:last-child{margin-bottom:24px!important}
.ne-care-q > h4{margin-top:10px!important}

/* related cards / index cards */
.ne-cards{margin:38px 0 0;display:grid;gap:14px}
.ne-cards-1,.ne-cards-2{grid-template-columns:repeat(2,1fr)}
.ne-cards-3{grid-template-columns:repeat(3,1fr)}
.ne-cards-4{grid-template-columns:repeat(4,1fr)}
.ne-card{min-height:340px}
.ne-idx-head{max-width:760px}
.ne-jump{margin:0;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#5A6866}
.ne-jump a{color:var(--ne-teal);text-decoration:none;border-bottom:2px solid var(--ne-lime);padding-bottom:3px}
.ne-jump-sec{padding:26px 0;border-bottom:1px solid var(--ne-line);background:#fff}
.ne-start{margin:36px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.ne-start-c{background:rgba(3,64,73,.4);padding:26px 24px;border-top:2px solid var(--ne-lime)}
.ne-start-h{margin:0;font-family:var(--ne-serif);font-size:25px;font-weight:400;color:#fff}
.ne-start-h a{color:#fff;text-decoration:none}
.ne-start-h a:hover{color:var(--ne-lime)}
.ne-start-p{margin:10px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:#CFE1DF}

/* cta band */
.ne-cta .ne-h2-l{max-width:22ch}
.ne-cta .ne-btnrow{margin-top:30px}
.ne-cta-area{margin:40px 0 0;padding-top:22px;border-top:1px solid var(--ne-line);max-width:90ch;font-size:14px;font-weight:300;line-height:1.6;color:#5A6866}

/* about */
.ne-tl-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.ne-tl-side{position:sticky;top:120px}
.ne-tl-media{margin:32px 0 0!important}
.ne-blocks .ne-tl-media img{width:100%;height:440px;object-fit:cover;object-position:50% 20%}
.ne-tl-i{display:grid;grid-template-columns:150px 1fr;gap:28px;padding:30px 0;border-bottom:1px solid #0B5560}
.ne-tl-i:first-child{padding-top:0}
.ne-tl-y{margin:0;font-family:var(--ne-serif);font-size:30px;line-height:1.05;color:var(--ne-lime)}
.ne-tl-h{margin:0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.15;color:#fff}
.ne-tl-p{margin:10px 0 0;font-size:16.5px;font-weight:300;line-height:1.7;color:#B9D0CD}
.ne-md{max-width:820px;border-left:2px solid var(--ne-lime);padding-left:36px}
.ne-md .ne-btnrow{margin-top:24px}
.ne-quiz{margin:38px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ne-quiz-c{background:var(--ne-sand);padding:28px 26px}
.ne-quiz-n{margin:0;font-family:var(--ne-serif);font-size:26px;color:var(--ne-teal)}
.ne-quiz-q{margin:8px 0 12px;font-family:var(--ne-serif);font-size:24px;font-weight:400;line-height:1.2;color:var(--ne-ink)}
.ne-blocks ul.ne-quiz-o{list-style:none}
.ne-quiz-o li{padding:5px 0;font-size:15px;font-weight:300;color:var(--ne-body)}
.ne-quiz-a{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(20,32,31,.15);font-size:15px;font-weight:500;color:var(--ne-teal)}
.ne-note{display:grid;grid-template-columns:.8fr 1.2fr;gap:0;background:var(--ne-off)}
.ne-note-media{min-height:480px}
.ne-note-body{padding:56px 52px}
.ne-note-p{margin:18px 0 0;font-family:var(--ne-serif);font-size:23px;line-height:1.42;color:#2E3B39;max-width:40ch}

/* guide */
.ne-phases{margin:38px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ne-phase{background:#fff;padding:28px 26px 22px;border-top:3px solid var(--ne-lime)}
.ne-phase-w{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-phase-h{margin:8px 0 0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.12;color:var(--ne-ink)}
.ne-phase-g{margin:10px 0 8px;font-size:15px;font-weight:500;color:var(--ne-body)}
.ne-phase-f{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--ne-line);font-family:var(--ne-serif);font-size:19px;line-height:1.3;color:var(--ne-teal)}

/* legal / plain pages + blog prose */
.ne-doc-head{padding:72px 0 10px}
.ne-doc-h1,.ne-bloghead-h1{margin:0;font-family:var(--ne-serif);font-size:clamp(38px,4.6vw,62px);font-weight:400;line-height:1.06;letter-spacing:-.012em;color:var(--ne-ink);max-width:20ch}
.ne-doc-body{max-width:820px;margin:0 auto;padding:30px var(--ne-pad) 100px}
.ne-prose{font-size:17.5px;font-weight:300;line-height:1.75;color:#2E3B39}
.ne-prose > *{max-width:72ch}
.ne-prose h2{margin:48px 0 14px;font-family:var(--ne-serif);font-size:36px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-prose h3{margin:36px 0 10px;font-family:var(--ne-serif);font-size:28px;font-weight:400;line-height:1.2;color:var(--ne-ink)}
.ne-prose h4{margin:28px 0 8px;font-size:15px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ne-teal)}
.ne-prose p{margin:0 0 20px}
.ne-prose ul,.ne-prose ol{margin:0 0 24px;padding-left:22px}
.ne-prose li{margin:0 0 8px}
.ne-prose a{color:var(--ne-teal);text-decoration:underline;text-decoration-color:rgba(167,209,41,.7);text-underline-offset:4px}
.ne-prose strong{font-weight:500;color:var(--ne-ink)}
.ne-prose figure{margin:34px 0}
.ne-prose img{height:auto}
.ne-prose blockquote{margin:30px 0;padding:6px 0 6px 26px;border-left:2px solid var(--ne-lime);font-family:var(--ne-serif);font-size:24px;line-height:1.35;color:var(--ne-ink)}
.ne-prose .wp-block-buttons{margin:24px 0}

/* blog */
.ne-bloghead{padding:72px 0 30px}
.ne-blocks .ne-chips,.ne-chips{margin:30px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.ne-chips li{margin:0;list-style:none}
.ne-chip{display:inline-block;padding:9px 16px;border:1px solid #C9D3BB;font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--ne-ink);text-decoration:none;text-transform:capitalize}
.ne-chip:hover,.ne-chip.is-on{background:var(--ne-teal);border-color:var(--ne-teal);color:#fff}
.ne-chips-lg .ne-chip{padding:13px 20px;font-size:14px}
.ne-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 26px}
.ne-post-media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ne-sand)}
.ne-post-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.ne-post:hover .ne-post-img{transform:scale(1.03)}
.ne-post-meta{margin:16px 0 0;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#5A6866}
.ne-post-h{margin:8px 0 0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.16;color:var(--ne-ink)}
.ne-post-h a{color:inherit;text-decoration:none}
.ne-post-h a:hover{color:var(--ne-teal)}
.ne-post-x{margin:10px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-pager{margin:56px 0 0}
.ne-pager .nav-links{display:flex;gap:10px;flex-wrap:wrap}
.ne-pager .page-numbers{display:inline-block;padding:10px 16px;border:1px solid #C9D3BB;text-decoration:none;color:var(--ne-ink);font-size:14px}
.ne-pager .page-numbers.current{background:var(--ne-teal);color:#fff;border-color:var(--ne-teal)}
.ne-wrap-n{max-width:900px}
.ne-article-head{padding:64px 0 0}
.ne-article-h1{margin:0;font-family:var(--ne-serif);font-size:clamp(36px,4.4vw,58px);font-weight:400;line-height:1.08;letter-spacing:-.012em;color:var(--ne-ink)}
.ne-article-by{margin:20px 0 0;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#5A6866}
.ne-article-media{margin-top:40px;max-width:1100px}
.ne-article-img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover}
.ne-article-body{max-width:900px;margin:0 auto;padding:46px var(--ne-pad) 40px}
.ne-authorbox{display:grid;grid-template-columns:96px 1fr;gap:24px;align-items:center;margin:0 0 90px;padding:28px;background:var(--ne-sand)}
.ne-authorbox-img{width:96px;height:96px;border-radius:50%;object-fit:cover}
.ne-authorbox-n{margin:0;font-family:var(--ne-serif);font-size:24px;color:var(--ne-ink)}
.ne-authorbox-t{margin:4px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-authorbox-l{margin:8px 0 0;font-size:14px}
.ne-authorbox-l a{color:var(--ne-teal)}
.ne-posts-3{margin-top:36px}

/* embeds */
.ne-embed{margin:20px 0 26px;padding:24px;background:var(--ne-sand)}

/* ---------- footer ---------- */
.ne-foot{background:var(--ne-deep);padding:64px 0 0}
.ne-foot-in{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad);display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:38px}
.ne-foot-logo{display:block;width:184px;height:auto}
.ne-foot-sub{margin:12px 0 0;font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-lime)}
.ne-foot-addr{margin:22px 0 0;font-size:15px;font-weight:300;line-height:1.72;color:#9BBAB7}
.ne-foot-addra{color:#DCEAE8;text-decoration:none;border-bottom:1px solid rgba(220,234,232,.24)}
.ne-foot-addra:hover{color:var(--ne-lime);border-bottom-color:var(--ne-lime)}
.ne-foot-social{margin:22px 0 0;display:flex;gap:10px}
.ne-foot-soc{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #0B5560;color:#DCEAE8}
.ne-foot-soc:hover{border-color:var(--ne-lime);color:var(--ne-lime)}
.ne-foot-k{margin:0 0 15px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-lime)}
.ne-foot-l{margin:0;padding:0;list-style:none}
.ne-foot-l li{margin:0 0 9px;padding:0;list-style:none}
.ne-foot-a{color:#A9C6C3;text-decoration:none;font-size:15px;font-weight:300}
.ne-foot-a:hover{color:var(--ne-lime)}
.ne-foot-rule{max-width:var(--ne-max);margin:50px auto 0;padding:0 var(--ne-pad)}
.ne-foot-ruleline{height:1px;background:#0B5560}
.ne-foot-legal{max-width:var(--ne-max);margin:0 auto;padding:20px var(--ne-pad) 24px;display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:space-between;align-items:center}
.ne-foot-c{margin:0;font-size:13px;font-weight:300;color:#9BBAB7}
.ne-foot-c a{color:#DCEAE8;text-decoration:none;border-bottom:1px solid rgba(220,234,232,.24)}
.ne-foot-c a:hover{color:var(--ne-lime)}
.ne-foot-ll{margin:0;padding:0;list-style:none;display:flex;gap:18px}
.ne-foot-ll li{margin:0;list-style:none}
.ne-foot-lla{color:#8CB0AD;text-decoration:none;font-size:13px}
.ne-foot-lla:hover{color:var(--ne-lime)}
.ne-foot-disc{max-width:var(--ne-max);margin:0 auto;padding:0 var(--ne-pad) 42px;font-size:13px;font-weight:300;line-height:1.66;color:#8FAFAB}
.ne-bar{display:none}

/* ---------- focus ---------- */
.ne-body a:focus-visible,.ne-body button:focus-visible,.ne-body summary:focus-visible,.ne-body input:focus-visible{outline:2px solid var(--ne-lime);outline-offset:3px;box-shadow:0 0 0 5px var(--ne-deep)}
@media (prefers-reduced-motion:reduce){.ne-html{scroll-behavior:auto}.ne-body *{transition:none!important}}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:1280px){
  .ne-nav-l{gap:20px}
  .ne-head-in{gap:22px}
}
@media (max-width:1140px){
  .ne-burger{display:inline-flex;margin-left:14px}
  .ne-head-tel{margin-left:auto}
  .ne-nav{position:fixed;left:0;right:0;top:var(--ne-headh,72px);bottom:0;margin:0;background:var(--ne-off);display:block;overflow-y:auto;padding:10px 0 120px;transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility 0s .18s;border-top:1px solid var(--ne-line)}
  .is-menu .ne-nav{opacity:1;visibility:visible;transform:none;transition:opacity .18s,transform .18s}
  .ne-nav-l{display:block;padding:0 var(--ne-pad)}
  .ne-nav-i{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--ne-line)}
  .ne-nav-a{flex:1 1 auto;padding:18px 0;font-family:var(--ne-serif);font-size:28px;font-weight:400;letter-spacing:0;border:0}
  .ne-dd-btn{width:48px;height:48px;border-left:1px solid var(--ne-line)}
  .ne-dd{position:static;transform:none;opacity:1;visibility:visible;display:none;width:100%;min-width:0;box-shadow:none;border:0;padding:0 0 18px;background:transparent;transition:none}
  .ne-nav-i:hover > .ne-dd,.ne-nav-i:focus-within > .ne-dd{transform:none}
  .ne-nav-i.is-open > .ne-dd{display:block}
  .ne-dd-in{display:block}
  .ne-dd-i{margin:0 0 14px}
  .ne-dd-a{padding:8px 0;font-size:17px}
  .ne-nav-mob{display:block;padding:30px var(--ne-pad) 0}
  .ne-nav-mob .ne-btn-teal{display:block;text-align:center}
  .ne-nav-mobt{margin:16px 0 0;font-size:16px;color:var(--ne-body);text-align:center}
  .ne-nav-mobt a{color:var(--ne-teal);font-weight:500}
  .ne-hero-grid,.ne-phero-grid{grid-template-columns:1fr;gap:0}
  .ne-hero-copy{padding:60px 0 40px}
  .ne-hero-media{min-height:520px;margin:0 0 60px}
  .ne-phero-copy{padding:48px 0 40px}
  .ne-phero-media{min-height:440px;margin:0 calc(-1 * var(--ne-pad))}
  .ne-concerns-head{grid-template-columns:1fr;gap:26px}
  .ne-tiles,.ne-treat-grid,.ne-cards-3,.ne-cards-4{grid-template-columns:1fr 1fr}
  .ne-sarah-grid,.ne-guide-grid,.ne-note,.ne-mem{grid-template-columns:1fr}
  .ne-sarah-media{min-height:460px}
  .ne-sarah-body,.ne-guide-body{padding:60px var(--ne-pad)}
  .ne-cake-grid,.ne-place,.ne-split,.ne-faqwrap,.ne-tl-grid,.ne-visit-grid{grid-template-columns:1fr;gap:38px}
  .ne-cake-media,.ne-place-media{min-height:400px}
  .ne-aside,.ne-faq-head,.ne-tl-side{position:static}
  .ne-plans-grid,.ne-rev-grid,.ne-opts-3,.ne-quiz,.ne-phases,.ne-posts{grid-template-columns:1fr 1fr}
  .ne-steps2,.ne-steps2-5,.ne-steps2-4{grid-template-columns:1fr 1fr}
  .ne-step2{border-right:0;margin-right:0;padding-right:20px;border-bottom:1px solid var(--ne-line)}
  .ne-guide-media{min-height:340px}
  .ne-foot-in{grid-template-columns:1fr 1fr}
  .ne-note-media{min-height:360px}
}
@media (max-width:780px){
  :root{--ne-pad:20px}
  .ne-body{font-size:16px;padding-bottom:62px}
  .ne-util-in{gap:2px 14px}
  .ne-util-t:nth-child(2){display:none}
  .ne-util-t{font-size:11.5px}
  .ne-head-in{padding:12px var(--ne-pad);gap:12px}
  .ne-head-logoimg{height:19px}
  .ne-head-cta{display:none}
  .ne-head-tel{display:none}
  .ne-burger{margin-left:auto}
  .ne-sec{padding:62px 0 66px}
  .ne-sec-tight{padding:40px 0 44px}
  .ne-hero,.ne-phero,.ne-sarah,.ne-guide,.ne-offer{padding:0}
  .ne-hero-copy{padding:44px 0 34px}
  .ne-hero-media{min-height:420px;margin:0 calc(-1 * var(--ne-pad)) 48px}
  .ne-hero-card{left:0;right:0;max-width:none}
  .ne-hero-meta{gap:18px}
  .ne-phero-media{min-height:340px}
  .ne-phero-h1{font-size:clamp(34px,9vw,44px)}
  .ne-phero-p,.ne-hero-p{font-size:17px}
  .ne-facts{grid-template-columns:1fr}
  .ne-trust-grid{grid-template-columns:1fr}
  .ne-trust-c{padding:18px 0;border-right:0;border-bottom:1px solid #2C7581}
  .ne-trust-c:last-child{border-bottom:0}
  .ne-tiles,.ne-treat-grid,.ne-cards,.ne-cards-1,.ne-cards-2,.ne-cards-3,.ne-cards-4,.ne-plans-grid,.ne-rev-grid,.ne-opts-2,.ne-opts-3,.ne-quiz,.ne-phases,.ne-posts,.ne-care,.ne-mem-cols,.ne-steps2,.ne-steps2-3,.ne-steps2-5,.ne-steps2-2,.ne-split-even{grid-template-columns:1fr}
  .ne-tile{min-height:360px}
  .ne-tcard,.ne-card{min-height:260px}
  .ne-step2{padding:22px 0 14px}
  .ne-treat-head,.ne-rev-head{grid-template-columns:1fr;gap:18px;align-items:start}
  .ne-sarah-media{min-height:380px}
  .ne-sarah-body,.ne-guide-body{padding:48px var(--ne-pad)}
  .ne-lead-row{grid-template-columns:1fr}
  .ne-mem-head{padding:36px 26px}
  .ne-mem-cols{padding:30px 26px 18px}
  .ne-pricelist{padding:4px 20px}
  .ne-price-row{grid-template-columns:1fr}
  .ne-price-v{text-align:left}
  .ne-tl-i{grid-template-columns:1fr;gap:10px}
  .ne-note-body{padding:40px 24px}
  .ne-q summary{font-size:20px}
  .ne-foot-in{grid-template-columns:1fr;gap:30px}
  .ne-btnrow .wp-block-button{flex:0 0 auto}
  .ne-bar{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:250;grid-template-columns:1fr 1fr 1.2fr;background:var(--ne-deep);border-top:1px solid #0B5560}
  .ne-bar a{padding:19px 6px;text-align:center;color:#DCEAE8;text-decoration:none;font-size:12.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;border-right:1px solid #0B5560}
  .ne-bar .ne-bar-b{background:var(--ne-lime);color:var(--ne-deep);font-weight:600;border-right:0}
  .ne-authorbox{grid-template-columns:1fr}
}

/* ---------- WordPress chrome ---------- */
.admin-bar .ne-head{top:32px}
@media (max-width:782px){.admin-bar .ne-head{top:46px}}
@media (max-width:600px){.admin-bar .ne-head{top:0}}


/* ==========================================================================
   v2.1 interior refinements (homepage untouched)
   ========================================================================== */
/* service hero: facts move to a strip under the hero */
.ne-phero-svc .ne-phero-copy{padding:64px 0 72px}
.ne-factstrip{padding:0;background:#fff;border-top:1px solid var(--ne-line);border-bottom:1px solid var(--ne-line)}
.ne-facts2{display:grid;grid-template-columns:repeat(4,1fr)}
.ne-facts2-3{grid-template-columns:repeat(3,1fr)}
.ne-facts2-2{grid-template-columns:repeat(2,1fr)}
.ne-facts2 .ne-fact{padding:26px 28px 24px 0;margin-right:28px;border-bottom:0;border-right:1px solid var(--ne-line)}
.ne-facts2 .ne-fact:last-child{border-right:0;margin-right:0}
.ne-facts2 .ne-fact-v{font-size:20px}

/* where it fits: compact light strip instead of a dark band */
.ne-fit-sec{background:var(--ne-off);border-bottom:1px solid var(--ne-line)}
.ne-fit{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:start}
.ne-fit-k{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-fit-h{margin:0;font-family:var(--ne-serif);font-size:32px;font-weight:400;line-height:1.12;color:var(--ne-ink);max-width:22ch}
.ne-fit-p{margin:0;max-width:62ch;font-size:16.5px;font-weight:300;line-height:1.65;color:var(--ne-body)}
.ne-blocks ul.ne-ladder2{margin:26px 0 0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.ne-ladder2 li{margin:0;padding:12px 0 0;border-top:3px solid #D3DCC6;font-size:13px;font-weight:500;letter-spacing:.04em;color:#5A6866}
.ne-ladder2 li.is-on{border-top-color:var(--ne-lime);color:var(--ne-ink)}
.ne-fit-links{margin:22px 0 0;font-size:14.5px;color:#5A6866}
.ne-fit-links a{color:var(--ne-teal);text-decoration:underline;text-decoration-color:rgba(167,209,41,.7);text-underline-offset:4px}

/* faq photo */
.ne-faq-img{margin:34px 0 0!important}
.ne-blocks .ne-faq-img img{width:100%;height:340px;object-fit:cover;object-position:50% 30%}

/* closing section: light, with Sarah's portrait */
.ne-cta2-sec{padding:72px 0}
.ne-cta2{display:grid;grid-template-columns:300px 1fr;gap:60px;align-items:center}
.ne-cta2-img{min-height:380px}
.ne-blocks .ne-cta2-img img{object-position:50% 18%}
.ne-cta2-h{max-width:20ch}
.ne-cta2-body .ne-btnrow{margin-top:28px}
.ne-cta2-sms{margin:18px 0 0;font-size:15px;color:var(--ne-body)}
.ne-cta2-sms a{color:var(--ne-teal);font-weight:500}
.ne-cta2-body .ne-cta-area{border-top-color:rgba(20,32,31,.14);color:#395456;margin-top:30px}

/* about: portrait-led hero */
.ne-ahero{padding:0;background:var(--ne-off)}
.ne-ahero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;max-width:1520px;margin:0 auto}
.ne-ahero-img{min-height:760px}
.ne-blocks .ne-ahero-img img{object-position:50% 16%}
.ne-ahero-copy{padding:56px var(--ne-pad) 64px 72px;display:flex;flex-direction:column;justify-content:center;max-width:720px}
.ne-ahero-h1{margin:0;font-family:var(--ne-sans);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;line-height:1.6;color:var(--ne-teal);max-width:44ch}
.ne-ahero-quote{margin:26px 0 0;font-family:var(--ne-serif);font-size:clamp(40px,4.4vw,64px);line-height:1.04;letter-spacing:-.015em;color:var(--ne-ink);max-width:13ch}
.ne-ahero-attr{margin:18px 0 0;font-size:14px;font-weight:500;color:#5C6A68}
.ne-blocks ul.ne-glance{margin:40px 0 0;list-style:none;border-top:1px solid var(--ne-line);max-width:480px}
.ne-glance li{margin:0;padding:12px 0;border-bottom:1px solid var(--ne-line);font-size:15.5px;font-weight:300;color:#2E3B39}
.ne-glance a{color:var(--ne-teal);text-decoration:none;border-bottom:1px solid rgba(167,209,41,.6)}
.ne-ahero-cta{margin:30px 0 0;font-size:15.5px;color:var(--ne-body)}
.ne-ahero-cta a{color:var(--ne-teal);font-weight:500;text-decoration:underline;text-decoration-color:var(--ne-lime);text-underline-offset:5px}

/* about: hello */
.ne-hello{display:grid;grid-template-columns:1.35fr .65fr;gap:72px;align-items:start}
.ne-hello-h{margin:0;font-family:var(--ne-serif);font-size:clamp(44px,5vw,72px);font-weight:400;line-height:1;letter-spacing:-.015em;color:var(--ne-ink)}
.ne-hello-lead{margin:28px 0 0;font-family:var(--ne-serif);font-size:clamp(23px,2.2vw,29px);line-height:1.38;color:#2E3B39;max-width:34ch}
.ne-hello-text .ne-p{max-width:58ch}
.ne-hello-side{margin-top:110px}
.ne-blocks .ne-hello-img img{width:100%;height:500px;object-fit:cover;object-position:50% 20%}

/* about: story */
.ne-story-sec{border-top:1px solid var(--ne-line)}
.ne-story-head{margin:0 0 36px}
.ne-story{max-width:1040px}
.ne-story-row{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:30px 0;border-top:1px solid var(--ne-line)}
.ne-story-y{margin:0;font-family:var(--ne-serif);font-size:30px;line-height:1.05;color:var(--ne-teal)}
.ne-story-h{margin:0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-story-p{margin:12px 0 0;max-width:62ch;font-size:17px;font-weight:300;line-height:1.72;color:var(--ne-body)}
.ne-pull{margin:0;padding:46px 0 46px 260px;border-top:1px solid var(--ne-line);font-family:var(--ne-serif);font-style:italic;font-size:clamp(30px,3.4vw,46px);line-height:1.15;color:var(--ne-teal);max-width:28ch;box-sizing:content-box}

/* about: photo arrangement */
.ne-mosaic-sec{padding-top:10px}
.ne-mosaic{display:grid;grid-template-columns:5fr 4fr 3fr;gap:16px;align-items:end}
.ne-blocks .ne-mosaic img{width:100%;object-fit:cover}
.ne-blocks .ne-mos-a img{height:540px;object-position:50% 15%}
.ne-blocks .ne-mos-b img{height:400px;object-position:50% 30%}
.ne-blocks .ne-mos-c img{height:460px;object-position:50% 25%}
.ne-mos-c{margin-bottom:60px!important}
.ne-pullq{margin:26px 0 0;font-family:var(--ne-serif);font-size:30px;line-height:1.25;color:var(--ne-teal);max-width:22ch}

/* about: medical director card, quiz, letter */
.ne-md2{background:#fff;border:1px solid var(--ne-line);padding:32px 30px;margin-top:8px}
.ne-md-h{margin:0;font-family:var(--ne-serif);font-size:27px;font-weight:400;color:var(--ne-ink)}
.ne-md-p{margin:12px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-quiz2{margin:38px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.ne-quiz-c2{border-top:2px solid var(--ne-teal);padding-top:22px}
.ne-quiz-c2 .ne-quiz-q{margin:0 0 12px}
.ne-quiz-a2{margin:16px 0 0;font-family:var(--ne-serif);font-style:italic;font-size:21px;line-height:1.35;color:var(--ne-teal)}
.ne-letter{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--ne-line);padding:56px 64px 52px}
.ne-letter-p{margin:16px 0 0;font-family:var(--ne-serif);font-size:24px;line-height:1.48;color:#2E3B39}
.ne-letter-sign{margin:28px 0 0;font-family:var(--ne-serif);font-style:italic;font-size:30px;color:var(--ne-teal)}

@media (max-width:1140px){
  .ne-facts2,.ne-facts2-3{grid-template-columns:1fr 1fr}
  .ne-facts2 .ne-fact{border-right:0;margin-right:0;border-bottom:1px solid var(--ne-line)}
  .ne-fit,.ne-cta2,.ne-hello,.ne-ahero-grid{grid-template-columns:1fr;gap:34px}
  .ne-cta2-img{min-height:360px;max-width:420px}
  .ne-ahero-img{min-height:560px}
  .ne-ahero-copy{padding:48px var(--ne-pad) 56px}
  .ne-hello-side{margin-top:0}
  .ne-pull{padding-left:0}
  .ne-story-row{grid-template-columns:160px 1fr;gap:28px}
  .ne-mosaic{grid-template-columns:1fr 1fr}
  .ne-mos-c{display:none}
  .ne-quiz2{grid-template-columns:1fr 1fr}
}
@media (max-width:780px){
  .ne-facts2,.ne-facts2-3,.ne-facts2-2{grid-template-columns:1fr}
  .ne-facts2 .ne-fact{padding:18px 0}
  .ne-blocks ul.ne-ladder2{grid-template-columns:repeat(5,minmax(0,1fr))}
  .ne-ladder2 li{font-size:11px;letter-spacing:0}
  .ne-fit-h{font-size:27px}
  .ne-cta2-sec{padding:56px 0}
  .ne-cta2-img{min-height:300px}
  .ne-ahero-img{min-height:460px}
  .ne-blocks .ne-hello-img img{height:380px}
  .ne-story-row{grid-template-columns:1fr;gap:8px}
  .ne-mosaic{grid-template-columns:1fr}
  .ne-mos-b{display:none}
  .ne-blocks .ne-mos-a img{height:440px}
  .ne-quiz2{grid-template-columns:1fr;gap:30px}
  .ne-letter{padding:36px 24px}
  .ne-letter-p{font-size:21px}
  .ne-blocks .ne-faq-img img{height:260px}
}

/* ==========================================================================
   v2.2 plan pages
   ========================================================================== */
.ne-pl-tag{margin:0 0 10px;font-family:var(--ne-serif);font-size:24px;line-height:1;color:var(--ne-teal)}
.ne-pl-h1{font-size:clamp(34px,4vw,54px);max-width:18ch}
.ne-pl-when{margin:18px 0 0;padding-left:22px;position:relative;font-size:14px;font-weight:500;letter-spacing:.03em;color:var(--ne-teal)}
.ne-pl-when::before{content:"";position:absolute;left:0;top:50%;width:12px;height:1px;background:var(--ne-lime)}
.ne-pl-conc{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 44px}
.ne-pl-conc .ne-fit-k{flex:0 0 100%;margin-bottom:4px}
.ne-pl-q{margin:0;font-family:var(--ne-serif);font-size:clamp(24px,2.4vw,32px);line-height:1.2;color:var(--ne-ink);max-width:22ch}
.ne-pl-layers{background:var(--ne-sand);padding:30px 30px 24px}
.ne-blocks ul.ne-ladder3{margin:8px 0 0;list-style:none}
.ne-ladder3 li{margin:0;padding:11px 0 11px 18px;border-bottom:1px solid rgba(20,32,31,.12);font-family:var(--ne-serif);font-size:21px;color:#5A6866;position:relative}
.ne-ladder3 li.is-on{color:var(--ne-ink)}
.ne-ladder3 li.is-on::before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--ne-lime)}
.ne-pl-seq-head{margin:0 0 36px}
.ne-pl-steps{position:relative;max-width:920px}
.ne-pl-steps::before{content:"";position:absolute;left:23px;top:24px;bottom:24px;width:1px;background:#C9D3BB}
.ne-pl-step{position:relative;display:grid;grid-template-columns:48px 1fr;gap:30px;padding:0 0 38px}
.ne-pl-step:last-child{padding-bottom:0}
.ne-pl-step-n{margin:0;width:48px;height:48px;border-radius:50%;border:1px solid var(--ne-teal);background:var(--ne-off);display:flex;align-items:center;justify-content:center;font-family:var(--ne-serif);font-size:22px;color:var(--ne-teal);position:relative;z-index:1}
.ne-pl-step-h{margin:8px 0 0;font-family:var(--ne-serif);font-size:28px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-pl-step-p{margin:10px 0 0;max-width:62ch;font-size:16.5px;font-weight:300;line-height:1.68;color:var(--ne-body)}
.ne-pl-step .ne-fit-links{margin-top:12px}
.ne-pl-others{margin:34px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ne-pl-other{border-top:2px solid var(--ne-teal);padding:24px 0 0}
.ne-pl-other-h{margin:0;font-family:var(--ne-serif);font-size:32px;font-weight:400;line-height:1.1}
.ne-pl-other-h a{color:var(--ne-ink);text-decoration:none;border-bottom:1px solid var(--ne-lime)}
.ne-pl-other-h a:hover{color:var(--ne-teal)}
.ne-pl-other-p{margin:12px 0 0;max-width:52ch;font-size:16px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-pl-hubname a{color:inherit;text-decoration:none}
.ne-pl-hubname a:hover{color:var(--ne-teal)}
@media (max-width:780px){
  .ne-pl-others{grid-template-columns:1fr}
  .ne-pl-step{grid-template-columns:40px 1fr;gap:18px}
  .ne-pl-step-n{width:40px;height:40px;font-size:19px}
  .ne-pl-steps::before{left:19px}
  .ne-pl-step-h{font-size:24px;margin-top:4px}
}
.ne-pl-cost{border-top:1px solid var(--ne-line)}
.ne-plan-more{margin:-8px 0 18px;font-size:14px}
.ne-plan-more a{color:var(--ne-teal);text-decoration:underline;text-decoration-color:var(--ne-lime);text-underline-offset:4px}
.ne-plan-more a:hover{color:var(--ne-ink)}

/* balanced card rows: 12-column grid, each card spans 12 / (cards in its row) */
.ne-grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}
.ne-span-12{grid-column:span 12}.ne-span-6{grid-column:span 6}.ne-span-4{grid-column:span 4}.ne-span-3{grid-column:span 3}
@media (max-width:1140px){
  .ne-grid12 > *{grid-column:span 6}
  .ne-grid12 > :last-child:nth-child(odd){grid-column:span 12}
}
@media (max-width:780px){
  .ne-grid12 > *,.ne-grid12 > :last-child:nth-child(odd){grid-column:span 12}
}

/* v2.3 photos */
.ne-blocks .ne-wstory img{width:100%;max-width:420px;height:auto;margin-top:30px;display:block}
.ne-hall{margin:30px 0 0!important}
.ne-blocks .ne-hall img{width:100%;max-width:640px;height:300px;object-fit:cover;object-position:50% 50%}

.ne-blocks .ne-pos-low img{object-position:50% 92%}

/* ==========================================================================
   v2.4  Offers (start with one visit), measurement tools, locations, membership tiers
   ========================================================================== */
.ne-of-head{max-width:720px}
.ne-of-grid{margin:40px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ne-of-card{background:#fff;border:1px solid var(--ne-line);border-top:3px solid var(--ne-teal);padding:30px 28px 32px;display:flex;flex-direction:column}
.ne-sec-sand .ne-of-card{border-color:transparent;border-top-color:var(--ne-teal)}
.ne-of-where{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-of-h{margin:12px 0 0;font-family:var(--ne-serif);font-size:30px;font-weight:400;line-height:1.1;color:var(--ne-ink)}
.ne-of-price{margin:14px 0 0;padding-bottom:18px;border-bottom:1px solid var(--ne-line);font-family:var(--ne-serif);font-size:24px;line-height:1.2;color:var(--ne-teal)}
.ne-of-p{margin:16px 0 0;font-size:16px;font-weight:300;line-height:1.62;color:var(--ne-body)}
.ne-of-grid + .wp-block-buttons,.ne-of-grid + .ne-btnrow{margin-top:34px}

.ne-tools-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:stretch}
.ne-tools{margin:34px 0 0;display:grid;gap:0}
.ne-tool{padding:22px 0;border-top:1px solid rgba(20,32,31,.16)}
.ne-tool:last-child{border-bottom:1px solid rgba(20,32,31,.16)}
.ne-tool-h{margin:0;font-family:var(--ne-serif);font-size:27px;font-weight:400;line-height:1.15;color:var(--ne-ink)}
.ne-tool-h a{color:inherit;text-decoration:underline;text-decoration-color:rgba(167,209,41,.7);text-underline-offset:5px}
.ne-tool-h a:hover{color:var(--ne-teal)}
.ne-tool-p{margin:8px 0 0;max-width:52ch;font-size:16px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-tools-media{min-height:420px}

.ne-locs{margin:34px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.ne-loc{padding:6px 28px 8px 0;margin-right:28px;border-right:1px solid var(--ne-line)}
.ne-loc:last-child{border-right:0;margin-right:0}
.ne-sec-sand .ne-loc{border-right-color:rgba(20,32,31,.16)}
.ne-loc-h{margin:0;font-family:var(--ne-serif);font-size:28px;font-weight:400;line-height:1.1;color:var(--ne-ink)}
.ne-loc-p{margin:10px 0 0;font-size:15.5px;font-weight:300;line-height:1.6;color:var(--ne-body)}

.ne-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.ne-tier{background:#fff;border:1px solid var(--ne-line);border-top:3px solid var(--ne-teal);padding:34px 30px 34px;display:flex;flex-direction:column}
.ne-tier:nth-child(3){background:var(--ne-deep);border-color:var(--ne-deep);border-top-color:var(--ne-lime)}
.ne-tier-k{margin:0;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-teal)}
.ne-tier-h{margin:12px 0 0;font-family:var(--ne-serif);font-size:42px;font-weight:400;line-height:1.05;letter-spacing:-.012em;color:var(--ne-ink)}
.ne-tier-price{margin:12px 0 0;font-family:var(--ne-serif);font-size:28px;line-height:1.1;color:var(--ne-teal)}
.ne-tier-for{margin:14px 0 0;font-size:16px;font-weight:300;line-height:1.55;color:var(--ne-body)}
.ne-tier-bank{margin:16px 0 0;padding:14px 0;border-top:1px solid var(--ne-line);border-bottom:1px solid var(--ne-line);font-size:14.5px;font-weight:500;line-height:1.45;color:var(--ne-ink)}
.ne-tier .ne-ticks{margin-top:14px!important}
.ne-tier:nth-child(3) .ne-tier-k{color:var(--ne-lime)}
.ne-tier:nth-child(3) .ne-tier-h,.ne-tier:nth-child(3) .ne-tier-price{color:#fff}
.ne-tier:nth-child(3) .ne-tier-for,.ne-tier:nth-child(3) .ne-ticks li{color:rgba(251,250,247,.88)}
.ne-tier:nth-child(3) .ne-tier-bank{color:#fff;border-color:rgba(251,250,247,.22)}
.ne-tier:nth-child(3) .ne-ticks li::before{border-color:var(--ne-lime)}
.ne-tier:nth-child(3) .ne-ticks li{border-color:rgba(251,250,247,.12)}

@media (max-width:1140px){
  .ne-of-grid,.ne-tiers{grid-template-columns:1fr 1fr}
  .ne-tools-grid{grid-template-columns:1fr;gap:38px}
  .ne-tools-media{min-height:340px}
  .ne-locs{grid-template-columns:1fr 1fr;row-gap:28px}
  .ne-loc:nth-child(2n){border-right:0;margin-right:0}
}
@media (max-width:780px){
  .ne-of-grid,.ne-tiers,.ne-locs{grid-template-columns:1fr}
  .ne-loc{border-right:0;margin-right:0;padding:0 0 22px;border-bottom:1px solid var(--ne-line)}
  .ne-loc:last-child{border-bottom:0}
  .ne-tools-media{min-height:280px}
  .ne-tier-h{font-size:36px}
}

.ne-mem-pointer,.ne-band{background:#fff;border-top:1px solid var(--ne-line);border-bottom:1px solid var(--ne-line)}
.ne-tier-cta{margin-top:auto;padding-top:26px}
.ne-tier:nth-child(3) .ne-b-line .wp-block-button__link{color:#fff}
.ne-tier:nth-child(3) .ne-b-line .wp-block-button__link:hover{color:var(--ne-lime)}
.ne-how{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:stretch}
.ne-how-media{min-height:440px}.ne-how-media img{object-position:50% 20%}
@media (max-width:1140px){.ne-how{grid-template-columns:1fr;gap:38px}.ne-how-media{min-height:300px}}
.ne-band .ne-loc{border-right-color:var(--ne-line)}

/* membership card on service pages, targeted memberships on /memberships/ */
.ne-mc{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.ne-mc-price{margin:16px 0 0;font-family:var(--ne-serif);font-size:30px;line-height:1.15;color:var(--ne-teal)}
.ne-mc-list{display:grid;gap:0;margin-top:6px}
.ne-mi{padding:18px 0;border-top:1px solid rgba(20,32,31,.16)}
.ne-mi:last-child{border-bottom:1px solid rgba(20,32,31,.16)}
.ne-mi-t{margin:0;font-family:var(--ne-serif);font-size:24px;font-weight:400;line-height:1.2;color:var(--ne-ink)}
.ne-mi-p{margin:6px 0 0;max-width:56ch;font-size:15.5px;font-weight:300;line-height:1.6;color:var(--ne-body)}
.ne-tiers-2{grid-template-columns:repeat(2,1fr);margin-top:34px}
@media (max-width:1140px){.ne-mc{grid-template-columns:1fr;gap:34px}}
@media (max-width:780px){.ne-tiers-2{grid-template-columns:1fr}}

/* signature names, contained product hero */
.ne-card-k{margin:0 0 6px;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ne-lime)}
.ne-phero-contain .ne-phero-media{background:#fff}
.ne-phero-contain .ne-phero-media img{object-fit:contain;object-position:50% 50%;padding:18px}
.ne-opt-series{margin:auto 0 0;padding-top:16px;font-size:14px;font-weight:500;line-height:1.45;color:var(--ne-teal)}
.ne-opt .ne-ticks + .ne-opt-series,.ne-opt .ne-opt-p + .ne-opt-series{margin-top:18px;border-top:1px solid var(--ne-line)}
