@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-outline-style:solid}::backdrop{--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.inline{display:inline}.text-wrap{text-wrap:wrap}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--ink:#171525;--muted:#625f71;--line:#e2deed;--paper:#fbfaff;--white:#fff;--blue:#6742d6;--dark:#35206f;--tint:#f5f2ff;--orange:#a14add}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.container{width:min(1180px,100% - 64px);margin:auto}header{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fbfdfcdd;height:76px;position:sticky;top:0}.nav{align-items:center;gap:42px;height:100%;display:flex}.logo{letter-spacing:-.06em;align-items:center;gap:8px;font-size:20px;font-weight:800;display:flex}.logo i,.mockbar i{background:var(--blue);color:#fff;clip-path:polygon(50% 0,100% 100%,0 100%);place-items:center;width:24px;height:23px;padding-top:5px;font:800 12px Manrope;display:grid}.logo>span{color:var(--blue)}nav{flex:1;align-items:center;gap:27px;display:flex}nav a,.actions>a{color:#52626c;font-size:12px;font-weight:700}.actions{align-items:center;gap:20px;display:flex}.btn,.whitebtn{background:var(--blue);color:#fff;border-radius:5px;justify-content:center;align-items:center;gap:12px;padding:14px 20px;font-size:12px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 8px 20px #35206f20}.btn:hover{background:var(--dark);transform:translateY(-1px)}.actions .btn{color:#fff;padding:11px 16px}.alt{border:1px solid var(--line);color:var(--ink);box-shadow:none;background:#fff}.alt:hover{border-color:var(--blue);color:var(--blue);background:#fff}.hamb{background:0 0;border:0;font-size:22px;display:none}.hero{background:linear-gradient(#f8faf9,#edf4f3);padding:86px 0 104px;overflow:hidden}.hero-grid{grid-template-columns:47% 53%;align-items:center;gap:10px;display:grid}.hero label,.section label,.final label{letter-spacing:.13em;color:var(--blue);font:500 10px DM Mono}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.065em;margin:22px 0 26px;font-size:clamp(42px,5vw,67px);font-weight:700;line-height:1.04}h1 span,h2 span{color:var(--blue)}.hero>div>div>p,.section>div>p,.section-heading>p{color:var(--muted);max-width:520px;font-size:15px;line-height:1.8}.buttons{gap:11px;margin-top:31px;display:flex}.micro{color:#5c6b75;margin-top:18px;font-size:10px;display:block}.heroart{padding:22px 0 0 28px;position:relative}.kicker{text-align:right;letter-spacing:.12em;color:#78909b;margin-bottom:12px;font:500 9px DM Mono}.kicker b{color:#3d9a7a;margin-left:12px}.mock{background:#fff;border:1px solid #cedce0;border-radius:8px;overflow:hidden;transform:perspective(1400px)rotateY(-3deg)rotateX(1deg);box-shadow:20px 26px 70px #35206f1c}.mockbar{border-bottom:1px solid #e2e9ea;align-items:center;gap:17px;height:45px;padding:0 15px;font-size:9px;display:flex}.mockbar i{width:16px;height:15px;font-size:8px;display:inline-grid}.mockbar>span{color:#9aa7ad;border:1px solid #e5eaeb;border-radius:4px;flex:1;padding:7px 9px}.mockbar em{color:#6742d6;background:#eee8fa;border-radius:50%;place-items:center;width:23px;height:23px;font-size:8px;font-style:normal;font-weight:800;display:grid}.mockbody{grid-template-columns:128px 1fr;min-height:355px;display:grid}.mockbody aside{color:#8a989e;border-right:1px solid #e5eaeb;flex-direction:column;gap:8px;padding:17px 10px;font-size:8px;display:flex}.mockbody aside>*{padding:8px 9px}.mockbody aside b{color:var(--blue);background:#f0ebff;border-radius:4px}.mockbody aside small{color:#adb8bc;margin-top:16px;font:500 7px DM Mono}.dash{padding:22px 23px;position:relative}.dash>small{color:#99a7ad;font:500 7px DM Mono}.dash h3{letter-spacing:-.05em;margin:5px 0;font-size:18px}.dash>p{color:#9aa8ad;font-size:8px}.dash>button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-size:8px;position:absolute;top:25px;right:23px}.metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:19px;display:grid}.metrics>div{border:1px solid #e6ecec;border-radius:5px;padding:11px}.metrics small{color:#9aa7ad;font:500 7px DM Mono;display:block}.metrics b{margin:7px 0;font-size:16px;display:block}.metrics i{color:#7650d8;font-size:7px;font-style:normal}.metrics .muted{color:#85959c}.dashrow{grid-template-columns:1.2fr 1fr;gap:8px;margin-top:10px;display:grid}.chart,.activity{border:1px solid #e6ecec;border-radius:5px;padding:13px}.chart>b,.activity>b{justify-content:space-between;font-size:8px;display:flex}.chart>b small{color:#98a5aa;font-weight:400}.chart>div{border-bottom:1px solid #e3e9ea;justify-content:space-around;align-items:end;height:96px;margin-top:15px;display:flex}.chart i{background:#cbbcf0;border-radius:3px 3px 0 0;width:16px}.chart i.now{background:var(--blue)}.activity p{border-bottom:1px solid #edf0ef;margin:4px 0;padding:9px 0;font-size:8px}.activity p:first-of-type{color:#7c55cf}.activity p:nth-of-type(2){color:#8b67dc}.activity strong{color:var(--ink)}.float{color:#6742d6;background:#fff;border:1px solid #dbe6e7;border-radius:5px;align-items:center;gap:10px;padding:12px 16px;font-size:17px;display:flex;position:absolute;bottom:-17px;left:0;box-shadow:0 13px 30px #35206f18}.float span{color:var(--ink)}.float b,.float small{display:block}.float b{font-size:10px}.float small{color:#84939a;margin-top:3px;font-size:8px}.logos{border-block:1px solid var(--line);background:#fff}.logos .container{align-items:center;gap:55px;height:100px;display:flex}.logos small{color:#5f7176;white-space:nowrap;font-size:10px}.logos .container>div{flex:1;justify-content:space-between;gap:18px;display:flex}.logos b{color:#b1babc;font:500 10px DM Mono}.section{padding:112px 0}.white{background:#fff}.tint{background:var(--tint)}.split{grid-template-columns:42fr 58fr;gap:65px;display:grid}.section h2{letter-spacing:-.065em;margin:20px 0;font-size:clamp(34px,4vw,51px);line-height:1.08}.section p{color:var(--muted);font-size:14px;line-height:1.8}.link,.lightlink{color:var(--blue);gap:9px;margin-top:22px;font-size:12px;font-weight:800;display:inline-flex}.problem-grid{grid-template-columns:1fr 1fr;gap:36px 40px;display:grid}.problem-grid div{border-top:1px solid var(--line);padding-top:17px}.problem-grid small{color:var(--blue);font:500 10px DM Mono}.problem-grid h3{margin:13px 0 8px;font-size:15px}.problem-grid p{margin:0;font-size:12px}.center{text-align:center}.center>p{margin-inline:auto}.benefits,.prices,.articles{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:51px;display:grid}.benefits article,.prices article{border:1px solid var(--line);text-align:left;background:#fff;border-radius:7px;padding:31px}.benefits article.featured,.prices article.selected{background:var(--blue);color:#fff;border-color:var(--blue)}.benefits i{width:36px;height:36px;color:var(--blue);background:#f0ebff;border-radius:5px;place-items:center;font-size:20px;font-style:normal;display:grid}.featured i{color:#fff;background:#805be0}.benefits article.featured{position:relative}.benefits article.featured:before,.benefits article.featured:after{content:"";width:16px;height:16px;border:2px solid #ffffff55;pointer-events:none;position:absolute}.benefits article.featured:before{border-right:0;border-bottom:0;top:14px;left:14px}.benefits article.featured:after{border-left:0;border-top:0;bottom:14px;right:14px}.benefits h3{margin:28px 0 9px;font-size:17px}.benefits p,.prices p{font-size:12px}.benefits a,.articles a{color:var(--blue);font-size:11px;font-weight:800}.featured p,.featured a{color:#e2dbf5}.tabs{border-bottom:1px solid var(--line);gap:3px;margin-top:42px;display:flex;overflow:auto}.tabs button{color:#84939a;white-space:nowrap;background:0 0;border:0;padding:14px 19px;font-size:11px;font-weight:700}.tabs button.active{color:var(--blue);border-bottom:2px solid var(--blue)}.showcase{grid-template-columns:37fr 63fr;align-items:center;gap:55px;padding-top:45px;display:grid}.showcase h3{letter-spacing:-.06em;margin:18px 0;font-size:30px;line-height:1.12}.showcase ul{color:#52706e;padding:0;font-size:11px;font-weight:700;line-height:2.1;list-style:none}.visual{background:#f4f8f8;border:1px solid #dce8e9;border-radius:7px;min-height:315px;padding:20px}.visual>small{color:#83979e;font:500 8px DM Mono}.visual>small b{float:right;color:#7c55cf}.visual h3{margin:33px 0 20px;font-size:21px}.visual h3 em{float:right;color:#7c8d94;background:#fff;border:1px solid #dbe5e7;padding:7px 9px;font:400 9px Manrope}.bars{background:#fff;border:1px solid #e4ecec;flex-direction:column;gap:8px;padding:15px;display:flex}.bars i{background:#cbbcf0;border-radius:4px;height:7px}.bars i:nth-child(3){background:var(--blue);width:86%}.bars i:nth-child(2){width:48%}.bars i:nth-child(4){width:58%}.rows{background:#fff;border:1px solid #e4ecec;grid-template-columns:1.4fr 1fr 1fr;margin-top:10px;font-size:9px;display:grid}.rows>*{border-bottom:1px solid #edf1f1;padding:10px}.rows span{color:#9aabad;font:500 7px DM Mono}.rows em{color:#397c96;font-size:8px;font-style:normal}.rows strong{text-align:right}.flow{text-align:left;grid-template-columns:repeat(5,1fr);gap:0;margin-top:57px;display:grid}.flow>div{padding-right:25px}.flow small{color:var(--blue);font:500 12px DM Mono}.flow hr{border:0;border-top:1px solid #cbdcde;margin:20px 0;position:relative}.flow h3{font-size:14px;line-height:1.3}.flow p{font-size:11px}.calc{background:#fff;padding-top:0}.dark{background:var(--dark);color:#fff;border-radius:8px;grid-template-columns:43% 57%;padding:66px 70px;display:grid;overflow:hidden}.dark label,.final label{color:#a9d4df}.dark h2,.final h2{margin-top:20px}.dark h2 span,.final h2 span{color:#c2b0f1}.dark p,.final p{color:#b6d0d6;max-width:390px;font-size:13px}.chips{flex-wrap:wrap;gap:7px;margin:24px 0;display:flex}.chips i{color:#ded5f5;border:1px solid #7660bb;border-radius:20px;padding:7px 11px;font-size:9px;font-style:normal}.lightlink{color:#fff}.window{min-height:265px;position:relative}.window>b{color:#c2b0f1;font:500 9px DM Mono;position:absolute;top:8px;left:110px}.window>b strong{color:#fff}.drawing{background:#eee9ff;border:10px solid #9c7dea;grid-template-columns:1fr 1fr;gap:7px;width:280px;height:185px;padding:7px;display:grid;position:absolute;top:42px;right:30px;transform:perspective(600px)rotateY(-13deg);box-shadow:20px 21px #062f42}.drawing i{background:#fbf9ff;border:3px solid #7054bb}.window>em{color:var(--ink);background:#fff;border-radius:4px;gap:10px;padding:11px 15px;font-style:normal;display:flex;position:absolute;bottom:2px;right:0}.window>em span b,.window>em span small{display:block}.window>em span b{font-size:10px}.window>em span small{color:#819096;font-size:8px}.quote{border-top:1px solid var(--line);color:#bca9ed;margin-top:38px;padding-top:22px;font:45px Georgia}.quote p{color:#5f7176;margin:12px 0 20px;font:18px Manrope}.quote b,.quote small{color:var(--ink);font:700 11px Manrope;display:block}.quote small{color:#8c9ca2;margin-top:6px;font-size:9px}.cases{border-top:1px solid var(--line)}.cases a{border-bottom:1px solid var(--line);grid-template-columns:35px 1fr 20px;align-items:center;gap:14px;padding:20px 0;display:grid}.cases a>small{color:#5f7176;font:500 10px DM Mono}.cases b,.cases em{display:block}.cases b{font-size:14px}.cases em{color:var(--muted);margin-top:5px;font-size:10px;font-style:normal}.prices article{position:relative}.prices article.selected{border:2px solid var(--blue);padding:30px}.prices article.selected label{color:#fff}.prices article.selected ul{color:#e2dbf5}.prices label{letter-spacing:.12em;font:500 10px DM Mono}.prices h3{margin:19px 0 5px;font-size:27px}.prices hr{border:0;border-top:1px solid var(--line);margin:23px 0}.prices ul{color:#64747b;padding:0;font-size:11px;line-height:2;list-style:none}.prices .btn{width:100%;margin-top:15px}.prices.selected p,.prices.selected ul,.prices .selected p{color:#e2dbf5}.prices mark{color:var(--blue);background:#fff;padding:7px 11px;font:500 8px DM Mono;position:absolute;top:0;right:0}.faq{grid-template-columns:40fr 60fr;gap:80px;display:grid}.faqitem{border-bottom:1px solid var(--line)}.faqitem button{text-align:left;background:0 0;border:0;justify-content:space-between;width:100%;padding:20px 0;font-size:13px;font-weight:700;display:flex}.faqitem button b{color:var(--blue);font-size:19px;font-weight:400}.faqitem p{font-size:12px}.articles article{text-align:left;background:#fff;padding-bottom:24px}.articles article>div{color:#7453cf;background:#ebe6ff;place-items:center;height:170px;margin-bottom:22px;font-size:60px;display:grid}.articles article:nth-child(2)>div{color:#8972c7;background:#f1edff}.articles article:nth-child(3)>div{color:#7764aa;background:#e5e0f6}.articles small,.articles h3,.articles a{margin-left:22px;margin-right:22px}.articles small{color:var(--blue);font:500 8px DM Mono}.articles h3{min-height:45px;margin-top:12px;font-size:16px;line-height:1.35}.final{background:var(--dark);color:#fff;padding:78px 0}.final .container{justify-content:space-between;align-items:center;gap:45px;display:flex}.final h2{margin-bottom:15px}.final .container>div:last-child{flex-direction:column;gap:10px;min-width:235px;display:flex}.whitebtn,.outline{text-align:center;border-radius:5px;width:100%;padding:14px 20px;font-size:12px;font-weight:800}.whitebtn{color:var(--dark);background:#fff}.outline{border:1px solid #6c9bad}.final small{color:#8fb3bd;font-size:9px}footer{color:#d0e2e5;background:#092f40;padding:65px 0 25px}.footgrid{grid-template-columns:2fr repeat(4,1fr);gap:30px;display:grid}.footgrid>div{flex-direction:column;gap:11px;display:flex}.footgrid .logo{color:#fff}.footgrid>div:first-child p{color:#8fb1ba;margin:22px 0;font-size:12px;line-height:1.7}.footgrid>div:first-child a,.footgrid>div:not(:first-child) a{color:#b2ccd1;font-size:10px}.footgrid b{color:#8fb9c3;letter-spacing:.08em;margin-bottom:7px;font:500 10px DM Mono}.copyright{color:#7da2ad;border-top:1px solid #285266;justify-content:space-between;margin-top:50px;padding-top:19px;font-size:9px;display:flex}@media (max-width:900px){.container{width:min(100% - 40px,650px)}nav,.actions{display:none}.hamb{margin-left:auto;display:block}.hero{padding-top:55px}.hero-grid,.split,.showcase,.faq,.dark{grid-template-columns:1fr;gap:45px}.heroart{padding-left:0}.mock{transform:none}.logos .container{height:auto;padding:23px 0;display:block}.logos .container>div{flex-wrap:wrap;margin-top:20px}.benefits,.prices,.articles{grid-template-columns:1fr}.problem-grid{grid-template-columns:1fr}.flow{grid-template-columns:1fr;gap:24px}.flow hr{margin:10px 0}.dark{padding:45px 30px}.final .container{display:block}.final .container>div:last-child{margin-top:30px}.footgrid{grid-template-columns:1fr 1fr}.footgrid>div:first-child{grid-column:1/-1}.copyright{line-height:2;display:block}.copyright span{display:block}}@media (max-width:500px){.section{padding:75px 0}h1{font-size:43px}.buttons{flex-direction:column;align-items:stretch}.buttons a{text-align:center}.mockbody{grid-template-columns:1fr}.mockbody aside{display:none}.dash{padding:15px}.dash>button{right:15px}.metrics,.dashrow{grid-template-columns:1fr}.float{left:10px}.heroart{padding-bottom:35px}.logos b{width:45%;font-size:8px}.problem-grid{gap:26px 18px}.tabs{margin-right:-20px}.tabs button{padding:13px 11px}.visual{padding:13px}.drawing{width:230px;height:155px;right:0}.window>em{right:0}.articles article>div{height:140px}.footgrid{grid-template-columns:1fr 1fr}}.logo-carousel{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.logo-track{align-items:center;gap:34px;width:max-content;animation:28s linear infinite logo-marquee;display:flex!important}.logo-carousel:hover .logo-track{animation-play-state:paused}.logo-track figure{align-items:center;gap:10px;min-width:112px;margin:0;display:flex}.logo-track img{object-fit:contain;width:34px;height:34px}.logo-track figcaption{letter-spacing:.03em;color:#9d98ad;white-space:nowrap;font:500 8px DM Mono}@keyframes logo-marquee{to{transform:translate(calc(-50% - 17px))}}@media (prefers-reduced-motion:reduce){.logo-track{animation:none}}.mobile-nav{display:none}.logo img{object-fit:contain;width:25px;height:25px}.mockbar b{align-items:center;gap:4px;display:flex}.mockbar b img{object-fit:contain;width:16px;height:16px}h1,h2,h3{text-wrap:balance}:is(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-offset:3px;outline:3px solid #a14add}.contact-note{color:#d3c8ef;margin-top:18px;font-size:10px;display:block}.contact-form{color:var(--ink);background:#fff;border-radius:7px;flex-direction:column;gap:12px;min-width:min(100%,380px);padding:24px;display:flex}.field-label{flex-direction:column;gap:6px;font-size:10px;font-weight:800;display:flex}.field-label input,.field-label select,.field-label textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d9d2ea;border-radius:4px;padding:10px 11px;font:400 12px Manrope}.field-label textarea{resize:vertical}.contact-form .field-label{color:var(--ink)}.field-label input::placeholder,.field-label textarea::placeholder{color:#6d6b78;opacity:1}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-error{color:#a3304c!important;margin:0!important;font-size:11px!important}.form-success{flex-direction:column;gap:12px;padding:18px 0;display:flex}.form-success b{font-size:18px}.form-success span{color:var(--muted);font-size:12px}.form-success .outline{background:var(--dark);color:#fff;border:0}.logo-track figure{flex-shrink:0}@media (max-width:900px){.mobile-nav{border:1px solid var(--line);background:#fff;border-radius:7px;flex-direction:column;gap:4px;padding:14px;display:flex;position:absolute;top:76px;left:20px;right:20px;box-shadow:0 8px 22px #35206f18}.mobile-nav a{padding:12px 10px;font-size:12px;font-weight:800}.mobile-nav .btn{color:#fff;text-align:center;margin-top:5px}.final .container{align-items:start}.contact-form{min-width:0;max-width:650px}.form-row{grid-template-columns:1fr}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}

/* ========================================================================
   POLISH LAYER — tokens, radius, weights, glass, soft shadow, motion,
   contrast, spacing, mobile fixes. Appended last so cascade wins.
   ======================================================================== */

:root{
  --accent:#6742d6; --accent-strong:#35206f; --accent-soft:#f0ebff;
  --shadow-color:53 32 111;
  --r-xs:8px; --r-sm:12px; --r-md:16px; --r-lg:20px; --r-pill:999px;
  --s-1:0 1px 2px rgb(var(--shadow-color)/.10), 0 1px 1px rgb(var(--shadow-color)/.05);
  --s-2:0 10px 30px -12px rgb(var(--shadow-color)/.18), 0 2px 6px -2px rgb(var(--shadow-color)/.08);
  --s-3:0 24px 60px -20px rgb(var(--shadow-color)/.28), 0 6px 16px -6px rgb(var(--shadow-color)/.10);
  --fs-xs:11px; --fs-sm:13px; --fs-md:15px; --fs-lg:18px; --fs-h3:22px;
  --tr-tight:-.03em; --tr-body:-.005em; --tr-label:.12em;
  --gutter:24px;
  color-scheme:light;
}
@media (min-width:900px){ :root{ --gutter:32px } }

html{ scroll-behavior:smooth }
body{ letter-spacing:var(--tr-body) }
section[id]{ scroll-margin-top:96px }

.container{ width:min(1240px, 100% - (var(--gutter) * 2)) }

/* ---- Typography: weight + tracking + size normalization -------------- */
h1,h2,h3,h4,h5,h6{ font-weight:700 }
.section h2, .section h3, .showcase h3, .visual h3,
.problem-grid h3, .benefits h3, .prices h3, .articles h3,
.flow h3, .dash h3, .float b, .cases b, .form-success b,
.dash > h3, .quote b{ font-weight:700 }

h1{ letter-spacing:var(--tr-tight); font-size:var(--fs-h1, clamp(44px,5vw,68px)); line-height:1.05 }
.section h2, h2{ letter-spacing:var(--tr-tight); font-size:clamp(34px,4vw,52px); line-height:1.08 }
h3, .showcase h3, .visual h3, .benefits h3, .prices h3, .articles h3,
.problem-grid h3, .flow h3, .dash h3{ letter-spacing:-.02em }
.logo{ letter-spacing:-.02em }

label, .kicker, .flow small, .prices label, .problem-grid small,
.footgrid b, .articles small, .cases a > small, .rows span, .dash > small,
.metrics small, .visual > small, .window > b{
  letter-spacing:var(--tr-label); font-weight:600;
}

.hero p, .section p{ font-size:var(--fs-md); line-height:1.75 }
.problem-grid p, .benefits p, .prices p, .flow p, .cases em{ font-size:var(--fs-sm); line-height:1.65 }
.articles h3{ font-size:var(--fs-lg); line-height:1.35 }
.articles small{ font-size:var(--fs-xs) }

/* Legibility floor for mock micro-copy — nunca abaixo de 10px */
.dash > small, .dash > p, .metrics small, .metrics i,
.chart > b, .chart > b small, .activity p, .rows > *, .rows span,
.mockbar, .mockbar > span, .mockbody aside, .mockbody aside small,
.float small, .visual > small, .visual h3 em, .bars i,
.footgrid > div:first-child a, .footgrid > div:not(:first-child) a,
.copyright{ font-size:max(10px, 1em) }
.mockbar{ font-size:10px }
.mockbody aside{ font-size:10px }
.dash > small{ font-size:10px }
.dash > p{ font-size:11px }
.dash h3{ font-size:20px }
.metrics small{ font-size:10px }
.metrics b{ font-size:17px }
.metrics i{ font-size:10px }
.chart > b{ font-size:10px }
.activity p{ font-size:10px }
.rows{ font-size:11px }
.rows > *{ padding:11px 10px }
.rows span{ font-size:10px }
.rows em{ font-size:10px }
.visual > small{ font-size:10px }
.footgrid > div:first-child a, .footgrid > div:not(:first-child) a{ font-size:12px }
.copyright{ font-size:11px }
.articles small{ font-size:11px }

p{ text-wrap:pretty }

/* ---- Radius ---------------------------------------------------------- */
.btn, .whitebtn, .outline, .actions .btn{ border-radius:var(--r-sm) }
.field-label input, .field-label select, .field-label textarea{ border-radius:var(--r-sm) }
.mock, .contact-form, .visual, .benefits article, .prices article,
.articles article, .dark, .float, .window > em{ border-radius:var(--r-md) }
.window .drawing{ border-radius:14px }
.chips i, .prices mark, .metrics > div, .chart, .activity, .bars,
.rows, .mockbar > span, .dash > button, .articles article > div,
.mobile-nav, .faqitem{ border-radius:var(--r-xs) }
.faqitem{ border-radius:0 }
.chips i{ border-radius:var(--r-pill) }
.prices mark{ border-radius:0 0 0 var(--r-sm) }

/* ---- Borders more velvety ------------------------------------------- */
:root{ --line-soft: color-mix(in oklab, var(--ink) 8%, transparent) }
.problem-grid div{ border-top-color:var(--line-soft) }
.cases a, .quote, .faqitem, .footgrid .copyright, .copyright,
.tabs, .prices hr, .flow hr{ border-color:var(--line-soft) }

/* ---- Shadow tokens applied ------------------------------------------ */
.btn{ box-shadow:var(--s-2) }
.mock{ box-shadow:var(--s-3) }
.float{ box-shadow:var(--s-2) }
.mobile-nav{ box-shadow:var(--s-2) }
.window .drawing{ box-shadow:0 30px 60px -25px rgb(6 47 66 / .55), 0 12px 20px -12px rgb(6 47 66 / .35) }

/* ---- Glass utility --------------------------------------------------- */
@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){
  header{
    -webkit-backdrop-filter:blur(10px) saturate(130%);
    backdrop-filter:blur(10px) saturate(130%);
  }
  .float{
    -webkit-backdrop-filter:blur(10px) saturate(130%);
    backdrop-filter:blur(10px) saturate(130%);
  }
  .contact-form{
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
  .dark .window > em{
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
}
header{
  background:color-mix(in oklab, #fbfaff 85%, transparent);
  border-bottom:1px solid color-mix(in oklab, var(--ink) 8%, transparent);
  box-shadow:0 1px 0 rgb(255 255 255 / .55) inset, 0 6px 24px -18px rgb(var(--shadow-color)/.35);
}
.float{
  background:color-mix(in oklab, #fff 90%, transparent);
  border:1px solid color-mix(in oklab, #fff 60%, var(--line));
}
.contact-form{
  background:#ffffff;
  border:1px solid color-mix(in oklab, var(--ink) 6%, transparent);
  box-shadow:0 1px 0 rgb(255 255 255 / .8) inset, var(--s-2);
}
.mock{
  background:#ffffff;
  border:1px solid color-mix(in oklab, #fff 40%, var(--line));
}
.dark .window > em{
  background:color-mix(in oklab, #fff 88%, transparent);
  border:1px solid color-mix(in oklab, #fff 45%, transparent);
}

/* ---- Hero gradient realigned to paleta roxa ------------------------- */
.hero{ background:linear-gradient(180deg, #faf9ff, #f2eefb) }

/* ---- Footer: spacing system and responsive rhythm ------------------ */
footer{ background:#12102a; color:#d0d0e2; padding:clamp(48px,6vw,72px) 0 24px; }
.footgrid{ display:grid; grid-template-columns:minmax(280px,2fr) minmax(0,3fr); align-items:start; column-gap:clamp(32px,4vw,48px); row-gap:48px; }
.footgrid>div{ min-width:0; }
.footgrid>div:first-child{ display:flex; flex-direction:column; align-items:flex-start; }
.footgrid>div:first-child .logo{ gap:10px; margin-bottom:16px; font-size:25px; line-height:1.2; }
.footgrid>div:first-child .logo img{ width:32px; height:32px; }
.footgrid>div:first-child p{ max-width:34ch; margin:0 0 20px; color:#a29fb8; font-size:15px; line-height:1.7; }
.footer-contact{ display:flex; flex-direction:column; gap:8px; }
.footgrid>div:first-child>a, .footer-contact a{ display:inline-flex; align-items:center; gap:9px; color:#c1bfd6; font-size:15px; line-height:1.5; }
.footgrid>div:first-child>a>i, .footer-contact a>i{ flex:0 0 18px; width:18px; color:#c8a6ff; font-size:16px; line-height:1; text-align:center; }
.footgrid>.foot-links{ display:grid; flex-direction:initial; grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); align-items:start; column-gap:clamp(24px,3vw,32px); row-gap:32px; }
.foot-links>div{ display:flex; flex-direction:column; gap:10px; min-width:0; }
.foot-links>div>b{ margin:0 0 2px; color:#a8a5c4; }
.footgrid b{ color:#a8a5c4; }
.footer-social{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:28px; }
.footer-social>b{ margin:0; color:#d9d4ed; font:700 12px Manrope,Arial,sans-serif; letter-spacing:0; }
.footer-social nav{ display:flex; align-items:center; gap:8px; }
.footer-social nav a{ width:44px; height:44px; display:inline-flex!important; align-items:center; justify-content:center; border:1px solid rgb(255 255 255 / .18); border-radius:var(--r-sm); color:#fff!important; font-size:17px!important; transition:background .2s, border-color .2s, transform .2s, color .2s; }
.footer-social nav a:hover{ background:var(--accent); border-color:var(--accent); color:#fff!important; transform:translateY(-2px); }
.footer-social nav a:active{ transform:translateY(0); }
.copyright{ display:flex; justify-content:space-between; gap:16px; margin-top:clamp(48px,5vw,56px); padding-top:20px; color:#8380a1; border-top-color:rgb(255 255 255 / .08); font-size:11px; line-height:1.5; }
.copyright span{ text-align:right; }

/* ---- Buttons: soft press + halo focus ------------------------------- */
.btn{ transition:transform .2s, box-shadow .25s, background .2s }
.btn:hover{ box-shadow:var(--s-3) }
.btn:active{ transform:translateY(0) scale(.98) }
.actions .btn:hover{ box-shadow:0 0 0 6px color-mix(in oklab, var(--accent) 18%, transparent), var(--s-2) }
.alt{ transition:transform .2s, border-color .2s, color .2s, background .2s }
.alt:hover{ transform:translateY(-1px) }
.whitebtn{ transition:transform .2s, box-shadow .25s }
.whitebtn:hover{ transform:translateY(-1px); box-shadow:var(--s-3) }
.whitebtn:active{ transform:translateY(0) scale(.98) }

/* ---- Tabs: active state pill + sliding underline via bar ----------- */
.tabs{ gap:6px; border-bottom:1px solid var(--line-soft); padding-bottom:6px }
.tabs button{ border-radius:var(--r-pill); padding:10px 16px; transition:background .25s, color .25s; cursor:pointer }
.tabs button:hover{ color:var(--accent-strong); background:color-mix(in oklab, var(--accent) 6%, transparent) }
.tabs button.active{ color:#fff; background:var(--accent); border-bottom:0; box-shadow:var(--s-2) }

/* ---- FAQ ------------------------------------------------------------- */
.faqitem button{ cursor:pointer; transition:color .2s }
.faqitem button:hover{ color:var(--accent) }
.faqitem button b{ transition:transform .25s; display:inline-block }
.faqitem.open button b{ transform:rotate(45deg) }
.faqitem p{ font-size:13px; line-height:1.7; padding-bottom:18px; color:var(--muted); max-height:0; overflow:hidden; opacity:0; transition:max-height .35s ease, opacity .25s ease, padding .25s }
.faqitem.open p{ max-height:400px; opacity:1 }

/* ---- Cards: soft hover ---------------------------------------------- */
.benefits article, .prices article, .articles article{
  transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s, border-color .3s;
}
.benefits article:hover, .articles article:hover{
  transform:translateY(-6px); box-shadow:var(--s-3);
  border-color:color-mix(in oklab, var(--accent) 22%, var(--line));
}
.prices article:not(.selected):hover{
  transform:translateY(-6px); box-shadow:var(--s-3);
  border-color:color-mix(in oklab, var(--accent) 22%, var(--line));
}
.prices article.selected{ box-shadow:0 30px 60px -25px rgb(var(--shadow-color)/.35) }
.prices article.selected mark{ top:-1px; right:-1px }
.cases a{ transition:transform .3s, background .3s, padding .3s; padding-left:6px; border-radius:var(--r-xs) }
.cases a:hover{ transform:translateX(4px); background:color-mix(in oklab, var(--accent) 5%, transparent); padding-left:14px }
.problem-grid > div{ transition:transform .3s }
.problem-grid > div:hover{ transform:translateY(-3px) }
.flow > div{ transition:transform .3s }
.flow > div:hover{ transform:translateY(-3px) }

/* ---- Links: better underline ---------------------------------------- */
.link, .lightlink{ text-underline-offset:3px; transition:gap .2s, color .2s }
.link:hover, .lightlink:hover{ gap:12px }
.link:hover{ color:var(--accent-strong) }

/* ---- Contrast fixes (P0/P1 do audit) -------------------------------- */
.field-label{ color:var(--ink) }
.final .contact-form .field-label{ color:var(--ink) }
.field-label input::placeholder,
.field-label textarea::placeholder{ color:#6b6a7e }
.micro{ color:#4a5560 }
.quote p{ color:#4d5d63 }
.benefits article.featured p, .benefits article.featured a,
.prices article.selected ul, .prices article.selected p{ color:#efeaff }
.prices article.selected label{ color:#efeaff }
.metrics .muted{ color:#6b7a82 }
.metrics small, .dash > small, .chart > b small, .activity p{ color:#5f6b74 }
.footgrid b{ color:#a8a5c4 }

/* ---- Section paragraph muted, but readable -------------------------- */
.section p, .final p, .dark p{ color:var(--muted) }
.dark p{ color:#d4ccf0 }
.final p{ color:#d4ccf0 }
.final small.contact-note{ color:#d4ccf0 }

/* ---- CTA final: contato direto pelo WhatsApp ----------------------- */
.contact-cta{ color:#fff; background:color-mix(in oklab, #fff 7%, transparent); border:1px solid color-mix(in oklab, #fff 16%, transparent); border-radius:var(--r-md); padding:28px; display:grid!important; grid-template-columns:auto 1fr; align-items:center; gap:7px 16px!important; min-width:min(100%,430px)!important; }
.contact-cta-icon{ width:48px; height:48px; color:#fff; background:#22c55e; border-radius:50%; display:grid; place-items:center; grid-row:span 2; font-size:25px; }
.contact-cta h3{ color:#fff; margin:0; font-size:18px; }
.contact-cta p{ color:#ded5f5!important; margin:0; font-size:12px!important; line-height:1.6!important; }
.contact-cta .whitebtn{ grid-column:1/-1; margin-top:15px; min-height:48px; box-shadow:none; }
.contact-cta .whitebtn:hover{ background:#f3efff; color:var(--dark); }
.contact-cta>small{ grid-column:1/-1; color:#b9addd; font-size:10px; text-align:center; }
@media (max-width:500px){ .contact-cta{ padding:22px; } .contact-cta .whitebtn{ margin-top:12px; } }

/* ---- Reveal preset (works with data-reveal via inline JS) ---------- */
[data-reveal]{ opacity:0; transform:translateY(20px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1) }
[data-reveal="roll"]{ transform:translateY(28px) rotate(-1.2deg) }
[data-reveal="show"]{ transform:scale(.96); opacity:0 }
[data-reveal].is-in{ opacity:1; transform:none }
.reveal-group > *[data-reveal]{ transition-delay:calc(var(--i,0) * 80ms) }

/* ---- Focus over dark backgrounds ------------------------------------ */
.dark :is(a,button,input,select,textarea):focus-visible,
.final :is(a,button,input,select,textarea):focus-visible,
footer :is(a,button):focus-visible{
  outline:3px solid #c8a6ff; outline-offset:3px;
}

@media (max-width:900px){
  footer{ padding:clamp(48px,7vw,56px) 0 24px; }
  .footgrid{ grid-template-columns:1fr; row-gap:36px; }
  .footgrid>.foot-links{ grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:22px; row-gap:28px; }
  .copyright{ margin-top:48px; }
}
@media (max-width:600px){
  footer{ padding:40px 0 24px; }
  .footgrid>.foot-links{ grid-template-columns:1fr; row-gap:24px; }
  .footgrid>.foot-links a{ min-height:44px; align-items:center; }
  .copyright{ flex-direction:column; gap:8px; margin-top:40px; }
  .copyright span{ text-align:left; }
}
@media (prefers-reduced-motion:reduce){ .footer-social nav a{ transition:none; } }

/* ---- Cookie consent ------------------------------------------------- */
.cookie-consent{
  position:fixed;
  z-index:30;
  right:clamp(16px,4vw,32px);
  bottom:clamp(16px,3vw,28px);
  left:clamp(16px,4vw,32px);
  width:min(940px,calc(100% - 32px));
  margin-inline:auto;
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:var(--ink);
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  box-shadow:0 12px 30px rgb(var(--shadow-color)/.18);
}
.cookie-consent[hidden]{ display:none; }
.cookie-consent p{ max-width:72ch; margin:0; font-size:14px; line-height:1.6; }
.cookie-consent p a{ color:var(--accent-strong); text-decoration:underline; text-underline-offset:3px; }
.cookie-consent button{
  flex:0 0 auto;
  min-width:116px;
  min-height:48px;
  padding:12px 20px;
  color:#fff;
  background:var(--accent);
  border:0;
  border-radius:var(--r-sm);
  box-shadow:var(--s-2);
  font-size:12px;
  font-weight:800;
}
.cookie-consent button:hover{ background:var(--accent-strong); }
.cookie-consent button:focus-visible{ outline:3px solid #c8a6ff; outline-offset:3px; }
@media (max-width:600px){
  .cookie-consent{ align-items:stretch; flex-direction:column; gap:14px; padding:18px; }
  .cookie-consent p{ font-size:13px; }
  .cookie-consent button{ width:100%; }
}
@media (prefers-reduced-motion:reduce){ .cookie-consent button{ transition:none; } }

/* ---- Error page ----------------------------------------------------- */
.error-page{background:var(--paper);min-height:clamp(500px,65vh,720px);padding:clamp(70px,10vw,130px) 0;display:flex;align-items:center}
.error-panel{max-width:680px;margin:0 auto;padding:clamp(34px,6vw,64px);text-align:center;background:var(--white);border:1px solid var(--line);border-radius:var(--r-md)}
.error-kicker{margin:0 0 22px;color:var(--blue);font:600 11px DM Mono,monospace;letter-spacing:.14em;text-transform:uppercase}
.error-code{margin:0;color:var(--blue);font-size:clamp(72px,12vw,132px);font-weight:800;line-height:.9;letter-spacing:-.04em}
.error-panel h1{margin:28px 0 12px;font-size:clamp(25px,4vw,38px);letter-spacing:-.03em;line-height:1.12}
.error-description{max-width:48ch;margin:0 auto 30px;color:var(--muted);font-size:15px;line-height:1.7}
.error-panel .btn{min-width:170px}
@media (max-width:500px){.error-page{min-height:480px;padding:52px 0}.error-panel{padding:32px 22px}.error-code{font-size:80px}.error-panel h1{font-size:27px}}

/* ---- Skip link ------------------------------------------------------- */
.skip{ position:absolute; left:-9999px; top:0; background:var(--accent); color:#fff; padding:12px 18px; border-radius:0 0 var(--r-sm) 0; font-weight:700; z-index:100 }
.skip:focus{ left:0 }

/* ---- Hero mock parallax base --------------------------------------- */
.mock{ transition:transform .35s cubic-bezier(.2,.7,.2,1); will-change:transform }

/* ---- Mobile responsive fixes (P1 do audit) -------------------------- */
@media (max-width:900px){
  .problem-grid{ grid-template-columns:1fr; gap:18px }
  .form-row{ grid-template-columns:1fr }
  header{ background:color-mix(in oklab, #fbfaff 88%, transparent) }
}
@media (max-width:600px){
  .form-row{ grid-template-columns:1fr }
}

/* ---- Reduced motion umbrella ---------------------------------------- */
@media (prefers-reduced-motion:reduce){
  [data-reveal], .btn, .alt, .whitebtn, .benefits article, .prices article,
  .articles article, .cases a, .problem-grid > div, .flow > div, .mock,
  .faqitem button b, .tabs button{ transition:none !important; transform:none !important }
  [data-reveal]{ opacity:1 !important }
}


/* ---- Empty state + form success/error refined ---------------------- */
.form-error{ padding:8px 12px; border-radius:var(--r-xs); background:#fde7ec; color:#a3304c !important }
.form-success{ padding:24px; text-align:center; border-radius:var(--r-md); background:color-mix(in oklab, var(--accent-soft) 60%, #fff) }
.form-success .outline{ background:var(--accent); color:#fff; border:0 }

/* ---- Chips (dark section) ------------------------------------------- */
.chips i{ transition:background .25s, border-color .25s }
.chips i:hover{ background:color-mix(in oklab, #fff 12%, transparent) }

/* ---- Logo carousel: soft edge already exists — deepen mask ---------- */
.logo-carousel{ -webkit-mask-image:linear-gradient(90deg,transparent,#000 10% 90%,transparent); mask-image:linear-gradient(90deg,transparent,#000 10% 90%,transparent) }

/* ---- Section spacing normalized ------------------------------------- */
.buttons{ gap:12px }
.benefits, .prices, .articles{ gap:16px }
.problem-grid{ gap:32px 24px }
.split{ gap:64px }
.showcase{ gap:56px }

/* ---- Sticky header on scroll adds a bit more presence -------------- */
header{ transition:box-shadow .3s, background .3s }
.scrolled header, header.scrolled{
  background:color-mix(in oklab, #fbfaff 90%, transparent);
  box-shadow:0 1px 0 rgb(255 255 255 / .6) inset, 0 12px 30px -20px rgb(var(--shadow-color)/.35);
}

/* ---- Article thumbnails: soften ------------------------------------- */
.articles article > div{ background-image:linear-gradient(135deg, #ebe6ff, #f6f2ff); }
.articles article:nth-child(2) > div{ background-image:linear-gradient(135deg,#efeafc,#f4efff) }
.articles article:nth-child(3) > div{ background-image:linear-gradient(135deg,#e6dff6,#f0eafd) }

/* Mobile navigation refinement */
.hamb{width:44px;height:44px;display:none;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:0;border-radius:var(--r-xs);}
.hamb span{width:20px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s ease,opacity .2s ease;}
.hamb[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.hamb[aria-expanded="true"] span:nth-child(2){opacity:0;}
.hamb[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
.hamb:focus-visible{outline:3px solid var(--orange);outline-offset:3px;}
.mobile-nav{inset-inline:var(--gutter);top:calc(100% + 8px);max-height:calc(100dvh - 92px);overflow-y:auto;overscroll-behavior:contain;}
.mobile-nav a{min-height:44px;display:flex;align-items:center;}
.mobile-nav .btn{min-height:44px;}
@media (max-width:900px){
  .hamb{display:flex;}
  .mobile-nav{left:var(--gutter);right:var(--gutter);}
}
@media (prefers-reduced-motion:reduce){
  .hamb span{transition:none;}
}

/* Planos */
.plan-cards{align-items:stretch}.plan-cards article{flex-direction:column;display:flex}.plan-cards h3{letter-spacing:-.04em;font-size:30px}.plan-cards h3 small{color:var(--muted);margin-left:4px;font-size:11px;font-weight:600}.plan-cards article.selected h3 small{color:#efeaff}.plan-cards ul{flex:1}.plan-cards .btn{margin-top:24px}.plan-fee{color:var(--muted);margin:20px auto 0;font-size:11px}.plan-comparison{text-align:left;max-width:100%;margin-top:42px}.plan-comparison summary{color:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 0;list-style:none;font-size:13px;font-weight:800;cursor:pointer;display:flex}.plan-comparison summary::-webkit-details-marker{display:none}.plan-comparison summary span{color:var(--blue);font-size:21px;font-weight:400;transition:transform .2s}.plan-comparison[open] summary span{transform:rotate(45deg)}.plan-comparison-scroll{overflow-x:auto}.plan-comparison table{border-collapse:collapse;min-width:820px;width:100%;margin-top:16px;font-size:11px}.plan-comparison caption{height:1px;width:1px;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;overflow:hidden;position:absolute}.plan-comparison th,.plan-comparison td{border-bottom:1px solid var(--line);padding:14px 16px}.plan-comparison thead th{color:var(--muted);font-size:10px;font-weight:800}.plan-comparison th:first-child{width:39%;text-align:left}.plan-comparison td,.plan-comparison thead th:not(:first-child){text-align:center}.plan-comparison tbody th{font-weight:700}.plan-comparison tbody td{color:var(--blue);font-size:13px;font-weight:800}.plan-comparison tbody tr:nth-child(2) td,.plan-comparison tbody tr:nth-child(6) td,.plan-comparison tbody tr:nth-child(7) td{color:var(--ink);font-size:11px}.plan-comparison tbody td:last-child,.plan-comparison tbody tr:nth-child(2) td:last-child,.plan-comparison tbody tr:nth-child(6) td:last-child,.plan-comparison tbody tr:nth-child(7) td:last-child{color:#9290a0}@media (max-width:900px){.plan-comparison{margin-top:30px}.plan-comparison table{min-width:720px}.plan-comparison th,.plan-comparison td{padding:13px 12px}}
.plan-cards .upcoming{background:#f9f8fd;border-style:dashed}.plan-cards .upcoming mark{color:#fff;background:#827d95}.plan-comparison-title{letter-spacing:-.02em;margin:0 0 4px;font-size:20px}.plan-comparison thead small{font-size:9px;font-weight:600}@media (min-width:1050px){.prices.plan-cards{grid-template-columns:repeat(4,1fr)}}@media (min-width:901px) and (max-width:1049px){.prices.plan-cards{grid-template-columns:repeat(2,1fr)}}
.plan-proof{margin:12px auto 0!important;color:var(--accent-strong)!important;font-size:12px!important;font-weight:800;line-height:1.5!important}.plan-proof span{color:var(--accent);padding:0 5px}.plan-cards article{min-width:0}.plan-cards article li{line-height:1.55}.plan-cards article li.emphasis{font-weight:800}.plan-cards article .plan-promise{margin:18px 0 0!important;color:var(--muted);font-size:12px!important;font-weight:800;line-height:1.55!important}.plan-cards article.selected .plan-promise{color:#efeaff}.plan-cards .plan-tag{align-self:flex-start;margin:-8px 0 14px;color:var(--accent-strong);background:var(--accent-soft);border-radius:var(--r-pill);padding:6px 9px;font:600 9px DM Mono,monospace;letter-spacing:.08em}.plan-cards article.selected{position:relative}.plan-included{margin:42px 0 0;padding:26px 30px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);text-align:left}.plan-included h3{margin:0 0 17px;font-size:18px}.plan-included ul{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 24px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:12px;line-height:1.55}.plan-included li::before{content:'✓';margin-right:7px;color:var(--accent);font-weight:800}.plan-cards article.selected{transform:translateY(-7px)}
@media (max-width:900px){.plan-cards article.selected{transform:none}.plan-included ul{grid-template-columns:repeat(2,1fr)}}
@media (max-width:500px){.plan-included{padding:22px 20px}.plan-included ul{grid-template-columns:1fr;gap:10px}.plan-proof{font-size:11px!important}}
.plan-cards article.selected .btn{color:var(--blue);background:#fff;box-shadow:0 4px 10px rgb(28 15 73 / .18)}.plan-cards article.selected .btn:hover{color:var(--dark);background:#f7f4ff}
.tabs button{align-items:center;gap:6px;display:inline-flex}.tabs .tab-icon{justify-content:center;align-items:center;width:13px;font-size:12px;line-height:1;display:inline-flex}.tabs button.active .tab-icon{color:currentColor}@media (max-width:500px){.tabs button{gap:5px}.tabs .tab-icon{width:12px;font-size:11px}}
.whatsapp-float{z-index:30;width:64px;height:64px;position:fixed;right:24px;bottom:24px}.whatsapp-float-ping,.whatsapp-float-button{border-radius:50%;position:absolute;inset:0}.whatsapp-float-ping{background:#22c55e;opacity:.75;animation:whatsapp-ping 1.5s ease-out infinite}.whatsapp-float-button{color:#fff;background:#22c55e;justify-content:center;align-items:center;display:flex;box-shadow:0 8px 16px rgb(0 0 0 / .15);transition:transform .2s,background .2s}.whatsapp-float-icon{width:32px;height:32px;display:block}.whatsapp-float:hover .whatsapp-float-button{background:#16a34a;transform:scale(1.05)}.whatsapp-float:focus-visible{outline:3px solid var(--orange);outline-offset:4px}@keyframes whatsapp-ping{0%{transform:scale(1);opacity:.75}75%,100%{transform:scale(1.8);opacity:0}}@media (max-width:500px){.whatsapp-float{right:16px;bottom:16px;width:56px;height:56px}.whatsapp-float-icon{width:28px;height:28px}}@media (prefers-reduced-motion:reduce){.whatsapp-float-ping{animation:none;opacity:.35}.whatsapp-float-button{transition:none}}
.logo-track{gap:46px}.logo-track figure{flex-direction:column;justify-content:center;gap:7px;min-width:148px}.logo-track img{object-fit:contain;width:120px;height:48px}.logo-track figcaption{text-align:center;text-transform:uppercase;color:#625f71;font:600 8px Manrope,Arial,sans-serif;letter-spacing:.04em}@media (max-width:900px){.logo-track{gap:32px}.logo-track figure{min-width:134px}.logo-track img{width:108px;height:44px}}
.problem-grid small,.flow small{font-size:14px;font-weight:700;line-height:1}.problem-grid h3{margin-top:15px}.flow hr{margin-top:18px}@media (max-width:500px){.problem-grid small,.flow small{font-size:13px}}

/* Internal content surfaces: a quiet reading room inside the Oficina conectada. */
.site-cms-header{position:sticky;top:0;z-index:20;background:color-mix(in oklab,#fbfaff 94%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft)}
.breadcrumbs{background:var(--accent-strong)!important;padding:34px 0!important}.breadcrumbs-content{max-width:980px;margin:0 auto;text-align:left}.breadcrumbs .page-title{color:#fff!important;font-size:13px!important;font-weight:800;letter-spacing:.02em;margin:0 0 8px}.breadcrumbs .breadcrumb-nav{display:flex;gap:9px;align-items:center;padding:0;margin:0;list-style:none}.breadcrumbs .breadcrumb-nav li{color:#dcd4f8;font-size:11px}.breadcrumbs .breadcrumb-nav li+li:before{content:'/';color:#9f91cc;margin-right:9px}.breadcrumbs .breadcrumb-nav a{color:#fff;font-weight:700}.breadcrumbs .breadcrumb-nav a:hover{text-decoration:underline;text-underline-offset:3px}
.site-cms-header .container{min-height:76px;display:flex;align-items:center;gap:28px}
.site-cms-header .logo{flex:0 0 auto}.site-cms-header nav{display:flex;align-items:center;gap:18px;min-width:0;overflow-x:auto;scrollbar-width:none}.site-cms-header nav::-webkit-scrollbar{display:none}
.site-cms-header nav a{color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap}.site-cms-header nav a:hover{color:var(--accent-strong)}
.nav > nav{justify-content:center}
.site-cms-header nav{justify-content:center}
.site-cms-header .actions{display:flex;align-items:center;gap:12px;margin-left:auto;white-space:nowrap}.site-cms-header .actions a:first-child{color:var(--muted);font-size:12px;font-weight:700}.site-cms-header .actions .btn{color:#fff}
.cms-page{background:var(--paper);padding:44px 0 112px}.cms-page .container{max-width:980px}.cms-page .breadcrumbs,.blog-post .breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;color:var(--muted);font-size:12px;margin-bottom:58px}.cms-page .breadcrumbs a,.blog-post .breadcrumbs a{color:var(--accent-strong);font-weight:700}.cms-page article{max-width:760px;margin:0 auto}.cms-page-header{padding-bottom:36px;border-bottom:1px solid var(--line-soft)}.cms-page-header .eyebrow,.blog-kicker{color:var(--accent);font:600 11px DM Mono,monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 15px}.cms-page-header h1{font-size:clamp(40px,5vw,64px);max-width:16ch;margin:0}.cms-page-content{padding-top:42px;color:var(--ink);font-size:17px;line-height:1.8;max-width:72ch}.cms-page-content h1{display:none}.cms-page-content h2{font-size:clamp(25px,3vw,36px);margin:50px 0 15px}.cms-page-content h3{font-size:21px;margin:34px 0 10px}.cms-page-content p{margin:0 0 20px;color:var(--muted)}.cms-page-content ul,.cms-page-content ol{margin:0 0 24px;padding-left:1.3em}.cms-page-content li{margin:8px 0;color:var(--muted)}.cms-page-content strong{color:var(--ink)}.cms-page-content a{color:var(--accent-strong);font-weight:700;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--accent) 35%,transparent);text-underline-offset:3px}.cms-page-content a:hover{text-decoration-color:currentColor}.cms-page-content hr{border-top:1px solid var(--line-soft);margin:42px 0}
.blog-index{background:var(--paper);padding-top:46px}.blog-index-intro{max-width:760px;padding:28px 0 62px}.blog-index-intro h1{max-width:15ch;margin:0 0 18px;font-size:clamp(40px,5vw,64px)}.blog-index-intro>p:last-child{max-width:58ch;color:var(--muted);font-size:18px;line-height:1.7}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;align-items:stretch}.blog-card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r-md);overflow:hidden;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .3s}.blog-card:hover{transform:translateY(-5px);box-shadow:var(--s-2);border-color:color-mix(in oklab,var(--accent) 28%,var(--line))}.blog-card-image{background:var(--accent-soft);aspect-ratio:16/9;overflow:hidden}.blog-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.blog-card:hover .blog-card-image img{transform:scale(1.035)}.blog-card-body{display:flex;flex:1;flex-direction:column;padding:24px 24px 26px}.blog-card-meta{display:flex;gap:9px;align-items:center;color:var(--muted);font:600 11px Manrope,Arial,sans-serif;letter-spacing:.02em}.blog-card h2{font-size:22px;line-height:1.22;margin:16px 0 12px}.blog-card h2 a{color:var(--ink)}.blog-card h2 a:hover{color:var(--accent-strong)}.blog-card-body>p{color:var(--muted);font-size:14px;line-height:1.65;margin:0 0 22px}.blog-card-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;color:var(--accent-strong);font-size:13px;font-weight:800}.blog-card-link span{font-size:18px;line-height:1;transition:transform .2s}.blog-card-link:hover span{transform:translateX(4px)}
.blog-post{background:var(--paper);padding-top:48px}.blog-post .container{max-width:980px}.blog-post-shell{max-width:860px;margin:0 auto}.blog-post-header{max-width:760px;margin:0 auto 40px}.blog-post-header h1{font-size:clamp(40px,6vw,72px);line-height:1.04;max-width:14ch;margin:18px 0}.blog-post-dek{color:var(--muted);font-size:18px;line-height:1.65;max-width:62ch;margin:0}.blog-post-image{aspect-ratio:16/7;overflow:hidden;border-radius:var(--r-md);background:var(--accent-soft);margin-bottom:48px}.blog-post-image img{width:100%;height:100%;object-fit:cover;display:block}.blog-post-content{max-width:680px;margin:0 auto;color:var(--ink);font-size:17px;line-height:1.85}.blog-post-content h1{display:none}.blog-post-content h2{font-size:clamp(26px,3vw,38px);line-height:1.15;margin:52px 0 14px}.blog-post-content h3{font-size:21px;margin:34px 0 10px}.blog-post-content p{color:var(--muted);margin:0 0 22px}.blog-post-content ul,.blog-post-content ol{padding-left:1.35em;margin:0 0 24px}.blog-post-content li{color:var(--muted);margin:8px 0}.blog-post-content strong{color:var(--ink)}.blog-post-content a{color:var(--accent-strong);font-weight:800;text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--accent) 35%,transparent);text-underline-offset:3px}.blog-post-content a:hover{text-decoration-color:currentColor}
.blog-index .section-title{max-width:620px;padding:48px 0}.blog-index .section-title h3{font-size:28px;margin-bottom:10px}.blog-index .section-title p{color:var(--muted)}
.blog-empty-state{max-width:680px;padding:42px 0 68px;border-top:1px solid var(--line-soft)}.blog-empty-state h2{font-size:clamp(26px,3vw,36px);margin:0 0 10px}.blog-empty-state p{color:var(--muted);margin:0;font-size:16px}
@media (max-width:900px){.site-cms-header .container{gap:14px;min-height:68px}.site-cms-header nav{order:3;flex:1;min-width:0}.site-cms-header .actions{margin-left:0}.site-cms-header .actions a:first-child{display:none}.site-cms-header .actions .btn{padding:11px 13px;font-size:11px}.cms-page{padding-bottom:76px}.cms-page .breadcrumbs,.blog-post .breadcrumbs{margin-bottom:40px}.blog-index{padding-top:30px}.blog-index-intro{padding-bottom:42px}.blog-post{padding-top:32px}.blog-post-image{aspect-ratio:16/9;margin-bottom:36px}.blog-post-content{font-size:16px}}
@media (max-width:560px){.site-cms-header .container{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.site-cms-header nav{flex-basis:100%;order:4}.site-cms-header .logo span{font-size:20px}.blog-index-intro h1,.cms-page-header h1,.blog-post-header h1{font-size:42px}.blog-index-intro>p:last-child{font-size:16px}.blog-card-body{padding:20px}.blog-card h2{font-size:20px}.cms-page-content,.blog-post-content{font-size:16px;line-height:1.75}}
@media (prefers-reduced-motion:reduce){.blog-card,.blog-card-image img,.blog-card-link span{transition:none}}

/* Blog: editorial reading flow, aligned with the public landing visual system. */
.content-breadcrumb{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;line-height:1.4}.content-breadcrumb a{color:var(--accent-strong);font-weight:800}.content-breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}.content-breadcrumb span:last-child{overflow:hidden;max-width:46ch;text-overflow:ellipsis;white-space:nowrap}.blog-index{padding:0 0 112px}.blog-index-intro{max-width:820px;text-align:center;padding:96px 0 76px;margin:0 auto}.blog-index-intro .content-breadcrumb{justify-content:center;margin-bottom:30px}.blog-index-intro .blog-kicker{margin-bottom:16px}.blog-index-intro h1{max-width:17ch;margin:0 auto 20px;font-size:clamp(38px,5vw,62px);letter-spacing:-.045em;line-height:1.07;text-wrap:balance}.blog-index-intro>p:last-child{max-width:64ch;margin:0 auto;font-size:16px;line-height:1.75;text-wrap:pretty}.blog-grid{gap:28px}.blog-card{border-color:var(--line);border-radius:12px}.blog-card:hover{box-shadow:0 8px 20px rgb(53 32 111 / .12)}.blog-card-image{aspect-ratio:16 / 9}.blog-card-body{padding:22px 22px 24px}.blog-card-meta{justify-content:space-between;gap:12px;font-size:10px}.blog-card-meta span{color:var(--accent-strong);font-weight:800}.blog-card h2{letter-spacing:-.025em;font-size:20px;line-height:1.35;margin:17px 0 11px;text-wrap:balance}.blog-card-body>p{font-size:13px;line-height:1.7;margin-bottom:24px}.blog-card-link{font-size:12px}.blog-post{padding:54px 0 112px}.blog-post-shell{max-width:1000px}.blog-post-header{max-width:820px;margin:0 auto 42px}.blog-post-header .content-breadcrumb{margin-bottom:44px}.blog-post-header .blog-card-meta{justify-content:flex-start;gap:10px}.blog-post-header .blog-card-meta time:before{content:'·';color:var(--muted);margin-right:10px}.blog-post-header h1{max-width:17ch;margin:20px 0 18px;font-size:clamp(38px,5vw,64px);letter-spacing:-.045em;line-height:1.06;text-wrap:balance}.blog-post-dek{font-size:17px;line-height:1.72;text-wrap:pretty}.blog-post-image{aspect-ratio:16 / 7.5;border-radius:12px;margin-bottom:56px}.blog-post-content{max-width:720px;font-size:16px;line-height:1.85}.blog-post-content h2{letter-spacing:-.025em;text-wrap:balance}.blog-post-content h3{letter-spacing:-.015em;text-wrap:balance}.blog-post-content p,.blog-post-content li{color:var(--muted)}.blog-post-content img{border-radius:12px;max-width:100%;height:auto;margin:34px auto}.blog-post-content blockquote{color:var(--ink);border:0;border-radius:12px;background:var(--tint);margin:38px 0;padding:28px 30px;text-align:left}.blog-post-content blockquote p{color:var(--ink);font-size:18px;font-weight:700;line-height:1.55;margin:0}.blog-post-cta{background:var(--dark);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:36px;margin:68px auto 0;padding:40px 44px;max-width:920px}.blog-post-cta .blog-kicker{color:#cdbfff;margin-bottom:12px}.blog-post-cta h2{letter-spacing:-.035em;font-size:clamp(26px,3vw,38px);line-height:1.12;max-width:18ch;margin:0 0 12px;text-wrap:balance}.blog-post-cta p:not(.blog-kicker){color:#ded5f5;max-width:60ch;font-size:14px;line-height:1.65;margin:0}.blog-post-cta .whitebtn{width:auto;min-width:150px;flex:0 0 auto;box-shadow:none}.blog-post-footer{max-width:720px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;margin:48px auto 0;padding-top:24px}.blog-back-link{color:var(--accent-strong);font-size:13px;font-weight:800}.blog-back-link span{font-size:17px;margin-right:6px}.blog-post-footer p{color:var(--muted);font-size:12px;margin:0}
@media (max-width:900px){.blog-index{padding-bottom:76px}.blog-index-intro{padding:68px 0 54px}.blog-post{padding:40px 0 76px}.blog-post-header .content-breadcrumb{margin-bottom:32px}.blog-post-image{aspect-ratio:16 / 9;margin-bottom:40px}.blog-post-cta{margin-top:52px;padding:34px}.blog-post-content{font-size:16px}}
@media (max-width:560px){.content-breadcrumb{font-size:11px}.content-breadcrumb span:last-child{max-width:19ch}.blog-index-intro{padding:50px 0 44px;text-align:left}.blog-index-intro .content-breadcrumb{justify-content:flex-start;margin-bottom:25px}.blog-index-intro h1{margin-left:0;font-size:clamp(35px,11vw,46px)}.blog-index-intro>p:last-child{margin-left:0}.blog-grid{gap:20px}.blog-post{padding-top:30px}.blog-post-header h1{font-size:clamp(35px,11vw,48px)}.blog-post-header .content-breadcrumb{margin-bottom:26px}.blog-post-dek{font-size:16px}.blog-post-content h2{font-size:28px;margin-top:42px}.blog-post-content blockquote{padding:23px 22px;margin:32px 0}.blog-post-cta{align-items:flex-start;flex-direction:column;gap:26px;padding:29px 24px}.blog-post-cta .whitebtn{width:100%}.blog-post-footer{flex-direction:column;gap:12px;margin-top:38px}.blog-post-footer p{font-size:11px}}

/* Internal navigation: centered desktop layout and functional mobile menu. */
.site-cms-header .nav {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 28px;
}
.site-cms-header nav {
  justify-content: center;
  overflow: visible;
}
.site-cms-header .actions {
  justify-content: flex-end;
}
.site-cms-menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  place-items: center;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  background: var(--surface);
}
.site-cms-menu-toggle > span:not(.sr-only) {
  display: block;
  width: 18px;
  height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transition: transform .2s, opacity .2s;
}
.site-cms-menu-toggle[aria-expanded="true"] > span:nth-child(2) { transform: translateY(6px) rotate(45deg); }
.site-cms-menu-toggle[aria-expanded="true"] > span:nth-child(3) { opacity: 0; }
.site-cms-menu-toggle[aria-expanded="true"] > span:nth-child(4) { transform: translateY(-6px) rotate(-45deg); }
.site-cms-header .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 900px) {
  .site-cms-header .nav {
    display: flex;
    gap: 14px;
    min-height: 68px;
  }
  .site-cms-header .site-cms-menu-toggle {
    display: grid;
    margin-left: auto;
  }
  .site-cms-header nav {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 20px;
    right: 20px;
    z-index: 21;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    padding: 14px;
    overflow: visible;
    border: 1px solid var(--line);
    border-radius: var(--r-sm);
    background: var(--surface);
    box-shadow: var(--s-2);
  }
  .site-cms-header nav.is-open { display: flex; }
  .site-cms-header nav { justify-content: flex-start; }
  .site-cms-header nav a {
    display: block;
    min-height: 44px;
    padding: 12px 10px;
    border-radius: 6px;
  }
  .site-cms-header nav a:hover,
  .site-cms-header nav a:focus-visible { background: var(--accent-soft); }
  .site-cms-header .actions a:first-child { display: none; }
  .site-cms-header .actions .btn { min-height: 44px; padding: 11px 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-cms-menu-toggle > span:not(.sr-only) { transition: none; }
}

/* CMS reading flow: keep breadcrumbs, title and lead copy in one predictable column. */
.cms-page .breadcrumbs {
  max-width: 760px;
  margin: 0 auto 48px;
  padding: 0 !important;
  background: transparent !important;
}
.cms-page article,
.cms-page-header,
.cms-page-header h1,
.cms-page-content {
  position: static;
  float: none;
  clear: both;
}
.cms-page-header {
  display: block;
  min-height: 0;
  padding-bottom: 34px;
}
.cms-page-header h1 {
  display: block;
  height: auto;
  max-width: 20ch;
  margin: 0;
  overflow: visible;
  font-size: clamp(38px, 5vw, 58px);
  line-height: 1.08;
  text-wrap: balance;
}
.cms-page-content {
  display: block;
  margin-top: 0;
  padding-top: 34px;
}

@media (max-width: 900px) {
  .cms-page .breadcrumbs { margin-bottom: 36px; }
}

.blog-card-image,
.blog-post-image { position: relative; }
.image-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 7px;
  background: var(--accent-soft);
  color: var(--accent-strong);
  text-align: center;
}
.image-placeholder strong { font-size: 24px; letter-spacing: -.03em; }
.image-placeholder span { color: var(--muted); font-size: 11px; font-weight: 700; }
.articles article > .article-image { display: block; height: 170px; margin: 0 0 22px; overflow: hidden; background: var(--accent-soft); }
.articles article > .article-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.articles article > .article-image + small,
.articles article > .article-image ~ h3,
.articles article > .article-image ~ a { display: block; }

/* Keep long CMS titles and their lead text in a predictable reading flow. */
.cms-page-header h1 { line-height: 1.08; text-wrap: pretty; }
.cms-page-content { clear: both; }

/* Secondary hero CTA: keep it visually equal to the primary action. */
.hero .buttons .alt {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 14px 20px;
  border: 1px solid var(--line);
  border-radius: var(--r-sm);
  color: var(--ink);
  background: var(--surface);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  transition: color .2s, border-color .2s, background .2s, transform .2s;
}
.hero .buttons .alt:hover {
  color: var(--accent-strong);
  border-color: var(--accent);
  background: var(--surface);
  transform: translateY(-1px);
}
@media (max-width: 500px) {
  .hero .buttons .alt { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .hero .buttons .alt { transition: none; }
}

/* FAQ answers remain in the HTML for indexing and progressive enhancement. */
.faqitem > div { max-height: 0; overflow: hidden; opacity: 0; padding-bottom: 0; transition: max-height .35s ease, opacity .25s ease, padding .25s; }
.faqitem.open > div { max-height: 400px; opacity: 1; padding-bottom: 18px; }
.faqitem > div p { max-height: none; padding-bottom: 0; }
.faqitem.open > div p { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .faqitem > div { transition: none; }
}

/* Final article palette overrides, kept after the shared article rules. */
.articles article { border-top: 3px solid #397c96; }
.articles article:nth-child(2) { border-top-color: #c47a2c; }
.articles article:nth-child(3) { border-top-color: #c45d68; }
.articles article:nth-child(4) { border-top-color: #3d9a7a; }
.articles article:nth-child(5) { border-top-color: #7862b8; }
.articles article > .article-image { background: #e7f1f2; }
.articles article:nth-child(2) > .article-image { background: #fbefdc; }
.articles article:nth-child(3) > .article-image { background: #fae7e8; }
.articles article:nth-child(4) > .article-image { background: #e5f2ed; }
.articles article:nth-child(5) > .article-image { background: #eeeafd; }
.articles article small,
.articles article > a:last-child { color: #397c96; }
.articles article:nth-child(2) small,
.articles article:nth-child(2) > a:last-child { color: #a8631f; }
.articles article:nth-child(3) small,
.articles article:nth-child(3) > a:last-child { color: #a74754; }
.articles article:nth-child(4) small,
.articles article:nth-child(4) > a:last-child { color: #28785d; }
.articles article:nth-child(5) small,
.articles article:nth-child(5) > a:last-child { color: #6650a7; }

/* The global site header styles must not leak into the article header. */
.blog-post-header {
  position: static;
  height: auto;
  min-height: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

/* The article listing header must not inherit the global sticky site header. */
.blog-index-intro {
  position: static;
  height: auto;
  min-height: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

/* CMS page headers are content blocks, not the site navigation header. */
.cms-page-header {
  position: static;
  height: auto;
  min-height: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

/* The article's navigation footer is content, not the global site footer. */
.blog-post > .container .blog-post-footer {
  color: var(--ink);
  background: transparent;
  padding: 24px 0 0;
}
.blog-post > .container .blog-post-footer .blog-back-link {
  color: var(--accent-strong);
}
.blog-post > .container .blog-post-footer p {
  color: var(--muted);
}

/* Comparison content: readable on desktop and scrollable as a unit on narrow screens. */
.cms-page-content .comparison-table-wrap {
  width: 100%;
  margin: 30px 0 34px;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--white);
  -webkit-overflow-scrolling: touch;
}
.cms-page-content .comparison-table-wrap table {
  width: 100%;
  min-width: 880px;
  border-collapse: collapse;
  font-size: 13px;
  line-height: 1.45;
}
.cms-page-content .comparison-table-wrap th,
.cms-page-content .comparison-table-wrap td {
  min-width: 126px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}
.cms-page-content .comparison-table-wrap thead th {
  color: var(--ink);
  background: var(--tint);
  font-size: 12px;
  font-weight: 800;
}
.cms-page-content .comparison-table-wrap tbody th {
  color: var(--ink);
  background: var(--accent-soft);
  font-weight: 800;
}
.cms-page-content .comparison-table-wrap tbody tr:last-child th,
.cms-page-content .comparison-table-wrap tbody tr:last-child td {
  border-bottom: 0;
}
.cms-page-content .comparison-table-wrap td { color: var(--muted); }
.cms-page-content > p:first-of-type {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.7;
}
@media (max-width: 560px) {
  .cms-page-content .comparison-table-wrap { margin-inline: -4px; width: calc(100% + 8px); }
  .cms-page-content .comparison-table-wrap th,
  .cms-page-content .comparison-table-wrap td { padding: 12px 13px; }
}

/* ---- Home rhythm and type scale ------------------------------------ */
:root {
  --home-space-1: 0.5rem;
  --home-space-2: 0.75rem;
  --home-space-3: 1rem;
  --home-space-4: 1.5rem;
  --home-space-5: 2rem;
  --home-space-6: 3rem;
  --home-space-7: clamp(4.5rem, 8vw, 7rem);
  --home-body: 1rem;
  --home-small: 0.875rem;
  --home-label: 0.6875rem;
}

body {
  font-size: var(--home-body);
  font-kerning: normal;
}

.container {
  width: min(1240px, calc(100% - clamp(2rem, 6vw, 4rem)));
}

h1, h2, h3 {
  text-wrap: balance;
}

h1 {
  margin: var(--home-space-4) 0 var(--home-space-5);
  font-size: clamp(2.75rem, 5vw, 4.25rem);
  line-height: 1.06;
  letter-spacing: -0.03em;
}

.section h2,
h2 {
  margin: var(--home-space-4) 0;
  font-size: clamp(2.125rem, 4vw, 3.25rem);
  line-height: 1.1;
  letter-spacing: -0.03em;
}

h3,
.showcase h3,
.visual h3,
.benefits h3,
.prices h3,
.problem-grid h3,
.flow h3 {
  letter-spacing: -0.02em;
}

.hero {
  padding: clamp(4.5rem, 8vw, 6.5rem) 0 clamp(5rem, 9vw, 7rem);
}

.hero p,
.section p,
.dark p,
.final p {
  font-size: var(--home-body);
  line-height: 1.7;
}

.hero p {
  max-width: 62ch;
}

.buttons {
  gap: var(--home-space-2);
  margin-top: var(--home-space-5);
}

.btn,
.whitebtn,
.hero .buttons .alt {
  min-height: 3rem;
  padding: 0.875rem 1.25rem;
  line-height: 1.2;
}

.section {
  padding: var(--home-space-7) 0;
}

.split,
.showcase,
.faq {
  gap: clamp(2.5rem, 5vw, 4rem);
}

.problem-grid {
  gap: var(--home-space-6) var(--home-space-5);
}

.problem-grid p,
.benefits p,
.prices p,
.flow p,
.cases em {
  font-size: var(--home-small);
  line-height: 1.65;
}

.benefits,
.prices,
.articles,
.blog-grid {
  gap: clamp(1rem, 2vw, 1.5rem);
  margin-top: clamp(2.5rem, 5vw, 3.25rem);
}

.benefits article,
.prices article {
  padding: clamp(1.5rem, 2.5vw, 1.9375rem);
}

.prices h3 {
  font-size: clamp(1.75rem, 3vw, 2rem);
}

.prices ul {
  font-size: var(--home-small);
  line-height: 1.65;
}

.plan-cards article .plan-promise {
  font-size: var(--home-small) !important;
  line-height: 1.55 !important;
}

.plan-included {
  margin-top: var(--home-space-6);
  padding: clamp(1.5rem, 3vw, 1.875rem);
}

.plan-included ul {
  font-size: var(--home-small);
  line-height: 1.6;
}

.plan-comparison {
  margin-top: var(--home-space-6);
}

.plan-comparison table {
  font-size: var(--home-small);
  line-height: 1.5;
}

.faqitem button {
  min-height: 3.25rem;
  padding: 1rem 0;
  font-size: var(--home-small);
  line-height: 1.45;
}

.final {
  padding: clamp(4.5rem, 8vw, 6rem) 0;
}

@media (max-width: 900px) {
  .hero {
    padding-top: clamp(3.5rem, 8vw, 5rem);
  }

  .hero-grid,
  .split,
  .showcase,
  .faq,
  .dark {
    gap: var(--home-space-6);
  }

  .dark {
    padding: clamp(2rem, 6vw, 3rem) clamp(1.5rem, 5vw, 2.5rem);
  }
}

@media (max-width: 500px) {
  .container {
    width: calc(100% - 2rem);
  }

  h1 {
    margin-block: var(--home-space-3) var(--home-space-4);
    font-size: clamp(2.625rem, 11vw, 3rem);
  }

  .section h2,
  h2 {
    font-size: clamp(2rem, 9vw, 2.5rem);
  }

  .hero p,
  .section p,
  .dark p,
  .final p {
    font-size: var(--home-body);
  }

  .buttons {
    margin-top: var(--home-space-4);
  }

  .section {
    padding: clamp(4rem, 14vw, 5rem) 0;
  }

  .problem-grid {
    gap: var(--home-space-5);
  }

  .prices article,
  .benefits article {
    padding: 1.5rem;
  }

  .plan-included {
    margin-top: var(--home-space-5);
  }
}

/* ---- Home blog cards: compact editorial rhythm --------------------- */
#artigos .blog-grid {
  gap: clamp(1rem, 2vw, 1.5rem);
  margin-top: clamp(2rem, 4vw, 2.75rem);
}

#artigos .blog-card-body {
  padding: clamp(1rem, 2vw, 1.375rem) clamp(1rem, 2vw, 1.375rem) clamp(1.25rem, 2vw, 1.5rem);
}

#artigos .blog-card-meta {
  font-size: 0.75rem;
}

#artigos .blog-card h2 {
  margin: 0.875rem 0 0.75rem;
  font-size: clamp(1.5rem, 2.3vw, 1.875rem);
  line-height: 1.18;
  letter-spacing: -0.025em;
}

#artigos .blog-card-body > p {
  margin-bottom: 1.25rem;
  font-size: 0.875rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

#artigos .blog-card-link {
  font-size: 0.8125rem;
}

@media (max-width: 500px) {
  #artigos .blog-card h2 {
    font-size: 1.5rem;
  }
}

/* ---- Readability pass for supporting content ----------------------- */
.logos small {
  font-size: 0.875rem;
  line-height: 1.5;
}

.tabs button {
  min-height: 3rem;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
}

.showcase ul {
  font-size: 0.9375rem;
  line-height: 1.8;
}

.showcase .link {
  font-size: 0.875rem;
}

.footgrid > div:first-child p,
.footgrid > div:first-child a,
.footer-contact a,
.footgrid > div:not(:first-child) a {
  font-size: 0.9375rem;
  line-height: 1.6;
}

.footgrid b,
.footer-social > b {
  font-size: 0.8125rem;
}

@media (max-width: 900px) {
  .tabs button {
    font-size: 0.9375rem;
  }

  .footgrid > div:first-child p,
  .footgrid > div:first-child a,
  .footer-contact a,
  .footgrid > div:not(:first-child) a {
    font-size: 1rem;
  }
}
