:root{--ivory:#f5f2ea;--paper:#fffdf8;--ink:#142019;--sage:#81927d;--sage-d:#5f725b;--sage-soft:#dde8dc;--bronze:#a98d77;--line:#14201924;--mute:#5a6659;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0}
body{background:radial-gradient(120% 60% at 50% -10%,#e9efe4 0%,var(--ivory) 55%) fixed;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;min-height:100vh;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
.ca-wrap{max-width:680px;margin:0 auto;padding:0 18px}
.ca-top{position:sticky;top:0;z-index:20;background:rgba(245,242,234,.86);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.ca-top .ca-wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px}
.ca-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.ca-brand img{border-radius:12px;background:var(--paper);box-shadow:0 0 0 1px var(--line)}
.ca-brand span{display:flex;flex-direction:column;line-height:1.1}
.ca-brand b{font-family:var(--serif);font-size:18px;font-weight:600}
.ca-brand small{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-d);margin-top:3px}
.ca-quick{display:flex;gap:6px}
.ca-q{padding:9px 14px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:13px;font-weight:600;text-decoration:none}
.ca-q2{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.ca-hero{text-align:center;padding:34px 0 8px;transition:all .5s cubic-bezier(.2,.8,.2,1)}
.ca-orb{position:relative;width:132px;height:132px;margin:0 auto 22px}
.ca-orb span{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(129,146,125,.45);animation:caring 4.8s ease-out infinite}
.ca-orb .r2{animation-delay:1.6s}.ca-orb .r3{animation-delay:3.2s}
.ca-orb i{position:absolute;inset:26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff 0%,#dde8dc 28%,#81927d 70%,#5f725b 100%);box-shadow:0 18px 50px -12px rgba(95,114,91,.65),inset 0 -8px 18px rgba(20,32,25,.18);animation:cabreathe 5s ease-in-out infinite}
.ca-orb i:after{content:"";position:absolute;inset:-6px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 70%,rgba(169,141,119,.55) 82%,transparent 94%);animation:caspin 6s linear infinite;mask:radial-gradient(circle,transparent 58%,#000 60%);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%)}
@keyframes caring{0%{transform:scale(.62);opacity:0}25%{opacity:1}100%{transform:scale(1.18);opacity:0}}
@keyframes cabreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes caspin{to{transform:rotate(360deg)}}
.ca-eye{margin:0;font-size:11.5px;letter-spacing:3px;text-transform:uppercase;color:var(--sage-d);font-weight:600}
.ca-hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,7.4vw,40px);line-height:1.14;margin:12px 0 12px;letter-spacing:-.2px}
.ca-sub{margin:0 auto;max-width:480px;font-size:15.5px;line-height:1.6;color:var(--mute)}
.ca-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:24px 0 6px}
.ca-chips button{padding:10px 14px;border-radius:999px;border:0;background:var(--paper);color:var(--ink);font:inherit;font-size:13.5px;box-shadow:inset 0 0 0 1px var(--line),0 8px 22px -16px rgba(20,32,25,.5);cursor:pointer;opacity:0;animation:cain .6s cubic-bezier(.2,.8,.2,1) forwards}
.ca-chips button:nth-child(1){animation-delay:.15s}.ca-chips button:nth-child(2){animation-delay:.22s}.ca-chips button:nth-child(3){animation-delay:.29s}.ca-chips button:nth-child(4){animation-delay:.36s}.ca-chips button:nth-child(5){animation-delay:.43s}.ca-chips button:nth-child(6){animation-delay:.5s}
.ca-chips button:active{transform:scale(.97)}
body.ca-started .ca-hero{padding:14px 0 0}
body.ca-started .ca-hero h1,body.ca-started .ca-sub,body.ca-started .ca-chips,body.ca-started .ca-eye{display:none}
body.ca-started .ca-orb{width:64px;height:64px;margin-bottom:6px}
body.ca-started .ca-orb i{inset:13px}
.ca-chat{display:flex;flex-direction:column;gap:12px;padding:8px 0}
.ca-msg{max-width:88%;padding:13px 16px;border-radius:20px;font-size:15.5px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;animation:cain .45s cubic-bezier(.2,.8,.2,1) both}
.ca-me{align-self:flex-end;background:var(--ink);color:var(--paper);border-bottom-right-radius:6px}
.ca-ai{align-self:flex-start;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line),0 14px 34px -26px rgba(20,32,25,.55);border-bottom-left-radius:6px}
.ca-ai a{color:var(--sage-d);font-weight:600}
.ca-typing{display:inline-flex;gap:5px;padding:16px 18px}
.ca-typing i{width:7px;height:7px;border-radius:50%;background:var(--sage);animation:cadot 1.1s ease-in-out infinite}
.ca-typing i:nth-child(2){animation-delay:.15s}.ca-typing i:nth-child(3){animation-delay:.3s}
@keyframes cadot{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-5px);opacity:1}}
@keyframes cain{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.ca-svcs{align-self:stretch;display:grid;gap:8px;animation:cain .5s .1s cubic-bezier(.2,.8,.2,1) both}
.ca-svc{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#fffdf8,#f3f6ef);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);text-decoration:none}
.ca-svc b{flex:1;font-size:14.5px;font-weight:600;line-height:1.35}
.ca-svc em{font-style:normal;font-size:12px;color:var(--sage-d);font-weight:600;white-space:nowrap}
.ca-svc:before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 5px var(--sage-soft)}
.ca-cta{align-self:stretch;display:grid;grid-template-columns:1fr 1fr;gap:8px;animation:cain .5s .18s cubic-bezier(.2,.8,.2,1) both}
.ca-cta a,.ca-cta button{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;border:0;font:inherit;font-size:14.5px;font-weight:600;text-decoration:none;cursor:pointer}
.ca-wa{background:#1f3b2c;color:#fff;grid-column:1/-1}
.ca-call{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.ca-cb{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.ca-urgent{align-self:stretch;padding:12px 14px;border-radius:14px;background:#fbeceb;color:#7a1f1a;font-size:14px;font-weight:600;line-height:1.5;box-shadow:inset 0 0 0 1px #e9b8b4}
.ca-form{align-self:stretch;display:grid;gap:10px;padding:16px;border-radius:18px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);animation:cain .45s cubic-bezier(.2,.8,.2,1) both}
.ca-form h3{margin:0;font-family:var(--serif);font-weight:500;font-size:19px}
.ca-form label{display:grid;gap:5px;font-size:13px;font-weight:600;color:var(--mute)}
.ca-form input,.ca-form textarea{width:100%;padding:12px 13px;border-radius:12px;border:1px solid #14201933;background:#fff;font:inherit;font-size:16px;color:var(--ink)}
.ca-form input:focus,.ca-form textarea:focus,.ca-bar textarea:focus{outline:2px solid var(--sage);outline-offset:1px}
.ca-form button{min-height:48px;border:0;border-radius:14px;background:var(--ink);color:var(--paper);font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.ca-form button:disabled{opacity:.6}
.ca-form small{font-size:12px;color:var(--mute);line-height:1.5}
.ca-ok{color:#2c5a3a!important;font-weight:600}.ca-err{color:#8a2a22!important;font-weight:600}
.ca-hp{position:absolute;top:0;left:0;clip-path:inset(50%);overflow:hidden;width:1px;height:1px;opacity:0}
.ca-fine{margin:18px 0 0;text-align:center;font-size:12px;line-height:1.5;color:var(--mute)}
.ca-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--ivory) 70%,rgba(245,242,234,0))}
.ca-bar-in{display:flex;align-items:flex-end;gap:8px}
.ca-bar textarea{flex:1;min-height:52px;max-height:140px;padding:14px 16px;border-radius:26px;border:0;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line),0 16px 40px -24px rgba(20,32,25,.55);font:inherit;font-size:16px;line-height:1.45;color:var(--ink);resize:none}
.ca-bar button{flex:none;width:52px;height:52px;border-radius:50%;border:0;background:var(--ink);color:#fff;display:grid;place-items:center;cursor:pointer;transition:transform .15s}
.ca-bar button:disabled{opacity:.45}
.ca-bar button:active{transform:scale(.94)}
.ca-bar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:reduce){.ca-orb span,.ca-orb i,.ca-orb i:after,.ca-chips button,.ca-msg,.ca-svcs,.ca-cta,.ca-form,.ca-typing i{animation:none!important;opacity:1}}
.ca-lang{margin:10px 0 0;font-size:12.5px;color:var(--mute)}
body.ca-started .ca-lang{display:none}
.ca-prods{align-self:stretch;display:grid;gap:8px;padding:12px;border-radius:18px;background:linear-gradient(135deg,#f7efe7,#fbf7f1);box-shadow:inset 0 0 0 1px #a98d7740;animation:cain .5s .14s cubic-bezier(.2,.8,.2,1) both}
.ca-prods-h{margin:0 2px 2px;font-size:12px;font-weight:600;letter-spacing:.2px;color:#7d6450}
.ca-prod{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#fffdf8;box-shadow:inset 0 0 0 1px #a98d7733;color:var(--ink);text-decoration:none}
.ca-prod-t{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}
.ca-prod-t small{font-size:11.5px;color:#7d6450;font-weight:600;text-transform:uppercase;letter-spacing:.6px}
.ca-prod-t b{font-size:14px;font-weight:600;line-height:1.35}
.ca-prod em{flex:none;font-style:normal;font-size:12.5px;font-weight:700;color:#fff;background:#a98d77;padding:7px 12px;border-radius:999px}
.ca-orb .ca-doc{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);border-radius:50%;object-fit:cover;box-shadow:0 18px 44px -14px rgba(95,114,91,.6),0 0 0 4px #fffdf8;animation:cabreathe 5s ease-in-out infinite}
.ca-orb .arc{position:absolute;inset:9px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 68%,rgba(129,146,125,.9) 84%,transparent 97%);-webkit-mask:radial-gradient(circle,transparent 64%,#000 66%);mask:radial-gradient(circle,transparent 64%,#000 66%);animation:caspin 6s linear infinite;opacity:.5}
.ca-orb .ca-spark{position:absolute;left:55%;top:21%;width:26%;height:26%;border-radius:50%;background:radial-gradient(circle,rgba(170,255,205,.95) 0,rgba(110,220,170,.45) 35%,transparent 70%);mix-blend-mode:screen;opacity:0;pointer-events:none}
body.ca-thinking .ca-orb .arc{animation-duration:1.1s;opacity:1}
body.ca-thinking .ca-orb .ca-doc{animation:cathink 1.6s ease-in-out infinite}
body.ca-thinking .ca-orb .ca-spark{animation:caspark 1.2s ease-in-out infinite}
body.ca-thinking .ca-orb span{animation-duration:1.8s;border-color:rgba(129,146,125,.75)}
body.ca-started .ca-orb .ca-doc{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);box-shadow:0 0 0 2px #fffdf8,0 8px 20px -10px rgba(95,114,91,.6)}
body.ca-started .ca-orb .arc{inset:1px}
@keyframes cathink{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(-2deg)}75%{transform:translateY(-1px) rotate(2deg)}}
@keyframes caspark{0%,100%{opacity:.15;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}
@keyframes caring2{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.4);opacity:0}}
.ca-row{display:flex;align-items:flex-end;gap:8px;align-self:flex-start;max-width:94%;animation:cain .45s cubic-bezier(.2,.8,.2,1) both}
.ca-row .ca-msg{max-width:100%;animation:none}
.ca-avw{position:relative;flex:none;width:34px;height:34px;border-radius:50%;margin-bottom:2px}
.ca-avw img{display:block;width:34px;height:34px;border-radius:50%;box-shadow:0 0 0 2px #fffdf8,0 6px 14px -8px rgba(20,32,25,.55)}
.ca-avw.thinking img{animation:cathink 1.4s ease-in-out infinite}
.ca-avw.thinking:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(129,146,125,.65);animation:caring2 1.4s ease-out infinite}
@media (prefers-reduced-motion:reduce){.ca-orb .ca-doc,.ca-orb .arc,.ca-orb .ca-spark,.ca-avw img,.ca-avw:after{animation:none!important}}
.ca-tag{display:inline-block;margin:-8px 0 16px;padding:5px 12px;border-radius:999px;background:#dde8dc;color:#3f5240;font-size:11.5px;font-weight:600;letter-spacing:.6px}
body.ca-started .ca-tag{margin:0 0 4px;padding:3px 9px;font-size:10.5px}
.ca-chips button:nth-child(7){animation-delay:.57s}
