:root{--navy:#111433;--navy-2:#1c2050;--purple:#30277e;--teal:#08b2bd;--teal-2:#0bbfc5;--paper:#f7f9fc;--white:#fff;--ink:#171b38;--muted:#68728a;--line:#e1e6ef;--soft:#edf8f8;--shadow:0 24px 70px rgba(17,20,51,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(1480px,calc(100% - 80px));margin-inline:auto}
.site-header{height:96px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;backdrop-filter:blur(16px)}.header-inner{height:100%;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;height:100%;flex:0 0 auto}.brand img{max-height:46px;width:auto;max-width:280px;display:block;object-fit:contain}.main-nav{display:flex;align-items:center;justify-content:center;gap:28px;flex:1;font-size:16px;font-weight:600;color:#59627a}.main-nav a{transition:color .2s}.main-nav a:hover{color:var(--navy)}.header-actions{display:flex;align-items:center;gap:18px}.panel-link{font-size:14px;font-weight:700;color:#59627a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:52px;padding:13px 22px;border-radius:11px;font-size:16px;font-weight:700;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(17,20,51,.14)}.btn-primary{background:var(--teal);color:#fff;border-color:var(--teal)}.btn-primary:hover{background:#079fa9}.btn-outline{background:#fff;color:var(--navy);border-color:var(--navy)}.btn-header{background:var(--navy);color:#fff;padding:17px 27px;min-height:64px;border-radius:12px;font-size:17px}.mobile-menu{display:none;margin-left:auto}.mobile-menu summary{list-style:none;cursor:pointer;font-size:25px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-links{position:absolute;right:20px;top:80px;width:250px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:var(--shadow)}.mobile-links a{display:block;padding:13px;border-radius:8px;font-weight:700}.mobile-links a:hover{background:var(--paper)}
.hero{position:relative;overflow:hidden;background:#f8fafc;border-bottom:1px solid var(--line);padding-top:50px}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(48,39,126,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(48,39,126,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000 0%,#000 65%,transparent 100%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:center;padding:38px 0 46px}.eyebrow{display:flex;align-items:center;gap:12px;color:#5d6881;font-size:15px;font-weight:800;letter-spacing:2.3px}.eyebrow-dot{width:10px;height:10px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 7px rgba(8,178,189,.11)}.hero h1{font-family:"Manrope",Arial,sans-serif;font-size:clamp(58px,4.8vw,82px);line-height:1.01;letter-spacing:-5px;max-width:840px;margin:28px 0 18px}.hero h1 span{display:block;color:var(--teal)}.hero h2{font-family:"Manrope",Arial,sans-serif;font-size:clamp(38px,3.2vw,54px);line-height:1.08;letter-spacing:-2.5px;margin:0 0 22px;color:var(--navy)}.hero-lead{max-width:700px;color:#647087;font-size:20px;line-height:1.62;margin:0}.hero-actions{display:flex;gap:16px;margin-top:32px}.hero-actions .btn{min-width:235px}.wa-icon{font-size:24px;line-height:0}.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line);max-width:790px}.hero-trust div{display:flex;gap:12px;align-items:center;color:#56617a}.trust-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#e9f8f8;color:var(--teal);font-weight:800;font-size:20px}.hero-trust strong{font-size:14px;line-height:1.35}
.hero-scene{height:560px;min-width:0;position:relative}.scene-orb{position:absolute;border-radius:50%;border:1px solid rgba(8,178,189,.18)}.orb-one{width:450px;height:450px;right:-10px;top:45px;background:rgba(8,178,189,.04)}.orb-two{width:540px;height:540px;right:-35px;top:0;border-color:rgba(48,39,126,.09)}.city-frame{position:absolute;z-index:2;right:20px;top:72px;width:min(590px,92%);height:405px;border-radius:28px;overflow:hidden;box-shadow:0 30px 75px rgba(17,20,51,.20);border:8px solid rgba(255,255,255,.82);background:#dbe8ed}.city-frame img{width:112%;height:112%;object-fit:cover;object-position:center center;transform:translate(-5%,-5%);display:block}.city-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,20,51,.22),transparent 55%);pointer-events:none}.city-script{position:absolute;z-index:4;right:22px;top:12px;color:var(--navy);font-family:"Caveat",cursive;font-size:48px;line-height:.8;transform:rotate(-6deg);text-align:right;text-shadow:0 1px 0 #fff}.city-script small{font-size:42px;color:var(--purple)}.scene-card{position:absolute;z-index:5;background:rgba(255,255,255,.94);border:1px solid rgba(225,230,239,.9);box-shadow:0 18px 50px rgba(17,20,51,.13);border-radius:17px}.scene-card-top{left:0;top:92px;width:255px;padding:27px 26px}.scene-card-top strong,.scene-card-top span{display:block}.scene-card-top strong{font-size:18px;margin-bottom:4px}.scene-card-top span{font-size:17px;line-height:1.35;color:#30384e}.scene-card-top i{display:block;width:46px;height:5px;background:var(--teal);border-radius:5px;margin-top:19px}.scene-card-bottom{right:0;bottom:18px;width:300px;padding:20px 22px}.scene-card-bottom div{display:flex;align-items:center;gap:13px;font-size:14px;color:#394159;margin:10px 0}.scene-card-bottom span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--teal);color:#fff;font-weight:800}.circuit{position:absolute;z-index:1;width:145px;height:145px}.circuit:before{content:"";position:absolute;left:0;top:65px;width:110px;height:2px;background:var(--teal);transform:rotate(-35deg);transform-origin:left}.circuit i{position:absolute;width:13px;height:13px;border:3px solid var(--teal);border-radius:50%;left:0;top:102px}.circuit b{position:absolute;width:13px;height:13px;border:3px solid var(--teal);border-radius:50%;right:0;top:0}.circuit-one{left:-15px;bottom:35px}.circuit-two{right:-5px;top:35px;transform:rotate(180deg)}
.hero-services{position:relative;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.92);border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -5px 25px rgba(17,20,51,.025)}.hero-service{display:flex;gap:18px;padding:24px 30px;border-right:1px solid var(--line);transition:background .2s}.hero-service:last-child{border-right:0}.hero-service:hover{background:#fff}.hero-service-icon{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:14px;background:#effafa;color:var(--teal);font-size:30px;font-weight:700}.hero-service strong,.hero-service small,.hero-service em{display:block}.hero-service strong{font-family:"Manrope";font-size:17px}.hero-service small{color:#697389;font-size:14px;line-height:1.4;margin-top:3px}.hero-service em{font-style:normal;color:#078c98;font-weight:800;font-size:14px;margin-top:7px}
.section{padding:120px 0}.intro-layout{display:grid;grid-template-columns:1fr 470px;gap:90px;align-items:end}.section-kicker{display:block;color:#6b758a;font-size:12px;font-weight:800;letter-spacing:2px}.section-kicker.light{color:#7dd9d5}.intro-layout h2,.local-layout h2,.about-layout h2,.problem-layout h2,.cta-box h2{font-family:"Manrope";font-size:clamp(45px,4.4vw,70px);line-height:1.04;letter-spacing:-3.5px;margin:20px 0 0}.intro-layout h2 span,.local-layout h2 span,.about-layout h2 span{color:var(--purple)}.intro-layout>p,.local-layout>div>p,.about-layout>div>p,.projects-section .intro-layout>p{font-size:18px;line-height:1.75;color:var(--muted);margin:0}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:55px}.solution-card{background:#fff;border:1px solid var(--line);border-radius:15px;min-height:330px;padding:26px;display:flex;flex-direction:column;transition:.25s}.solution-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#d3dae6}.solution-meta{display:flex;justify-content:space-between;color:#7d879a;font-size:12px;font-weight:800}.solution-meta span:last-child{font-size:21px;color:var(--purple)}.solution-card h3{font-family:"Manrope";font-size:25px;letter-spacing:-1px;margin:68px 0 12px}.solution-card p{font-size:15px;color:#697389;line-height:1.6;margin:0}.solution-bottom{margin-top:auto;padding-top:22px;border-top:1px solid #edf0f4;display:flex;justify-content:space-between;align-items:center;gap:10px}.solution-bottom strong{font-size:13px;color:#4f5970}.solution-bottom a{font-size:13px;color:var(--purple);font-weight:800}
.problem-section{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:120px 0}.problem-section:after{content:"";position:absolute;width:700px;height:700px;border:1px solid rgba(8,178,189,.12);border-radius:50%;right:-280px;top:-270px}.problem-layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr .88fr;gap:110px;align-items:center}.problem-layout h2{max-width:750px}.problem-layout h2 span{display:block;color:#7ce0d8}.problem-layout p{max-width:650px;color:#aab4c8;font-size:18px;line-height:1.8;margin:28px 0 0}.light-btn{display:inline-flex;gap:13px;align-items:center;margin-top:30px;color:#fff;font-weight:800;font-size:15px;border-bottom:1px solid #56617a;padding-bottom:6px}.flow-board{background:#fff;color:var(--ink);border-radius:20px;padding:24px;box-shadow:0 35px 80px rgba(0,0,0,.2)}.flow-item{border-radius:13px;padding:26px}.flow-item.muted{background:#f1f3f6}.flow-item.highlighted{background:#e9f8f6;border:1px solid #cdece8}.flow-item small{display:block;color:#7b8598;font-size:11px;font-weight:800;letter-spacing:1.5px}.flow-item strong{display:block;font-family:"Manrope";font-size:24px;margin:8px 0 5px}.flow-item span{color:#697389;font-size:14px}.flow-arrow{text-align:center;color:var(--teal);font-size:28px;padding:7px}
.local-section{background:#fff}.local-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:center}.local-visual{height:480px;border-radius:24px;position:relative;overflow:hidden;background:#f0f4f7;border:1px solid var(--line)}.local-map-grid{position:absolute;inset:-30%;background-image:linear-gradient(45deg,transparent 48%,rgba(48,39,126,.08) 49%,transparent 50%),linear-gradient(115deg,transparent 48%,rgba(8,178,189,.1) 49%,transparent 50%);background-size:120px 120px;transform:rotate(-9deg)}.local-pin{position:absolute;left:50%;top:43%;width:52px;height:52px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 15px rgba(8,178,189,.12),0 0 0 32px rgba(8,178,189,.05)}.local-pin span{position:absolute;left:21px;top:21px;width:10px;height:10px;background:#fff;border-radius:50%}.local-label{position:absolute;left:28px;bottom:28px;background:#fff;border-radius:13px;padding:19px 22px;box-shadow:0 18px 45px rgba(17,20,51,.09)}.local-label small,.local-label span{display:block;color:#7b8598;font-size:11px}.local-label small{color:var(--teal);font-weight:800;letter-spacing:1.5px}.local-label strong{display:block;font-family:"Manrope";font-size:27px;margin:3px 0}.local-layout>div>p{max-width:720px;margin-top:25px}.local-points{display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.local-points div{padding:19px 15px 19px 0}.local-points div+div{padding-left:20px;border-left:1px solid var(--line)}.local-points b{display:block;color:var(--teal);font-size:11px;margin-bottom:7px}.local-points span{font-weight:700;font-size:14px}.text-link{display:inline-flex;color:var(--purple);font-weight:800;font-size:15px;border-bottom:1px solid #cdd1df;padding-bottom:6px}
.process-section{background:#f7f8fb}.process-list{margin-top:60px;border-top:1px solid var(--line)}.process-list article{display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}.process-list article>span{font-family:"Manrope";font-size:14px;color:var(--teal);font-weight:800}.process-list h3{font-family:"Manrope";font-size:27px;letter-spacing:-.8px;margin:0 0 5px}.process-list p{font-size:16px;color:var(--muted);margin:0}
.about-section{background:#fff}.about-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:110px;align-items:start}.about-lead{font-size:21px!important;line-height:1.75!important;color:#3e465b!important;margin:0!important}.academic-card{display:flex;gap:20px;align-items:flex-start;margin-top:38px;padding:25px;background:#f6f8fb;border:1px solid var(--line);border-radius:15px}.academic-badge{display:flex;align-items:center;justify-content:center;flex:0 0 72px;height:84px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 14px rgba(17,20,51,.06);padding:8px}.academic-badge-img{max-width:100%;max-height:100%;object-fit:contain;display:block}.academic-card strong,.academic-card span{display:block}.academic-card strong{font-size:15px;margin-bottom:8px}.academic-card span{font-size:14px;color:#687289;line-height:1.7}.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.tags span{font-size:13px;font-weight:700;color:#566078;background:#eff2f6;border-radius:30px;padding:9px 13px}
.projects-section{background:#f7f8fb}.project-grid{display:grid;grid-template-columns:1.35fr .82fr .82fr;gap:14px;margin-top:55px}.project-card{min-height:330px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column}.project-card.project-main{background:var(--navy);color:#fff}.project-card span{font-size:11px;font-weight:800;letter-spacing:1.6px;color:var(--teal)}.project-card h3{font-family:"Manrope";font-size:28px;line-height:1.15;letter-spacing:-1px;margin:50px 0 12px}.project-card p{color:#697389;font-size:15px;line-height:1.65;margin:0}.project-main p{color:#b3bdd0}.project-card a{margin-top:auto;color:var(--teal);font-weight:800;font-size:14px}
.cta-section{padding:80px 0;background:var(--navy)}.cta-box{border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,#1b204b,#101433);border-radius:24px;padding:60px;display:flex;justify-content:space-between;align-items:center;gap:60px;color:#fff}.cta-box h2{max-width:800px}.cta-box h2 span{color:#7ce0d8}.cta-box p{color:#aeb8cb;font-size:17px;margin:22px 0 0}.btn-large{min-width:260px;min-height:60px}
.contact-page{padding:105px 0 120px}.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}.contact-intro h1{font-family:"Manrope";font-size:clamp(52px,5vw,75px);line-height:1.03;letter-spacing:-3.8px;margin:22px 0}.contact-intro h1 span{display:block;color:var(--purple)}.contact-intro>p{font-size:20px;line-height:1.7;color:var(--muted);max-width:610px}.whatsapp-callout{display:flex;gap:10px;align-items:center;margin-top:40px;padding-top:23px;border-top:1px solid var(--line);font-size:16px}.whatsapp-callout strong{color:var(--navy)}.whatsapp-callout a{color:var(--teal);font-weight:800}.contact-reassurance{margin-top:45px;padding:22px 0;border-top:1px solid var(--line);display:grid;gap:5px}.contact-reassurance b{font-size:16px}.contact-reassurance span{color:var(--muted);font-size:15px}.contact-form{background:#fff;border:1px solid var(--line);border-radius:20px;padding:38px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form label{display:flex;flex-direction:column;gap:9px;color:var(--navy);font-weight:700;font-size:14px;margin-bottom:22px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #d4dae5;border-radius:10px;background:#fff;color:var(--ink);padding:14px 15px;outline:none;font-size:16px;transition:.2s}.contact-form input,.contact-form select{height:52px}.contact-form textarea{min-height:170px;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(8,178,189,.1)}.contact-form label small{font-size:12px;color:#b42318}.form-submit{width:100%;margin-top:3px}.form-privacy{font-size:12px;color:#7b8598;line-height:1.6;margin:13px 0 0}.form-error{padding:12px;background:#fff1f0;border:1px solid #f2c8c4;border-radius:9px;color:#b42318;margin-bottom:20px}
.success-page{min-height:650px;display:grid;place-items:center;padding:80px 20px}.success-card{width:min(700px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:55px;box-shadow:var(--shadow);text-align:center}.success-mark{display:grid;place-items:center;width:65px;height:65px;margin:0 auto 25px;border-radius:50%;background:var(--teal);color:#fff;font-size:30px}.success-card h1{font-family:"Manrope";font-size:48px;line-height:1.05;letter-spacing:-2px;margin:18px 0}.success-card h1 span{display:block;color:var(--purple)}.success-card p{font-size:18px;color:var(--muted);line-height:1.7}.success-actions{display:flex;justify-content:center;gap:12px;margin-top:30px}
.admin-page{padding:80px 0;min-height:700px}.admin-head{display:flex;justify-content:space-between;gap:30px;align-items:end}.admin-head h1{font-family:"Manrope";font-size:55px;margin:8px 0}.admin-head p,.muted{color:var(--muted)}.admin-actions{display:flex;gap:10px}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:45px 0}.kpis>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px}.kpis b{display:block;font-family:"Manrope";font-size:32px}.kpis span{font-size:12px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:15px}.table-card,.detail-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:25px}.card-head h2{font-family:"Manrope";font-size:24px;margin:6px 0 20px}.op-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.op-row strong,.op-row span{display:block}.op-row span{font-size:13px;color:var(--muted);margin-top:4px}.op-meta{text-align:right}.op-meta small{display:block;color:var(--muted);font-size:11px;margin-top:7px}.status{display:inline-block;border-radius:30px;padding:5px 9px;font-size:10px;font-weight:800}.status-novo{background:#eef4ff;color:#345ca8}.status-contato{background:#fff5dc;color:#8a6400}.status-visita{background:#e9f8f6;color:#07838b}.status-proposta{background:#f0ebff;color:#5c43a8}.status-ganho{background:#e6f7ed;color:#1f7a49}.status-perdido{background:#f5eeee;color:#955b5b}.type-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0}.panel-note{margin-top:20px;background:#f5f7fa;border-radius:10px;padding:15px;font-size:13px;color:#677188}.narrow{width:min(850px,calc(100% - 48px))}.back-link{display:inline-block;color:var(--purple);font-weight:800;margin-bottom:20px}.detail-card h1{font-family:"Manrope";font-size:45px;margin:8px 0}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.info-grid div{background:#f5f7fa;border-radius:10px;padding:15px}.info-grid small{display:block;color:#7a8497;font-size:10px;letter-spacing:1.2px}.info-grid strong{display:block;margin-top:5px}.stack-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:14px;margin-bottom:18px}.stack-form input,.stack-form select,.stack-form textarea{border:1px solid #d4dae5;border-radius:9px;padding:13px;font-size:16px}.stack-form textarea{min-height:180px;resize:vertical}
.site-footer{background:#0d1029;color:#fff;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-brand img{max-height:46px;width:auto;max-width:280px;display:block;object-fit:contain}.footer-brand p{max-width:370px;color:#aeb8cb;font-size:15px;line-height:1.6}.footer-brand strong{font-size:12px;color:#7dd9d5}.footer-grid>b,.footer-grid>div:not(.footer-brand)>b{display:block;color:#7dd9d5;font-size:11px;letter-spacing:1.6px;margin:7px 0 18px}.footer-grid a{display:block;color:#c5ccda;font-size:14px;margin:12px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;padding-top:20px;margin-top:50px;color:#7d879c;font-size:12px}
@media(max-width:1200px){.wrap{width:min(1180px,calc(100% - 48px))}.brand img{max-height:42px;max-width:240px}.main-nav{gap:20px;font-size:14px}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:28px}.hero h1{font-size:clamp(55px,5.8vw,78px)}.hero-scene{height:500px}.city-frame{width:500px;height:345px;right:8px}.scene-card-top{left:-5px}.solution-grid{grid-template-columns:repeat(2,1fr)}.hero-services{grid-template-columns:repeat(2,1fr)}.hero-service:nth-child(2){border-right:0}.hero-service:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:900px){.site-header{height:82px}.brand{width:auto;flex:1}.brand img{max-height:38px;max-width:210px}.main-nav,.header-actions .panel-link{display:none}.mobile-menu{display:block}.header-actions{margin-left:auto}.hero{padding-top:25px}.hero-grid,.problem-layout,.local-layout,.about-layout,.contact-layout{grid-template-columns:1fr}.hero-grid{gap:20px}.hero-copy{padding:25px 0}.hero h1{font-size:clamp(52px,9vw,78px)}.hero-scene{height:540px;margin-top:10px}.city-frame{right:7%;width:78%;height:390px}.scene-card-top{left:0;top:95px}.scene-card-bottom{right:0;bottom:10px}.intro-layout{grid-template-columns:1fr;gap:28px}.local-layout{gap:55px}.local-visual{height:390px}.problem-layout{gap:55px}.about-layout{gap:50px}.project-grid{grid-template-columns:1fr 1fr}.project-main{grid-column:1/-1}.cta-box{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.kpis{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:calc(100% - 30px)}.site-header{height:72px}.brand img{max-height:34px;max-width:180px}.header-actions .btn-header{min-height:48px;padding:10px 13px;font-size:13px}.hero-grid{padding:18px 0 28px}.eyebrow{font-size:11px;letter-spacing:1.5px}.hero h1{font-size:48px;letter-spacing:-2.8px;margin:22px 0 14px}.hero h2{font-size:34px;letter-spacing:-1.5px}.hero-lead{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-trust{grid-template-columns:1fr;gap:14px}.hero-trust div{font-size:14px}.hero-scene{height:450px}.city-frame{width:92%;height:300px;right:4%;top:62px;border-radius:20px}.scene-card-top{width:205px;top:30px;padding:17px}.scene-card-top strong{font-size:14px}.scene-card-top span{font-size:13px}.scene-card-bottom{width:240px;padding:12px 15px;bottom:5px}.scene-card-bottom div{font-size:12px;margin:7px 0}.scene-card-bottom span{width:25px;height:25px}.city-script{font-size:34px}.city-script small{font-size:30px}.hero-services{grid-template-columns:1fr;border-radius:14px 14px 0 0}.hero-service{border-right:0!important;border-bottom:1px solid var(--line)!important;padding:17px}.hero-service:last-child{border-bottom:0!important}.hero-service-icon{flex-basis:44px;height:44px}.hero-service strong{font-size:16px}.section{padding:82px 0}.intro-layout h2,.local-layout h2,.about-layout h2,.problem-layout h2,.cta-box h2{font-size:41px;letter-spacing:-2px}.intro-layout>p,.local-layout>div>p,.about-layout>div>p,.projects-section .intro-layout>p{font-size:16px}.solution-grid{grid-template-columns:1fr;margin-top:35px}.solution-card{min-height:270px}.solution-card h3{margin-top:50px}.problem-section{padding:82px 0}.flow-item strong{font-size:21px}.local-points{grid-template-columns:1fr}.local-points div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.process-list article{grid-template-columns:48px 1fr;gap:12px}.process-list h3{font-size:22px}.project-grid{grid-template-columns:1fr}.project-main{grid-column:auto}.cta-box{padding:35px 25px}.contact-page{padding:65px 0 80px}.contact-intro h1{font-size:47px;letter-spacing:-2.5px}.contact-intro>p{font-size:17px}.contact-form{padding:23px 18px}.form-grid{grid-template-columns:1fr;gap:0}.success-card{padding:35px 22px}.success-card h1{font-size:38px}.success-actions{flex-direction:column}.admin-head{display:block}.admin-head h1{font-size:45px}.admin-actions{margin-top:20px}.kpis{grid-template-columns:1fr 1fr}.op-row{display:block}.op-meta{text-align:left;margin-top:10px}.info-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-brand img{max-height:38px;max-width:200px}.footer-bottom{display:block;line-height:2}.footer-bottom span{display:block}}

/* V7: dimensões e alinhamento do sistema visual */
html,body{max-width:100%;overflow-x:hidden}
.hero-copy,.hero-scene,.hero-grid,.header-inner{min-width:0}
.brand{overflow:visible}
@media(max-width:1200px){.main-nav{gap:18px}.header-actions{gap:10px}.btn-header{padding-inline:20px}}
@media(max-width:900px){.header-inner{gap:12px}.hero-grid{grid-template-columns:1fr}.hero-scene{height:500px}.city-frame{width:82%;right:9%}}
@media(max-width:620px){.hero-scene{height:420px}.city-frame{width:94%;right:3%;height:285px}.hero h1{font-size:48px}}

/* WhatsApp Float Button for Mobile */
.whatsapp-float{position:fixed;bottom:24px;right:24px;z-index:999;display:inline-flex;align-items:center;gap:10px;background:#25d366;color:#fff;padding:12px 20px;border-radius:50px;font-weight:700;font-size:15px;box-shadow:0 10px 25px rgba(37,211,102,.35);transition:transform .2s,box-shadow .2s;text-decoration:none}
.whatsapp-float:hover{transform:scale(1.05);box-shadow:0 14px 30px rgba(37,211,102,.45);color:#fff}
.wa-btn-icon{display:inline-block;vertical-align:middle;margin-right:4px}
@media(min-width:768px){.whatsapp-float span{display:inline}.whatsapp-float{padding:12px 22px}}
@media(max-width:767px){.whatsapp-float span{display:none}.whatsapp-float{padding:14px;border-radius:50%}}

/* Casos Antes vs Depois */
.ba-section{margin-top:50px;position:relative;z-index:2}
.ba-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.ba-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:26px;color:#fff;backdrop-filter:blur(10px);transition:transform .25s,border-color .25s}
.ba-card:hover{transform:translateY(-3px);border-color:rgba(124,224,216,.4)}
.ba-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.ba-head b{font-size:12px;letter-spacing:1.5px;color:#7ce0d8}
.ba-tag{font-size:11px;background:rgba(255,255,255,.1);padding:4px 10px;border-radius:20px;color:#c5ccda}
.ba-comparison{display:grid;gap:12px;font-size:15px;line-height:1.5}
.ba-before{color:#aeb8cb;padding-left:14px;border-left:3px solid #ef5350}
.ba-before strong{color:#ef5350}
.ba-after{color:#e0f2f1;padding-left:14px;border-left:3px solid #26a69a}
.ba-after strong{color:#4db6ac}
@media(max-width:768px){.ba-grid{grid-template-columns:1fr}}

/* SVGs & Interações */
.hero-service-icon svg{width:24px;height:24px;color:var(--teal)}
.trust-icon svg{width:20px;height:20px;color:var(--teal)}
.card-arrow{font-size:20px;transition:transform .2s,color .2s}
.solution-card:hover .card-arrow{transform:translate(3px,-3px);color:var(--teal)}

/* Mobile Navigation Drawer & Touch Enhancements */
.mobile-menu summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:var(--paper);border:1px solid var(--line);color:var(--navy);font-size:20px;transition:.2s}
.mobile-menu summary:hover{background:#edf2f7}
.mobile-menu[open] summary .menu-icon-open{display:none}
.mobile-menu summary .menu-icon-close{display:none}
.mobile-menu[open] summary .menu-icon-close{display:inline}

.mobile-overlay{position:fixed;inset:0;background:rgba(17,20,51,.4);backdrop-filter:blur(4px);z-index:90}
.mobile-links{position:fixed;right:15px;top:75px;left:15px;max-width:400px;margin-inline:auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 25px 60px rgba(17,20,51,.22);z-index:91;display:flex;flex-direction:column;gap:6px}
.mobile-links a{display:flex;align-items:center;min-height:48px;padding:12px 16px;border-radius:10px;font-weight:700;font-size:16px;color:#3e475d;transition:background .15s}
.mobile-links a:hover,.mobile-links a:active{background:var(--paper);color:var(--navy)}
.mobile-cta-link{background:var(--teal)!important;color:#fff!important;justify-content:center;margin-top:8px;border-radius:12px!important}
.mobile-panel-link{background:#eef4ff!important;color:#345ca8!important;justify-content:center}

/* iOS Input Zoom & Touch Targets */
input,select,textarea{font-size:16px!important;touch-action:manipulation}
button,a,.btn{touch-action:manipulation}

@media(max-width:480px){
  .wrap{width:calc(100% - 24px)}
  .site-header{height:68px}
  .brand img{max-height:30px;max-width:160px}
  .hero-actions .btn{min-height:50px;padding:12px 18px;font-size:15px}
  .hero h1{font-size:38px!important;letter-spacing:-2px!important}
  .hero h2{font-size:26px!important;letter-spacing:-1px!important}
  .hero-lead{font-size:15px!important}
  .hero-scene{height:380px}
  .city-frame{width:96%;height:240px;right:2%;top:50px;border-width:5px}
  .scene-card-top{width:180px;top:20px;padding:12px}
  .scene-card-bottom{width:210px;padding:10px;bottom:5px}
  .solution-card{padding:20px;min-height:auto}
  .solution-card h3{margin-top:30px;font-size:21px}
  .contact-form{padding:20px 14px}
  .form-grid{grid-template-columns:1fr}
  .success-card{padding:30px 16px}
  .success-actions{flex-direction:column}
  .success-actions .btn{width:100%}
  .kpis{grid-template-columns:1fr 1fr;gap:8px}
  .kpis>div{padding:14px}
  .kpis b{font-size:24px}
}

/* Section Clientes & Sistemas Entregues */
.client-systems-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:55px}
.client-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(17,20,51,.04);transition:transform .25s,box-shadow .25s,border-color .25s}
.client-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(17,20,51,.1);border-color:#c4cede}
.client-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.client-logo-badge{display:flex;align-items:center;gap:10px;color:var(--navy);font-weight:800;font-size:13px;letter-spacing:1.2px}
.client-logo-badge svg{color:var(--teal);flex-shrink:0}
.client-tag{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--teal);background:#eefafb;border:1px solid #cceef0;padding:6px 14px;border-radius:30px}
.client-tag.light{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.2);color:#7dd9d5}
.client-card h3{font-family:"Manrope",sans-serif;font-size:24px;line-height:1.25;letter-spacing:-.8px;margin:12px 0;color:var(--navy)}
.client-card p{color:var(--muted);font-size:15px;line-height:1.65;margin:0 0 24px}
.client-impact{margin-top:auto;padding:16px 18px;background:#f7f9fc;border:1px solid #ebf0f7;border-radius:12px;font-size:14px;color:#3b4459;line-height:1.5}
.client-impact strong{display:block;color:var(--purple);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:4px}
.client-brand-group{display:flex;align-items:center;gap:14px;min-width:0}
.client-logo-box{width:56px;height:56px;border-radius:14px;background:#0d1029;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;padding:6px;box-shadow:0 6px 16px rgba(17,20,51,.12);border:1px solid rgba(125,217,213,.25)}
.client-logo-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;display:block}
.client-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:1.3px;color:var(--teal);text-transform:uppercase;margin-bottom:3px}
.client-title{font-family:"Manrope",sans-serif;font-size:21px!important;line-height:1.2!important;letter-spacing:-.5px!important;margin:0!important;color:var(--navy)!important}
.client-card-footer{margin-top:auto;display:flex;flex-direction:column;gap:14px}
.client-live-link{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:var(--teal);text-decoration:none;transition:all .2s ease;align-self:flex-start}
.client-live-link:hover{color:var(--navy);text-decoration:underline;transform:translateX(3px)}
.client-live-link svg{transition:transform .2s ease}
.client-live-link:hover svg{transform:translate(2px,-2px)}
.client-cta-card{background:linear-gradient(135deg,#111433,#1d2252);color:#fff;border-color:transparent;box-shadow:0 20px 50px rgba(17,20,51,.15);justify-content:center}
.client-cta-card h3{color:#fff;margin:16px 0 12px;font-size:26px}
.client-cta-card p{color:#b6c1d6;margin-bottom:25px}
@media(max-width:900px){.client-systems-grid{grid-template-columns:1fr}}

/* Páginas 404 e 500 Personalizadas */
.error-page{position:relative;min-height:calc(100vh - 180px);display:flex;align-items:center;justify-content:center;padding:80px 20px;background:var(--paper);overflow:hidden}
.error-backdrop{position:absolute;inset:0;pointer-events:none}
.error-orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.25}
.error-orb.orb-1{width:400px;height:400px;background:var(--teal);top:-100px;right:-50px}
.error-orb.orb-2{width:500px;height:500px;background:var(--purple);bottom:-150px;left:-100px}
.error-container{position:relative;z-index:2;width:min(760px,100%)}
.error-card{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:24px;padding:55px 45px;box-shadow:var(--shadow);text-align:center;backdrop-filter:blur(12px);transition:transform .3s ease,box-shadow .3s ease}
.error-card:hover{transform:translateY(-4px);box-shadow:0 30px 80px rgba(17,20,51,.14)}
.error-badge{display:inline-flex;flex-direction:column;align-items:center;margin-bottom:24px}
.error-code{font-family:"Manrope",Arial,sans-serif;font-size:88px;font-weight:800;line-height:.9;letter-spacing:-4px;background:linear-gradient(135deg,var(--purple),var(--teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.error-badge-500 .error-code{background:linear-gradient(135deg,#d9381e,var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.error-tag{display:inline-block;margin-top:8px;padding:5px 14px;background:var(--soft);color:var(--teal);border-radius:30px;font-size:12px;font-weight:800;letter-spacing:1.5px}
.error-badge-500 .error-tag{background:#fff1f0;color:#d9381e}
.error-card h1{font-family:"Manrope",Arial,sans-serif;font-size:clamp(28px,3.2vw,40px);line-height:1.15;letter-spacing:-1.5px;color:var(--navy);margin:0 0 16px}
.error-lead{font-size:18px;line-height:1.6;color:var(--muted);max-width:580px;margin:0 auto 32px}
.error-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:35px}
.error-actions .btn{display:inline-flex;align-items:center;gap:10px;cursor:pointer}
.error-suggestions{padding-top:28px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.error-suggestions span{display:block;font-weight:700;margin-bottom:12px;color:var(--ink)}
.suggestion-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}
.suggestion-links a{color:var(--purple);font-weight:700;transition:color .2s}
.suggestion-links a:hover{color:var(--teal);text-decoration:underline}
.wa-urgent-link{color:#078c98!important;font-size:15px}
@media(max-width:620px){
  .error-page{padding:50px 15px}
  .error-card{padding:35px 20px}
  .error-code{font-size:68px}
  .error-card h1{font-size:26px}
  .error-lead{font-size:16px}
  .error-actions{flex-direction:column}
  .error-actions .btn{width:100%;justify-content:center}
  .suggestion-links{flex-direction:column;gap:10px}
}

/* Validador Matemático de Segurança (Anti-Bot) */
.math-captcha-box{background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin:18px 0 24px;box-shadow:0 4px 15px rgba(17,20,51,.03)}
.math-captcha-header{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:14px;color:var(--navy)}
.math-captcha-body{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.contact-form label.math-question-label,.math-question-label{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;font-family:"Manrope",sans-serif;font-size:17px;font-weight:700;color:var(--navy);margin:0!important;white-space:nowrap}
.math-num{display:inline-block;padding:2px 10px;background:var(--soft);color:var(--teal);border-radius:8px;font-weight:800;font-size:18px}
.math-input-wrapper{position:relative;flex:1;min-width:140px}
.math-input-wrapper input{width:100%;height:48px;padding-right:40px!important;font-weight:700;font-size:18px!important;letter-spacing:1px;margin-bottom:0!important}
.math-input-wrapper input.is-valid{border-color:#10b981!important;box-shadow:0 0 0 4px rgba(16,185,129,.12)!important}
.math-input-wrapper input.is-invalid{border-color:#ef4444!important;box-shadow:0 0 0 4px rgba(239,68,68,.12)!important}
.math-status-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-weight:800;font-size:18px;pointer-events:none}
.math-status-icon.valid{color:#10b981}
.math-status-icon.invalid{color:#ef4444}
.math-hint{display:block;font-size:12px;color:var(--muted);margin-top:8px}
.math-feedback-msg{display:block;font-size:13px;font-weight:700;margin-top:6px}
.math-feedback-msg.valid{color:#10b981}
.math-feedback-msg.invalid{color:#ef4444}
.form-error-text{display:block;color:#b42318;font-size:12px;font-weight:700;margin-top:6px}

/* ==========================================================================
   CONFORMIDADE LGPD & POLÍTICA DE DADOS
   ========================================================================== */

/* Consentimento no Formulário de Contato */
.form-lgpd-consent{margin:18px 0 24px;padding:16px 18px;background:#f8fafc;border:1px solid var(--line);border-radius:12px}
.form-lgpd-consent .checkbox-label{display:flex!important;align-items:flex-start!important;gap:12px!important;cursor:pointer;margin-bottom:0!important;font-size:14px;line-height:1.55;color:#334155}
.form-lgpd-consent .checkbox-label input[type="checkbox"]{width:20px;height:20px;margin-top:2px;accent-color:var(--teal);cursor:pointer;flex-shrink:0}
.form-lgpd-consent .checkbox-label a{color:var(--teal);text-decoration:underline;font-weight:700}
.form-lgpd-consent .checkbox-label a:hover{color:var(--navy)}

/* Banner Flutuante de Cookies LGPD (Card no canto inferior esquerdo) */
.lgpd-cookie-banner{position:fixed;bottom:24px;left:24px;max-width:420px;width:calc(100% - 48px);z-index:10001;background:#0d1029;color:#fff;border:1px solid rgba(125,217,213,.35);border-radius:16px;padding:20px 22px;box-shadow:0 16px 40px rgba(0,0,0,.45);transition:opacity .3s ease,transform .3s ease}
.lgpd-cookie-banner.is-hiding{opacity:0;transform:translateY(16px);pointer-events:none}
.btn-cookie{background:var(--teal);color:#fff;font-weight:700;font-size:12px;padding:8px 16px;border-radius:8px;border:0;cursor:pointer;white-space:nowrap;transition:all .2s ease}
.btn-cookie:hover{background:#0fa499;transform:translateY(-1px);box-shadow:0 4px 14px rgba(17,185,173,.35)}
.btn-outline-cookie{background:transparent;color:#e2e8f0;border:1px solid rgba(255,255,255,.25);font-weight:600;font-size:12px;padding:7px 14px;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all .2s ease}
.btn-outline-cookie:hover{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.4)}
.btn-cookie-link{color:#94a3b8;font-size:11.5px;font-weight:600;text-decoration:none}
.btn-cookie-link:hover{color:#7dd9d5;text-decoration:underline}

/* Layout das Páginas Legais (Privacidade e Termos) */
.legal-page{padding:50px 0 90px;background:#f8fafc;color:#1e293b}
.legal-container{max-width:1160px;margin:0 auto}
.legal-header{background:#fff;border:1px solid var(--line);border-radius:20px;padding:45px 50px;margin-bottom:30px;box-shadow:0 6px 24px rgba(17,20,51,.04)}
.legal-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:18px}
.legal-breadcrumbs a{color:var(--teal);text-decoration:none;font-weight:600}
.legal-breadcrumbs strong{color:var(--navy)}
.legal-header h1{font-family:"Manrope",sans-serif;font-size:clamp(32px,4vw,46px);letter-spacing:-1.5px;color:var(--navy);margin:10px 0 16px;line-height:1.15}
.legal-header h1 span{color:var(--teal)}
.legal-lead{font-size:17px;line-height:1.7;color:#475569;max-width:920px;margin-bottom:24px}
.legal-meta-badges{display:flex;flex-wrap:wrap;gap:10px}
.legal-badge{background:#f1f5f9;border:1px solid #e2e8f0;padding:6px 14px;border-radius:8px;font-size:12.5px;color:#475569}
.legal-badge.status-badge{background:#ecfdf5;border-color:#a7f3d0;color:#047857;font-weight:700}

/* Cards de Resumo */
.legal-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:35px}
.summary-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 4px 18px rgba(17,20,51,.03);transition:transform .2s ease,box-shadow .2s ease}
.summary-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(17,20,51,.06)}
.summary-icon{font-size:28px;margin-bottom:14px}
.summary-card h3{font-family:"Manrope",sans-serif;font-size:18px;color:var(--navy);margin-bottom:8px;font-weight:800}
.summary-card p{font-size:14px;line-height:1.6;color:#64748b;margin:0}

/* Estrutura Grid: Sidebar + Artigo */
.legal-layout{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:start}
.legal-sidebar{position:sticky;top:100px;display:flex;flex-direction:column;gap:20px}
.legal-toc-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 4px 15px rgba(17,20,51,.02)}
.legal-toc-box h4{font-family:"Manrope",sans-serif;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--navy);margin:0 0 16px;font-weight:800}
.legal-toc-nav{display:flex;flex-direction:column;gap:6px}
.legal-toc-nav a{display:block;padding:7px 10px;border-radius:8px;font-size:13.5px;color:#64748b;text-decoration:none;transition:all .15s ease}
.legal-toc-nav a:hover{background:#f1f5f9;color:var(--teal);font-weight:700;padding-left:14px}
.legal-dpo-callout{background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:22px;color:#1e3a8a}
.dpo-tag{display:inline-block;background:#3b82f6;color:#fff;font-size:10px;font-weight:800;letter-spacing:1px;padding:2px 8px;border-radius:4px;margin-bottom:10px}
.legal-dpo-callout strong{display:block;font-family:"Manrope",sans-serif;font-size:15px;margin-bottom:6px;color:#1e3a8a}
.legal-dpo-callout p{font-size:13px;line-height:1.5;color:#3b82f6;margin:0 0 14px}
.btn-outline-dark{display:inline-block;background:#fff;border:1px solid #93c5fd;color:#1d4ed8;font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:8px;text-decoration:none;transition:all .15s ease}
.btn-outline-dark:hover{background:#1d4ed8;color:#fff;border-color:#1d4ed8}

/* Conteúdo Principal */
.legal-content{background:#fff;border:1px solid var(--line);border-radius:20px;padding:45px 50px;box-shadow:0 6px 24px rgba(17,20,51,.03);line-height:1.75}
.legal-section{margin-bottom:50px;padding-bottom:45px;border-bottom:1px solid var(--line)}
.legal-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.legal-section h2{font-family:"Manrope",sans-serif;font-size:24px;color:var(--navy);letter-spacing:-.8px;margin:0 0 18px;font-weight:800}
.legal-section h3{font-family:"Manrope",sans-serif;font-size:18px;color:#334155;margin:24px 0 10px;font-weight:700}
.legal-section p{font-size:15px;color:#475569;margin-bottom:16px}
.legal-section a:not(.btn){color:var(--teal);text-decoration:underline;font-weight:600}
.legal-section a:not(.btn):hover{color:var(--navy)}
.legal-cta-actions .btn{text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center}
.legal-cta-actions .btn-primary{background:var(--teal)!important;color:#fff!important;font-weight:700}
.legal-cta-actions .btn-primary:hover{background:#0fa499!important;color:#fff!important}
.legal-cta-actions .btn-outline{border:1px solid #94a3b8!important;color:var(--navy)!important;font-weight:700}
.legal-cta-actions .btn-outline:hover{border-color:var(--teal)!important;color:var(--teal)!important}

.legal-bullets{margin:14px 0 20px 20px;padding:0}
.legal-bullets li{font-size:14.5px;color:#475569;margin-bottom:10px;line-height:1.65}
.legal-bullets li strong{color:var(--navy)}

/* Tabelas e Caixas de Informação */
.legal-info-table{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:18px 22px;margin:20px 0}
.info-row{display:flex;padding:10px 0;border-bottom:1px solid #edf2f7}
.info-row:last-child{border-bottom:0}
.info-label{width:220px;font-weight:700;font-size:14px;color:var(--navy);flex-shrink:0}
.info-val{font-size:14px;color:#334155}

/* Princípios Grid */
.principles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:22px 0}
.principle-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px}
.principle-item strong{display:block;font-size:14px;color:var(--navy);margin-bottom:6px;font-family:"Manrope",sans-serif}
.principle-item span{font-size:13px;line-height:1.55;color:#64748b}

/* Aviso Destaque */
.legal-notice-box{background:#fffbeb;border-left:4px solid #f59e0b;border-radius:0 12px 12px 0;padding:18px 20px;margin:24px 0}
.legal-notice-box strong{display:block;color:#92400e;font-size:14.5px;margin-bottom:6px}
.legal-notice-box p{color:#78350f;font-size:13.5px;margin:0;line-height:1.6}

/* Tabela de Finalidades e Bases Legais */
.legal-table-responsive{overflow-x:auto;margin:25px 0;border-radius:14px;border:1px solid #e2e8f0}
.legal-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}
.legal-table th{background:#f1f5f9;color:var(--navy);padding:14px 18px;font-weight:800;font-family:"Manrope",sans-serif;border-bottom:2px solid #cbd5e1}
.legal-table td{padding:14px 18px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:top;line-height:1.6}
.legal-table tr:last-child td{border-bottom:0}
.legal-table tr:hover td{background:#fafafa}

/* Direitos Grid (Art. 18) */
.rights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}
.right-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:20px;position:relative}
.right-num{position:absolute;top:14px;right:16px;font-size:20px;font-weight:800;color:#cbd5e1;font-family:"Manrope",sans-serif}
.right-card strong{display:block;font-family:"Manrope",sans-serif;font-size:15px;color:var(--navy);margin:10px 0 8px}
.right-card p{font-size:13px;line-height:1.55;color:#64748b;margin:0}

/* Cookies e DPO Cards */
.cookie-types{display:flex;flex-direction:column;gap:14px;margin:20px 0}
.cookie-type-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px}
.cookie-type-item strong{display:block;font-size:14.5px;color:var(--navy);margin-bottom:6px}
.cookie-type-item p{font-size:13.5px;color:#64748b;margin:0;line-height:1.6}

.dpo-contact-card{background:linear-gradient(135deg,#0d1029 0%,#1a214d 100%);color:#fff;border-radius:18px;padding:32px 36px;margin:25px 0;box-shadow:0 8px 30px rgba(13,16,41,.15)}
.dpo-badge{display:inline-block;background:rgba(125,217,213,.2);color:#7dd9d5;border:1px solid rgba(125,217,213,.3);font-size:11px;font-weight:800;letter-spacing:1px;padding:4px 10px;border-radius:20px;margin-bottom:12px}
.dpo-contact-header h3{font-family:"Manrope",sans-serif;font-size:24px;color:#fff;margin:0 0 6px}
.dpo-contact-header p{color:#94a3b8;font-size:14px;margin:0 0 20px}
.dpo-contact-body p{color:#e2e8f0;font-size:14.5px;margin:10px 0}
.dpo-contact-body a{color:#7dd9d5;font-weight:700}
.dpo-contact-footer{border-top:1px solid rgba(255,255,255,.1);margin-top:20px;padding-top:14px}
.dpo-contact-footer small{color:#94a3b8;font-size:12px}

.legal-cta-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:26px;text-align:center;margin-top:35px}
.legal-cta-box p{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:18px}
.legal-cta-actions{display:flex;justify-content:center;gap:14px}

/* Responsividade para Telas Menores */
@media(max-width:960px){
  .legal-layout{grid-template-columns:1fr}
  .legal-sidebar{position:static;margin-bottom:30px}
  .legal-summary-cards{grid-template-columns:1fr}
  .rights-grid{grid-template-columns:repeat(2,1fr)}
  .lgpd-banner-inner{flex-direction:column;align-items:stretch;gap:16px}
  .lgpd-banner-actions{justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:640px){
  .legal-header{padding:30px 20px}
  .legal-content{padding:30px 20px}
  .info-row{flex-direction:column;gap:4px}
  .info-label{width:auto}
  .principles-grid{grid-template-columns:1fr}
  .rights-grid{grid-template-columns:1fr}
  .dpo-contact-card{padding:24px 20px}
  .legal-cta-actions{flex-direction:column}
}
