@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/montserrat-regular.ttf') format('truetype')}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/montserrat-semibold.ttf') format('truetype')}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/montserrat-bold.ttf') format('truetype')}
:root{color-scheme:light;--paper:#fff;--ink:#2d2926;--muted:#6f6964;--line:#ece9e6;--green:#00d04e;--green-dark:#2aab5d}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{min-width:320px;background:var(--paper);color:var(--ink)}
body{margin:0;font:16px/1.6 Montserrat,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
::selection{background:#c6f5d6;color:var(--ink)}
.page{max-width:1160px;margin:0 auto;min-height:100svh;display:flex;flex-direction:column}
.caps{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:18px;min-width:0}
.logo{display:flex;align-items:flex-start;height:52px;flex-shrink:0}
.flower{height:52px;width:52px}
.wordmark{height:16.4px;width:auto;margin:16.4px 0 0 4.1px}
.brand-domain{color:var(--muted);padding-left:18px;border-left:1px solid var(--line);line-height:1.2;white-space:nowrap}
.status-pill{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;white-space:nowrap}
.status-dot{width:7px;height:7px;flex:0 0 auto;background:var(--green);border-radius:50%;animation:pulse 2.4s infinite}
main{flex:1}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center;padding:56px 0 48px}
.intro{padding:24px 0}
.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 24px}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--green);flex-shrink:0}
h1{font-size:clamp(34px,5.2vw,60px);line-height:1.08;letter-spacing:-.035em;font-weight:700;margin:0 0 27px;text-wrap:balance}
h1 em{display:block;font-style:normal;font-weight:400;color:var(--muted);margin-top:6px}
.description{font-size:18px;line-height:1.7;max-width:50ch;color:var(--muted);margin:0 0 30px}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border:1.5px solid var(--ink);border-radius:999px;font-weight:600;text-decoration:none;font-size:15px;line-height:1.6;background:var(--ink);color:var(--paper);transition:background .15s,color .15s,border-color .15s,transform .15s}
.btn:hover{background:var(--green-dark);border-color:var(--green-dark);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{color:#187c40;border-color:var(--green-dark)}
a:focus-visible{outline:2px solid var(--green-dark);outline-offset:4px}
.visual{position:relative;min-width:0;width:100%;margin:0;padding-bottom:42px}
.intake{position:relative;width:100%;aspect-ratio:1;max-height:520px}
.intake canvas{position:absolute;inset:0;width:100%;height:100%}
.hub{position:absolute;left:31%;top:31%;width:38%;height:38%;animation:spin 9s linear infinite}
.orbit{position:absolute;left:50%;top:50%;border:1px solid var(--line);border-radius:50%;transform:translate(-50%,-50%)}
.orbit-one{width:52.7%;height:52.7%}
.orbit-two{width:71.4%;height:71.4%}
.orbit-three{width:90.1%;height:90.1%}
.orbit-accent{position:absolute;left:25.86%;top:25.86%;width:48.28%;height:48.28%;border-radius:50%;border:2px solid transparent;border-top-color:var(--green-dark);border-bottom-color:var(--green-dark);animation:spin 13s linear infinite}
.readout{position:absolute;left:0;bottom:0;display:grid;gap:4px;padding:10px 13px;border-left:2px solid var(--green);color:var(--muted);background:rgba(255,255,255,.94);font-size:10px;line-height:1.6}
.readout>span{display:block;font-size:11px;letter-spacing:.09em}
.readout b{color:var(--ink);font-weight:600}
.motion-control{position:absolute;bottom:0;right:0;display:inline-flex;align-items:center;gap:7px;padding:10px 0 10px 10px;border:0;background:transparent;color:var(--muted);font:400 10px/1.5 Montserrat,Arial,sans-serif;cursor:pointer}
.motion-control:hover{color:var(--ink)}
.motion-control:focus-visible{outline:2px solid var(--green-dark);outline-offset:5px;border-radius:2px}
.motion-icon{display:inline-block;min-width:12px;text-align:center;font-size:12px}
.features{border-top:1px solid var(--ink);padding:28px 0 52px}
.features h2{font-size:22px;line-height:1.4;font-weight:700;letter-spacing:-.01em;margin:0 0 8px}
.features-intro{font-size:14px;color:var(--muted);margin:0 0 10px}
.feature-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}
.feature-list li{padding:20px 0;border-bottom:1px solid var(--line);min-width:0}
.feature-list h3{font-size:16px;line-height:1.5;font-weight:600;margin:0 0 6px}
.feature-list p{font-size:14.5px;line-height:1.65;color:var(--muted);margin:0}
.footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:25px 0 32px;border-top:1px solid var(--line);color:var(--muted)}
.footer .caps{font-size:10px;letter-spacing:.12em}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(0,208,78,.35)}70%{box-shadow:0 0 0 8px rgba(0,208,78,0)}100%{box-shadow:0 0 0 0 rgba(0,208,78,0)}}
@keyframes spin{to{transform:rotate(360deg)}}
.motion-paused .hub,.motion-paused .orbit-accent,.motion-paused .status-dot{animation-play-state:paused}
@media(max-width:860px){.hero{grid-template-columns:minmax(0,1fr);padding:36px 0;gap:20px}.intro{padding:20px 0 4px}.visual{max-width:380px;justify-self:center}.description{max-width:52ch}h1{font-size:clamp(34px,6vw,52px)}.header{padding:20px 0}.brand-domain{font-size:10px}.feature-list{grid-template-columns:minmax(0,1fr)}.features{padding-bottom:36px}}
@media(max-width:480px){body{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.logo{height:40px}.flower{height:40px;width:40px}.wordmark{height:12.6px;margin:12.6px 0 0 3.2px}.brand-domain{display:none}.header{gap:10px}.status-pill{font-size:9px;letter-spacing:.08em;padding:7px 10px;gap:7px}.status-dot{width:6px;height:6px}.eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:20px}h1{font-size:clamp(32px,8.8vw,42px);margin-bottom:22px}.description{font-size:16px}.hero{padding-top:24px;gap:24px}.visual{padding-bottom:56px}.readout{font-size:9px;padding-left:10px}.readout>span{font-size:9px}.motion-control{font-size:9px;bottom:1px}.footer{padding:22px 0 27px;gap:8px}.footer .caps{font-size:9px;letter-spacing:.08em}.cta{gap:10px}.btn{font-size:13px;padding:12px 17px;gap:8px}.features h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.hub,.orbit-accent,.status-dot{animation:none}.btn{transition:none}}
