/* V40: refinamentos finais solicitados para hero, adequação e planos */

body .hero h1, body .hero h1 span { font-weight: 500; }
body .hero-down { display: block; }
body .hero-down::after { position:absolute; top:12px; left:50%; width:2px; height:22px; content:""; background:#fff; transform:translateX(-50%); }
body .hero-down::before { position:absolute; top:23px; left:50%; width:13px; height:13px; content:""; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:translateX(-50%) rotate(45deg); }
body .hero-inner { width:min(1320px,calc(100% - 72px)); }
body .hero-copy { max-width:660px; }
body .hero h1 { max-width:660px; font-size:clamp(40px,3.8vw,54px); line-height:1.06; }
body #jornada > .section-wrap > .gold-rule { width:100%; height:1px; margin:36px 0 34px; border:0; background:linear-gradient(90deg,rgba(7,17,32,.72),rgba(200,154,82,.74),rgba(7,17,32,.72)); }
body .fit-card i::before { display:none; }
body .fit-card i::after { color:var(--gold-300); font-size:20px; }
body #planos { padding-bottom:88px; overflow:hidden; }
body #planos .section-wrap { position:relative; z-index:4; }
body #planos .pricing-grid { margin-bottom:0; align-items:start; }
body #planos .price-plan { display:flex; height:auto; flex-direction:column; align-self:start; }
body #planos .price-plan::before { top:140px; }
body #planos .price-plan.premium header { color:#fff; background:linear-gradient(110deg,#efd39c 0%,#c89a52 48%,#a96f2f 100%); }
body #planos .price-plan.premium header > span { color:#fff; background:var(--navy-900); border:1px solid rgba(239,211,156,.3); }
body #planos .price-plan header { min-height:140px; padding:18px 22px; }
body #planos .price-plan header h3 { font-size:34px; }
body #planos .price-plan .barcode { height:20px; }
body #planos .price-plan ul { min-height:0; height:auto; margin:8px 0 0; padding:8px 20px 0; flex:0 0 auto; }
body #planos .price-plan li { min-height:44px; padding:8px 6px 8px 42px; font-size:16px; line-height:1.22; }
body #planos .price-plan li::before { top:8px; left:4px; font-size:24px; }
body #planos .plan-cta { display:flex; width:calc(100% - 40px); min-height:58px; flex:0 0 auto; align-items:center; justify-content:center; gap:12px; margin:0 20px 22px; padding:7px 10px; border-radius:9px; text-align:center; }
body #planos .plan-cta > b { order:2; width:34px; height:34px; flex:0 0 34px; }
body #planos .plan-cta:not(.gold) { color:#fff; border:1px solid rgba(255,255,255,.72); background:#191919; }
body #planos .pricing-value { min-height:130px; display:grid; place-items:center; margin:12px 20px 16px; padding:16px 20px; }
body #planos .pricing-value > small, body #planos .pricing-value > p, body #planos .pricing-value > div > span { display:none; }
body #planos .pricing-value > div { display:flex; align-items:center; justify-content:center; margin:0; }
body #planos .pricing-value > div > strong { color:var(--gold-400); font-size:clamp(64px,5.5vw,82px); line-height:.9; }
body #planos .basic .pricing-value > div > strong { color:#fff; }
body #planos .premium .pricing-value > div > strong { color:var(--gold-500); }
body #planos .plans-transition { display:block; z-index:2; bottom:-1px; height:300px; }
body #planos .plans-transition path { fill:url(#plansGrid) !important; }

body .personal { padding:82px 0 58px; background-color:#f8f7f3; background-image:linear-gradient(rgba(200,154,82,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(200,154,82,.055) 1px,transparent 1px); }
body .personal .section-wrap { width:min(980px,calc(100% - 48px)); }
body .personal .speech { width:min(720px,100%); height:92px; margin:0 auto 34px; font-size:30px; }
body .personal .speech path { fill:#c89a52 !important; }
body .personal .speech span { padding:0 32px; font-size:inherit; line-height:1.15; }
body .personal .personal-copy { width:min(880px,100%); max-width:880px; margin:0 auto; font-size:28px; line-height:1.35; letter-spacing:-.65px; text-wrap:balance; }
body .personal .personal-copy br { display:none; }
body .personal .gold-rule { width:100%; margin:58px 0 0; background:rgba(7,17,32,.54); }
body #jornada .modules-grid { background:transparent; }
body #jornada .module { border:0; background:transparent; box-shadow:none; }
body #jornada .module header { border-radius:8px 8px 0 0; }
body #jornada .module button { margin-top:12px; border-radius:10px; background:#fff; box-shadow:0 10px 22px rgba(7,17,32,.08); }
body #jornada .module-answer { background:#fff; box-shadow:0 8px 18px rgba(7,17,32,.05); }
body .success { padding-top:72px; padding-bottom:86px; background-color:#f8f7f3; background-image:linear-gradient(rgba(200,154,82,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(200,154,82,.055) 1px,transparent 1px); }
body .success > .section-wrap { width:min(1180px,calc(100% - 56px)); }
body .success-title { max-width:920px; margin:0 auto 42px; font-size:clamp(31px,2.55vw,37px); line-height:1.16; }
body .success-title br { display:none; }
body .success .case-carousel { width:100%; }
body .success .case-track { gap:20px; }
body .success .case-card.social-post { flex:0 0 calc((100% - 40px)/3); height:642px; overflow:hidden; border:1px solid #e4e4e4; border-radius:4px; background:#fff; box-shadow:0 14px 34px rgba(7,17,32,.08); }
body .success .social-post header { display:grid; height:74px; flex-basis:74px; grid-template-columns:40px minmax(0,1fr) auto; gap:10px; align-items:center; padding:13px 14px; border-bottom:1px solid #f0f0f0; }
body .success .social-post .case-avatar { width:38px!important; height:38px!important; border:2px solid #fff!important; outline:2px solid #ef6786; box-shadow:0 0 0 4px #e1b84e; }
body .success .social-post header strong { color:#172238; font-size:12px; font-weight:700; letter-spacing:-.2px; }
body .success .post-media { height:468px; flex-basis:468px; background:#1d2933; }
body .success .social-post footer.post-actions { height:70px; flex-basis:70px; padding:0 18px; align-items:center; background:#fff; }
body .success .post-actions > div { gap:13px; }
body .success .post-actions button { width:32px; height:36px; color:#151a20; font-size:24px; }
body .success .post-actions > div button:first-child { color:#f01f55; }
body .success .post-caption, body .success .carousel-nav, body .comparison-intro { display:none; }
body .comparison-table { position:relative; display:grid; width:min(1040px,100%); grid-template-columns:1fr 1fr; gap:16px; margin:58px auto 0; padding:34px 18px 20px; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none; }
body .comparison-table::before { content:""; display:block; position:absolute; top:-28px; left:50%; width:calc(100% - 120px); height:1px; background:linear-gradient(90deg,transparent,rgba(200,154,82,.62),transparent); transform:translateX(-50%); }
body .comparison-table .compare-panel { position:relative; min-height:510px; padding:0 20px 20px; border-radius:14px; overflow:visible; box-shadow:0 20px 45px rgba(7,17,32,.12); }
body .comparison-table .compare-panel header { position:relative; top:-30px; left:50%; z-index:2; display:flex; width:min(76%,380px); min-height:54px; align-items:center; justify-content:center; margin:0 0 -10px; padding:0 18px; border:1px solid rgba(255,255,255,.78); border-radius:32px; color:#fff; background:rgba(7,17,32,.28); transform:translateX(-50%); }
body .comparison-table .compare-panel header span { display:block; margin:0; font-size:14px; font-weight:700; letter-spacing:0; text-align:center; }
body .comparison-table .compare-panel header strong { display:none; }
body .comparison-table .compare-panel ul { margin:0; padding:0; list-style:none; }
body .comparison-table .compare-panel li { display:flex; min-height:48px; align-items:center; gap:12px; margin:10px 0; padding:10px 16px; border:1px solid rgba(255,255,255,.65); border-radius:26px; color:#fff; background:rgba(255,255,255,.08); font-size:13px; line-height:1.25; }
body .comparison-table .compare-panel li b { display:grid; width:20px; height:20px; flex:0 0 20px; place-items:center; color:#fff; font-size:18px; }
body .comparison-table .other-panel { background:linear-gradient(145deg,#5b060b,#2d0306); }
body .comparison-table .aurea-panel { background:linear-gradient(145deg,#174f35,#092b1d); }
body .comparison-table .other-panel header { background:#a81218; }
body .comparison-table .aurea-panel header { background:#174f35; }
body .comparison-table .other-panel li { background:#a81218; }
body .comparison-table .aurea-panel li { background:#174f35; }
body .faq { position:relative; padding:0 0 86px; background-color:#f8f7f3; background-image:linear-gradient(rgba(200,154,82,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(200,154,82,.055) 1px,transparent 1px); }
body .faq::before { content:""; display:block; width:min(1120px,calc(100% - 80px)); height:1px; margin:0 auto 58px; background:linear-gradient(90deg,rgba(7,17,32,.24),rgba(200,154,82,.85),rgba(7,17,32,.24)); }
body .faq > .section-wrap { width:min(920px,calc(100% - 48px)); }
body .faq > .section-wrap > .eyebrow { justify-content:center; margin:0 auto 16px; color:var(--navy-900); font-size:12px; letter-spacing:.16em; }
body .faq > .section-wrap > .eyebrow::before { width:4px; height:22px; background:linear-gradient(180deg,#efd39c,#b7803e); }
body .faq-title { max-width:700px; margin:0 auto 34px; color:var(--navy-950); font-size:clamp(34px,4vw,48px); font-weight:500; line-height:1.08; text-align:center; text-wrap:balance; }
body .faq-title strong { color:var(--navy-950); }
body .accordion { display:flex; flex-direction:column; gap:12px; }
body .accordion article { margin:0; }
body .accordion button { min-height:70px; padding:16px 24px; border:1px solid rgba(7,17,32,.14); border-radius:12px; color:var(--navy-950); background:#fffdf8; box-shadow:0 8px 18px rgba(7,17,32,.06); font-size:15px; font-weight:650; }
body .accordion button b { width:18px; height:18px; border-radius:4px; color:#fff; background:var(--navy-900); }
body .accordion button b::before { border-color:var(--gold-300); }
body .accordion article.open button { border:1px solid rgba(200,154,82,.4); border-radius:12px 12px 8px 8px; color:#fff; background:linear-gradient(105deg,#c89a52,#a8753a); }
body .accordion article.open button b { color:var(--navy-900); background:#fffdf8; }
body .accordion article.open .answer p { padding:18px 24px; color:#fff; background:#b89a72; border-radius:0 0 8px 8px; font-size:14px; line-height:1.45; }
body .faq > .section-wrap > .cta { margin-top:42px; }
body .faq > .section-wrap > .cta span::after { content:"Quero sair do carnê"; }
body .contact-card { display:grid; width:min(1040px,100%); min-height:112px; grid-template-columns:58px minmax(190px,1.1fr) minmax(150px,.85fr) 180px; align-items:center; gap:18px; margin:70px auto 0; padding:22px 26px; border-radius:10px; background:linear-gradient(115deg,#071120,#101c32 58%,#0b1830 100%); border:1px solid rgba(200,154,82,.22); box-shadow:0 18px 40px rgba(7,17,32,.12); }
body .contact-icon { width:48px; height:48px; color:#d9b475; background:none; }
body .contact-icon svg { width:48px; height:48px; }
body .contact-card > strong { font-family:"DM Sans",Inter,sans-serif; font-size:25px; line-height:1; white-space:nowrap; }
body .contact-card > p { margin:0; color:#e6d7c5; font-size:12px; line-height:1.35; }
body .contact-card > a { display:flex; min-height:52px; align-items:center; justify-content:space-between; gap:10px; padding:6px 7px 6px 18px; border-radius:28px; color:#fff; background:#13a83a; font-size:11px; font-weight:700; box-shadow:none; }
body .contact-card > a b { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; color:#16963a; background:#fff; }
body .final-card { display:grid; width:min(1040px,100%); height:350px; grid-template-columns:44% 56%; margin:24px auto 0; border:1px solid rgba(200,154,82,.22); border-radius:10px; overflow:hidden; background:linear-gradient(120deg,#071120,#101c32); }
body .autonomy-visual { min-height:350px; background:linear-gradient(145deg,#d7bd94,#af8a5d); }
body .autonomy-visual::after { background:linear-gradient(90deg,transparent 58%,#071120 100%),linear-gradient(0deg,rgba(17,17,17,.58),transparent 45%); }
body .autonomy-visual > img { width:100%; height:100%; object-fit:cover; object-position:center; }
body .final-copy { min-height:350px; padding:42px 48px; justify-content:center; }
body .final-copy h2 { margin:14px 0 18px; font-size:32px; line-height:1.1; }
body .final-copy p { margin:0 0 14px; color:#e2d8cc; font-size:14px; line-height:1.5; }
body .contact-card > a { min-width:178px; background:linear-gradient(105deg,#00b83a 0%,#00a83b 54%,#00d84a 100%); color:#fff; box-shadow:0 12px 24px rgba(0,150,52,.22); }
body .contact-card > a::before { content:""; }
body .contact-card > a b { width:34px; height:34px; border-radius:50%; color:#00a83b; background:#fff; }
body .contact-card > a b svg { width:18px; height:18px; stroke-width:2.4; }
body .contact-card > a span { font-size:11px; white-space:nowrap; }
body .contact-card > a:hover { filter:brightness(1.08) saturate(1.06); box-shadow:0 16px 30px rgba(0,150,52,.3); }
body .contact-card > a:focus-visible { outline:3px solid rgba(0,184,58,.35); outline-offset:4px; }
body .cta, body .plan-cta.gold { background:linear-gradient(105deg,#e7c58d 0%,#bd8844 44%,#dcb273 68%,#9a6a33 100%); color:#fff; box-shadow:0 16px 36px rgba(143,102,49,.24),inset 0 1px 0 rgba(255,255,255,.42); }
body .cta span { font-size:0; }
body .cta span::after { content:"Quero sair do carnê"; font-size:16px; }
body .plan-cta.gold { display:flex; align-items:center; justify-content:center; gap:12px; }
body .cta:hover, body .plan-cta.gold:hover { filter:brightness(1.07) saturate(1.04); box-shadow:0 22px 48px rgba(143,102,49,.32),inset 0 1px 0 rgba(255,255,255,.5); }

@media (max-width:760px) {
 body #jornada > .section-wrap > .gold-rule { margin:30px 0 28px; }
 body #planos { padding-bottom:64px; }
 body #planos .price-plan::before { top:122px; }
 body #planos .price-plan li { min-height:44px; padding-top:8px; padding-bottom:8px; }
 body #planos .pricing-value > div > strong { font-size:58px; }
 body #planos .plans-transition { height:220px; }
 body #planos .price-plan header { min-height:124px; }
 body #planos .price-plan .barcode { height:16px; }
 body #planos .price-plan li { font-size:14px; }
 body #planos .plan-cta { width:calc(100% - 32px); margin-inline:16px; min-height:56px; }
 body .hero-inner { width:calc(100% - 32px); }
 body .hero-copy { max-width:none; }
 body .hero h1 { max-width:none; font-size:36px; }
 body .personal { padding:58px 0 42px; }
 body .personal .section-wrap { width:calc(100% - 32px); }
 body .personal .speech { width:100%; height:72px; margin-bottom:26px; font-size:20px; }
 body .personal .speech span { padding:0 22px; }
 body .personal .personal-copy { font-size:19px; line-height:1.4; letter-spacing:-.25px; }
 body .personal .gold-rule { margin-top:38px; }
 body .success { padding-top:54px; padding-bottom:58px; }
 body .success > .section-wrap { width:calc(100% - 38px); }
 body .success-title { max-width:100%; margin-bottom:32px; font-size:30px; }
 body .success .case-card.social-post { flex-basis:100%; height:620px; }
 body .success .social-post header { height:68px; flex-basis:68px; }
 body .success .case-avatar { width:34px!important; height:34px!important; }
 body .success .post-media { height:482px; flex-basis:482px; }
 body .success .social-post footer.post-actions { height:70px; flex-basis:70px; }
 body .comparison-table { grid-template-columns:1fr; gap:22px; width:100%; margin-top:24px; padding:28px 8px 12px; }
 body .comparison-table::before { top:-16px; width:calc(100% - 48px); }
 body .comparison-table .compare-panel { min-height:auto; padding-inline:14px; }
 body .comparison-table .compare-panel header { width:min(86%,360px); min-height:52px; margin-inline:auto; }
 body .comparison-table .compare-panel li { font-size:12px; }
 body .faq { padding-bottom:58px; }
 body .faq::before { width:calc(100% - 32px); margin-bottom:38px; }
 body .faq > .section-wrap { width:calc(100% - 32px); }
 body .faq-title { font-size:32px; margin-bottom:26px; }
 body .accordion { gap:10px; }
 body .accordion button { min-height:62px; padding:14px 16px; font-size:13px; }
 body .accordion article.open .answer p { padding:15px 16px; font-size:13px; }
 body .faq > .section-wrap > .cta { margin-top:32px; }
 body .contact-card { display:flex; min-height:0; align-items:flex-start; flex-direction:column; gap:10px; margin-top:48px; padding:24px 20px; }
 body .contact-card > p { margin:0; }
 body .contact-card > a { width:100%; margin-top:8px; }
 body .final-card { display:flex; height:auto; min-height:0; flex-direction:column; }
 body .autonomy-visual { min-height:310px; height:310px; }
 body .final-copy { min-height:350px; padding:34px 24px; }
 body .final-copy h2 { font-size:30px; }
 body .cta span::after { font-size:14px; }
}


