html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#F4F3EE}
a{color:#3E5A3F}a:hover{color:#0F1F17}
.tc-root{overflow-x:hidden;-webkit-font-smoothing:antialiased}
.tc-root *{box-sizing:border-box}
@keyframes tc-spin{to{transform:rotate(360deg)}}
@keyframes tc-counter{to{transform:rotate(-360deg)}}
@keyframes tc-charge{0%{stroke-dashoffset:880}55%{stroke-dashoffset:0}78%{stroke-dashoffset:0}100%{stroke-dashoffset:-880}}
@keyframes tc-fill{0%{transform:scaleX(.12)}55%{transform:scaleX(1)}78%{transform:scaleX(1)}100%{transform:scaleX(.12)}}
@keyframes tc-street{to{stroke-dashoffset:-1760}}
@keyframes tc-ping{0%{transform:scale(1);opacity:.75}100%{transform:scale(3.2);opacity:0}}
@keyframes tc-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes tc-marquee{to{transform:translateX(-50%)}}
@keyframes tc-draw{to{stroke-dashoffset:0}}
@keyframes tc-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes tc-breathe{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes tc-grow{from{transform:scaleY(.08)}to{transform:scaleY(1)}}
.tc-orbit{transform-box:view-box;transform-origin:280px 280px;animation:tc-spin 80s linear infinite}
.tc-upright{transform-box:fill-box;transform-origin:center;animation:tc-counter 80s linear infinite}
.tc-spark{transform-box:view-box;transform-origin:280px 280px;animation:tc-spin 4.8s cubic-bezier(.77,0,.175,1) infinite}
.tc-ring{stroke-dasharray:880;stroke-dashoffset:0;animation:tc-charge 4.8s cubic-bezier(.77,0,.175,1) infinite}
.tc-fill{transform-origin:left center;animation:tc-fill 4.8s cubic-bezier(.77,0,.175,1) infinite}
.tc-street{stroke-dasharray:80 1680;animation:tc-street 9s linear infinite}
.tc-ping{transform-box:fill-box;transform-origin:center;animation:tc-ping 2.8s cubic-bezier(.23,1,.32,1) infinite}
.tc-dotping{animation:tc-ping 2.2s cubic-bezier(.23,1,.32,1) infinite}
.tc-bob{animation:tc-bob 7s ease-in-out infinite}
.tc-marquee{animation:tc-marquee 42s linear infinite}
.tc-draw{stroke-dasharray:320;stroke-dashoffset:320;animation:tc-draw 1.1s cubic-bezier(.23,1,.32,1) .9s forwards}
.tc-drawcheck{stroke-dasharray:30;stroke-dashoffset:30;animation:tc-draw .5s cubic-bezier(.23,1,.32,1) .15s forwards}
.tc-rise{opacity:0;animation:tc-rise .8s cubic-bezier(.23,1,.32,1) forwards}
.tc-breathe{animation:tc-breathe 7s ease-in-out infinite}
.tc-bar{transform-origin:bottom center;animation:tc-grow 1.2s cubic-bezier(.23,1,.32,1) both}
.tc-mask{-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.tc-navlinks{display:flex}
.tc-m-only{display:none}
@media (max-width:860px){.tc-navlinks{display:none}.tc-navchip{display:none !important}.tc-m-only{display:inline}}
.tc-tile{transition:transform .25s cubic-bezier(.23,1,.32,1),box-shadow .25s cubic-bezier(.23,1,.32,1)}
.tc-tile:hover{transform:translateY(-6px);box-shadow:0 1px 2px rgba(15,31,23,.04),0 18px 36px -16px rgba(15,31,23,.3)}
.tc-tile .tc-face{transition:color .25s}
.tc-tile:hover .tc-face{color:#0F1F17}
.tc-btn{transition:transform .16s cubic-bezier(.23,1,.32,1)}
.tc-btn:active{transform:scale(.97)}
.tc-arrow{transition:transform .25s cubic-bezier(.23,1,.32,1)}
.tc-btn:hover .tc-arrow{transform:translateX(3px)}
.tc-input::placeholder{color:#9AA592}
.tc-input:focus{outline:none}
.tc-field:focus-within{border-color:rgba(200,241,105,.7)!important;box-shadow:0 0 0 4px rgba(200,241,105,.14)}
.tc-root a:focus-visible,.tc-root button:focus-visible{outline:2px solid #C8F169;outline-offset:3px}
.tc-light a:focus-visible,.tc-light button:focus-visible{outline-color:#0F1F17}
.tc-navlink{color:#C7CBB8;text-decoration:none}
.tc-navlink:hover{color:#F4F3EE}
.tc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes tc-drift1{0%{transform:translate(0,0) scale(1)}100%{transform:translate(180px,90px) scale(1.18)}}
@keyframes tc-drift2{0%{transform:translate(0,0) scale(1.1)}100%{transform:translate(-160px,140px) scale(.9)}}
@keyframes tc-drift3{0%{transform:translate(0,0) scale(1)}100%{transform:translate(-220px,-70px) scale(1.2)}}
.tc-aurora1{animation:tc-drift1 22s ease-in-out infinite alternate}
.tc-aurora2{animation:tc-drift2 28s ease-in-out infinite alternate}
.tc-aurora3{animation:tc-drift3 34s ease-in-out infinite alternate}
@keyframes tc-wave{0%{transform:scaleY(0);opacity:0}8%{opacity:1}38%{transform:scaleY(1);opacity:.9}62%{transform:scaleY(1);opacity:0}100%{transform:scaleY(1);opacity:0}}
.tc-wave{transform-origin:bottom center;animation:tc-wave 6s cubic-bezier(.77,0,.175,1) infinite both}
@keyframes tc-spark-a{0%{transform:translate(0,0);opacity:0}12%{opacity:.9}80%{opacity:.5}100%{transform:translate(40px,-560px);opacity:0}}
@keyframes tc-spark-b{0%{transform:translate(0,0);opacity:0}12%{opacity:.9}80%{opacity:.5}100%{transform:translate(-36px,-500px);opacity:0}}
.tc-spark-a{animation:tc-spark-a 9s linear infinite both}
.tc-spark-b{animation:tc-spark-b 11s linear infinite both}
@keyframes tc-char{0%{opacity:0;filter:blur(10px);transform:translateY(.25em)}4%{opacity:1;filter:blur(0);transform:none}17%{opacity:1;filter:blur(0);transform:none}20%{opacity:0;filter:blur(10px);transform:translateY(-.2em)}100%{opacity:0;filter:blur(10px);transform:translateY(-.2em)}}
.tc-char{opacity:0;animation:tc-char 13s cubic-bezier(.23,1,.32,1) infinite both}
.tc-spot{transition:transform .9s cubic-bezier(.23,1,.32,1)}
@media (hover:none){.tc-spot{display:none}}
.tc-hero{--mx:72%;--my:38%;--nx:0;--ny:0}
.tc-ray{position:absolute;top:-30%;width:260px;height:150%;margin-left:-130px;transform-origin:50% 0;background:linear-gradient(90deg,rgba(200,241,105,0),rgba(200,241,105,0.06) 50%,rgba(200,241,105,0));-webkit-mask-image:linear-gradient(180deg,#000 10%,rgba(0,0,0,0) 75%);mask-image:linear-gradient(180deg,#000 10%,rgba(0,0,0,0) 75%);animation:tc-sweep 17s ease-in-out infinite alternate}
@keyframes tc-sweep{0%{transform:rotate(-14deg)}100%{transform:rotate(12deg)}}
.tc-floorwrap{position:absolute;left:0;right:0;bottom:0;height:46%;perspective:420px;perspective-origin:50% 0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0.25),#000 45%);mask-image:linear-gradient(180deg,rgba(0,0,0,0.25),#000 45%);transform:translateX(calc(var(--nx) * -18px));transition:transform .8s cubic-bezier(.23,1,.32,1)}
.tc-floor{position:absolute;top:0;left:calc(50% - 1440px);width:2880px;height:1600px;transform-origin:50% 0;transform:rotateX(74deg);background-image:linear-gradient(rgba(199,203,184,0.16) 1px,rgba(0,0,0,0) 1px),linear-gradient(90deg,rgba(199,203,184,0.16) 1px,rgba(0,0,0,0) 1px);background-size:72px 72px;animation:tc-floor 2.6s linear infinite}
@keyframes tc-floor{from{background-position:0 0}to{background-position:0 72px}}
.tc-lane{position:absolute;top:0;width:3px;height:220px;border-radius:2px;background:linear-gradient(180deg,rgba(200,241,105,0),#C8F169);box-shadow:0 0 14px rgba(200,241,105,0.8);animation:tc-lane 4s cubic-bezier(.55,0,.75,.2) infinite both}
@keyframes tc-lane{0%{transform:translateY(-240px);opacity:0}10%{opacity:1}100%{transform:translateY(1600px);opacity:1}}
.tc-dots{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(199,203,184,0.08) 1px,rgba(0,0,0,0) 1.5px);background-size:28px 28px}
.tc-dotlit{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(200,241,105,0.7) 1.2px,rgba(0,0,0,0) 1.7px);background-size:28px 28px;-webkit-mask-image:radial-gradient(240px circle at var(--mx) var(--my),#000,rgba(0,0,0,0) 72%);mask-image:radial-gradient(240px circle at var(--mx) var(--my),#000,rgba(0,0,0,0) 72%)}
.tc-spot{position:absolute;left:var(--mx);top:var(--my);width:720px;height:720px;margin:-360px 0 0 -360px;pointer-events:none;background:radial-gradient(closest-side,rgba(200,241,105,0.10),rgba(200,241,105,0));transition:left .6s cubic-bezier(.23,1,.32,1),top .6s cubic-bezier(.23,1,.32,1)}
.tc-grain{position:absolute;inset:-50%;pointer-events:none;opacity:.09;background-image:url(assets/grain.svg);background-size:240px 240px;animation:tc-grain 1.2s steps(6) infinite}
@keyframes tc-grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.tc-tilt{transform:perspective(1400px) rotateY(calc(var(--nx) * 7deg)) rotateX(calc(var(--ny) * -5deg));transition:transform .7s cubic-bezier(.23,1,.32,1)}
@media (hover:none){.tc-spot,.tc-dotlit{display:none}.tc-tilt{transform:none}}
@property --pct{syntax:'<integer>';inherits:false;initial-value:80}
.tc-pct{counter-reset:pct var(--pct);animation:tc-t-pct 12s linear infinite}
.tc-pct::after{content:counter(pct) "%"}
@keyframes tc-t-pct{0%,22%{--pct:23}76%,100%{--pct:80}}
@keyframes tc-t-car{0%{transform:translateX(330px);opacity:0;animation-timing-function:cubic-bezier(.16,1,.3,1)}2%{opacity:1}15%{transform:translateX(0);opacity:1}84%{transform:translateX(0);opacity:1;animation-timing-function:cubic-bezier(.7,0,.84,0)}98%{transform:translateX(330px);opacity:0}100%{transform:translateX(330px);opacity:0}}
.tc-t-car{animation:tc-t-car 12s infinite}
@keyframes tc-t-wheel{0%{transform:rotate(0deg);animation-timing-function:cubic-bezier(.16,1,.3,1)}15%{transform:rotate(-864deg)}84%{transform:rotate(-864deg);animation-timing-function:cubic-bezier(.7,0,.84,0)}98%{transform:rotate(0deg)}100%{transform:rotate(0deg)}}
.tc-t-wheel{transform-box:fill-box;transform-origin:center;animation:tc-t-wheel 12s infinite}
@keyframes tc-t-cable{0%,16%{stroke-dashoffset:100}22%,78%{stroke-dashoffset:0}83%,100%{stroke-dashoffset:100}}
.tc-t-cable{stroke-dasharray:100;stroke-dashoffset:0;animation:tc-t-cable 12s cubic-bezier(.23,1,.32,1) infinite}
@keyframes tc-t-on{0%,22%{opacity:0}26%,76%{opacity:1}80%,100%{opacity:0}}
.tc-t-on{animation:tc-t-on 12s infinite}
@keyframes tc-flowdash{to{stroke-dashoffset:-24}}
.tc-t-flow{animation:tc-flowdash .8s linear infinite,tc-t-on 12s infinite}
@keyframes tc-t-hud{0%,20%{opacity:0;transform:translateY(10px)}25%,80%{opacity:1;transform:none}85%,100%{opacity:0;transform:translateY(-6px)}}
.tc-t-hud{animation:tc-t-hud 12s cubic-bezier(.23,1,.32,1) infinite}
@keyframes tc-t-bar{0%,22%{transform:scaleX(.23)}76%,100%{transform:scaleX(.8)}}
.tc-t-bar{transform-origin:left center;transform:scaleX(.8);animation:tc-t-bar 12s linear infinite}
@keyframes tc-t-lbl1{0%,74%{opacity:1}76%,100%{opacity:0}}
@keyframes tc-t-lbl2{0%,74%{opacity:0}76%,100%{opacity:1}}
.tc-t-lbl1{animation:tc-t-lbl1 12s infinite}
.tc-t-lbl2{opacity:0;animation:tc-t-lbl2 12s infinite}
@keyframes tc-t-lamp{0%,10%{opacity:0}14%,92%{opacity:1}97%,100%{opacity:0}}
.tc-t-lamp{animation:tc-t-lamp 12s infinite}
@keyframes tc-t-beam{0%{opacity:0}3%{opacity:1}15%{opacity:.8}20%,100%{opacity:0}}
.tc-t-beam{opacity:0;animation:tc-t-beam 12s infinite}
@keyframes tc-led{0%,100%{opacity:1}50%{opacity:.3}}
.tc-led{animation:tc-led 1.6s ease-in-out infinite}
@keyframes tc-padring{0%{transform:scale(.55);opacity:.9}100%{transform:scale(1.3);opacity:0}}
.tc-padring{transform-box:fill-box;transform-origin:center;animation:tc-padring 2s cubic-bezier(.23,1,.32,1) infinite}
@keyframes tc-twinkle{0%,100%{opacity:.25}50%{opacity:1}}
.tc-twinkle{animation:tc-twinkle 3.2s ease-in-out infinite}
.tc-glow,.tc-glow-soft{position:relative;--mx:-999px;--my:-999px}
.tc-glow::before,.tc-glow-soft::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(200,241,105,0.18),rgba(200,241,105,0) 62%)}
.tc-glow::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;padding:1.5px;background:radial-gradient(280px circle at var(--mx) var(--my),rgba(62,90,63,0.95),rgba(62,90,63,0) 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.tc-glow-dark::before{background:radial-gradient(420px circle at var(--mx) var(--my),rgba(200,241,105,0.16),rgba(200,241,105,0) 62%)}
.tc-glow-dark::after{background:radial-gradient(280px circle at var(--mx) var(--my),rgba(200,241,105,0.8),rgba(200,241,105,0) 70%)}
.tc-glow-soft::before{background:radial-gradient(640px circle at var(--mx) var(--my),rgba(62,90,63,0.12),rgba(62,90,63,0) 65%)}
.tc-glow-soft.tc-glow-dark::before{background:radial-gradient(640px circle at var(--mx) var(--my),rgba(200,241,105,0.09),rgba(200,241,105,0) 65%)}
.tc-glow:hover::before,.tc-glow:hover::after,.tc-glow-soft:hover::before{opacity:1}
@media (hover:none){.tc-glow::before,.tc-glow::after,.tc-glow-soft::before{display:none}}
.tc-navlink-l{color:#3D4337;text-decoration:none}
.tc-navlink-l:hover{color:#0F1F17}
.tc-hgrid,.tc-hgridlit{position:absolute;inset:0;pointer-events:none;background-size:64px 64px}
.tc-hgrid{background-image:linear-gradient(rgba(15,31,23,0.05) 1px,rgba(0,0,0,0) 1px),linear-gradient(90deg,rgba(15,31,23,0.05) 1px,rgba(0,0,0,0) 1px);-webkit-mask-image:radial-gradient(ellipse 75% 70% at 50% 35%,#000 20%,rgba(0,0,0,0) 78%);mask-image:radial-gradient(ellipse 75% 70% at 50% 35%,#000 20%,rgba(0,0,0,0) 78%)}
.tc-hgridlit{background-image:linear-gradient(rgba(62,90,63,0.4) 1px,rgba(0,0,0,0) 1px),linear-gradient(90deg,rgba(62,90,63,0.4) 1px,rgba(0,0,0,0) 1px);-webkit-mask-image:radial-gradient(240px circle at var(--mx) var(--my),#000,rgba(0,0,0,0) 75%);mask-image:radial-gradient(240px circle at var(--mx) var(--my),#000,rgba(0,0,0,0) 75%)}
.tc-hglow{position:absolute;left:var(--mx);top:var(--my);width:900px;height:900px;margin:-450px 0 0 -450px;pointer-events:none;background:radial-gradient(closest-side,rgba(200,241,105,0.32),rgba(200,241,105,0));transition:left .7s cubic-bezier(.23,1,.32,1),top .7s cubic-bezier(.23,1,.32,1)}
@media (hover:none){.tc-hgridlit,.tc-hglow{display:none}}
.tc-grain-light{opacity:.045}
.tc-hl{position:absolute;left:-0.06em;right:-0.04em;top:0.52em;bottom:0.02em;z-index:-1;border-radius:.12em;background:#C8F169;transform-origin:left center;transform:scaleX(0);animation:tc-hl 13s cubic-bezier(.23,1,.32,1) infinite both}
@keyframes tc-hl{0%{transform:scaleX(0);opacity:1}5%{transform:scaleX(1);opacity:1}17%{transform:scaleX(1);opacity:1}20%{transform:scaleX(1);opacity:0}100%{transform:scaleX(1);opacity:0}}
@keyframes tc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.tc-float{animation:tc-float 9s ease-in-out infinite}
@keyframes dz-carA{0%{transform:translate(-99.1px,-57.2px);opacity:0;animation-timing-function:cubic-bezier(.16,1,.3,1)}3%{opacity:1}20%{transform:translate(0,0);opacity:1}68%{transform:translate(0,0);opacity:1;animation-timing-function:cubic-bezier(.7,0,.84,0)}86%{transform:translate(186.7px,107.8px);opacity:1}90%{transform:translate(186.7px,107.8px);opacity:0}100%{transform:translate(186.7px,107.8px);opacity:0}}
.dz-carA{animation:dz-carA 12s infinite}
@keyframes dz-beamA{0%,18%{opacity:1}23%,66%{opacity:0}70%,100%{opacity:1}}
.dz-carA-beam{opacity:0;animation:dz-beamA 12s infinite}
@keyframes dz-carB{0%{transform:translate(41.9px,-24.2px);opacity:0}6%{opacity:1}92%{opacity:1}100%{transform:translate(-251.5px,145.2px);opacity:0}}
.dz-carB{animation:dz-carB 7s linear infinite}
@keyframes dz-cable{0%,21%{stroke-dashoffset:100}25%,64%{stroke-dashoffset:0}67%,100%{stroke-dashoffset:100}}
.dz-cable{stroke-dasharray:100;stroke-dashoffset:0;animation:dz-cable 12s cubic-bezier(.23,1,.32,1) infinite}
@keyframes dz-on{0%,23%{opacity:0}27%,64%{opacity:1}67%,100%{opacity:0}}
.dz-on{animation:dz-on 12s infinite}
.dz-flow{animation:tc-flowdash .8s linear infinite,dz-on 12s infinite}
@keyframes dz-win{0%,24%{opacity:0}30%,64%{opacity:.55}70%,100%{opacity:0}}
.dz-win{opacity:.55;animation:dz-win 12s infinite}
@keyframes dz-ring{0%,25%{stroke-dashoffset:100}64%,86%{stroke-dashoffset:0}90%,100%{stroke-dashoffset:100}}
.dz-ring{stroke-dasharray:100;stroke-dashoffset:20;animation:dz-ring 12s linear infinite}
.dz-ripple{transform-box:fill-box;transform-origin:center;animation:tc-padring 2s cubic-bezier(.23,1,.32,1) infinite}
@keyframes dz-net{from{stroke-dashoffset:0}to{stroke-dashoffset:-628}}
.dz-net{stroke-dasharray:28 600;animation:dz-net 5s linear infinite}
.dz-led{animation:tc-led 1.6s ease-in-out infinite}
@keyframes dz-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.dz-bob{animation:dz-bob 4s ease-in-out infinite}
.dz-ping{transform-box:fill-box;transform-origin:center;animation:tc-ping 2.4s cubic-bezier(.23,1,.32,1) infinite}
@keyframes tc-pct2{0%,25%{--pct:23}64%,88%{--pct:80}90%,100%{--pct:23}}
.tc-pct{animation:tc-pct2 12s linear infinite}
@keyframes tc-bar2{0%,25%{transform:scaleX(.23)}64%,88%{transform:scaleX(.8)}90%,100%{transform:scaleX(.23)}}
.tc-t-bar{animation:tc-bar2 12s linear infinite}
@keyframes tc-readout{0%,20%{opacity:.35}25%,88%{opacity:1}90%,100%{opacity:.35}}
.tc-readout{animation:tc-readout 12s infinite}
@keyframes tc-l1{0%,22%{opacity:1}24%,88%{opacity:0}90%,100%{opacity:1}}
@keyframes tc-l2{0%,22%{opacity:0}24%,63%{opacity:1}65%,100%{opacity:0}}
@keyframes tc-l3{0%,63%{opacity:0}65%,88%{opacity:1}90%,100%{opacity:0}}
.tc-l1{opacity:0;animation:tc-l1 12s infinite}
.tc-l2{opacity:1;animation:tc-l2 12s infinite}
.tc-l3{opacity:0;animation:tc-l3 12s infinite}
.tc-still .tc-hl{opacity:0}
.tc-still .tc-hl-first{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.tc-hl{opacity:0}.tc-hl-first{opacity:1;transform:none}}
.tc-still *{animation:none!important}
.tc-still .tc-rise{opacity:1}
.tc-still .tc-draw,.tc-still .tc-drawcheck{stroke-dashoffset:0}
.tc-still .tc-wave,.tc-still .tc-spark-a,.tc-still .tc-spark-b{opacity:0}
.tc-still .tc-char{opacity:0}
.tc-still .tc-char-first{opacity:1;filter:none;transform:none}
.tc-still .tc-lane{opacity:0}
@media (prefers-reduced-motion:reduce){.tc-root *{animation:none!important}.tc-rise{opacity:1}.tc-draw,.tc-drawcheck{stroke-dashoffset:0}.tc-wave,.tc-spark-a,.tc-spark-b,.tc-char{opacity:0}.tc-char-first{opacity:1;filter:none;transform:none}.tc-spot{display:none}.tc-lane{opacity:0}.tc-tilt{transform:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[id]{scroll-margin-top:24px}

@media (max-width:560px){
  .tc-tilt{aspect-ratio:4 / 5 !important;border-radius:28px !important}
  .tc-hud{width:auto !important;left:3% !important;right:3% !important;top:3% !important;padding:10px 14px !important}
  .tc-hud .tc-kw{display:none}
}

/* Sticky header (desktop) */
.tc-sticky{display:none}
@media (min-width:861px){
  .tc-sticky{display:block;position:fixed;top:0;left:0;right:0;z-index:50;transform:translateY(-110%);visibility:hidden;transition:transform .34s cubic-bezier(.23,1,.32,1),visibility 0s .34s;background:rgba(15,31,23,0.94);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-radius:0 0 24px 24px;box-shadow:0 12px 32px -12px rgba(15,31,23,0.45);border-bottom:1px solid rgba(244,243,238,0.08)}
  .tc-sticky.is-on{transform:none;visibility:visible;transition:transform .34s cubic-bezier(.23,1,.32,1),visibility 0s}
}
.tc-sticky-in{max-width:1240px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.tc-sticky-brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.tc-sticky-brand img{display:block}
.tc-sticky-wm{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:23px;letter-spacing:-0.02em;line-height:1}
.tc-sticky-nav{position:relative;display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(244,243,238,0.04)}
.tc-sticky-nav a{position:relative;z-index:1;height:40px;padding:0 18px;display:inline-flex;align-items:center;border-radius:999px;color:#C7CBB8;font-size:15px;font-weight:600;text-decoration:none;transition:color .2s}
.tc-sticky-nav a:hover,.tc-sticky-nav a.is-active{color:#F4F3EE}
.tc-sticky-pill{position:absolute;top:4px;left:0;height:40px;width:0;border-radius:999px;background:rgba(244,243,238,0.1);box-shadow:inset 0 0 0 1px rgba(244,243,238,0.14);opacity:0;pointer-events:none;transition:transform .32s cubic-bezier(.23,1,.32,1),width .32s cubic-bezier(.23,1,.32,1),opacity .2s}
.tc-sticky-pill::after{content:"";position:absolute;left:50%;bottom:5px;width:14px;height:2px;margin-left:-7px;border-radius:1px;background:#C8F169}
.tc-sticky-chip{height:36px;padding:0 14px;border-radius:999px;background:rgba(244,243,238,0.06);border:1px solid rgba(244,243,238,0.14);color:#C7CBB8;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.tc-sticky-dot{width:8px;height:8px;border-radius:50%;background:#C8F169;box-shadow:0 0 0 3px rgba(200,241,105,0.2)}
#how,#plugs,#hosts{scroll-margin-top:72px}
@media (prefers-reduced-motion:reduce){
  .tc-sticky,.tc-sticky.is-on{transform:none}
  .tc-sticky{opacity:0;transition:opacity .2s,visibility 0s .2s}
  .tc-sticky.is-on{opacity:1;transition:opacity .2s,visibility 0s}
  .tc-sticky-pill{transition:opacity .2s}
}

/* Hero fills the first screen: nav on top, content centred, plug strip pinned to the bottom edge */
.tc-hero{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.tc-hero-wrap{width:100%;flex:1 1 auto;display:flex;flex-direction:column}
.tc-hero-grid{flex:1 1 auto;align-content:center}
@media (min-width:861px){
  .tc-hero .tc-tilt{max-width:min(660px,calc((100svh - 230px) * 1.25)) !important}
}
@media (min-width:861px) and (max-height:760px){
  .tc-hero h1{font-size:clamp(40px,min(6vw,8.4svh),88px) !important}
  .tc-hero-grid{padding:8px 0 24px !important}
}
