/* ==========================================================================
   Thrive Better Living — story design system
   Loaded on every page (header/footer/buttons) and as the ONLY stylesheet on
   the homepage. Namespaced .tb-* so it never fights the legacy tr-* styles
   that inner pages still use until they are rebuilt.
   ========================================================================== */

:root{
  --tb-ink:#0b1f19;
  --tb-forest:#0d3d35;
  --tb-moss:#1f5c4a;
  --tb-leaf:#3f8a6d;
  --tb-sage:#dfe9e2;
  --tb-mist:#f3f6f4;
  --tb-paper:#fbfbf9;
  --tb-white:#ffffff;
  --tb-gold:#d9a441;
  --tb-teal:#2f7f80;
  --tb-line:rgba(13,61,53,.14);
  --tb-line-dark:rgba(255,255,255,.14);
  --tb-text:#17302a;
  --tb-muted:#5a6f68;
  --tb-muted-dark:rgba(233,241,236,.72);
  --tb-font:"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --tb-serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --tb-radius:22px;
  --tb-radius-sm:14px;
  --tb-ease:cubic-bezier(.22,.61,.36,1);
  --tb-ease-out:cubic-bezier(.16,1,.3,1);
  --tb-wrap:1220px;
  --tb-gutter:clamp(20px,4vw,56px);
  --tb-header-h:76px;
  --p:0;
}

/* ---- Base (scoped to the story body) ---------------------------------- */
body.tb-body{margin:0;background:var(--tb-paper);color:var(--tb-text);font-family:var(--tb-font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
body.tb-body *,body.tb-body *::before,body.tb-body *::after{box-sizing:border-box}
body.tb-body h1,body.tb-body h2,body.tb-body h3,body.tb-body h4{margin:0;font-family:var(--tb-font);font-weight:600;letter-spacing:-.02em;line-height:1.05;color:inherit}
body.tb-body p{margin:0}
body.tb-body img,body.tb-body svg,body.tb-body video{max-width:100%;display:block}
:where(body.tb-body a:not(.tb-retained *)){color:inherit;text-decoration:none}
body.tb-body button{font:inherit;color:inherit}
body.tb-body :focus-visible{outline:3px solid var(--tb-gold);outline-offset:3px;border-radius:6px}

.tb-wrap{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto}
.tb-skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--tb-ink);color:#fff;padding:10px 16px;border-radius:10px}
.tb-skip:focus{top:12px}
.tb-em{font-family:var(--tb-serif);font-style:italic;font-weight:400;letter-spacing:0}
.tb-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf)}
.tb-eyebrow::before{content:"";width:22px;height:1.5px;background:currentColor;opacity:.7}
.tb-dark .tb-eyebrow{color:#9fd3b6}
.tb-lead{font-size:clamp(18px,1.6vw,21px);line-height:1.55;color:var(--tb-muted);max-width:60ch}
.tb-dark .tb-lead{color:var(--tb-muted-dark)}
.tb-h1{font-size:clamp(42px,6.4vw,92px);line-height:.98;letter-spacing:-.035em}
.tb-h2{font-size:clamp(34px,4.6vw,64px);line-height:1.02;letter-spacing:-.03em}
.tb-h3{font-size:clamp(22px,2vw,28px);letter-spacing:-.02em;line-height:1.15}
.tb-note{font-size:14px;color:var(--tb-muted);line-height:1.5}
.tb-dark .tb-note{color:var(--tb-muted-dark)}

/* ---- Buttons ----------------------------------------------------------- */
.tb-btn{--x:50%;--y:50%;position:relative;display:inline-flex;align-items:center;gap:12px;padding:16px 26px;border-radius:999px;background:var(--tb-forest);color:#fff;font-weight:600;font-size:16px;line-height:1;border:1px solid transparent;overflow:hidden;transition:transform .5s var(--tb-ease-out),box-shadow .5s var(--tb-ease-out),background .3s;isolation:isolate;cursor:pointer}
.tb-btn::before{content:"";position:absolute;inset:0;background:radial-gradient(140px 140px at var(--x) var(--y),rgba(255,255,255,.22),transparent 60%);opacity:0;transition:opacity .4s;z-index:-1}
.tb-btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px -18px rgba(11,31,25,.55)}
.tb-btn:hover::before{opacity:1}
.tb-btn svg{width:18px;height:18px;transition:transform .5s var(--tb-ease-out)}
.tb-btn:hover svg{transform:translateX(4px)}
.tb-btn--light{background:#fff;color:var(--tb-forest)}
.tb-btn--ghost{background:transparent;border-color:var(--tb-line);color:var(--tb-forest)}
.tb-btn--ghost:hover{background:rgba(13,61,53,.06);box-shadow:none}
.tb-dark .tb-btn--ghost{border-color:var(--tb-line-dark);color:#fff}
.tb-dark .tb-btn--ghost:hover{background:rgba(255,255,255,.08)}
.tb-btn--gold{background:var(--tb-gold);color:var(--tb-ink)}
.tb-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--tb-forest);border-bottom:1px solid var(--tb-line);padding-bottom:2px}
.tb-link svg{width:16px;height:16px;transition:transform .4s var(--tb-ease-out)}
.tb-link:hover svg{transform:translateX(4px)}
.tb-dark .tb-link{color:#fff;border-color:var(--tb-line-dark)}
.tb-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* ---- Header ------------------------------------------------------------ */
.tb-header{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--tb-header-h);display:flex;align-items:center;transition:background .5s,backdrop-filter .5s,box-shadow .5s,height .4s var(--tb-ease);color:#fff}
.tb-header--solid,.tb-header.is-scrolled{background:rgba(251,251,249,.82);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);box-shadow:0 1px 0 var(--tb-line);color:var(--tb-ink)}
.tb-header.is-scrolled{height:64px}
.tb-header__inner{display:flex;align-items:center;gap:28px;width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto}
.tb-brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:14px;line-height:1.05}
.tb-brand img{width:34px;height:auto}
.tb-brand small{display:block;font-weight:500;letter-spacing:.18em;font-size:9.5px;opacity:.75}
.tb-nav{display:none;gap:4px;margin-left:auto}
.tb-nav a{position:relative;padding:10px 13px;border-radius:999px;font-size:15px;font-weight:500;transition:background .3s}
.tb-nav a:hover{background:rgba(127,127,127,.14)}
.tb-nav a[aria-current="page"]::after{content:"";position:absolute;left:13px;right:13px;bottom:6px;height:2px;background:var(--tb-gold);border-radius:2px}
.tb-header__cta{display:none;margin-left:8px}
.tb-header--solid .tb-header__cta,.tb-header.is-scrolled .tb-header__cta{background:var(--tb-forest);color:#fff}
.tb-header:not(.is-scrolled):not(.tb-header--solid) .tb-header__cta{background:#fff;color:var(--tb-forest)}
.tb-menu-toggle{margin-left:auto;width:46px;height:46px;border-radius:999px;border:1px solid currentColor;background:transparent;display:grid;place-items:center;cursor:pointer;opacity:.9}
.tb-menu-toggle svg{width:22px;height:22px}
@media (min-width:980px){.tb-nav{display:flex}.tb-header__cta{display:inline-flex}.tb-menu-toggle{margin-left:0;display:none}}

.tb-menu{position:fixed;inset:0;z-index:120;background:var(--tb-ink);color:#fff;padding:24px var(--tb-gutter);border:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;display:none;flex-direction:column}
.tb-menu[open]{display:flex}
.tb-menu::backdrop{background:transparent}
.tb-menu__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10vh}
.tb-menu__close{width:46px;height:46px;border-radius:999px;border:1px solid var(--tb-line-dark);background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer}
.tb-menu__close svg{width:20px;height:20px}
.tb-menu nav{display:grid;gap:6px}
.tb-menu nav a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--tb-line-dark);font-size:clamp(24px,5vw,34px);font-weight:600;letter-spacing:-.02em}
.tb-menu nav a svg{width:22px;height:22px;opacity:.6}
.tb-menu__foot{margin-top:auto;display:flex;flex-wrap:wrap;gap:12px;padding-top:24px}

/* ---- Sections ---------------------------------------------------------- */
.tb-section{position:relative;padding:clamp(88px,11vw,150px) 0}
.tb-dark{background:var(--tb-ink);color:#fff}
.tb-mist{background:var(--tb-mist)}
.tb-head{display:grid;gap:18px;max-width:820px;margin-bottom:clamp(40px,6vw,72px)}
.tb-head--center{margin-inline:auto;text-align:center;justify-items:center}
.tb-grid{display:grid;gap:24px}
@media (min-width:760px){.tb-grid--2{grid-template-columns:1fr 1fr}.tb-grid--3{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1000px){.tb-grid--4{grid-template-columns:repeat(4,1fr)}}

/* Reveal */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1s var(--tb-ease-out),transform 1.1s var(--tb-ease-out);transition-delay:var(--d,0ms)}
[data-reveal].is-in{opacity:1;transform:none}

/* Pinned / scrubbed layout */
.tb-pin{position:relative;height:var(--pin-h,300vh)}
.tb-pin__stage{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.tb-pin__stage .tb-h2{font-size:clamp(28px,3.4vw,50px)}
.tb-pin__stage .tb-lead{font-size:clamp(16px,1.3vw,18px)}

/* ---- Hero -------------------------------------------------------------- */
.tb-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--tb-ink)}
.tb-hero__media{position:absolute;inset:0;z-index:0}
.tb-hero__media img,.tb-hero__media video{width:100%;height:100%;object-fit:cover;object-position:68% 40%;transform:scale(calc(1.04 + var(--p)*.12));transform-origin:62% 45%;will-change:transform}
.tb-hero__media video{position:absolute;inset:0;opacity:0;transition:opacity 1.2s}
.tb-hero__media video.is-ready{opacity:1}
.tb-hero__shade{position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(11,31,25,.92) 0%,rgba(11,31,25,.72) 38%,rgba(11,31,25,.15) 70%,rgba(11,31,25,.05) 100%),
  linear-gradient(180deg,rgba(11,31,25,.35) 0%,rgba(11,31,25,0) 30%,rgba(11,31,25,.85) 100%)}
.tb-hero__grid{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:radial-gradient(60% 60% at 70% 45%,#000 20%,transparent 100%);-webkit-mask-image:radial-gradient(60% 60% at 70% 45%,#000 20%,transparent 100%);opacity:calc(.5 + var(--p))}
.tb-hero__inner{position:relative;z-index:3;width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;padding:calc(var(--tb-header-h) + 5vh) 0 8vh;display:grid;gap:clamp(14px,2.2vh,24px);transform:translateY(calc(var(--p)*-60px));opacity:calc(1 - var(--p)*1.15)}
.tb-hero__inner .tb-h1{max-width:12ch}
.tb-hero__inner .tb-h1 span{display:block}
.tb-hero__inner .tb-lead{color:rgba(240,246,242,.86)}
.tb-hero__sub{max-width:52ch;color:rgba(240,246,242,.7);font-size:16px}
.tb-hero__foot{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;font-size:14px;color:rgba(240,246,242,.65)}
.tb-hero__foot span{display:inline-flex;align-items:center;gap:8px}
.tb-hero__foot span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--tb-gold)}
.tb-hero__points{position:absolute;inset:0;z-index:2;pointer-events:none}
.tb-hero__points svg{width:100%;height:100%}
.tb-hero__points path{fill:none;stroke:rgba(217,164,65,.85);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p)*1.6);}
.tb-hero__points circle{fill:var(--tb-gold);opacity:calc(var(--p)*2.2)}
.tb-hero__points text{font:600 11px/1 var(--tb-font);letter-spacing:.16em;text-transform:uppercase;fill:#fff;opacity:calc(var(--p)*2.2 - .3)}
.tb-hero__scroll{position:absolute;left:50%;bottom:22px;z-index:3;transform:translateX(-50%);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.65);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:calc(1 - var(--p)*3)}
.tb-hero__scroll i{width:1px;height:38px;background:linear-gradient(#fff,transparent);animation:tbDrop 2.2s var(--tb-ease) infinite}
@keyframes tbDrop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.tb-hero-pin{--pin-h:170vh}
.tb-hero-pin .tb-hero{position:sticky;top:0}
@media (min-width:980px){.tb-hero__inner{padding-bottom:11vh}}
@media (max-height:820px){.tb-hero__sub{display:none}.tb-hero__inner{gap:14px}}

/* ---- Clinical reasoning in motion ------------------------------------- */
.tb-reason .tb-pin__stage{align-items:stretch}
.tb-reason__layout{display:grid;gap:32px;width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;align-content:center}
@media (min-width:900px){.tb-reason__layout{grid-template-columns:1.05fr .95fr;gap:64px}}
.tb-figure{position:relative;aspect-ratio:1;max-height:62vh;margin-inline:auto;width:100%;max-width:520px}
.tb-figure svg{width:100%;height:100%}
.tb-figure .pose{opacity:0;transform:translateY(8px);transition:opacity .6s var(--tb-ease),transform .6s var(--tb-ease);transform-origin:center}
.tb-figure .pose.is-active{opacity:1;transform:none}
.tb-figure .ring{fill:none;stroke:rgba(255,255,255,.12);stroke-width:1}
.tb-figure .arc{fill:none;stroke:var(--tb-gold);stroke-width:2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p))}
.tb-figure .lines{stroke:#cfe6d8;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;fill:none}
.tb-figure .fill{fill:#cfe6d8}
.tb-figure .aid{stroke:var(--tb-gold);stroke-width:4;fill:none;stroke-linecap:round}
.tb-figure .floor{stroke:rgba(255,255,255,.25);stroke-width:1.5}
.tb-figure__num{position:absolute;left:0;top:0;font-family:var(--tb-serif);font-style:italic;font-size:clamp(64px,9vw,120px);line-height:1;color:rgba(255,255,255,.14)}
.tb-steps{display:grid;gap:6px;counter-reset:s}
.tb-step{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--tb-line-dark);opacity:.42;transition:opacity .5s}
.tb-step p{display:none}.tb-step.is-active p{display:block}
.tb-step.is-active{opacity:1}
.tb-step b{font-size:12px;letter-spacing:.14em;color:var(--tb-gold);padding-top:6px}
.tb-step h3{font-size:clamp(20px,2vw,28px)}
.tb-step p{margin-top:6px;color:var(--tb-muted-dark);max-width:44ch}
.tb-step__bar{grid-column:2;height:2px;background:rgba(255,255,255,.1);border-radius:2px;overflow:hidden;margin-top:12px}
.tb-step__bar i{display:block;height:100%;width:100%;background:var(--tb-gold);transform:scaleX(var(--w,0));transform-origin:left;transition:transform .2s linear}

/* ---- Movement system (Person / Task / Equipment / Environment) -------- */
.tb-system{display:grid;gap:40px}
@media (min-width:1000px){.tb-system{grid-template-columns:1.1fr .9fr;align-items:center;gap:64px}}
.tb-model{position:relative;aspect-ratio:1;max-width:620px;margin-inline:auto;width:100%;perspective:1400px}
.tb-model__plane{position:absolute;inset:6%;border-radius:50%;border:1px solid var(--tb-line);transform:rotateX(58deg);background:radial-gradient(circle,rgba(13,61,53,.06),transparent 70%)}
.tb-model__plane::before,.tb-model__plane::after{content:"";position:absolute;inset:18%;border-radius:50%;border:1px dashed var(--tb-line)}
.tb-model__plane::after{inset:36%}
.tb-model svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.tb-model svg line{stroke:var(--tb-line);stroke-width:1.5;transition:stroke .4s}
.tb-model svg line.is-on{stroke:var(--tb-gold);stroke-width:2}
.tb-node{position:absolute;width:132px;height:132px;margin:-66px 0 0 -66px;border-radius:50%;border:1px solid var(--tb-line);background:rgba(255,255,255,.9);backdrop-filter:blur(6px);display:grid;place-content:center;justify-items:center;gap:6px;cursor:pointer;transition:transform .6s var(--tb-ease-out),box-shadow .6s,border-color .4s,background .4s;transform:translateZ(0)}
.tb-node svg{position:static;width:30px;height:30px;stroke:var(--tb-forest);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tb-node b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-forest)}
.tb-node:hover{transform:translateY(-6px)}
.tb-node.is-active{background:var(--tb-forest);border-color:var(--tb-forest);box-shadow:0 30px 60px -24px rgba(13,61,53,.6),0 0 0 10px rgba(13,61,53,.07);transform:translateY(-8px) scale(1.06)}
.tb-node.is-active svg{stroke:#fff}
.tb-node.is-active b{color:#fff}
.tb-node--core{width:120px;height:120px;margin:-60px 0 0 -60px;background:var(--tb-ink);border-color:var(--tb-ink);color:#fff;cursor:default;left:50%;top:50%}
.tb-node--core b{color:#fff;font-size:11px}
.tb-node--core span{font-family:var(--tb-serif);font-style:italic;font-size:22px;line-height:1}
.tb-node[data-node="person"]{left:50%;top:12%}
.tb-node[data-node="task"]{left:86%;top:38%}
.tb-node[data-node="equipment"]{left:72%;top:84%}
.tb-node[data-node="environment"]{left:28%;top:84%}
.tb-node[data-node="staff"]{left:14%;top:38%}
@media (max-width:640px){.tb-node{width:96px;height:96px;margin:-48px 0 0 -48px}.tb-node svg{width:22px;height:22px}.tb-node b{font-size:10px}.tb-node--core{width:92px;height:92px;margin:-46px 0 0 -46px}}
.tb-panel{background:#fff;border:1px solid var(--tb-line);border-radius:var(--tb-radius);padding:clamp(24px,3vw,36px);box-shadow:0 30px 60px -40px rgba(13,61,53,.35)}
.tb-panel__title{display:flex;align-items:baseline;gap:14px}
.tb-panel__title b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:20px;color:var(--tb-leaf)}
.tb-factors{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.tb-factors li{padding:12px 14px;border-radius:12px;background:var(--tb-mist);font-size:15px;font-weight:500;animation:tbPop .6s var(--tb-ease-out) both;animation-delay:calc(var(--i)*60ms)}
@keyframes tbPop{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tb-panel__copy{margin-top:20px;color:var(--tb-muted)}
.tb-panel__quote{margin-top:24px;padding-top:20px;border-top:1px solid var(--tb-line);font-family:var(--tb-serif);font-style:italic;font-size:22px;line-height:1.3;color:var(--tb-forest)}

/* ---- Two carers → one -------------------------------------------------- */
.tb-transition__layout{display:grid;gap:36px;width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;align-content:center}
@media (min-width:960px){.tb-transition__layout{grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}}
.tb-scene{position:relative;aspect-ratio:4/3;width:100%;max-width:560px;max-height:60vh;margin-inline:auto}
.tb-scene svg{width:100%;height:100%}
.tb-scene .carer{transition:opacity .8s var(--tb-ease),transform 1s var(--tb-ease)}
.tb-scene .carer--two{opacity:calc(1.25 - var(--p)*1.5);transform:translateX(calc(var(--p)*80px))}
.tb-scene .aid{opacity:calc(var(--p)*3 - 1)}
.tb-scene .ln{stroke:#d9e8de;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;fill:none}
.tb-scene .ln--gold{stroke:var(--tb-gold)}
.tb-scene .dot{fill:#d9e8de}
.tb-scene .floor{stroke:rgba(255,255,255,.25);stroke-width:1.5}
.tb-scene__badge{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--tb-line-dark);font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.tb-scene__badge i{width:8px;height:8px;border-radius:50%;background:var(--tb-gold)}
.tb-checklist{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px}
.tb-checklist li{display:flex;align-items:center;gap:12px;padding:9px 14px;font-size:15px;border-radius:12px;border:1px solid var(--tb-line-dark);opacity:.35;transition:opacity .5s,background .5s,transform .5s var(--tb-ease-out)}
.tb-checklist li.is-on{opacity:1;background:rgba(255,255,255,.06);transform:translateX(6px)}
.tb-checklist li i{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--tb-gold);display:grid;place-items:center;flex:none}
.tb-checklist li i svg{width:12px;height:12px;stroke:var(--tb-gold);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.5);transition:.4s var(--tb-ease-out)}
.tb-checklist li.is-on i svg{opacity:1;transform:none}
.tb-statements{display:grid;gap:14px;margin-top:28px}
@media (min-width:700px){.tb-statements{grid-template-columns:1fr 1fr}}
.tb-statement{padding:16px 18px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.06);border:1px solid var(--tb-line-dark);font-size:15px;line-height:1.45}
.tb-statement b{display:block;font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:21px;margin-bottom:6px;color:#fff}

/* ---- Philosophy -------------------------------------------------------- */
.tb-philo__big{font-size:clamp(40px,7vw,96px);letter-spacing:-.035em;line-height:.98}
.tb-philo__qual{font-family:var(--tb-serif);font-style:italic;font-size:clamp(22px,3vw,36px);color:var(--tb-leaf);margin-top:18px}
.tb-principles{display:grid;gap:16px;margin-top:clamp(40px,5vw,64px)}
@media (min-width:640px){.tb-principles{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.tb-principles{grid-template-columns:repeat(5,1fr)}}
.tb-obj{--rx:0deg;--ry:0deg;position:relative;padding:28px 22px 24px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .2s ease-out,box-shadow .5s;transform-style:preserve-3d;min-height:260px;display:flex;flex-direction:column;gap:16px}
.tb-obj:hover{box-shadow:0 40px 60px -40px rgba(13,61,53,.5)}
.tb-obj__ico{width:72px;height:72px;border-radius:20px;background:linear-gradient(145deg,var(--tb-mist),#fff);border:1px solid var(--tb-line);display:grid;place-items:center;transform:translateZ(30px);box-shadow:0 20px 30px -22px rgba(13,61,53,.5)}
.tb-obj__ico svg{width:34px;height:34px;stroke:var(--tb-forest);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;animation:tbIdle 6s ease-in-out infinite;animation-delay:calc(var(--i)*-1.2s)}
@keyframes tbIdle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-3deg)}}
.tb-obj h3{font-size:22px;transform:translateZ(18px)}
.tb-obj p{color:var(--tb-muted);font-size:15px;transform:translateZ(10px)}
.tb-obj b{margin-top:auto;font-size:12px;letter-spacing:.14em;color:var(--tb-leaf)}

/* ---- Rehabilitation journey ------------------------------------------- */
.tb-rehab{position:relative;overflow:hidden;color:#fff;background:var(--tb-ink)}
.tb-rehab__media{position:absolute;inset:0;z-index:0}
.tb-rehab__media img,.tb-rehab__media video{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.28;transform:scale(calc(1.06 + var(--p)*.08))}
.tb-rehab__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,var(--tb-ink) 0%,rgba(11,31,25,.55) 40%,rgba(11,31,25,.6) 60%,var(--tb-ink) 100%)}
.tb-rehab .tb-wrap{position:relative;z-index:2}
.tb-journey{margin-top:clamp(40px,6vw,72px);position:relative}
.tb-journey svg{width:100%;height:auto;overflow:visible}
.tb-journey .base{fill:none;stroke:rgba(255,255,255,.14);stroke-width:2}
.tb-journey .draw{fill:none;stroke:var(--tb-gold);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p))}
.tb-journey .pt{fill:var(--tb-ink);stroke:rgba(255,255,255,.4);stroke-width:2;transition:.4s}
.tb-journey .pt.is-on{fill:var(--tb-gold);stroke:var(--tb-gold)}
.tb-stages{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:8px}
.tb-stages div{opacity:.4;transition:opacity .4s}
.tb-stages div.is-on{opacity:1}
.tb-stages b{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold);margin-bottom:6px}
.tb-stages span{font-size:13.5px;color:var(--tb-muted-dark);line-height:1.4;display:block}
@media (max-width:760px){.tb-stages{grid-template-columns:repeat(3,1fr);gap:14px}}

/* ---- Services ---------------------------------------------------------- */
.tb-services{display:grid;gap:16px}
@media (min-width:700px){.tb-services{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.tb-services{grid-template-columns:repeat(4,1fr)}}
.tb-service{--rx:0deg;--ry:0deg;position:relative;display:flex;flex-direction:column;gap:14px;padding:26px 24px 22px;min-height:300px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .2s ease-out,box-shadow .5s,border-color .4s;overflow:hidden}
.tb-service::after{content:"";position:absolute;inset:auto -30% -40% auto;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(217,164,65,.18),transparent 65%);opacity:0;transition:opacity .5s}
.tb-service:hover{box-shadow:0 40px 70px -40px rgba(13,61,53,.5);border-color:rgba(13,61,53,.3)}
.tb-service:hover::after{opacity:1}
.tb-service__top{display:flex;justify-content:space-between;align-items:baseline}
.tb-service__num{font-family:var(--tb-serif);font-style:italic;font-size:22px;color:var(--tb-leaf)}
.tb-service__price{font-weight:600;font-size:15px;color:var(--tb-forest)}
.tb-service__price small{font-weight:500;color:var(--tb-muted);margin-left:4px;font-size:12px}
.tb-service h3{font-size:22px;line-height:1.15}
.tb-service p{color:var(--tb-muted);font-size:15px}
.tb-service__foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--tb-line)}
.tb-service__foot a{font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:8px;color:var(--tb-forest)}
.tb-service__foot a svg{width:16px;height:16px;transition:transform .4s var(--tb-ease-out)}
.tb-service__foot a:hover svg{transform:translateX(4px)}
.tb-service__foot a.muted{color:var(--tb-muted);font-weight:500}
.tb-service--dark{background:var(--tb-forest);color:#fff;border-color:var(--tb-forest)}
.tb-service--dark h3,.tb-service--dark p,.tb-service--dark .tb-service__price,.tb-service--dark .tb-service__foot a{color:#fff}
.tb-service--dark .tb-service__foot{border-color:var(--tb-line-dark)}
.tb-services__note{margin-top:22px}

/* ---- Ceiling-track signature ------------------------------------------ */
.tb-track .tb-pin__stage{flex-direction:column;justify-content:center;gap:24px}
.tb-track__head{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.tb-track__head .tb-h2{max-width:14ch}
.tb-track__caption{max-width:34ch;text-align:right}
.tb-track__caption b{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold);margin-bottom:6px}
.tb-track__caption span{font-size:clamp(17px,1.5vw,20px);line-height:1.4;color:#fff}
.tb-track__art{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto}
.tb-track__art svg{width:100%;height:auto;overflow:visible}
.tb-track__art .rail{stroke:#cfe6d8;stroke-width:6;stroke-linecap:round}
.tb-track__art .rail-shadow{stroke:rgba(255,255,255,.08);stroke-width:14;stroke-linecap:round}
.tb-track__art .ln{stroke:#cfe6d8;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;fill:none}
.tb-track__art .ln-soft{stroke:rgba(207,230,216,.45)}
.tb-track__art .gold{stroke:var(--tb-gold)}
.tb-track__art .fill{fill:#cfe6d8}
.tb-track__art .fill-soft{fill:rgba(207,230,216,.18)}
.tb-track__art .carriage{transform:translateX(calc(var(--p)*560px))}
.tb-track__art .sling{transform:translateY(calc(var(--lift,77)*1px))}
.tb-track__art .strap{transform-box:fill-box;transform-origin:top center;transform:scaleY(calc(1 + var(--lift,77)/70))}
.tb-track__art .zone{fill:none;stroke:rgba(217,164,65,.0);stroke-dasharray:6 6;stroke-width:1.5;transition:stroke .5s}
.tb-track__art .zone.is-on{stroke:rgba(217,164,65,.8)}
.tb-track__art .lbl{font:600 12px/1 var(--tb-font);letter-spacing:.14em;text-transform:uppercase;fill:rgba(255,255,255,.55)}
.tb-track__art .lbl.is-on{fill:var(--tb-gold)}
.tb-track__steps{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.tb-track__steps div{padding-top:12px;border-top:1px solid var(--tb-line-dark);font-size:13px;color:var(--tb-muted-dark);transition:.4s}
.tb-track__steps div.is-on{border-color:var(--tb-gold);color:#fff}
.tb-track__steps b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;color:inherit}
@media (max-width:760px){.tb-track__head{flex-direction:column;align-items:flex-start}.tb-track__caption{text-align:left}.tb-track__steps{grid-template-columns:repeat(5,minmax(0,1fr));font-size:11px}.tb-track__steps span{display:none}}

/* ---- Suitability lens -------------------------------------------------- */
.tb-lens{display:grid;gap:40px}
@media (min-width:1000px){.tb-lens{grid-template-columns:.9fr 1.1fr;align-items:center;gap:64px}}
.tb-wheel{position:relative;aspect-ratio:1;max-width:520px;width:100%;margin-inline:auto;perspective:1200px}
.tb-wheel__ring{position:absolute;inset:0;border-radius:50%;transform:rotateX(18deg) rotate(var(--rot,0deg));transition:transform 1s var(--tb-ease-out);transform-style:preserve-3d}
.tb-wheel__ring::before{content:"";position:absolute;inset:10%;border-radius:50%;border:1px solid var(--tb-line);background:radial-gradient(circle,rgba(13,61,53,.05),transparent 70%)}
.tb-wheel__ring::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px dashed var(--tb-line)}
.tb-wheel__seg{position:absolute;left:50%;top:50%;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;border:1px solid var(--tb-line);background:rgba(255,255,255,.92);display:grid;place-content:center;justify-items:center;gap:4px;cursor:pointer;transform:rotate(var(--a)) translateY(-200px) rotate(calc(var(--a)*-1 - var(--rot,0deg)));transition:transform 1s var(--tb-ease-out),background .4s,border-color .4s,box-shadow .5s}
.tb-wheel__seg svg{width:26px;height:26px;stroke:var(--tb-forest);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tb-wheel__seg b{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-forest)}
.tb-wheel__seg.is-active{background:var(--tb-forest);border-color:var(--tb-forest);box-shadow:0 30px 50px -22px rgba(13,61,53,.7)}
.tb-wheel__seg.is-active svg{stroke:#fff}.tb-wheel__seg.is-active b{color:#fff}
.tb-wheel__core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;width:150px}
.tb-wheel__core b{display:block;font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:28px;line-height:1.05;color:var(--tb-forest)}
.tb-wheel__core span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-muted)}
@media (max-width:560px){.tb-wheel__seg{width:84px;height:84px;margin:-42px 0 0 -42px;transform:rotate(var(--a)) translateY(-140px) rotate(calc(var(--a)*-1 - var(--rot,0deg)))}.tb-wheel__seg svg{width:20px;height:20px}.tb-wheel__seg b{font-size:9px}.tb-wheel__core{width:110px}.tb-wheel__core b{font-size:20px}}
.tb-lens__nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tb-lens__nav button{padding:8px 14px;border-radius:999px;border:1px solid var(--tb-line);background:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:.3s}
.tb-lens__nav button.is-active{background:var(--tb-forest);border-color:var(--tb-forest);color:#fff}

/* ---- Plans ------------------------------------------------------------- */
.tb-plans{display:grid;gap:40px}
@media (min-width:1000px){.tb-plans{grid-template-columns:1fr 1fr;gap:64px;align-items:start}}
.tb-flow{position:relative;display:grid;gap:0;padding-left:44px}
.tb-flow::before{content:"";position:absolute;left:15px;top:14px;bottom:14px;width:2px;background:var(--tb-line)}
.tb-flow::after{content:"";position:absolute;left:15px;top:14px;bottom:14px;width:2px;background:var(--tb-gold);transform:scaleY(var(--p));transform-origin:top}
.tb-flow__item{position:relative;padding:14px 0 14px 4px;border-bottom:1px solid var(--tb-line);opacity:.45;transition:opacity .4s}
.tb-flow__item.is-on{opacity:1}
.tb-flow__item::before{content:"";position:absolute;left:-36px;top:22px;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--tb-line);transition:.4s;z-index:1}
.tb-flow__item.is-on::before{background:var(--tb-gold);border-color:var(--tb-gold)}
.tb-flow__item h3{font-size:20px}
.tb-flow__item p{color:var(--tb-muted);font-size:15px;margin-top:4px}
.tb-doc{position:sticky;top:110px;background:#fff;border:1px solid var(--tb-line);border-radius:var(--tb-radius);padding:28px;box-shadow:0 40px 70px -50px rgba(13,61,53,.45)}
.tb-doc__head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--tb-line);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-muted)}
.tb-doc__head i{width:8px;height:8px;border-radius:50%;background:var(--tb-leaf);display:inline-block;margin-right:8px;animation:tbPulse 2s infinite}
@keyframes tbPulse{0%,100%{box-shadow:0 0 0 0 rgba(63,138,109,.5)}50%{box-shadow:0 0 0 8px rgba(63,138,109,0)}}
.tb-doc__rows{display:grid;gap:10px;margin-top:18px}
.tb-doc__row{display:grid;grid-template-columns:120px 1fr;gap:12px;font-size:14px;align-items:start;opacity:.35;transition:opacity .4s}
.tb-doc__row.is-on{opacity:1}
.tb-doc__row b{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf);padding-top:3px}
.tb-doc__row span{background:var(--tb-mist);border-radius:8px;padding:8px 10px;min-height:34px}
.tb-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tb-chips span{padding:7px 12px;border-radius:999px;border:1px solid var(--tb-line);font-size:13px;font-weight:500;background:#fff}

/* ---- Local Authorities ------------------------------------------------- */
.tb-dash{display:grid;gap:12px;margin-top:clamp(32px,4vw,56px)}
@media (min-width:640px){.tb-dash{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.tb-dash{grid-template-columns:repeat(4,1fr)}}
.tb-tile{padding:22px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.05);border:1px solid var(--tb-line-dark);display:flex;flex-direction:column;gap:16px;min-height:150px}
.tb-tile b{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-muted-dark)}
.tb-tile span{font-family:var(--tb-serif);font-style:italic;font-size:30px;line-height:1;color:#fff}
.tb-tile em{font-style:normal;margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#9fd3b6}
.tb-tile em::before{content:"";width:6px;height:6px;border-radius:50%;background:#9fd3b6;box-shadow:0 0 0 0 rgba(159,211,182,.6);animation:tbPulse 2.4s infinite}
.tb-tile--wide{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;min-height:0}
.tb-tile--wide p{max-width:60ch;color:var(--tb-muted-dark)}
.tb-la__foot{display:grid;gap:20px;margin-top:32px;align-items:center}
@media (min-width:900px){.tb-la__foot{grid-template-columns:1fr auto}}
.tb-cite{font-size:13px;color:var(--tb-muted-dark);max-width:70ch}
.tb-cite a{text-decoration:underline;text-underline-offset:3px}

/* ---- Providers hotspots ----------------------------------------------- */
.tb-prov{display:grid;gap:36px}
@media (min-width:1000px){.tb-prov{grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}}
.tb-room{position:relative;border-radius:var(--tb-radius);overflow:hidden;aspect-ratio:4/3;background:var(--tb-ink);box-shadow:0 50px 80px -50px rgba(13,61,53,.6)}
.tb-room img{width:100%;height:100%;object-fit:cover;object-position:center}
.tb-room::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,25,0) 50%,rgba(11,31,25,.55))}
.tb-hot{position:absolute;z-index:2;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:var(--tb-forest);display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 0 rgba(255,255,255,.55);animation:tbHot 2.6s infinite;animation-delay:calc(var(--i)*.35s);transition:transform .4s var(--tb-ease-out),background .3s}
.tb-hot::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--tb-forest);transition:.3s}
.tb-hot:hover{transform:scale(1.12)}
.tb-hot.is-active{background:var(--tb-gold);animation:none;transform:scale(1.15)}
.tb-hot.is-active::before{background:var(--tb-ink)}
@keyframes tbHot{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%{box-shadow:0 0 0 14px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.tb-hotlist{display:grid;gap:6px;margin-top:22px}
.tb-hotlist button{text-align:left;padding:14px 16px;border-radius:12px;border:1px solid var(--tb-line);background:#fff;cursor:pointer;display:grid;gap:4px;transition:.3s}
.tb-hotlist button b{font-size:15px}
.tb-hotlist button span{font-size:14px;color:var(--tb-muted);display:none}
.tb-hotlist button.is-active{border-color:var(--tb-forest);background:var(--tb-mist)}
.tb-hotlist button.is-active span{display:block}

/* ---- How we work (horizontal) ----------------------------------------- */
.tb-process .tb-pin__stage{flex-direction:column;justify-content:center;gap:28px;align-items:stretch}
.tb-process__head{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.tb-process__bar{width:180px;height:2px;background:var(--tb-line);position:relative;flex:none}
.tb-process__bar i{position:absolute;inset:0;background:var(--tb-forest);transform:scaleX(var(--p));transform-origin:left}
.tb-rail{display:flex;gap:18px;padding-left:max(var(--tb-gutter),calc((100% - var(--tb-wrap))/2));transform:translateX(calc(var(--p)*var(--rail-shift,-60%)));will-change:transform;transition:transform .08s linear}
.tb-card{flex:0 0 min(78vw,420px);min-height:min(48vh,380px);padding:28px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 50px -40px rgba(13,61,53,.4)}
.tb-card b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:44px;line-height:1;color:var(--tb-leaf)}
.tb-card h3{font-size:clamp(24px,2.4vw,32px)}
.tb-card p{color:var(--tb-muted);margin-top:auto;max-width:34ch}
.tb-card--end{background:var(--tb-forest);color:#fff;border-color:var(--tb-forest)}
.tb-card--end b{color:var(--tb-gold)}.tb-card--end p{color:var(--tb-muted-dark)}

/* ---- Triage ------------------------------------------------------------ */
.tb-triage{display:grid;gap:14px}
@media (min-width:860px){.tb-triage{grid-template-columns:repeat(3,1fr)}}
.tb-tri{padding:26px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:flex;flex-direction:column;gap:12px;min-height:250px;position:relative;overflow:hidden}
.tb-tri::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c)}
.tb-tri--red{--c:#c94f3d}.tb-tri--amber{--c:#d9a441}.tb-tri--green{--c:#3f8a6d}
.tb-tri b{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
.tb-tri b::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--c)}
.tb-tri h3{font-size:24px}
.tb-tri p{color:var(--tb-muted);font-size:15px}
.tb-tri__time{font-family:var(--tb-serif);font-style:italic;font-size:30px;color:var(--tb-forest)}
.tb-emergency{margin-top:18px;padding:18px 22px;border-radius:var(--tb-radius-sm);background:#fff4f2;border:1px solid rgba(201,79,61,.3);color:#7a2a20;font-size:15px;line-height:1.5}
.tb-emergency strong{color:#a53a2a}

/* ---- Booking + contract ------------------------------------------------ */
.tb-book{display:grid;gap:40px}
@media (min-width:1000px){.tb-book{grid-template-columns:1fr 1fr;gap:64px;align-items:start}}
.tb-quick{display:grid;gap:10px;margin-top:24px}
.tb-quick a{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;border-radius:14px;border:1px solid var(--tb-line);background:#fff;transition:.3s var(--tb-ease-out)}
.tb-quick a:hover{transform:translateX(6px);border-color:var(--tb-forest)}
.tb-quick a b{font-size:16px}.tb-quick a small{display:block;color:var(--tb-muted);font-size:13.5px;margin-top:2px}
.tb-quick a em{font-style:normal;font-weight:600;white-space:nowrap;color:var(--tb-forest)}
.tb-book__meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-size:14px;color:var(--tb-muted)}
.tb-book__meta span{display:inline-flex;align-items:center;gap:8px}
.tb-book__meta span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--tb-leaf)}
.tb-form{background:var(--tb-ink);color:#fff;border-radius:var(--tb-radius);padding:clamp(24px,3.5vw,40px);display:grid;gap:14px}
.tb-form h3{font-size:clamp(26px,3vw,38px)}
.tb-form p{color:var(--tb-muted-dark)}
.tb-form label{display:grid;gap:6px;font-size:13px;font-weight:600;letter-spacing:.02em}
.tb-form label span{font-weight:400;color:var(--tb-muted-dark);font-size:12px;margin-left:6px}
.tb-form input,.tb-form select,.tb-form textarea{width:100%;padding:13px 14px;border-radius:10px;border:1px solid var(--tb-line-dark);background:rgba(255,255,255,.06);color:#fff;font:inherit;font-size:15px}
.tb-form select option{color:var(--tb-ink)}
.tb-form input::placeholder,.tb-form textarea::placeholder{color:rgba(255,255,255,.4)}
.tb-form input:focus,.tb-form select:focus,.tb-form textarea:focus{outline:2px solid var(--tb-gold);outline-offset:0;border-color:transparent}
.tb-form__row{display:grid;gap:14px}
@media (min-width:600px){.tb-form__row{grid-template-columns:1fr 1fr}}
.tb-form__consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--tb-muted-dark);font-weight:400}
.tb-form__consent input{width:18px;height:18px;margin-top:2px;flex:none}
.tb-form__consent a{text-decoration:underline;text-underline-offset:3px;color:#fff}
.tb-form .tb-btn{justify-self:start;background:var(--tb-gold);color:var(--tb-ink);margin-top:6px}
.tb-form__status{padding:12px 14px;border-radius:10px;background:rgba(159,211,182,.16);border:1px solid rgba(159,211,182,.4);font-size:14px}
.tb-form__status--error{background:rgba(201,79,61,.16);border-color:rgba(201,79,61,.45)}
.tb-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---- Trust strip ------------------------------------------------------- */
.tb-trust{padding:40px 0;border-top:1px solid var(--tb-line);border-bottom:1px solid var(--tb-line);background:#fff;overflow:hidden}
.tb-marquee{display:flex;gap:64px;width:max-content;animation:tbMarquee 38s linear infinite}
.tb-trust:hover .tb-marquee{animation-play-state:paused}
@keyframes tbMarquee{to{transform:translateX(-50%)}}
.tb-marquee__item{display:inline-flex;align-items:center;gap:16px;color:var(--tb-muted);font-size:14px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.tb-marquee__item img{height:52px;width:auto}
.tb-marquee__item i{width:6px;height:6px;border-radius:50%;background:var(--tb-gold)}

/* ---- Final ------------------------------------------------------------- */
.tb-final{position:relative;overflow:hidden;color:#fff;background:var(--tb-ink);min-height:100vh;display:flex;align-items:center}
.tb-final__media{position:absolute;inset:0}
.tb-final__media img,.tb-final__media video{width:100%;height:100%;object-fit:cover;opacity:.22;transform:scale(calc(1.15 - var(--p)*.1))}
.tb-final__shade{position:absolute;inset:0;background:radial-gradient(70% 60% at 50% 40%,rgba(11,31,25,.2),var(--tb-ink) 100%)}
.tb-final .tb-wrap{position:relative;text-align:center;display:grid;justify-items:center;gap:26px;padding:120px 0 90px}
.tb-final .tb-h1{max-width:14ch}
.tb-final__sig{margin-top:60px;display:grid;justify-items:center;gap:14px;opacity:calc(var(--p)*2.4 - 1.2);transform:translateY(calc((1 - var(--p))*40px))}
.tb-final__sig img{width:64px;height:auto}
.tb-final__sig b{font-size:14px;letter-spacing:.24em;text-transform:uppercase}
.tb-final__sig span{font-family:var(--tb-serif);font-style:italic;font-size:22px;color:var(--tb-muted-dark)}

/* ---- Footer ------------------------------------------------------------ */
.tb-footer{background:#07150f;color:#fff;padding:64px 0 120px;font-size:14.5px}
.tb-footer__grid{display:grid;gap:36px}
@media (min-width:860px){.tb-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.tb-footer__brand{display:grid;gap:14px;max-width:34ch;color:var(--tb-muted-dark)}
.tb-footer__brand .tb-brand{color:#fff}
.tb-footer h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#9fd3b6;margin-bottom:14px}
.tb-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.tb-footer li a{color:var(--tb-muted-dark);transition:color .3s}
.tb-footer li a:hover{color:#fff}
.tb-footer__bar{margin-top:44px;padding-top:22px;border-top:1px solid var(--tb-line-dark);display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;color:rgba(233,241,236,.55);font-size:13px}
@media (min-width:980px){.tb-footer{padding-bottom:64px}}

/* ---- Mobile sticky CTA ------------------------------------------------- */
.tb-sticky{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;display:flex;gap:8px;padding:8px;border-radius:999px;background:rgba(11,31,25,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 40px -20px rgba(0,0,0,.6);transform:translateY(120%);transition:transform .6s var(--tb-ease-out)}
.tb-sticky.is-in{transform:none}
.tb-sticky a{flex:1;justify-content:center;padding:14px 10px;font-size:14.5px}
.tb-sticky a:first-child{background:#fff;color:var(--tb-forest)}
.tb-sticky a:last-child{background:transparent;border-color:var(--tb-line-dark);color:#fff}
@media (min-width:980px){.tb-sticky{display:none}}

/* ---- Narrow screens: vertical storytelling, nothing pinned ------------ */
@media (max-width:899px){
  .tb-pin:not(.tb-hero-pin){height:auto!important}
  .tb-pin:not(.tb-hero-pin) .tb-pin__stage{position:relative;height:auto;min-height:0;padding:72px 0;overflow:visible;display:block}
  .tb-track .tb-pin__stage,.tb-process .tb-pin__stage{display:flex}
  .tb-figure{max-height:none;max-width:360px}
  .tb-step p{display:block}
  .tb-scene{max-height:none}
  .tb-rail{transform:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-right:var(--tb-gutter);padding-bottom:12px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tb-rail::-webkit-scrollbar{display:none}
  .tb-rail .tb-card{scroll-snap-align:start}
  .tb-process__bar{display:none}
  .tb-track__art .carriage{transform:translateX(calc(var(--p)*560px))}
}

/* ---- Reduced motion ---------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1;transform:none;transition:none}
  .tb-pin{height:auto!important}
  .tb-pin__stage{position:relative;height:auto;min-height:0;padding:64px 0;overflow:visible}
  .tb-hero-pin{height:auto}
  .tb-hero__inner{transform:none;opacity:1}
  .tb-hero__media img{transform:none}
  .tb-hero__scroll,.tb-hero__scroll i{animation:none;display:none}
  .tb-rail{transform:none;flex-wrap:wrap;padding-inline:var(--tb-gutter)}
  .tb-rail .tb-card{flex:1 1 280px}
  .tb-marquee{animation:none;flex-wrap:wrap;width:auto;gap:28px}
  .tb-hot,.tb-obj__ico svg,.tb-doc__head i,.tb-tile em::before{animation:none}
  .tb-figure .pose,.tb-step,.tb-checklist li,.tb-flow__item,.tb-doc__row,.tb-stages div,.tb-track__steps div{opacity:1}
  .tb-scene .carer--two{opacity:.35;transform:none}
  .tb-final__sig{opacity:1;transform:none}
  .tb-track__art .carriage{transform:translateX(560px)}
  .tb-track__art .sling{transform:translateY(0)}
  .tb-track__art .strap{transform:none}
  .tb-journey .draw,.tb-figure .arc,.tb-hero__points path{stroke-dashoffset:0}
  .tb-hero__points circle,.tb-hero__points text{opacity:1}
}

/* ---- v2 (round-table audit): decorative motion removed, new components -- */
.tb-hero__grid{display:none}
.tb-obj,.tb-service{transform:none;transition:box-shadow .5s,transform .5s var(--tb-ease-out),border-color .4s}
.tb-obj:hover,.tb-service:hover{transform:translateY(-4px)}
.tb-obj__ico{width:64px;height:64px;border-radius:18px;transform:none;box-shadow:none}
.tb-obj__ico svg{width:30px;height:30px;animation:none}
.tb-obj h3,.tb-obj p{transform:none}
.tb-obj{min-height:240px}
.tb-frame{margin-top:16px;padding:20px 22px;border-radius:var(--tb-radius-sm);border:1px solid var(--tb-line);background:#fff;font-size:14.5px;line-height:1.55;color:var(--tb-muted)}
.tb-frame b{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf);margin-bottom:8px}
.tb-frame abbr{text-decoration:underline dotted;cursor:help}
.tb-stages--4{grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:760px){.tb-stages--4{grid-template-columns:repeat(2,1fr)}}
.tb-evidence{display:grid;gap:12px;margin-top:clamp(28px,4vw,48px)}
@media (min-width:640px){.tb-evidence{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.tb-evidence{grid-template-columns:repeat(4,1fr)}}
.tb-ev{padding:22px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.05);border:1px solid var(--tb-line-dark);display:flex;flex-direction:column;gap:10px}
.tb-ev b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:clamp(38px,4vw,52px);line-height:1;color:var(--tb-gold)}
.tb-ev span{font-size:15px;line-height:1.45;color:#fff}
.tb-ev small{margin-top:auto;font-size:12px;color:var(--tb-muted-dark);line-height:1.4}
.tb-la__grid{display:grid;gap:24px;margin-top:clamp(28px,4vw,48px)}
@media (min-width:900px){.tb-la__grid{grid-template-columns:1fr 1fr;gap:40px}}
.tb-la__col .tb-h3{margin-bottom:14px}
.tb-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tb-list li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.5;color:var(--tb-muted-dark)}
.tb-list li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;background:var(--tb-gold)}
.tb-list li b{color:#fff;font-weight:600}
.tb-list li a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.tb-list--light li{color:var(--tb-muted)}
.tb-list--light li b{color:var(--tb-text)}
.tb-cite{max-width:80ch}
.tb-emergency a{color:inherit}
.tb-rehab__media video,.tb-final__media video{position:absolute;inset:0;opacity:0;transition:opacity 1.4s}
.tb-rehab__media video.is-ready{opacity:.3}
.tb-final__media video.is-ready{opacity:.24}
.tb-hero__media video{transform:none}
.tb-trust{padding:56px 0}
.tb-creds{display:grid;gap:14px;margin-top:22px}
@media (min-width:700px){.tb-creds{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.tb-creds{grid-template-columns:repeat(4,1fr)}}
.tb-cred{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--tb-line);border-radius:var(--tb-radius-sm);background:var(--tb-paper)}
.tb-cred img{height:48px;width:auto;flex:none}
.tb-cred i{width:48px;height:48px;border-radius:14px;background:var(--tb-mist);display:grid;place-items:center;flex:none;color:var(--tb-forest)}
.tb-cred i svg{width:24px;height:24px}
.tb-cred b{display:block;font-size:15px;margin-bottom:4px}
.tb-cred span{font-size:13.5px;color:var(--tb-muted);line-height:1.45}
.tb-marquee{display:none}

/* ---- Inner pages ------------------------------------------------------- */
.tb-page-hero{padding:calc(var(--tb-header-h) + clamp(56px,9vw,120px)) 0 clamp(40px,6vw,72px);background:var(--tb-paper)}
.tb-page-hero.tb-dark{background:var(--tb-ink)}
.tb-page-hero .tb-wrap{display:grid;gap:18px;max-width:900px;margin-left:max(var(--tb-gutter),calc((100% - var(--tb-wrap))/2))}
.tb-page-hero__title{font-size:clamp(38px,5.6vw,76px)}
.tb-cards3{display:grid;gap:16px}
@media (min-width:800px){.tb-cards3{grid-template-columns:repeat(3,1fr)}}
.tb-cards3 article{padding:26px 24px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:flex;flex-direction:column;gap:12px;min-height:220px}
.tb-cards3 article b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf)}
.tb-cards3 article h3{font-size:22px;line-height:1.15}
.tb-cards3 article p{color:var(--tb-muted);font-size:15px}
.tb-cards3 article .tb-link{margin-top:auto;align-self:flex-start}
.tb-clinical{margin-top:22px;padding:18px 22px;border-left:3px solid var(--tb-gold);background:#fff;border-radius:0 var(--tb-radius-sm) var(--tb-radius-sm) 0;font-size:15px;color:var(--tb-muted);max-width:80ch}
.tb-two{display:grid;gap:32px}
@media (min-width:860px){.tb-two{grid-template-columns:1fr 1fr;gap:56px}}
.tb-page-cta__inner{display:grid;gap:26px;align-items:center}
@media (min-width:960px){.tb-page-cta__inner{grid-template-columns:1.2fr .8fr}.tb-page-cta__inner .tb-actions{justify-content:flex-end}}
.tb-equip{display:grid;gap:16px}
@media (min-width:640px){.tb-equip{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1080px){.tb-equip{grid-template-columns:repeat(3,1fr)}}
.tb-equip__item{padding:20px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:flex;flex-direction:column;gap:10px}
.tb-equip__img{aspect-ratio:4/3;border-radius:var(--tb-radius-sm);background:var(--tb-mist);display:grid;place-items:center;overflow:hidden}
.tb-equip__img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.tb-equip__item h3{font-size:20px}
.tb-booklayout{display:grid;gap:28px}
@media (min-width:1000px){.tb-booklayout{grid-template-columns:1.25fr .75fr;gap:40px;align-items:start}}
.tb-bookpanel{background:#fff;border:1px solid var(--tb-line);border-radius:var(--tb-radius);padding:clamp(18px,3vw,32px)}
.tb-bookpanel__bar{display:flex;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-muted);padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--tb-line)}
.tb-bookhelp{position:sticky;top:96px;padding:24px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:grid;gap:10px}
.tb-bookhelp details{border-top:1px solid var(--tb-line);padding:10px 0}
.tb-bookhelp summary{cursor:pointer;font-weight:600;font-size:15px}
.tb-bookhelp details p{margin-top:8px;font-size:14.5px;color:var(--tb-muted);line-height:1.5}
.tb-contact{display:grid;gap:28px}
@media (min-width:960px){.tb-contact{grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}}
.tb-contact__aside{position:sticky;top:96px}
.tb-posts{display:grid;gap:16px}
@media (min-width:800px){.tb-posts{grid-template-columns:repeat(3,1fr)}}
.tb-post{padding:26px 24px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:flex;flex-direction:column;gap:12px}
.tb-post time{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-leaf)}
.tb-post h2{font-size:22px;line-height:1.15}
.tb-post p{color:var(--tb-muted);font-size:15px}
.tb-post .tb-link{margin-top:auto;align-self:flex-start}
.tb-pagination{margin-top:28px;display:flex;justify-content:center;gap:12px}
.tb-pagination a,.tb-pagination span{padding:8px 14px;border-radius:999px;border:1px solid var(--tb-line);font-size:14px}
.tb-inner .latepoint-book-form-wrapper{font-family:var(--tb-font)}
/* LatePoint follows the theme: brand green instead of its default blue, theme radii and type colours. */
.tb-body .latepoint-book-form-wrapper,.tb-body .latepoint-w,.tb-body .latepoint{--latepoint-brand-primary:var(--tb-forest);--latepoint-timeslot-selected-color:var(--tb-forest);--latepoint-headings-color:var(--tb-ink);--latepoint-body-color:var(--tb-text);--latepoint-color-text-faded:var(--tb-muted);--latepoint-border-radius:14px;--latepoint-border-radius-lg:18px;--latepoint-border-radius-md:14px;--latepoint-border-radius-sm:10px}
.tb-body .latepoint-book-form-wrapper .os-item-price,.tb-body .latepoint-book-form-wrapper .os-item-price-value,.tb-body .latepoint-book-form-wrapper .os-price-value{color:var(--tb-forest)!important;font-weight:600}
.tb-body .latepoint-book-form-wrapper .latepoint-btn-primary{background:var(--tb-forest)!important;border-color:var(--tb-forest)!important;color:#fff!important}
.tb-body .latepoint-book-form-wrapper .os-item.selected,.tb-body .latepoint-book-form-wrapper .os-item.os-selected,.tb-body .latepoint-book-form-wrapper .os-item:hover{border-color:var(--tb-forest)!important}
.tb-body .latepoint-book-form-wrapper .os-item-img-w svg,.tb-body .latepoint-book-form-wrapper .os-item-img-w path{fill:var(--tb-leaf)!important}
.tb-body .latepoint-book-form-wrapper .os-item-img-w img{filter:grayscale(1) sepia(.35) hue-rotate(100deg) saturate(.9) opacity(.5)}

/* ---- Booking flow (priority-first) ------------------------------------ */
.tb-bookflow .tb-wrap{display:grid;gap:clamp(36px,5vw,64px)}
.tb-bookflow .tb-wrap>*,.tb-bookstep,.tb-bookpanel{min-width:0}
.tb-bookpanel{overflow-x:auto}
.tb-bookpanel .latepoint-book-form-wrapper,.tb-bookpanel .latepoint-form-w{max-width:100%}
.tb-stepper{list-style:none;margin:0;padding:0;position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tb-stepper__s{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--tb-muted);position:relative;z-index:1;transition:color .4s}
.tb-stepper__s i{width:32px;height:32px;border-radius:50%;border:2px solid var(--tb-line);background:#fff;display:grid;place-items:center;font-style:normal;font-size:13px;transition:.5s var(--tb-ease-out)}
.tb-stepper__s.is-current{color:var(--tb-forest)}
.tb-stepper__s.is-current i{border-color:var(--tb-forest);box-shadow:0 0 0 6px rgba(13,61,53,.1);transform:scale(1.08)}
.tb-stepper__s.is-done{color:var(--tb-forest)}
.tb-stepper__s.is-done i{background:var(--tb-forest);border-color:var(--tb-forest);color:#fff}
.tb-stepper__line{position:absolute;left:16px;right:16px;top:15px;height:2px;background:var(--tb-line);z-index:0}
.tb-stepper__line i{display:block;height:100%;background:var(--tb-forest);transform:scaleX(var(--w,0));transform-origin:left;transition:transform 1.2s var(--tb-ease-out)}
.tb-bookstep{transition:opacity .6s,filter .6s}
.tb-bookstep.is-waiting{opacity:.5;filter:saturate(.5)}
.tb-bookstep.is-waiting:hover{opacity:1;filter:none}
.tb-bookstep__head{display:grid;gap:8px;margin-bottom:22px}
.tb-bookstep__head .tb-h2{font-size:clamp(26px,3.2vw,40px)}
.tb-rag{display:grid;gap:14px}
@media (min-width:800px){.tb-rag{grid-template-columns:repeat(3,1fr)}}
.tb-ragcard{--c:#3f8a6d;--ct:#2c6b52;position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 24px 22px 30px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);overflow:hidden;transition:transform .5s var(--tb-ease-out),box-shadow .5s,border-color .4s;min-height:260px}
.tb-ragcard--red{--c:#c94f3d;--ct:#a33a2a}.tb-ragcard--amber{--c:#d9a441;--ct:#7a5a1a}.tb-ragcard--green{--c:#3f8a6d;--ct:#2c6b52}
.tb-ragcard__bar{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c);transform:scaleY(0);transform-origin:top;transition:transform .9s var(--tb-ease-out) .2s}
.tb-ragcard.is-in .tb-ragcard__bar,.tb-ragcard.is-on .tb-ragcard__bar{transform:none}
.tb-ragcard:hover{transform:translateY(-4px);box-shadow:0 30px 50px -36px rgba(13,61,53,.5);border-color:var(--c)}
.tb-ragcard.is-on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent),0 30px 50px -36px rgba(13,61,53,.5)}
.tb-ragcard__top{display:flex;align-items:baseline;gap:10px}
.tb-ragcard__top b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ct)}
.tb-ragcard__top em{font-style:normal;font-weight:600;font-size:15px;color:var(--tb-text)}
.tb-ragcard__time{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1;color:var(--tb-forest)}
.tb-ragcard__copy{font-size:15px;color:var(--tb-muted);line-height:1.5}
.tb-ragcard__note{font-size:13px;color:var(--tb-muted);padding-top:10px;border-top:1px solid var(--tb-line);margin-top:auto;line-height:1.45}
.tb-ragcard__check{position:absolute;right:16px;top:16px;width:28px;height:28px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;transform:scale(0);transition:transform .45s var(--tb-ease-out)}
.tb-ragcard__check svg{width:14px;height:14px}
.tb-ragcard.is-on .tb-ragcard__check{transform:none}
.tb-svcpick{display:grid;gap:8px}
.tb-svcrow{display:grid;grid-template-columns:44px 1fr auto 28px;align-items:center;gap:14px;padding:16px 18px;border-radius:14px;background:#fff;border:1px solid var(--tb-line);transition:transform .35s var(--tb-ease-out),border-color .3s,box-shadow .3s,background .3s}
.tb-svcrow:hover{transform:translateX(6px);border-color:var(--tb-forest)}
.tb-svcrow.is-on{border-color:var(--tb-forest);background:var(--tb-paper);box-shadow:0 0 0 3px rgba(13,61,53,.12)}
.tb-svcrow__num{font-family:var(--tb-serif);font-style:italic;font-size:20px;color:var(--tb-leaf-text)}
.tb-svcrow__body b{display:block;font-size:16px}
.tb-svcrow__body small{display:block;color:var(--tb-muted);font-size:13.5px;margin-top:2px;line-height:1.4}
.tb-svcrow__price{font-weight:600;color:var(--tb-forest);white-space:nowrap}
.tb-svcrow__go svg{width:18px;height:18px;color:var(--tb-forest);transition:transform .4s var(--tb-ease-out)}
.tb-svcrow:hover .tb-svcrow__go svg{transform:translateX(4px)}
.tb-booksummary{--c:#3f8a6d;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid var(--tb-line);margin-bottom:14px;animation:tbPop .6s var(--tb-ease-out) both}
.tb-booksummary--red{--c:#c94f3d}.tb-booksummary--amber{--c:#d9a441}.tb-booksummary--green{--c:#3f8a6d}
.tb-booksummary__rag{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px}
.tb-booksummary__rag i{width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 20%,transparent)}
.tb-booksummary__svc{font-weight:600}
.tb-booksummary__price{color:var(--tb-muted);font-size:14px}
.tb-booksummary__change{margin-left:auto;font-size:13px;text-decoration:underline;text-underline-offset:3px;color:var(--tb-forest)}
.tb-bookfoot{margin-top:18px;display:grid;gap:6px}
.tb-bookfoot details{border-top:1px solid var(--tb-line);padding:10px 0}
.tb-bookfoot summary{cursor:pointer;font-weight:600;font-size:15px}
.tb-bookfoot details p{margin-top:8px;font-size:14.5px;color:var(--tb-muted);line-height:1.5}
.tb-bookfoot .tb-link{margin-top:10px;align-self:flex-start}
@media (max-width:600px){.tb-svcrow{grid-template-columns:1fr auto}.tb-svcrow__num,.tb-svcrow__go{display:none}.tb-stepper__s{font-size:12px;gap:6px}.tb-stepper__s i{width:26px;height:26px;font-size:12px}.tb-stepper__line{top:12px}}

/* ---- Booking flow v2 (redesign): no dimming, service grid, calendar + sticky summary ---- */
.tb-bookflow .tb-wrap{display:grid;gap:clamp(40px,6vw,72px)}
.tb-bookstep{opacity:1!important;filter:none!important}
.tb-stepper{max-width:720px}
.tb-stepper__s{background:var(--tb-mist);padding-right:10px;width:max-content}
.tb-ragcard{min-height:250px}
.tb-svcgrid{display:grid;gap:12px}
@media (min-width:640px){.tb-svcgrid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.tb-svcgrid{grid-template-columns:repeat(3,1fr)}}
.tb-svccard{display:flex;flex-direction:column;gap:8px;padding:20px 20px 18px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line);transition:transform .4s var(--tb-ease-out),border-color .3s,box-shadow .4s,background .3s;min-height:170px}
.tb-svccard:hover{transform:translateY(-3px);border-color:var(--tb-forest);box-shadow:0 24px 40px -30px rgba(13,61,53,.5)}
.tb-svccard.is-on{border-color:var(--tb-forest);background:var(--tb-paper);box-shadow:0 0 0 3px rgba(13,61,53,.12)}
.tb-svccard__top{display:flex;justify-content:space-between;align-items:baseline}
.tb-svccard__num{font-family:var(--tb-serif);font-style:italic;font-size:18px;color:var(--tb-leaf-text)}
.tb-svccard__price{font-weight:600;color:var(--tb-forest)}
.tb-svccard b{font-size:16.5px;line-height:1.2}
.tb-svccard small{color:var(--tb-muted);font-size:13.5px;line-height:1.45}
.tb-svccard__go{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--tb-forest);padding-top:10px}
.tb-svccard__go svg{width:16px;height:16px;transition:transform .4s var(--tb-ease-out)}
.tb-svccard:hover .tb-svccard__go svg{transform:translateX(4px)}
.tb-svccard.is-on .tb-svccard__go svg{display:none}
.tb-book3{display:grid;gap:20px;align-items:start}
@media (min-width:1000px){.tb-book3{grid-template-columns:minmax(0,1fr) 320px;gap:28px}}
.tb-bookpanel{background:#fff;border:1px solid var(--tb-line);border-radius:var(--tb-radius);padding:clamp(14px,2.5vw,28px);overflow:hidden;min-width:0}
.tb-bookpanel .latepoint-book-form-wrapper,.tb-bookpanel .latepoint-form-w,.tb-bookpanel .latepoint-w{max-width:100%!important;width:100%!important}
.tb-bookaside{display:grid;gap:14px;position:sticky;top:96px}
.tb-booksummary{--c:#3f8a6d;display:grid;gap:8px;padding:20px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line);animation:tbPop .6s var(--tb-ease-out) both;margin-bottom:0}
.tb-booksummary--red{--c:#c94f3d}.tb-booksummary--amber{--c:#d9a441}.tb-booksummary--green{--c:#3f8a6d}
.tb-booksummary__rag{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px}
.tb-booksummary__rag i{width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 20%,transparent);flex:none}
.tb-booksummary__svc{font-weight:600;font-size:18px;line-height:1.2}
.tb-booksummary__price{color:var(--tb-muted);font-size:13.5px;line-height:1.45}
.tb-booksummary .tb-link{font-size:13.5px;align-self:flex-start;margin-top:4px}
.tb-bookaside__note{padding:14px 16px;border-radius:12px;background:#fff4f2;border:1px solid rgba(201,79,61,.3);color:#7a2a20;font-size:14px;line-height:1.5}
.tb-bookaside__help{display:grid;gap:4px;padding:6px 20px 16px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line)}
.tb-bookaside__help details{border-bottom:1px solid var(--tb-line);padding:12px 0}
.tb-bookaside__help summary{cursor:pointer;font-weight:600;font-size:14.5px}
.tb-bookaside__help details p{margin-top:8px;font-size:14px;color:var(--tb-muted);line-height:1.5}
.tb-bookaside__help .tb-link{margin-top:12px;font-size:14px;align-self:flex-start}
.tb-bookwait{display:grid;justify-items:center;text-align:center;gap:8px;padding:clamp(36px,6vw,64px) 24px;border-radius:var(--tb-radius);border:1.5px dashed var(--tb-line);background:rgba(255,255,255,.6)}
.tb-bookwait__arrow{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--tb-line);display:grid;place-items:center;color:var(--tb-forest);animation:tbNudge 2.2s var(--tb-ease) infinite}
.tb-bookwait__arrow svg{width:20px;height:20px}
@keyframes tbNudge{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.tb-bookwait b{font-size:18px}
.tb-bookwait span:last-child{color:var(--tb-muted);font-size:14.5px;max-width:44ch}
@media (max-width:600px){.tb-stepper{gap:4px}.tb-stepper__s{padding-right:6px}.tb-ragcard{min-height:0;padding:22px 20px 18px 26px}}
/* Booking elements are never hidden behind scroll-reveal; the accent bars animate on their own. */
.tb-bookflow [data-reveal]{opacity:1;transform:none;transition:none}
.tb-page-hero [data-reveal]{opacity:1;transform:none;transition:none}
/* Hero legibility over the bright part of the photo: frosted ghost button, stronger shade below 1200px. */
.tb-hero .tb-btn--ghost{background:rgba(11,31,25,.42);border-color:rgba(255,255,255,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.tb-hero .tb-btn--ghost{color:#fff}
.tb-hero .tb-btn--ghost:hover{background:rgba(11,31,25,.6);color:#fff}
@media (max-width:1000px){.tb-hero__scroll{display:none}}
.tb-contact__phone{margin-top:20px;padding:16px 18px;border-radius:12px;background:#fff;border:1px solid var(--tb-line);font-size:15px}
.tb-contact__phone a{display:block;font-size:22px;font-weight:600;color:var(--tb-forest);margin:2px 0}
.tb-contact__phone span{display:block;font-size:13.5px;color:var(--tb-muted)}
.tb-footer__contact{display:grid;gap:2px}
.tb-footer__contact a{color:#fff;font-weight:600;font-size:17px}
.tb-footer__contact span{font-size:13px;color:rgba(233,241,236,.55)}
.tb-hero .tb-eyebrow{color:#c9e6d6;text-shadow:0 1px 12px rgba(11,31,25,.6)}
.tb-hero__inner .tb-lead,.tb-hero__foot{text-shadow:0 1px 14px rgba(11,31,25,.55)}
@media (max-width:1200px){.tb-hero__shade{background:linear-gradient(90deg,rgba(11,31,25,.94) 0%,rgba(11,31,25,.8) 45%,rgba(11,31,25,.42) 75%,rgba(11,31,25,.3) 100%),linear-gradient(180deg,rgba(11,31,25,.62) 0%,rgba(11,31,25,.05) 34%,rgba(11,31,25,.9) 100%)}}
.tb-ragcard__bar{transform:none;animation:tbBar .9s var(--tb-ease-out) .15s both}
@keyframes tbBar{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.tb-svccard{animation:tbPop .5s var(--tb-ease-out) both;animation-delay:calc(var(--i,0)*60ms)}

/* ---- v4: contrast (WCAG AA) + mobile completeness ---------------------- */
:root{--tb-leaf-text:#2c6b52}
.tb-eyebrow,.tb-philo__qual,.tb-panel__title b,.tb-service__num,.tb-cards3 article b,.tb-obj b,.tb-frame b,.tb-doc__row b,.tb-post time,.tb-list--light li::before{color:var(--tb-leaf-text)}
.tb-dark .tb-eyebrow,.tb-form .tb-eyebrow,.tb-page-hero.tb-dark .tb-eyebrow{color:#9fd3b6}
.tb-tri--red{--ct:#a33a2a}.tb-tri--amber{--ct:#7a5a1a}.tb-tri--green{--ct:#2c6b52}
.tb-tri b{color:var(--ct)}
.tb-form select{color:#fff}
.tb-form select option{color:#111;background:#fff}
.tb-form input::placeholder,.tb-form textarea::placeholder{color:rgba(255,255,255,.58)}
.tb-hero__shade{background:linear-gradient(90deg,rgba(11,31,25,.92) 0%,rgba(11,31,25,.74) 38%,rgba(11,31,25,.18) 70%,rgba(11,31,25,.08) 100%),linear-gradient(180deg,rgba(11,31,25,.62) 0%,rgba(11,31,25,0) 34%,rgba(11,31,25,.88) 100%)}
.tb-hero__foot{color:rgba(240,246,242,.82)}
.tb-process__hint{display:none;font-size:13px;color:var(--tb-muted);padding:0 var(--tb-gutter)}
@media (max-width:899px){
  .tb-hero__points{display:none}
  .tb-process__hint{display:block}
  .tb-track__art{overflow:visible}
  .tb-model{max-width:340px}
  .tb-scene__badge{position:static;margin-bottom:12px}
}
@media (max-height:700px) and (min-width:900px){
  .tb-pin:not(.tb-hero-pin){height:auto!important}
  .tb-pin:not(.tb-hero-pin) .tb-pin__stage{position:relative;height:auto;min-height:0;padding:72px 0;overflow:visible}
  .tb-figure{max-height:none}
  .tb-scene{max-height:none}
}

/* ---- v6 audit: articles, search, 404, retained pages ------------------- */
.tb-retained{padding-top:var(--tb-header-h)}
.tb-retained a:not([class]){color:var(--tb-forest);text-decoration:underline;text-underline-offset:3px}
.tb-article__hero{padding-bottom:clamp(24px,4vw,40px)}
.tb-article__back{display:inline-flex;align-items:center;gap:6px}
.tb-article__back:hover{color:var(--tb-forest)}
.tb-article__meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;font-size:14px;color:var(--tb-muted)}
.tb-article__figure img{width:100%;height:auto;border-radius:var(--tb-radius);display:block}
body.tb-body .tb-prose{max-width:72ch;font-size:17.5px;line-height:1.7}
body.tb-body .tb-prose>*+*{margin-top:1.1em}
body.tb-body .tb-prose h2{font-family:var(--tb-serif);font-weight:400;font-size:clamp(26px,3.2vw,36px);line-height:1.12;letter-spacing:-.01em;margin-top:1.8em;color:var(--tb-forest)}
body.tb-body .tb-prose h3{font-size:20px;font-weight:600;margin-top:1.5em;line-height:1.25}
body.tb-body .tb-prose h4{font-size:17px;font-weight:600;margin-top:1.3em}
body.tb-body .tb-prose h2+*,body.tb-body .tb-prose h3+*,body.tb-body .tb-prose h4+*{margin-top:.55em}
body.tb-body .tb-prose ul,body.tb-body .tb-prose ol{padding-left:1.25em}
body.tb-body .tb-prose li+li{margin-top:.45em}
body.tb-body .tb-prose li::marker{color:var(--tb-leaf-text)}
body.tb-body .tb-prose a{color:var(--tb-forest);text-decoration:underline;text-underline-offset:3px}
body.tb-body .tb-prose strong{font-weight:600;color:var(--tb-ink)}
body.tb-body .tb-prose blockquote{margin:1.4em 0;padding:4px 0 4px 22px;border-left:3px solid var(--tb-leaf);font-family:var(--tb-serif);font-size:1.15em;color:var(--tb-forest)}
body.tb-body .tb-prose img{max-width:100%;height:auto;border-radius:var(--tb-radius-sm)}
body.tb-body .tb-prose table{width:100%;border-collapse:collapse;font-size:15px}
body.tb-body .tb-prose th,body.tb-body .tb-prose td{padding:10px 12px;border-bottom:1px solid var(--tb-line);text-align:left;vertical-align:top}
body.tb-body .tb-prose th{font-weight:600;color:var(--tb-forest)}
body.tb-body .tb-prose hr{border:0;border-top:1px solid var(--tb-line);margin:2em 0}
.tb-article__note{max-width:72ch;margin-top:36px;padding-top:18px;border-top:1px solid var(--tb-line)}
.tb-article__nav{display:grid;gap:12px;margin-top:36px}
@media (min-width:700px){.tb-article__nav{grid-template-columns:1fr 1fr}}
body.tb-body .tb-article__nav a{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line);transition:border-color .3s,transform .4s var(--tb-ease-out)}
body.tb-body .tb-article__nav a:hover{border-color:var(--tb-forest);transform:translateY(-2px)}
body.tb-body .tb-article__nav a.is-next{text-align:right;align-items:flex-end}
body.tb-body button.tb-btn{color:#fff;font-weight:600;font-size:16px}
body.tb-body .tb-form button.tb-btn{color:var(--tb-ink)}
.tb-article__nav small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-leaf-text)}
.tb-article__nav b{font-size:16px;line-height:1.25}
.tb-search{display:flex;gap:10px;margin-top:26px;max-width:640px}
.tb-search input{flex:1;min-width:0;padding:0 18px;min-height:52px;border-radius:999px;border:1.5px solid var(--tb-line);background:#fff;font:inherit;font-size:16px;color:var(--tb-ink)}
.tb-search input:focus{outline:2px solid var(--tb-forest);outline-offset:2px;border-color:var(--tb-forest)}
@media (max-width:560px){.tb-search{flex-direction:column}.tb-search .tb-btn{width:100%;justify-content:center}}
.tb-cards3 article .tb-link{margin-top:auto;align-self:flex-start;padding-top:12px}

/* ---- v7: five-factor cloud, ring, ticker, chapters, 3-state OHC scene, transfer scene, room art, trust ---- */
.tb-philo__top{display:grid;gap:32px;align-items:center;margin-bottom:40px}
@media (min-width:1000px){.tb-philo__top{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}}
.tb-philo__copy{max-width:900px}
.tb-dark .tb-philo__qual{color:#9fd3b6}
.tb-cloud{position:relative;width:min(100%,560px);aspect-ratio:1;margin-inline:auto;pointer-events:none}
.tb-cloud__canvas{position:absolute;inset:0;width:100%;height:100%}
.tb-cloud__lbl{position:absolute;left:0;top:0;margin:-9px 0 0 12px;font:600 11px/1 var(--tb-font);letter-spacing:.16em;text-transform:uppercase;color:#fff;white-space:nowrap;will-change:transform,opacity}
.tb-cloud__lbl.is-back{color:rgba(255,255,255,.5)}
@media (max-width:999px){.tb-cloud{width:min(80vw,420px)}}
.tb-ring{position:absolute;right:clamp(16px,4vw,56px);bottom:clamp(18px,4vh,40px);z-index:4;width:112px;height:112px;display:grid;place-items:center;color:#fff}
.tb-ring svg{position:absolute;inset:0;width:100%;height:100%;animation:tbSpin 18s linear infinite}
.tb-ring text{font:600 10.5px/1 var(--tb-font);letter-spacing:.22em;text-transform:uppercase;fill:rgba(255,255,255,.85)}
.tb-ring i{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(11,31,25,.35);backdrop-filter:blur(6px);display:grid;place-items:center;transition:transform .5s var(--tb-ease-out),background .3s}
.tb-ring i svg{position:static;inset:auto;display:block;width:18px;height:18px;animation:tbNudge 2.2s var(--tb-ease) infinite}
.tb-ring:hover i{background:var(--tb-gold);color:var(--tb-ink);transform:scale(1.08)}
@keyframes tbSpin{to{transform:rotate(360deg)}}
.tb-hero__scroll{display:none}
@media (max-width:700px){.tb-ring{width:84px;height:84px;right:14px;bottom:14px}.tb-ring text{font-size:12px}}
.tb-ticker{background:var(--tb-ink);color:#fff;border-top:1px solid var(--tb-line-dark);border-bottom:1px solid var(--tb-line-dark);overflow:hidden;position:relative;z-index:5}
.tb-ticker__track{display:flex;width:max-content;animation:tbTicker 46s linear infinite}
.tb-ticker:hover .tb-ticker__track{animation-play-state:paused}
.tb-ticker ul{list-style:none;margin:0;padding:0;display:flex}
.tb-ticker li{padding:16px 28px;font-size:13.5px;letter-spacing:.06em;white-space:nowrap;display:flex;align-items:center;gap:28px;color:rgba(240,246,242,.88)}
.tb-ticker li::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--tb-gold);flex:none}
@keyframes tbTicker{to{transform:translateX(-50%)}}
.tb-chapters{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:60;display:none;flex-direction:column;gap:10px;opacity:0;transition:opacity .5s}
.tb-chapters.is-in{opacity:1}
.tb-chapters a{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:var(--tb-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.tb-chapters a span{opacity:0;transform:translateX(6px);transition:.3s;background:rgba(255,255,255,.9);color:var(--tb-ink);padding:4px 8px;border-radius:6px;box-shadow:0 6px 20px -10px rgba(0,0,0,.4)}
.tb-chapters a i{width:8px;height:8px;border-radius:50%;background:rgba(13,61,53,.3);border:1px solid rgba(255,255,255,.7);transition:.3s;flex:none;mix-blend-mode:difference}
.tb-chapters a:hover span,.tb-chapters a.is-on span{opacity:1;transform:none}
.tb-chapters a.is-on i{background:var(--tb-gold);transform:scale(1.5)}
@media (min-width:1180px){.tb-chapters{display:flex}}
/* OHC three-state scene */
.tb-scene--3 .st{opacity:0;transition:opacity .7s var(--tb-ease),transform .9s var(--tb-ease-out);transform:translateX(18px)}
.tb-scene--3 .st.is-active{opacity:1;transform:none}
.tb-scene--3 .ln--soft{stroke:rgba(217,232,222,.4)}
.tb-scene--3 .carer--ghost{opacity:.28}
.tb-scene--3 .carer--review{opacity:.55}
.tb-scene--3 .tag{font:600 11px/1 var(--tb-font);letter-spacing:.16em;text-transform:uppercase;fill:rgba(255,255,255,.6)}
.tb-scene--3 .tag--ghost{fill:var(--tb-gold)}
.tb-scene__count{position:absolute;left:0;top:0;display:flex;align-items:baseline;gap:12px;z-index:2}
.tb-scene__count b{font-family:var(--tb-serif);font-weight:400;font-style:italic;font-size:clamp(64px,8vw,112px);line-height:.9;color:#fff;transition:.4s}
.tb-scene__count span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold);max-width:22ch;line-height:1.5}
.tb-scene__dots{list-style:none;margin:0;padding:0;position:absolute;right:0;top:12px;display:flex;flex-direction:column;gap:8px}
.tb-scene__dots li{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);transition:.4s}
.tb-scene__dots li.is-on{background:var(--tb-gold)}
.tb-scene--3 svg{padding-top:22%}
.tb-statement--wide{grid-column:1/-1}
/* transfer scene */
.tb-track__art .carriage{transform:translateX(calc(var(--p)*560px))}
.tb-track__art .lead{stroke-dasharray:4 5;opacity:0}
.tb-track__art .carer{transition:opacity .5s}
.tb-track__art .carer .lbl{fill:rgba(255,255,255,.55);transition:fill .4s}
.tb-track__art .carer.is-on .lbl{fill:var(--tb-gold)}
.tb-track__art .carer.is-on ~ .lead,.tb-track__art .carer.is-on + .lead{opacity:1}
.tb-track__art .gold-fill{fill:var(--tb-gold)}
.tb-track__art .lbl--on{fill:rgba(255,255,255,.6)}
.tb-track__art .lbl--gold{fill:var(--tb-gold)}
.tb-track__art .env{opacity:0;transition:opacity .6s}
.tb-track__art .env.is-on{opacity:1}
.tb-track__art .turn{stroke-dasharray:6 8;fill:rgba(217,164,65,.06);transform-box:fill-box;transform-origin:center;animation:tbSpin 30s linear infinite}
/* room illustration for providers */
.tb-room--art{aspect-ratio:40/27;max-height:600px;background:linear-gradient(180deg,#0f2b25,#0b1f19);border-radius:var(--tb-radius);overflow:hidden}
.tb-room--art svg{position:absolute;inset:0;width:100%;height:100%}
.tb-room--art .ln{stroke:#cfe6d8;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;fill:none}
.tb-room--art .soft{stroke:rgba(207,230,216,.4)}
.tb-room--art .gold{stroke:var(--tb-gold)}
.tb-room--art .dot{fill:#cfe6d8}
.tb-room--art .fill-soft{fill:rgba(207,230,216,.18)}
.tb-room--art .lbl{font:600 11px/1 var(--tb-font);letter-spacing:.14em;text-transform:uppercase;fill:rgba(255,255,255,.5)}
/* trust */
.tb-trust__head{display:grid;gap:14px;margin-bottom:28px;max-width:60ch}
.tb-trust__head .tb-h3{font-size:clamp(22px,2.6vw,32px);line-height:1.2}
.tb-trust__stats{display:grid;gap:14px;margin-top:22px}
@media (min-width:760px){.tb-trust__stats{grid-template-columns:repeat(4,1fr)}}
.tb-trust__stats div{padding:20px 22px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line);display:grid;gap:6px}
.tb-trust__stats b{font-family:var(--tb-serif);font-weight:400;font-size:clamp(34px,4vw,52px);line-height:1;color:var(--tb-forest)}
.tb-trust__stats span{font-size:14px;color:var(--tb-muted);line-height:1.45}
.tb-trust__stats b span{font:inherit;color:inherit}
@media (prefers-reduced-motion:reduce){.tb-ring svg,.tb-ticker__track,.tb-track__art .turn{animation:none}.tb-cloud{display:none}.tb-scene--3 .st{opacity:.35;transform:none}.tb-scene--3 .st:last-child{opacity:1}.tb-track__art .carriage{transform:translateX(560px)}.tb-track__art .env{opacity:1}}
@media (max-width:899px){.tb-scene--3 svg{padding-top:26%}.tb-scene__count b{font-size:56px}}
/* knowledge base */
.tb-kb__frame{padding:22px 26px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:grid;gap:8px;max-width:76ch;margin-bottom:36px}
.tb-kb__frame b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text)}
.tb-kb__group+.tb-kb__group{margin-top:40px}
.tb-kb__head{margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--tb-line)}
.tb-kb__grid{display:grid;gap:14px}
@media (min-width:700px){.tb-kb__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.tb-kb__grid{grid-template-columns:repeat(3,1fr)}}
body.tb-body .tb-kb__card{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 24px 22px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);min-height:230px;transition:transform .5s var(--tb-ease-out),box-shadow .5s,border-color .4s;overflow:hidden}
body.tb-body .tb-kb__card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--tb-forest),var(--tb-gold));transform:scaleX(0);transform-origin:left;transition:transform .6s var(--tb-ease-out)}
body.tb-body .tb-kb__card:hover{transform:translateY(-4px);border-color:var(--tb-forest);box-shadow:0 30px 50px -36px rgba(13,61,53,.5)}
body.tb-body .tb-kb__card:hover::after{transform:none}
.tb-kb__num{font-family:var(--tb-serif);font-style:italic;font-size:22px;color:var(--tb-leaf-text)}
.tb-kb__tag{position:absolute;right:18px;top:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-forest);padding:5px 10px;border-radius:999px;background:var(--tb-mist)}
.tb-kb__card h3{font-size:19px;line-height:1.2}
.tb-kb__card p{font-size:14.5px;color:var(--tb-muted);line-height:1.5}
.tb-kb__card .tb-link{margin-top:auto;padding-top:10px}
.tb-page-hero .tb-actions .tb-note{align-self:center}

/* ---- v8: commissioning pathway, evidence bars, headline mask reveal ---- */
.tb-pathway{margin-top:clamp(36px,5vw,64px);padding-top:clamp(28px,4vw,44px);border-top:1px solid var(--tb-line-dark)}
.tb-pathway__head{display:grid;gap:12px;max-width:60ch;margin-bottom:26px}
.tb-pathway__head .tb-h3{font-size:clamp(22px,2.6vw,32px);line-height:1.2}
.tb-pathway__track{height:12px;margin:0 0 -6px}
.tb-pathway__track svg{width:100%;height:12px;display:block;overflow:visible}
.tb-pathway__track .base{stroke:rgba(255,255,255,.14);stroke-width:2}
.tb-pathway__track .draw{stroke:var(--tb-gold);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p,0));transition:stroke-dashoffset .2s linear}
.tb-pathway__steps{list-style:none;margin:0;padding:0;display:grid;gap:18px}
@media (min-width:760px){.tb-pathway__steps{grid-template-columns:repeat(4,1fr);gap:22px}}
.tb-pathway__steps li{position:relative;padding-top:26px;display:grid;gap:6px;opacity:.45;transform:translateY(8px);transition:opacity .6s var(--tb-ease),transform .7s var(--tb-ease-out)}
.tb-pathway__steps li.is-on{opacity:1;transform:none}
.tb-pathway__steps li i{position:absolute;left:0;top:0;width:12px;height:12px;border-radius:50%;background:var(--tb-ink);border:2px solid rgba(255,255,255,.35);transition:.4s}
.tb-pathway__steps li.is-on i{background:var(--tb-gold);border-color:var(--tb-gold);box-shadow:0 0 0 6px rgba(217,164,65,.18)}
.tb-pathway__steps small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold)}
.tb-pathway__steps b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:26px;color:rgba(255,255,255,.7);line-height:1}
.tb-pathway__steps h4{font-size:18px;line-height:1.2;color:#fff}
.tb-pathway__steps p{font-size:14.5px;line-height:1.5;color:var(--tb-muted-dark)}
.tb-models{display:grid;gap:12px;margin-top:30px}
@media (min-width:760px){.tb-models{grid-template-columns:repeat(3,1fr)}}
.tb-model-card{padding:20px 22px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.05);border:1px solid var(--tb-line-dark);display:grid;gap:6px;transition:border-color .4s,transform .5s var(--tb-ease-out)}
.tb-model-card:hover{border-color:var(--tb-gold);transform:translateY(-3px)}
.tb-model-card b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-gold)}
.tb-model-card span{font-size:19px;font-weight:600;color:#fff;line-height:1.2}
.tb-model-card p{font-size:14.5px;line-height:1.5;color:var(--tb-muted-dark)}
.tb-ev{position:relative;overflow:hidden}
.tb-ev__bar{display:block;height:3px;border-radius:2px;background:rgba(255,255,255,.1);position:relative;margin:-2px 0 2px}
.tb-ev__bar::after{content:"";position:absolute;inset:0;background:var(--tb-gold);transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--tb-ease-out) .3s}
.tb-ev.is-in .tb-ev__bar::after{transform:scaleX(var(--v,1))}
/* headline mask reveal: lines rise into view, then the rest of the block follows */
body.tb-body .tb-h2[data-reveal]{clip-path:inset(-8% -2% 100% -2%);transition:opacity 1s var(--tb-ease-out),transform 1.1s var(--tb-ease-out),clip-path 1.1s var(--tb-ease-out);transition-delay:var(--d,0ms)}
body.tb-body .tb-h2[data-reveal].is-in{clip-path:inset(-8% -2% -12% -2%)}
@media (prefers-reduced-motion:reduce){.tb-pathway__steps li{opacity:1;transform:none}.tb-pathway__track .draw{stroke-dashoffset:0}.tb-ev__bar::after{transform:scaleX(var(--v,1))}body.tb-body .tb-h2[data-reveal]{clip-path:none;transition:none}}

/* ---- v9: sticky artwork on un-pinned layouts, ring text, process cards ---- */
@media (max-width:899px){
  .tb-transition .tb-scene,.tb-reason .tb-figure{position:sticky;top:var(--tb-header-h);z-index:4;background:var(--tb-ink);width:auto;max-width:none;aspect-ratio:auto;height:38vh;max-height:38vh;margin:0 calc(-1*var(--tb-gutter)) 8px;padding:8px var(--tb-gutter) 10px;box-shadow:0 22px 30px -22px rgba(0,0,0,.75)}
  .tb-transition .tb-scene svg,.tb-reason .tb-figure svg{display:block;height:100%;width:auto;max-width:100%;margin-inline:auto;padding:0}
  .tb-scene--3 svg{padding-top:0}
  .tb-scene__count{left:var(--tb-gutter);top:10px}
  .tb-scene__count b{font-size:34px}
  .tb-scene__count span{font-size:10px;max-width:15ch;line-height:1.35}
  .tb-scene__dots{right:var(--tb-gutter);top:14px}
  .tb-figure__num{left:var(--tb-gutter);top:6px;font-size:44px}
  .tb-card{min-height:0}
}
@media (max-height:700px) and (min-width:900px){.tb-transition .tb-scene,.tb-reason .tb-figure{position:sticky;top:var(--tb-header-h);z-index:4;background:var(--tb-ink);height:42vh;max-height:42vh;aspect-ratio:auto}.tb-transition .tb-scene svg,.tb-reason .tb-figure svg{height:100%;width:auto;margin-inline:auto;display:block}}
.tb-ring text{letter-spacing:.2em}
@media (max-width:899px){.tb-transition .tb-scene,.tb-reason .tb-figure{top:64px}}
@media (max-height:700px) and (min-width:900px){.tb-transition .tb-scene,.tb-reason .tb-figure{top:64px}}
.tb-header.is-scrolled{background:rgba(251,251,249,.95)}

/* ---- v10: providers room — numbered hotspots, anchored callouts, checks row, receive grid ---- */
#providers .tb-room--art{width:100%;max-height:none;aspect-ratio:40/27;margin-top:8px}
@media (max-width:639px){#providers .tb-room--art{aspect-ratio:4/3.6}}
#providers .tb-hot{width:30px;height:30px;margin:-15px 0 0 -15px;background:rgba(255,255,255,.92);color:var(--tb-ink);font:700 12px/1 var(--tb-font);box-shadow:0 0 0 0 rgba(255,255,255,.5)}
#providers .tb-hot::before{display:none}
#providers .tb-hot span{display:block}
#providers .tb-hot.is-active{background:var(--tb-gold);transform:scale(1.2);animation:none}
#providers .tb-hot:not(.is-active){animation:tbHot 2.8s infinite;animation-delay:calc(var(--i)*.35s)}
.tb-callout{position:absolute;z-index:3;width:min(300px,calc(100% - 24px));padding:18px 20px 18px;border-radius:14px;background:rgba(251,251,249,.96);color:var(--tb-ink);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);opacity:0;transform:translateY(8px);transition:opacity .45s var(--tb-ease),transform .5s var(--tb-ease-out);pointer-events:none;overflow:hidden}
.tb-callout.is-on{opacity:1;transform:none;pointer-events:auto}
.tb-callout::before{content:"";position:absolute;top:50%;width:12px;height:12px;background:inherit;transform:translateY(-50%) rotate(45deg)}
.tb-callout.is-r::before{left:-6px}.tb-callout.is-l::before{right:-6px}
.tb-callout.is-docked::before{display:none}
.tb-callout b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--tb-gold);color:var(--tb-ink);font-size:12px;font-weight:700;margin-bottom:8px}
.tb-callout h4{font-size:16px;line-height:1.25;margin-bottom:6px}
.tb-callout p{font-size:13.5px;line-height:1.5;color:var(--tb-muted)}
.tb-callout__bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--tb-gold);transform:scaleX(0);transform-origin:left}
.tb-callout.is-on .tb-callout__bar{animation:tbBarFill 4.2s linear forwards}
@keyframes tbBarFill{to{transform:scaleX(1)}}
.tb-checks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}
@media (min-width:760px){.tb-checks{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1100px){.tb-checks{grid-template-columns:repeat(6,1fr)}}
body.tb-body .tb-checks button{width:100%;text-align:left;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--tb-line);background:#fff;cursor:pointer;font:600 13.5px/1.25 var(--tb-font);color:var(--tb-ink);transition:border-color .3s,background .3s,transform .4s var(--tb-ease-out)}
body.tb-body .tb-checks button b{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--tb-mist);color:var(--tb-forest);transition:.3s}
body.tb-body .tb-checks button:hover{border-color:var(--tb-forest);transform:translateY(-2px)}
body.tb-body .tb-checks button.is-active{border-color:var(--tb-forest);background:var(--tb-mist)}
body.tb-body .tb-checks button.is-active b{background:var(--tb-gold);color:var(--tb-ink)}
.tb-receive{margin-top:clamp(36px,5vw,56px);padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--tb-line)}
.tb-receive__head{margin-bottom:16px}
.tb-receive__grid{display:grid;gap:14px}
@media (min-width:700px){.tb-receive__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.tb-receive__grid{grid-template-columns:repeat(4,1fr)}}
.tb-receive__grid div{padding:22px 22px 20px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line);display:grid;gap:8px;align-content:start}
.tb-receive__grid b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:20px;color:var(--tb-leaf-text)}
.tb-receive__grid h3{font-size:16.5px;line-height:1.25}
.tb-receive__grid p{font-size:14px;line-height:1.5;color:var(--tb-muted)}
@media (prefers-reduced-motion:reduce){.tb-callout.is-on .tb-callout__bar{animation:none;transform:scaleX(1)}#providers .tb-hot:not(.is-active){animation:none}}
.tb-roomwrap{position:relative}
.tb-callout.is-docked{position:relative;width:100%;margin-top:10px;transform:none}

/* ---- v11: assessment model stage — ring + linked card ---- */
.tb-stage{position:relative;border-radius:var(--tb-radius);background:linear-gradient(180deg,#0f2b25,#0b1f19);padding:clamp(18px,3vw,36px);display:grid;gap:18px;overflow:hidden;box-shadow:0 50px 80px -50px rgba(13,61,53,.6)}
@media (min-width:900px){.tb-stage{grid-template-columns:minmax(0,1fr) minmax(300px,400px);align-items:center;gap:clamp(24px,4vw,64px)}}
.tb-stage .tb-model{max-width:520px;margin-inline:auto}
.tb-stage .tb-model__plane{border-color:rgba(255,255,255,.16);background:radial-gradient(circle,rgba(217,164,65,.09),transparent 70%)}
.tb-stage .tb-model__plane::before,.tb-stage .tb-model__plane::after{border-color:rgba(255,255,255,.12)}
.tb-stage .tb-model svg line{stroke:rgba(255,255,255,.18)}
.tb-stage .tb-model svg line.is-on{stroke:var(--tb-gold)}
.tb-stage .tb-node{background:rgba(251,251,249,.94);border-color:transparent;box-shadow:0 20px 40px -24px rgba(0,0,0,.6)}
.tb-stage .tb-node em{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:var(--tb-mist);color:var(--tb-forest);font:700 10px/20px var(--tb-font);font-style:normal;text-align:center}
.tb-stage .tb-node.is-active{background:var(--tb-gold);border-color:var(--tb-gold);box-shadow:0 0 0 10px rgba(217,164,65,.14),0 30px 60px -24px rgba(0,0,0,.6)}
.tb-stage .tb-node.is-active svg{stroke:var(--tb-ink)}
.tb-stage .tb-node.is-active b,.tb-stage .tb-node.is-active em{color:var(--tb-ink)}
.tb-stage .tb-node.is-active em{background:rgba(11,31,25,.12)}
.tb-stage .tb-node--core{background:transparent;border:1px solid rgba(255,255,255,.35);box-shadow:none}
.tb-stage__link{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:none;z-index:1}
@media (min-width:900px){.tb-stage__link{display:block}}
.tb-stage__link line{stroke:var(--tb-gold);stroke-width:1.5;opacity:.85;transition:x1 .5s,y1 .5s,x2 .5s,y2 .5s}
.tb-stage__link circle{fill:var(--tb-gold)}
.tb-nodecard{position:relative;z-index:2;background:rgba(251,251,249,.97);border-radius:16px;padding:22px 24px 24px;color:var(--tb-ink);overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);opacity:0;transform:translateY(8px);transition:opacity .4s var(--tb-ease),transform .5s var(--tb-ease-out)}
.tb-nodecard.is-on{opacity:1;transform:none}
.tb-nodecard__head{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.tb-nodecard__head i{width:42px;height:42px;border-radius:12px;background:var(--tb-mist);display:grid;place-items:center;flex:none}
.tb-nodecard__head i svg{width:22px;height:22px;stroke:var(--tb-forest);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tb-nodecard h3{font-size:20px;line-height:1.15}
.tb-nodecard__head b{display:block;font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:15px;color:var(--tb-leaf-text);margin-top:2px}
.tb-nodecard__num{margin-left:auto;align-self:flex-start;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-muted);white-space:nowrap}
.tb-nodecard p{font-size:14.5px;line-height:1.55;color:var(--tb-muted)}
.tb-nodecard .tb-factors{margin-top:14px;grid-template-columns:repeat(2,1fr)}
.tb-nodecard .tb-factors li{padding:9px 12px;font-size:13.5px}
.tb-nodecard.is-on .tb-callout__bar{animation:tbBarFill 4.2s linear forwards}
.tb-checks--5{grid-template-columns:repeat(2,1fr)}
@media (min-width:760px){.tb-checks--5{grid-template-columns:repeat(5,1fr)}}
.tb-frame--row{margin-top:18px}
@media (max-width:899px){.tb-stage .tb-model{max-width:360px}.tb-nodecard{margin-top:6px}}

/* ---- v12: fit-to-viewport stages, HUD frame, scan sweep, targeting rings, data-flow connector ---- */
.tb-stage,#providers .tb-room--art{background:radial-gradient(rgba(255,255,255,.075) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(180deg,#0f2b25,#0b1f19)}
.tb-stage::before,#providers .tb-room--art::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(100deg,transparent 42%,rgba(217,164,65,.09) 50%,transparent 58%);background-size:260% 100%;animation:tbScan 10s linear infinite}
@keyframes tbScan{from{background-position:130% 0}to{background-position:-130% 0}}
.tb-hud{position:absolute;inset:12px;pointer-events:none;z-index:1}
.tb-hud::before,.tb-hud::after,.tb-hud i::before,.tb-hud i::after{content:"";position:absolute;width:16px;height:16px;border:1.5px solid rgba(217,164,65,.75)}
.tb-hud::before{left:0;top:0;border-right:0;border-bottom:0}
.tb-hud::after{right:0;top:0;border-left:0;border-bottom:0}
.tb-hud i::before{left:0;bottom:0;border-right:0;border-top:0}
.tb-hud i::after{right:0;bottom:0;border-left:0;border-top:0}
.tb-hud b{position:absolute;left:26px;top:4px;font:600 10px/1 var(--tb-font);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55);display:flex;gap:8px;align-items:center;white-space:nowrap}
.tb-hud b::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--tb-gold);animation:tbBlink 1.6s infinite}
@keyframes tbBlink{50%{opacity:.15}}
.tb-stage .tb-node.is-active::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1px dashed rgba(217,164,65,.85);animation:tbSpin 14s linear infinite}
.tb-stage .tb-node.is-active::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:1.5px solid rgba(217,164,65,.9);animation:tbPing 1.4s var(--tb-ease-out) 1 forwards}
@keyframes tbPing{to{transform:scale(1.8);opacity:0}}
.tb-stage__link line{stroke-dasharray:6 6;animation:tbFlow 1.1s linear infinite}
@keyframes tbFlow{to{stroke-dashoffset:-24}}
#providers .tb-hot{z-index:2}
#providers .tb-hot.is-active::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px dashed rgba(217,164,65,.9);animation:tbSpin 12s linear infinite}
#providers .tb-hot.is-active::before{display:block;content:"";position:absolute;inset:-4px;width:auto;height:auto;border-radius:50%;background:transparent;border:1.5px solid rgba(217,164,65,.9);animation:tbPing 1.4s var(--tb-ease-out) 1 forwards}
#providers .tb-room--art svg,.tb-stage .tb-model{position:relative;z-index:1}
#providers .tb-room--art svg{position:absolute}
@media (min-width:900px){
  .tb-stage{max-height:calc(100vh - 150px)}
  .tb-stage .tb-model{width:min(520px,calc(100vh - 270px))}
  #providers .tb-room--art{height:min(62vh,600px);width:auto;aspect-ratio:40/27;max-width:100%;margin-inline:auto}
  #providers .tb-roomwrap,#providers .tb-checks{width:min(100%,calc(min(62vh,600px)*40/27));margin-inline:auto}
  #providers .tb-checks{grid-template-columns:repeat(3,1fr)}
}

/* ---- v13: response spectrum, larger interactive sphere, smooth caption swaps ---- */
[data-step-text].is-swap{animation:tbSwap .55s var(--tb-ease-out)}
@keyframes tbSwap{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.tb-track__caption{min-height:118px}
.tb-track__head{align-items:flex-start}
.tb-scene__count span{min-height:3.2em;display:block}
@media (max-width:760px){.tb-track__caption{min-height:104px}}
/* sphere */
.tb-philo__top{align-items:center}
@media (min-width:1000px){.tb-philo__top{grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr)}}
.tb-cloud--xl{width:min(100%,680px);aspect-ratio:1;border-radius:50%;pointer-events:auto;background:radial-gradient(circle at 50% 50%,rgba(217,164,65,.06),transparent 62%)}
.tb-cloud--xl .tb-hud{inset:2%;border-radius:0}
.tb-cloud--xl .tb-hud::before,.tb-cloud--xl .tb-hud::after,.tb-cloud--xl .tb-hud i::before,.tb-cloud--xl .tb-hud i::after{opacity:.6}
.tb-cloud--xl::after{content:"";position:absolute;inset:6%;border-radius:50%;border:1px dashed rgba(255,255,255,.12);animation:tbSpin 60s linear infinite;pointer-events:none}
body.tb-body .tb-cloud__lbl{pointer-events:auto;cursor:pointer;background:rgba(11,31,25,.55);border:1px solid rgba(255,255,255,.18);padding:7px 11px;border-radius:999px;margin:-14px 0 0 14px;font:600 11px/1 var(--tb-font);letter-spacing:.16em;text-transform:uppercase;color:#fff;backdrop-filter:blur(6px);transition:background .3s,border-color .3s,color .3s}
body.tb-body .tb-cloud__lbl:hover,body.tb-body .tb-cloud__lbl.is-focus{background:var(--tb-gold);border-color:var(--tb-gold);color:var(--tb-ink)}
.tb-obj.is-focus{border-color:var(--tb-gold);box-shadow:0 0 0 3px rgba(217,164,65,.22),0 30px 50px -36px rgba(13,61,53,.5)}
.tb-obj.is-focus b{color:var(--tb-gold)}
.tb-obj{cursor:pointer}
@media (max-width:999px){.tb-cloud--xl{width:min(88vw,480px)}}
/* spectrum */
.tb-triage-s .tb-lead{max-width:60ch}
.tb-spectrum{position:relative;border-radius:var(--tb-radius);background:radial-gradient(rgba(255,255,255,.075) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(180deg,#0f2b25,#0b1f19);padding:clamp(40px,4vw,52px) clamp(18px,3vw,36px) clamp(20px,3vw,30px);overflow:hidden;box-shadow:0 50px 80px -50px rgba(0,0,0,.6)}
.tb-spectrum__bar{position:relative;height:4px;border-radius:2px;display:flex;gap:6px;margin:0 0 22px}
.tb-spectrum__bar i{flex:1;border-radius:2px;opacity:.55;transition:opacity .4s}
.tb-spectrum__bar i.is-red{background:#e2604a}.tb-spectrum__bar i.is-amber{background:#e8b64f}.tb-spectrum__bar i.is-green{background:#4fae86}
.tb-spectrum__probe{position:absolute;top:50%;left:16.66%;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.18),0 0 24px rgba(255,255,255,.6);transform:translate(-50%,-50%);transition:left .6s var(--tb-ease-out),background .4s}
.tb-spectrum[data-active="red"] .tb-spectrum__probe{left:16.66%;background:#e2604a}
.tb-spectrum[data-active="amber"] .tb-spectrum__probe{left:50%;background:#e8b64f}
.tb-spectrum[data-active="green"] .tb-spectrum__probe{left:83.33%;background:#4fae86}
.tb-spectrum[data-active="red"] .is-red,.tb-spectrum[data-active="amber"] .is-amber,.tb-spectrum[data-active="green"] .is-green{opacity:1}
.tb-lanes{display:grid;gap:12px}
@media (min-width:860px){.tb-lanes{display:flex;gap:14px}}
body.tb-body .tb-lane{--c:#e2604a;position:relative;flex:1 1 0;display:flex;flex-direction:column;gap:10px;padding:24px 22px 22px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#fff;overflow:hidden;transition:flex-grow .6s var(--tb-ease-out),background .4s,border-color .4s,transform .5s var(--tb-ease-out);min-height:330px}
body.tb-body .tb-lane--amber{--c:#e8b64f}body.tb-body .tb-lane--green{--c:#4fae86}
@media (min-width:860px){body.tb-body .tb-lane.is-on{flex-grow:1.6}}
body.tb-body .tb-lane:hover,body.tb-body .tb-lane.is-on,body.tb-body .tb-lane:focus-visible{background:rgba(255,255,255,.09);border-color:var(--c);transform:translateY(-4px)}
.tb-lane::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--c);transform:scaleX(.35);transform-origin:left;transition:transform .6s var(--tb-ease-out)}
.tb-lane:hover::before,.tb-lane.is-on::before{transform:none}
.tb-lane__num{position:absolute;right:18px;top:16px;font-family:var(--tb-serif);font-style:italic;font-size:26px;color:rgba(255,255,255,.28)}
.tb-lane__badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--c);font-weight:700}
.tb-lane__badge i{width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 0 var(--c);animation:tbLanePulse 2.2s infinite}
@keyframes tbLanePulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.35)}70%{box-shadow:0 0 0 9px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.tb-lane__time{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:clamp(30px,3.2vw,44px);line-height:1;color:#fff}
.tb-lane h3{font-size:18px;line-height:1.2;color:#fff}
.tb-lane__when{font-size:14px;color:rgba(240,246,242,.75)}
.tb-lane__list{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:6px}
.tb-lane__list li{font-size:14px;line-height:1.4;color:rgba(240,246,242,.88);padding-left:16px;position:relative}
.tb-lane__list li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--c)}
.tb-lane__note{font-size:12.5px;color:rgba(240,246,242,.6);line-height:1.45;padding-top:10px;border-top:1px solid rgba(255,255,255,.1);margin-top:auto}
.tb-lane__cta{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:11px 16px;border-radius:999px;background:var(--c);color:var(--tb-ink);font-weight:700;font-size:14px;align-self:flex-start;transition:transform .4s var(--tb-ease-out)}
.tb-lane__cta svg{width:16px;height:16px;transition:transform .4s var(--tb-ease-out)}
.tb-lane:hover .tb-lane__cta svg,.tb-lane.is-on .tb-lane__cta svg{transform:translateX(4px)}
.tb-lane__ring{position:absolute;inset:auto -40px -40px auto;width:160px;height:160px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--c) 55%,transparent);opacity:.5;animation:tbSpin 30s linear infinite;pointer-events:none}
.tb-spectrum__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin-top:20px;font-size:13px;color:rgba(240,246,242,.6)}
.tb-emergency--dark{background:rgba(201,79,61,.12);border-color:rgba(201,79,61,.4);color:#ffd9d3;margin-top:18px}
.tb-emergency--dark a{color:#fff}
@media (prefers-reduced-motion:reduce){.tb-lane__badge i,.tb-lane__ring,.tb-cloud--xl::after{animation:none}[data-step-text].is-swap{animation:none}}

/* ---- v14: round-table audit fixes ---- */
.tb-philo .tb-obj{color:var(--tb-ink)}
.tb-philo .tb-obj h3{color:var(--tb-ink)}
.tb-philo .tb-obj p{color:var(--tb-muted)}
.tb-emergency--dark strong{color:#fff}
.tb-footer .tb-note{color:#a9bfb5}
body.tb-body .tb-link{display:inline-flex;align-items:center;gap:8px;min-height:40px}
body.tb-body .tb-service__foot a{min-height:40px;display:inline-flex;align-items:center}
.tb-bookaside__help p a{display:inline-block;padding:8px 0}
.latepoint-w .os-month-prev-btn,.latepoint-w .os-month-next-btn{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
.tb-hud b{font-size:10.5px}
@media (max-width:640px){.tb-node b{font-size:10.5px}}
body.tb-body .tb-cloud__lbl{min-height:36px}
#providers .tb-hot{width:36px;height:36px;margin:-18px 0 0 -18px;font-size:13px}
.tb-footer__contact a{display:inline-block;padding:6px 0}
.tb-emergency a,.tb-la__col a,.tb-form__consent a{padding:4px 0;display:inline-block}

/* ---- v15: model stage — status bar in flow (no overlap), ring sized to the viewport ---- */
.tb-stage{padding-top:16px}
.tb-stage__bar{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 8px 12px;border-bottom:1px solid rgba(255,255,255,.1);font:600 10.5px/1 var(--tb-font);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.62);position:relative;z-index:2}
.tb-stage__bar b{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.78)}
.tb-stage__bar b::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--tb-gold);animation:tbBlink 1.6s infinite}
.tb-stage__bar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-stage .tb-hud b{display:none}
.tb-stage .tb-model{margin-top:16px;margin-bottom:8px}
@media (min-width:900px){
  .tb-stage{grid-template-columns:minmax(0,1fr) minmax(300px,400px);grid-template-rows:auto minmax(0,1fr);max-height:none}
  .tb-stage .tb-model{width:min(460px,calc(100vh - 330px),100%);min-width:260px}
  .tb-nodecard{align-self:center}
}
@media (max-width:899px){
  .tb-stage{max-height:none}
  .tb-stage .tb-model{width:min(80vw,300px);max-width:300px;margin-top:14px}
  .tb-stage__bar span{display:none}
  .tb-node{width:88px;height:88px;margin:-44px 0 0 -44px}.tb-node svg{width:20px;height:20px}.tb-node--core{width:84px;height:84px;margin:-42px 0 0 -42px}.tb-node--core span{font-size:18px}
}
@media (prefers-reduced-motion:reduce){.tb-stage__bar b::before{animation:none}}

/* ---- v16: evidence gauges ---- */
.tb-evidence{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}
@media (min-width:1000px){.tb-evidence{grid-template-columns:repeat(4,1fr)}}
.tb-evidence__head{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;padding-bottom:10px;border-bottom:1px solid var(--tb-line-dark);margin-bottom:4px}
.tb-evidence__src{font-size:12px;letter-spacing:.06em;color:var(--tb-muted-dark)}
.tb-ev{padding:22px 22px 20px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.05);border:1px solid var(--tb-line-dark);display:flex;flex-direction:column;gap:12px;overflow:visible;transition:border-color .4s,transform .5s var(--tb-ease-out)}
.tb-ev:hover{border-color:rgba(217,164,65,.6);transform:translateY(-3px)}
.tb-ev__top{display:flex;align-items:center;gap:16px}
.tb-ev__ring{width:72px;height:72px;flex:none;transform:rotate(-90deg)}
.tb-ev__ring .base{fill:none;stroke:rgba(255,255,255,.12);stroke-width:6}
.tb-ev__ring .val{fill:none;stroke:var(--tb-gold);stroke-width:6;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s var(--tb-ease-out) calc(var(--d,0ms) + .3s)}
.tb-ev__ring .tip{fill:#fff;opacity:0;transform-origin:48px 48px;transition:transform 1.8s var(--tb-ease-out) calc(var(--d,0ms) + .3s),opacity .3s calc(var(--d,0ms) + .3s)}
.tb-ev.is-in .tb-ev__ring .val{stroke-dashoffset:calc(1 - var(--v,1))}
.tb-ev.is-in .tb-ev__ring .tip{opacity:1;transform:rotate(calc(var(--v,1)*360deg))}
.tb-ev__top b{font-family:var(--tb-serif);font-style:italic;font-weight:400;font-size:clamp(34px,3.4vw,46px);line-height:1;color:#fff;white-space:nowrap}
.tb-ev__top b span{font:inherit;color:var(--tb-gold)}
.tb-ev p{font-size:14.5px;line-height:1.5;color:rgba(240,246,242,.86)}
.tb-ev small{margin-top:auto;display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;color:var(--tb-muted-dark)}
.tb-ev small i{flex:none;font-style:normal;font-weight:700;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--tb-gold);padding:3px 7px;border:1px solid rgba(217,164,65,.5);border-radius:999px;margin-top:-1px}
.tb-ev__bar{display:none}
@media (max-width:600px){.tb-evidence{grid-template-columns:1fr}.tb-ev__ring{width:60px;height:60px}}
@media (prefers-reduced-motion:reduce){.tb-ev__ring .val{transition:none;stroke-dashoffset:calc(1 - var(--v,1))}.tb-ev__ring .tip{transition:none;opacity:1;transform:rotate(calc(var(--v,1)*360deg))}}

/* ---- v17: node labels always inside their circle ---- */
.tb-node{padding:0 8px;box-sizing:border-box}
.tb-node b{font-size:11px;letter-spacing:.1em;max-width:100%;overflow-wrap:anywhere;text-align:center;line-height:1.15}
@media (max-width:899px){.tb-node b{font-size:9.5px;letter-spacing:.05em}.tb-node svg{width:20px;height:20px;margin-bottom:2px}}
@media (max-width:380px){.tb-node{width:80px;height:80px;margin:-40px 0 0 -40px}.tb-node b{font-size:9px;letter-spacing:.03em}.tb-node--core{width:78px;height:78px;margin:-39px 0 0 -39px}.tb-node--core span{font-size:16px}}
.tb-scene--3 .tag{font-size:10px;letter-spacing:.1em}

/* ---- v18: mega menu, mobile menu, closing section ---- */
.tb-header__inner,.tb-nav__item{position:static}
.tb-nav{align-items:center}
body.tb-body .tb-nav__btn{position:relative;display:inline-flex;align-items:center;gap:6px;padding:10px 13px;border-radius:999px;border:0;background:transparent;font:500 15px/1 var(--tb-font);color:inherit;cursor:pointer;transition:background .3s}
body.tb-body .tb-nav__btn:hover,.tb-nav__item.is-open .tb-nav__btn{background:rgba(127,127,127,.14)}
.tb-nav__btn i{width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .3s;opacity:.7}
.tb-nav__item.is-open .tb-nav__btn i{transform:rotate(225deg) translateY(-1px)}
.tb-header.is-mega{background:rgba(251,251,249,.98);color:var(--tb-ink)}
.tb-header.is-mega .tb-header__cta{background:var(--tb-forest);color:#fff}
.tb-mega{position:absolute;left:0;right:0;top:100%;z-index:110;background:rgba(251,251,249,.98);backdrop-filter:saturate(160%) blur(16px);-webkit-backdrop-filter:saturate(160%) blur(16px);border-top:1px solid var(--tb-line);box-shadow:0 40px 60px -40px rgba(13,61,53,.35);opacity:0;transform:translateY(-8px);transition:opacity .28s var(--tb-ease),transform .35s var(--tb-ease-out);pointer-events:none;color:var(--tb-ink)}
.tb-mega.is-in{opacity:1;transform:none;pointer-events:auto}
.tb-mega__inner{width:min(var(--tb-wrap),100% - var(--tb-gutter)*2);margin-inline:auto;padding:28px 0 32px;display:grid;gap:32px}
.tb-mega__inner--services{grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr)}
.tb-mega__inner--who{grid-template-columns:repeat(4,1fr);gap:16px}
.tb-mega__inner--know{grid-template-columns:1fr 1fr minmax(280px,.9fr)}
.tb-mega__label{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--tb-leaf-text);margin-bottom:14px}
.tb-mega__services{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}
body.tb-body .tb-mega__services a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;font-size:14.5px;transition:background .25s,transform .35s var(--tb-ease-out)}
body.tb-body .tb-mega__services a:hover{background:var(--tb-mist);transform:translateX(3px)}
.tb-mega__services b{font-weight:500}
.tb-mega__services span{font-weight:600;color:var(--tb-forest);font-size:13.5px;flex:none}
.tb-mega__links{list-style:none;margin:0;padding:0;display:grid;gap:4px}
body.tb-body .tb-mega__links a{display:block;padding:9px 12px;border-radius:10px;font-size:14.5px;transition:background .25s,transform .35s var(--tb-ease-out)}
body.tb-body .tb-mega__links a:hover{background:var(--tb-mist);transform:translateX(3px)}
.tb-mega__links b{font-weight:600;color:var(--tb-forest);display:inline-flex;align-items:center;gap:6px}
.tb-mega__links b svg{width:14px;height:14px}
.tb-mega__feature{display:grid;gap:10px;align-content:start}
body.tb-body .tb-mega__card{display:grid;gap:6px;padding:18px 18px 16px;border-radius:14px;background:var(--tb-forest);color:#fff;transition:transform .4s var(--tb-ease-out),box-shadow .4s}
body.tb-body .tb-mega__card:hover{transform:translateY(-3px);box-shadow:0 24px 40px -28px rgba(13,61,53,.6)}
body.tb-body .tb-mega__card--ghost{background:#fff;border:1px solid var(--tb-line);color:var(--tb-ink)}
.tb-mega__card b{font-size:16px}
.tb-mega__card span{font-size:13.5px;line-height:1.45;opacity:.85}
.tb-mega__card em{font-style:normal;font-weight:600;font-size:13.5px;display:inline-flex;align-items:center;gap:6px;margin-top:4px}
.tb-mega__card em svg{width:14px;height:14px}
body.tb-body .tb-mega__route{position:relative;display:grid;gap:8px;padding:20px 18px 18px;border-radius:14px;border:1px solid var(--tb-line);background:#fff;transition:transform .4s var(--tb-ease-out),border-color .3s,box-shadow .4s}
body.tb-body .tb-mega__route:hover{transform:translateY(-3px);border-color:var(--tb-forest);box-shadow:0 24px 40px -28px rgba(13,61,53,.5)}
body.tb-body .tb-mega__route--soft{background:var(--tb-mist)}
.tb-mega__num{font-family:var(--tb-serif);font-style:italic;font-size:20px;color:var(--tb-leaf-text)}
.tb-mega__route b{font-size:16px;line-height:1.2}
.tb-mega__route>span:not(.tb-mega__num){font-size:13.5px;line-height:1.45;color:var(--tb-muted)}
.tb-mega__route em{font-style:normal;font-weight:600;font-size:13.5px;color:var(--tb-forest);display:inline-flex;align-items:center;gap:6px;margin-top:4px}
.tb-mega__route em svg{width:14px;height:14px}
.tb-mega.is-in .tb-mega__services li,.tb-mega.is-in .tb-mega__links li,.tb-mega.is-in .tb-mega__route,.tb-mega.is-in .tb-mega__card{animation:tbPop .5s var(--tb-ease-out) both}
.tb-mega.is-in .tb-mega__route:nth-child(1){animation-delay:40ms}.tb-mega.is-in .tb-mega__route:nth-child(2){animation-delay:100ms}.tb-mega.is-in .tb-mega__route:nth-child(3){animation-delay:160ms}.tb-mega.is-in .tb-mega__route:nth-child(4){animation-delay:220ms}
.tb-mega.is-in .tb-mega__card:nth-child(2){animation-delay:80ms}.tb-mega.is-in .tb-mega__card:nth-child(3){animation-delay:160ms}
.tb-mega__veil{position:fixed;inset:0;top:var(--tb-header-h);background:rgba(11,31,25,.35);opacity:0;pointer-events:none;transition:opacity .35s;z-index:99}
.tb-mega__veil.is-on{opacity:1;pointer-events:auto}
@media (max-width:979px){.tb-mega,.tb-mega__veil{display:none!important}}
/* mobile menu */
.tb-menu{padding:18px var(--tb-gutter) 22px;background:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(180deg,#0f2b25,#0b1f19);overflow:auto}
.tb-menu__head{margin-bottom:26px}
.tb-menu__nav{display:grid;gap:18px}
.tb-menu__group{display:grid;gap:2px;opacity:0;transform:translateY(14px);animation:tbMenuIn .55s var(--tb-ease-out) forwards;animation-delay:calc(var(--g,0)*90ms + 80ms)}
@keyframes tbMenuIn{to{opacity:1;transform:none}}
.tb-menu__label{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--tb-gold);margin-bottom:6px}
body.tb-body .tb-menu nav a,body.tb-body .tb-menu__nav a{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:17px;font-weight:600;letter-spacing:-.005em;color:#fff}
.tb-menu__nav a svg{width:18px;height:18px;opacity:.55;transition:transform .3s}
.tb-menu__nav a:active svg{transform:translateX(4px)}
.tb-menu__foot{padding-top:20px;opacity:0;animation:tbMenuIn .55s var(--tb-ease-out) .5s forwards}
.tb-menu__note{width:100%;font-size:13px;color:rgba(240,246,242,.72);margin-top:6px}
.tb-menu__note a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media (max-height:700px){.tb-menu__head{margin-bottom:14px}.tb-menu__nav{gap:12px}body.tb-body .tb-menu__nav a{padding:8px 0;font-size:16px}}
/* closing section */
.tb-final__media img{opacity:.18}
.tb-final__shade{background:linear-gradient(180deg,rgba(11,31,25,.55),rgba(11,31,25,.85) 60%,var(--tb-ink))}
.tb-final .tb-wrap{text-align:left;justify-items:stretch;padding:110px 0 60px}
.tb-final__grid{display:grid;gap:36px;align-items:center}
@media (min-width:1000px){.tb-final__grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:64px}}
.tb-final__copy{display:grid;gap:22px;justify-items:start}
.tb-final .tb-h1{max-width:12ch}
.tb-final .tb-lead{color:rgba(240,246,242,.9);max-width:52ch}
.tb-final__panel{position:relative;background:rgba(251,251,249,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--tb-radius);padding:26px 22px 20px;display:grid;gap:10px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.tb-final__label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--tb-gold);margin-bottom:4px}
body.tb-body .tb-final__route{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;transition:background .3s,border-color .3s,transform .4s var(--tb-ease-out)}
body.tb-body .tb-final__route:hover{background:rgba(255,255,255,.12);border-color:var(--tb-gold);transform:translateX(4px)}
.tb-final__route b{font-size:15.5px}
.tb-final__route span{grid-column:1;font-size:13.5px;line-height:1.4;color:rgba(240,246,242,.8)}
.tb-final__route svg{grid-column:2;grid-row:1/3;width:18px;height:18px;color:var(--tb-gold)}
.tb-final__phone{margin-top:6px;font-size:13px;color:rgba(240,246,242,.72);display:grid;gap:2px}
.tb-final__phone a{color:#fff;font-weight:700;font-size:18px}
.tb-final__sig{margin:40px auto 0;padding:0 var(--tb-gutter) 60px;opacity:1;transform:none;display:grid;justify-items:center;gap:12px;text-align:center}
.tb-final__sig b{color:#fff}
.tb-final__words{display:flex;flex-wrap:wrap;justify-content:center;gap:0 14px;font-family:var(--tb-serif);font-style:italic;font-size:clamp(20px,2.4vw,26px);color:#e6f2ea}
.tb-final__words i{font-style:italic;opacity:0;transform:translateY(8px);transition:opacity .6s var(--tb-ease-out),transform .7s var(--tb-ease-out);transition-delay:calc(var(--i)*220ms + .2s)}
.tb-final.is-words .tb-final__words i{opacity:1;transform:none}
@media (max-width:999px){.tb-final .tb-wrap{padding:90px 0 40px}.tb-final .tb-h1{max-width:none}}
.tb-final{flex-direction:column;justify-content:center}
.tb-final .tb-wrap{margin-inline:auto;width:min(var(--tb-wrap),100% - var(--tb-gutter)*2)}
.tb-final__sig{width:100%}
.tb-final .tb-btn--ghost{color:#fff;border-color:rgba(255,255,255,.55);background:rgba(11,31,25,.35)}
.tb-final .tb-btn--ghost:hover{background:rgba(255,255,255,.12);color:#fff}
body.tb-body .tb-menu__nav a{padding:9px 0;font-size:16.5px}
.tb-menu__nav{gap:14px}

/* ---- v19: readability on retained governance pages (legacy type scaled too small / low contrast) ---- */
.tb-retained .tbl-inner-section .tbl-page-kicker,.tb-retained .tbl-inner-head .tbl-page-kicker{color:#1f6b52}
.tb-retained .tbl-eyebrow{font-size:11px;color:#2c6b52}
.tb-retained .company-proof .tbl-eyebrow,.tb-retained .tbl-page-hero .tbl-eyebrow{color:#9fd3b6}
.tb-retained .company-proof-note,.tb-retained .company-proof-note strong{color:#d6e8de}
.tb-retained .tbl-btn-primary{color:#06241d}
.tb-retained .tbl-checks span,.tb-retained .tbl-check span,.tb-retained .tbl-check p{font-size:13.5px;color:#4a5b54;line-height:1.45}
.tb-retained .tbl-policy-control span,.tb-retained .tbl-policy-control small,.tb-retained .tbl-policy-control b{font-size:12.5px;color:#3d4d47}
.tb-retained .tbl-policy-control b,.tb-retained .tbl-policy-control strong{color:var(--tb-ink)}
.tb-retained .tbl-policy-mini-grid span,.tb-retained .tbl-policy-mini-grid b,.tb-retained .tbl-policy-mini-grid small{font-size:12.5px;color:#3d4d47;line-height:1.4}
.tb-retained .tbl-policy-mini-grid b,.tb-retained .tbl-policy-mini-grid strong{color:var(--tb-ink)}
.tb-retained small,.tb-retained .tbl-portal-legal{font-size:max(12.5px,1em)}
.tb-retained .tbl-inner-section:not(.dark):not(.company-proof) p,.tb-retained .tbl-inner-section:not(.dark):not(.company-proof) li{color:#3d4d47}
.tb-retained .tbl-inner-section.dark p,.tb-retained .tbl-inner-section.dark li,.tb-retained .tbl-inner-section.dark span:not(.tbl-eyebrow),.tb-retained .company-proof p,.tb-retained .company-proof li,.tb-retained .company-proof span:not(.tbl-eyebrow),.tb-retained .tbl-page-hero p,.tb-retained .tbl-page-hero li{color:#e6f2ea}
.tb-retained .tbl-inner-section.dark .tbl-eyebrow,.tb-retained .company-proof .tbl-eyebrow{color:#9fd3b6}
.tb-retained .tbl-inner-section.dark .tbl-checks span,.tb-retained .tbl-inner-section.dark .tbl-check span{color:#cfe6d8}
/* policies page (own template, no .tb-retained wrapper) */
body.tb-body .tbl-policy-control span,body.tb-body .tbl-policy-control small{font-size:12.5px;color:#3d4d47}
body.tb-body .tbl-policy-control b,body.tb-body .tbl-policy-control strong{font-size:13px;color:var(--tb-ink)}
body.tb-body .tbl-policy-mini-grid span,body.tb-body .tbl-policy-mini-grid small{font-size:12.5px;color:#3d4d47;line-height:1.4}
body.tb-body .tbl-policy-mini-grid b,body.tb-body .tbl-policy-mini-grid strong{font-size:12.5px;color:var(--tb-ink)}
body.tb-body .tbl-btn-primary{color:#06241d}
body.tb-body .tbl-page-kicker{font-size:11px}
body.tb-body .tbl-inner-section:not(.dark):not(.company-proof) .tbl-page-kicker,body.tb-body .tbl-inner-head .tbl-page-kicker{color:#1f6b52}
body.tb-body .tbl-policy-block small,body.tb-body .tbl-policy-block span:not([class]){font-size:max(12.5px,1em)}
body.page-id-1515 .tbl-inner-article span,body.page-id-1515 .tbl-inner-article small,body.page-id-1515 .tbl-inner-article a,body.page-id-1515 .tbl-inner-article li,body.page-id-1515 .tbl-inner-article b{font-size:max(12px,1em)}
body.tb-body .tbl-inner-section:not(.dark):not(.company-proof) .tbl-eyebrow{color:#2c6b52;font-size:11px}
body.page-id-1515 .tbl-inner-article p,body.page-id-1515 .tbl-inner-article li{font-size:15.5px;line-height:1.6}
body.page-id-1515 .tbl-inner-article h2{font-size:clamp(22px,2.6vw,30px)}
body.page-id-1515 .tbl-eyebrow{color:#2c6b52;font-size:11px}
body.page-id-1515 .tbl-page-hero p,body.page-id-1515 .tbl-page-hero li{color:#e6f2ea}

/* ---- v20: model nodes — one proportional layout (number · icon · label) that scales with the node ---- */
.tb-node{--n:132px;width:var(--n);height:var(--n);margin:calc(var(--n) / -2) 0 0 calc(var(--n) / -2);padding:0 calc(var(--n) * .08);display:grid;grid-auto-rows:max-content;align-content:center;justify-items:center;gap:calc(var(--n) * .03);text-align:center;box-sizing:border-box}
.tb-node svg{width:calc(var(--n) * .22);height:calc(var(--n) * .22)}
.tb-node b{font-size:clamp(8.5px,calc(var(--n) * .085),11.5px);letter-spacing:clamp(.02em,calc(var(--n) * .0007),.1em);line-height:1.1;max-width:100%;overflow-wrap:normal;white-space:nowrap}
.tb-stage .tb-node em{position:static;order:-1;width:calc(var(--n) * .17);height:calc(var(--n) * .17);line-height:calc(var(--n) * .17);font-size:clamp(8px,calc(var(--n) * .085),11px);margin:0 0 calc(var(--n) * .01)}
.tb-node--core{--n:120px;width:var(--n);height:var(--n);margin:calc(var(--n) / -2) 0 0 calc(var(--n) / -2);padding:0}
.tb-node--core b{font-size:clamp(8.5px,calc(var(--n) * .09),11px)}
.tb-node--core span{font-size:clamp(14px,calc(var(--n) * .18),22px)}
@media (max-width:899px){.tb-node{--n:100px}.tb-node--core{--n:92px}}
@media (max-width:640px){.tb-node{--n:96px}.tb-node--core{--n:88px}.tb-stage .tb-model{width:min(84vw,320px);max-width:320px}}
@media (max-width:380px){.tb-node{--n:88px}.tb-node--core{--n:82px}}
.tb-node b{font-size:clamp(9px,calc(var(--n) * .09),11.5px)}

/* ---- v21: second round-table pass ---- */
.tb-philo__big{font-size:clamp(36px,5.6vw,88px);overflow-wrap:anywhere}
.tb-chapters a{min-height:36px;padding:4px 0}
.tb-stage__bar{font-size:11.5px}
.tb-hud b{font-size:11px}
.tb-node--core b{font-size:clamp(9px,calc(var(--n) * .095),11.5px)}
.latepoint-w .pbh-label,.latepoint-w .os-summary-label,.latepoint-w .os-form-group label{color:#3d4d47}
.tb-retained .assurance-hero-art *{font-size:max(11px,1em)}
.tb-retained dt,.tb-retained dd{font-size:max(12px,1em)}
body.page-id-1515 span,body.page-id-1515 small{font-size:max(11.5px,1em)}
body.page-id-1515 .dark .tbl-eyebrow,body.page-id-1515 .tbl-inner-section.dark .tbl-eyebrow,body.page-id-1515 .tbl-page-hero .tbl-eyebrow{color:#9fd3b6}
body.tb-body .tb-article__back{min-height:40px;padding:6px 0}
.tb-pagination a,.tb-pagination span{min-height:40px;min-width:40px;display:inline-flex;align-items:center;justify-content:center}
body.tb-body .pbh-label,body.tb-body .os-summary-label{color:#3d4d47}
body.page-id-1515 main :is(span,small,b,i,em,strong,div,p,li,a,dt,dd,td,th){font-size:max(11.5px,1em)}

/* ---- v22: hero foot — audience links + scroll ring in flow (never overlapping) ---- */
.tb-hero__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;margin-top:6px}
.tb-hero__foot{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;font-size:13.5px;color:#fff}
.tb-hero__foot span::before{display:none}
body.tb-body .tb-hero__foot a{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(11,31,25,.38);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-weight:500;transition:background .3s,border-color .3s,transform .4s var(--tb-ease-out)}
body.tb-body .tb-hero__foot a i{width:6px;height:6px;border-radius:50%;background:var(--tb-gold);flex:none}
body.tb-body .tb-hero__foot a:hover{background:rgba(255,255,255,.14);border-color:var(--tb-gold);transform:translateY(-2px)}
.tb-ring{position:relative;right:auto;bottom:auto;flex:none;margin-left:auto;width:96px;height:96px;overflow:visible}
.tb-ring>svg{position:absolute;inset:0;width:96px;height:96px}
@media (max-width:700px){.tb-ring>svg{width:80px;height:80px}}
.tb-ring text{font-size:11px}
@media (max-width:700px){.tb-ring{width:80px;height:80px;margin-left:auto}.tb-hero__foot{font-size:13px}body.tb-body .tb-hero__foot a{min-height:36px;padding:0 12px}}
@media (max-height:700px){.tb-ring{display:none}}
/* v23 — front-page de-duplication */
@media (min-width:1100px){.tb-receive__grid--2{grid-template-columns:repeat(2,1fr);max-width:900px}}
.tb-process{scroll-margin-top:72px;overflow-x:clip}
/* v24 — inner-page interactive art + governance/policy pages on the story system */
.tb-page-hero--art .tb-wrap{max-width:var(--tb-wrap);margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(320px,540px);align-items:center;gap:clamp(28px,5vw,80px)}
.tb-page-hero__copy{display:grid;gap:18px;min-width:0}
.tb-page-hero--art .tb-page-hero__title{font-size:clamp(36px,4.4vw,62px)}
@media (max-width:900px){.tb-page-hero--art .tb-wrap{grid-template-columns:1fr}.tb-page-hero--art .tb-art{max-width:640px}}
.tb-art{position:relative;border-radius:var(--tb-radius);background:linear-gradient(180deg,#0f2b25,#0b1f19);padding:18px 18px 16px;display:grid;gap:12px;overflow:hidden;color:#e9f1ec;box-shadow:0 50px 80px -50px rgba(13,61,53,.6);isolation:isolate}
.tb-art::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.2px);background-size:22px 22px;opacity:.7;pointer-events:none}
.tb-art::after{content:"";position:absolute;left:0;right:0;top:-40%;height:40%;background:linear-gradient(180deg,transparent,rgba(217,164,65,.08),transparent);pointer-events:none;opacity:0}
.tb-art.is-seen::after{animation:tbArtScan 6s linear infinite}
@keyframes tbArtScan{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(350%);opacity:0}}
.tb-art>*{position:relative;z-index:2}
.tb-art .tb-hud{inset:8px;z-index:3}
.tb-art{padding:24px 24px 18px}
.tb-art [data-s]{opacity:0}
.tb-art__top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 6px}
.tb-art__tag{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#d9a441;font-weight:600}
.tb-art__live{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(233,241,236,.55);display:inline-flex;align-items:center;gap:6px}
.tb-art__live i{width:6px;height:6px;border-radius:50%;background:#d9a441;box-shadow:0 0 0 0 rgba(217,164,65,.6);animation:tbArtDot 2.2s ease-out infinite}
@keyframes tbArtDot{0%{box-shadow:0 0 0 0 rgba(217,164,65,.6)}100%{box-shadow:0 0 0 10px rgba(217,164,65,0)}}
.tb-art__scene{aspect-ratio:13/10;width:100%}
.tb-art__scene svg{width:100%;height:100%;display:block;overflow:visible}
.tb-art [data-depth],.tb-art [data-pos],.tb-art [data-rot]{transition:transform 1.1s var(--tb-ease);will-change:transform}
.tb-art [data-depth]{transition-duration:.6s}
.tb-art [data-s]{opacity:0;transition:opacity .55s var(--tb-ease)}
.tb-art [data-s].is-on{opacity:1}
.tb-art .ln{fill:none;stroke:#cfe6d8;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.tb-art .ln--gold{stroke:#d9a441}
.tb-art .ln--soft{stroke:rgba(233,241,236,.34);stroke-width:1.5}
.tb-art .ln--floor{stroke:rgba(233,241,236,.22);stroke-width:1.5}
.tb-art .fl{fill:#cfe6d8}.tb-art .fg{fill:#d9a441}.tb-art .fs{fill:rgba(255,255,255,.07);stroke:rgba(255,255,255,.14);stroke-width:1}
.tb-art .ring{fill:none;stroke:rgba(255,255,255,.14);stroke-width:1.2}
.tb-art .ring--dash{stroke-dasharray:3 7}
.tb-art .tx{fill:#e9f1ec;font:600 10.5px/1 var(--tb-font);letter-spacing:.08em;text-transform:uppercase}
.tb-art .tx--g{fill:#d9a441}.tb-art .tx--dim{fill:rgba(233,241,236,.55)}
.tb-art .num{fill:#fff;font:400 40px/1 var(--tb-serif)}
.tb-art .seg{stroke-dasharray:1;stroke-dashoffset:1;stroke-width:3;transition:stroke-dashoffset 1.1s var(--tb-ease),opacity .4s}
.tb-art .seg.is-on{stroke-dashoffset:0}
.tb-art .draw{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.2s var(--tb-ease) .15s,opacity .4s}
.tb-art .is-on .draw,.tb-art .draw.is-on{stroke-dashoffset:0}
.tb-art .pulse{animation:tbArtPulse 2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes tbArtPulse{0%,100%{opacity:1}50%{opacity:.45}}
.tb-art .spin{animation:tbArtSpin 3s linear infinite}
.tb-art .spin.is-still{animation-play-state:paused}
@keyframes tbArtSpin{to{transform:rotate(360deg)}}
.tb-art .is-swap{opacity:0!important;transition:none}
.tb-art .cal__d{fill:rgba(255,255,255,.35)}
.tb-art .c{fill:rgba(207,230,216,.5);transition:transform 1.2s var(--tb-ease),fill .5s}
.tb-art .cases.is-triaged .c--r{fill:#e05a4e}.tb-art .cases.is-triaged .c--a{fill:#d9a441}.tb-art .cases.is-triaged .c--g{fill:#3f8a6d}
.tb-art__nodes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
body.tb-body .tb-art__node{appearance:none;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#e9f1ec;border-radius:12px;padding:8px 8px 9px;display:grid;gap:3px;text-align:left;cursor:pointer;min-height:44px;transition:border-color .3s,background .3s,transform .3s var(--tb-ease);font-family:inherit}
body.tb-body .tb-art__node i{font-style:normal;font-size:11px;letter-spacing:.14em;color:rgba(233,241,236,.6)}
.tb-art__live{font-size:11px}
body.tb-body .tb-art__node b{font-size:12.5px;font-weight:600;line-height:1.15;letter-spacing:.01em}
body.tb-body .tb-art__node:hover{border-color:rgba(217,164,65,.5);background:rgba(217,164,65,.06)}
body.tb-body .tb-art__node.is-on{border-color:#d9a441;background:rgba(217,164,65,.14);transform:translateY(-2px)}
body.tb-body .tb-art__node.is-on i{color:#d9a441}
body.tb-body .tb-art__node:focus-visible{outline:2px solid #fff;outline-offset:2px}
.tb-art__cap{margin:0;min-height:2.7em;font-size:13.5px;line-height:1.45;color:rgba(233,241,236,.8);transition:opacity .16s;padding:0 4px}
@media (max-width:520px){.tb-art{padding:14px 14px 12px}.tb-art__top{padding:2px 14px 0}.tb-art__nodes{grid-template-columns:repeat(2,1fr)}body.tb-body .tb-art__node b{font-size:12px}.tb-art__cap{font-size:13px}.tb-art__live{display:none}}
@media (prefers-reduced-motion:reduce){.tb-art.is-seen::after,.tb-art__live i,.tb-art .pulse,.tb-art .spin{animation:none}.tb-art [data-depth],.tb-art [data-pos],.tb-art [data-rot],.tb-art [data-s],.tb-art .seg,.tb-art .draw{transition:none}}
/* governance pages */
.tb-points{display:grid;gap:10px;margin-top:26px}
.tb-points>div{display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:start;padding:16px 18px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line)}
.tb-points i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--tb-forest);color:#fff;font-style:normal;font-size:13px;font-weight:600}
.tb-points strong{display:block;font-size:16px;color:var(--tb-text);margin-bottom:3px}
.tb-points span{font-size:14.5px;color:var(--tb-muted)}
.tb-points a{color:var(--tb-forest);text-decoration:underline;text-underline-offset:3px}
.tb-warn{margin-top:26px;padding:18px 22px;border-radius:var(--tb-radius-sm);background:#fff6e5;border:1px solid rgba(217,164,65,.5);color:#5a3f0d;font-size:15px}
.tb-warn--red{background:#fdeceb;border-color:rgba(224,90,78,.5);color:#7a2118}
.tb-band{margin-top:26px;padding:24px 26px;border-radius:var(--tb-radius);background:var(--tb-forest);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.tb-band h3{font-size:22px;color:#fff;margin:0 0 6px}.tb-band p{margin:0;color:rgba(255,255,255,.78);max-width:60ch;font-size:15px}
.tb-doccontrol{margin-top:26px;font-size:13.5px;color:var(--tb-muted);border-top:1px solid var(--tb-line);padding-top:16px}
.tb-dl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px;margin:0}
.tb-dl div{padding:12px 0;border-bottom:1px solid var(--tb-line)}
.tb-dl dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text);margin-bottom:4px}
.tb-dl dd{margin:0;font-size:15.5px;color:var(--tb-text)}
.tb-pack{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tb-pack span{padding:9px 14px;border-radius:999px;border:1px solid var(--tb-line);background:#fff;font-size:13.5px;color:var(--tb-text)}
.tb-assure{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tb-assure article{padding:24px;border-radius:var(--tb-radius);background:#fff;border:1px solid var(--tb-line);display:grid;gap:10px;align-content:start}
.tb-assure b{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text)}
.tb-assure h3{font-size:20px;line-height:1.15}.tb-assure p{color:var(--tb-muted);font-size:14.5px;margin:0}
.tb-checklist6{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tb-checklist6>div{padding:20px;border-radius:var(--tb-radius-sm);background:#fff;border:1px solid var(--tb-line)}
.tb-checklist6 strong{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--tb-forest);margin-bottom:8px}
.tb-checklist6 p{margin:0;font-size:14.5px;color:var(--tb-muted)}
@media (max-width:900px){.tb-assure,.tb-checklist6{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tb-assure,.tb-checklist6,.tb-dl{grid-template-columns:1fr}}
/* policy page */
.tb-control{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px 0;border-top:1px solid var(--tb-line);border-bottom:1px solid var(--tb-line)}
.tb-control span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text);margin-bottom:4px}
.tb-control strong{font-size:14.5px;color:var(--tb-text);font-weight:600}
.tb-policy{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start}
.tb-policy__nav{position:sticky;top:calc(var(--tb-header-h) + 20px);display:grid;gap:4px}
.tb-policy__nav span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text);margin-bottom:8px}
body.tb-body .tb-policy__nav a{display:flex;gap:10px;padding:8px 10px;border-radius:10px;font-size:14px;color:var(--tb-text);text-decoration:none;border-left:2px solid transparent}
body.tb-body .tb-policy__nav a b{font-weight:600;color:var(--tb-leaf-text);font-variant-numeric:tabular-nums}
body.tb-body .tb-policy__nav a:hover,body.tb-body .tb-policy__nav a.is-on{background:#fff;border-left-color:var(--tb-gold)}
.tb-policy__block{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;padding:32px 0;border-top:1px solid var(--tb-line);scroll-margin-top:calc(var(--tb-header-h) + 16px)}
.tb-policy__block>span{font:400 34px/1 var(--tb-serif);color:var(--tb-gold)}
.tb-policy__block small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tb-leaf-text);margin-bottom:8px}
.tb-policy__block h2{font-size:clamp(22px,2.4vw,30px);line-height:1.15;margin:0 0 12px}
.tb-policy__block p,.tb-policy__block li{font-size:15.5px;color:var(--tb-muted);line-height:1.6}
.tb-policy__block ul{padding-left:18px;margin:0;display:grid;gap:6px}
.tb-policy__mini{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px}
.tb-policy__mini div{padding:12px;border-radius:12px;background:#fff;border:1px solid var(--tb-line)}
.tb-policy__mini b{display:block;font-size:11px;letter-spacing:.12em;color:var(--tb-forest);margin-bottom:4px}
.tb-policy__mini span{font-size:12.5px;color:var(--tb-muted);line-height:1.35}
.tb-policy__alert{margin-top:16px;padding:16px 18px;border-radius:12px;background:#fff6e5;border:1px solid rgba(217,164,65,.5);display:grid;gap:4px}
.tb-policy__alert strong{color:#5a3f0d}.tb-policy__alert span{font-size:14.5px;color:#5a3f0d}
.tb-sources{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}
body.tb-body .tb-sources a{display:grid;gap:8px;padding:20px;border-radius:var(--tb-radius-sm);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;text-decoration:none;transition:border-color .3s,transform .3s var(--tb-ease)}
body.tb-body .tb-sources a:hover{border-color:rgba(217,164,65,.6);transform:translateY(-3px)}
.tb-sources span{font-size:11px;letter-spacing:.14em;color:#d9a441}
.tb-sources strong{font-size:16px;line-height:1.2;color:#fff}
.tb-sources small{font-size:12.5px;color:rgba(255,255,255,.65);line-height:1.4}
@media (max-width:900px){.tb-policy{grid-template-columns:1fr}.tb-policy__nav{position:static;grid-template-columns:repeat(2,1fr)}.tb-policy__mini{grid-template-columns:repeat(2,1fr)}.tb-sources{grid-template-columns:1fr 1fr}.tb-control{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tb-policy__block{grid-template-columns:1fr;gap:6px}.tb-sources{grid-template-columns:1fr}.tb-policy__nav{grid-template-columns:1fr}}
/* v25 — simpler art, hero fits the viewport */
.tb-page-hero--art{padding:calc(var(--tb-header-h) + clamp(28px,4vw,48px)) 0 clamp(28px,4vw,44px)}
.tb-page-hero--art .tb-wrap{grid-template-columns:minmax(0,1fr) minmax(300px,480px);gap:clamp(24px,4vw,64px)}
.tb-page-hero--art .tb-page-hero__title{font-size:clamp(32px,3.8vw,54px)}
.tb-page-hero--art .tb-lead{font-size:clamp(15px,1.3vw,18px)}
.tb-page-hero__copy{gap:14px}
.tb-art{padding:16px 16px 14px;gap:10px;background:linear-gradient(180deg,#10302a,#0b1f19);box-shadow:0 30px 60px -40px rgba(13,61,53,.6)}
.tb-art::before,.tb-art::after,.tb-art .tb-hud,.tb-art__top{display:none}
.tb-art__scene{aspect-ratio:2/1;max-height:min(40vh,300px)}
.tb-art .ln{stroke-width:3}
.tb-art .ln--soft{stroke-width:2}
.tb-art .fs{stroke:none;fill:rgba(255,255,255,.08)}
.tb-art .big{fill:#e9f1ec;font:400 20px/1 var(--tb-serif);letter-spacing:0}
.tb-art .tx{font-size:12px}
.tb-art .num{font-size:44px}
.tb-art__nodes{grid-template-columns:repeat(4,1fr);gap:6px}
body.tb-body .tb-art__node{display:block;text-align:center;padding:9px 6px;min-height:40px;font-size:12.5px;font-weight:600;border-radius:10px;line-height:1.2}
body.tb-body .tb-art__node.is-on{transform:none}
.tb-art__cap{min-height:0;font-size:13.5px;text-align:center}
@media (max-width:900px){.tb-page-hero--art .tb-wrap{grid-template-columns:1fr}.tb-page-hero--art{padding-top:calc(var(--tb-header-h) + 20px);padding-bottom:24px}.tb-page-hero--art .tb-page-hero__title{font-size:clamp(28px,7.4vw,36px)}.tb-page-hero__copy{gap:10px}.tb-art__scene{max-height:27vh}.tb-page-hero--art .tb-art{max-width:none}.tb-page-hero--art .tb-lead{font-size:15px}.tb-page-hero--art .tb-actions{margin-top:2px}}
@media (max-width:520px){.tb-art__nodes{grid-template-columns:repeat(2,1fr);gap:4px}body.tb-body .tb-art__node{font-size:12.5px;min-height:36px;padding:7px 6px}.tb-art{padding:12px 12px 10px;gap:8px}.tb-art__cap{font-size:13px}.tb-art .big{font-size:22px}.tb-page-hero--art .tb-actions{gap:8px 16px}}
/* v26 — soft-3D art glyphs; tabs carry the page's own points */
.tb-art .skin{fill:url(#gSkin)}.tb-art .body{fill:url(#gBody)}
.tb-art .limb{fill:none;stroke:#b7dac8;stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.tb-art .gold{fill:url(#gGold)}.tb-art .dot{fill:url(#gGold)}
.tb-art .strap{fill:none;stroke:#e2b85e;stroke-width:3;stroke-linecap:round}
.tb-art .sling{fill:none;stroke:url(#gGold);stroke-width:9;stroke-linecap:round}
.tb-art .frame{fill:none;stroke:url(#gGold);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.tb-art .rail{fill:url(#gRail)}
.tb-art .card{fill:url(#gCard);stroke:rgba(255,255,255,.16);stroke-width:1}
.tb-art .card--solid{fill:#e9f1ec;stroke:none}
.tb-art .gsh{fill:rgba(0,0,0,.38)}
.tb-art .floor{fill:url(#gFloor)}
.tb-art .lens{fill:rgba(217,164,65,.16);stroke:url(#gGold);stroke-width:4}
.tb-art .shield{fill:rgba(217,164,65,.2);stroke:url(#gGold);stroke-width:4;stroke-linejoin:round}
.tb-art .dash{fill:none;stroke:#d9a441;stroke-width:2.5;stroke-dasharray:8 8}
.tb-art .dash--on{animation:tbDash 1.2s linear infinite}
@keyframes tbDash{to{stroke-dashoffset:-32}}
.tb-art .tick{fill:none;stroke:#0b1f19;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.tb-art .btn{fill:none;stroke:#cfe6d8;stroke-width:3}
.tb-art .hl{fill:rgba(217,164,65,.12);stroke:#d9a441;stroke-width:3;animation:tbArtPulse 2s ease-in-out infinite}
.tb-art .seg{fill:none;stroke:#d9a441;stroke-width:5;stroke-linecap:round}
.tb-art .ring--on{stroke:#d9a441;stroke-width:3;transition:opacity .55s var(--tb-ease)}
.tb-art__scene{aspect-ratio:2/1}
.tb-art__nodes{gap:6px}
.tb-art__nodes--3{grid-template-columns:repeat(3,1fr)}
body.tb-body .tb-art__node{padding:8px 8px 9px;min-height:52px;text-align:left;display:grid;gap:2px;align-content:start;line-height:1.15}
body.tb-body .tb-art__node i{display:block;font-style:normal;font-size:10.5px;letter-spacing:.14em;color:rgba(233,241,236,.55)}
body.tb-body .tb-art__node.is-on i{color:#d9a441}
.tb-art__cap{min-height:3.9em;text-align:left;font-size:13.5px;line-height:1.5}
.tb-section--tight{padding-top:0}
@media (max-width:520px){.tb-art__nodes--3,.tb-art__nodes--4{grid-template-columns:repeat(2,1fr)}body.tb-body .tb-art__node{min-height:42px;font-size:12px;padding:6px 8px 7px}body.tb-body .tb-art__node i{font-size:10px}.tb-art__cap{min-height:3.6em;font-size:12.5px}.tb-art__scene{max-height:24vh}.tb-art{gap:6px}}
/* v27 — art tabs as in-page navigation */
body.tb-body .tb-art__node{position:relative}
body.tb-body .tb-art__node[data-target]::after{content:"\2193";position:absolute;right:8px;top:7px;font-size:11px;color:rgba(233,241,236,.45)}
.tb-bookstep,.tb-service,.tb-policy__block,#assure-company,#assure-identity,#assure-evidence{scroll-margin-top:calc(var(--tb-header-h) + 14px)}
.is-hit{outline:2px solid var(--tb-gold);outline-offset:6px;border-radius:var(--tb-radius);transition:outline-color .8s}
.tb-bookstep.is-hit,section.is-hit{outline:none;box-shadow:inset 4px 0 0 var(--tb-gold)}
/* v28 — hero foot as a plain index (no buttons); lock horizontal scroll on mobile */
html{overflow-x:clip}
@supports not (overflow:clip){html,body.tb-body{overflow-x:hidden}}
body.tb-body{touch-action:pan-y pinch-zoom}
.tb-rail,.tb-menu__panel{touch-action:auto}
.tb-hero__foot{gap:6px 26px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
body.tb-body .tb-hero__foot a{min-height:0;padding:6px 0;border:0;border-radius:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;gap:10px;color:rgba(240,246,242,.88);position:relative;transition:color .3s}
body.tb-body .tb-hero__foot a i{width:18px;height:1.5px;border-radius:0;background:var(--tb-gold);transition:width .35s var(--tb-ease-out)}
body.tb-body .tb-hero__foot a:hover{background:none;border-color:transparent;transform:none;color:#fff}
body.tb-body .tb-hero__foot a:hover i{width:28px}
body.tb-body .tb-hero__foot a::after{content:"";position:absolute;left:28px;right:0;bottom:2px;height:1px;background:currentColor;opacity:0;transform:scaleX(.6);transform-origin:left;transition:opacity .3s,transform .4s var(--tb-ease-out)}
body.tb-body .tb-hero__foot a:hover::after{opacity:.6;transform:none}
@media (max-width:700px){.tb-hero__foot{flex-direction:column;align-items:flex-start;gap:2px;font-size:12px}body.tb-body .tb-hero__foot a{min-height:0;padding:5px 0}}
@media (prefers-reduced-motion:reduce){.tb-menu__group,.tb-menu__foot{animation:none;opacity:1;transform:none}.tb-final__words i{opacity:1;transform:none;transition:none}.tb-mega.is-in *{animation:none}}
@media (min-width:900px) and (max-height:820px){.tb-nodecard{padding:16px 18px 18px}.tb-nodecard p{font-size:13.5px}.tb-nodecard .tb-factors li{padding:7px 10px;font-size:12.5px}.tb-nodecard__head{margin-bottom:8px}}
@media (prefers-reduced-motion:reduce){.tb-stage::before,#providers .tb-room--art::before,.tb-hud b::before,.tb-stage .tb-node.is-active::after,.tb-stage .tb-node.is-active::before,.tb-stage__link line,#providers .tb-hot.is-active::after,#providers .tb-hot.is-active::before{animation:none}}
