/* Shared public-site path styles. Existing brand palette and typography retained. */
:root,:host {
  --path-space:clamp(24px,4vw,56px);
  --path-paper:#f7f4ed;--path-ink:#28342b;--path-muted:#66675f;
  --path-line:#d6d3c8;--path-accent:#786345;
  --path-heading:clamp(28px,3vw,40px);
}
html[data-path-theme=dark] {
  --bg:#1c241e;--surface:#273029;--surface-2:#303b32;--text:#f1eee3;
  --muted:#c7cabb;--muted-2:#b8bcaf;--line:#4d574a;--accent:#c7b48f;
  --path-paper:#1c241e;--path-ink:#f1eee3;--path-muted:#c7cabb;
  --path-line:#4d574a;--path-accent:#c7b48f;
  color-scheme:dark;
}
:host([data-theme=dark]) {--path-paper:#1c241e;--path-ink:#f1eee3;--path-muted:#c7cabb;--path-line:#4d574a;--path-accent:#c7b48f}
[hidden],.path-archived {display:none!important}
body[data-site-path] {background:var(--path-paper);color:var(--path-ink)}
.path-tabs {display:flex!important;justify-content:center;gap:0;max-width:560px;margin:0 auto;padding:0 20px}
.path-tabs a {flex:1;min-height:56px;display:flex;justify-content:center;align-items:center;padding:12px 24px;border-bottom:1px solid var(--path-line);font:500 15px/1.4 Inter,sans-serif;text-decoration:none;color:var(--path-muted)}
.path-tabs a[aria-current=page] {color:var(--path-ink);border-bottom:2px solid var(--path-accent)}
.path-tabs a:hover {background:var(--surface)}
.path-hero {max-width:1360px!important;grid-template-columns:minmax(0,1.05fr) minmax(200px,.75fr) minmax(0,1fr)!important;gap:clamp(24px,3vw,48px)!important;padding:48px 48px 64px!important;align-items:center!important}
.path-hero h1 {font-size:clamp(44px,4.6vw,68px)!important;line-height:1.04;letter-spacing:-.035em;margin:24px 0}
.path-subtitle {font-size:18px;color:var(--ink);line-height:1.6}
.path-hero-detail h2 {font:400 var(--path-heading)/1.1 'Instrument Serif',serif;margin:16px 0 20px}
.path-hero-detail>p:not(.eyebrow) {font-size:15px;line-height:1.75}
.path-hero-detail .path-fine {font-size:12px!important;line-height:1.65!important;margin-top:16px;color:var(--muted)}
.path-actions {display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:24px}
.path-actions .button {width:100%;min-height:54px;justify-content:space-between;gap:20px;padding:14px 20px}
.path-actions .button--ios {background:#28342b!important;color:#f8f4e9!important;border:1px solid #52604f}
.path-actions .button--web {background:#e2d8c5;color:#30382e;border:1px solid #bfb094}
.path-actions .button--web:hover {background:#d8cbb3}
.path-try-hero {display:flex;justify-content:space-between;align-items:center;width:100%;min-height:66px;margin-top:20px;padding:12px 20px;border:1px solid var(--accent);border-radius:12px;background:var(--surface);color:var(--ink);font:500 15px/1.5 Inter,sans-serif;text-align:left;cursor:pointer}
.path-try-hero small {display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:3px}
.path-try-hero:hover {background:var(--paper);border-color:var(--ink)}
.path-actions .text-link {font-size:14px}
.path-film {margin:0;width:100%;max-width:290px;justify-self:center;position:relative}
.path-film video {display:block;width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:3px;background:#202c23}
.path-film figcaption {font:400 12px/1.5 Inter,sans-serif;color:var(--muted);text-align:center;padding:12px 0 0}
.film-toggle {position:absolute;right:12px;bottom:48px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid #e9e2cd88;border-radius:50%;background:#243026e6;color:#fff;cursor:pointer}
.film-toggle svg {display:block}
.path-watch {min-height:44px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:500 14px Inter,sans-serif;margin-top:12px;display:flex;gap:16px;align-items:center;padding:8px 0;cursor:pointer}
.path-watch span {font-size:12px;color:var(--muted);font-weight:400}
.path-section {width:min(1120px,calc(100% - 64px));margin:auto;padding:48px 0;border-top:1px solid var(--path-line)}
.path-section h2 {font:400 var(--path-heading)/1.12 'Instrument Serif',serif;letter-spacing:-.02em;margin:14px 0 20px}
.path-section p {font-size:16px;line-height:1.75;color:var(--path-muted)}
.path-section .eyebrow {font-size:12px;letter-spacing:.12em;color:var(--path-accent)}
.path-section a:not(.btn) {color:var(--path-accent);text-decoration:underline;text-underline-offset:4px}
.path-section a:hover {text-decoration-thickness:2px}
.path-essentials {display:grid;grid-template-columns:1fr 1.15fr;gap:16px 64px}
.path-benefits article {display:flex;gap:20px;padding:16px 0;border-bottom:1px solid var(--path-line)}
.path-benefits article:first-child {padding-top:0}
.path-benefits article>span {color:var(--path-accent);font-size:12px;padding-top:4px}
.path-benefits h3 {font-family:Inter,sans-serif;font-size:17px;line-height:1.5;margin:0 0 8px;font-weight:500}
.path-benefits p {font-size:14px;line-height:1.7}
.path-enrollment {grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px;padding-top:24px;border-top:1px solid var(--path-line)}
.path-enrollment strong {font-family:'Instrument Serif',serif;font-size:26px;font-weight:400}
.path-enrollment p {font-size:14px;margin-top:8px}
.path-inline-button {font:500 14px Inter,sans-serif;min-height:44px;padding:8px 0;justify-self:start;border:0;background:none;border-bottom:1px solid var(--path-line);color:var(--path-accent);cursor:pointer}
.path-bridge {display:grid;grid-template-columns:1fr 1.15fr;gap:24px 64px;padding-block:44px}
.path-bridge h2 {margin-bottom:0}
.path-bridge .path-link {display:inline-flex;align-items:center;gap:24px;min-height:48px;margin-top:12px;text-decoration:none;font-size:14px}
.path-detail {border-top:1px solid var(--path-line);margin:0;color:var(--path-ink)}
.path-detail:last-child {border-bottom:1px solid var(--path-line)}
.path-detail>summary {font:500 15px/1.5 Inter,sans-serif;cursor:pointer;min-height:60px;padding:18px 32px 18px 0;list-style:none;position:relative}
.path-detail>summary::-webkit-details-marker {display:none}
.path-detail>summary:after {content:'+';position:absolute;right:4px;top:17px;font-size:22px;font-weight:400;color:var(--path-accent)}
.path-detail[open]>summary:after {content:'−'}
.path-answer {padding:0 24px 24px 0;font:400 15px/1.8 Inter,sans-serif;color:var(--path-muted);max-width:78ch}
.path-questions {padding-bottom:40px}
.path-questions>h2 {margin-bottom:24px}
.path-questions .path-answer .answer {padding:0!important;margin:0 0 16px;font:inherit;color:inherit}
.path-questions .path-answer .answer:last-child {margin-bottom:0}
.path-faq-next {border-top:1px solid var(--path-line);padding-top:20px;margin-top:0!important;font-size:14px!important;color:var(--path-muted);max-width:78ch}
.path-resources {display:grid;grid-template-columns:1fr 1.15fr;gap:48px 64px}
.path-resource-list {min-width:0}
.path-detail-body .section {padding:24px 0 40px}
.path-detail-body .wrap {width:100%;padding-inline:0;max-width:none}
.path-detail-body .h2 {font-size:clamp(26px,3vw,36px)}
.path-detail-body .lead {font-size:15px;line-height:1.8}
.path-detail-body .about-grid,.path-detail-body .sample-grid,.path-detail-body .nutrition__grid {grid-template-columns:1fr;gap:24px}
.path-detail-body .about-photo {max-width:340px;margin:auto}
.path-detail-body .trio {grid-template-columns:1fr}
.path-detail-body .reveal {opacity:1;transform:none}
.path-private-line {padding:4px 0 24px;max-width:65ch;color:var(--muted);font-size:15px;line-height:1.8}
.path-private-line p {margin:0 0 16px}
.path-private-line p:last-child {margin-bottom:0}
.path-private-line strong {color:var(--ink)}
.path-contact>p {max-width:700px}
.path-contact>.path-detail {margin-top:24px}
.path-contact #apply>.wrap>.center {display:none}
.path-contact .form-wrap {margin:8px auto 24px}
.path-reflections {padding-block:16px 32px}
.path-reflections .de-reviews {padding:24px 0}
.path-reflections .review-shell {padding:0}
#pricing.path-visible {padding-block:40px 48px}
#pricing.path-visible>.wrap {max-width:1120px}
#pricing.path-visible .h2 {font-size:var(--path-heading)}
#pricing.path-visible .lead {font-size:16px;max-width:680px;margin-top:16px!important}
#pricing.path-visible .builder {margin-top:32px}
#pricing.path-visible .opt-desc {font-size:13px;line-height:1.65}
#pricing.path-visible .summary {position:static;align-self:start}
#pricing.path-visible .opt label {background:var(--surface);box-shadow:none}
#pricing.path-visible .opt input:checked+label {background:var(--surface-2)}
#pricing.path-visible .radio-dot {position:static;margin:0 0 12px;width:16px;height:16px}
#pricing.path-visible .opt-title {font-family:Inter,sans-serif;font-size:15px;font-weight:500;line-height:1.4}
#pricing.path-visible .opt-tag {display:inline-block;border:0;padding:0;letter-spacing:0;text-transform:none;font-size:12px;font-weight:400;line-height:1.4}
#pricing.path-visible .summary {background:var(--surface);box-shadow:none;padding:24px}
#pricing.path-visible .picker-head h3 {font-size:23px}
#pricing.path-visible .picker+.picker {margin-top:32px!important}
#pricing.path-visible .compare-note {margin-top:20px}
.path-matrix {margin-top:24px}
.path-matrix>details {margin-top:0!important}
.path-demo-detail {max-width:640px;margin:24px auto 40px;padding:0 24px}
.path-demo-body {max-width:420px;margin:auto}
.path-demo-body .app-stage {margin:0!important;width:100%!important;min-height:700px}
.path-demo-body .phone {max-width:calc(100% - 40px)}
.path-video-dialog {border:1px solid var(--path-line);border-radius:8px;padding:20px;background:var(--path-paper);color:var(--path-ink);width:min(480px,calc(100% - 32px));max-height:90dvh;overflow:auto}
.path-video-dialog::backdrop {background:#111a14cf}
.path-video-top {display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.path-video-top h2 {font:400 25px/1.15 'Instrument Serif',serif;margin:0}
.path-video-close {min-height:44px;border:1px solid var(--path-line);background:none;color:inherit;padding:8px 12px;border-radius:6px;cursor:pointer}
.path-video-dialog video {display:block;max-height:65dvh;width:100%;background:#f7f4ed;aspect-ratio:9/16;object-fit:contain}
.path-video-dialog p {font:400 12px/1.7 Inter,sans-serif;color:var(--path-muted);margin:16px 0 0}
.path-sample-dialog {width:min(460px,calc(100vw - 24px));max-height:94dvh;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);overflow:auto;margin:auto}
.path-sample-dialog::backdrop {background:#111a14cf}
.path-sample-top {display:flex;align-items:center;justify-content:space-between;gap:16px}
.path-sample-top h2 {font:400 28px/1.12 'Instrument Serif',serif;margin:8px 0 0}
.path-sample-top .eyebrow {font-size:12px}
.path-sample-close {min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:none;color:var(--ink);font:400 14px Inter,sans-serif;cursor:pointer}
.path-sample-dialog .app-stage {width:100%!important;max-width:100%!important;margin:20px 0 0!important;min-height:604px;padding:12px 0 32px!important;background:none;overflow:visible}
.path-sample-dialog .stage-image,.path-sample-dialog .stage-shade,.path-sample-dialog .stage-heading {display:none}
.path-sample-dialog .phone {max-width:calc(100% - 16px);box-shadow:0 12px 24px #18221922}
.path-sample-dialog .stage-caption {bottom:0;color:var(--muted);font-size:12px}
.path-sample-dialog [role="tabpanel"]:not([hidden]) {animation:path-dialog-in .2s ease}
.path-tabs a,.path-actions a,.path-try-hero,.path-link,.path-watch,.path-inline-button,.film-toggle,.path-detail>summary {transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
.path-tabs a:hover,.path-detail>summary:hover {color:var(--path-accent)}
.path-actions a:hover .line-arrow,.path-try-hero:hover .line-arrow {transform:translate(2px,-2px)}
.path-actions .line-arrow,.path-try-hero .line-arrow {transition:transform .18s ease}
.film-toggle:hover {background:#374a3a}
.film-toggle:active,.path-try-hero:active {transform:scale(.98)}
.path-sample-dialog[open],.path-video-dialog[open] {animation:path-dialog-in .22s ease}
@keyframes path-dialog-in {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@view-transition {navigation:auto}
::view-transition-old(root) {animation:path-fade-out .16s ease both}
::view-transition-new(root) {animation:path-fade-in .22s ease both}
@keyframes path-fade-out {to{opacity:0}}
@keyframes path-fade-in {from{opacity:0}to{opacity:1}}
@media(min-width:851px) {
  .header {display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(280px,1.1fr) minmax(230px,1fr);gap:0 24px!important;padding:20px 48px 12px!important;max-width:1440px;margin:auto}
  .header .brand {grid-column:1;grid-row:1}
  .header nav.path-tabs {grid-column:2;grid-row:1;order:initial;width:100%;max-width:420px;padding:0;margin:auto;gap:0;flex-wrap:nowrap}
  .header nav.path-tabs a {justify-content:center;padding:12px 20px;min-height:52px}
  .header .header-actions {grid-column:3;grid-row:1;justify-self:end;margin:0;gap:16px}
  .header .site-nav-panel {grid-column:1/-1;grid-row:2;order:initial;margin-top:16px;padding-top:8px;border-top:1px solid var(--line)}
  .header #site-navigation {gap:24px}
  .path-hero {padding-top:32px!important;padding-bottom:48px!important;gap:clamp(28px,3.5vw,52px)!important}
  .path-hero h1 {font-size:clamp(46px,4.35vw,64px)!important;line-height:1.08;letter-spacing:-.025em}
  .path-hero .eyebrow {line-height:1.65}
}
body[data-site-path] .footer {padding-top:32px}
@media(min-width:851px) and (max-width:1100px) {
  .header {grid-template-columns:minmax(240px,1fr) minmax(250px,1fr) minmax(190px,1fr);padding-inline:24px!important;column-gap:16px!important}
  .header .brand>span {font-size:22px;white-space:nowrap}
  .header nav.path-tabs a {padding-inline:12px}
  .header .header-actions {gap:12px}
}
body[data-site-path] .footer .crest {width:72px}
body[data-site-path] .footer-inner {gap:16px}
body[data-site-path] .footer-links {max-width:760px;margin:auto}
.path-section a:focus-visible,.path-detail>summary:focus-visible,.path-inline-button:focus-visible,.path-video-close:focus-visible {outline:2px solid var(--path-accent);outline-offset:4px}
@media(max-width:1050px) {
  .path-hero {grid-template-columns:1fr .65fr 1fr!important;gap:24px!important;padding-inline:32px!important}
  .path-hero h1 {font-size:46px!important}
  .path-hero-detail h2 {font-size:30px}
}
@media(max-width:760px) {
  .path-hero {grid-template-columns:minmax(0,1fr)!important;padding:32px 24px 40px!important;gap:28px!important}
  .path-hero h1 {font-size:clamp(42px,10vw,60px)!important;margin:16px 0}
  .path-hero h1 br:first-of-type {display:none}
  .path-hero h1 span {display:inline}
  .path-hero-title {max-width:500px}
  .path-subtitle {font-size:16px}
  .path-film {max-width:200px}
  .path-hero-detail {width:100%;max-width:500px;justify-self:center}
  .path-hero-detail h2 {font-size:36px}
  .path-hero-detail h2 br {display:none}
  .path-actions .button {width:100%}
  .path-section {width:calc(100% - 48px);padding-block:32px}
  .path-essentials,.path-bridge,.path-resources {grid-template-columns:minmax(0,1fr);gap:24px}
  .path-bridge h2 br,.path-section-heading h2 br {display:none}
  .path-enrollment {display:block;margin-top:0}
  .path-enrollment .btn {width:100%;margin-top:16px}
  .path-section h2 {font-size:32px}
  .path-tabs a {padding-inline:16px;min-height:52px}
  .path-questions h2 {margin-bottom:24px}
  .path-resources .path-section-heading p {font-size:15px}
  #pricing.path-visible {padding:32px 0}
  #pricing.path-visible .builder {gap:24px}
  #pricing.path-visible .options--3 {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  #pricing.path-visible .options--3 label {height:100%;min-height:128px;padding:12px 8px}
  #pricing.path-visible .options--3 .opt-title {font-size:13px}
  #pricing.path-visible .options--3 .opt-tag {font-size:12px}
  #pricing.path-visible .options--3 .opt-desc {display:none}
  #pricing.path-visible .options--2 {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  #pricing.path-visible .options--2 label {padding:16px 12px;height:100%}
  #pricing.path-visible .options--2 .opt-title {font-size:15px}
  #pricing.path-visible .options--2 .opt-tag {font-size:12px}
  #pricing.path-visible .opt-desc {font-size:12px}
  #pricing.path-visible .options--2 .opt-title {min-height:42px}
  #pricing.path-visible .builder-panel {padding:20px 16px}
  .path-detail-body .steps {grid-template-columns:1fr}
  body[data-site-path] .footer>.wrap {width:calc(100% - 48px)}
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {scroll-behavior:auto!important;transition:none!important;animation:none!important}
  ::view-transition-old(root),::view-transition-new(root) {animation:none!important}
}
