:root{--navy:#0b1f33;--navy-2:#1e3a5f;--teal:#14b8a6;--teal-dark:#0d9488;--mint:#5eead4;--amber:#f59e0b;--amber-dark:#d97706;--slate:#64748b;--bg:#fff;--bg-soft:#f3faf9;--text:#0b1f33;--muted:#64748b;--border:#e2e8f0;--card:#fff;--mark-plank:var(--navy);--mark-plank-2:var(--navy-2);--radius:16px;--radius-lg:24px;--shadow:0 1px 2px #0b1f330a, 0 8px 24px #0b1f330f;--shadow-lg:0 24px 60px #0b1f3324;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--bg);margin:0;overflow-x:hidden}h1,h2,h3{letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.15}p{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}.section{padding:96px 0}.section-head{text-align:center;max-width:640px;margin:0 auto 56px}.section-head h2,.why-copy h2,.contact-copy h2{margin-bottom:14px;font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:800}.section-head p{color:var(--muted);font-size:1.08rem}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:12px;font-size:.8rem;font-weight:700;display:inline-block}.btn{cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:700;transition:transform .15s,background .2s,box-shadow .2s,border-color .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-lg{padding:15px 26px;font-size:1rem}.btn-block{width:100%}.btn-primary{background:var(--navy);color:#fff;box-shadow:0 6px 18px #0b1f3333}.btn-primary:hover{background:var(--navy-2)}.btn-ghost{border-color:var(--border);color:var(--navy);background:0 0}.btn-ghost:hover{border-color:var(--teal);color:var(--teal-dark)}.btn-amber{background:var(--amber);color:var(--navy);box-shadow:0 8px 22px #f59e0b59}.btn-amber:hover{background:#fbbf24}.logo{align-items:center;gap:10px;display:inline-flex}.logo-word{letter-spacing:-.03em;color:var(--navy);font-size:1.45rem;font-weight:700}.logo-word span{color:var(--teal-dark)}.logo--light{--mark-plank:#fff;--mark-plank-2:#94a3b8}.logo--light .logo-word{color:#fff}.logo--light .logo-word span{color:var(--mint)}.nav{z-index:50;-webkit-backdrop-filter:saturate(160%)blur(12px);background:#fffc;border-bottom:1px solid #0000;transition:border-color .2s,box-shadow .2s;position:sticky;top:0}.nav--scrolled{border-color:var(--border);box-shadow:0 4px 20px #0b1f330d}.nav-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.nav-links{align-items:center;gap:32px;display:flex}.nav-links a:not(.btn){color:var(--muted);font-size:.95rem;font-weight:600;transition:color .2s}.nav-links a:not(.btn):hover{color:var(--navy)}.nav-toggle{color:var(--navy);cursor:pointer;background:0 0;border:0;padding:8px;display:none}@media (width<=860px){.nav-toggle{display:inline-flex}.nav-links{border-bottom:1px solid var(--border);opacity:0;pointer-events:none;background:#fff;flex-direction:column;align-items:stretch;gap:4px;padding:12px 24px 24px;transition:opacity .2s,transform .2s;position:absolute;top:72px;left:0;right:0;transform:translateY(-8px);box-shadow:0 16px 30px #0b1f3314}.nav-links--open{opacity:1;pointer-events:auto;transform:none}.nav-links a:not(.btn){padding:12px 0;font-size:1.05rem}.nav-cta{margin-top:8px}}.hero{background:radial-gradient(800px 400px at 85% 10%, #5eead440, transparent 60%), radial-gradient(600px 300px at 0% 90%, #f59e0b1a, transparent 60%), var(--bg-soft);padding:72px 0 120px;position:relative;overflow:hidden}.hero-inner>*,.why>*,.contact>*{min-width:0}.hero-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:56px;display:grid}.eyebrow{border:1px solid var(--border);color:var(--navy-2);background:#fff;border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 14px;font-size:.85rem;font-weight:600;display:inline-flex}.eyebrow .dot{background:var(--teal);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #14b8a62e}.hero h1{margin-bottom:20px;font-size:clamp(2.4rem,5.2vw,3.9rem);font-weight:800}.hl-teal{color:var(--teal-dark)}.hl-amber{color:var(--amber)}.lead{color:var(--muted);max-width:520px;margin-bottom:32px;font-size:1.15rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-bottom:32px;display:flex}.hero-chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hero-chips li{color:var(--navy-2);background:#14b8a61a;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.88rem;font-weight:600;display:inline-flex}.waves{width:100%;height:48px;position:absolute;bottom:24px;left:0}.hero-visual{height:440px;position:relative}.mock-browser,.mock-phone,.mock-chat{border-radius:var(--radius);box-shadow:var(--shadow-lg);background:#fff;position:absolute}.mock-browser{width:88%;height:300px;animation:7s ease-in-out infinite float;top:20px;right:0;overflow:hidden}.mock-bar{border-bottom:1px solid var(--border);background:#f8fafc;align-items:center;gap:6px;padding:12px 14px;display:flex}.mock-bar i{background:#e2e8f0;border-radius:50%;width:10px;height:10px}.mock-bar i:first-child{background:#f87171}.mock-bar i:nth-child(2){background:var(--amber)}.mock-bar i:nth-child(3){background:var(--teal)}.mock-url{color:var(--muted);border:1px solid var(--border);background:#fff;border-radius:999px;margin-left:12px;padding:2px 12px;font-size:.72rem}.mock-body{height:calc(100% - 43px);display:flex}.mock-side{background:var(--navy);flex-direction:column;gap:12px;width:64px;padding:16px 12px;display:flex}.mock-side b{background:#ffffff2e;border-radius:4px;height:8px}.mock-side b:first-child{background:var(--mint)}.mock-main{flex-direction:column;flex:1;gap:16px;padding:18px;display:flex}.mock-stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.stat small{background:#e2e8f0;border-radius:3px;width:60%;height:6px}.stat strong{border-radius:4px;width:80%;height:12px}.stat-teal strong{background:var(--teal)}.stat-amber strong{background:var(--amber)}.stat-navy strong{background:var(--navy-2)}.mock-chart{background:var(--bg-soft);border-radius:10px;flex:1;align-items:flex-end;gap:10px;padding:12px;display:flex}.mock-chart span{background:linear-gradient(180deg, var(--teal), var(--mint));border-radius:6px 6px 2px 2px;flex:1}.mock-chart span:nth-child(6){background:linear-gradient(180deg, var(--amber), #fcd34d)}.mock-phone{border:8px solid var(--navy);border-radius:28px;flex-direction:column;gap:10px;width:160px;height:300px;padding:22px 12px 12px;animation:7s ease-in-out -2s infinite float;display:flex;bottom:0;left:0}.mock-notch{background:var(--navy);border-radius:3px;width:44px;height:6px;position:absolute;top:6px;left:50%;translate:-50%}.mock-phone-head{background:linear-gradient(135deg, var(--teal-dark), var(--navy-2));border-radius:12px;height:64px}.mock-row{background:#f8fafc;border-radius:10px;align-items:center;gap:8px;padding:8px;display:flex}.mock-row i{border-radius:7px;flex-shrink:0;width:22px;height:22px}.mock-row span{background:#e2e8f0;border-radius:3px;flex:1;height:6px}.c-teal{background:var(--teal)}.c-amber{background:var(--amber)}.c-navy{background:var(--navy-2)}.mock-phone-btn{background:var(--amber);border-radius:999px;height:26px;margin-top:auto}.mock-chat{flex-direction:column;gap:8px;width:250px;padding:14px;animation:7s ease-in-out -4s infinite float;display:flex;bottom:10px;right:4%}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding-bottom:8px;font-size:.82rem;font-weight:700;display:flex}.chat-head em{color:var(--teal-dark);margin-left:auto;font-size:.7rem;font-style:normal;font-weight:600}.chat-avatar{background:var(--navy);width:26px;height:26px;color:var(--mint);border-radius:50%;place-items:center;display:grid}.bubble{border-radius:14px;max-width:85%;padding:8px 12px;font-size:.8rem;line-height:1.4}.bubble.bot{background:#f1f5f9;border-bottom-left-radius:4px}.bubble.user{background:var(--teal);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.bubble.typing{gap:4px;width:fit-content;padding:10px 12px;display:inline-flex}.bubble.typing span{background:var(--slate);border-radius:50%;width:6px;height:6px;animation:1.2s infinite blink}.bubble.typing span:nth-child(2){animation-delay:.2s}.bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes blink{50%{opacity:0}}@media (width<=960px){.hero-inner{grid-template-columns:1fr}.hero-visual{width:100%;max-width:520px;margin:0 auto}}@media (width<=520px){.hero{padding:48px 0 96px}.hero-visual{height:380px}.mock-browser{width:100%;height:240px}.mock-phone{width:130px;height:240px}.mock-chat{width:210px;right:0}.hero-actions .btn{flex:100%}}.service-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.service-card{--accent:var(--teal);--accent-soft:#14b8a61f;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;padding:32px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--accent);height:4px;position:absolute;inset:0 0 auto}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-4px)}.accent-amber{--accent:var(--amber);--accent-soft:#f59e0b24}.accent-navy{--accent:var(--navy-2);--accent-soft:#1e3a5f1a}.service-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:16px;place-items:center;margin-bottom:22px;display:grid}.accent-amber .service-icon{color:var(--amber-dark)}.service-card h3{margin-bottom:10px;font-size:1.4rem;font-weight:800}.service-card>p{color:var(--muted);margin-bottom:20px}.service-card ul{gap:10px;margin:0 0 28px;padding:0;list-style:none;display:grid}.service-card li{align-items:center;gap:10px;font-size:.95rem;font-weight:500;display:flex}.service-card li svg{color:var(--teal-dark);flex-shrink:0}.service-link{color:var(--navy);align-items:center;gap:6px;margin-top:auto;font-weight:700;display:inline-flex}.service-link svg{transition:transform .2s}.service-link:hover{color:var(--teal-dark)}.service-link:hover svg{transform:translate(3px)}@media (width<=900px){.service-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}}.industry-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.industry-card{--accent:var(--teal);--accent-soft:#14b8a61f;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:26px;transition:transform .2s,box-shadow .2s,border-color .2s}.industry-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-4px)}.industry-head{align-items:center;gap:14px;margin-bottom:12px;display:flex}.industry-head .service-icon{border-radius:12px;flex-shrink:0;width:46px;height:46px;margin-bottom:0}.industry-card h3{font-size:1.15rem;font-weight:800}.industry-card>p{color:var(--muted);margin-bottom:16px;font-size:.95rem}.industry-uses{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.industry-uses li{background:var(--accent-soft);color:var(--navy);border-radius:999px;padding:5px 11px;font-size:.82rem;font-weight:600}.industries-note{text-align:center;color:var(--muted);margin-top:40px}.industries-note a{color:var(--teal-dark);font-weight:700}@media (width<=960px){.industry-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.industry-grid{grid-template-columns:1fr}}.section-soft{background:var(--bg-soft)}.project-grid{grid-template-columns:repeat(auto-fit,minmax(300px,520px));justify-content:center;gap:24px;display:grid}.project-card{--accent:var(--teal);--accent-soft:#14b8a61f;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-4px)}.project-cover{background:radial-gradient(240px 140px at 85% 15%, #ffffff38, transparent 70%), linear-gradient(135deg, var(--accent), var(--navy));color:#fff;place-items:center;height:168px;display:grid;position:relative}.project-cover svg{opacity:.9}.project-cover--image{background:var(--navy);overflow:hidden}.project-cover img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .4s}.project-card:hover .project-cover img{transform:scale(1.04)}.project-cover--image .project-category{z-index:1;background:#0b1f3399}.project-category{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.04em;background:#ffffff2e;border-radius:999px;padding:4px 12px;font-size:.78rem;font-weight:700;position:absolute;top:16px;left:16px}.project-body{flex-direction:column;flex:1;padding:26px 28px 28px;display:flex}.project-body h3{margin-bottom:8px;font-size:1.3rem;font-weight:800}.project-body>p{color:var(--muted);margin-bottom:18px}.project-result{background:var(--accent-soft);border-radius:12px;align-items:center;gap:8px;margin-bottom:20px;padding:10px 14px;font-size:.92rem;font-weight:700;display:flex}.project-result svg{color:var(--teal-dark);flex-shrink:0}.project-tags{flex-wrap:wrap;gap:8px;margin:auto 0 0;padding:0;list-style:none;display:flex}.project-tags li{border:1px solid var(--border);color:var(--navy-2);border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:600}.project-link{margin-top:20px}.project-next{border:2px dashed #14b8a673}.next-terminal{background:var(--navy);color:#e2e8f0;min-height:168px}.next-terminal .mock-bar{background:#ffffff0f;border-bottom-color:#ffffff14}.next-terminal .mock-url{color:#ffffff8c;background:#ffffff0f;border-color:#ffffff1a}.next-terminal pre{white-space:pre-wrap;margin:0;padding:14px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;line-height:1.75}.t-muted{color:#ffffff80}.t-amber{color:var(--amber)}.t-teal{color:var(--mint)}.t-cursor{vertical-align:-2px;background:var(--mint);width:8px;height:1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@media (prefers-reduced-motion:reduce){.t-cursor{animation:none}}.project-next-btn{align-self:flex-start;margin-top:auto}@media (width<=900px){.project-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}}.section-dark{background:radial-gradient(700px 300px at 100% 0%, #14b8a62e, transparent 60%), var(--navy);color:#fff}.section-dark .kicker{color:var(--mint)}.section-dark .section-head p{color:#94a3b8}.steps{counter-reset:none;grid-template-columns:repeat(4,1fr);gap:20px;margin:0;padding:0;list-style:none;display:grid}.step{border-radius:var(--radius);background:#ffffff0a;border:1px solid #ffffff14;padding:28px 24px;transition:background .2s,border-color .2s;position:relative}.step:hover{background:#ffffff12;border-color:#5eead459}.step-num{color:var(--navy);background:var(--mint);border-radius:8px;margin-bottom:18px;padding:4px 10px;font-size:.9rem;font-weight:800;display:inline-block}.step:nth-child(4) .step-num{background:var(--amber)}.step h3{margin-bottom:8px;font-size:1.15rem;font-weight:700}.step p{color:#94a3b8;font-size:.95rem}@media (width<=900px){.steps{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.steps{grid-template-columns:1fr}}.why{grid-template-columns:.9fr 1.1fr;align-items:center;gap:64px;display:grid}.why-copy p{color:var(--muted);margin-bottom:28px;font-size:1.08rem}.why-founded{background:var(--bg-soft);border-left:4px solid var(--teal);border-radius:12px;margin-bottom:28px;padding:18px 20px}.why-founded strong{color:var(--navy);margin-bottom:6px;font-size:1.15rem;font-weight:800;display:block}.why-copy .why-founded p{margin-bottom:0;font-size:.98rem}.why-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.why-card{border-radius:var(--radius);background:var(--bg-soft);border:1px solid #14b8a626;padding:26px}.why-icon{width:44px;height:44px;color:var(--teal-dark);box-shadow:var(--shadow);background:#fff;border-radius:12px;place-items:center;margin-bottom:16px;display:grid}.why-card:nth-child(2) .why-icon,.why-card:nth-child(3) .why-icon{color:var(--amber-dark)}.why-card h3{margin-bottom:6px;font-size:1.05rem;font-weight:700}.why-card p{color:var(--muted);font-size:.93rem}@media (width<=900px){.why{grid-template-columns:1fr;gap:40px}}@media (width<=520px){.why-grid{grid-template-columns:1fr}}#contact{padding-top:24px}.contact{background:radial-gradient(500px 260px at 0% 100%, #5eead438, transparent 60%), linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 100%);color:#fff;box-shadow:var(--shadow-lg);border-radius:32px;grid-template-columns:1fr 1.1fr;gap:48px;padding:56px;display:grid}.kicker-light{color:var(--mint)}.contact-copy p{color:#cbd5e1;margin-bottom:28px;font-size:1.05rem}.contact-mail{color:var(--mint);align-items:center;gap:10px;font-weight:700;display:inline-flex}.contact-mail:hover{text-decoration:underline}.contact-form{border-radius:var(--radius-lg);color:var(--text);background:#fff;flex-direction:column;gap:16px;padding:28px;display:flex}.type-picker{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.type-picker legend{margin-bottom:10px;padding:0;font-size:.85rem;font-weight:700}.type-picker label{border:1.5px solid var(--border);color:var(--muted);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:600;transition:all .15s;position:relative}.type-picker label:hover{border-color:var(--teal)}.type-picker label.active{border-color:var(--teal);color:var(--teal-dark);background:#14b8a61a}.type-picker label:has(input:focus-visible){outline:3px solid var(--teal);outline-offset:2px}.type-picker input{opacity:0;pointer-events:none;position:absolute}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field span{font-size:.85rem;font-weight:700}.field input,.field textarea{border:1.5px solid var(--border);resize:vertical;background:#f8fafc;border-radius:12px;width:100%;padding:12px 14px;transition:border-color .15s,background .15s,box-shadow .15s}.field input::placeholder,.field textarea::placeholder{color:#94a3b8}.field input:focus,.field textarea:focus{border-color:var(--teal);background:#fff;outline:none;box-shadow:0 0 0 4px #14b8a626}.form-note{color:var(--teal-dark);text-align:center;font-size:.88rem}@media (width<=900px){.contact{grid-template-columns:1fr;padding:40px 28px}}@media (width<=520px){.contact{border-radius:24px;padding:32px 18px}.contact-form{padding:20px}.field-row{grid-template-columns:1fr}}.footer{background:var(--navy);color:#cbd5e1;margin-top:96px;padding:48px 0 24px}.footer-inner{border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:32px;display:flex}.footer-tag{letter-spacing:.08em;color:#94a3b8;margin-top:10px;font-size:.85rem}.footer-links{flex-wrap:wrap;gap:24px;font-weight:600;display:flex}.footer-links a:hover{color:var(--mint)}.footer-bottom{color:#64748b;padding-top:20px;font-size:.85rem}@media (width<=520px){.section{padding:72px 0}.container{padding:0 16px}}.chat{z-index:60;flex-direction:column;align-items:flex-end;gap:16px;display:flex;position:fixed;bottom:24px;right:24px}.chat-launcher{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:60px;height:60px;transition:transform .15s,background .2s;display:grid;position:relative;box-shadow:0 10px 30px #0b1f334d}.chat-launcher:hover{background:var(--navy-2);transform:translateY(-2px)}.chat-launcher{animation:.6s cubic-bezier(.34,1.56,.64,1) .4s backwards chat-pop}@keyframes chat-pop{0%{opacity:0;transform:scale(.3)translateY(30px)}}.chat-launcher-icon{transition:transform .25s;display:grid}.chat-launcher:hover .chat-launcher-icon{transform:rotate(-10deg)scale(1.08)}.chat-launcher--attention .chat-launcher-icon{animation:4s ease-in-out 1.2s infinite chat-wave}@keyframes chat-wave{0%,70%,to{transform:rotate(0)scale(1)}74%{transform:rotate(-14deg)scale(1.12)}78%{transform:rotate(12deg)scale(1.12)}82%{transform:rotate(-8deg)scale(1.08)}86%{transform:rotate(6deg)scale(1.04)}90%{transform:rotate(0)scale(1)}}.chat-launcher--attention:before,.chat-launcher--attention:after{content:"";border:2px solid var(--teal);pointer-events:none;border-radius:50%;animation:2.4s ease-out 1s infinite chat-ring;position:absolute;inset:0}.chat-launcher--attention:after{animation-delay:1.8s}@keyframes chat-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}.chat-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:800;line-height:1;animation:.4s cubic-bezier(.34,1.56,.64,1) 1.2s backwards chat-pop;display:grid;position:absolute;top:-2px;right:-2px}.chat-teaser{border:1px solid var(--border);max-width:260px;box-shadow:var(--shadow-lg);transform-origin:100% 100%;background:#fff;border-radius:16px 16px 4px;align-items:flex-start;gap:4px;padding:12px 10px 12px 16px;animation:.45s cubic-bezier(.34,1.56,.64,1) chat-teaser-in;display:flex;position:relative}@keyframes chat-teaser-in{0%{opacity:0;transform:translateY(10px)scale(.85)}}.chat-teaser-text{text-align:left;color:var(--navy);cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:600}.chat-teaser-close{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.chat-teaser-close:hover{background:var(--bg-soft);color:var(--navy)}.chat-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);width:370px;height:min(540px,100vh - 120px);box-shadow:var(--shadow-lg);transform-origin:100% 100%;flex-direction:column;animation:.2s ease-out chat-in;display:flex;overflow:hidden}@keyframes chat-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}.chat-head{background:linear-gradient(135deg, var(--navy), var(--navy-2));color:#fff;align-items:center;gap:12px;padding:16px 18px;display:flex}.chat-head strong{font-size:.98rem;display:block}.chat-status{color:#cbd5e1;align-items:center;gap:6px;font-size:.78rem;display:flex}.chat-status:before{content:"";background:var(--mint);border-radius:50%;width:7px;height:7px}.chat-avatar{width:38px;height:38px;color:var(--mint);background:#ffffff1f;border-radius:50%;flex:none;place-items:center;display:grid}.chat-close{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;margin-left:auto;display:grid}.chat-close:hover{background:#ffffff1f}.chat-body{background:var(--bg-soft);flex-direction:column;flex:1;gap:10px;padding:18px;display:flex;overflow-y:auto}.chat-msg{overflow-wrap:anywhere;white-space:pre-wrap;border-radius:16px;max-width:85%;padding:10px 14px;font-size:.92rem;line-height:1.5}.chat-msg--bot{border:1px solid var(--border);background:#fff;border-bottom-left-radius:4px;align-self:flex-start}.chat-msg p{margin:0}.chat-tag{background:var(--bg-soft);color:var(--teal-dark);white-space:nowrap;border-radius:999px;margin-bottom:6px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.chat-msg--out{color:var(--muted);background:#fffbeb;border-color:#fde68a}.chat-msg--out .chat-tag{color:var(--amber-dark);background:#fef3c7}.chat-note{color:var(--amber-dark);margin-bottom:4px;font-size:.78rem;font-weight:600;display:block}.chat-msg--error{border-color:#fecaca}.chat-retry{border:1px solid var(--teal);color:var(--teal-dark);cursor:pointer;background:#fff;border-radius:999px;margin-top:8px;padding:5px 12px;font-size:.82rem;font-weight:600}.chat-retry:hover:not(:disabled){background:var(--teal);color:#fff}.chat-retry:disabled{opacity:.45;cursor:default}.chat-msg--user{background:var(--teal-dark);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat-typing{gap:4px;padding:14px 16px;display:flex}.chat-typing span{background:var(--slate);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite chat-dot}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-suggest{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.chat-suggest button{border:1px solid var(--teal);color:var(--teal-dark);text-align:left;cursor:pointer;background:#fff;border-radius:999px;padding:7px 12px;font-size:.84rem;font-weight:600;transition:background .2s,color .2s}.chat-suggest button:hover,.chat-suggest button:focus-visible{background:var(--teal);color:#fff}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chat-input{border-top:1px solid var(--border);background:#fff;align-items:flex-end;gap:8px;padding:12px;display:flex}.chat-input textarea{border:1px solid var(--border);min-width:0;max-height:120px;font:inherit;resize:none;field-sizing:content;border-radius:21px;flex:1;padding:10px 14px;font-size:.92rem;line-height:1.4}.chat-input textarea:disabled{background:var(--bg-soft);cursor:wait}.chat-input textarea:focus{border-color:var(--teal);outline:none}.chat-input button{background:var(--amber);width:42px;height:42px;color:var(--navy);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.chat-input button:disabled{opacity:.45;cursor:default}@media (width<=520px){.chat{bottom:16px;right:16px}.chat-panel{width:calc(100vw - 32px);height:calc(100dvh - 104px)}}
