/* Switchbacks site v3 (Oct 20 2026). Linked last on every page. Brings the site in line with the app's
   redesign: warm ivory by day, deep navy by night with gold accents, soft cards, round tinted area badges,
   the winding trail with small cairns. Follows the device's light/dark setting, like the rest of the site. */
:root{
 --v3-bg:#F5F1E8;--v3-bg-2:#EFE9DD;--v3-card:#FFFDF8;--v3-ink:#1E3340;--v3-muted:#5D6B70;--v3-faint:#8B969A;
 --v3-line:rgba(30,51,64,.10);--v3-line-2:rgba(30,51,64,.16);--v3-primary:#2E5360;--v3-primary-ink:#FFFFFF;--v3-primary-hover:#244550;
 --v3-gold:#C9A066;--v3-trail:#C8A874;--v3-shadow:0 1px 2px rgba(30,51,64,.04),0 10px 28px rgba(30,51,64,.07);
 --v3-glass:rgba(255,253,248,.82);
 --v3-badge-heart:#EBD3CB;--v3-badge-kids:#D9E1D3;--v3-badge-legal:#EBDCC3;--v3-badge-mind:#D5DFE5;--v3-badge-body:#DFD8E8;--v3-badge-spirit:#E7DCC2;
 --paper:var(--v3-bg);--surface:var(--v3-card);--panel:var(--v3-bg-2);--ink:var(--v3-ink);--muted:var(--v3-muted);--line:#E3DCCF;--primary:var(--v3-primary);--on-primary:#fff;--gold:var(--v3-gold)
}
:root[data-theme="dark"]{
 --v3-bg:#0F2230;--v3-bg-2:#0C1C28;--v3-card:#16303F;--v3-ink:#EEF1EC;--v3-muted:#AFC0C5;--v3-faint:#7F959C;
 --v3-line:rgba(233,226,208,.10);--v3-line-2:rgba(233,226,208,.16);--v3-primary:#E9C784;--v3-primary-ink:#24200F;--v3-primary-hover:#F1D49A;
 --v3-gold:#E9C784;--v3-trail:#D9B66E;--v3-shadow:0 1px 2px rgba(0,0,0,.18),0 12px 32px rgba(0,0,0,.24);--v3-glass:rgba(15,34,48,.80);
 --v3-badge-heart:#4A3A3C;--v3-badge-kids:#33473F;--v3-badge-legal:#4A4236;--v3-badge-mind:#2F4553;--v3-badge-body:#3D3A51;--v3-badge-spirit:#4A4434;
 --line:#2A4352;--on-primary:#24200F
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
 --v3-bg:#0F2230;--v3-bg-2:#0C1C28;--v3-card:#16303F;--v3-ink:#EEF1EC;--v3-muted:#AFC0C5;--v3-faint:#7F959C;
 --v3-line:rgba(233,226,208,.10);--v3-line-2:rgba(233,226,208,.16);--v3-primary:#E9C784;--v3-primary-ink:#24200F;--v3-primary-hover:#F1D49A;
 --v3-gold:#E9C784;--v3-trail:#D9B66E;--v3-shadow:0 1px 2px rgba(0,0,0,.18),0 12px 32px rgba(0,0,0,.24);--v3-glass:rgba(15,34,48,.80);
 --v3-badge-heart:#4A3A3C;--v3-badge-kids:#33473F;--v3-badge-legal:#4A4236;--v3-badge-mind:#2F4553;--v3-badge-body:#3D3A51;--v3-badge-spirit:#4A4434;
 --line:#2A4352;--on-primary:#24200F
}}

/* ---------- the room ---------- */
html,body{background:var(--v3-bg)!important;color:var(--v3-ink)}
.eyebrow{font:600 11px/1.5 var(--sans)!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--v3-muted)!important}
h1,h2,h3{color:var(--v3-ink)}
.lede,.prose p,.section-head p{color:var(--v3-muted)}

/* ---------- header: a calm glass bar, like the app's ---------- */
.site-header{position:sticky!important;top:0;z-index:30;background:var(--v3-glass)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--v3-line)!important;margin:0 calc(50% - 50vw)!important;padding-left:max(20px,calc(50vw - 600px))!important;padding-right:max(20px,calc(50vw - 600px))!important;min-height:72px}
.site-header .brand span{font:500 26px/1 var(--serif)!important;letter-spacing:-.5px;color:var(--v3-ink)!important}
.main-nav a,.signin{color:var(--v3-ink)!important;font:500 14.5px/1 var(--sans)!important;opacity:.86}
.main-nav a:hover,.signin:hover{opacity:1}
.main-nav a[aria-current="page"]{opacity:1;text-decoration:none!important;box-shadow:inset 0 -2px 0 var(--v3-gold)}

/* ---------- buttons: deep teal by day, gold at night ---------- */
.button:not(.secondary){background:var(--v3-primary)!important;color:var(--v3-primary-ink)!important;border:0!important;border-radius:999px!important;box-shadow:0 8px 20px rgba(30,51,64,.14)!important}
.button:not(.secondary):hover{background:var(--v3-primary-hover)!important}
.button.secondary{background:var(--v3-card)!important;color:var(--v3-ink)!important;border:1px solid var(--v3-line-2)!important;border-radius:999px!important}
.text-link{color:var(--v3-ink)!important;text-decoration-color:var(--v3-gold)!important}

/* ---------- bands and cards ---------- */
.tinted-band,.section.tinted-band{background:var(--v3-bg-2)!important}
.benefit,.process-card,.area-detail,.story-teaser,.membership-strip,.cairn-panel,.content-callout,.why-me .statement,.boundaries{padding:clamp(22px,3vw,36px)!important;box-sizing:border-box;background:var(--v3-card)!important;border:1px solid var(--v3-line)!important;border-radius:22px!important;box-shadow:var(--v3-shadow)!important;color:var(--v3-ink)}
.process-card:nth-child(n){background:var(--v3-card)!important}
.benefit h3,.process-card h3,.area-detail h3{color:var(--v3-ink)!important}
.benefit p,.process-card p,.area-detail p{color:var(--v3-muted)!important}

/* ---------- the six areas: numbered rows with round badges, on a winding trail ---------- */
.path-map-section .orbit{counter-reset:v3area}
.path-map-section .orbit-item,.path-map-section .orbit-item:nth-of-type(n){counter-increment:v3area;display:flex!important;align-items:center;gap:14px;padding:14px 16px!important;background:var(--v3-card)!important;border:1px solid var(--v3-line)!important;border-radius:20px!important;box-shadow:var(--v3-shadow)!important;color:var(--v3-ink)!important;text-decoration:none}
.path-map-section .orbit-item:hover{border-color:var(--v3-line-2)!important;transform:translateY(-1px)}
.path-map-section .orbit-item>svg.sb-illustration{flex:none;width:58px!important;height:58px!important;padding:10px;box-sizing:border-box;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.5),transparent 62%),var(--v3-badge,var(--v3-badge-heart))!important}
.path-map-section .orbit-item[href$="#heart"]{--v3-badge:var(--v3-badge-heart)}.path-map-section .orbit-item[href$="#kids"]{--v3-badge:var(--v3-badge-kids)}.path-map-section .orbit-item[href$="#legal"]{--v3-badge:var(--v3-badge-legal)}
.path-map-section .orbit-item[href$="#mind"]{--v3-badge:var(--v3-badge-mind)}.path-map-section .orbit-item[href$="#body"]{--v3-badge:var(--v3-badge-body)}.path-map-section .orbit-item[href$="#spirit"]{--v3-badge:var(--v3-badge-spirit)}
.path-map-section .orbit-item strong{font:500 18px/1.25 var(--serif)!important;color:var(--v3-ink)!important}
.path-map-section .orbit-item strong::before{content:counter(v3area) ". "}
.path-map-section .orbit-item span{font:400 13.5px/1.45 var(--sans)!important;color:var(--v3-muted)!important}
.path-map-section .orbit-item::after{content:"›";margin-left:auto;font:400 24px/1 var(--sans);color:var(--v3-faint)}
.areas-numbered .area-detail h3::before{color:var(--v3-gold)!important}
.areas-numbered #heart{--v3-badge:var(--v3-badge-heart)}.areas-numbered #kids{--v3-badge:var(--v3-badge-kids)}.areas-numbered #legal{--v3-badge:var(--v3-badge-legal)}
.areas-numbered #mind{--v3-badge:var(--v3-badge-mind)}.areas-numbered #body{--v3-badge:var(--v3-badge-body)}.areas-numbered #spirit{--v3-badge:var(--v3-badge-spirit)}
@media(max-width:700px){
 .path-map-section .orbit{position:relative;padding-left:34px!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
 .path-map-section .orbit::before{content:"";position:absolute;left:8px;top:22px;bottom:22px;width:22px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 120' preserveAspectRatio='none'%3E%3Cpath d='M11 0C22 20 0 40 11 60S22 100 11 120' fill='none' stroke='%23C8A874' stroke-width='1.6'/%3E%3C/svg%3E") 0 0/22px 120px repeat-y;opacity:.9}
}

/* ---------- the app, inside phones ---------- */
.device{border-radius:42px!important;box-shadow:0 30px 60px rgba(10,22,30,.22)!important}

/* ---------- closing band and footer ---------- */
.last-invitation{color:var(--v3-ink)}
.site-footer{background:var(--v3-bg-2)!important;border-top:1px solid var(--v3-line)!important}
.site-footer a{color:var(--v3-ink)!important}
.footer-caption,.fine,.footer-bottom{color:var(--v3-muted)!important}

/* ---------- homepage hero, from Steven's two references: words left, two tilted phones right,
   topographic lines, a dashed gold trail with a cairn; a forest band and torn edge at night ---------- */
:root{--v3-hero-bg:#EFF2EF;--v3-hero-ink:#13232D;--v3-hero-muted:#3E4F57;--v3-hero-topo:url("sb-v3-topo-day.svg");--v3-hero-forest:url("sb-v3-forest-day.svg");--v3-hero-trail:#E1B85E;--v3-hero-cta:#2F5D74;--v3-hero-cta-ink:#fff;--v3-phone-frame:#1C2429}
:root[data-theme="dark"]{--v3-hero-bg:#13293A;--v3-hero-ink:#F5F1E8;--v3-hero-muted:#C9D3D6;--v3-hero-topo:url("sb-v3-topo-night.svg");--v3-hero-forest:url("sb-v3-forest-night.svg");--v3-hero-trail:#E8C25E;--v3-hero-cta:#F1CB6B;--v3-hero-cta-ink:#1C2126;--v3-phone-frame:#0B1015}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--v3-hero-bg:#13293A;--v3-hero-ink:#F5F1E8;--v3-hero-muted:#C9D3D6;--v3-hero-topo:url("sb-v3-topo-night.svg");--v3-hero-forest:url("sb-v3-forest-night.svg");--v3-hero-trail:#E8C25E;--v3-hero-cta:#F1CB6B;--v3-hero-cta-ink:#1C2126;--v3-phone-frame:#0B1015}}
.v3-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--v3-hero-bg);color:var(--v3-hero-ink);margin:0 calc(50% - 50vw);padding:56px max(20px,calc(50vw - 600px)) 110px}
.v3-hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.v3-hero-topo{position:absolute;inset:0;background:var(--v3-hero-topo) center/cover no-repeat}
.v3-hero-trails{position:absolute;right:max(0px,calc(50vw - 760px));top:20px;width:min(58vw,820px);height:auto;overflow:visible}
.v3-hero-trails path{fill:none;stroke:var(--v3-hero-trail);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:7 10}
.v3-hero-trails circle{fill:var(--v3-hero-trail)}
.v3-hero-trails .v3-trail-cairn ellipse{fill:#8FA4AB}.v3-hero-trails .v3-trail-cairn ellipse:nth-child(2){fill:#B4C2C5}.v3-hero-trails .v3-trail-cairn ellipse:nth-child(3){fill:#CBD5D6}.v3-hero-trails .v3-trail-cairn .top{fill:var(--v3-hero-trail)}
.v3-hero-forest{position:absolute;left:0;right:0;bottom:0;height:230px;background:var(--v3-hero-forest) center bottom/cover no-repeat}
.v3-hero-edge{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:34px;fill:var(--v3-bg);z-index:1}
.v3-hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;min-height:640px;padding:0!important;max-width:1200px;margin:0 auto}
.v3-hero-copy{max-width:600px}
.v3-hero h1{font:400 clamp(46px,5.6vw,86px)/1.03 var(--serif)!important;letter-spacing:-.025em!important;color:var(--v3-hero-ink)!important;margin:0 0 28px!important;max-width:9.5em}
.v3-hero .lede{font:400 clamp(17px,1.45vw,21px)/1.6 var(--sans)!important;color:var(--v3-hero-muted)!important;max-width:31em;margin:0 0 34px!important}
.v3-hero .hero-actions{margin:0 0 26px}
.v3-hero .button.v3-hero-cta{display:inline-flex;white-space:nowrap;align-items:center;gap:12px;font:500 19px/1 var(--sans)!important;padding:20px 32px!important;background:var(--v3-hero-cta)!important;color:var(--v3-hero-cta-ink)!important;box-shadow:0 12px 28px rgba(19,35,45,.18)!important}
.v3-hero .button.v3-hero-cta .sb-ui-icon{width:20px;height:20px}
.v3-hero-note{font:400 14.5px/1.6 var(--sans);color:var(--v3-hero-muted);max-width:34em;margin:0;opacity:.9}
.v3-hero-phones{position:relative;height:640px}
.v3-phone{position:absolute;width:286px;height:600px;border-radius:50px;background:var(--v3-phone-frame);padding:11px;box-shadow:0 2px 0 1px rgba(255,255,255,.06) inset,0 34px 60px rgba(12,24,32,.28),0 8px 18px rgba(12,24,32,.16)}
.v3-phone::before{content:"";position:absolute;top:21px;left:50%;transform:translateX(-50%);width:92px;height:26px;border-radius:20px;background:#070A0C;z-index:2}
.v3-phone-screen{width:100%;height:100%;border-radius:40px;overflow:hidden;background:#F7F3EA}
.v3-phone-screen img{width:100%;height:auto;display:block;padding-top:40px;background:inherit}
.v3-phone-screen img.dark{display:none}
:root[data-theme="dark"] .v3-phone-screen img.light{display:none}:root[data-theme="dark"] .v3-phone-screen img.dark{display:block}:root[data-theme="dark"] .v3-phone-screen{background:#0F2230}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .v3-phone-screen img.light{display:none}:root:not([data-theme="light"]) .v3-phone-screen img.dark{display:block}:root:not([data-theme="light"]) .v3-phone-screen{background:#0F2230}}
.v3-phone-a{left:2%;top:26px;transform:rotate(-5deg);z-index:2}
.v3-phone-b{left:44%;top:0;transform:rotate(6deg);z-index:1}
@media(max-width:980px){
 .v3-hero{padding-top:36px;padding-bottom:70px}
 .v3-hero-grid{grid-template-columns:minmax(0,1fr)!important;min-height:0;gap:20px}
 .v3-hero-copy{max-width:none}
 .v3-hero h1{font-size:clamp(40px,10.5vw,60px)!important;margin-bottom:20px!important}
 .v3-hero-phones{height:500px;max-width:460px;width:100%;margin:0 auto}
 .v3-phone{width:224px;height:470px;border-radius:40px;padding:9px}
 .v3-phone-screen{border-radius:32px}
 .v3-phone::before{top:17px;width:72px;height:20px}
 .v3-phone-screen img{padding-top:32px}
 .v3-phone-a{left:0}
 .v3-phone-b{left:auto;right:0}
 .v3-hero-trails{width:120vw;right:-30vw;top:auto;bottom:40px}
 .v3-hero-forest{height:150px}
}
@media(max-width:420px){.v3-phone{width:196px;height:410px}.v3-hero-phones{height:440px}}
.page-art .scene,.practice-art .scene{border-radius:24px!important;overflow:hidden!important}

/* ---------- Brand guide pass (Oct 21): area swatches and the logo lockup, matching the app ---------- */
:root{--sw-heart-bg:#F2DCD8;--sw-heart:#A8605A;--sw-spirit-bg:#F3E2C4;--sw-spirit:#A07024;--sw-mind-bg:#DCE3EE;--sw-mind:#4F6A90;
 --sw-kids-bg:#DCE5DA;--sw-kids:#4F6E4E;--sw-body-bg:#DFE1F0;--sw-body:#4A5A92;--sw-legal-bg:#F2DAD0;--sw-legal:#A85A3E}
:root[data-theme="dark"]{--sw-heart-bg:rgba(212,165,160,.13);--sw-heart:#DDB3AE;--sw-spirit-bg:rgba(214,161,92,.12);--sw-spirit:#DDBE8E;--sw-mind-bg:rgba(123,148,183,.15);--sw-mind:#A9BBD3;
 --sw-kids-bg:rgba(139,153,137,.16);--sw-kids:#B3C3AF;--sw-body-bg:rgba(110,125,180,.16);--sw-body:#AFB9DB;--sw-legal-bg:rgba(201,127,99,.13);--sw-legal:#DCA791}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--sw-heart-bg:rgba(212,165,160,.13);--sw-heart:#DDB3AE;--sw-spirit-bg:rgba(214,161,92,.12);--sw-spirit:#DDBE8E;--sw-mind-bg:rgba(123,148,183,.15);--sw-mind:#A9BBD3;
 --sw-kids-bg:rgba(139,153,137,.16);--sw-kids:#B3C3AF;--sw-body-bg:rgba(110,125,180,.16);--sw-body:#AFB9DB;--sw-legal-bg:rgba(201,127,99,.13);--sw-legal:#DCA791}}
.v3-swatch[data-area="heart"]{--sw-bg:var(--sw-heart-bg);--sw:var(--sw-heart)}.v3-swatch[data-area="spirit"]{--sw-bg:var(--sw-spirit-bg);--sw:var(--sw-spirit)}
.v3-swatch[data-area="mind"]{--sw-bg:var(--sw-mind-bg);--sw:var(--sw-mind)}.v3-swatch[data-area="kids"]{--sw-bg:var(--sw-kids-bg);--sw:var(--sw-kids)}
.v3-swatch[data-area="body"]{--sw-bg:var(--sw-body-bg);--sw:var(--sw-body)}.v3-swatch[data-area="legal"]{--sw-bg:var(--sw-legal-bg);--sw:var(--sw-legal)}
.v3-swatch{flex:none;width:60px;height:60px;border-radius:18px;display:grid!important;place-items:center;background:var(--sw-bg);color:var(--sw);margin:0 0 18px}
.v3-swatch svg{width:30px;height:30px;display:block}
.orbit-item .v3-swatch{margin:0 auto 10px}
/* logo lockup: the mark a touch larger beside the name */
.site-header .brand .sb-mark{width:44px!important;height:auto!important}
.v3-swatch svg,.v3-swatch svg *{stroke:var(--sw)!important;fill:none!important}
.v3-swatch svg{width:30px!important;height:30px!important}
.orbit-item .v3-swatch{margin:0!important}

/* ---------- Brand guide pass 2 (Oct 21, Steven): fuller swatches, as on the guide's boards ----------
   Saturated tiles with a soft paper grain, a faint ridge at the foot and an ivory line icon. By night the same tiles,
   deepened, so dark mode stays calm. */
:root{--swt-heart:linear-gradient(150deg,#DCA79F 0%,#C98A82 100%);--swt-spirit:linear-gradient(150deg,#E2B66C 0%,#CB9142 100%);--swt-mind:linear-gradient(150deg,#8097B2 0%,#58718F 100%);--swt-kids:linear-gradient(150deg,#8DA685 0%,#64835C 100%);--swt-body:linear-gradient(150deg,#D08A72 0%,#B66954 100%);--swt-legal:linear-gradient(150deg,#B7A5C9 0%,#9580AB 100%)}
:root[data-theme="dark"]{--swt-heart:linear-gradient(150deg,#8A645E 0%,#76524E 100%);--swt-spirit:linear-gradient(150deg,#917346 0%,#7E6033 100%);--swt-mind:linear-gradient(150deg,#52677D 0%,#3F5469 100%);--swt-kids:linear-gradient(150deg,#5A7158 0%,#475E46 100%);--swt-body:linear-gradient(150deg,#875C50 0%,#744A3F 100%);--swt-legal:linear-gradient(150deg,#6C6080 0%,#594E6C 100%)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--swt-heart:linear-gradient(150deg,#8A645E 0%,#76524E 100%);--swt-spirit:linear-gradient(150deg,#917346 0%,#7E6033 100%);--swt-mind:linear-gradient(150deg,#52677D 0%,#3F5469 100%);--swt-kids:linear-gradient(150deg,#5A7158 0%,#475E46 100%);--swt-body:linear-gradient(150deg,#875C50 0%,#744A3F 100%);--swt-legal:linear-gradient(150deg,#6C6080 0%,#594E6C 100%)}}
[data-area="heart"]{--swt:var(--swt-heart)}[data-area="spirit"]{--swt:var(--swt-spirit)}[data-area="mind"]{--swt:var(--swt-mind)}
[data-area="kids"]{--swt:var(--swt-kids)}[data-area="body"]{--swt:var(--swt-body)}[data-area="legal"]{--swt:var(--swt-legal)}
.v3-swatch,#view .v3-area-badge{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22120%22 height=%22120%22%3E%3Cfilter id=%22n%22%3E%3CfeTurbulence type=%22fractalNoise%22 baseFrequency=%22.9%22 numOctaves=%222%22 stitchTiles=%22stitch%22/%3E%3CfeColorMatrix values=%220 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0%22/%3E%3C/filter%3E%3Crect width=%22120%22 height=%22120%22 filter=%22url%28%23n%29%22 opacity=%22.35%22/%3E%3C/svg%3E") 0 0/120px 120px,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 60 60%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M0 60V47l11-9 7 5 12-13 10 9 7-5 13 12v14Z%22 fill=%22%23fff%22 opacity=%22.13%22/%3E%3Cpath d=%22M0 60v-7c12-4 22-2 32 1s20 2 28-2v8Z%22 fill=%22%23fff%22 opacity=%22.12%22/%3E%3C/svg%3E") center bottom/100% 55% no-repeat,radial-gradient(circle at 30% 22%,rgba(255,255,255,.22),transparent 60%),var(--swt)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),0 4px 12px rgba(30,51,64,.10)}
.v3-swatch svg,.v3-swatch svg *,#view .v3-area-badge svg,#view .v3-area-badge svg *{stroke:#FBF8F1!important;fill:none!important}
:root[data-theme="dark"] .v3-swatch svg *,:root[data-theme="dark"] #view .v3-area-badge svg *{stroke:rgba(245,241,232,.9)!important}
.areas-numbered .area-detail h3::before,.orbit-item strong::before{content:none!important}
.v3-swatch svg{width:28px!important;height:28px!important}
.area-detail .v3-swatch{width:68px;height:68px;border-radius:20px}
.area-detail .v3-swatch svg{width:32px!important;height:32px!important}
/* Steven's tagline above the homepage headline */
.v3-hero .v3-hero-eyebrow{margin:0 0 18px!important;font:600 12px/1.5 var(--sans,system-ui)!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--v3-hero-muted)!important}
