/*
Theme Name: Connectlens
Theme URI: https://connectlens.com.br
Author: Connectlens
Description: Tema institucional oficial da Connectlens, com áreas para consumidores e profissionais.
Version: 1.0.0
Text Domain: connectlens
*/

@font-face{font-family:Pitagon;src:url('assets/fonts/PitagonSansText-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Pitagon;src:url('assets/fonts/PitagonSansText-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Pitagon;src:url('assets/fonts/PitagonSansText-Light.ttf') format('truetype');font-weight:300;font-display:swap}:root{--navy:#003c5a;--teal:#4dbfb7;--ice:#edf7f6;--ink:#003c5a;--muted:#58717d;--line:#d6e5e7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Pitagon,Arial,sans-serif;background:#fff}a{text-decoration:none;color:inherit}button,input{font:inherit}.site-header{height:88px;display:flex;align-items:center;gap:42px;padding:0 5vw;border-bottom:1px solid rgba(255,255,255,.16);position:absolute;z-index:5;width:100%;color:#fff}.brand{width:182px;display:block}.brand img{width:100%;height:auto;display:block}.site-header nav{display:flex;gap:28px;font-size:13px;margin:auto}.site-header nav a{opacity:.8}.nav-cta{border:1px solid rgba(255,255,255,.5);padding:12px 18px;border-radius:24px}.hero{min-height:720px;background:var(--navy);display:grid;grid-template-columns:1.05fr .95fr;color:#fff;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;inset:0;background:url('assets/images/pattern.png') center/720px;opacity:.025}.hero-copy{padding:170px 4vw 70px 7vw;z-index:2}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;margin-bottom:24px;color:#8bdad4}.hero h1,.section h2,.finder h2,.partner h2{font-size:clamp(42px,4.5vw,70px);line-height:1.03;letter-spacing:-2.8px;margin:0;font-weight:300}.hero h1 strong,.section h2 strong{font-weight:600;color:var(--teal)}.hero-copy>p{font-size:17px;line-height:1.7;max-width:580px;color:#c2d5dc;margin:30px 0}.actions{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:25px;padding:17px 23px;border-radius:28px;font-size:13px;font-weight:600;border:0;cursor:pointer}.primary{background:var(--teal);color:var(--navy)}.ghost{border:1px solid #78929f}.trust{display:flex;margin-top:70px;gap:42px}.trust div{display:grid;gap:4px}.trust strong{font-size:21px}.trust span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#91a9b4}.hero-visual{position:relative;background:radial-gradient(circle at 50% 48%,#0b7483,#07516c 30%,#003c5a 67%)}.lens{width:390px;height:390px;border-radius:50%;position:absolute;top:145px;left:13%;background:radial-gradient(circle at 60% 35%,rgba(255,255,255,.75),rgba(77,191,183,.22) 30%,rgba(0,60,90,.16) 60%);box-shadow:inset -25px -20px 60px rgba(0,43,64,.4),0 35px 80px rgba(0,0,0,.35);border:2px solid rgba(202,255,250,.42);transform:perspective(500px) rotateY(-20deg)}.lens:after{content:"";display:block;width:70%;height:30%;margin:42px;background:rgba(255,255,255,.18);filter:blur(15px);transform:rotate(-28deg);border-radius:50%}.orbit{position:absolute;border:1px solid rgba(106,218,211,.2);border-radius:50%;width:580px;height:580px;top:45px;left:-30px}.orbit.two{width:760px;height:760px;top:-45px;left:-120px}.audience{padding:24px 7vw;background:var(--ice);display:flex;align-items:center;gap:28px}.audience a{padding:12px 20px;border-radius:24px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:600}.audience a:first-of-type{background:var(--navy);color:#fff}.section{padding:100px 7vw}.intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:50px;padding-bottom:45px}.intro h2{font-size:clamp(38px,4vw,58px)}.intro p,.technology p{color:var(--muted);line-height:1.8}.cards{padding-top:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);padding:22px;min-height:390px;border-radius:18px;display:flex;flex-direction:column}.card-art{height:160px;background:var(--ice);display:grid;place-items:center;border-radius:12px;color:var(--teal);font-size:90px}.card small{color:#168e91;letter-spacing:2px;text-transform:uppercase;margin-top:24px}.card h3{font-size:23px;margin:10px 0}.card p{font-size:13px;color:var(--muted);line-height:1.7}.card a{margin-top:auto;border-top:1px solid var(--line);padding-top:17px;font-size:12px;font-weight:600}.finder{background:var(--navy);color:#fff;padding:100px 7vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.finder p{color:#b7cbd2;line-height:1.7}.needs{display:grid;grid-template-columns:1fr 1fr;gap:9px}.needs button{border:1px solid #34677a;background:#0a4b67;color:#c3d4da;padding:16px;text-align:left;border-radius:10px;cursor:pointer}.needs button.active{border-color:var(--teal);background:#0b6175;color:#fff}.result{margin-top:20px;border-left:3px solid var(--teal);background:#0a4b67;padding:20px}.technology{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.brand-panel{height:460px;background:var(--ice) url('assets/images/symbol.png') center/55% no-repeat;border-radius:18px}.technology ul{list-style:none;padding:0}.technology li{border-top:1px solid var(--line);padding:15px 0}.technology li b{color:#168e91;margin-right:20px}.partner{background:#04506d;color:#fff;padding:95px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.partner p{color:#c1d4da;line-height:1.7}.partner-list{display:grid}.partner-list span{border-bottom:1px solid #347289;padding:22px}.partner-list b{color:var(--teal);margin-right:20px}.signup{background:var(--ice);display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.lead-form{background:#fff;padding:28px;border:1px solid var(--line);border-radius:18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lead-form label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px}.lead-form input,.lead-form select{display:block;width:100%;border:0;border-bottom:1px solid #b9c6cf;padding:12px 0;margin-top:5px;background:#fff}.consent{display:flex!important;gap:8px;margin:22px 0;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}.consent input{width:auto;margin:0}.success{padding:15px;background:#e4f7f3;border-radius:10px;margin-bottom:18px}.site-footer{background:#002f47;color:#fff;padding:70px 7vw 30px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.site-footer p{color:#a8c0c9;max-width:360px}.site-footer nav{display:grid;gap:12px;color:#b9cbd1;font-size:12px}.copyright{grid-column:1/-1;border-top:1px solid #1b5267;padding-top:22px;color:#7897a3;font-size:10px}.whatsapp{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:24px;z-index:10}@media(max-width:900px){.site-header nav{display:none}.hero{grid-template-columns:1fr}.hero-visual{height:480px}.intro,.finder,.technology,.partner,.signup{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}}@media(max-width:600px){.site-header{padding:0 6vw}.brand{width:150px}.hero-copy{padding:130px 6vw 60px}.hero-visual{height:390px}.lens{width:270px;height:270px;top:65px}.trust{gap:18px}.audience{align-items:stretch;flex-direction:column}.section,.finder,.partner{padding:72px 6vw}.cards,.needs,.fields{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}}
/* Página exclusiva de produtos */
body.home .product-catalog, body.home .treatments { display:none; }
body.home .products-page .treatments { display:grid; }
.products-page{background:#f4f9f8;color:#063f59;min-height:100vh}
.products-hero{padding:160px max(5vw,40px) 72px;background:radial-gradient(circle at 85% 20%,#087f8d 0,transparent 28%),linear-gradient(135deg,#003f58,#00667b);color:#fff}
.products-hero h1{font-size:clamp(42px,6vw,76px);line-height:1.02;margin:18px 0 24px;max-width:900px}
.products-hero h1 strong{color:#7ed4d0}.products-hero p{max-width:760px;font-size:18px;line-height:1.7;color:#d7eff0}
.products-catalog{padding:54px max(4vw,32px) 96px}.products-list{display:grid;gap:28px;margin-top:34px;max-width:1440px;margin-inline:auto}
.product-detail{display:block;background:#fff;border:1px solid #cee2e4;border-radius:26px;overflow:hidden;box-shadow:0 12px 34px rgba(0,63,88,.07)}
.product-detail figure{margin:0;background:#edf6f5;display:flex;flex-direction:column;justify-content:center;min-height:420px;padding:26px}
.product-detail figure img{width:100%;max-height:360px;object-fit:contain;border-radius:16px;background:#fff}
.product-detail figcaption{text-align:center;color:#527782;font-size:12px;margin-top:12px}
.product-detail-copy{padding:42px 46px}.product-detail-copy>small{color:#008894;letter-spacing:.14em;font-weight:700}.product-detail-copy h2{font-size:34px;margin:8px 0 12px;color:#00445f}.product-summary{font-size:17px;line-height:1.7;color:#4c6b76;max-width:1000px}.product-detail-copy h3{font-size:16px;margin:30px 0 14px;text-transform:uppercase;letter-spacing:.08em}
.benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.benefit-grid div{padding:13px 15px;background:#f3f8f7;border-radius:12px;border-left:3px solid #00a0a4}.benefit-grid strong,.benefit-grid span{display:block}.benefit-grid strong{font-size:14px;color:#00445f}.benefit-grid span{font-size:12px;line-height:1.45;color:#607b84;margin-top:4px}
.product-contact{display:inline-block;margin-top:24px;color:#008b96;font-weight:700;text-decoration:none}.products-cta{text-align:center;padding:76px 24px;background:#e1f1ef}.products-cta h2{font-size:38px;margin:0 0 12px}.products-cta p{margin:0 0 26px}
@media(max-width:850px){.products-hero{padding:130px 24px 52px}.products-catalog{padding:35px 16px 65px}.product-detail{grid-template-columns:1fr}.product-detail figure{min-height:280px}.product-detail-copy{padding:28px 22px}.product-detail-copy h2{font-size:28px}.benefit-grid{grid-template-columns:1fr}}
.footer-cnpj{margin-top:14px;font-size:14px;letter-spacing:.02em;color:#d4e8e9}.footer-cnpj strong{color:#fff}
.german-tech-badge{display:inline-flex;align-items:center;gap:13px;max-width:390px;padding:13px 16px;border:1px solid #c8dcdf;border-radius:10px;background:#f8fbfb;color:#073f59}.german-tech-flag{width:30px;height:18px;flex:0 0 auto;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.1)}.german-tech-badge span{display:grid;gap:3px}.german-tech-badge strong{font-size:13px;line-height:1.1;letter-spacing:1.7px}.german-tech-badge small{font-size:10px;line-height:1.35;color:#55717b}.german-tech-badge--dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff}.german-tech-badge--dark small{color:#c5dadd}
.german-technology{display:grid;grid-template-columns:.9fr 1.1fr;min-height:620px;background:#f5faf9}.german-tech-visual{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:28px;padding:70px 7vw;background:linear-gradient(145deg,#003c5a,#075e72);color:#fff}.german-tech-visual>p{position:relative;z-index:2;margin:0;font-size:28px;line-height:1.3;font-weight:300}.german-tech-visual>p strong{color:#6ed4cd}.german-tech-visual .german-tech-badge{position:relative;z-index:2}.precision-rings{position:absolute;inset:0}.precision-rings span{position:absolute;border:1px solid rgba(112,220,212,.22);border-radius:50%;aspect-ratio:1}.precision-rings span:nth-child(1){width:520px;left:-180px;top:-140px}.precision-rings span:nth-child(2){width:360px;right:-130px;top:80px}.precision-rings span:nth-child(3){width:220px;left:42%;bottom:-110px}.german-tech-copy{padding:90px 7vw;align-self:center}.german-tech-copy h2{font-size:clamp(38px,4vw,60px);line-height:1.04;letter-spacing:-2px;margin:0 0 28px;font-weight:300}.german-tech-copy>p{max-width:720px;color:var(--muted);font-size:16px;line-height:1.8}.german-tech-complement{padding-left:18px;border-left:3px solid var(--teal);font-weight:600;color:var(--navy)!important}.german-tech-copy .button{margin-top:16px}.product-detail .german-tech-badge{margin:22px 0 0}.footer-tech{font-size:12px;line-height:1.55;padding-left:12px;border-left:2px solid var(--teal)}
@media(max-width:900px){.german-technology{grid-template-columns:1fr}.german-tech-visual{min-height:420px}.german-tech-copy{padding:72px 6vw}}
@media(max-width:600px){.german-tech-visual{min-height:350px;padding:54px 6vw}.german-tech-copy{padding:62px 6vw}.german-tech-badge{width:100%;max-width:100%;padding:12px}.german-tech-badge strong{font-size:12px;letter-spacing:1.25px}.german-tech-visual>p{font-size:24px}}
