
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f4fa;--paper:#fff;--ink:#242238;--muted:#727080;--line:#e2e0eb;--violet:#6250ce;--lavender:#e5dff8;--lime:#dae7b0;--dark:#242137;--radius:22px;--max:1280px;scroll-behavior:smooth;scroll-padding-top:110px}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 'DM Sans',sans-serif}body.locked{overflow:hidden}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:'Manrope',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9f8af1;outline-offset:5px}button{border:0;background:none}img{max-width:100%;display:block;object-fit:cover}svg{display:block}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;z-index:100;padding:12px;background:var(--ink);color:#fff}.skip:focus{top:15px}.label{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:9px}.label > cp-enfeite[data-pos="antes"]{content:'';width:6px;height:6px;background:currentColor;border-radius:50%}.muted{color:var(--muted)}.arrow{font-size:19px;line-height:1}.button{display:inline-flex;gap:19px;align-items:center;justify-content:center;min-height:52px;padding:12px 23px;border-radius:9px;border:1px solid var(--line);font-size:12px;font-weight:600;background:var(--paper);transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--violet);border-color:var(--violet);color:#fff}.button.dark{background:var(--dark);color:#fff;border-color:var(--dark)}.button.light{background:var(--lime);color:var(--dark);border-color:var(--lime)}.button.text{background:transparent;border-color:transparent;padding-inline:0}.pill{font-size:10px;display:inline-flex;border-radius:20px;padding:5px 11px;border:1px solid var(--line);gap:6px;align-items:center}.header{height:92px;display:flex;align-items:center;position:sticky;top:0;z-index:30;background:#f5f4faf2;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;gap:10px;align-items:center;font:800 28px 'Manrope',sans-serif;letter-spacing:-1.4px}.brand svg{width:31px;height:31px;color:var(--violet)}.nav{display:flex;align-items:center;gap:30px;margin-left:auto}.nav a{font-size:12px;color:var(--muted)}.nav a:hover,.nav a.active{color:var(--violet)}.header .button{min-height:43px;font-size:11px;padding:10px 17px;margin-left:14px}.mobile-menu{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:8px;font-size:22px}.hero{padding:72px 0 60px}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:55px;align-items:center}.hero .label{color:var(--violet);margin-bottom:25px}h1{font-size:clamp(56px,6.35vw,88px);line-height:1.08;letter-spacing:-5.7px;font-weight:600}h1 em{font-style:normal;color:var(--violet)}.hero-copy>p{max-width:370px;color:var(--muted);font-size:14px;line-height:1.8;margin-top:27px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:31px}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:42px;font-size:10px;color:var(--muted)}.hero-proof .tiny{display:flex;padding-left:0}.hero-proof .tiny span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e3d4c5;border:2px solid var(--bg);font-size:8px;color:#5d4f4a;margin-left:-6px}.hero-proof .tiny span:first-child{margin:0;background:#b7c8b2}.hero-proof .tiny span:last-child{background:#d1c1eb}.hero-proof strong{color:var(--ink);font-weight:500;display:block}.hero-art{height:525px;position:relative;background:var(--lavender);border-radius:24px;overflow:hidden}.hero-art > cp-enfeite[data-pos="antes"],.hero-art > cp-enfeite[data-pos="depois"]{content:'';position:absolute;width:480px;height:480px;border:1px solid #bbade755;border-radius:50%;left:-90px;top:-60px}.hero-art > cp-enfeite[data-pos="depois"]{width:360px;height:360px;left:-30px;top:0}.hero-orbit{position:absolute;width:228px;height:228px;border:1px solid #b0a0d6;border-radius:50%;right:-60px;bottom:-70px}.hero-star{position:absolute;top:25px;right:29px;font-size:70px;line-height:1;color:var(--violet);font-weight:400}.hero-main-photo{position:absolute;inset:90px 40px 80px 50px;border-radius:13px;overflow:hidden;transform:rotate(-5deg);background:#384d3d}.hero-main-photo img{width:100%;height:100%}.photo-caption{position:absolute;inset:auto 0 45px;padding:45px 19px 17px;color:#fff;background:linear-gradient(transparent,#111a24bb);font-size:10px}.photo-caption strong{display:block;font:600 25px 'Manrope',sans-serif;letter-spacing:-1px;margin-bottom:3px}.floating-note{position:absolute;left:22px;bottom:30px;z-index:2;padding:18px 21px;background:var(--paper);border-radius:12px;box-shadow:0 13px 40px #27213717;display:flex;align-items:center;gap:13px;transform:rotate(3deg)}.floating-note .spark{font-size:26px;color:var(--violet);background:#eeeafa;border-radius:9px;padding:0 9px}.floating-note strong{font-size:12px;display:block}.floating-note small{font-size:10px;color:var(--muted)}.availability{position:absolute;right:23px;top:26px;color:#62577e;font-size:9px;letter-spacing:.6px}.idea-tag{position:absolute;right:10px;bottom:135px;font-size:11px;padding:10px 15px;background:var(--lime);border:1px solid #cad894;border-radius:6px;transform:rotate(7deg);z-index:2}.partners{display:flex;align-items:center;gap:50px;padding:24px 0 46px;border-bottom:1px solid var(--line)}.partners>p{color:var(--muted);font-size:10px;max-width:125px;line-height:1.6}.partner-logos{display:flex;justify-content:space-between;align-items:center;flex:1;gap:25px;color:#777285}.partner-logos span{font:600 20px 'Manrope',sans-serif;letter-spacing:-.8px}.partner-logos span:nth-child(2){font-family:Georgia,serif;font-style:italic;font-size:25px}.partner-logos span:nth-child(3){font-size:16px;letter-spacing:4px;font-weight:500}.partner-logos span:nth-child(4){font-size:22px;letter-spacing:-1.8px}.partner-logos span:last-child{font-size:17px;letter-spacing:1px}.section{padding:95px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}.section-heading .label{color:var(--violet);margin-bottom:18px}h2{font-size:47px;line-height:1.12;letter-spacing:-2.4px;font-weight:500}.section-heading p{max-width:315px;font-size:13px;line-height:1.8;color:var(--muted)}.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:28px}.filter{border:1px solid transparent;background:transparent;border-radius:30px;font-size:11px;padding:8px 16px;color:var(--muted)}.filter.active{background:var(--dark);color:#fff}.filter:not(.active):hover{border-color:var(--line)}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 25px}.project{min-width:0}.project[hidden]{display:none}.project-open{display:block;width:100%;padding:0;text-align:left}.project-cover{height:330px;border-radius:16px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.project-cover>*{transition:transform .4s}.project-open:hover .project-cover>.mocksite{transform:translateY(-8px) rotate(0deg)}.project-cover.lume{background:#e4def5}.project-cover.aflora{background:#d9e0c9}.project-cover.nexo{background:#dedff0}.project-cover.casa{background:#e7dacf}.project-cover .tag{position:absolute;left:18px;top:17px;background:#fff9;border:1px solid #fff9;border-radius:20px;padding:5px 10px;font-size:9px;backdrop-filter:blur(10px);z-index:2}.project-cover .open-dot{position:absolute;bottom:17px;right:17px;background:#fff;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-size:18px;z-index:2}.project-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:17px 2px 0}.project-meta h3{font-size:17px;font-weight:600;letter-spacing:-.6px;margin-bottom:4px}.project-meta p{font-size:11px;color:var(--muted)}.project-meta .year{color:var(--muted);font-size:10px;padding-top:4px}.mocksite{position:relative;width:82%;height:81%;background:#fffdf9;border-radius:7px;box-shadow:0 10px 38px #24213712;transform:rotate(-4deg);overflow:hidden;color:#32303d}.mocksite nav{padding:11px 15px;border-bottom:1px solid #ededeb;display:flex;justify-content:space-between;font-size:6px;align-items:center}.mocksite nav b{font:700 15px 'Manrope',sans-serif;letter-spacing:-1px}.mocksite .mock-body{padding:20px;display:grid;grid-template-columns:1fr 43%;gap:15px;align-items:center}.mocksite .mock-body h4{font-size:25px;line-height:1.1;letter-spacing:-1.4px;font-weight:600;margin:7px 0}.mocksite .mock-body p{font-size:6px;line-height:1.6;color:#85818b}.mocksite img{width:100%;height:145px;border-radius:4px}.mocksite .mock-body small{font-size:6px;letter-spacing:.7px;text-transform:uppercase}.mocksite .mock-button{font-size:6px;border-radius:20px;background:#8b756e;color:white;padding:6px 10px;display:inline-block;margin-top:12px}.mocksite .miniwords{display:flex;gap:10px;justify-content:space-between;border-top:1px solid #e8e5df;padding:10px 20px;font-size:6px;color:#8e8492}.aflora .mocksite{background:#f5f8e7;color:#2d4e3c;transform:rotate(3deg)}.aflora .mocksite .mock-body h4{font-family:Georgia,serif;font-weight:400;font-size:29px}.aflora .mocksite .mock-button{background:#4c7055}.nexo .mocksite{background:#222b43;color:#fff;transform:rotate(3deg)}.nexo .mocksite nav{border-color:#ffffff14}.nexo .mocksite .mock-body{grid-template-columns:1fr;padding:20px}.nexo .mocksite .mock-body h4{font-size:24px}.nexo .mocksite .chart{height:96px;display:flex;align-items:flex-end;gap:11px;margin-top:15px;padding:14px 16px 0;background:#ffffff09;border-radius:6px}.chart i{height:60%;flex:1;background:#b4b0ef;border-radius:3px 3px 0 0}.chart i:nth-child(2){height:35%;background:#d4dfa7}.chart i:nth-child(3){height:80%}.chart i:nth-child(4){height:48%;background:#d4dfa7}.chart i:nth-child(5){height:95%}.casa .mocksite{background:#f3ebe2;color:#5b4837}.casa .mocksite .mock-body h4{font-family:Georgia,serif;font-weight:400;font-size:27px}.projects-foot{display:flex;align-items:center;justify-content:space-between;margin-top:38px;padding-top:22px;border-top:1px solid var(--line)}.projects-foot p{color:var(--muted);font-size:11px}.services{background:var(--dark);color:#f7f5fd;border-radius:28px;padding:62px;position:relative;overflow:hidden}.services .section-heading .label{color:#c3b3ff}.services .section-heading p{color:#b4afc4}.services h2{max-width:500px}.service-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #ffffff20;margin-top:42px;gap:20px}.service-tab{text-align:left;padding:20px 0 22px;color:#9e97b1;font-size:12px;border-bottom:2px solid transparent}.service-tab span{font-size:10px;opacity:.7;margin-right:18px}.service-tab[aria-selected=true]{color:#fff;border-color:#c3b3ff}.service-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding:40px 0 5px;min-height:220px}.service-panel h3{font-size:27px;font-weight:500;letter-spacing:-1px;margin-bottom:17px}.service-panel p{font-size:13px;color:#b4afc4;max-width:460px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-content:start;padding-top:10px;font-size:11px;color:#ddd7ee}.service-list span{border-bottom:1px solid #ffffff15;padding-bottom:12px}.service-list span > cp-enfeite[data-pos="antes"]{content:'↗';color:#cfef91;margin-right:10px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-image{height:530px;position:relative;border-radius:18px;overflow:hidden;background:var(--lavender)}.about-image>img{width:100%;height:100%;filter:saturate(.7)}.about-caption{position:absolute;left:23px;bottom:23px;background:#ffffffed;backdrop-filter:blur(8px);padding:17px 20px;border-radius:9px;font-size:11px}.about-caption strong{font-size:15px;display:block}.about-copy .label{color:var(--violet);margin-bottom:22px}.about-copy h2{font-size:44px;margin-bottom:25px}.about-copy>p{font-size:13px;color:var(--muted);margin-bottom:17px;line-height:1.9}.values{display:flex;flex-wrap:wrap;gap:7px;margin-top:28px}.values span{border:1px solid #d7d2e2;border-radius:20px;padding:6px 12px;font-size:10px}.about-copy .signature{font:500 17px 'Manrope',sans-serif;letter-spacing:-.5px;margin-top:32px}.about-copy .signature small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:0;color:var(--muted);margin-top:5px}.process{padding-top:20px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:48px}.step{border-top:1px solid #d9d4e5;padding-top:22px}.step .number{font-size:11px;color:var(--violet);display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.step .number b{font-size:20px;font-weight:400}.step h3{font-size:17px;letter-spacing:-.6px;margin-bottom:13px}.step p{font-size:12px;color:var(--muted);line-height:1.8}.quote-section{padding:58px 0 85px}.quote{position:relative;border-radius:22px;background:#e7e1f4;padding:55px 75px;display:grid;grid-template-columns:1fr 140px;gap:70px;align-items:center}.quote .mark{font:75px/1 Georgia,serif;color:#9180b8;height:43px}.quote blockquote{font:500 29px/1.45 'Manrope',sans-serif;letter-spacing:-1.1px;margin:0 0 25px;max-width:820px}.quote cite{font-style:normal;font-size:11px;color:#827891}.quote cite strong{color:var(--ink);display:block;margin-bottom:3px}.quote-orbit{width:130px;height:130px;border:1px solid #bcacd5;border-radius:50%;display:grid;place-items:center;position:relative;transform:rotate(-25deg)}.quote-orbit > cp-enfeite[data-pos="antes"]{content:'';width:85px;height:85px;border:1px solid #bcacd5;border-radius:50%;position:absolute}.quote-orbit > cp-enfeite[data-pos="depois"]{content:'✦';font-size:55px;color:var(--violet);position:absolute;right:-13px;top:0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-copy .label{color:var(--violet);margin-bottom:18px}.faq-copy h2{max-width:320px}.faq-copy p{font-size:12px;color:var(--muted);margin-top:24px;max-width:260px}.faq-copy a{color:var(--violet);text-decoration:underline;text-underline-offset:4px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:23px 0;gap:15px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary > cp-enfeite[data-pos="depois"]{content:'+';font-size:21px;font-weight:400;color:var(--violet)}.faq details[open] summary > cp-enfeite[data-pos="depois"]{content:'−'}.faq details p{color:var(--muted);font-size:12px;line-height:1.9;padding:0 28px 24px 0}.contact{padding-bottom:65px}.contact-box{background:var(--violet);color:#fff;border-radius:25px;padding:65px;display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-box .label{color:#d4cbf7;margin-bottom:23px}.contact-box h2{font-size:54px;letter-spacing:-3px}.contact-box h2 span{color:#d9e9a5}.contact-copy>p{font-size:13px;line-height:1.8;color:#d7cef1;margin:25px 0 32px;max-width:350px}.contact-email{font-size:20px;letter-spacing:-.4px;display:block;border-bottom:1px solid #a18ddf;padding-bottom:15px;max-width:325px}.contact-email small{display:block;font-size:9px;letter-spacing:.3px;color:#d7cef1;margin-bottom:6px}.contact-tag{display:flex;align-items:center;gap:8px;font-size:10px;color:#d7cef1;margin-top:26px}.contact-tag > cp-enfeite[data-pos="antes"]{content:'';width:6px;height:6px;background:var(--lime);border-radius:50%}.contact-form{padding:0}.field{display:grid;gap:7px;font-size:11px;margin-bottom:17px}.field input,.field textarea,.field select{width:100%;min-width:0;border:1px solid #a18ddf;background:#ffffff08;border-radius:7px;color:#fff;padding:12px 13px;outline-color:var(--lime);font-size:12px}.field input::placeholder,.field textarea::placeholder{color:#c7bbeb}.field textarea{resize:vertical;min-height:105px}.field select option{color:var(--ink);background:#fff}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px}.form-foot small{font-size:9px;color:#d7cef1;max-width:180px}.form-foot .button{min-height:45px;font-size:11px;flex-shrink:0}.footer{padding:0 0 30px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:25px 0 35px}.footer-top p{font-size:11px;color:var(--muted);max-width:260px}.footer-links{display:flex;gap:24px;font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted);padding-top:23px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.footer .brand{font-size:25px}.backtop{display:flex;align-items:center;gap:9px}.backtop > cp-enfeite[data-pos="depois"]{content:'↑';font-size:18px}.empty{padding:40px;text-align:center;color:var(--muted)}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:20px;padding:0;width:min(820px,calc(100% - 32px));max-height:90vh;box-shadow:0 20px 120px #12102644}dialog::backdrop{background:#17132699;backdrop-filter:blur(6px)}.dialog-head{padding:20px 25px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-head h2{font-size:20px;letter-spacing:-.7px}.dialog-head button{font-size:26px;padding:0 5px}.dialog-body{padding:25px}.dialog-body .project-cover{height:370px;margin-bottom:25px}.dialog-body p{color:var(--muted);font-size:13px;margin-top:16px}.dialog-body .pill{color:var(--violet);border-color:#ddd4ef;background:#f5f1fd}.dialog-body h3{font-size:24px;letter-spacing:-1px;margin-top:23px}.dialog-foot{border-top:1px solid var(--line);padding:17px 25px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:var(--muted)}.message-preview{white-space:pre-wrap;background:var(--bg);padding:22px;border-radius:10px;font-size:13px;line-height:1.8;margin-top:20px}.cookie-note{font-size:11px;color:var(--muted);padding-top:14px}
@media(min-width:1600px){.hero{padding-top:85px}.hero-art{height:560px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.nav{gap:20px}.hero-grid{gap:30px}.hero{padding-top:55px}h1{font-size:65px;letter-spacing:-4px}.hero-art{height:460px}.hero-main-photo{inset:80px 30px 85px}.hero-star{font-size:55px}.hero-actions{gap:15px}.hero-actions .button{font-size:11px;padding:12px 17px}.project-cover{height:290px}.mocksite .mock-body{padding:15px}.mocksite .mock-body h4{font-size:22px}.mocksite img{height:125px}.services{padding:45px}.service-panel{gap:35px}.about-grid{gap:45px}.about-image{height:490px}.about-copy h2{font-size:39px}.quote{padding:45px;gap:35px}.quote blockquote{font-size:25px}.faq-grid{gap:50px}.contact-box{padding:45px;gap:45px}.contact-box h2{font-size:46px}.contact-email{font-size:18px}.form-foot{gap:10px}.form-foot small{font-size:8px}.partners{gap:30px}.partner-logos span{font-size:17px}.header .button{margin-left:0}}
@media(max-width:800px){.wrap{width:calc(100% - 44px)}.header{height:76px}.header .wrap{gap:15px}.brand{font-size:25px}.header .button{margin-left:auto}.mobile-menu{display:grid;place-items:center}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--bg);padding:22px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #24213708;gap:0}.nav.open{display:flex;flex-direction:column;align-items:stretch}.nav a{padding:14px 10px;font-size:15px}.hero-grid{grid-template-columns:1fr 1fr;gap:22px}h1{font-size:52px;letter-spacing:-3.5px}.hero-copy>p{font-size:12px}.hero-art{height:410px}.hero-main-photo{inset:90px 20px 85px}.hero-star{font-size:50px;top:28px}.floating-note{padding:12px;left:10px;bottom:25px;gap:9px}.floating-note strong{font-size:10px}.floating-note small{font-size:8px}.idea-tag{bottom:110px;font-size:9px}.hero-proof{margin-top:28px;font-size:9px}.hero-actions{flex-wrap:wrap;gap:8px}.hero-actions .button{min-height:45px}.hero .label{font-size:9px;letter-spacing:1px}.partners{padding-top:5px;gap:20px}.partners>p{font-size:9px}.partner-logos{gap:15px;flex-wrap:wrap;justify-content:space-around}.partner-logos span{font-size:14px}.partner-logos span:nth-child(2){font-size:20px}.partner-logos span:nth-child(3){font-size:13px}.partner-logos span:nth-child(4){font-size:19px}.partner-logos span:last-child{font-size:14px}.section{padding:70px 0}h2{font-size:38px;letter-spacing:-1.8px}.section-heading p{font-size:12px;max-width:240px}.project-cover{height:240px}.mocksite{height:82%;width:86%}.mocksite nav{padding:8px 10px}.mocksite nav b{font-size:12px}.mocksite nav>span{font-size:5px}.mocksite .mock-body{padding:12px;gap:8px}.mocksite .mock-body h4{font-size:19px;letter-spacing:-1px}.aflora .mocksite .mock-body h4,.casa .mocksite .mock-body h4{font-size:22px}.mocksite img{height:110px}.mocksite .mock-body p{font-size:5px}.mocksite .miniwords{padding:7px 12px;font-size:5px}.nexo .mocksite .mock-body{padding:12px}.nexo .mocksite .mock-body h4{font-size:20px}.nexo .mocksite .chart{height:80px}.services{padding:35px;border-radius:20px}.service-tabs{gap:12px;margin-top:25px}.service-tab{font-size:11px}.service-tab span{margin-right:8px}.service-panel{gap:30px;min-height:240px}.service-panel h3{font-size:23px}.service-panel p{font-size:12px}.service-list{font-size:10px;gap:13px}.about-grid{gap:35px}.about-image{height:470px}.about-copy h2{font-size:33px}.about-copy>p{font-size:12px}.steps{gap:20px}.step h3{font-size:15px}.step p{font-size:11px}.quote{padding:35px;grid-template-columns:1fr 95px;gap:30px}.quote blockquote{font-size:23px}.quote-orbit{width:90px;height:90px}.quote-orbit > cp-enfeite[data-pos="antes"]{width:60px;height:60px}.quote-orbit > cp-enfeite[data-pos="depois"]{font-size:42px}.faq-grid{grid-template-columns:1fr 1.2fr;gap:40px}.faq summary{font-size:12px}.contact-box{padding:35px;gap:30px}.contact-box h2{font-size:40px;letter-spacing:-2px}.contact-copy>p{font-size:12px}.contact-email{font-size:16px}.field-row{grid-template-columns:1fr;gap:0}.form-foot{align-items:flex-start;flex-direction:column}.form-foot small{font-size:9px;max-width:none}.form-foot .button{width:100%}.footer-top{gap:20px}.footer-links{gap:15px}.footer-top p{max-width:180px;font-size:10px}.contact{padding-bottom:40px}}
@media(max-width:600px){:root{scroll-padding-top:95px}.wrap{width:calc(100% - 36px)}.header{height:72px}.header .button{font-size:10px;min-height:38px;padding:8px 11px;gap:9px}.brand{font-size:23px;gap:7px}.brand svg{height:26px;width:26px}.mobile-menu{width:37px;height:37px;font-size:19px}.nav{top:71px}.hero{padding:42px 0 35px}.hero-grid{grid-template-columns:1fr;gap:38px}.hero .label{margin-bottom:24px;font-size:9px}h1{font-size:63px;letter-spacing:-4px;line-height:1.06}.hero-copy>p{font-size:13px;margin-top:24px;max-width:340px}.hero-actions{gap:21px;margin-top:26px}.hero-actions .button{font-size:11px;padding:11px 18px}.hero-proof{font-size:9px;margin-top:28px}.hero-art{height:440px}.hero-main-photo{inset:75px 35px 90px;transform:rotate(-5deg)}.hero-star{font-size:60px;top:18px;right:23px}.floating-note{left:20px;bottom:30px;padding:15px 18px}.floating-note strong{font-size:11px}.floating-note small{font-size:9px}.idea-tag{right:8px;bottom:120px}.partners{align-items:flex-start;gap:20px;padding:15px 0 32px;flex-direction:column}.partners>p{font-size:10px;max-width:none}.partner-logos{width:100%;gap:20px;justify-content:space-between}.partner-logos span:last-child{display:none}.partner-logos span{font-size:16px}.partner-logos span:nth-child(3){font-size:12px;letter-spacing:2px}.section{padding:58px 0}.section-heading{display:block;margin-bottom:28px}.section-heading .label{margin-bottom:18px}.section-heading p{margin-top:20px;max-width:320px;font-size:12px}h2{font-size:37px;letter-spacing:-2px}.filters{gap:1px;margin-bottom:23px}.filter{font-size:10px;padding:7px 12px}.projects{grid-template-columns:1fr;gap:30px}.project-cover{height:280px}.mocksite nav{padding:10px 13px}.mocksite nav b{font-size:13px}.mocksite .mock-body{padding:18px 15px;gap:13px}.mocksite .mock-body h4{font-size:23px}.mocksite .mock-body p{font-size:6px}.mocksite .mock-body small{font-size:6px}.aflora .mocksite .mock-body h4,.casa .mocksite .mock-body h4{font-size:27px}.mocksite img{height:126px}.mocksite .miniwords{padding:9px 15px}.project-meta h3{font-size:16px}.project-meta p{font-size:10px}.project-meta .year{font-size:9px}.projects-foot{gap:15px;align-items:start}.projects-foot p{font-size:10px;max-width:165px}.projects-foot .button{font-size:10px;min-height:42px;padding:9px 13px;gap:9px}.services{padding:31px 23px;border-radius:18px}.services h2{font-size:32px;letter-spacing:-1.7px}.services .section-heading p{font-size:12px}.service-tabs{grid-template-columns:1fr;gap:0;margin-top:20px;border:0}.service-tab{padding:16px 0;border-bottom:1px solid #ffffff20;font-size:12px}.service-tab[aria-selected=true]{border-bottom:1px solid #c3b3ff}.service-tab span{margin-right:20px}.service-panel{grid-template-columns:1fr;gap:15px;padding-top:28px;min-height:345px}.service-panel h3{font-size:23px}.service-panel p{font-size:12px}.service-list{font-size:10px;padding-top:8px}.about-grid{grid-template-columns:1fr;gap:35px}.about-image{height:420px;order:2}.about-copy h2{font-size:36px}.about-copy .label{margin-bottom:20px}.about-copy>p{font-size:13px}.about-copy .signature{margin-top:24px}.values{gap:6px}.values span{font-size:9px;padding:5px 10px}.about-caption{padding:14px 17px;left:17px;bottom:17px;font-size:10px}.about-caption strong{font-size:13px}.steps{grid-template-columns:1fr 1fr;gap:30px 22px;margin-top:33px}.step .number{margin-bottom:22px}.step h3{font-size:15px}.step p{font-size:11px}.quote-section{padding:0 0 55px}.quote{padding:30px 24px;grid-template-columns:1fr;gap:0}.quote blockquote{font-size:22px;letter-spacing:-.8px;line-height:1.5}.quote-orbit{display:none}.quote cite{font-size:10px}.quote .mark{font-size:65px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-copy h2{font-size:36px;max-width:none}.faq-copy p{max-width:none;font-size:12px;margin-top:17px}.faq summary{font-size:12px;padding:20px 0}.faq details p{font-size:12px}.contact{padding-top:30px;padding-bottom:35px}.contact-box{grid-template-columns:1fr;padding:33px 24px;gap:32px;border-radius:18px}.contact-box h2{font-size:44px;letter-spacing:-2.6px}.contact-box .label{font-size:9px}.contact-copy>p{font-size:12px;margin:22px 0 26px}.contact-email{font-size:19px;max-width:none}.contact-tag{font-size:9px;margin-top:20px}.field-row{grid-template-columns:1fr 1fr;gap:12px}.field{font-size:10px}.field input,.field select,.field textarea{padding:11px 10px;font-size:12px}.form-foot small{max-width:none}.form-foot{gap:15px}.form-foot .button{font-size:11px}.footer-top{align-items:start;flex-wrap:wrap;gap:20px;padding-bottom:25px}.footer-top p{font-size:11px;max-width:180px}.footer-links{width:100%;gap:25px;font-size:11px;padding-top:5px}.footer-bottom{font-size:8px;gap:20px;line-height:1.7}.footer-bottom span{max-width:225px}.dialog-body{padding:19px}.dialog-body .project-cover{height:260px}.dialog-head{padding:16px 19px}.dialog-head h2{font-size:17px}.dialog-foot{padding:15px 19px;flex-wrap:wrap;gap:12px}.dialog-foot .button{font-size:11px;min-height:40px}.dialog-body h3{font-size:22px}.dialog-body p{font-size:12px}}
@media(max-width:350px){h1{font-size:54px;letter-spacing:-3.5px}.hero-art{height:380px}.hero-main-photo{inset:80px 25px 80px}.hero-actions{gap:8px}.hero-actions .button{font-size:10px;padding:10px 13px}.hero-proof{gap:9px;font-size:8px}.brand{font-size:21px}.header .button{font-size:9px;padding:8px 9px}.header .wrap{gap:9px}.hero-main-photo .photo-caption strong{font-size:22px}.partner-logos{gap:15px}.partner-logos span:nth-child(4){font-size:17px}.project-cover{height:245px}.mocksite .mock-body h4{font-size:20px}.aflora .mocksite .mock-body h4,.casa .mocksite .mock-body h4{font-size:23px}.mocksite img{height:110px}.services h2{font-size:29px}.field-row{grid-template-columns:1fr;gap:0}.contact-box h2{font-size:40px}.footer-top p{max-width:150px;font-size:10px}.footer .brand{font-size:23px}.projects-foot p{max-width:140px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Websitesfy: menu do celular (o site original escondia o menu em telas pequenas) */
.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.menu-btn span{display:block;width:24px;height:2px;background:#111111;border-radius:2px;transition:transform .2s,opacity .2s}
.menu-mobile{display:none;position:fixed;inset:0;z-index:9;background:#FFFFFF;padding:84px 24px 24px;flex-direction:column;gap:6px;overflow:auto}
.menu-mobile a{display:flex;gap:14px;align-items:baseline;padding:14px 4px;border-bottom:1px solid rgba(0,0,0,.08);color:#111111;text-decoration:none;font-weight:700;font-size:1.15rem}
.menu-mobile a span{font-size:.75rem;letter-spacing:.14em;color:#F5F4FA}
.menu-mobile a i{font-style:normal}
@media (max-width:640px){.menu-btn{display:flex}}
body.menu-on{overflow:hidden}
body.menu-on .menu-mobile{display:flex}
body.menu-on header{z-index:11}
body.menu-on .menu-btn span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-on .menu-btn span:nth-child(2){opacity:0}
body.menu-on .menu-btn span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* Websitesfy: a logo é só a imagem (o nome fica escondido quando há logo) */
.cookies .btn,.privacidade .btn{background:#242238;color:#FFFFFF;border:0;border-radius:999px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
.cookies .btn--vazado,.privacidade .btn--vazado,.cookies .btn.btn--vazado{background:transparent;color:#242238;border:1.5px solid #242238}
.header__logo{display:inline-flex;align-items:center}
.header__logo.logo-sem-nome [data-logo-nome]{display:none}

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* formulário: a isca para robôs fica fora da tela; o aviso de envio aparece forte */
.campo--isca{ position:absolute !important; left:-9999px; width:1px; height:1px; overflow:hidden; }
.form .aviso--status{ opacity:1; font-size:.72rem; margin-top:10px; }
.creditos__vazio{ opacity:.7; }

/* links acadêmicos (contato e rodapé) e arquivos dos trabalhos */
.links-acad{ list-style:none; padding:0; margin:22px 0 0; display:flex; flex-wrap:wrap; gap:10px; }
.links-acad a{
  display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px;
  border:1px solid var(--linha-clara); color:var(--bege); font-size:.72rem; letter-spacing:.06em; transition:.3s var(--ease);
}
.links-acad a:hover{ background:var(--creme); color:var(--ocre); border-color:var(--creme); }
.rodape__links{ margin-top:14px !important; }
.rodape__links a{ display:inline-flex; align-items:center; gap:8px; }
.links-acad .is-vazio, .rodape__links .is-vazio{ opacity:.35; }
.artigo__acoes{ display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(30px,4vw,48px); }
.btn--vazado{ background:transparent; }
.trab__pdf{
  display:inline-block; margin-top:8px; font-size:.52rem; letter-spacing:.18em; padding:4px 7px; border-radius:2px;
  color:var(--ouro); border:1px solid rgba(var(--ouro-rgb),.45);
}

/* páginas novas: blocos em coluna de leitura, no ritmo do resto do site */
.blocos{ max-width:760px; margin-inline:auto; display:flex; flex-direction:column; gap:clamp(40px,5vw,64px); }
.bloco__titulo{ margin:0 0 16px; }
.bloco__corpo p{ font-size:1rem; line-height:1.75; }
.bloco--imagem{ margin-inline:calc(-1 * clamp(0px, 6vw, 110px)); }
.bloco__foto{ position:relative; margin:0; aspect-ratio:16/9; overflow:hidden; border-radius:2px; box-shadow:var(--s3); }
.bloco__foto img, .bloco__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.bloco__legenda{ margin:12px 0 0; font-size:.72rem; letter-spacing:.08em; color:var(--texto); opacity:.8; text-align:center; }
.bloco--citacao blockquote{ margin:0; padding:clamp(20px,3vw,36px) 0 clamp(20px,3vw,36px) clamp(22px,3vw,40px); border-left:2px solid var(--ouro); }
.bloco--citacao blockquote p{ font-family:var(--serif); font-size:clamp(1.35rem,2.4vw,1.9rem); line-height:1.35; color:var(--tinta); margin:0; }
.bloco--citacao cite{ display:block; margin-top:14px; font-style:normal; font-size:.66rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ouro); }
.bloco--botao{ text-align:center; }
.bloco--botao .bloco__titulo{ font-size:clamp(1.2rem,2vw,1.5rem); }
.bloco__galeria{ margin-bottom:22px; }
.bloco__vazio{ opacity:.6; font-style:italic; }

/* ===================================================== UCA: marca em texto
   Enquanto não há logo, o nome faz o papel dela. */
.marca-txt{ font-family:var(--serif); font-size:1.05rem; letter-spacing:.06em; line-height:1.15;
  text-transform:uppercase; display:inline-block; max-width:14ch; }
.header__logo .marca-txt{ color:var(--creme); max-width:none; white-space:nowrap; font-size:.92rem; letter-spacing:.14em; }
.rodape__logo .marca-txt{ color:var(--creme); font-size:1.15rem; margin-bottom:.8rem; }
.capa__marca .marca-txt{ color:var(--creme); font-size:1.3rem; max-width:none; }
@media (max-width:700px){
  .marca-txt{ font-size:.92rem; max-width:11ch; }
  .header__logo .marca-txt{ font-size:.72rem; letter-spacing:.1em; }
}

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* ---- Bloco "lista de itens": cinco formatos, um modelo de item só.
   Usa os tokens deste modelo, então ele nasce com a cara do site em vez de
   parecer coisa colada de fora. */
.bloco__lista{ margin-top:clamp(18px,2.4vw,30px); }
.bloco__lista--cartoes{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:clamp(14px,2vw,24px); }
.itl{ margin:0; }
.itl h3{ margin:0 0 6px; }
.itl__corpo p{ margin:0; }
.itl--cartao{ display:flex; flex-direction:column; gap:10px; }
.itl__foto{ margin:0; position:relative; aspect-ratio:3/2; overflow:hidden; background:var(--creme-2); }
.itl__foto img, .itl__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
/* pergunta e resposta: a sanfona é nativa do navegador, sem script */
.bloco__lista--perguntas{ border-top:1px solid var(--linha); }
.itl--pergunta{ border-bottom:1px solid var(--linha); padding:4px 0; }
.itl--pergunta summary{ cursor:pointer; padding:14px 0; list-style:none; display:flex; align-items:center; gap:10px; }
.itl--pergunta summary::-webkit-details-marker{ display:none; }
.itl--pergunta summary::after{ content:"+"; margin-left:auto; opacity:.5; font-size:1.2em; }
.itl--pergunta[open] summary::after{ content:"−"; }
.itl--pergunta .itl__corpo{ padding:0 0 16px; opacity:.85; }
.bloco__lista--precos{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:clamp(12px,1.8vw,20px); }
.itl--preco{ border:1px solid var(--linha); padding:clamp(16px,2vw,22px); display:flex; flex-direction:column; gap:8px; }
.itl--preco .itl__marca{ font-weight:700; font-size:clamp(1.3rem,2vw,1.7rem); color:var(--ouro); }
.bloco__lista--linha{ border-left:1px solid var(--linha); padding-left:clamp(16px,2.4vw,28px); }
.itl--linha{ position:relative; padding:0 0 clamp(18px,2.4vw,28px); }
.itl--linha .itl__marca{ display:block; font:600 10px/1 var(--sans); letter-spacing:.16em;
  text-transform:uppercase; color:var(--ouro); margin-bottom:5px; }
.itl--linha > cp-enfeite[data-pos="antes"]{ content:""; position:absolute; left:calc(clamp(16px,2.4vw,28px) * -1 - 4px);
  top:4px; width:7px; height:7px; border-radius:999px; background:var(--ouro); }
.bloco__lista--simples .itl--simples{ padding:14px 0; border-bottom:1px solid var(--linha); }

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* Imagem livre na seção. */
body > section { position: relative; }
.imagem-livre { position: absolute; z-index: 2; left: 8%; top: 8%; width: min(280px, 42%); margin: 0; line-height: 0; }
.imagem-livre img { display: block; width: 100%; height: auto; border-radius: 8px; }
.imagem-livre--vazia { min-height: 140px; border: 2px dashed currentColor; border-radius: 8px; display: grid; place-items: center; line-height: 1.3; background: #fff; color: #445; }
@media (max-width: 540px) { .imagem-livre { width: min(220px, 55%); } }
/* Em tablet e celular a imagem solta não flutua por cima do texto: entra no fluxo da seção, centralizada.
   A posição escolhida para essa tela (arrastar no editor) continua valendo, como deslocamento a partir daí. */
@media (max-width: 900px) { .imagem-livre { position: relative; left: auto; top: auto; width: min(420px, 88%); margin: clamp(24px, 6vw, 40px) auto; } }


/* ---- Bloco "lista de itens": cinco formatos, um modelo de item só.
   Usa os tokens deste modelo, então ele nasce com a cara do site em vez de
   parecer coisa colada de fora. */
.bloco__lista{ margin-top:clamp(18px,2.4vw,30px); }
.bloco__lista--cartoes{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:clamp(14px,2vw,24px); }
.itl{ margin:0; }
.itl h3{ margin:0 0 6px; }
.itl__corpo p{ margin:0; }
.itl--cartao{ display:flex; flex-direction:column; gap:10px; }
.itl__foto{ margin:0; position:relative; aspect-ratio:3/2; overflow:hidden; background:var(--creme-2); }
.itl__foto img, .itl__foto .preencher{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
/* pergunta e resposta: a sanfona é nativa do navegador, sem script */
.bloco__lista--perguntas{ border-top:1px solid var(--linha); }
.itl--pergunta{ border-bottom:1px solid var(--linha); padding:4px 0; }
.itl--pergunta summary{ cursor:pointer; padding:14px 0; list-style:none; display:flex; align-items:center; gap:10px; }
.itl--pergunta summary::-webkit-details-marker{ display:none; }
.itl--pergunta summary::after{ content:"+"; margin-left:auto; opacity:.5; font-size:1.2em; }
.itl--pergunta[open] summary::after{ content:"−"; }
.itl--pergunta .itl__corpo{ padding:0 0 16px; opacity:.85; }
.bloco__lista--precos{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:clamp(12px,1.8vw,20px); }
.itl--preco{ border:1px solid var(--linha); padding:clamp(16px,2vw,22px); display:flex; flex-direction:column; gap:8px; }
.itl--preco .itl__marca{ font-weight:700; font-size:clamp(1.3rem,2vw,1.7rem); color:var(--ouro); }
.bloco__lista--linha{ border-left:1px solid var(--linha); padding-left:clamp(16px,2.4vw,28px); }
.itl--linha{ position:relative; padding:0 0 clamp(18px,2.4vw,28px); }
.itl--linha .itl__marca{ display:block; font:600 10px/1 var(--sans); letter-spacing:.16em;
  text-transform:uppercase; color:var(--ouro); margin-bottom:5px; }
.itl--linha > cp-enfeite[data-pos="antes"]{ content:""; position:absolute; left:calc(clamp(16px,2.4vw,28px) * -1 - 4px);
  top:4px; width:7px; height:7px; border-radius:999px; background:var(--ouro); }
.bloco__lista--simples .itl--simples{ padding:14px 0; border-bottom:1px solid var(--linha); }

/* Quem pode ser movido no editor não anima a própria posição nem o tamanho: a medida que grava o
   lugar novo depende do valor final, e uma transição "all" (como a dos botões) a falseava. */
[data-cp-mover], [data-cp-mover]:hover{ transition-property:color, background-color, border-color, box-shadow, opacity, transform, filter !important; }

/* Marcadores do bloco de texto: cada parágrafo vira um item; a marca sai do CSS, o texto fica sem marcação */
.bloco__corpo--pontos .artigo__par, .bloco__corpo--numeros .artigo__par{ position:relative; padding-left:1.6em; }
.bloco__corpo--pontos .artigo__par p::before{ content:"•"; position:absolute; left:.25em; color:var(--ouro, currentColor); font-weight:700; }
.bloco__corpo--numeros{ counter-reset:cp-par; }
.bloco__corpo--numeros .artigo__par p::before{ counter-increment:cp-par; content:counter(cp-par) "."; position:absolute; left:0; min-width:1.4em; text-align:right; color:var(--ouro, currentColor); font-weight:700; }

/* Bloco de vídeo: arquivo do próprio site, sem autoplay */
.bloco__video{ margin:0; }
.bloco__video-el{ display:block; width:100%; max-height:78vh; border-radius:10px; background:#000; }
.bloco__video-vazio{ display:grid; place-items:center; aspect-ratio:16 / 9; border:2px dashed currentColor; border-radius:10px; opacity:.55; font-size:.95rem; text-align:center; padding:1rem; }

/* Gráficos (bloco "grafico"): barras, linhas e pizza sem biblioteca; a tabela de dados fica escondida fora do editor */
.bloco__grafico{ margin:0; --g-cor:var(--ouro, #b98444); }
.grafico__barras{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.7rem; }
.grafico__barras li{ display:grid; grid-template-columns:minmax(5rem, 28%) 1fr auto; align-items:center; gap:.8rem; }
.grafico__rot{ font-size:.92rem; overflow-wrap:anywhere; }
.grafico__trilho{ display:block; height:14px; border-radius:7px; background:rgba(127,127,127,.18); overflow:hidden; }
.grafico__barra{ display:block; height:100%; border-radius:7px; background:var(--g-cor); }
.grafico__val{ font-weight:700; font-variant-numeric:tabular-nums; }
.grafico__linhas{ display:block; width:100%; height:auto; max-height:320px; }
.grafico__eixo{ stroke:rgba(127,127,127,.5); stroke-width:1; }
.grafico__linha{ fill:none; stroke:var(--g-cor); stroke-width:2.5; stroke-linejoin:round; stroke-linecap:round; }
.grafico__ponto{ fill:var(--g-cor); }
.grafico__tx{ fill:currentColor; font-size:11px; font-weight:700; }
.grafico__tx--rot{ font-weight:400; opacity:.75; }
.grafico__pizza{ display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; }
.grafico__pizza svg{ width:min(240px, 100%); height:auto; transform:rotate(0deg); }
.grafico__fundo{ fill:none; stroke:rgba(127,127,127,.15); stroke-width:6.5; }
.grafico__fatia{ fill:none; stroke-width:6.5; }
.grafico__fatia--0{ stroke:var(--g-cor); background:var(--g-cor); } .grafico__fatia--1{ stroke:var(--g-cor); background:var(--g-cor); opacity:.78; }
.grafico__fatia--2{ stroke:var(--g-cor); background:var(--g-cor); opacity:.58; } .grafico__fatia--3{ stroke:var(--g-cor); background:var(--g-cor); opacity:.42; }
.grafico__fatia--4{ stroke:var(--g-cor); background:var(--g-cor); opacity:.3; } .grafico__fatia--5{ stroke:var(--g-cor); background:var(--g-cor); opacity:.2; }
.grafico__legenda{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.5rem; flex:1 1 12rem; }
.grafico__legenda li{ display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.6rem; }
.grafico__amostra{ width:14px; height:14px; border-radius:4px; }
.grafico__vazio{ margin:0; padding:1.2rem; text-align:center; border:2px dashed currentColor; border-radius:10px; opacity:.55; }
.grafico__tabela{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.grafico__tabela--edicao{ position:static; width:100%; height:auto; overflow:visible; clip:auto; margin-top:1.2rem; border-collapse:collapse; font-size:.9rem; white-space:normal; }
.grafico__tabela--edicao th, .grafico__tabela--edicao td{ padding:.45rem .6rem; border-top:1px solid rgba(127,127,127,.3); text-align:left; }
.grafico__tabela--edicao td{ font-variant-numeric:tabular-nums; }
.bloco__video-iframe{ aspect-ratio:16 / 9; height:auto; border:0; }

.grafico__trilho{ position:relative; }
.grafico__barra{ position:absolute; top:0; }
.grafico__barra--neg{ background:var(--g-cor); opacity:.55; }
.grafico__zero{ position:absolute; top:-3px; bottom:-3px; width:1px; background:rgba(127,127,127,.7); }
.grafico__grade{ stroke:rgba(127,127,127,.25); stroke-width:1; stroke-dasharray:3 3; }
.grafico__tx--eixo{ font-weight:400; opacity:.65; font-size:10px; }

/* Texto solto numa seção: um parágrafo da própria seção, que se move livremente */
.texto-livre{ margin:1.2rem auto; padding:0 var(--gutter, 1.5rem); max-width:min(46rem, 100%); font-size:1.05rem; line-height:1.6; }
.imagem-livre--video video, .imagem-livre--video iframe{ display:block; width:100%; aspect-ratio:16 / 9; height:auto; border:0; border-radius:10px; background:#000; }

/* Elementos soltos do painel Elementos: um bloco dentro da seção, sem criar seção nova */
.elemento-livre{ position:relative; margin-block:clamp(20px,3vw,40px); }
.elemento-livre .bloco--imagem{ margin-inline:0; }
.elemento-livre .bloco{ margin-block:0; }

/* Formas e linhas (painel Elementos): um bloco de cor recortado; a cor é o fundo do item (--ouro é só o padrão) */
.bloco--forma{ display:flex; justify-content:center; }
.forma{ width:clamp(80px,22vw,180px); aspect-ratio:1; background-color:var(--ouro,#96642A); }
.forma--arredondado{ border-radius:18%; }
.forma--circulo{ border-radius:50%; }
.forma--triangulo{ clip-path:polygon(50% 4%,96% 92%,4% 92%); }
.forma--losango{ clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.forma--hexagono{ clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%); }
.forma--estrela{ clip-path:polygon(50% 2%,61% 36%,98% 36%,68% 57%,79% 92%,50% 71%,21% 92%,32% 57%,2% 36%,39% 36%); }
.forma--seta{ aspect-ratio:2 / 1; clip-path:polygon(0 30%,60% 30%,60% 0,100% 50%,60% 100%,60% 70%,0 70%); }
.forma--coracao{ -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-8-5.4-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.6-8 11-8 11z'/></svg>") center / contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-8-5.4-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.6-8 11-8 11z'/></svg>") center / contain no-repeat; }
.forma--linha, .forma--tracejada, .forma--pontilhada{ width:min(100%,520px); aspect-ratio:auto; height:6px; }
.forma--linha{ border-radius:3px; }
.forma--tracejada{ -webkit-mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 36px); mask:repeating-linear-gradient(90deg,#000 0 22px,transparent 22px 36px); }
.forma--pontilhada{ -webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 16px); mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 16px); }

/* Carrossel de imagens (elemento solto do painel Elementos): o formato (cvi--…) decide o desenho; --pos é a posição do slide em relação ao que está à vista */
.bloco--carrossel{ width:100%; }
.cvi{ position:relative; width:100%; max-width:960px; margin-inline:auto; border-radius:inherit; --q:16/9; --qn:1.7778; }
.cvi__palco{ position:relative; aspect-ratio:var(--q); overflow:hidden; border-radius:inherit; background:rgba(0,0,0,.05); }
.cvi__trilho{ position:absolute; inset:0; }
.cvi__slide{ position:absolute; inset:0; margin:0; border-radius:inherit; overflow:hidden; transition:transform .6s cubic-bezier(.2,.7,.2,1), opacity .6s ease, filter .6s ease; }
.cvi__slide img, .cvi__slide .preencher{ display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.cvi__slide figcaption{ position:absolute; left:0; right:0; bottom:0; padding:2.2rem 1.1rem .9rem; color:#fff; font-size:.95rem; line-height:1.4; background:linear-gradient(transparent, rgba(0,0,0,.62)); }
.cvi__slide figcaption:empty{ display:none; }
.cvi__seta{ position:absolute; top:50%; transform:translateY(-50%); z-index:6; width:42px; height:42px; border-radius:50%; border:0; cursor:pointer;
  background:rgba(255,255,255,.92); color:#1E3A5F; font-size:24px; line-height:1; box-shadow:0 4px 14px rgba(0,0,0,.22); }
.cvi__seta:hover{ background:#fff; }
.cvi__seta--ant{ left:12px; } .cvi__seta--prox{ right:12px; }
.cvi__pontos{ display:flex; justify-content:center; gap:8px; margin-top:12px; }
.cvi__pontos button{ width:9px; height:9px; padding:0; border:0; border-radius:50%; background:currentColor; opacity:.28; cursor:pointer; transition:opacity .2s, transform .2s; }
.cvi__pontos button.is-ativo{ opacity:.95; transform:scale(1.3); }
.cvi[data-controles="setas"] .cvi__pontos, .cvi[data-controles="nenhum"] .cvi__pontos{ display:none; }
.cvi[data-controles="pontos"] .cvi__seta, .cvi[data-controles="nenhum"] .cvi__seta{ display:none; }
/* clássico: uma imagem, as outras esperam ao lado */
.cvi--classico .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 100%)); }
/* transição suave: as imagens se sobrepõem */
.cvi--fade .cvi__slide{ opacity:0; }
.cvi--fade .cvi__slide.is-ativo{ opacity:1; }
.cvi--fade .cvi__seta{ display:none; }
/* destaque central: a imagem grande no meio e as vizinhas menores dos dois lados, como prévias */
.cvi--central .cvi__palco{ overflow:visible; background:none; }
.cvi--central{ overflow-x:clip; overflow-y:visible; padding-block:clamp(14px,3.4%,40px); }      /* clip só dos lados: a sombra da foto central não pode ser cortada embaixo */
.cvi--central .cvi__slide{ inset:0 auto 0 17%; width:66%; opacity:0; pointer-events:none; }
.cvi--central .cvi__slide[data-pos="0"]{ opacity:1; z-index:3; pointer-events:auto; box-shadow:0 2px 6px rgba(0,0,0,.10), 0 14px 30px -10px rgba(0,0,0,.26), 0 30px 56px -24px rgba(0,0,0,.22); }
.cvi--central .cvi__slide[data-pos="-1"]{ opacity:.7; z-index:2; transform:translateX(-76%) scale(.74); filter:saturate(.8); pointer-events:auto; }
.cvi--central .cvi__slide[data-pos="1"]{ opacity:.7; z-index:2; transform:translateX(76%) scale(.74); filter:saturate(.8); pointer-events:auto; }
/* três por vez */
.cvi--cartas .cvi__palco{ aspect-ratio:calc(var(--qn) * 3.06); background:none; overflow:hidden; }
.cvi--cartas .cvi__slide{ inset:0 auto 0 0; width:32.6%; opacity:0; border-radius:10px; }
.cvi--cartas .cvi__slide[data-pos="0"], .cvi--cartas .cvi__slide[data-pos="1"], .cvi--cartas .cvi__slide[data-pos="2"]{ opacity:1; }
.cvi--cartas .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 103%)); }
/* miniaturas */
.cvi--miniaturas-baixo .cvi__slide, .cvi--miniaturas-dir .cvi__slide, .cvi--miniaturas-esq .cvi__slide{ opacity:0; }
.cvi--miniaturas-baixo .cvi__slide.is-ativo, .cvi--miniaturas-dir .cvi__slide.is-ativo, .cvi--miniaturas-esq .cvi__slide.is-ativo{ opacity:1; }
.cvi--miniaturas-baixo .cvi__pontos, .cvi--miniaturas-dir .cvi__pontos, .cvi--miniaturas-esq .cvi__pontos{ display:none; }
.cvi__minis{ display:flex; gap:8px; margin-top:10px; overflow-x:auto; padding-bottom:2px; }
.cvi__mini{ flex:0 0 auto; width:calc(64px * var(--qn)); aspect-ratio:var(--q); padding:0; border:0; border-radius:6px; overflow:hidden; cursor:pointer; opacity:.5; outline:2px solid transparent; outline-offset:2px; transition:opacity .2s, outline-color .2s; background:rgba(0,0,0,.08); }
.cvi__mini img{ display:block; width:100%; height:100%; object-fit:cover; }
.cvi__mini.is-ativo{ opacity:1; outline-color:currentColor; }
.cvi--miniaturas-dir, .cvi--miniaturas-esq{ display:grid; grid-template-columns:minmax(0,1fr) 22%; gap:10px; align-items:stretch; }
.cvi--miniaturas-esq{ grid-template-columns:22% minmax(0,1fr); }
.cvi--miniaturas-esq .cvi__palco{ order:2; } .cvi--miniaturas-esq .cvi__minis{ order:1; }
.cvi--miniaturas-dir .cvi__minis, .cvi--miniaturas-esq .cvi__minis{ flex-direction:column; margin-top:0; overflow-y:auto; height:0; min-height:100%; }   /* a coluna tem a altura da imagem grande e rola */
.cvi--miniaturas-dir .cvi__mini, .cvi--miniaturas-esq .cvi__mini{ width:100%; }
/* cartas empilhadas */
.cvi--empilhado{ padding:0 30px 30px 0; }
.cvi--empilhado .cvi__palco{ overflow:visible; background:none; }
.cvi--empilhado .cvi__slide{ opacity:0; box-shadow:0 10px 24px rgba(0,0,0,.25); }
.cvi--empilhado .cvi__slide[data-pos="0"]{ opacity:1; z-index:4; }
.cvi--empilhado .cvi__slide[data-pos="1"]{ opacity:1; z-index:3; transform:translate(15px,15px) scale(.97); filter:brightness(.92); }
.cvi--empilhado .cvi__slide[data-pos="2"]{ opacity:1; z-index:2; transform:translate(30px,30px) scale(.94); filter:brightness(.84); }
/* faixa contínua: as imagens correm sem parar */
.cvi--faixa .cvi__palco{ aspect-ratio:auto; background:none; }
.cvi--faixa .cvi__trilho{ position:relative; inset:auto; display:flex; gap:12px; width:max-content; animation:cvi-faixa 36s linear infinite; }
.cvi--faixa .cvi__slide{ position:relative; inset:auto; flex:0 0 auto; width:calc(190px * var(--qn)); aspect-ratio:var(--q); border-radius:10px; }
.cvi--faixa .cvi__seta, .cvi--faixa .cvi__pontos{ display:none; }
.cvi--faixa:hover .cvi__trilho{ animation-play-state:paused; }
@keyframes cvi-faixa{ to{ transform:translateX(-50%); } }
html.cp-editando .cvi--faixa .cvi__trilho{ animation:none; }
@media (prefers-reduced-motion:reduce){ .cvi__slide{ transition:none; } .cvi--faixa .cvi__trilho{ animation:none; } }

/* ---- Abas (elemento): rótulos finos sobre uma linha, a aba aberta sublinhada; o conteúdo troca sem animação pesada ---- */
.abas{ width:100%; }
.abas__lista{ display:flex; gap:clamp(18px,3vw,36px); border-bottom:1px solid var(--linha, rgba(0,0,0,.14)); overflow-x:auto; scrollbar-width:none; }
.abas__lista::-webkit-scrollbar{ display:none; }
.abas__aba{ position:relative; flex:0 0 auto; padding:0 0 12px; font-size:.95rem; font-weight:500; letter-spacing:.01em; color:inherit; opacity:.55; cursor:pointer; white-space:nowrap; transition:opacity .2s; }
.abas__aba:hover{ opacity:.85; }
.abas__aba:focus-visible{ outline:2px solid currentColor; outline-offset:4px; border-radius:2px; }
.abas__aba::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .25s cubic-bezier(.2,.7,.2,1); }
.abas__aba.is-ativa{ opacity:1; }
.abas__aba.is-ativa::after{ transform:scaleX(1); }
.abas__painel{ padding-top:clamp(20px,3vw,32px); }
.abas__painel[hidden]{ display:none; }
.abas__texto{ max-width:62ch; margin:0 0 1.4rem; line-height:1.65; opacity:.85; }
.abas__docs{ display:flex; flex-direction:column; gap:0; }
.abas__docs .doc{ background:none; border:0; border-bottom:1px solid var(--linha, rgba(0,0,0,.12)); border-radius:0; box-shadow:none; padding:18px 0; }
.abas__docs .doc:first-child{ border-top:0; }
@media (prefers-reduced-motion:reduce){ .abas__aba, .abas__aba::after{ transition:none; } }

/* ---- Dentro das abas: área livre para qualquer elemento; arquivo para baixar; pasta de documentos ---- */
.abas__livres{ display:flex; flex-direction:column; gap:clamp(20px,3vw,32px); margin-top:clamp(18px,2.5vw,28px); }
.abas__livres:empty{ display:none; }
.abas__livres .elemento-livre{ margin:0; padding:0; }
.arquivo{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid var(--linha, rgba(0,0,0,.12)); }
.arquivo__txt h3{ margin:0 0 .25rem; font-size:1.05rem; font-weight:600; }
.arquivo__txt p{ margin:0; opacity:.7; line-height:1.5; }
.arquivo__b{ flex:0 0 auto; }
.arquivo__b--vazio{ opacity:.55; border-style:dashed; cursor:pointer; }
.pasta{ border:1px solid var(--linha, rgba(0,0,0,.14)); border-radius:12px; overflow:hidden; }
.pasta__nome{ display:flex; align-items:center; gap:10px; padding:14px 18px; background:rgba(0,0,0,.03); }
.pasta__nome h3{ margin:0; font-size:1rem; font-weight:600; flex:1; }
.pasta__nome small{ opacity:.55; }
.pasta__doc{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 18px; border-top:1px solid var(--linha, rgba(0,0,0,.1)); }
.pasta__txt{ display:grid; gap:2px; min-width:0; }
.pasta__txt span{ opacity:.65; font-size:.9rem; }
.pasta__b{ flex:0 0 auto; font-size:.85rem; padding:6px 12px; border:1px solid currentColor; border-radius:999px; text-decoration:none; color:inherit; white-space:nowrap; transition:opacity .2s; }
.pasta__b:hover{ opacity:.7; }
.pasta__b--vazio{ opacity:.5; border-style:dashed; cursor:pointer; }
@media (max-width:560px){ .arquivo{ flex-direction:column; align-items:flex-start; } }

/* parte do visual dos modelos do Websitesfy: não vale num site importado */
/* ---- Aviso de cookies e política de privacidade ---- */
.cookies{ position:fixed; z-index:9000; left:16px; bottom:16px; max-width:420px; display:grid; gap:12px; padding:16px 18px; background:#fff; color:#1d2a33; border-radius:12px; box-shadow:0 12px 36px rgba(10,20,30,.22); font-size:.92rem; line-height:1.45; }
.cookies p{ margin:0; }
.cookies a{ color:inherit; text-decoration:underline; }
.cookies__acoes{ display:flex; gap:8px; justify-content:flex-end; }
.cookies .btn, .privacidade .btn{ padding:9px 16px; font-size:.85rem; }
@media (max-width:560px){ .cookies{ left:10px; right:10px; bottom:10px; max-width:none; } }
.privacidade{ position:fixed; inset:0; z-index:9100; display:grid; place-items:center; padding:16px; background:rgba(10,20,30,.45); }
.privacidade__caixa{ position:relative; width:min(640px,100%); max-height:86vh; overflow:auto; padding:clamp(20px,4vw,32px); background:#fff; color:#1d2a33; border-radius:14px; }
.privacidade__caixa h2{ margin:0 0 12px; font-size:1.3rem; }
.privacidade__texto p{ margin:0 0 .9em; line-height:1.6; font-size:.95rem; }
.privacidade__acoes{ display:flex; gap:8px; justify-content:flex-end; flex-wrap:wrap; margin-top:16px; }
.privacidade__fechar{ position:absolute; top:10px; right:12px; width:34px; height:34px; border:0; background:none; font-size:1.5rem; line-height:1; cursor:pointer; color:inherit; }
.rodape__cookies{ margin-left:auto; color:inherit; opacity:.7; font-size:.85em; text-decoration:underline; }

/* Disposição do nome em relação à logo (Cabeçalho › Posição do nome) e distância entre os dois */
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"]{flex-direction:column;align-items:center}
.header .header__logo.logo-com-nome[data-logo-pos="acima"]{flex-direction:column-reverse;align-items:center}
.header .header__logo.logo-com-nome[data-logo-pos="esquerda"]{flex-direction:row-reverse}
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"] img.header__logo-img,
.header .header__logo.logo-com-nome[data-logo-pos="acima"] img.header__logo-img{max-width:min(220px,54vw)}
.header .header__logo.logo-com-nome[data-logo-pos="abaixo"] [data-logo-nome],
.header .header__logo.logo-com-nome[data-logo-pos="acima"] [data-logo-nome]{text-align:center}
.header .header__logo[data-logo-espaco]{gap:var(--logo-espaco)!important}

/* Colunas dentro da aba: cada elemento escolhe a largura (inteira, 2/3, metade, 1/3); no celular, todos inteiros */
.abas__livres{ --abas-g:clamp(20px,3vw,32px); flex-direction:row !important; flex-wrap:wrap; align-items:flex-start; gap:var(--abas-g) !important; }
.abas__livres > *{ flex:0 0 100%; min-width:0; max-width:100%; }
.abas__livres > .cp-add{ flex:0 0 auto; order:99; }
.abas__livres::after{ content:""; flex:0 0 100%; order:98; height:0; margin-top:calc(-1 * var(--abas-g)); }   /* o + Adicionar vai sempre para a linha de baixo */
.abas__livres > .elemento-livre[data-cp-dim-aplicada]{ flex-basis:auto; }   /* largura dada pelas alças vale mais que a coluna */
.abas__livres > .elemento-livre[data-largura="1/2"]{ flex-basis:calc((100% - var(--abas-g)) / 2); }
.abas__livres > .elemento-livre[data-largura="1/3"]{ flex-basis:calc((100% - 2 * var(--abas-g)) / 3); }
.abas__livres > .elemento-livre[data-largura="2/3"]{ flex-basis:calc((100% - var(--abas-g)) * 2 / 3); }
@media (max-width:540px){ .abas__livres > .elemento-livre[data-largura]{ flex-basis:100%; } }

/* Elemento solto "por cima": fica sobre a seção, no centro, sem empurrar nada; a posição se ajusta arrastando */
body > section:has(> .elemento-livre[data-fluxo="sobre"]){ position:relative; }
.elemento-livre[data-fluxo="sobre"]{ position:absolute; left:50%; top:50%; transform:translate(calc(-50% + var(--d,0px)), calc(-50% + var(--d,0px))); width:min(1100px,92%); max-width:92%; margin:0; z-index:5; }

/* ---- Carrosséis novos: Destaque de página, Polaroides, Galeria giratória, Vertical e Mosaico ---- */
.cvi[data-autoplay="lento"]{ --dur:8s; } .cvi[data-autoplay="medio"]{ --dur:5s; } .cvi[data-autoplay="rapido"]{ --dur:3s; }
/* Destaque de página: foto cheia escurecida, número, categoria, título, resumo, meta, botão e abas de progresso embaixo */
.cvi--destaque{ max-width:none; color:#fff; }
.cvi--destaque .cvi__palco{ aspect-ratio:auto; min-height:clamp(440px,64vh,680px); background:#12262c; }
.cvi--destaque .cvi__slide{ opacity:0; transition:opacity .8s ease; z-index:1; }
.cvi--destaque .cvi__slide.is-ativo{ opacity:1; z-index:2; }
.cvi--destaque .cvi__slide > cp-enfeite[data-pos="depois"]{ content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg, rgba(8,24,30,.86) 0%, rgba(8,24,30,.45) 58%, rgba(8,24,30,.5) 100%), linear-gradient(transparent 55%, rgba(0,0,0,.5)); }
.cvi--destaque .cvi__texto{ position:absolute; z-index:3; left:clamp(22px,7%,120px); right:clamp(22px,22%,320px); top:46%; transform:translateY(-50%); display:grid; gap:.85rem; justify-items:start; }
.cvi--destaque .cvi__num{ font-size:clamp(1.8rem,4vw,3rem); font-weight:700; line-height:1; letter-spacing:-.02em; opacity:.92; }
.cvi--destaque .cvi__num b{ font-weight:700; }
.cvi--destaque .cvi__cat{ font-size:.74rem; letter-spacing:.2em; text-transform:uppercase; opacity:.85; }
.cvi--destaque .cvi__tit{ margin:0; font-size:clamp(1.9rem,5vw,4rem); line-height:1.02; letter-spacing:-.03em; color:#fff; max-width:18ch; }
.cvi--destaque .cvi__res{ margin:0; max-width:56ch; font-size:clamp(.98rem,1.4vw,1.2rem); line-height:1.5; opacity:.92; }
.cvi--destaque .cvi__meta{ font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; opacity:.75; }
.cvi--destaque .cvi__bt{ color:#fff; border-color:rgba(255,255,255,.7); background:transparent; margin-top:.4rem; }
.cvi--destaque .cvi__abas{ position:absolute; z-index:5; left:clamp(22px,7%,120px); right:clamp(22px,7%,120px); bottom:20px; display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:clamp(12px,3vw,40px); }
.cvi--destaque .cvi__aba{ position:relative; display:flex; gap:.9rem; align-items:baseline; padding:12px 0 0; border:0; border-top:2px solid rgba(255,255,255,.28); background:none; color:rgba(255,255,255,.66); font:inherit; font-size:.86rem; text-align:left; cursor:pointer; transition:color .2s; }
.cvi--destaque .cvi__aba i{ font-style:normal; font-size:.7rem; letter-spacing:.08em; opacity:.7; }
.cvi--destaque .cvi__aba span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cvi--destaque .cvi__aba.is-ativo{ color:#fff; }
.cvi--destaque .cvi__aba.is-ativo::before{ content:""; position:absolute; left:0; top:-2px; height:2px; width:100%; background:#fff; transform-origin:left; }
.cvi--destaque[data-autoplay="lento"] .cvi__aba.is-ativo::before, .cvi--destaque[data-autoplay="medio"] .cvi__aba.is-ativo::before, .cvi--destaque[data-autoplay="rapido"] .cvi__aba.is-ativo::before{ animation:cvi-progresso var(--dur,5s) linear; }
html.cp-editando .cvi--destaque .cvi__aba.is-ativo::before{ animation:none; }
.cvi--destaque .cvi__pontos{ display:none; }
.cvi--destaque .cvi__seta{ top:44%; background:rgba(255,255,255,.14); color:#fff; backdrop-filter:blur(4px); }
@keyframes cvi-progresso{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
@media (max-width:700px){ .cvi--destaque .cvi__texto{ right:22px; } .cvi--destaque .cvi__aba span{ display:none; } .cvi--destaque .cvi__seta{ display:none; } }
/* Polaroides: fotos de papel levemente giradas, jogadas uma sobre a outra */
.cvi--polaroide .cvi__palco{ overflow:visible; background:none; }
.cvi--polaroide .cvi__slide{ inset:3% 19% 3% 19%; background:#fff; padding:12px 12px 52px; border-radius:4px; box-shadow:0 14px 34px rgba(0,0,0,.28); opacity:0; transform:translateX(calc(var(--pos,0) * 14%)) rotate(calc(var(--pos,0) * 5deg)); }
.cvi--polaroide .cvi__slide img, .cvi--polaroide .cvi__slide .preencher{ border-radius:2px; height:100%; }
.cvi--polaroide .cvi__slide[data-pos="0"]{ opacity:1; z-index:5; transform:rotate(-1.5deg); }
.cvi--polaroide .cvi__slide[data-pos="-1"], .cvi--polaroide .cvi__slide[data-pos="1"]{ opacity:1; z-index:4; }
.cvi--polaroide .cvi__slide[data-pos="-2"], .cvi--polaroide .cvi__slide[data-pos="2"]{ opacity:1; z-index:3; }
.cvi--polaroide .cvi__slide figcaption{ background:none; color:#2b2b2b; padding:0 12px; bottom:14px; text-align:center; font-size:.9rem; }
.cvi--polaroide{ padding-block:2%; }
/* Galeria giratória: a imagem do meio de frente e as outras viradas em perspectiva */
.cvi--giratorio .cvi__palco{ overflow:hidden; background:none; perspective:1100px; }
.cvi--giratorio .cvi__slide{ inset:4% 22%; opacity:0; border-radius:10px; transform:translateX(calc(var(--pos,0) * 58%)) rotateY(calc(var(--pos,0) * -48deg)) scale(.82); box-shadow:0 16px 36px rgba(0,0,0,.3); }
.cvi--giratorio .cvi__slide[data-pos="0"]{ opacity:1; z-index:5; transform:none; }
.cvi--giratorio .cvi__slide[data-pos="-1"], .cvi--giratorio .cvi__slide[data-pos="1"]{ opacity:.9; z-index:4; }
.cvi--giratorio .cvi__slide[data-pos="-2"], .cvi--giratorio .cvi__slide[data-pos="2"]{ opacity:.5; z-index:3; }
/* Vertical: as imagens sobem e descem, com os pontos na lateral */
.cvi--vertical .cvi__slide{ transform:translateY(calc(var(--pos,0) * 100%)); }
.cvi--vertical .cvi__pontos{ position:absolute; right:14px; top:50%; transform:translateY(-50%); flex-direction:column; margin:0; color:#fff; z-index:6; }
.cvi--vertical .cvi__seta{ left:50%; transform:translateX(-50%) rotate(90deg); }
.cvi--vertical .cvi__seta--ant{ top:12px; } .cvi--vertical .cvi__seta--prox{ top:auto; bottom:12px; }
/* Mosaico: uma imagem grande e duas prévias empilhadas; clicar numa prévia a traz para o destaque */
.cvi--mosaico .cvi__palco{ background:none; overflow:hidden; }
.cvi--mosaico .cvi__slide{ inset:auto; left:101%; top:0; width:32%; height:49%; border-radius:10px; opacity:0; transition:left .6s cubic-bezier(.2,.7,.2,1), top .6s cubic-bezier(.2,.7,.2,1), width .6s cubic-bezier(.2,.7,.2,1), height .6s cubic-bezier(.2,.7,.2,1), opacity .5s; }
.cvi--mosaico .cvi__slide[data-pos="0"]{ left:0; top:0; width:67%; height:100%; opacity:1; z-index:3; }
.cvi--mosaico .cvi__slide[data-pos="1"]{ left:68%; top:0; width:32%; height:49%; opacity:1; cursor:pointer; filter:brightness(.92); }
.cvi--mosaico .cvi__slide[data-pos="2"]{ left:68%; top:51%; width:32%; height:49%; opacity:1; cursor:pointer; filter:brightness(.92); }
.cvi--mosaico .cvi__slide[data-pos="1"]:hover, .cvi--mosaico .cvi__slide[data-pos="2"]:hover{ filter:none; }
.cvi--mosaico .cvi__seta{ display:none; }
@media (prefers-reduced-motion:reduce){ .cvi--destaque .cvi__aba.is-ativo::before{ animation:none !important; } }

/* pontos de navegação como elemento do editor: lado, altura, tamanho, formato, direção, cores e nome sempre à vista */
.trilho[hidden]{ display:none; }
.trilho{ --tr-d:8px; }
.trilho button{ width:var(--tr-d); height:var(--tr-d); }
.trilho[data-tamanho="p"]{ --tr-d:6px; gap:10px; }
.trilho[data-tamanho="g"]{ --tr-d:13px; gap:17px; }
.trilho[data-lado="esquerda"]{ right:auto; left:clamp(14px,1.6vw,26px); }
.trilho[data-lado="esquerda"] button span{ right:auto; left:18px; transform:translateY(-50%) translateX(-6px); }
.trilho[data-lado="esquerda"] button:hover span{ transform:translateY(-50%) translateX(0); }
.trilho[data-altura="topo"]{ top:24%; }
.trilho[data-altura="base"]{ top:76%; }
.trilho[data-formato="tracos"] button{ width:calc(var(--tr-d) * 2.6); height:3px; border-radius:2px; }
.trilho[data-direcao="horizontal"]{ flex-direction:row; right:auto; left:50%; top:auto; bottom:22px; transform:translateX(-50%); }
.trilho[data-direcao="horizontal"][data-altura="topo"]{ top:70px; bottom:auto; }
.trilho[data-direcao="horizontal"] button span{ right:auto; left:50%; top:auto; bottom:18px; transform:translateX(-50%) translateY(6px); }
.trilho[data-direcao="horizontal"] button:hover span{ transform:translateX(-50%) translateY(0); }
.trilho[data-rotulos="sempre"] button span{ opacity:1; }
.trilho[data-rotulos="sempre"][data-lado="direita"][data-direcao="vertical"] button span, .trilho[data-rotulos="sempre"][data-lado="esquerda"][data-direcao="vertical"] button span{ transform:translateY(-50%) translateX(0); }
.trilho[data-rotulos="sempre"][data-direcao="horizontal"] button span{ transform:translateX(-50%) translateY(0); }
body .trilho[data-tr-cor] button{ background:var(--tr-cor); }
body .trilho[data-tr-ativa] button.on{ background:var(--tr-ativa); }
body.secao-escura .trilho[data-tr-cor] button{ background:var(--tr-cor); }
body.secao-escura .trilho[data-tr-ativa] button.on{ background:var(--tr-ativa); }

/* modelos de card, escolhidos no editor para cada lista (atributo data-cartao na grade) */
[data-cartao="imagem-total"] .card{ position:relative; display:block !important; min-height:clamp(320px,32vw,440px); border:0 !important; overflow:hidden; isolation:isolate; }
[data-cartao="imagem-total"] .card__media{ position:absolute !important; inset:0; height:100%; aspect-ratio:auto !important; }
[data-cartao="imagem-total"] .card__media > cp-enfeite[data-pos="depois"]{ background:none !important; }
[data-cartao="imagem-total"] .card__corpo{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(72px,9vw,112px) clamp(20px,2.2vw,28px) clamp(18px,2vw,24px); background:linear-gradient(to top, rgba(5,12,24,.93) 0%, rgba(5,12,24,.76) 40%, rgba(5,12,24,0) 100%); }
[data-cartao="imagem-total"] .card__corpo h3{ color:#fff !important; margin-bottom:8px; }
[data-cartao="imagem-total"] .card__corpo p{ color:rgba(255,255,255,.84) !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
[data-cartao="imagem-total"] .card__pe{ color:#fff !important; border-top-color:rgba(255,255,255,.26) !important; margin-top:14px; padding-top:12px; }
[data-cartao="horizontal"]{ grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr)) !important; }
[data-cartao="horizontal"] .card{ display:flex !important; flex-direction:row; }
[data-cartao="horizontal"] .card__media{ flex:0 0 42%; aspect-ratio:auto !important; min-height:220px; }
[data-cartao="horizontal"] .card__corpo{ flex:1; justify-content:center; }
[data-cartao="limpo"] .card{ background:transparent !important; border:0 !important; box-shadow:none !important; border-radius:0 !important; }
[data-cartao="limpo"] .card:hover{ transform:none !important; box-shadow:none !important; }
[data-cartao="limpo"] .card__media{ border-radius:16px; }
[data-cartao="limpo"] .card__corpo{ padding:16px 2px 0 !important; }
[data-cartao="limpo"] .card__pe{ border-top:0 !important; padding-top:10px; }
[data-cartao="compacto"]{ grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)) !important; gap:14px !important; }
[data-cartao="compacto"] .card{ display:flex !important; flex-direction:row; align-items:center; }
[data-cartao="compacto"] .card__media{ flex:0 0 112px; width:112px; height:112px; aspect-ratio:auto !important; border-radius:14px; margin:12px 0 12px 12px; }
[data-cartao="compacto"] .card__tag, [data-cartao="compacto"] .prov{ display:none; }
[data-cartao="compacto"] .card__corpo{ padding:14px 18px !important; }
[data-cartao="compacto"] .card__corpo p{ display:none; }
[data-cartao="compacto"] .card__pe{ border-top:0 !important; padding-top:6px; }
@media (max-width:640px){
  [data-cartao="horizontal"] .card{ flex-direction:column; }
  [data-cartao="horizontal"] .card__media{ flex:none; aspect-ratio:16/10 !important; min-height:0; }
}

/* carrossel: novos formatos (minimalista, contador, histórias, cartão), transição à escolha, e pontos com lugar e forma à escolha */
.cvi--minimalista .cvi__slide, .cvi--contador .cvi__slide, .cvi--historias .cvi__slide, .cvi--cartao .cvi__slide{ transform:translateX(calc(var(--pos, 0) * 100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="esmaecer"] .cvi__slide{ transform:none; opacity:0; transition:opacity .75s ease; z-index:1; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="esmaecer"] .cvi__slide.is-ativo{ opacity:1; z-index:2; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="zoom"] .cvi__slide{ transform:scale(1.1); opacity:0; transition:opacity .85s ease, transform 1.3s cubic-bezier(.2,.7,.2,1); z-index:1; }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="zoom"] .cvi__slide.is-ativo{ transform:scale(1); opacity:1; z-index:2; }
.cvi--minimalista .cvi__palco, .cvi--contador .cvi__palco, .cvi--historias .cvi__palco{ border-radius:20px; }
.cvi--minimalista:not([data-controles="setas"]) .cvi__seta, .cvi--historias:not([data-controles="setas"]) .cvi__seta{ display:none; }
.cvi--minimalista[data-pontos-pos="auto"] .cvi__pontos{ position:absolute; left:0; right:0; bottom:16px; margin:0; z-index:7; color:#fff; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.cvi--contador[data-pontos-pos="auto"] .cvi__pontos{ display:none; }
.cvi__contador{ position:absolute; right:14px; top:14px; z-index:7; padding:6px 12px; border-radius:999px; background:rgba(10,20,40,.55); color:#fff; font:600 12px/1 system-ui, sans-serif; letter-spacing:.08em; backdrop-filter:blur(6px); pointer-events:none; }
.cvi--historias .cvi__pontos{ position:absolute; left:16px; right:16px; top:14px; margin:0; gap:5px; z-index:7; color:#fff; }
.cvi--historias .cvi__pontos button{ flex:1; width:auto; height:3px; border-radius:2px; background:rgba(255,255,255,.4); opacity:1; transform:none; }
.cvi--historias .cvi__pontos button.is-ativo{ background:#fff; transform:none; }
.cvi--cartao{ padding:12px 12px 6px; background:#fff; border-radius:28px; box-shadow:0 24px 60px rgba(15,30,70,.16); }
.cvi--cartao .cvi__palco{ border-radius:18px; }
.cvi--cartao .cvi__seta{ width:36px; height:36px; }
.cvi[data-pontos-pos="dentro"] .cvi__pontos, .cvi[data-pontos-pos="dentro-esq"] .cvi__pontos, .cvi[data-pontos-pos="dentro-dir"] .cvi__pontos,
.cvi[data-pontos-pos="topo"] .cvi__pontos, .cvi[data-pontos-pos="lateral-dir"] .cvi__pontos, .cvi[data-pontos-pos="lateral-esq"] .cvi__pontos{ position:absolute; margin:0; z-index:7; color:#fff; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.cvi[data-pontos-pos="dentro"] .cvi__pontos{ left:0; right:0; bottom:16px; }
.cvi[data-pontos-pos="dentro-esq"] .cvi__pontos{ left:18px; bottom:16px; justify-content:flex-start; }
.cvi[data-pontos-pos="dentro-dir"] .cvi__pontos{ right:18px; bottom:16px; justify-content:flex-end; }
.cvi[data-pontos-pos="topo"] .cvi__pontos{ left:0; right:0; top:16px; }
.cvi[data-pontos-pos="lateral-dir"] .cvi__pontos{ right:16px; top:50%; transform:translateY(-50%); flex-direction:column; }
.cvi[data-pontos-pos="lateral-esq"] .cvi__pontos{ left:16px; top:50%; transform:translateY(-50%); flex-direction:column; }
.cvi[data-pontos-forma="quadrado"] .cvi__pontos button{ border-radius:2px; }
.cvi[data-pontos-forma="barra"] .cvi__pontos button{ width:22px; height:4px; border-radius:2px; }
.cvi[data-pontos-forma="triangulo"] .cvi__pontos button{ width:12px; height:11px; border-radius:0; clip-path:polygon(50% 0, 100% 100%, 0 100%); }
.cvi[data-pontos-forma="losango"] .cvi__pontos button{ width:11px; height:11px; border-radius:0; clip-path:polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }

/* carrossel: para onde as imagens andam (esquerda, direita, cima, baixo) e a barrinha de progresso do destaque com qualquer tempo */
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="direita"] .cvi__slide{ transform:translateX(calc(var(--pos, 0) * -100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="cima"] .cvi__slide{ transform:translateY(calc(var(--pos, 0) * 100%)); }
:is(.cvi--classico, .cvi--minimalista, .cvi--contador, .cvi--historias, .cvi--cartao)[data-transicao="deslizar"][data-direcao="baixo"] .cvi__slide{ transform:translateY(calc(var(--pos, 0) * -100%)); }
.cvi--destaque:not([data-autoplay="parado"]) .cvi__aba.is-ativo::before{ animation:cvi-progresso var(--dur,5s) linear; }

/* carrossel: os cantos valem para o carrossel inteiro (moldura e todas as imagens), não para uma imagem só */
.cvi[data-cantos="reto"]{ --cantos:0px; } .cvi[data-cantos="suave"]{ --cantos:14px; } .cvi[data-cantos="redondo"]{ --cantos:28px; } .cvi[data-cantos="grande"]{ --cantos:48px; }
.cvi[data-cantos="reto"], .cvi[data-cantos="suave"], .cvi[data-cantos="redondo"], .cvi[data-cantos="grande"]{ border-radius:var(--cantos); }
.cvi[data-cantos="reto"] .cvi__palco, .cvi[data-cantos="suave"] .cvi__palco, .cvi[data-cantos="redondo"] .cvi__palco, .cvi[data-cantos="grande"] .cvi__palco,
.cvi[data-cantos="reto"] .cvi__slide, .cvi[data-cantos="suave"] .cvi__slide, .cvi[data-cantos="redondo"] .cvi__slide, .cvi[data-cantos="grande"] .cvi__slide,
.cvi[data-cantos="reto"] .cvi__slide img, .cvi[data-cantos="suave"] .cvi__slide img, .cvi[data-cantos="redondo"] .cvi__slide img, .cvi[data-cantos="grande"] .cvi__slide img,
.cvi[data-cantos="reto"] .cvi__slide .preencher, .cvi[data-cantos="suave"] .cvi__slide .preencher, .cvi[data-cantos="redondo"] .cvi__slide .preencher, .cvi[data-cantos="grande"] .cvi__slide .preencher{ border-radius:var(--cantos); }

/* escolhas por tipo de elemento: formato e tamanho do botão, colunas dos números, lado da foto no texto com foto */
.bloco[data-forma-botao="reto"] .btn{ border-radius:0; }
.bloco[data-forma-botao="suave"] .btn{ border-radius:10px; }
.bloco[data-forma-botao="pilula"] .btn{ border-radius:999px; }
.bloco[data-tamanho-botao="pequeno"] .btn{ padding:9px 16px; font-size:.72rem; min-height:36px; }
.bloco[data-tamanho-botao="grande"] .btn{ padding:17px 34px; font-size:.95rem; min-height:58px; }
.bloco--numeros[data-colunas="2"] .bloco__numeros{ grid-template-columns:repeat(2, 1fr); }
.bloco--numeros[data-colunas="3"] .bloco__numeros{ grid-template-columns:repeat(3, 1fr); }
.bloco--numeros[data-colunas="4"] .bloco__numeros{ grid-template-columns:repeat(4, 1fr); }
@media (max-width:640px){ .bloco--numeros[data-colunas="3"] .bloco__numeros, .bloco--numeros[data-colunas="4"] .bloco__numeros{ grid-template-columns:repeat(2, 1fr); } }
.bloco--textoFoto[data-lado-foto="esquerda"] .bloco__lado{ direction:rtl; }
.bloco--textoFoto[data-lado-foto="esquerda"] .bloco__lado > *{ direction:ltr; }
.bloco--textoFoto[data-lado-foto="direita"] .bloco__lado{ direction:ltr; }
@media (max-width:780px){ .bloco--textoFoto[data-lado-foto] .bloco__lado{ direction:ltr; } }

/* lista em cartões: modelos de card (os mesmos das listas do modelo) e colunas da grade */
[data-cartao="imagem-total"] > .itl--cartao{ position:relative; display:block; min-height:clamp(300px,30vw,420px); overflow:hidden; isolation:isolate; }
[data-cartao="imagem-total"] > .itl--cartao .itl__foto{ position:absolute; inset:0; aspect-ratio:auto; }
[data-cartao="imagem-total"] > .itl--cartao .itl__corpo{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(72px,9vw,112px) clamp(18px,2vw,24px) clamp(16px,2vw,22px); background:linear-gradient(to top, rgba(5,12,24,.93) 0%, rgba(5,12,24,.76) 40%, rgba(5,12,24,0) 100%); }
[data-cartao="imagem-total"] > .itl--cartao h3{ color:#fff !important; }
[data-cartao="imagem-total"] > .itl--cartao .itl__corpo p{ color:rgba(255,255,255,.84) !important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
[data-cartao="horizontal"] > .itl--cartao{ flex-direction:row; align-items:stretch; }
[data-cartao="horizontal"] > .itl--cartao .itl__foto{ flex:0 0 42%; aspect-ratio:auto; min-height:180px; }
[data-cartao="horizontal"] > .itl--cartao .itl__corpo{ flex:1; align-self:center; }
[data-cartao="limpo"] > .itl--cartao{ background:transparent; border:0; box-shadow:none; border-radius:0; }
[data-cartao="limpo"] > .itl--cartao .itl__foto{ border-radius:16px; }
[data-cartao="compacto"] > .itl--cartao{ flex-direction:row; align-items:center; gap:14px; }
[data-cartao="compacto"] > .itl--cartao .itl__foto{ flex:0 0 96px; width:96px; height:96px; aspect-ratio:auto; border-radius:14px; }
[data-cartao="compacto"] > .itl--cartao .itl__corpo p{ display:none; }
.bloco--lista[data-colunas="2"] .bloco__lista--cartoes{ grid-template-columns:repeat(2, 1fr); }
.bloco--lista[data-colunas="3"] .bloco__lista--cartoes{ grid-template-columns:repeat(3, 1fr); }
.bloco--lista[data-colunas="4"] .bloco__lista--cartoes{ grid-template-columns:repeat(4, 1fr); }
@media (max-width:780px){ .bloco--lista[data-colunas="3"] .bloco__lista--cartoes, .bloco--lista[data-colunas="4"] .bloco__lista--cartoes{ grid-template-columns:repeat(2, 1fr); } [data-cartao="horizontal"] > .itl--cartao{ flex-direction:column; } [data-cartao="horizontal"] > .itl--cartao .itl__foto{ flex:none; aspect-ratio:16/10; } }
@media (max-width:480px){ .bloco--lista[data-colunas] .bloco__lista--cartoes{ grid-template-columns:1fr; } }

/* estilo da citação: linha ao lado (padrão), aspas grandes, centralizada ou em caixa */
.bloco--citacao[data-estilo-citacao="aspas"] blockquote{ border-left:0; padding-left:0; padding-top:clamp(56px,7vw,76px); position:relative; }
.bloco--citacao[data-estilo-citacao="aspas"] blockquote::before{ content:"\201C"; position:absolute; top:0; left:-4px; font-family:var(--serif); font-size:clamp(4.5rem,8vw,6.5rem); line-height:1; color:var(--ouro); }
.bloco--citacao[data-estilo-citacao="centro"] blockquote{ border-left:0; padding-left:0; padding-right:0; text-align:center; position:relative; padding-top:clamp(56px,7vw,76px); }
.bloco--citacao[data-estilo-citacao="centro"] blockquote::before{ content:"\201C"; position:absolute; top:0; left:0; right:0; font-family:var(--serif); font-size:clamp(4.5rem,8vw,6.5rem); line-height:1; color:var(--ouro); }
.bloco--citacao[data-estilo-citacao="caixa"] blockquote{ border-left:0; background:var(--creme-2); border-radius:18px; padding:clamp(22px,3.2vw,40px); }

/* cor do gráfico: a cor do site (padrão) ou uma das cores à escolha */
.bloco[data-cor-grafico="azul"] .bloco__grafico{ --g-cor:#2F5FA8; }
.bloco[data-cor-grafico="verde"] .bloco__grafico{ --g-cor:#2E8B57; }
.bloco[data-cor-grafico="vermelho"] .bloco__grafico{ --g-cor:#C0392B; }
.bloco[data-cor-grafico="laranja"] .bloco__grafico{ --g-cor:#E07B1F; }
.bloco[data-cor-grafico="roxo"] .bloco__grafico{ --g-cor:#7B4FB5; }
.bloco[data-cor-grafico="cinza"] .bloco__grafico{ --g-cor:#6B7280; }

/* abas: estilo */
.bloco--abas[data-estilo-abas="pilulas"] .abas__lista{ border-bottom:0; gap:8px; }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba{ padding:9px 18px; border-radius:999px; background:rgba(127,127,127,.14); }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba::after{ display:none; }
.bloco--abas[data-estilo-abas="pilulas"] .abas__aba.is-ativa{ background:var(--tinta); color:var(--fundo, #fff); }
.bloco--abas[data-estilo-abas="caixa"] .abas__lista{ border:1px solid var(--linha, rgba(0,0,0,.14)); border-radius:12px; padding:4px; gap:4px; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba{ padding:9px 18px; border-radius:9px; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba::after{ display:none; }
.bloco--abas[data-estilo-abas="caixa"] .abas__aba.is-ativa{ background:rgba(127,127,127,.18); }

/* destaque central com mais prévias: duas imagens de cada lado (precisa de 5 ou mais; sempre simétrico), cada par menor e mais escuro que o anterior; camadas opacas, para uma não aparecer através da outra */
.cvi--central[data-nprev="2"] .cvi__slide{ inset:0 auto 0 25%; width:50%; }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="-1"]{ opacity:1; transform:translateX(-34%) scale(.76); filter:saturate(.85) brightness(.86); }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="1"]{ opacity:1; transform:translateX(34%) scale(.76); filter:saturate(.85) brightness(.86); }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="-2"]{ opacity:1; z-index:1; transform:translateX(-70.5%) scale(.55); filter:saturate(.7) brightness(.72); pointer-events:auto; }
.cvi--central[data-nprev="2"] .cvi__slide[data-pos="2"]{ opacity:1; z-index:1; transform:translateX(70.5%) scale(.55); filter:saturate(.7) brightness(.72); pointer-events:auto; }

/* formulário solto: campos que seguem a cor do texto do site, com borda neutra */
.bloco--formulario .formlivre{ display:grid; gap:14px; max-width:560px; margin-top:12px; }
.formlivre__campo{ display:grid; gap:6px; }
.formlivre__campo label{ font-size:.82rem; letter-spacing:.02em; opacity:.85; }
.formlivre__campo label small{ opacity:.6; }
.formlivre input, .formlivre textarea{ font:inherit; color:inherit; background:transparent; border:1px solid rgba(127,127,127,.4); border-radius:10px; padding:.7rem .85rem; width:100%; box-sizing:border-box; }
.formlivre input:focus-visible, .formlivre textarea:focus-visible{ outline:2px solid currentColor; outline-offset:2px; }
.formlivre textarea{ resize:vertical; min-height:7rem; }
.formlivre__isca{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.formlivre .btn{ justify-self:start; }
.formlivre__st, .formlivre__ok{ margin:0; font-size:.9rem; }
.formlivre__st.is-erro{ color:#b3261e; }
.formlivre__ok{ padding:.9rem 1rem; border:1px solid rgba(127,127,127,.4); border-radius:10px; }

/* celular e tablet: elemento "por cima" sem posição própria nessa tela segue o fluxo da seção; duas prévias de cada lado só em tela larga; formulário em seção clara */
.elemento-livre[data-fluxo="sobre"][data-cp-fluxo-tela]{ position:relative; left:auto; top:auto; transform:none; width:100%; max-width:100%; margin-block:clamp(20px,4vw,32px); z-index:auto; }
@media (max-width:540px){
  .cvi--central[data-nprev="2"] .cvi__slide{ inset:0 auto 0 17%; width:66%; }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="-1"]{ opacity:.7; transform:translateX(-76%) scale(.74); filter:saturate(.8); }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="1"]{ opacity:.7; transform:translateX(76%) scale(.74); filter:saturate(.8); }
  .cvi--central[data-nprev="2"] .cvi__slide[data-pos="-2"], .cvi--central[data-nprev="2"] .cvi__slide[data-pos="2"]{ opacity:0; pointer-events:none; }
  .abas__lista{ flex-wrap:wrap; row-gap:12px; overflow-x:visible; }
}
.secao--creme2 .form{ background:#fff; border-color:var(--linha); box-shadow:0 22px 44px -26px rgba(var(--azul-rgb),.3); }
.secao--creme2 .campo label{ color:var(--tinta); opacity:.8; }
.secao--creme2 .campo input, .secao--creme2 .campo textarea{ color:var(--tinta); border-bottom-color:rgba(var(--azul-rgb),.3); }
.secao--creme2 .form__aviso, .secao--creme2 .form .aviso{ color:var(--tinta); opacity:.65; }
#participar h2{ margin-bottom:clamp(18px,3vw,28px); }
/* item escondido do menu do celular continua escondido (o display do link vencia o atributo hidden) */
.menu-mobile a[hidden]{ display:none !important; }
/* parte do visual dos modelos do Websitesfy: não vale num site importado */

/* Janela de leitura dos cards: o dialog nativo mantém foco e Escape. */
.card-popup{ width:min(660px,calc(100% - 32px)); max-height:calc(100dvh - 48px); margin:auto; padding:0; border:0; border-radius:20px; overflow:auto; color:var(--texto,#19343a); background:var(--branco,#fffdf8); box-shadow:0 24px 80px rgba(0,0,0,.28); }
.card-popup::backdrop{ background:rgba(9,27,34,.62); backdrop-filter:blur(4px); }
.card-popup__foto{ display:block; width:100%; max-height:280px; object-fit:cover; }
.card-popup__corpo{ padding:clamp(24px,5vw,40px); }
.card-popup__corpo h2{ margin:0 0 20px; font-size:clamp(25px,4vw,36px); line-height:1.15; }
.card-popup__corpo p{ margin:0 0 16px; font-size:16px; line-height:1.75; white-space:pre-line; }
.card-popup__corpo p:last-child{ margin-bottom:0; }
.card-popup__fechar{ position:sticky; top:12px; float:right; margin:12px 12px -54px 0; z-index:1; display:grid; place-items:center; width:42px; height:42px; border:1px solid rgba(0,0,0,.12); border-radius:50%; background:#fffdf8; color:#19343a; font:30px/1 system-ui,sans-serif; cursor:pointer; }
.card-popup__fechar:focus-visible{ outline:3px solid #4a6fa5; outline-offset:3px; }

html.card-popup-aberto{ overflow:hidden; }
