/* style.css */

:root{--navy:#0B1F3A;--secondary:#123A63;--blue:#2563EB;--bg:#F5F7FB;--ink:#172B46;--muted:#718095;--border:#E5EAF2;--green:#059669;--shadow:0 8px 32px #0b1f3a09}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5}a{color:var(--blue);text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}h1,h2,h3,p{margin-top:0}button,.button{border:0;border-radius:9px;padding:11px 18px;background:var(--blue);color:white;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-weight:600;transition:background .15s,transform .15s}button:hover,.button:hover{background:#1D4ED8}.button.small{padding:10px 16px;font-size:13px}.button.outline,button.secondary{background:white;color:var(--ink);border:1px solid var(--border)}.button.outline:hover,button.secondary:hover{background:#EFF4FC}button.icon{padding:7px 10px;background:transparent;color:var(--muted)}button.danger{background:#B91C1C}.text-link{font-weight:600;color:var(--ink)}.brand{display:flex;align-items:center;gap:8px;color:var(--navy);font-size:25px;font-weight:780;letter-spacing:-1px}.brand-dot{color:var(--blue);margin-left:-8px}.brand-symbol{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:var(--blue);color:white;font-size:24px;letter-spacing:0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.7px;display:flex;align-items:center;gap:8px;color:var(--blue)}.eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--blue)}.badge{display:inline-flex;padding:4px 9px;border-radius:5px;background:#EFF4FC;color:#46617F;font-size:11px;font-weight:600;white-space:nowrap}.green{color:var(--green)}.badge.green{background:#E7F6EF}.public-header{height:90px;max-width:1280px;padding:0 34px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.public-header nav{display:flex;gap:30px}.public-header nav a{color:#536278;font-size:13px}.header-actions{display:flex;align-items:center;gap:24px}.landing{background:#fff}.hero{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1.02fr;align-items:center;min-height:650px;padding:65px 50px 95px;gap:35px;overflow:hidden}.hero-copy h1{font-size:clamp(40px,4.15vw,62px);line-height:1.08;letter-spacing:-2.8px;margin:25px 0}.hero-copy h1 em{font-style:normal;color:var(--blue)}.hero-copy>p{font-size:19px;line-height:1.65;max-width:480px;color:#5B6B81}.hero-copy p.hero-detail{font-size:14px;max-width:450px;margin-bottom:30px}.hero-actions{display:flex;gap:12px}.hero-actions .button{font-size:11px;padding:16px 20px;letter-spacing:.3px}.hero-notes{display:flex;gap:22px;color:var(--muted);font-size:11px;margin-top:18px}.hero-art{position:relative;padding:30px 0}.orbit{position:absolute;border-radius:50%;border:1px solid #E0EAFB;width:620px;height:620px;top:-70px;left:-20px;z-index:-1}.orbit-two{width:480px;height:480px;top:0;left:50px;background:radial-gradient(#ECF3FF,#F7FAFF00)}.preview-app{display:flex;background:white;box-shadow:0 30px 75px #123a6320;border:1px solid #E4EAF4;border-radius:15px;overflow:hidden;transform:perspective(1500px) rotateY(-5deg) rotateZ(1deg);width:570px;max-width:100%}.preview-rail{width:53px;background:var(--navy);display:flex;flex-direction:column;gap:27px;align-items:center;color:#92A8C3;padding:20px 0;font-size:19px;flex-shrink:0}.preview-rail .brand-symbol{width:28px;height:28px;font-size:20px}.preview-body{padding:20px;width:100%;font-size:11px}.preview-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;color:var(--muted);font-size:10px}.preview-body h3{font-size:17px;margin-bottom:4px}.preview-body>p{color:var(--muted);font-size:10px}.preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.preview-kpis>div{padding:13px 10px;border:1px solid var(--border);border-radius:7px}.preview-kpis small{font-size:9px;color:var(--muted)}.preview-kpis strong{display:block;font-size:26px;margin:5px 0}.preview-kpis span{font-size:8px}.preview-charts{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}.preview-charts>div{border:1px solid var(--border);border-radius:7px;padding:12px}.preview-charts b{font-size:10px}.mini-bars{height:105px;display:flex;align-items:flex-end;gap:9px;margin-top:20px;background:repeating-linear-gradient(0deg,#EDF1F7 0px,#EDF1F7 1px,transparent 1px,transparent 26px)}.mini-bars i{display:block;background:#4680F1;width:18px;border-radius:3px 3px 0 0}.mini-bars i:nth-child(even){background:#BCD3FD}.mini-axis{font-size:7px;color:#8A96A8;margin-top:5px}.mini-donut{margin:24px auto 13px;width:102px;height:102px;border-radius:50%;background:conic-gradient(#2563EB 0 65%,#A5C3FA 65% 85%,#E6EEF9 85%);display:grid;place-items:center}.mini-donut>span{border-radius:50%;background:#fff;width:74px;height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:23px;font-weight:700}.mini-donut small{font-size:8px;color:var(--muted);font-weight:400}.preview-row{display:flex;align-items:center;gap:10px;margin-top:15px;padding:13px 0 0;border-top:1px solid var(--border);font-size:9px}.preview-row small{display:block;color:var(--muted);margin-top:3px}.preview-row .badge{margin-left:auto;font-size:8px}.check{border:1px solid #A5D7C5;border-radius:50%;color:var(--green);padding:2px 5px}.float-card{position:absolute;bottom:0;left:50px;background:#fff;box-shadow:0 15px 35px #0b1f3a18;border:1px solid #E3EAF5;border-radius:10px;padding:15px 20px;display:flex;gap:15px;align-items:center}.float-card strong{font-size:12px}.float-card small{display:block;color:var(--muted);font-size:10px}.float-icon{background:#E7F6EF;color:#059669;padding:5px 12px;border-radius:8px;font-size:25px}.value-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:30px;display:flex;justify-content:center;align-items:center;gap:24px;color:#536278;font-size:13px}.value-strip>span{font-size:9px;letter-spacing:1.3px;color:#8794A5;max-width:200px}.value-strip>b{color:#BDCADC}.section{max-width:1200px;margin:auto;padding:90px 35px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:35px}.section h2,.bi-section h2,.security-section h2{font-size:37px;line-height:1.2;letter-spacing:-1.3px;margin:14px 0}.section-heading>p{max-width:350px;color:var(--muted);line-height:1.8}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid article{border:1px solid var(--border);border-radius:12px;padding:30px}.feature-icon{display:inline-grid;place-items:center;width:43px;height:43px;border-radius:10px;background:#EEF4FF;color:var(--blue);font-size:25px}.feature-grid h3{margin:22px 0 12px;font-size:19px}.feature-grid p{color:var(--muted);font-size:13px;line-height:1.8}.feature-grid a{display:block;margin-top:25px;font-size:12px;font-weight:600}.bi-section{background:var(--navy);border-radius:18px;max-width:1130px;margin:auto;padding:60px;display:grid;grid-template-columns:1fr 1fr;gap:65px;color:white}.eyebrow.light{color:#82B1FF}.bi-section p{color:#A3B5CE;font-size:14px;line-height:1.8}.check-list{padding:0;list-style:none;color:#C2D0E3;font-size:12px;line-height:2.8}.check-list li:before{content:'✓';color:#6EA7FF;margin-right:10px}.light-button{background:#fff;color:var(--navy);margin-top:15px;font-size:12px}.bi-visual{border:1px solid #365070;border-radius:12px;align-self:center;background:#122C4C;padding:28px}.bi-visual-head{display:flex;justify-content:space-between;gap:12px;font-size:12px;align-items:center}.bi-visual-head .badge{font-size:8px;background:#203E65;color:#B8D3F7}.metric-callout{display:flex;flex-direction:column;margin:35px 0 25px;color:#ABBFDA;font-size:12px}.metric-callout strong{font-size:64px;line-height:1.2;color:#fff;letter-spacing:-3px}.metric-callout strong span{font-size:30px;color:#7D9ABE}.metric-callout small{font-size:10px}.progress-stack{height:14px;display:flex;gap:4px;border-radius:4px;overflow:hidden}.progress-stack span{background:#4E8AFF}.progress-stack span:nth-child(2){background:#94B9FF}.progress-stack span:nth-child(3){background:#35547D}.bi-legend{display:flex;gap:15px;margin:15px 0 30px;color:#A4B9D8;font-size:9px}.bi-pills{border-top:1px solid #2D4669;padding-top:20px;display:flex;gap:10px;font-size:9px;color:#9DB6D8}.bi-pills span{border:1px solid #365070;border-radius:5px;padding:6px 9px}.centered{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.steps article{padding:20px}.steps article>span{font-size:34px;font-weight:700;color:#C6D7F4;letter-spacing:-1px}.steps h3{margin:15px 0 10px}.steps p{color:var(--muted);font-size:13px;line-height:1.8}.security-section{background:#F4F7FC;max-width:1130px;margin:auto;padding:40px;display:flex;align-items:center;gap:25px;border-radius:12px}.security-section>div{flex:1}.security-section h2{font-size:26px}.security-section p{color:var(--muted);font-size:12px;max-width:560px;margin:0}.security-tags{max-width:230px;display:flex;flex-direction:column;gap:9px;font-size:11px;color:#536985}.security-tags span:before{content:'✓';margin-right:10px;color:#059669}.pricing{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}.pricing p{color:var(--muted);line-height:1.8}.pricing-card{border:1px solid #C8D9F5;border-top:3px solid var(--blue);padding:35px;border-radius:12px;box-shadow:var(--shadow)}.pricing-card h3{margin-top:15px}.pricing-card>strong{display:block;font-size:30px;letter-spacing:-1px;margin-top:20px}.pricing-card>span:not(.eyebrow){display:block;color:var(--muted);font-size:12px}.pricing-card .button{display:flex;margin:25px 0 12px;font-size:11px}.pricing-card>small{font-size:10px;display:block;text-align:center;color:var(--muted)}.public-footer{border-top:1px solid var(--border);padding:35px 50px;max-width:1280px;margin:auto;display:flex;align-items:center;gap:35px;color:var(--muted);font-size:11px}.public-footer a:not(.brand){margin-left:auto;font-size:12px}
/* Workspace */
.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column}.sidebar{width:235px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:#A3B2C9;display:flex;flex-direction:column;padding:28px 16px;z-index:20}.sidebar .brand{color:#fff;font-size:24px;margin:0 12px 30px}.sidebar .brand-symbol{width:30px;height:30px;font-size:22px}.workspace-label{text-transform:uppercase;font-size:9px;letter-spacing:1.6px;color:#617998;margin:18px 16px 10px}.side-nav{display:flex;flex-direction:column;gap:5px}.side-nav a{color:#9CAFCB;padding:11px 14px;border-radius:7px;display:flex;align-items:center;gap:12px;font-size:13px}.side-nav a:hover{background:#193450;color:#fff}.side-nav a.active{background:#1B3E6C;color:#fff;box-shadow:inset 3px 0 #629CFF}.nav-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:19px}.sidebar-bottom{margin-top:auto;padding:18px 8px 0}.trial-card{background:#122E50;border:1px solid #254263;padding:14px;border-radius:9px;font-size:11px;color:#9FB6D4}.trial-card strong{display:block;color:#E1EBF9;margin-bottom:5px}.trial-card .progress{margin-top:12px}.sidebar-footer{display:flex;gap:10px;align-items:center;margin-top:22px}.avatar{height:34px;width:34px;flex-shrink:0;background:#DCE8FA;color:#2C599C;font-weight:700;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.avatar.dark{background:#284363;color:#D5E5FB}.sidebar-footer strong{display:block;color:#E3EBF6;font-size:11px}.sidebar-footer small{font-size:9px;color:#7F97B7}.sidebar-footer button{margin-left:auto;color:#9FB6D4}.app-main{margin-left:235px;min-height:100vh}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--border);padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:18px}.breadcrumb{color:#8E9AAD;font-size:12px}.breadcrumb b{color:#3D526D;font-weight:500}.topbar-right{display:flex;align-items:center;gap:15px;font-size:11px;color:var(--muted)}.topbar-right .badge{color:var(--green);background:#ECF8F1}.workspace{padding:30px 32px 50px;max-width:1920px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}.page-heading h1{font-size:27px;font-weight:650;letter-spacing:-.8px;margin-bottom:5px}.page-heading p{margin:0;color:var(--muted);font-size:12px}.page-heading .button,.page-heading button{font-size:12px}.heading-actions{display:flex;gap:10px}.filters{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-radius:9px;margin-bottom:22px;flex-wrap:wrap}.filters label{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted)}input,select,textarea{border:1px solid #DCE3ED;border-radius:7px;background:#fff;color:var(--ink);padding:10px 12px;max-width:100%;min-width:0}input:focus,select:focus,textarea:focus{border-color:#8BAEF1;outline:2px solid #D7E5FC}textarea{min-height:95px;resize:vertical}input[type=checkbox]{width:auto!important;accent-color:var(--blue)}.filters input,.filters select{padding:7px 9px;font-size:11px;max-width:180px}.filters .search{flex:1;min-width:150px;max-width:280px}.filters .spacer{flex:1}.filters button{font-size:11px;padding:7px 11px}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;margin-bottom:22px}.kpi{background:#fff;border:1px solid var(--border);border-radius:10px;padding:19px 20px;box-shadow:0 2px 3px #0B1F3A02}.kpi .kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#6F7F94;font-size:11px}.kpi .kpi-icon{display:grid;place-items:center;background:#EFF5FF;color:#6694DF;border-radius:7px;width:27px;height:27px;font-size:16px}.kpi strong{font-size:30px;font-weight:650;letter-spacing:-1px;display:block;margin:10px 0 2px;line-height:1.15}.kpi small{font-size:9px;color:#8B98AA}.kpi.blue{border-top:2px solid var(--blue)}.kpi.alert strong{color:#D97706}.kpi.success strong{color:var(--green)}.status-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin-bottom:24px}.status-count{background:white;border:1px solid var(--border);border-radius:7px;padding:12px;font-size:10px;color:#7D8BA0;display:flex;justify-content:space-between;gap:5px}.status-count b{color:var(--ink);font-size:13px}.chart-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;margin-bottom:20px}.chart-grid.equal{grid-template-columns:repeat(2,1fr)}.panel{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 3px #0B1F3A02;overflow:hidden}.panel-head{padding:19px 22px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-head h3{font-size:13px;margin:0;font-weight:650}.panel-head p{font-size:10px;color:#8A98AA;margin:4px 0 0}.panel-head .badge{font-size:9px}.chart{height:280px;width:100%;padding:8px}.chart.short{height:230px}.panel-body{padding:22px}.panel-body p{color:var(--muted)}.kpi-more{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:22px}.kpi-more .kpi strong{font-size:24px}.view-tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:20px;gap:20px}.view-tabs a{padding:0 3px 12px;color:var(--muted);font-size:12px}.view-tabs a.active{color:var(--blue);border-bottom:2px solid var(--blue)}.table-wrap{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-size:10px;letter-spacing:.4px;color:#8290A3;font-weight:600;background:#F9FBFE;padding:13px 16px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:14px 16px;border-bottom:1px solid #EDF1F6;white-space:nowrap}tr:last-child td{border-bottom:0}tbody tr:hover{background:#FAFCFF}td .task-title{color:var(--ink);font-weight:550;max-width:300px;display:block;overflow:hidden;text-overflow:ellipsis}td .task-title:hover{color:var(--blue)}td small{display:block;color:#96A0AF;font-size:9px;margin-top:3px}.status-badge{display:inline-flex;gap:6px;align-items:center;font-size:10px;padding:4px 8px;background:color-mix(in srgb,var(--color) 9%,white);color:var(--color);border-radius:5px;white-space:nowrap}.status-badge:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--color)}.priority{font-size:10px}.priority.HIGH,.priority.URGENT{color:#D97706}.priority.LOW{color:#8A97A8}.progress{height:5px;background:#E9EEF6;border-radius:8px;overflow:hidden;width:100%}.progress span{display:block;background:#568CF0;height:100%;border-radius:8px}.progress-cell{display:flex;gap:10px;align-items:center;min-width:90px;font-size:9px;color:var(--muted)}.empty{padding:55px 25px;text-align:center;color:var(--muted)}.empty .empty-icon{font-size:36px;color:#B3C6E1;display:block;margin-bottom:12px}.empty h3{color:#344D6D;font-size:16px;margin:10px 0}.empty p{font-size:12px;max-width:420px;margin:0 auto 20px}.kanban{display:flex;overflow:auto;gap:15px;padding-bottom:20px;align-items:flex-start}.kanban-column{min-width:260px;width:260px;background:#ECF0F6;border-radius:10px;padding:12px;min-height:380px}.kanban-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;margin:0 3px 15px}.kanban-head i{width:7px;height:7px;border-radius:50%}.kanban-head span{margin-left:auto;font-size:10px;color:#8A98AA;font-weight:400}.task-card{display:block;background:#fff;border:1px solid var(--border);border-radius:8px;padding:15px;margin-bottom:10px;box-shadow:0 2px 3px #0b1f3a04;cursor:grab}.task-card h4{margin:8px 0 12px;font-size:12px;font-weight:600}.task-card small{font-size:9px;color:var(--muted)}.task-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.task-card .avatar{width:25px;height:25px;font-size:8px}.kanban-column.dragover{background:#DBE8FE;outline:2px dashed #7CA6EF}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--border);border-top:1px solid var(--border)}.calendar-day{min-height:115px;background:#fff;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:8px;overflow:hidden}.calendar-weekday{text-align:center;padding:10px;background:#EFF3F9;color:#7A8AA0;font-size:11px}.calendar-day.muted{background:#F6F8FC;color:#B0BAC8}.calendar-day.today{box-shadow:inset 0 0 0 2px #2563EB}.calendar-day>span{font-size:10px}.calendar-task{display:block;margin-top:5px;padding:4px 6px;border-radius:4px;background:#EDF3FF;color:#3764A8;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:11px;font-weight:600;color:#63738B}.field input,.field select,.field textarea{width:100%}.field.full{grid-column:1/-1}.field small{font-size:10px;color:var(--muted)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-actions button{font-size:12px}.error-message{background:#FFF0F0;color:#A52727;padding:10px 13px;border-radius:7px;font-size:12px;margin:15px 0}.notice{background:#EFF5FF;color:#40669F;padding:13px 16px;border:1px solid #D7E5FC;border-radius:8px;font-size:12px;margin-bottom:20px}.notice.warning{background:#FFFBEB;color:#9A6811;border-color:#F4DFAD}.notice.success{background:#ECF8F1;color:#16764A;border-color:#CEEAD9}.muted{color:var(--muted)}.small-text{font-size:11px}.flex{display:flex;gap:12px;align-items:center}.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:14px}.mb{margin-bottom:20px}.audit-item{border-left:2px solid #DCE6F5;padding:0 0 20px 18px;margin-left:4px;font-size:11px}.audit-item b{font-weight:600}.audit-item small{display:block;color:var(--muted);margin-top:3px}.audit-item pre{white-space:pre-wrap;word-break:break-word;background:#F7F9FC;padding:9px;border-radius:6px;font-size:10px;max-height:180px;overflow:auto}.comment{padding:13px 0;border-bottom:1px solid var(--border)}.comment p{white-space:pre-wrap;font-size:12px;margin:8px 0;color:var(--ink)}.comment small{font-size:10px;color:var(--muted)}dialog{border:1px solid var(--border);border-radius:14px;box-shadow:0 25px 80px #0b1f3a30;padding:0;width:760px;max-width:calc(100vw - 30px);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#07162D70;backdrop-filter:blur(3px)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:21px 26px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#fff;z-index:2}.modal-header h2{font-size:19px;margin:0;letter-spacing:-.5px}.modal-body{padding:25px}.modal-tabs{display:flex;gap:20px;margin:28px 0 15px;border-bottom:1px solid var(--border);padding-bottom:10px}.modal-tabs button{background:none;color:var(--muted);padding:0;font-size:12px}.modal-tabs button.active{color:var(--blue)}#toast{position:fixed;bottom:24px;right:24px;background:var(--navy);color:white;padding:13px 22px;border-radius:9px;font-size:12px;box-shadow:var(--shadow);z-index:100;display:none;max-width:90vw}#toast.show{display:block}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:var(--navy);color:#fff;padding:55px 70px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story .brand{color:#fff}.auth-story h1{font-size:49px;line-height:1.12;letter-spacing:-2px;max-width:440px;margin-bottom:25px}.auth-story h1 span{color:#7BAEFF}.auth-story p{color:#A4B8D3;max-width:365px;line-height:1.9}.auth-story small{color:#6885A9;font-size:11px}.auth-decoration{height:120px;display:flex;align-items:flex-end;gap:13px;margin:35px 0;width:250px}.auth-decoration i{background:#234F87;width:33px;border-radius:5px 5px 0 0}.auth-decoration i:nth-child(2n){background:#3976D3}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:45px 35px}.auth-form{width:100%;max-width:370px}.auth-form h2{font-size:28px;letter-spacing:-.8px;margin:12px 0 8px}.auth-form>p{color:var(--muted);font-size:13px;margin-bottom:27px}.auth-form .field{margin-bottom:16px}.auth-form form>.button,.auth-form form>button{width:100%;margin-top:10px}.auth-form .auth-foot{text-align:center;font-size:12px;margin-top:24px}.auth-form .brand{display:none}.auth-links{display:flex;justify-content:space-between;font-size:11px;margin:10px 0}.mobile-menu{display:none}.data-steps{display:flex;gap:15px;padding:17px 22px;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;flex-wrap:wrap}.data-steps .active{color:var(--blue);font-weight:600}.drop-zone{padding:40px;border:2px dashed #D2DEF0;border-radius:10px;background:#F9FBFF;text-align:center}.drop-zone p{font-size:12px;color:var(--muted)}.drop-zone input{max-width:100%;font-size:12px}.mapping-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.bi-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pill-list{display:flex;flex-wrap:wrap;gap:8px}.user-checkboxes{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;padding-top:5px}.file-link{display:flex;justify-content:space-between;padding:10px;border:1px solid var(--border);border-radius:6px;font-size:12px;margin-bottom:8px}.disabled-account{max-width:650px;margin:80px auto;text-align:center}.late{color:#C47815}.table-footer{padding:12px 18px;color:var(--muted);font-size:10px;border-top:1px solid var(--border)}
@media(min-width:1600px){.workspace{padding:35px 45px}.chart{height:320px}.hero{min-height:730px}.hero-art{transform:scale(1.04)}}
@media(max-width:1200px){.sidebar{width:205px}.app-main{margin-left:205px}.workspace{padding:24px}.topbar{padding:0 24px}.kpi-grid{gap:10px}.kpi{padding:15px}.kpi strong{font-size:26px}.status-strip{grid-template-columns:repeat(4,1fr)}.hero{padding:50px 30px 80px;gap:25px}.hero-copy h1{font-size:48px}.hero-copy>p{font-size:17px}.preview-body{padding:14px}.preview-kpis strong{font-size:23px}.preview-rail{width:43px}.bi-section{margin:0 30px;padding:40px;gap:35px}.security-section{margin:0 30px}.auth-story{padding:45px}.auth-story h1{font-size:40px}.public-header nav{gap:20px}.kpi-more{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding:55px 30px 60px}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-copy .eyebrow{justify-content:center}.hero-copy h1{font-size:53px}.hero-actions,.hero-notes{justify-content:center}.hero-art{max-width:570px;margin:10px auto 0;width:100%}.public-header nav{display:none}.value-strip{flex-wrap:wrap;font-size:11px;gap:15px}.value-strip>span{max-width:none;width:100%;text-align:center}.section{padding:65px 28px}.section-heading{align-items:flex-start;flex-direction:column;gap:10px}.section-heading>p{max-width:100%}.feature-grid{gap:12px}.feature-grid article{padding:22px}.bi-section{grid-template-columns:1fr 1fr;padding:30px}.bi-section h2{font-size:29px}.bi-visual{padding:20px}.bi-visual-head{flex-direction:column;align-items:flex-start}.steps{gap:15px}.steps article{padding:5px}.security-tags{display:none}.pricing{gap:40px}.public-footer{padding:30px;flex-wrap:wrap;gap:20px}.sidebar{width:185px;padding:25px 10px}.sidebar .brand{font-size:22px;margin-left:10px}.app-main{margin-left:185px}.workspace{padding:22px 18px}.kpi-grid{grid-template-columns:repeat(3,1fr)}.chart-grid{grid-template-columns:1fr}.chart-grid.equal{grid-template-columns:1fr}.topbar{padding:0 18px}.topbar-right .date-label{display:none}.status-strip{grid-template-columns:repeat(3,1fr)}.mapping-grid{grid-template-columns:repeat(2,1fr)}.bi-controls{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.auth-story{padding:40px}.auth-story h1{font-size:36px}.page-heading h1{font-size:24px}.heading-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:640px){.public-header{height:75px;padding:0 22px}.public-header .brand{font-size:23px}.header-actions{gap:12px}.header-actions .text-link{font-size:12px}.header-actions .button{font-size:10px;padding:9px 12px}.hero{padding:35px 22px 55px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.hero-copy h1{font-size:42px;letter-spacing:-2px}.hero-copy>p{font-size:16px}.hero-copy p.hero-detail{font-size:12px}.hero-actions .button{font-size:9px;padding:14px}.hero-notes{gap:15px;font-size:9px}.preview-body{padding:12px}.preview-body h3{font-size:13px}.preview-kpis{gap:5px;margin:14px 0}.preview-kpis>div{padding:8px}.preview-kpis small{font-size:7px}.preview-kpis strong{font-size:20px}.preview-kpis span{font-size:6px}.preview-charts>div{padding:8px}.mini-bars{gap:6px;height:85px}.mini-donut{width:80px;height:80px}.mini-donut>span{width:59px;height:59px;font-size:20px}.preview-row{font-size:7px}.preview-row .badge{font-size:6px}.float-card{left:28px;padding:10px 15px}.float-card strong{font-size:10px}.float-card small{font-size:8px}.float-icon{font-size:20px}.feature-grid,.steps,.pricing{grid-template-columns:1fr}.section h2{font-size:30px}.section-heading{margin-bottom:25px}.feature-grid article{padding:26px}.feature-grid a{margin-top:18px}.bi-section{grid-template-columns:1fr;margin:0 20px;padding:30px}.bi-visual-head{flex-direction:row}.steps{gap:25px}.steps article{padding:10px}.security-section{padding:25px;margin:0 20px;align-items:flex-start;gap:15px}.security-section h2{font-size:23px}.security-section>.feature-icon{flex-shrink:0}.security-section .eyebrow{font-size:8px}.pricing{gap:25px}.pricing-card{padding:28px}.public-footer{font-size:10px}.public-footer .brand{font-size:22px}.public-footer>span{display:none}.public-footer small{width:100%}.sidebar{transform:translateX(-100%);transition:transform .2s;width:235px}.sidebar.open{transform:translateX(0);box-shadow:8px 0 40px #0b1f3a40}.app-main{margin-left:0}.mobile-menu{display:inline-flex;padding:5px 8px;background:none;color:var(--ink);font-size:22px}.topbar{height:62px;padding:0 14px;gap:10px}.breadcrumb{font-size:10px;flex:1}.topbar-right{gap:8px}.topbar-right .badge{font-size:8px}.topbar-right .avatar{height:28px;width:28px;font-size:9px}.workspace{padding:22px 15px}.page-heading{align-items:flex-start;gap:10px}.page-heading h1{font-size:23px}.page-heading p{font-size:10px;max-width:220px}.page-heading button{padding:9px 11px;font-size:10px}.heading-actions{gap:6px}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.kpi{padding:14px}.kpi .kpi-top{font-size:10px}.kpi strong{font-size:28px}.kpi small{font-size:8px}.kpi-grid>.kpi:last-child{grid-column:1/-1}.status-strip{grid-template-columns:repeat(2,1fr);gap:7px}.status-count{padding:10px;font-size:9px}.kpi-more{grid-template-columns:repeat(2,1fr);gap:10px}.filters{gap:8px;padding:12px}.filters input,.filters select{max-width:145px}.filters .search{max-width:none;min-width:100%;width:100%}.filters label{font-size:10px}.filters .spacer{display:none}.panel-head{padding:17px 16px 0}.panel-head h3{font-size:12px}.panel-head p{font-size:9px}.chart{height:260px;padding:0}.chart-grid{gap:15px;margin-bottom:15px}.panel-body{padding:16px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal-header{padding:17px 18px}.modal-body{padding:18px}.modal-header h2{font-size:17px}.mapping-grid,.bi-controls{grid-template-columns:1fr 1fr;gap:10px}.mapping-grid .field label,.bi-controls .field label{font-size:10px}.data-steps{font-size:9px;padding:14px;gap:10px}.auth-layout{grid-template-columns:1fr}.auth-story{display:none}.auth-form-wrap{padding:35px 25px;min-height:100vh}.auth-form .brand{display:flex;margin-bottom:45px}.auth-form h2{font-size:26px}.calendar-day{min-height:85px;padding:4px}.calendar-task{font-size:8px;padding:3px}.calendar-weekday{font-size:9px;padding:7px 2px}.calendar-nav h3{font-size:14px;margin:0}.calendar-nav button{padding:7px 12px}.view-tabs{gap:18px}.view-tabs a{font-size:11px}.drop-zone{padding:25px 15px}.kanban-column{min-width:245px;width:245px}.table-footer{font-size:9px}.notice{font-size:11px}.disabled-account{margin:40px 10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hero-copy,.hero-art,.preview-body{min-width:0}
@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr)}}

/* TaskScale Assistente Comercial */
.ts-chat-root{position:fixed;right:28px;bottom:28px;z-index:9999;font-family:inherit}
.ts-chat-launcher{width:58px;height:58px;border:0;border-radius:50%;background:#2563EB;color:#fff;box-shadow:0 12px 32px #0B1F3A35;display:grid;place-items:center;font-size:25px;cursor:pointer;transition:.2s}
.ts-chat-launcher:hover{transform:translateY(-2px);background:#1D4ED8}
.ts-chat-panel{position:absolute;right:0;bottom:72px;width:375px;max-width:calc(100vw - 32px);height:530px;max-height:calc(100vh - 120px);background:#fff;border:1px solid #DDE6F2;border-radius:18px;box-shadow:0 25px 70px #07162D35;overflow:hidden;display:none;grid-template-rows:auto 1fr auto auto auto}
.ts-chat-panel.open{display:grid}
.ts-chat-header{background:#0B1F3A;color:#fff;padding:18px;display:flex;justify-content:space-between;align-items:flex-start}
.ts-chat-header>div{position:relative;padding-left:15px}
.ts-chat-header strong{display:block;font-size:14px}
.ts-chat-header small{display:block;color:#9FB6D4;font-size:10px;margin-top:3px}
.ts-chat-status{position:absolute;left:0;top:5px;width:7px;height:7px;border-radius:50%;background:#22C55E}
.ts-chat-close{background:none;border:0;color:#B9CAE0;padding:0;font-size:25px;cursor:pointer}
.ts-chat-messages{padding:18px;background:#F6F9FD;overflow-y:auto;display:flex;flex-direction:column;gap:11px}
.ts-chat-row{display:flex}
.ts-chat-row.user{justify-content:flex-end}
.ts-chat-bubble{max-width:85%;padding:11px 13px;border-radius:14px;background:#fff;border:1px solid #E1E8F2;color:#31445F;font-size:12px;line-height:1.55;white-space:pre-wrap}
.ts-chat-row.user .ts-chat-bubble{background:#2563EB;border-color:#2563EB;color:#fff;border-bottom-right-radius:5px}
.ts-chat-row.assistant .ts-chat-bubble{border-bottom-left-radius:5px}
.ts-chat-quick{display:flex;gap:6px;padding:10px 14px 4px;background:#fff;overflow-x:auto}
.ts-chat-quick button{background:#F2F6FC;border:1px solid #DCE6F4;color:#31547F;padding:7px 9px;border-radius:20px;font-size:9px;white-space:nowrap;cursor:pointer}
.ts-chat-form{padding:10px 14px 8px;display:flex;gap:8px;background:#fff}
.ts-chat-form input{flex:1;width:auto;border-radius:10px;font-size:11px;padding:11px 12px}
.ts-chat-form button{width:42px;border-radius:10px;padding:0;display:grid;place-items:center}
.ts-chat-panel footer{display:flex;justify-content:space-between;padding:0 15px 12px;background:#fff;font-size:8px;color:#8C9BB0}
.ts-chat-panel footer a{font-size:9px;font-weight:600}
@media(max-width:640px){
  .ts-chat-root{right:16px;bottom:16px}
  .ts-chat-panel{position:fixed;left:12px;right:12px;bottom:86px;width:auto;height:min(520px,calc(100vh - 110px))}
}


.ts-chat-launcher{
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: 64px;
  height: 64px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg,#2563eb 0%,#1d4ed8 55%,#0f172a 100%);
  box-shadow: 0 16px 40px rgba(37,99,235,.28);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:9998;
  transition: transform .18s ease, box-shadow .18s ease;
}

.ts-chat-launcher:hover{
  transform: translateY(-2px) scale(1.03);
  box-shadow: 0 18px 46px rgba(37,99,235,.34);
}

.ts-chat-launcher-icon{
  width: 34px;
  height: 34px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ts-chat-launcher-icon svg{
  width: 34px;
  height: 34px;
  display:block;
}

.ts-chat-panel{
  position: fixed;
  right: 24px;
  bottom: 100px;
  width: 370px;
  max-width: calc(100vw - 24px);
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 22px 60px rgba(15,23,42,.20);
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px) scale(.98);
  transition: all .18s ease;
  z-index: 9999;
}

.ts-chat-panel.open{
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.ts-chat-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  padding:14px 16px;
  background:#082b63;
  color:#fff;
}

.ts-chat-header small{
  display:block;
  margin-top:2px;
  opacity:.85;
}

.ts-chat-status{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#22c55e;
  margin-right:8px;
}

.ts-chat-close{
  border:0;
  background:transparent;
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.ts-chat-messages{
  max-height:360px;
  overflow:auto;
  padding:14px;
  background:#f8fafc;
}

.ts-chat-row{
  display:flex;
  margin-bottom:10px;
}

.ts-chat-row.user{
  justify-content:flex-end;
}

.ts-chat-row.assistant{
  justify-content:flex-start;
}

.ts-chat-bubble{
  max-width:84%;
  padding:12px 14px;
  border-radius:14px;
  font-size:14px;
  line-height:1.45;
  white-space:pre-wrap;
  word-break:break-word;
}

.ts-chat-row.user .ts-chat-bubble{
  background:#2563eb;
  color:#fff;
  border-bottom-right-radius:6px;
}

.ts-chat-row.assistant .ts-chat-bubble{
  background:#fff;
  color:#0f172a;
  border:1px solid #dbe3f0;
  border-bottom-left-radius:6px;
}

.ts-chat-quick{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  padding:12px 14px 0;
  background:#fff;
}

.ts-chat-quick button{
  border:1px solid #dbe3f0;
  background:#f8fafc;
  color:#274060;
  border-radius:999px;
  padding:8px 12px;
  cursor:pointer;
  font-size:13px;
}

.ts-chat-form{
  display:flex;
  gap:8px;
  padding:12px 14px;
  background:#fff;
}

.ts-chat-form input{
  flex:1;
  border:1px solid #cfd8e3;
  border-radius:12px;
  padding:12px 14px;
  font-size:14px;
  outline:none;
}

.ts-chat-form button{
  width:48px;
  border:0;
  border-radius:12px;
  background:#2563eb;
  color:#fff;
  cursor:pointer;
  font-size:18px;
}

.ts-chat-panel footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 14px 14px;
  background:#fff;
  font-size:12px;
  color:#64748b;
}

.ts-chat-panel footer a{
  color:#2563eb;
  text-decoration:none;
  font-weight:600;
}

/* Digitação natural */

.ts-chat-thinking .ts-chat-bubble{
  display:flex;
  gap:5px;
  align-items:center;
  min-width:52px;
  min-height:36px;
}

.ts-typing-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#718096;
  animation:tsTyping 1.1s infinite ease-in-out;
}

.ts-typing-dot:nth-child(2){
  animation-delay:.15s;
}

.ts-typing-dot:nth-child(3){
  animation-delay:.30s;
}

@keyframes tsTyping{
  0%,60%,100%{
    transform:translateY(0);
    opacity:.35;
  }

  30%{
    transform:translateY(-4px);
    opacity:1;
  }
}


/* WhatsApp comercial */

.ts-whatsapp-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  margin-top:12px;
  padding:10px 14px;

  border-radius:12px;

  background:#22c55e;
  color:#fff !important;

  font-size:13px;
  font-weight:700;

  text-decoration:none;

  box-shadow:
    0 0 0 0 rgba(34,197,94,.4),
    0 8px 22px rgba(34,197,94,.25);

  transition:
    transform .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

.ts-whatsapp-button:hover{
  transform:translateY(-1px);
  background:#16a34a;

  box-shadow:
    0 0 0 5px rgba(34,197,94,.12),
    0 10px 28px rgba(34,197,94,.32);
}

.ts-whatsapp-button svg{
  width:21px;
  height:21px;
  flex:none;
}


/* Ícone pequeno no rodapé */

.ts-wa-mini{
  width:28px;
  height:28px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:#22c55e;
  color:#fff !important;

  box-shadow:0 5px 14px rgba(34,197,94,.25);

  transition:.18s ease;
}

.ts-wa-mini:hover{
  transform:scale(1.08);

  box-shadow:
    0 0 0 4px rgba(34,197,94,.12),
    0 6px 18px rgba(34,197,94,.30);
}

.ts-wa-mini svg{
  width:17px;
  height:17px;
}


/* Rodapé TaskScale / LS Techia */

.footer-meta{
  display:flex;
  align-items:center;
  gap:18px;
}

.footer-lstechia{
  color:#2563eb;
  text-decoration:none;
  font-size:12px;
  font-weight:600;
  transition:.18s ease;
}

.footer-lstechia:hover{
  color:#1d4ed8;
  text-decoration:underline;
}

/* Voltar ao topo */

.back-to-top{
  position:fixed;
  right:30px;
  bottom:105px;
  width:46px;
  height:46px;
  border:0;
  border-radius:50%;
  background:#0b1f3a;
  color:#fff;
  font-size:22px;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  box-shadow:0 12px 30px rgba(11,31,58,.22);
  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease,
    background .2s ease;
  z-index:9990;
}

.back-to-top.show{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.back-to-top:hover{
  background:#2563eb;
  transform:translateY(-2px);
}

@media(max-width:640px){
  .footer-meta{
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
  }

  .back-to-top{
    right:18px;
    bottom:92px;
  }
}

.footer-brand-block{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
}

.footer-brand-block .footer-lstechia{
  font-size:10px;
  font-weight:500;
  color:#64748b;
}

.footer-brand-block .footer-lstechia:hover{
  color:#2563eb;
}

/* Melhorias de legibilidade da landing */

.public-nav a{
  font-size:14px;
  font-weight:500;
  color:#334155;
}

.hero p{
  color:#475569;
}

.hero > div > p:first-of-type{
  font-size:18px;
  line-height:1.55;
  color:#475569;
}

.hero > div > p:nth-of-type(2){
  font-size:14px;
  line-height:1.65;
  color:#475569;
}

.hero .eyebrow{
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  color:#2563eb;
}

.hero small,
.hero .micro,
.hero .trust-row{
  font-size:12px;
  color:#64748b;
}

.public-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
}

.public-footer small{
  margin-left:auto;
  color:#64748b;
  font-size:11px;
}

.footer-brand-block .brand{
  font-size:19px;
  font-weight:700;
}

.footer-brand-block .footer-lstechia{
  font-size:11px;
  color:#475569;
}

@media(max-width:768px){
  .hero > div > p:first-of-type{
    font-size:16px;
  }

  .hero > div > p:nth-of-type(2){
    font-size:13px;
  }

  .public-footer{
    align-items:flex-start;
  }

  .public-footer small{
    margin-left:0;
  }
}

.hero .trust-row,
.hero .trust-row span{
  font-size:12px;
  color:#475569;
  font-weight:500;
}

/* Menu superior mais legível */

.public-nav a{
  font-size:15px;
  font-weight:600;
  color:#1e293b;
}

.public-nav a:hover{
  color:#2563eb;
}

.public-nav{
  gap:28px;
}

.public-header .login-link,
.public-header > a:not(.button){
  font-size:15px;
  font-weight:600;
  color:#0f172a;
}

.public-header .button{
  font-size:14px;
  font-weight:700;
}

/* ===== ESCALA GLOBAL DA LANDING ===== */

body{
  color:#0f172a;
}

.section{
  padding-top:76px;
  padding-bottom:76px;
}

.section p{
  font-size:15px;
  line-height:1.7;
  color:#475569;
}

.section h2{
  font-size:34px;
  line-height:1.15;
}

.section h3{
  font-size:18px;
  line-height:1.35;
}

.eyebrow{
  font-size:12px !important;
  letter-spacing:.12em;
  font-weight:700;
}

/* ===== HERO ===== */

.hero{
  min-height:auto;
  padding-top:90px;
  padding-bottom:90px;
}

.hero h1{
  font-size:54px;
  line-height:1.03;
}

.hero > div > p:first-of-type{
  font-size:19px;
  line-height:1.55;
  max-width:560px;
}

.hero > div > p:nth-of-type(2){
  font-size:15px;
  line-height:1.7;
  max-width:560px;
}

.hero .button{
  font-size:14px;
  min-height:46px;
}

.hero .trust-row,
.hero .trust-row span{
  font-size:13px;
}

/* ===== BARRA DE BENEFÍCIOS ===== */

.operation-strip{
  padding-top:24px;
  padding-bottom:24px;
}

.operation-strip span{
  font-size:14px;
  font-weight:600;
  color:#334155;
}

/* ===== CARDS DE RECURSOS ===== */

.feature-grid{
  gap:24px;
}

.feature-card{
  padding:28px;
  min-height:230px;
}

.feature-card h3{
  font-size:20px;
}

.feature-card p{
  font-size:15px;
  line-height:1.65;
}

.feature-card a{
  font-size:14px;
  font-weight:600;
}

/* ===== DASHBOARD ESCURO ===== */

.dashboard-section{
  padding-top:72px;
  padding-bottom:72px;
}

.dashboard-section p,
.dashboard-section li{
  font-size:15px;
  line-height:1.65;
}

.dashboard-section h2{
  font-size:36px;
}

/* ===== ETAPAS 01 / 02 / 03 ===== */

.steps{
  gap:36px;
}

.step-number{
  font-size:34px;
}

.steps h3{
  font-size:19px;
}

.steps p{
  font-size:15px;
  line-height:1.65;
}

/* ===== SEGURANÇA ===== */

.security{
  padding:34px 38px;
}

.security h3{
  font-size:22px;
}

.security p,
.security li,
.security span{
  font-size:14px;
  line-height:1.6;
}

/* ===== PLANOS ===== */

.pricing{
  padding-top:74px;
  padding-bottom:74px;
  align-items:center;
}

.pricing > div:first-child{
  max-width:500px;
}

.pricing h2{
  font-size:36px;
}

.pricing p{
  font-size:15px;
}

.pricing-card{
  padding:34px;
  min-width:420px;
}

.pricing-card h3{
  font-size:19px;
}

.pricing-card p{
  font-size:15px;
}

.pricing-card strong{
  font-size:34px;
}

.pricing-card span,
.pricing-card small{
  font-size:13px;
}

/* ===== CONTAINER MAIS CHEIO ===== */

.section,
.hero,
.dashboard-section,
.pricing,
.security{
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
}

/* ===== RODAPÉ ===== */

.public-footer{
  padding-top:34px;
  padding-bottom:34px;
}

.public-footer small{
  font-size:12px;
}

.footer-brand-block .brand{
  font-size:20px;
}

.footer-brand-block .footer-lstechia{
  font-size:12px;
}

/* ===== RESPONSIVO ===== */

@media(max-width:900px){
  .hero h1{
    font-size:44px;
  }

  .section h2,
  .dashboard-section h2,
  .pricing h2{
    font-size:30px;
  }

  .pricing-card{
    min-width:0;
    width:100%;
  }
}

@media(max-width:640px){
  .section{
    padding-top:54px;
    padding-bottom:54px;
  }

  .hero{
    padding-top:60px;
    padding-bottom:60px;
  }

  .hero h1{
    font-size:38px;
  }

  .hero > div > p:first-of-type{
    font-size:17px;
  }

  .hero > div > p:nth-of-type(2){
    font-size:14px;
  }

  .feature-card{
    min-height:auto;
  }
}

/* ===== AJUSTE GLOBAL DE ESCALA E LEGIBILIDADE ===== */

body{
  color:#0f172a;
}

.public-header{
  padding-top:20px;
  padding-bottom:20px;
}

.public-nav{
  gap:30px;
}

.public-nav a{
  font-size:15px;
  font-weight:600;
  color:#1e293b;
}

.public-nav a:hover{
  color:#2563eb;
}

.public-header .login-link,
.public-header > a:not(.button){
  font-size:15px;
  font-weight:600;
  color:#0f172a;
}

.public-header .button{
  font-size:14px;
  font-weight:700;
  min-height:44px;
}

/* HERO */

.hero{
  min-height:auto;
  padding-top:72px;
  padding-bottom:72px;
}

.hero h1{
  font-size:56px;
  line-height:1.04;
}

.hero .eyebrow{
  font-size:12px !important;
  font-weight:700;
  letter-spacing:.13em;
}

.hero > div > p:first-of-type{
  font-size:19px;
  line-height:1.55;
  color:#334155;
  max-width:560px;
}

.hero > div > p:nth-of-type(2){
  font-size:15px;
  line-height:1.7;
  color:#475569;
  max-width:560px;
}

.hero .button{
  font-size:14px;
  min-height:46px;
}

.hero .trust-row,
.hero .trust-row span{
  font-size:13px;
  color:#475569;
  font-weight:500;
}

/* FAIXA ENTRE SEÇÕES */

.operation-strip{
  padding-top:20px;
  padding-bottom:20px;
}

.operation-strip span{
  font-size:14px;
  font-weight:600;
  color:#334155;
}

/* SEÇÕES GERAIS */

.section{
  padding-top:64px;
  padding-bottom:64px;
}

.section h2{
  font-size:36px;
  line-height:1.15;
}

.section h3{
  font-size:19px;
  line-height:1.35;
}

.section p{
  font-size:15px;
  line-height:1.7;
  color:#475569;
}

.eyebrow{
  font-size:12px !important;
  font-weight:700;
  letter-spacing:.12em;
}

/* CARDS */

.feature-grid{
  gap:22px;
}

.feature-card{
  padding:28px;
  min-height:220px;
}

.feature-card h3{
  font-size:20px;
}

.feature-card p{
  font-size:15px;
  line-height:1.65;
  color:#475569;
}

.feature-card a{
  font-size:14px;
  font-weight:600;
}

/* DASHBOARD ESCURO */

.dashboard-section{
  padding-top:64px;
  padding-bottom:64px;
}

.dashboard-section h2{
  font-size:36px;
}

.dashboard-section p,
.dashboard-section li{
  font-size:15px;
  line-height:1.65;
}

/* ETAPAS */

.steps{
  gap:32px;
}

.step-number{
  font-size:36px;
}

.steps h3{
  font-size:19px;
}

.steps p{
  font-size:15px;
  line-height:1.65;
  color:#475569;
}

/* SEGURANÇA */

.security{
  padding:32px 36px;
  margin-top:28px;
  margin-bottom:46px;
}

.security h3{
  font-size:22px;
}

.security p,
.security li,
.security span{
  font-size:14px;
  line-height:1.6;
}

/* PLANOS */

.pricing{
  padding-top:54px;
  padding-bottom:58px;
  align-items:center;
}

.pricing > div:first-child{
  max-width:500px;
}

.pricing h2{
  font-size:36px;
}

.pricing p{
  font-size:15px;
  line-height:1.65;
  color:#475569;
}

.pricing-card{
  padding:34px;
  min-width:420px;
}

.pricing-card h3{
  font-size:19px;
}

.pricing-card p{
  font-size:15px;
}

.pricing-card strong{
  font-size:34px;
}

.pricing-card span,
.pricing-card small{
  font-size:13px;
}

/* CONTAINER */

.section,
.hero,
.dashboard-section,
.pricing,
.security{
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
}

/* RODAPÉ */

.public-footer{
  padding-top:30px;
  padding-bottom:30px;
  align-items:flex-end;
}

.footer-brand-block .brand{
  font-size:20px;
  font-weight:700;
}

.footer-brand-block .footer-lstechia{
  font-size:12px;
  color:#475569;
}

.public-footer small{
  font-size:12px;
  color:#64748b;
  margin-left:auto;
}

/* MENOS ÁREA BRANCA ENTRE BLOCOS */

.dashboard-section + .section,
.steps + .security,
.security + .pricing{
  margin-top:0;
}

section + section{
  scroll-margin-top:90px;
}

/* RESPONSIVO */

@media(max-width:900px){
  .hero h1{
    font-size:46px;
  }

  .section h2,
  .dashboard-section h2,
  .pricing h2{
    font-size:31px;
  }

  .pricing-card{
    min-width:0;
    width:100%;
  }
}

@media(max-width:640px){
  .public-header{
    padding-top:14px;
    padding-bottom:14px;
  }

  .public-nav{
    gap:16px;
  }

  .public-nav a{
    font-size:13px;
  }

  .hero{
    padding-top:54px;
    padding-bottom:54px;
  }

  .hero h1{
    font-size:38px;
  }

  .hero > div > p:first-of-type{
    font-size:17px;
  }

  .hero > div > p:nth-of-type(2){
    font-size:14px;
  }

  .section{
    padding-top:48px;
    padding-bottom:48px;
  }

  .feature-card{
    min-height:auto;
  }

  .security{
    padding:26px 22px;
  }

  .pricing{
    padding-top:44px;
    padding-bottom:46px;
  }
}

/* ===== AJUSTE FINO DE ESPAÇAMENTO ===== */

.hero{
  padding-top:58px;
  padding-bottom:58px;
}

.section{
  padding-top:50px;
  padding-bottom:50px;
}

.dashboard-section{
  padding-top:52px;
  padding-bottom:52px;
}

.pricing{
  padding-top:46px;
  padding-bottom:48px;
}

.security{
  margin-top:18px;
  margin-bottom:28px;
}

.steps{
  margin-top:18px;
  margin-bottom:22px;
}

.feature-grid{
  margin-top:24px;
}

.operation-strip{
  padding-top:16px;
  padding-bottom:16px;
}

.public-footer{
  padding-top:24px;
  padding-bottom:24px;
}

.ts-sales-actions{display:grid;gap:8px;margin-top:12px}.ts-sales-button{display:block;padding:11px 12px;border-radius:10px;background:linear-gradient(120deg,#2463eb,#168acb);color:white!important;text-align:center;font-weight:700;text-decoration:none;font-size:12px;transition:box-shadow .2s,transform .2s}.ts-sales-button:hover,.ts-sales-button:focus-visible{box-shadow:0 0 20px #39afff66;transform:translateY(-1px)}

/* landing-v2.css */
/* =========================================================
   TASKSCALE HOME V2
   Exclusivo para a landing pública
   ========================================================= */

body.landing{
  --ts-blue:#2563eb;
  --ts-blue-2:#3b82f6;
  --ts-navy:#071a35;
  --ts-text:#0f172a;
  --ts-muted:#475569;
  --ts-soft:#f4f7fb;
  --ts-line:#dbe5f1;
  overflow-x:hidden;
}

/* HEADER */

body.landing .public-header{
  max-width:1180px;
  margin:auto;
  min-height:76px;
  padding:0 24px;
}

body.landing .public-header nav{
  gap:34px;
}

body.landing .public-header nav a{
  font-size:15px;
  font-weight:600;
  color:#25324a;
}

body.landing .brand{
  font-size:20px;
  font-weight:800;
}

/* =========================================================
   HERO
   ========================================================= */

body.landing .hero{
  position:relative;
  max-width:1180px;
  min-height:650px;
  margin:auto;
  padding:80px 24px 72px;
  display:grid;
  grid-template-columns:minmax(0, .92fr) minmax(520px, 1.08fr);
  gap:64px;
  align-items:center;
  overflow:visible;
}

/* background tecnológico */

body.landing .hero::before{
  content:"";
  position:absolute;
  width:720px;
  height:720px;
  right:-180px;
  top:-160px;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 50%,
      rgba(37,99,235,.14),
      rgba(37,99,235,.05) 40%,
      transparent 70%);
  pointer-events:none;
  z-index:-3;
}

body.landing .hero::after{
  content:"";
  position:absolute;
  inset:20px -120px 0 45%;
  opacity:.38;
  pointer-events:none;
  z-index:-4;
  background-image:
    linear-gradient(rgba(37,99,235,.08) 1px, transparent 1px),
    linear-gradient(90deg,rgba(37,99,235,.08) 1px, transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 70%,transparent);
}

/* linha animada */

body.landing .hero-data-line{
  position:absolute;
  right:-70px;
  top:90px;
  width:620px;
  height:300px;
  z-index:-1;
  opacity:.44;
  pointer-events:none;
}

body.landing .hero-data-line svg{
  width:100%;
  height:100%;
  overflow:visible;
}

body.landing .hero-data-line path{
  fill:none;
  stroke:#2563eb;
  stroke-width:2;
  stroke-linecap:round;
  stroke-dasharray:900;
  stroke-dashoffset:900;
  animation:tsLineDraw 4.5s ease forwards,tsLineFloat 7s ease-in-out infinite 4.5s;
}

@keyframes tsLineDraw{
  to{stroke-dashoffset:0}
}

@keyframes tsLineFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-9px)}
}

/* COPY */

body.landing .hero-copy{
  position:relative;
  z-index:3;
}

body.landing .hero-copy .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:22px;
  font-size:12px !important;
  font-weight:800;
  letter-spacing:.12em;
  color:var(--ts-blue);
}

body.landing .hero h1{
  margin:0 0 24px;
  font-size:clamp(50px,4.4vw,68px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--ts-text);
}

body.landing .hero h1 em{
  color:var(--ts-blue);
  font-style:normal;
}

body.landing .hero-copy > p{
  max-width:570px;
  margin-bottom:14px;
  font-size:19px;
  line-height:1.58;
  color:#334155;
}

body.landing .hero-copy .hero-detail{
  max-width:545px;
  font-size:15px;
  line-height:1.7;
  color:#64748b;
}

body.landing .hero-actions{
  margin-top:30px;
  display:flex;
  gap:12px;
  align-items:center;
}

body.landing .hero-actions .button{
  min-height:50px;
  padding:0 24px;
  border-radius:10px;
  font-size:13px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

body.landing .hero-notes{
  margin-top:17px;
  gap:24px;
}

body.landing .hero-notes span{
  font-size:12px;
  color:#64748b;
}

/* PRODUTO / MOCKUP */

body.landing .hero-art{
  position:relative;
  min-height:540px;
  display:flex;
  align-items:center;
  justify-content:center;
}

body.landing .preview-app{
  position:relative;
  z-index:3;
  width:100%;
  max-width:565px;
  transform:perspective(1200px) rotateY(-2deg) rotateX(1deg);
  box-shadow:
    0 35px 80px rgba(15,23,42,.16),
    0 8px 24px rgba(37,99,235,.08);
  transition:.35s ease;
}

body.landing .preview-app:hover{
  transform:perspective(1200px) rotateY(0) rotateX(0) translateY(-5px);
}

/* cards flutuantes */

body.landing .hero-kpi-card{
  position:absolute;
  z-index:6;
  min-width:150px;
  padding:15px 17px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:14px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 45px rgba(15,23,42,.12);
  animation:tsFloatCard 5s ease-in-out infinite;
}

body.landing .hero-kpi-card small{
  display:block;
  margin-bottom:6px;
  font-size:10px;
  font-weight:700;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.08em;
}

body.landing .hero-kpi-card strong{
  display:block;
  font-size:24px;
  color:#0f172a;
}

body.landing .hero-kpi-card span{
  display:block;
  margin-top:3px;
  font-size:10px;
  color:#10b981;
  font-weight:700;
}

body.landing .hero-kpi-one{
  right:-28px;
  top:64px;
}

body.landing .hero-kpi-two{
  left:-30px;
  bottom:65px;
  animation-delay:-2.3s;
}

@keyframes tsFloatCard{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}

/* =========================================================
   VALUE STRIP
   ========================================================= */

body.landing .value-strip{
  max-width:none;
  min-height:76px;
  padding:0 calc((100vw - 1120px)/2);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:30px;
  background:#f8fafc;
  border-top:1px solid #e8eef6;
  border-bottom:1px solid #e8eef6;
}

body.landing .value-strip > span{
  color:#64748b;
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
}

body.landing .value-strip div{
  font-size:14px;
  color:#1e293b;
  font-weight:650;
}

/* =========================================================
   PRIMEIRA SEÇÃO
   ========================================================= */

body.landing #recursos{
  position:relative;
  max-width:1180px;
  margin:auto;
  padding:90px 24px 100px;
}

body.landing #recursos::before{
  content:"";
  position:absolute;
  left:50%;
  top:25px;
  width:700px;
  height:400px;
  transform:translateX(-50%);
  background:radial-gradient(circle,rgba(37,99,235,.06),transparent 68%);
  z-index:-1;
}

body.landing #recursos .section-heading{
  margin-bottom:42px;
}

body.landing #recursos .section-heading h2{
  margin-top:12px;
  font-size:44px;
  line-height:1.04;
  letter-spacing:-.035em;
}

body.landing #recursos .section-heading > p{
  max-width:470px;
  font-size:16px;
  line-height:1.7;
  color:#64748b;
}

body.landing .feature-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

body.landing .feature-grid article{
  position:relative;
  min-height:285px;
  padding:30px;
  overflow:hidden;
  border:1px solid #dce5f1;
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 40px rgba(15,23,42,.04);
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}

body.landing .feature-grid article::after{
  content:"";
  position:absolute;
  right:-55px;
  bottom:-55px;
  width:150px;
  height:150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.12),transparent 70%);
}

body.landing .feature-grid article:hover{
  transform:translateY(-7px);
  border-color:#a9c5ff;
  box-shadow:0 24px 55px rgba(37,99,235,.10);
}

body.landing .feature-icon{
  width:48px;
  height:48px;
  margin-bottom:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#edf4ff;
  color:#2563eb;
  font-size:22px;
}

body.landing .feature-grid h3{
  margin:0 0 13px;
  font-size:21px;
  color:#0f172a;
}

body.landing .feature-grid p{
  min-height:75px;
  font-size:15px;
  line-height:1.7;
  color:#64748b;
}

body.landing .feature-grid a{
  position:relative;
  z-index:2;
  font-size:13px;
  font-weight:800;
  color:#2563eb;
}

/* RESPONSIVO */

@media(max-width:980px){
  body.landing .hero{
    grid-template-columns:1fr;
    padding-top:58px;
  }

  body.landing .hero-art{
    min-height:500px;
  }

  body.landing .feature-grid{
    grid-template-columns:1fr;
  }

  body.landing .feature-grid article{
    min-height:auto;
  }

  body.landing .value-strip{
    padding:20px;
    flex-wrap:wrap;
  }
}

@media(max-width:640px){
  body.landing .hero{
    padding:48px 20px 55px;
  }

  body.landing .hero h1{
    font-size:44px;
  }

  body.landing .hero-copy > p{
    font-size:17px;
  }

  body.landing .hero-kpi-card{
    display:none;
  }

  body.landing #recursos{
    padding:60px 20px 70px;
  }

  body.landing #recursos .section-heading h2{
    font-size:34px;
  }
}

@media(prefers-reduced-motion:reduce){
  body.landing *,
  body.landing *::before,
  body.landing *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
  }
}

/* =========================================================
   DASHBOARD V2
   ========================================================= */

body.landing .bi-section{
  position:relative;
  max-width:1180px;
  margin:30px auto 0;
  padding:64px 58px;
  border-radius:28px;
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 30%,rgba(59,130,246,.18),transparent 38%),
    linear-gradient(135deg,#071a35,#0c274d);
  box-shadow:0 32px 70px rgba(7,26,53,.18);
}

body.landing .bi-section::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.14;
  background-image:
    linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:48px 48px;
  pointer-events:none;
}

body.landing .bi-section > *{
  position:relative;
  z-index:2;
}

body.landing .bi-section h2{
  font-size:42px;
  line-height:1.04;
  letter-spacing:-.035em;
}

body.landing .bi-section > div:first-child > p{
  font-size:15px;
  line-height:1.7;
}

body.landing .bi-visual{
  position:relative;
  padding:30px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:20px;
  background:rgba(20,50,87,.74);
  backdrop-filter:blur(10px);
  box-shadow:0 20px 55px rgba(0,0,0,.16);
}

body.landing .metric-callout strong{
  font-size:58px;
}

body.landing .progress-stack{
  height:15px;
  gap:4px;
  overflow:hidden;
}

body.landing .progress-stack span{
  width:0 !important;
  transition:width 1.4s cubic-bezier(.2,.8,.2,1);
}

body.landing .bi-section.ts-visible .progress-stack span:nth-child(1){
  width:75% !important;
}

body.landing .bi-section.ts-visible .progress-stack span:nth-child(2){
  width:15% !important;
}

body.landing .bi-section.ts-visible .progress-stack span:nth-child(3){
  width:10% !important;
}

/* =========================================================
   TIMELINE
   ========================================================= */

body.landing #produtividade{
  padding-top:90px;
  padding-bottom:80px;
}

body.landing #produtividade .centered h2{
  font-size:44px;
  letter-spacing:-.035em;
}

body.landing .steps{
  position:relative;
  margin-top:54px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
}

body.landing .steps::before{
  content:"";
  position:absolute;
  top:30px;
  left:16%;
  right:16%;
  height:2px;
  background:linear-gradient(90deg,#93c5fd,#2563eb,#93c5fd);
  opacity:.65;
}

body.landing .steps article{
  position:relative;
  z-index:2;
  padding:0 18px;
}

body.landing .steps article > span{
  width:62px;
  height:62px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#fff;
  border:2px solid #cfe0ff;
  box-shadow:0 10px 30px rgba(37,99,235,.10);
  font-size:19px;
  font-weight:800;
  color:#2563eb;
}

body.landing .steps h3{
  margin-top:22px;
  font-size:20px;
}

body.landing .steps p{
  font-size:15px;
  line-height:1.7;
  color:#64748b;
}

/* =========================================================
   SEGURANÇA V2
   ========================================================= */

body.landing .security-section{
  max-width:1180px;
  margin:20px auto 80px;
  padding:42px 46px;
  border:1px solid #dce8f8;
  border-radius:22px;
  background:
    linear-gradient(135deg,#f8fbff,#eef5ff);
  box-shadow:0 18px 45px rgba(37,99,235,.05);
}

body.landing .security-section h2{
  font-size:28px;
}

body.landing .security-section p{
  font-size:14px;
  line-height:1.7;
  color:#52647a;
}

body.landing .security-tags span{
  position:relative;
  padding-left:24px;
  font-size:13px;
  font-weight:650;
}

body.landing .security-tags span::before{
  content:"✓";
  position:absolute;
  left:0;
  color:#10b981;
  font-weight:800;
}

/* =========================================================
   PLANOS V2
   ========================================================= */

body.landing #planos{
  max-width:1180px;
  padding:84px 24px 95px;
  display:block;
}

body.landing .pricing-intro{
  max-width:720px;
  margin:0 auto 46px;
  text-align:center;
}

body.landing .pricing-intro h2{
  margin:12px 0 16px;
  font-size:44px;
  line-height:1.05;
  letter-spacing:-.035em;
}

body.landing .pricing-intro p{
  font-size:16px;
  color:#64748b;
}

body.landing .pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  align-items:stretch;
}

body.landing .plan-card{
  position:relative;
  padding:28px 25px;
  border:1px solid #dce5f1;
  border-radius:18px;
  background:#fff;
  display:flex;
  flex-direction:column;
  min-height:430px;
  box-shadow:0 14px 35px rgba(15,23,42,.045);
  transition:.25s ease;
}

body.landing .plan-card:hover{
  transform:translateY(-7px);
  border-color:#9cbcff;
  box-shadow:0 24px 55px rgba(37,99,235,.10);
}

body.landing .plan-card.featured{
  border:2px solid #2563eb;
  transform:translateY(-10px);
  box-shadow:0 24px 65px rgba(37,99,235,.14);
}

body.landing .plan-card.featured:hover{
  transform:translateY(-14px);
}

body.landing .plan-badge{
  position:absolute;
  top:-15px;
  left:50%;
  transform:translateX(-50%);
  padding:7px 15px;
  border-radius:999px;
  background:#2563eb;
  color:white;
  font-size:10px;
  font-weight:800;
  letter-spacing:.07em;
  white-space:nowrap;
}

body.landing .plan-name{
  font-size:21px;
  font-weight:800;
  color:#0f172a;
}

body.landing .plan-limit{
  margin-top:5px;
  font-size:12px;
  color:#64748b;
}

body.landing .plan-price{
  margin:28px 0 4px;
  font-size:38px;
  font-weight:850;
  letter-spacing:-.04em;
  color:#0f172a;
}

body.landing .plan-price small{
  font-size:13px;
  font-weight:500;
  letter-spacing:0;
  color:#64748b;
}

body.landing .plan-desc{
  min-height:50px;
  margin:10px 0 22px;
  font-size:13px;
  line-height:1.6;
  color:#64748b;
}

body.landing .plan-features{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:28px;
}

body.landing .plan-features span{
  font-size:13px;
  color:#334155;
}

body.landing .plan-features span::before{
  content:"✓";
  margin-right:8px;
  color:#10b981;
  font-weight:800;
}

body.landing .plan-card .button{
  margin-top:auto;
  width:100%;
  min-height:45px;
  border-radius:9px;
}

body.landing .enterprise-strip{
  margin-top:18px;
  padding:25px 30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-radius:18px;
  background:#071a35;
  color:#fff;
}

body.landing .enterprise-strip h3{
  margin:0 0 5px;
  font-size:20px;
}

body.landing .enterprise-strip p{
  margin:0;
  font-size:13px;
  color:#b8c8dc;
}

body.landing .enterprise-strip strong{
  font-size:20px;
}

@media(max-width:1000px){
  body.landing .pricing-grid{
    grid-template-columns:repeat(2,1fr);
  }

  body.landing .plan-card.featured{
    transform:none;
  }
}

@media(max-width:700px){
  body.landing .steps{
    grid-template-columns:1fr;
  }

  body.landing .steps::before{
    display:none;
  }

  body.landing .pricing-grid{
    grid-template-columns:1fr;
  }

  body.landing .enterprise-strip{
    flex-direction:column;
    align-items:flex-start;
  }

  body.landing .bi-section{
    margin-left:18px;
    margin-right:18px;
    padding:45px 25px;
  }
}

/* ===== AJUSTES VISUAIS FINAIS ===== */

/* Card azul premium sem linhas */
body.landing .bi-section{
  background:
    radial-gradient(circle at 18% 22%, rgba(96,165,250,.14), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(59,130,246,.18), transparent 30%),
    linear-gradient(135deg, #06152d 0%, #0a2145 38%, #12356b 72%, #1d4ed8 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 70px rgba(15,23,42,.24);
}

body.landing .bi-section::before{
  display:none !important;
}

/* UM FLUXO MAIS CLARO */
body.landing .flow-eyebrow{
  display:block;
  text-align:center;
  margin:0 auto 14px;
  font-size:15px;
  font-weight:800;
  letter-spacing:.18em;
  color:#2563eb;
}

/* PLANOS QUE CRESCEM COM SUA EQUIPE */
body.landing .pricing-eyebrow{
  display:block;
  width:100%;
  text-align:left;
  margin:0 0 14px 0;
  font-size:15px;
  font-weight:800;
  letter-spacing:.14em;
  color:#2563eb;
}

/* melhora bloco de introdução dos planos */
body.landing .pricing-intro{
  max-width:760px;
  margin:0 auto 26px;
}

body.landing .pricing-intro h2{
  margin-top:0;
}

/* Sob consulta em uma linha */
body.landing .pricing-grid .plan-card:nth-child(4) .plan-price{
  white-space:nowrap;
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.02em;
}

/* pequeno refinamento geral dos títulos */
body.landing .pricing h2{
  margin-top:4px;
}

@media(max-width:700px){
  body.landing .flow-eyebrow{
    font-size:13px;
    letter-spacing:.14em;
  }

  body.landing .pricing-eyebrow{
    font-size:13px;
    letter-spacing:.10em;
  }

  body.landing .pricing-grid .plan-card:nth-child(4) .plan-price{
    font-size:26px;
  }
}

/* ===== DASHBOARD - CONTRASTE PREMIUM ===== */

body.landing .bi-visual{
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)),
    rgba(9,31,65,.72);
  border:1px solid rgba(191,219,254,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 18px 45px rgba(0,0,0,.14);
}

/* Cabeçalho do gráfico */
body.landing .bi-visual-head b{
  color:#ffffff;
  font-size:15px;
  font-weight:800;
  text-shadow:0 0 18px rgba(255,255,255,.18);
}

body.landing .bi-visual-head .badge{
  color:#eaf2ff;
  background:rgba(96,165,250,.18);
  border:1px solid rgba(147,197,253,.18);
}

/* Nome da métrica */
body.landing .metric-callout > span{
  color:#dbeafe;
  font-size:13px;
  font-weight:600;
}

/* Número principal */
body.landing .metric-callout strong{
  color:#ffffff;
  text-shadow:
    0 0 18px rgba(255,255,255,.16),
    0 0 34px rgba(96,165,250,.12);
}

/* Texto abaixo do 75% */
body.landing .metric-callout small{
  color:#cbd5e1;
  font-size:11px;
}

/* Legenda */
body.landing .bi-legend span{
  color:#eef6ff;
  font-size:11px;
  font-weight:650;
  text-shadow:0 0 12px rgba(255,255,255,.10);
}

/* Linha divisória mais elegante */
body.landing .bi-visual::after{
  content:"";
  position:absolute;
  left:30px;
  right:30px;
  bottom:61px;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(219,234,254,.28),
    transparent
  );
}

/* Filtros mais visíveis */
body.landing .bi-pills span{
  color:#f8fbff;
  font-size:11px;
  font-weight:650;
  padding:9px 13px;
  border:1px solid rgba(191,219,254,.28);
  background:rgba(255,255,255,.055);
  border-radius:8px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 0 18px rgba(59,130,246,.05);
  transition:.22s ease;
}

body.landing .bi-pills span:hover{
  background:rgba(255,255,255,.12);
  border-color:rgba(191,219,254,.48);
  box-shadow:0 0 22px rgba(96,165,250,.14);
  transform:translateY(-1px);
}

/* Barra mais sofisticada */
body.landing .progress-stack{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}

body.landing .progress-stack span{
  box-shadow:0 0 18px rgba(96,165,250,.14);
}

body.landing .progress-stack span:nth-child(1){
  background:linear-gradient(90deg,#4f8cff,#63a4ff);
}

body.landing .progress-stack span:nth-child(2){
  background:#a9c8ff;
}

body.landing .progress-stack span:nth-child(3){
  background:#46668f;
}


/* ===== FILTROS DO DASHBOARD MAIS VISÍVEIS ===== */

body.landing .bi-pills{
  display:flex;
  gap:10px;
  margin-top:16px;
}

body.landing .bi-pills span{
  color:#ffffff !important;
  font-size:12px;
  font-weight:750;
  padding:10px 15px;
  border-radius:8px;

  background:rgba(255,255,255,.08);

  border:1px solid rgba(255,255,255,.34);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 14px rgba(255,255,255,.06);

  text-shadow:0 0 10px rgba(255,255,255,.18);

  transition:.22s ease;
}

body.landing .bi-pills span:hover{
  background:rgba(255,255,255,.16);

  border-color:rgba(255,255,255,.65);

  box-shadow:
    0 0 20px rgba(255,255,255,.12),
    0 0 28px rgba(96,165,250,.14);

  transform:translateY(-2px);
}

/* ===== REMOVER LINHAS DO DASHBOARD ===== */

body.landing .bi-visual::after{
  display:none !important;
}

body.landing .bi-pills{
  border-top:none !important;
  padding-top:0 !important;
}

body.landing .bi-visual{
  border-bottom:none;
}

/* ===== LIMPEZA DO HERO ===== */

/* corta qualquer sobra visual fora da área principal */
body.landing .hero-art{
  overflow:hidden;
  position:relative;
}

/* remove linhas e círculos decorativos */
body.landing .hero-data-line,
body.landing .orbit,
body.landing .orbit-one,
body.landing .orbit-two{
  display:none !important;
}

/* remove cards flutuantes escondidos */
body.landing .hero-kpi-card,
body.landing .hero-kpi-one,
body.landing .hero-kpi-two{
  display:none !important;
}

/* remove blocos flutuantes extras dentro da arte */
body.landing .hero-art > .floating-card,
body.landing .hero-art > .mini-card,
body.landing .hero-art > .hero-note,
body.landing .hero-art > .hero-chip{
  display:none !important;
}

/* ===== REMOVER CARD FLUTUANTE RESTANTE DO HERO ===== */

body.landing .hero-art > .float-card{
  display:none !important;
}

/* ===== REMOVER CARD FLUTUANTE RESTANTE DO HERO ===== */

body.landing .hero-art > .float-card{
  display:none !important;
}

/* ===== HEADER MAIS FORTE ===== */

body.landing .public-header{
  min-height:84px;
}

body.landing .public-header .brand{
  font-size:24px !important;
  font-weight:850 !important;
  color:#0f172a;
}

body.landing .public-header .brand-symbol{
  width:30px;
  height:30px;
  font-size:17px;
}

body.landing .public-header nav{
  gap:38px;
}

body.landing .public-header nav a{
  font-size:16px !important;
  font-weight:800 !important;
  color:#3b82f6 !important;
  letter-spacing:.01em;
}

body.landing .public-header nav a:hover{
  color:#1d4ed8 !important;
}

body.landing .header-actions .text-link{
  font-size:16px !important;
  font-weight:750 !important;
  color:#2563eb !important;
}

body.landing .header-actions .button{
  font-size:14px !important;
  font-weight:800 !important;
  min-height:46px;
  padding:0 18px;
}

/* ===== LOGO MAIOR SEM MUDAR A COR ===== */

body.landing .public-header .brand{
  font-size:28px !important;
}

body.landing .public-header .brand-symbol{
  width:34px;
  height:34px;
  font-size:19px;
  border-radius:9px;
}

/* Center the pricing section eyebrow above its title. */
body.landing #planos .eyebrow {justify-content:center;text-align:center;width:100%;}

/* landing-dashboard.css */
body.landing #dashboard .dashboard-image {
  display:block;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
body.landing #dashboard .dashboard-image::before,
body.landing #dashboard .dashboard-image::after {display:none;}
body.landing #dashboard .dashboard-image a {
  display:block;
  border:1px solid #4b8eff70;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 45px #020b2f45;
  transition:box-shadow .2s;
}
body.landing #dashboard .dashboard-image a:hover {
  box-shadow:0 18px 45px #020b2f65,0 0 0 2px #78b6ff70;
}
body.landing #dashboard .dashboard-image img {
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
}
body.landing #dashboard .dashboard-image figcaption {
  margin-top:12px;
  font-size:12px;
  color:#bfd5f5;
  text-align:center;
}
body.landing #dashboard .dashboard-image a:focus-visible {
  outline:3px solid #8ddaff;
  outline-offset:5px;
}
@media(min-width:981px) {
  body.landing #dashboard {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;}
}
@media(prefers-reduced-motion:reduce) {
  body.landing #dashboard .dashboard-image a {transition:none;}
}

/* pricing-glow.css */
/* Shared blue illumination for pricing and resource cards. */
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article) {
  isolation:isolate;
  --plan-light:0;
  transition:transform .25s ease,border-color .25s ease,box-shadow .3s ease;
}
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::before,
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::after {
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  opacity:var(--plan-light);
  transition:opacity .35s ease;
}
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::before {
  inset:0;
  border-radius:inherit;
  background:radial-gradient(ellipse at 0% 0%,#b9e4ffb3,transparent 68%),
             radial-gradient(ellipse at 100% 100%,#9edfff80,transparent 62%),
             linear-gradient(145deg,#edf7ff 0%,#e0eeff 48%,#f0fbff 100%);
}
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::after {
  inset:42% 0 0;
  width:auto;
  height:auto;
  border-radius:0 0 17px 17px;
  background:url("pricing-chart.eddb1b8b5887.svg") center bottom / 100% 100% no-repeat;
}
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article) > :not(.plan-badge) {position:relative;z-index:1;}
body.landing #planos .plan-badge {z-index:2;}
body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article):focus-within {
  --plan-light:1;
  border-color:#6aafff;
  box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;
}
@media(hover:hover) {
  body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article):hover {
    --plan-light:1;
    border-color:#6aafff;
    box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;
  }
  body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article):hover .button.outline {
    background:#ffffffc7;
    border-color:#7db9ff;
    color:#164f9e;
  }
}
@media(prefers-reduced-motion:reduce) {
  body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article),
  body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::before,
  body.landing :is(#planos .plan-card, #recursos .feature-grid article, #produtividade .steps article, .executive-intro .seo-intro-grid article)::after {transition:none;}
}


/* hero-future.css */
/* Larger, quieter illustration for the public hero only. */
body.landing .hero {max-width:1320px;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:48px;padding-top:64px;padding-bottom:64px;}
body.landing .hero-art {min-height:0;padding:0;transform:none;}
body.landing .hero-showcase {position:relative;z-index:3;width:100%;padding:28px;border:1px solid #4b9aff7a;border-radius:26px;background:radial-gradient(ellipse at 100% 0%,#174aa278,transparent 65%),linear-gradient(145deg,#0d2346,#08162f 65%,#102d5d);box-shadow:0 30px 70px #10264c2b,0 0 50px #3b82f618,inset 0 1px 0 #b4deff24;overflow:hidden;}
body.landing .hero-showcase::before {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 45%,#8acfff08 50%,transparent 55%);}
body.landing .showcase-heading {display:flex;align-items:center;gap:12px;margin-bottom:28px;}
body.landing .showcase-mark {display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#3b82ff,#1450d9);color:#d9faff;font-size:21px;box-shadow:0 0 22px #317dff45;}
body.landing .showcase-heading h3 {margin:0;color:#f1f7ff;font-size:21px;font-weight:750;letter-spacing:-.035em;}
body.landing .showcase-heading h3 span {color:#4fc7ff;}
body.landing .showcase-signal {margin-left:auto;display:flex;align-items:end;gap:4px;height:20px;}
body.landing .showcase-signal i {width:4px;border-radius:3px;background:#57d6ff;height:7px;box-shadow:0 0 10px #4ddfff50;}
body.landing .showcase-signal i:nth-child(2){height:11px;}body.landing .showcase-signal i:nth-child(3){height:15px;}body.landing .showcase-signal i:nth-child(4){height:20px;}
body.landing .showcase-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;}
body.landing .showcase-metrics > div {padding:18px 16px;border:1px solid #5597ef2e;border-radius:15px;background:linear-gradient(145deg,#3166b323,#12316230);}
body.landing .showcase-metrics span {display:block;font-size:12px;color:#abc5e9;margin-bottom:10px;}
body.landing .showcase-metrics strong {display:flex;align-items:baseline;gap:5px;font-size:clamp(30px,3vw,44px);line-height:1;letter-spacing:-.04em;color:#f4f9ff;}
body.landing .showcase-metrics small {font-size:20px;color:#64dfff;}
body.landing .showcase-metrics > div:nth-child(2) {border-color:#2bd6c03b;}body.landing .showcase-metrics > div:nth-child(2) small {color:#51e9ce;}
body.landing .showcase-chart {border:1px solid #568fe327;border-radius:17px;padding:18px 16px 14px;background:linear-gradient(180deg,#10294c55,#06142d55);}
body.landing .showcase-chart-heading {display:flex;align-items:center;justify-content:space-between;gap:10px;color:#d6e8ff;font-size:13px;}
body.landing .showcase-chart-heading b {padding:6px 9px;border-radius:7px;background:#29d7c118;color:#57ead8;font-size:12px;}
body.landing .showcase-chart svg {display:block;width:100%;height:auto;max-height:260px;margin-top:18px;overflow:visible;}
body.landing .showcase-grid {fill:none;stroke:#6b9bdf;stroke-opacity:.12;stroke-width:1;}
body.landing .showcase-line {fill:none;stroke:url(#heroFutureLine);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:680;stroke-dashoffset:0;animation:showcase-reveal 1.6s ease-out both;}
body.landing .showcase-line-glow {stroke-width:12;opacity:.25;filter:blur(5px);}
body.landing .showcase-points {fill:#b9efff;stroke:#228cf5;stroke-width:2;}
body.landing .showcase-pulse {fill:#60eaff;opacity:.15;transform-box:fill-box;transform-origin:center;animation:showcase-pulse 3s ease-in-out infinite;}
body.landing .showcase-baseline {display:flex;justify-content:space-between;padding:0 2px;color:#6f8bb5;font-size:9px;letter-spacing:.12em;}
@keyframes showcase-reveal {from {stroke-dashoffset:680;}to {stroke-dashoffset:0;}}
@keyframes showcase-pulse {50% {transform:scale(1.5);opacity:.04;}}
@media(min-width:1500px){body.landing .hero {max-width:1400px;gap:64px;}}
@media(max-width:1000px){body.landing .hero {grid-template-columns:1fr;max-width:760px;gap:38px;}body.landing .hero-showcase {max-width:700px;}body.landing .hero-art {width:100%;}}
@media(max-width:600px){body.landing .hero {padding:38px 20px 44px;}body.landing .hero-showcase {padding:18px;border-radius:20px;}body.landing .showcase-heading {gap:9px;margin-bottom:20px;}body.landing .showcase-heading h3 {font-size:18px;}body.landing .showcase-metrics {gap:7px;margin-bottom:16px;}body.landing .showcase-metrics > div {padding:14px 10px;}body.landing .showcase-metrics strong {font-size:28px;}body.landing .showcase-metrics small {font-size:15px;}body.landing .showcase-metrics span {font-size:10px;}body.landing .showcase-chart {padding:14px 10px 10px;}}
@media(prefers-reduced-motion:reduce){body.landing .showcase-line,body.landing .showcase-pulse {animation:none;}}

/* landing-buttons.css */
/* Shared interaction style for every public-site button. */
body.landing :is(.button,button,.header-actions .text-link) {
  min-height:48px;
  border-radius:12px;
  font-weight:750;
  transition:background .25s ease,box-shadow .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
  -webkit-tap-highlight-color:transparent;
}
body.landing :is(.button,.header-actions .text-link) {
  display:inline-flex;align-items:center;justify-content:center;gap:14px;
  min-height:58px;padding:16px 25px;font-size:14px;
  color:#fff;border:1px solid #2867e9;
  background:linear-gradient(125deg,#2858e9,#176bd9);
  box-shadow:0 6px 16px #2563eb19,inset 0 1px 0 #ffffff2b;
}
body.landing .hero-actions .button {min-height:60px;padding:17px 27px;font-size:14px;}
body.landing .header-actions :is(.button,.text-link) {min-height:54px;padding:14px 21px;font-size:14px;}
body.landing #planos .plan-card .button {min-height:60px;padding:14px 12px;font-size:13px;}
body.landing :is(.button.outline,.button.light-button,.header-actions .text-link) {
  color:#164b9f;border-color:#b8d3ff;
  background:linear-gradient(130deg,#f4f9ff,#e7f1ff);
  box-shadow:0 5px 16px #2563eb0a,inset 0 1px 0 #ffffff;
}
body.landing #planos .plan-card:hover .button.outline {color:#164b9f;border-color:#b8d3ff;background:linear-gradient(130deg,#f4f9ff,#e7f1ff);}
body.landing .public-header nav a {
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:8px 10px;border-radius:10px;
  transition:background .25s ease,box-shadow .25s ease,transform .25s ease;
}
body.landing .public-header nav {gap:12px;}
body.landing .public-header {max-width:1320px;}
body.landing #recursos .feature-grid article > a {
  display:inline-flex;align-items:center;min-height:44px;padding:10px 12px;
  margin-left:-12px;border-radius:10px;
  transition:background .25s ease,box-shadow .25s ease,transform .25s ease;
}
body.landing :is(.button,button,.header-actions .text-link):focus-visible {
  outline:3px solid #73cfff;outline-offset:4px;
  box-shadow:0 8px 24px #2563eb33,0 0 24px #48c6ff38;
}
body.landing .ts-chat-launcher {width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,#2858e9,#176bd9);}
body.landing .ts-chat-close {width:44px;height:44px;min-height:44px;border-radius:10px;}
body.landing .ts-chat-form button {width:50px;min-width:50px;min-height:48px;background:linear-gradient(135deg,#2858e9,#176bd9);}
body.landing .ts-chat-quick button {min-height:44px;font-size:11px;padding:8px 12px;}
body.landing .ts-whatsapp-button {width:44px;height:44px;min-height:44px;}
body.landing .back-to-top {width:54px;height:54px;background:linear-gradient(135deg,#2858e9,#176bd9);}
@media(hover:hover) {
  body.landing :is(.button,button,.header-actions .text-link):not(:disabled):hover {
    transform:translateY(-2px) scale(1.025);
    border-color:#66baff;
    box-shadow:0 10px 25px #2563eb36,0 0 26px #45baff42,inset 0 1px 0 #ffffff4d;
  }
  body.landing :is(.button,.header-actions .text-link):hover,
  body.landing #planos .plan-card:hover .button.outline:hover {
    color:#fff;background:linear-gradient(115deg,#1e4eda,#146edb);
  }
  body.landing .public-header nav a:hover,
  body.landing #recursos .feature-grid article > a:hover {
    background:linear-gradient(125deg,#ebf6ff,#d6eaff);
    box-shadow:0 5px 18px #3b82f622,0 0 18px #70d6ff26;
    transform:translateY(-2px);
  }
}
@media(max-width:700px) {
  body.landing .header-actions :is(.button,.text-link) {padding:12px 14px;min-height:48px;font-size:12px;}
  body.landing .hero-actions {flex-wrap:wrap;}
  body.landing .hero-actions .button {min-height:56px;padding:15px 20px;font-size:12px;}
  body.landing .header-actions {gap:8px;}
}
@media(prefers-reduced-motion:reduce) {
  body.landing :is(.button,button,.header-actions .text-link,.public-header nav a,#recursos .feature-grid article > a) {transition:none;}
}

/* landing-video.css */
/* A stationary office scene beneath the entire public page. */
body.landing.has-office-video {background:#edf4fb;isolation:isolate;}
.site-video-bg {position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#edf4fb;}
.site-video-bg video {display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.site-video-bg::after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f5f9ffb8 0%,#f5f9ffad 38%,#eef6ff80 70%,#edf5ff73 100%);}
body.landing.has-office-video > :is(.public-header,main,.public-footer) {position:relative;z-index:1;}
body.landing.has-office-video .public-header {background:#ffffffb8;border-bottom:1px solid #dbeafe80;border-radius:0 0 20px 20px;backdrop-filter:blur(10px);}
body.landing.has-office-video .value-strip {background:#f8fafcd9;backdrop-filter:blur(8px);}
body.landing.has-office-video .public-footer {background:#ffffffc9;backdrop-filter:blur(8px);}
body.landing.has-office-video .steps article {background:#ffffffeb;}
body.landing.has-office-video .site-video-toggle {position:fixed;left:20px;bottom:20px;z-index:20;width:48px;height:48px;min-height:48px;padding:0;border:1px solid #a1c5ff;border-radius:14px;color:#fff;background:linear-gradient(135deg,#2858e9,#176bd9);box-shadow:0 6px 22px #2563eb29;}
.site-video-toggle svg {width:19px;height:19px;fill:currentColor;}
.site-video-toggle .video-play {display:none;}
.site-video-toggle.is-paused .video-pause {display:none;}
.site-video-toggle.is-paused .video-play {display:block;}
.site-video-toggle[hidden] {display:none!important;}
@media(max-width:700px){.site-video-bg::after {background:#f4f8ffbf;}body.landing.has-office-video .site-video-toggle {left:12px;bottom:16px;width:44px;height:44px;min-height:44px;}}

/* landing-readability.css */
/* Stronger secondary text over the moving office background. */
body.landing :is(.hero-copy > p,.hero-copy .hero-detail,.section-heading > p,.pricing-intro p,.steps p,.feature-grid p,.security-section p,.plan-desc,.plan-limit,.plan-price small,.plan-features span,.hero-notes span,.public-footer small,.footer-lstechia) {
  color:#293d56;font-weight:500;
}
body.landing .hero-copy > p {background:#ffffffb3;border-radius:10px;padding:10px 14px;margin-left:-14px;}
body.landing #recursos .section-heading > p {background:#ffffffc2;padding:14px 18px;border-radius:12px;color:#293d56;font-weight:500;}
body.landing .pricing-intro p {display:inline-block;background:#ffffffbf;border-radius:10px;padding:8px 14px;color:#293d56;}
body.landing .value-strip {background:#f8fafcf5;}
body.landing .value-strip > span {color:#354a64;}
body.landing .value-strip div {color:#172b46;}
body.landing :is(.eyebrow,.hero-copy .eyebrow) {color:#1d4ed8;}
body.landing .bi-section :is(p,.check-list) {color:#dbeafe;}
body.landing .bi-section .eyebrow {color:#a9ceff;}
body.landing .showcase-metrics span {color:#c6dcf7;}
body.landing .showcase-baseline {color:#a5bcda;}
body.landing .ts-chat-panel footer {color:#3f536b;}
body.landing .ts-chat-header small {color:#c6dcf7;}
body.landing #produtividade .steps {gap:26px;}
body.landing #produtividade .steps::before {display:none;}
body.landing #produtividade .steps article {
  padding:28px;border:1px solid #d0dff2;border-radius:20px;
  background:#fffffff5;overflow:hidden;box-shadow:0 14px 34px #123a6310;
}
body.landing #produtividade .steps article > span {color:#1d4ed8;background:#f0f6ff;border-color:#c6dafe;}
body.landing #produtividade .steps h3 {color:#0f213a;margin-top:22px;}
body.landing #produtividade .steps p {color:#293d56;font-weight:500;margin-bottom:0;}
@media(hover:hover){
  body.landing #produtividade .steps article:hover {transform:translateY(-6px);}
  body.landing #produtividade .steps article:hover > span {background:#1e5de0;color:#fff;border-color:#80bfff;box-shadow:0 0 22px #4dbfff47;}
}
@media(max-width:700px){body.landing #produtividade .steps article {padding:24px;}body.landing #recursos .section-heading > p {padding:12px 14px;}}

/* landing-vivid.css */
/* Saturated, readable headings over the office video. */
body.landing :is(.hero h1,#recursos .section-heading h2,#produtividade .section-heading h2,.pricing-intro h2,.security-section h2) {
  color:#1748b5;
  background:linear-gradient(110deg,#102e85 0%,#1857e8 58%,#006895 100%);
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 1px 1px #ffffffb3);
}
body.landing .hero h1 em {
  color:#006cc4;
  background:linear-gradient(100deg,#174ee6,#006aaf);
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
body.landing :is(.eyebrow,.hero-copy .eyebrow) {
  color:#034de0;
  text-shadow:0 1px 2px #fff,0 0 12px #ffffffa6;
}
body.landing .bi-section .eyebrow {color:#87d8ff;text-shadow:none;}
body.landing .security-tags span {color:#153f91;}
body.landing .security-tags span::before {color:#008970;}
body.landing :is(.security-section,.public-footer) {
  position:relative;
  isolation:isolate;
  --surface-light:0;
  border:1px solid #c9dfff;
  border-radius:22px;
  transition:border-color .25s ease,box-shadow .3s ease;
}
body.landing :is(.security-section,.public-footer)::before,
body.landing :is(.security-section,.public-footer)::after {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:0;
  opacity:var(--surface-light);
  transition:opacity .3s ease;
}
body.landing :is(.security-section,.public-footer)::before {
  background:radial-gradient(ellipse at 12% 5%,#b4e5ffcc,transparent 65%),linear-gradient(120deg,#edf8ff,#cfe7ff 52%,#e1faff);
}
body.landing :is(.security-section,.public-footer)::after {
  background:url("pricing-chart.eddb1b8b5887.svg") right bottom / 45% 90% no-repeat;
  opacity:calc(var(--surface-light) * .55);
}
body.landing :is(.security-section,.public-footer) > * {position:relative;z-index:1;}
body.landing .public-footer :is(.brand,.footer-lstechia,small) {color:#123f90;}
body.landing :is(.security-section,.public-footer):focus-within {
  --surface-light:1;
  border-color:#4194f4;
  box-shadow:0 14px 40px #2563eb24,0 0 28px #35baff38;
}
@media(hover:hover) {
  body.landing :is(.security-section,.public-footer):hover {
    --surface-light:1;
    border-color:#4194f4;
    box-shadow:0 14px 40px #2563eb24,0 0 28px #35baff38;
  }
  body.landing :is(.hero-copy,#recursos .section-heading,#produtividade .section-heading,.pricing-intro):hover :is(h1,h2) {
    filter:drop-shadow(0 0 9px #6dafff52) drop-shadow(0 1px 1px #fff);
  }
}
@media(prefers-reduced-motion:reduce) {
  body.landing :is(.security-section,.public-footer),
  body.landing :is(.security-section,.public-footer)::before,
  body.landing :is(.security-section,.public-footer)::after {transition:none;}
}

/* premium-access.css */
/* Public access and security surfaces. Internal workspace styles stay scoped. */
.auth-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);background:#f7faff}
.auth-story{padding:clamp(32px,4vw,72px);background:radial-gradient(ellipse at 95% 10%,#154580 0,transparent 58%),radial-gradient(ellipse at 8% 90%,#0f3f68 0,transparent 55%),#07172e;gap:40px;min-height:100vh}
.auth-story::before{display:none}
.auth-story>*{position:relative;z-index:1}
.auth-story .brand{font-size:30px;letter-spacing:-1px}
.auth-story .brand-symbol{width:43px;height:43px;font-size:23px;box-shadow:0 0 28px #2679ff60}
.auth-story .eyebrow{color:#8bc9ff;font-size:12px;letter-spacing:2px}
.auth-story h1{font-size:clamp(40px,3.7vw,64px);max-width:640px;line-height:1.08;letter-spacing:-2.5px;margin:18px 0 22px}
.auth-story h1 span{background:linear-gradient(100deg,#6aa6ff,#73e4ff);background-clip:text;color:transparent}
.auth-story p{font-size:17px;color:#c3d6ee;max-width:520px;line-height:1.7;margin-bottom:26px}
.auth-story>small{font-size:12px;line-height:1.6;color:#a9c4e3}
.auth-preview{border:1px solid #4d95ed55;border-radius:22px;background:linear-gradient(135deg,#102b51df,#0a1a35ed);box-shadow:0 24px 60px #0003,inset 0 1px #b9dcff12;padding:24px;max-width:640px;transition:box-shadow .3s,border-color .3s}
.auth-preview:hover{border-color:#65d8ff9c;box-shadow:0 24px 60px #0003,0 0 35px #2d97ff25}
.auth-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;font-size:13px;color:#cde3fa}
.auth-preview-head span{display:flex;align-items:center;gap:9px}
.auth-preview-head i{width:7px;height:7px;border-radius:100%;background:#58e3cf;box-shadow:0 0 12px #58e3cf90}
.auth-preview-head>b{font-size:11px;letter-spacing:.5px;color:#87bbf8;border:1px solid #6a9fec40;border-radius:6px;padding:5px 8px}
.auth-preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.auth-preview-metrics>div{border:1px solid #528ceb38;border-radius:12px;background:linear-gradient(130deg,#1e4f863a,#10244760);padding:13px 14px}
.auth-preview-metrics small{display:block;font-size:11px;color:#b0c7e4;margin-bottom:5px}
.auth-preview-metrics strong{font-size:clamp(13px,1.3vw,19px);letter-spacing:-.3px;font-weight:650;color:#f1f8ff}
.auth-preview-chart{margin-top:18px;padding:16px 14px 0;background:#07152d45;border:1px solid #568bd628;border-radius:13px}
.auth-chart-title{display:flex;justify-content:space-between;align-items:center;color:#d7e9fc;font-size:12px;margin-bottom:8px}
.auth-chart-trend{color:#70eced;font-size:20px}
.auth-preview-chart svg{width:100%;display:block;overflow:visible}
.auth-chart-grid,.auth-chart-bars{display:none}
.auth-chart-line,.auth-chart-glow{fill:none;stroke:url(#authLine);stroke-width:3;stroke-linecap:round}
.auth-chart-glow{stroke-width:9;opacity:.35;filter:blur(5px)}
.auth-chart-points{fill:#d0faff;stroke:#3197ff;stroke-width:2}
.auth-preview-footer{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #6994ca22}
.auth-progress-ring{border:3px solid #59cfe7;border-right-color:#246594;border-radius:50%;height:37px;width:37px;display:grid;place-items:center;color:#80eeed;flex-shrink:0}
.auth-preview-footer strong{font-size:12px;color:#e2f0ff;display:block;margin-bottom:4px}
.auth-preview-footer small{font-size:10px;color:#acc5e3}
.auth-status{margin-left:auto;color:#86ddeb;background:#1683a91a;border:1px solid #57c6df30;border-radius:6px;padding:7px;font-size:9px;white-space:nowrap}
.auth-form-wrap{padding:48px;background:radial-gradient(ellipse at 100% 0%,#e4f2ff,transparent 62%),#f7faff}
.auth-form{max-width:490px;background:#fff;border:1px solid #dfebfa;border-radius:24px;padding:40px;box-shadow:0 22px 65px #1645820c}
.auth-form>.eyebrow{font-size:12px;letter-spacing:1.6px;color:#165df1}
.auth-form h2{font-size:clamp(28px,2.35vw,38px);line-height:1.17;letter-spacing:-1.2px;margin:16px 0 14px;color:#102641}
.auth-form>p{font-size:16px;line-height:1.6;color:#516881;margin-bottom:30px}
.auth-form .field{margin-bottom:20px;gap:9px}
.auth-form .field label{font-size:14px;font-weight:600;color:#304b6a}
.auth-form .field input{font-size:17px;min-height:54px;padding:14px 16px;border:1px solid #c9d9ed;border-radius:11px;background:#fcfdff;transition:border-color .2s,box-shadow .2s}
.auth-form .field input:hover{border-color:#79aaf2}
.auth-form .field input:focus-visible{outline:3px solid #b8dbff;border-color:#2773ec;box-shadow:0 0 0 5px #2773ec0b}
.auth-form .auth-links{font-size:13px;gap:12px;margin:4px 0 18px;line-height:1.5}
.auth-private{color:#506980}
.auth-form a{color:#185bd7}
.auth-form a:hover{color:#087eaa;text-decoration:underline;text-underline-offset:3px}
.auth-form form>button,.auth-form .button{min-height:55px;font-size:16px;font-weight:700;border-radius:11px;background:linear-gradient(105deg,#215bef,#137fda);color:white;box-shadow:0 7px 18px #2563eb23;transition:box-shadow .25s,transform .25s,filter .25s}
.auth-form form>button:hover:not(:disabled),.auth-form .button:hover{box-shadow:0 8px 28px #2597ed50,0 0 22px #59d9ff25;transform:translateY(-2px);filter:brightness(1.09);color:white;text-decoration:none}
.auth-form form>button:focus-visible,.auth-form a:focus-visible{outline:3px solid #72c8ff;outline-offset:4px}
.auth-form .auth-foot{font-size:14px;line-height:1.7;margin-top:26px;color:#38526e}
.auth-form .auth-foot a{font-weight:650}
.auth-form .small-text,.auth-form .notice,.auth-form .error-message{font-size:14px;line-height:1.6}
.landing section[id]{scroll-margin-top:120px}
.landing .premium-security{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(240px,.52fr);gap:28px;padding:48px;border:1px solid #cfe3fa;background:linear-gradient(115deg,#fbfdff,#edf6ff);box-shadow:0 18px 55px #15396714;transition:background .3s,box-shadow .3s,border-color .3s}
.landing .premium-security:hover{background:linear-gradient(115deg,#f5fbff,#d9edff);border-color:#7bc2ff;box-shadow:0 20px 60px #0c58b726,0 0 35px #54c8ff20}
.landing .security-shield{display:grid;place-items:center;height:72px;width:72px;background:linear-gradient(140deg,#1654ec,#168ecb);color:white;border-radius:19px;box-shadow:0 8px 25px #1d65d53b}
.security-shield svg{width:38px;height:38px}
.landing .premium-security h2{font-size:clamp(25px,2.25vw,35px);line-height:1.16;color:#123c85;margin:13px 0 18px;letter-spacing:-1px}
.landing .premium-security p{font-size:16px;line-height:1.75;color:#304d70;max-width:680px}
.landing .premium-security .eyebrow{font-size:12px;color:#145aee;letter-spacing:1.4px}
.security-assurance{font-size:12px;line-height:1.7;color:#3f658c;margin-top:18px}
.landing .premium-security .security-tags{display:flex;flex-direction:column;gap:20px}
.landing .premium-security .security-tags>span{position:relative;padding-left:26px;display:block}
.landing .premium-security .security-tags>span::before{content:'✓';position:absolute;left:0;top:0;color:#087e73;font-size:18px;font-weight:700}
.security-tags b{display:block;font-size:15px;color:#1b456f}
.security-tags small{display:block;font-size:12px;margin-top:5px;color:#466783;font-weight:400;line-height:1.5}
@media(min-width:1700px){.auth-story{padding:64px 90px}.auth-form{max-width:535px;padding:48px}.auth-story h1{font-size:68px}.auth-story p{font-size:19px}.auth-form h2{font-size:40px}}
@media(max-width:1100px){.auth-story{padding:32px;gap:28px}.auth-form-wrap{padding:30px}.auth-form{padding:30px}.auth-status{display:none}.landing .premium-security{padding:34px;gap:22px;grid-template-columns:58px minmax(0,1fr)}.landing .premium-security .security-tags{grid-column:2;flex-direction:row;flex-wrap:wrap;gap:18px}.landing .security-shield{height:58px;width:58px}}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr}.auth-story{display:none}.auth-form-wrap{min-height:100svh;padding:28px 20px}.auth-form{max-width:490px;padding:30px 24px}.auth-form .brand{display:flex;font-size:27px;margin-bottom:30px}.auth-form h2{font-size:31px}.auth-form>.eyebrow{font-size:10px}.landing .premium-security{padding:28px 22px;grid-template-columns:1fr;margin:0 20px;gap:20px}.landing .premium-security .security-tags{grid-column:1;flex-direction:column;gap:18px}.landing .premium-security h2{font-size:28px}.landing .premium-security p{font-size:15px}.landing section[id]{scroll-margin-top:100px}}
@media(prefers-reduced-motion:reduce){.auth-preview,.auth-form form>button,.auth-form .button,.landing .premium-security{transition:none}.auth-form form>button:hover{transform:none}}

/* mobile-responsive.css */
/* Mobile layouts shared across public pages and every workspace role. */
.mobile-agenda{display:none}
@media(max-width:900px){
html,body{max-width:100%;overflow-x:clip}
.public-header{gap:12px;padding:14px 16px;flex-wrap:wrap}
.public-header .brand{font-size:22px;margin:0;min-width:0}
.public-header .brand-symbol{width:30px;height:30px;flex-shrink:0}
.header-actions{gap:8px;min-width:0;margin-left:auto}
.header-actions .button{padding:11px 12px;font-size:12px;white-space:nowrap;min-height:44px}
.hero,.section{overflow:clip;min-width:0;max-width:100%}
.hero{padding:36px 20px 48px}
.hero>* ,.section>* ,.pricing>* ,.feature-grid>*{min-width:0;max-width:100%}
.hero-copy h1{font-size:clamp(36px,10vw,48px);letter-spacing:-1.5px;overflow-wrap:break-word}
.hero-copy>p{margin-left:0;font-size:16px}
.hero-copy .eyebrow{font-size:11px;line-height:1.6;letter-spacing:1px}
.hero-actions{flex-wrap:wrap;gap:10px}
.hero-actions .button{font-size:13px;min-height:46px;padding:14px 16px}
.hero-notes{flex-wrap:wrap;gap:8px 16px;font-size:12px}
.section h2,.bi-section h2{font-size:clamp(28px,8vw,38px);letter-spacing:-1px;overflow-wrap:break-word}
.preview-window,.hero-dashboard,.dashboard-preview,.preview-body{min-width:0;max-width:100%}
.section-heading>p{font-size:16px;max-width:100%;box-sizing:border-box}
.security-section{flex-wrap:wrap;padding:24px;margin:0 16px;min-width:0}
.security-section>*{min-width:0;max-width:100%}
.pricing{grid-template-columns:minmax(0,1fr)}
.pricing-card{min-width:0;max-width:100%}
.public-footer{flex-wrap:wrap;gap:12px;padding:24px 20px}
.auth-form-wrap{min-height:100svh;padding:28px 16px}
.auth-form{width:100%;min-width:0;padding:26px 22px;box-sizing:border-box}
.auth-form input,.workspace input,.workspace select,.workspace textarea,.modal-body input,.modal-body select,.modal-body textarea{font-size:16px}
.auth-links{gap:12px;flex-wrap:wrap}
.auth-form h2{font-size:28px;overflow-wrap:break-word}
.sidebar{height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:24px;max-width:calc(100vw - 48px)}
body:has(.sidebar.open)::after{content:'';position:fixed;inset:0;background:#020C1C80;z-index:19}
.topbar{min-width:0}
.breadcrumb{min-width:0;overflow-wrap:anywhere}
.topbar-right{flex-shrink:0}
.topbar-right .date-label{display:none}
.mobile-menu{min-width:44px;min-height:44px;flex-shrink:0}
.workspace{min-width:0;padding:22px 14px 36px}
.page-heading{flex-wrap:wrap;gap:16px}
.page-heading>div{min-width:0;max-width:100%}
.page-heading p{max-width:100%}
.heading-actions{flex-wrap:wrap;width:100%;gap:8px}
.heading-actions button{flex:1;min-height:44px}
.filters{gap:10px;padding:14px}
.filters .search{flex-basis:100%;max-width:none;width:100%;min-width:0}
.filters select{flex:1;max-width:none;min-width:0;width:calc(50% - 5px)}
.filters label{flex:1 1 130px;min-width:0}
.filters label input{width:100%;min-width:0}
.filters button{min-height:44px;font-size:13px;padding:10px 14px}
.view-tabs{gap:20px;overflow-x:auto;max-width:100%;padding-bottom:2px}
.view-tabs a{min-height:44px;white-space:nowrap;flex-shrink:0}
.chart-grid{grid-template-columns:minmax(0,1fr);gap:16px}
.chart{height:300px;max-width:100%}
.panel{min-width:0;max-width:100%}
.table-wrap{overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}
.kanban{max-width:100%;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
.kanban-column{width:min(300px,calc(100vw - 48px));min-width:min(300px,calc(100vw - 48px));scroll-snap-align:start}
.task-card h4 a{display:block;min-height:44px}
.calendar-nav h3{font-size:18px;text-align:center}
.calendar-weekday{font-size:11px;padding:10px 2px}
.calendar-day{min-height:74px;padding:4px}
.calendar-task{min-height:28px;font-size:11px;padding:5px 2px}
.mobile-agenda{display:grid;gap:8px;margin:20px 0}
.mobile-agenda h3{font-size:18px;margin:0 0 4px}
.mobile-agenda a{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:9px;min-height:44px;background:var(--surface,#fff);color:var(--ink);font-size:14px}
.mobile-agenda time{font-size:12px;flex-shrink:0}
.mobile-agenda span{overflow-wrap:anywhere}
[data-theme=dark] .mobile-agenda a{background:#10263F;color:#EDF5FF}
dialog#modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0}
.modal-header{padding:18px}
.modal-body{padding:18px;min-width:0}
.form-grid{grid-template-columns:minmax(0,1fr)}
.form-actions{flex-wrap:wrap;gap:10px}
.form-actions button{min-height:44px;flex:1}
.modal-tabs{overflow-x:auto;max-width:100%}
.modal-tabs button{min-height:44px;flex-shrink:0;white-space:nowrap}
.ts-chat-panel{max-width:calc(100vw - 24px);max-height:calc(100dvh - 96px);right:12px;bottom:82px}
}
@media(max-width:360px){.public-header .brand{font-size:20px}.header-actions .button{padding:10px;font-size:11px}.header-actions{gap:6px}.kpi-grid,.kpi-more{grid-template-columns:minmax(0,1fr)}.platform-kpis>.kpi:last-child{grid-column:auto}}

@media(max-width:900px){.public-header{height:auto;min-height:72px}.public-header>nav{display:none}.sidebar{transform:translateX(-100%);width:235px}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-story{display:none}}

@media(max-width:900px){.public-header{height:auto;min-height:72px}.public-header>nav{display:none}.sidebar{transform:translateX(-100%);width:235px}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-story{display:none}}

@media(max-width:900px){.filters select{flex:1 1 calc(50% - 5px);width:calc(50% - 5px)}.filters label{flex:1 1 100%}.filters label input{max-width:none}[data-theme=dark] .workspace input,[data-theme=dark] .workspace select,[data-theme=dark] .workspace textarea,[data-theme=dark] .modal-body input,[data-theme=dark] .modal-body select,[data-theme=dark] .modal-body textarea{font-size:16px}.modal-header button{min-width:44px;min-height:44px}}

/* chat-polish.css */
/* Public assistant: scoped to the chat to preserve the rest of the site. */
body.landing .ts-chat-panel{width:410px;height:620px;max-height:calc(100dvh - 120px);grid-template-rows:auto minmax(0,1fr) auto auto auto;border:1px solid #d6e4f4;border-radius:22px;box-shadow:0 24px 80px #071b3c40;font-family:Inter,'Segoe UI',Arial,sans-serif}
body.landing .ts-chat-header{align-items:center;padding:17px 18px;background:linear-gradient(125deg,#0b2858,#123d7e);box-shadow:0 2px 12px #0b285815}
body.landing .ts-chat-header strong{font-size:17px;letter-spacing:-.3px}
body.landing .ts-chat-header small{font-size:12px;margin-top:6px;color:#c7d9f5;opacity:1}
body.landing .ts-chat-status{background:#36e2ad;box-shadow:0 0 12px #36e2ad55}
body.landing .ts-chat-close{flex:none;background:#ffffff0c;min-width:40px;min-height:40px}
body.landing .ts-chat-messages{min-height:0;max-height:none;padding:18px 16px;background:linear-gradient(160deg,#f7faff,#eef4fb);scrollbar-width:thin;scrollbar-color:#b9cbe1 transparent;overscroll-behavior:contain}
body.landing .ts-chat-row{margin-bottom:16px;min-width:0}
body.landing .ts-chat-bubble{min-width:0;max-width:90%;padding:14px 16px;font-size:15px;line-height:1.6;word-break:normal;overflow-wrap:anywhere;border-radius:18px;box-shadow:0 3px 12px #1b3e6b05}
body.landing .ts-chat-row.assistant .ts-chat-bubble{border-color:#dbe6f3;color:#223b58}
body.landing .ts-chat-row.user .ts-chat-bubble{background:linear-gradient(125deg,#285ce9,#1675df);border-color:transparent;color:#fff}
body.landing .ts-chat-contact .ts-chat-bubble{max-width:100%}
body.landing .ts-whatsapp-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:auto;min-height:48px;margin-top:16px;padding:12px 14px;box-sizing:border-box;background:linear-gradient(125deg,#0a9953,#14b968);border:1px solid #0a9953;border-radius:12px;font-size:14px;line-height:1.3;font-weight:700;white-space:nowrap;word-break:normal;overflow-wrap:normal;box-shadow:0 6px 16px #10a55e25}
body.landing .ts-whatsapp-button span{min-width:0;white-space:nowrap}
body.landing .ts-whatsapp-button svg{width:22px;height:22px;flex:0 0 22px}
body.landing .ts-whatsapp-button:hover{background:linear-gradient(125deg,#088047,#0a9953)}
body.landing .ts-chat-quick{gap:7px;padding:12px 14px 0;border-top:1px solid #e1eaf4}
body.landing .ts-chat-quick button{min-height:36px;padding:8px 11px;font-size:12px;background:#f5f8fd;border-radius:10px;color:#234771}
body.landing .ts-chat-form{padding:12px 14px;gap:9px;min-width:0}
body.landing .ts-chat-form input{min-width:0;min-height:48px;padding:12px 13px;font-size:16px;background:#fff;border-color:#cbdcf0;color:#173452}
body.landing .ts-chat-form input:focus{border-color:#4485ed;box-shadow:0 0 0 3px #4485ed15}
body.landing .ts-chat-form button{width:48px;min-width:48px;flex:0 0 48px;min-height:48px}
body.landing .ts-chat-panel footer{padding:0 16px 12px;font-size:11px;color:#70839a}
body.landing .ts-wa-mini{width:34px;height:34px;flex:0 0 34px;background:#10a65e;box-shadow:0 4px 12px #10a65e20}
@media(max-width:600px){
 body.landing .ts-chat-panel{left:10px;right:10px;bottom:84px;width:auto;max-width:calc(100vw - 20px);height:min(640px,calc(100dvh - 104px));max-height:calc(100dvh - 104px);border-radius:18px}
 body.landing .ts-chat-header{padding:13px 14px}
 body.landing .ts-chat-messages{padding:14px 12px}
 body.landing .ts-chat-bubble{padding:12px 14px;font-size:15px}
 body.landing .ts-chat-quick{gap:6px;padding:10px 12px 0}
 body.landing .ts-chat-quick button{font-size:11px;min-height:36px;padding:7px 9px}
 body.landing .ts-chat-form{padding:10px 12px}
}
@media(max-width:350px){body.landing .ts-whatsapp-button{font-size:12px;padding:12px 8px;gap:6px}}

.seo-intro,.seo-faq{max-width:1180px;margin:0 auto;padding:48px 24px;color:#10294b}.seo-intro h2,.seo-faq h2{font-size:clamp(24px,4vw,36px);margin-bottom:20px}.seo-intro p,.seo-faq p{font-size:17px;line-height:1.7}.seo-intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.seo-faq details{padding:20px 0;border-bottom:1px solid #dce5f2}.seo-faq summary{cursor:pointer;font-size:18px;font-weight:600}.seo-demo-label{display:block;font-size:13px;color:#bfddff;text-align:center;margin:12px 0}@media(max-width:760px){.seo-intro-grid{grid-template-columns:1fr}}

.seo-intro,.seo-faq{background:#ffffff;border-radius:24px;margin-top:28px;margin-bottom:28px;box-shadow:0 8px 40px #0c234212}.seo-demo-label{background:#f5f9ff;color:#314d70;padding:14px 24px;margin:0}.seo-intro a,.seo-faq a{color:#1554d1}.seo-intro h3{font-size:21px;margin-top:24px}.seo-intro-grid article{min-width:0}.seo-intro p,.seo-faq p{overflow-wrap:anywhere}

.brand{display:inline-flex;align-items:center;gap:10px}.brand-logo{display:block;width:40px;height:40px;flex:0 0 40px;object-fit:contain;border-radius:50%}.auth-story .brand-logo{width:48px;height:48px;flex-basis:48px}.ts-chat-launcher-icon img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.ts-chat-header .chat-brand-logo{float:left;width:38px;height:38px;border-radius:50%;margin-right:10px}@media(max-width:480px){.brand-logo{width:34px;height:34px;flex-basis:34px}}
/* Larger official logo in the public header only. */
.public-header .brand-logo{width:80px;height:80px;flex-basis:80px}.public-header .brand{gap:12px}@media(max-width:768px){.public-header .brand-logo{width:72px;height:72px;flex-basis:72px}}


/* Public information pages and crawlable navigation. */
.public-page-links{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}.public-page-links a{font-size:14px;color:#1554d1;font-weight:600}.marketing-page{background:linear-gradient(135deg,#f1f6ff,#fff 65%,#e8f4ff);color:#173452}.marketing-content{max-width:1280px;margin:0 auto;padding:24px 34px 48px}.breadcrumbs{display:flex;gap:10px;font-size:14px;color:#536278;margin:12px 0 32px}.breadcrumbs a{color:#1554d1}.marketing-intro{max-width:900px;margin:0 0 32px}.marketing-intro h1{font-size:clamp(32px,4vw,52px);line-height:1.15;letter-spacing:-1px;margin:14px 0 20px;color:#123765}.marketing-intro p{font-size:19px;line-height:1.7;color:#425975}.marketing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}.marketing-panel{background:#fff;border:1px solid #dce7f5;border-radius:20px;padding:28px;margin:24px 0;box-shadow:0 8px 24px #16396508;min-width:0}.marketing-grid .marketing-panel{margin:0}.marketing-panel h2{font-size:24px;line-height:1.3;color:#123765;margin:0 0 16px}.marketing-panel p{font-size:16px;line-height:1.8;color:#425975;margin:12px 0}.marketing-panel a{color:#1554d1}.marketing-panel .button{color:#fff}.marketing-panel .contact-email{font-size:20px;font-weight:700;overflow-wrap:anywhere}.marketing-content .pricing{padding:28px 0 8px}.marketing-cta{padding:32px;border-radius:20px;background:linear-gradient(110deg,#0b2446,#2277cd);color:#fff;margin-top:32px}.marketing-cta h2{color:#fff;font-size:30px;margin:0 0 14px}.marketing-cta p{line-height:1.7;color:#e4f3ff}.marketing-cta .outline{color:#fff;border-color:#a3c8f8;background:transparent}.marketing-faq details{border-bottom:1px solid #dce7f5;padding:18px 0}.marketing-faq summary{cursor:pointer;font-weight:600;line-height:1.5}.marketing-faq h2:not(:first-child){margin-top:30px}.marketing-page .public-footer{gap:28px;flex-wrap:wrap}@media(max-width:768px){.marketing-content{padding:20px 22px 36px}.marketing-grid{grid-template-columns:1fr}.marketing-panel{padding:22px}.marketing-cta{padding:24px}.marketing-intro p{font-size:17px}.public-page-links{gap:12px 16px}}
.ts-language{position:relative;z-index:30;flex-shrink:0;font:600 12px/1.4 'Segoe UI',Arial,sans-serif}.ts-language button{display:flex;align-items:center;gap:7px;min-height:36px;padding:7px 10px;border:1px solid #d7e4f4;border-radius:9px;background:#fff;color:#15365c;cursor:pointer;width:auto;box-shadow:none;white-space:nowrap}.ts-language img{display:block;width:22px;height:16px;object-fit:cover;border-radius:3px}.ts-language button:hover,.ts-language button:focus-visible{background:#edf5ff;border-color:#448dff}.ts-language-menu{position:absolute;right:0;top:calc(100% + 7px);padding:6px;border:1px solid #d7e4f4;border-radius:12px;background:#fff;box-shadow:0 8px 28px #082c5526;min-width:185px}.ts-language-menu[hidden]{display:none}.ts-language-menu button{width:100%;border:0;justify-content:flex-start}.ts-language-menu button[aria-pressed=true]{background:#e6f0ff}.ts-language-floating{position:fixed;right:18px;top:18px;z-index:100}[data-theme=dark] .ts-language button,[data-theme=dark] .ts-language-menu{background:#102b49;color:#eff6ff;border-color:#37597d}[data-theme=dark] .ts-language button:hover,[data-theme=dark] .ts-language-menu button[aria-pressed=true]{background:#1c4776}.header-actions .ts-language{margin-left:6px}@media(max-width:600px){.ts-language-toggle{font-size:11px!important;padding:6px 8px!important}.ts-language-floating{right:10px;top:10px}.ts-language-menu{min-width:178px}}

/* Language menu must render above landing content */
body.landing.has-office-video > .public-header{
  position:relative;
  z-index:50;
  overflow:visible;
}

body.landing.has-office-video > main{
  position:relative;
  z-index:1;
}

/* Executive introduction: same shared card illumination as resources and plans. */
/* FAQ panel uses the landing page's existing blue illumination. */
body.landing .seo-faq {border:1px solid transparent;transition:border-color .25s ease,box-shadow .3s ease,background .3s ease;}
body.landing .seo-faq:focus-within {border-color:#6aafff;background:linear-gradient(145deg,#f8fcff,#edf5ff);box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;}
@media(hover:hover) {body.landing .seo-faq:hover {border-color:#6aafff;background:linear-gradient(145deg,#f8fcff,#edf5ff);box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;}}
@media(prefers-reduced-motion:reduce) {body.landing .seo-faq {transition:none;}}
body.landing .executive-intro {padding:40px 28px;}
body.landing .executive-intro .executive-lead {max-width:1040px;margin-bottom:28px;}
body.landing .executive-intro .seo-intro-grid {gap:20px;}
body.landing .executive-intro .seo-intro-grid article {position:relative;overflow:hidden;padding:24px;border:1px solid #dce5f2;border-radius:18px;background:#f8fbff;}
body.landing .executive-intro .feature-icon {display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:16px;border-radius:12px;background:#e8f1ff;color:#2563eb;font-size:24px;}
body.landing .executive-intro h3 {font-size:20px;line-height:1.35;margin:0 0 12px;}
body.landing .executive-intro .seo-intro-grid p {font-size:16px;line-height:1.65;margin:0;}
body.landing .executive-intro .executive-highlight {margin:24px 0 0;padding:18px 22px;border-left:3px solid #2563eb;border-radius:0 12px 12px 0;background:#edf5ff;color:#123a63;font-size:17px;line-height:1.6;}
@media(hover:hover) {body.landing .executive-intro .seo-intro-grid article:hover {transform:translateY(-6px);}}
@media(max-width:760px) {body.landing .executive-intro {padding:28px 20px;}body.landing .executive-intro .seo-intro-grid article {padding:22px;}body.landing .executive-intro .executive-highlight {padding:16px;}}
@media(prefers-reduced-motion:reduce) {body.landing .executive-intro .seo-intro-grid article:hover {transform:none;}}

/* Executive panel and information bars: existing dashboard blues and glow. */
body.landing .executive-intro {border:1px solid transparent;transition:border-color .25s ease,box-shadow .3s ease,background .3s ease;}
body.landing .executive-intro:focus-within {border-color:#6aafff;background:linear-gradient(145deg,#f8fcff,#edf5ff);box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;}
body.landing.has-office-video .value-strip,
body.landing .pricing-intro p {background:linear-gradient(145deg,#0d2346,#102d5d);color:#f1f7ff;border:1px solid #4b9aff7a;box-shadow:0 8px 28px #10264c26;transition:border-color .25s ease,box-shadow .3s ease;}
body.landing .value-strip > span {color:#bfdcff;}
body.landing .value-strip div {color:#f1f7ff;}
body.landing .value-strip b {color:#7ebdff;}
body.landing #planos .pricing-intro p {color:#f1f7ff;}
@media(hover:hover) {
  body.landing .executive-intro:hover {border-color:#6aafff;background:linear-gradient(145deg,#f8fcff,#edf5ff);box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;}
  body.landing.has-office-video .value-strip:hover,
  body.landing .pricing-intro p:hover {border-color:#6aafff;box-shadow:0 12px 32px #2563eb33,0 0 30px #60caff40;}
}
@media(prefers-reduced-motion:reduce) {body.landing .executive-intro,body.landing .value-strip,body.landing .pricing-intro p {transition:none;}}

/* Hero copy panels use the landing page's shared blue glow. */
body.landing .hero-copy > p {border:1px solid transparent;transition:background .3s ease,border-color .25s ease,box-shadow .3s ease;}
@media(hover:hover) {
  body.landing .hero-copy > p:hover {background:linear-gradient(145deg,#f8fcff,#edf5ff);border-color:#6aafff;box-shadow:0 22px 55px #2563eb22,0 0 0 1px #b7ddff80,0 0 30px #60caff1a;}
}
@media(prefers-reduced-motion:reduce) {body.landing .hero-copy > p {transition:none;}}

.video-watch{width:min(1120px,calc(100% - 40px));margin:28px auto 64px;color:#102d50}
.video-watch h1{font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.2;margin:18px 0 24px}
.video-language{border:0;padding:0;margin:0 0 18px;display:flex;gap:10px;flex-wrap:wrap}.video-language legend{margin-bottom:10px;font-weight:600}.video-language button{border:1px solid #bcd2ee;border-radius:10px;padding:10px 18px;background:#fff;color:#102d50;cursor:pointer}.video-language button[aria-pressed="true"]{background:#2468ed;color:white;border-color:#2468ed}.video-language button:focus-visible{outline:3px solid #102d50;outline-offset:3px}
.video-watch-player{margin:0;background:#0c2342;border:1px solid #dbe7f6;border-radius:20px;overflow:hidden;box-shadow:0 16px 40px #102d5017}
.video-watch-player video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#081b33}
.video-watch-player figcaption{padding:14px 20px;color:#edf4ff;font-size:14px}
.video-watch #video-context{margin-top:28px;max-width:820px;line-height:1.7}
.video-watch #video-context h2{font-size:1.4rem}
.video-watch a:focus-visible,.video-watch video:focus-visible{outline:3px solid #2563eb;outline-offset:4px}
.video-transcript{margin-top:28px;border-top:1px solid #dbe7f6;padding-top:20px;max-width:820px;line-height:1.7}
.video-transcript summary{cursor:pointer;font-weight:600}.video-transcript summary:focus-visible{outline:3px solid #2563eb;outline-offset:4px}.video-transcript h2{font-size:1.15rem;margin-top:24px}
@media(max-width:600px){.video-watch{width:calc(100% - 28px);margin-top:20px}.video-watch-player{border-radius:12px}.video-watch-player figcaption{padding:12px;font-size:12px}}

.homepage-demo{position:relative;padding:36px;background:#fff;border-radius:24px;box-shadow:0 16px 40px #102d5017;margin:28px auto 48px}.homepage-demo h2{font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.2;margin:0 0 12px}.homepage-demo-intro{margin:0 0 24px;line-height:1.6}@media(max-width:600px){.homepage-demo{padding:18px}}

/* Approved robot-only assistant presentation */
/* Only the existing public assistant launcher is enhanced. */
body.landing .ts-chat-root{bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px;width:128px;height:144px;pointer-events:none}
body.landing .ts-chat-panel{bottom:calc(20px + env(safe-area-inset-bottom,0px));right:20px;pointer-events:auto;max-height:calc(100dvh - 40px)}
body.landing .ts-chat-panel button,body.landing .ts-chat-root .ts-chat-panel button:not(:disabled):hover{transform:none}
.ts-chat-invite{position:absolute;right:0;bottom:0;width:232px;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none}
.ts-chat-invite[hidden],.ts-chat-invite-bubble[hidden]{display:none}
.ts-chat-invite-bubble{position:relative;align-self:flex-end;margin-bottom:10px;margin-right:8px;background:linear-gradient(145deg,#fff,#eaf3ff);border:2px solid #328cff;border-radius:22px;box-shadow:0 5px 24px #0b234c26,0 0 14px #339cff20;pointer-events:auto}
.ts-chat-invite-bubble:after{content:"";position:absolute;bottom:-10px;right:44px;width:16px;height:16px;background:#edf5ff;border-right:2px solid #328cff;border-bottom:2px solid #328cff;transform:skewY(18deg) rotate(40deg);border-radius:0 0 4px 0}
.ts-chat-invite-open{display:block;text-align:left;border:0;background:transparent;color:#183566;padding:16px 30px 17px 18px;border-radius:20px;font-weight:400;line-height:1.35;cursor:pointer}
.ts-chat-invite-open:hover{background:#eff6ff}
.ts-chat-invite-open strong{display:block;color:#1460ff;font-size:19px;letter-spacing:-.5px;margin-bottom:5px;white-space:nowrap}
.ts-chat-invite-open span{display:block;font-size:14px;max-width:170px}
.ts-chat-invite-dismiss{position:absolute;right:1px;top:1px;display:grid;place-items:center;width:28px;height:28px;padding:0;background:transparent;color:#567299;border:0;border-radius:50%;font-size:20px;line-height:1;cursor:pointer;z-index:1}
.ts-chat-invite-dismiss:hover{background:#deebff;color:#123464}
.ts-chat-robot{position:relative;display:block;width:128px;height:144px;margin:0;padding:0;border:0;background:transparent;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 0 7px #36b9ff45)}
.ts-chat-robot:hover{background:transparent;filter:drop-shadow(0 0 10px #36b9ff75)}
.ts-chat-robot img{width:100%;height:100%;object-fit:contain;display:block;transform:scaleX(-1);animation:ts-robot-float 4s ease-in-out infinite}
body.landing .ts-chat-invite-open span{font-weight:400}
body.landing .ts-chat-robot,body.landing .ts-chat-root .ts-chat-robot:not(:disabled):hover{background:transparent;border:0;box-shadow:none;transform:none}
.ts-chat-root :is(.ts-chat-robot,.ts-chat-invite-open,.ts-chat-invite-dismiss,.ts-chat-launcher):focus-visible{outline:3px solid #64cfff;outline-offset:4px}
@keyframes ts-robot-float{0%,100%{transform:translateY(0) scaleX(-1)}50%{transform:translateY(-5px) scaleX(-1)}}
@media(max-width:600px){
 body.landing .ts-chat-root{right:12px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:100px;height:112px}
 body.landing .ts-chat-panel{left:10px;right:10px;bottom:calc(14px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 28px);height:min(640px,calc(100dvh - 28px))}
 .ts-chat-invite{width:208px;bottom:0}
 .ts-chat-robot{width:100px;height:112px;margin:0}
 .ts-chat-invite-open{padding:13px 28px 14px 15px}
 .ts-chat-invite-open strong{font-size:17px}
 .ts-chat-invite-open span{font-size:13px;max-width:155px}
 .ts-chat-invite-bubble{position:relative;width:202px;border-radius:19px;margin:0 0 10px}
}
@media(max-height:480px){.ts-chat-invite-bubble{display:none}.ts-chat-robot{width:80px;height:90px}}
@media(prefers-reduced-motion:reduce){.ts-chat-robot img{animation:none}.ts-chat-root *{transition:none!important}}
