.contact-lab{padding:90px 0 58px;background:#f1f4ed;color:#142310;scroll-margin-top:90px}.cl-heading{margin-bottom:32px}.cl-eyebrow{font:14px/1.5 var(--heading);color:#39742c;margin:0 0 12px}.cl-heading h2{font-size:clamp(36px,4.5vw,60px);letter-spacing:-1.8px;line-height:1.03;margin:0}.cl-shell{background:#fff;border-radius:32px;overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr;min-height:740px;box-shadow:0 16px 60px #22331c09}.cl-identity{background:#39742c;color:#fff;padding:36px 42px;display:flex;flex-direction:column;overflow:hidden;position:relative}.cl-identity h3{font-size:clamp(36px,3.8vw,53px);line-height:1.02;letter-spacing:-1.6px;margin:0 0 20px;max-width:330px}.cl-identity>p{font:25px/1.3 var(--body);margin:0;color:#e3ecd9;max-width:330px}.cl-person{display:flex;gap:12px;align-items:center;margin-top:auto;padding-top:38px;font:14px/1.4 var(--heading)}.cl-person p{margin:0}.cl-person small{display:block;color:#d8e8d1;font-size:12px;margin-top:4px}.cl-monogram{display:grid;place-items:center;background:#abcf37;color:#28521f;width:42px;height:42px;flex:none;border-radius:50%;font-weight:700}.cl-workspace{padding:40px 44px;min-width:0;font-family:var(--heading);position:relative}.cl-progress{display:flex;gap:16px;list-style:none;padding:0;margin:0 0 36px;font:13px/1.5 var(--heading);color:#606d5b}.cl-progress li{display:flex;align-items:center;gap:7px}.cl-progress li+li:before{content:'';width:18px;height:1px;background:#d5e0d1}.cl-progress li[aria-current]{color:#28521f;font-weight:700}.cl-progress li[aria-current]:after{content:'';width:6px;height:6px;border-radius:50%;background:#39742c}.cl-stage{scroll-margin-top:115px;animation:cl-appear .22s ease-out}.cl-stage h3{font-size:clamp(28px,2.8vw,40px);line-height:1.08;letter-spacing:-1px;margin:0 0 16px;scroll-margin-top:120px}.cl-stage h3:focus{outline:none}.cl-intro{font:24px/1.3 var(--body);color:#585858;margin:0 0 25px}.cl-stage label{display:block;font:14px/1.5 var(--heading);margin:0 0 9px}.cl-stage textarea,.cl-stage input{display:block;width:100%;border:1px solid #a9bea0;background:#fcfdfa;border-radius:15px;padding:16px;line-height:1.5;color:#23371f;font:16px/1.5 var(--heading)}.cl-stage textarea{min-height:140px;resize:vertical}.cl-stage textarea::placeholder{color:#6c7b64}.cl-stage input{border-radius:9px;min-height:48px;margin-top:8px;padding:11px}.cl-note{font:13px/1.5 var(--heading);color:#626e5c;margin:12px 0 22px}.cl-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin:24px 0 4px}.cl-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:#abcf37;color:#172611;border:0;border-radius:100px;padding:15px 22px;min-height:52px;font:700 16px/1.35 var(--heading);cursor:pointer;transition:background .16s,transform .16s}.cl-primary:hover{background:#bddb60;transform:translateY(-1px)}.cl-primary:active{transform:translateY(1px)}.cl-primary span{font-size:22px}.cl-secondary{border:0;background:none;color:#326627;padding:12px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;font:14px/1.4 var(--heading);cursor:pointer;text-align:left}.cl-finish{display:block;font-size:12px}.cl-count{font:13px/1.5 var(--heading);color:#39742c;margin:0 0 15px}.cl-fields{display:grid;grid-template-columns:1fr 1.2fr;gap:14px;margin-top:24px}.cl-stage textarea.cl-summary{font:22px/1.35 var(--body);border:0;border-left:3px solid #abcf37;border-radius:0;background:#fafcf6;padding:14px 16px;min-height:170px}.cl-success{height:68px;width:68px;display:grid;place-items:center;border-radius:50%;background:#e8f2d4;color:#39742c;font:32px var(--heading);margin:12px 0 24px}.cl-reference{font:13px var(--heading);color:#585858}.cl-status,.cl-error{font:14px/1.5 var(--heading);padding:14px 16px;margin-bottom:20px;border-left:3px solid #abcf37;background:#f3f7ea;overflow-wrap:anywhere}.cl-error{border-color:#f9c620;background:#fff8e2}.cl-error p{margin:0}.cl-privacy{margin-top:28px;border-top:1px solid #d5e0d1;padding-top:17px;font:12px/1.5 var(--heading);color:#626e5c}.cl-privacy summary{cursor:pointer;padding:6px 0;color:#326627;min-height:36px}.cl-privacy p{margin:12px 0;overflow-wrap:anywhere}.cl-privacy a{text-decoration:underline}.cl-alternative{display:flex;gap:24px;flex-wrap:wrap;align-items:baseline;padding-top:25px;font:14px/1.5 var(--heading);color:#326627}.cl-alternative p{margin:0;color:#585858}.cl-alternative a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.cl-honey{position:absolute;left:-10000px;top:0;width:1px;height:1px;overflow:hidden}.cl-shell [hidden]{display:none!important}.cl-shell button:disabled{opacity:.5;cursor:wait;transform:none}.cl-shell :is(button,textarea,input,summary,a):focus-visible{outline:3px solid #39742c;outline-offset:4px}.cl-shell [aria-busy=true]{cursor:progress}@keyframes cl-appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.cl-workspace{padding:32px}.cl-identity{padding:30px}.cl-fields{grid-template-columns:1fr}.cl-progress{gap:10px}.cl-progress li+li:before{width:10px}}
@media(max-width:760px){.contact-lab{padding:58px 0 36px}.cl-heading{margin-bottom:25px}.cl-shell{grid-template-columns:1fr;min-height:0;border-radius:24px}.cl-identity{padding:25px;min-height:146px;justify-content:center}.cl-identity h3{font-size:30px;letter-spacing:-.7px;max-width:200px;margin:0;z-index:1}.cl-identity>p,.cl-person{display:none}.cl-workspace{padding:27px 24px 30px}.cl-progress{margin-bottom:30px;gap:10px;font-size:12px}.cl-progress li{gap:5px}.cl-stage h3{font-size:31px}.cl-intro{font-size:23px}.cl-actions{flex-direction:column;align-items:stretch;gap:8px}.cl-actions .cl-primary{width:100%;order:-1}.cl-actions .cl-secondary{align-self:flex-start}.cl-fields{gap:12px}.cl-stage textarea.cl-summary{font-size:22px}.cl-alternative{display:block}.cl-alternative a{display:block;margin-top:12px}.cl-note{font-size:12px}.cl-privacy{margin-top:24px}}
@media(max-width:360px){.cl-workspace{padding-inline:19px}.cl-progress{gap:7px}.cl-progress li+li:before{width:5px}.cl-identity h3{font-size:28px}.cl-stage textarea.cl-summary{font-size:20px}}
@media(prefers-reduced-motion:reduce){.cl-shell *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.cl-primary:hover,.cl-primary:active{transform:none}}
[data-contact] .cl-sources{margin:0 0 1.5rem;border-bottom:1px solid #d7e2d0;padding-bottom:1rem;font:400 1rem/1.55 Gabarito,sans-serif;color:#52604b}[data-contact] .cl-sources summary{cursor:pointer;color:#39742c;font-weight:600}[data-contact] .cl-sources strong{display:block;margin-top:1rem;font-weight:600}[data-contact] .cl-sources p{margin:.35rem 0 1rem;white-space:pre-wrap;overflow-wrap:anywhere}

/* One signature: refractive brand spheres that respond to the actual contact state. */
.cl-signature{position:relative;aspect-ratio:1.2;height:auto;max-height:330px;flex:none;width:calc(100% + 60px);margin:-10px -30px 26px;isolation:isolate;pointer-events:none}
.cl-orbs,.cl-orbs-fallback{position:absolute;inset:0;width:100%;height:100%;display:block}
.cl-orbs{opacity:0;transition:opacity .6s ease}.cl-signature[data-renderer=webgl] .cl-orbs{opacity:1}.cl-signature[data-renderer=webgl] .cl-orbs-fallback{opacity:0}
.cl-orbs-fallback{transition:opacity .6s ease}.cl-orbs-fallback i{position:absolute;border-radius:50%;background:radial-gradient(circle at 28% 22%,#eff9c3a6 0,transparent 28%),radial-gradient(circle at 60% 68%,#223b1940,transparent 65%),#87b54855;box-shadow:inset 1px 2px 3px #edf7bbbc,inset -2px -3px 6px #17321c66,0 14px 24px #203c2420;border:1px solid #dced99a0}
.cl-orbs-fallback i:only-child{width:72%;height:72%;left:14%;top:14%;background:radial-gradient(ellipse at 48% 52%,#f3f8e7 0%,#abcf37 7%,transparent 30%),radial-gradient(circle at 32% 22%,#d7e8a080,transparent 43%),#355f38;box-shadow:inset 1px 2px 3px #edf7bbbc,inset -2px -3px 6px #17321c66}
.cl-orbit-caption{position:absolute;bottom:0;left:0;width:100%;text-align:center;font:11px/1.5 var(--heading);letter-spacing:.08em;color:#e5efdcba}
.cl-motion-toggle{position:absolute;right:20px;top:16px;z-index:1;border:0;border-radius:40px;padding:8px 10px;font:11px/1.3 var(--heading);background:#ffffff0a;color:#e5efdc;cursor:pointer;min-height:32px}.cl-motion-toggle:hover{background:#ffffff18}.cl-motion-toggle:focus-visible{outline-color:#fff!important}
.cl-understanding{margin:0 0 26px;padding:0 0 20px;border-bottom:1px solid #dce6d5}.cl-understanding span{font:12px/1.5 var(--heading);color:#39742c}.cl-understanding p{font:21px/1.35 var(--body);color:#34452d;margin:7px 0 0}
@media(max-width:760px){.cl-identity{min-height:174px}.cl-identity h3{max-width:52%;font-size:28px}.cl-signature{position:absolute;right:-7px;top:-4px;width:52%;height:178px;margin:0}.cl-orbit-caption{bottom:3px;font-size:9px;letter-spacing:.03em}.cl-motion-toggle{top:7px;right:8px;font-size:10px;min-height:30px;padding:6px}.cl-understanding p{font-size:20px}}

/* Keep navigation and the main action distinct at phone widths. */
.cl-primary{max-width:100%;text-align:left;overflow-wrap:anywhere}.cl-primary span{flex:none}
.cl-stage h3,.cl-intro,.cl-understanding p{overflow-wrap:anywhere}
.cl-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 20px;margin-bottom:30px}
.cl-toolbar .cl-progress{margin:0;flex:none}.cl-reset{font-size:12px;margin-left:auto;color:#626e5c;white-space:nowrap}
.cl-reset-confirm{padding:16px 18px;margin-bottom:24px;border:1px solid #d5e0d1;border-radius:15px;background:#f5f8ef;font:14px/1.5 var(--heading);color:#34452d}
.cl-reset-confirm p{margin:0 0 8px}.cl-reset-actions{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
.cl-reset-actions [data-reset-confirm]{font-weight:700}
.cl-shell .cl-reset:disabled{cursor:default}

/* AI progress belongs to the orb itself. Do not add a second visual status box while thinking. */
/* Keep the real progress announcement available to screen readers. */
[data-contact][data-activity="thinking"] .cl-status:not([hidden]){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.cl-thinking-orb{transition:opacity 220ms cubic-bezier(.22,1,.36,1)}
.cl-stage{animation:none}
.cl-primary span{transition:transform 220ms cubic-bezier(.22,1,.36,1)}
@media(hover:hover){.cl-primary:hover:not(:disabled) span{transform:translateX(4px)}}

.cl-signature[data-thinking-renderer=webgpu] :is(.cl-orbs,.cl-orbs-fallback){transition:opacity 220ms cubic-bezier(.22,1,.36,1)}
.cl-signature[data-motion-paused=true] :is(.cl-thinking-orb,.cl-orbs,.cl-orbs-fallback){transition:none}

/* Orb and message form one stable, horizontal presence. */
.cl-presence{display:grid;grid-template-columns:42% minmax(0,1fr);align-items:center;gap:10px;margin:28px -18px 30px;min-height:180px}
.cl-presence .cl-signature{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1;max-height:none;margin:0}
.cl-presence h3{font-size:clamp(24px,2.5vw,36px);line-height:1.08;letter-spacing:-.8px;max-width:none;margin:0;min-width:0}
.cl-presence .cl-orbit-caption{display:none}
.cl-presence-thinking{display:none;white-space:nowrap}
[data-contact][data-activity=thinking] .cl-presence-idle{display:none}
[data-contact][data-activity=thinking] .cl-presence-thinking{display:inline-block;color:#e3ecd9;background:linear-gradient(105deg,#d7e8a0 35%,#fff 48%,#fff 52%,#d7e8a0 65%);background-size:260% 100%;background-position:150% 0;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:cl-thinking-sweep 2.4s ease-in-out infinite}
@keyframes cl-thinking-sweep{0%,12%{background-position:150% 0}75%,100%{background-position:-50% 0}}
.cl-identity:has([data-motion-paused=true]) .cl-presence-thinking{animation-play-state:paused}
@media(max-width:1000px) and (min-width:761px){.cl-presence{margin-inline:-20px;gap:4px}.cl-presence h3{font-size:24px}}
@media(max-width:760px){.cl-identity{padding:34px 20px 18px;min-height:174px}.cl-presence{grid-template-columns:40% minmax(0,1fr);gap:12px;width:100%;margin:0;min-height:122px}.cl-presence h3{font-size:clamp(24px,4.8vw,34px);max-width:none}.cl-presence .cl-signature{height:auto;max-width:210px;justify-self:start}}
@media(max-width:360px){.cl-identity{padding-inline:15px}.cl-presence{gap:8px}.cl-presence h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){[data-contact][data-activity=thinking] .cl-presence-thinking{animation:none;background:none;-webkit-text-fill-color:currentColor;color:#f3f8e7}}
@media(forced-colors:active){[data-contact][data-activity=thinking] .cl-presence-thinking{background:none;-webkit-text-fill-color:currentColor;color:CanvasText}}

/* A shared light field lets the transparent orb belong to its green surface.
   Static CSS lighting: no additional animation loop or backdrop filter. */
.cl-identity{background:var(--forest-surface);box-shadow:inset 0 1px 0 #e5efdc30}
.cl-identity .cl-motion-toggle{background:#ffffff0d;border:1px solid #e5efdc20}
.cl-identity .cl-motion-toggle:hover{background:#ffffff1c}
.cl-identity .cl-monogram{box-shadow:inset 0 1px 0 #ffffff55}
@media(max-width:760px){.cl-identity{background:radial-gradient(ellipse at 18% 45%,#8fba5618 0%,transparent 58%),linear-gradient(115deg,#3f7434 0%,#32632e 54%,#244c2c 100%)}}

.cl-primary,.cl-monogram{background:var(--lime-surface)}
.cl-primary:hover{background:linear-gradient(135deg,#cde779,#bddb60)}
