:root {
  --green-950:#003c2b;
  --green-900:#00583f;
  --green-800:#08714f;
  --green-700:#0b8a60;
  --green-500:#7ed05b;
  --mint:#e8f6ee;
  --lime:#b8e67a;
  --ink:#0e211a;
  --muted:#607169;
  --soft:#f5f8f6;
  --line:#d9e6df;
  --white:#fff;
  --shadow:0 24px 70px rgba(0,54,39,.12);
  --radius:28px;
  font-family:'Manrope',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--soft);font-family:'Manrope',sans-serif}
body,a,button,input,select{font-family:inherit}
a{color:inherit}
button,input,select{font-size:1rem}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.announcement{background:var(--green-950);color:#dff5e9;font-size:.77rem;font-weight:700;letter-spacing:.02em}
.announcement-inner{min-height:36px;display:flex;align-items:center;justify-content:center;gap:10px}
.announcement-dot{opacity:.55}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,230,223,.8)}
.header-inner{height:76px;display:flex;justify-content:space-between;align-items:center}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{width:38px;height:38px;border-radius:12px;background:var(--green-900);color:#fff;display:grid;place-items:center;font-family:'Plus Jakarta Sans';font-weight:800;box-shadow:0 7px 20px rgba(0,88,63,.2)}
.brand strong{display:block;font-family:'Plus Jakarta Sans';font-size:.98rem;line-height:1.05}.brand small{display:block;font-size:.64rem;color:var(--muted);margin-top:3px;font-weight:700}
.header-cta{font-weight:800;text-decoration:none;font-size:.83rem;color:var(--green-900);display:flex;gap:9px;align-items:center}.header-cta span{font-size:1rem}
.hero-section{background:linear-gradient(180deg,#fbfdfc 0%,#f2f8f4 100%);overflow:hidden}
.hero-grid{min-height:650px;display:grid;grid-template-columns:1.03fr .97fr;gap:60px;align-items:center;padding:68px 0 76px}
.eyebrow-pill,.section-kicker{font-size:.72rem;font-weight:800;letter-spacing:.17em;color:var(--green-800)}
.eyebrow-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;background:#eaf6ef;border:1px solid #d9ece2;border-radius:999px}.eyebrow-pill span{width:7px;height:7px;background:var(--green-700);border-radius:50%}
.hero-copy h1{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;letter-spacing:-.035em;font-size:clamp(3.15rem,5.2vw,5.45rem);line-height:1.01;max-width:740px;margin:20px 0 22px}.hero-copy h1 em,.section-heading h2 em,.network-copy h2 em,.quote-copy h2 em,.faq-section h2 em{font-style:normal;color:var(--green-800)}
.hero-lead{font-size:1.05rem;line-height:1.8;color:var(--muted);max-width:650px;margin:0 0 28px}
.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.btn{min-height:56px;padding:0 22px;border-radius:15px;border:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--green-800),var(--green-700));box-shadow:0 16px 28px rgba(0,88,63,.18)}.btn-primary:hover{box-shadow:0 20px 34px rgba(0,88,63,.23)}.btn-light{background:#fff;color:var(--green-950);box-shadow:0 10px 25px rgba(0,0,0,.08)}
.text-link{font-size:.84rem;font-weight:800;color:var(--green-900);text-decoration:none;border-bottom:1px solid rgba(0,88,63,.25);padding-bottom:3px}.text-link span{opacity:.75;margin-left:5px}
.hero-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-trust div{display:flex;align-items:center;gap:8px;color:#335147;font-size:.77rem;font-weight:700}.check{width:21px;height:21px;border-radius:50%;background:#d8f1df;color:var(--green-800);display:grid;place-items:center;font-size:.75rem}
.hero-visual-wrap{position:relative;display:flex;justify-content:center}.hero-visual-card{position:relative;width:min(100%,520px);height:500px;border-radius:38px;background:linear-gradient(145deg,#d6efe2,#a7d9bc);overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(0,88,63,.11)}
.visual-glow{position:absolute;border-radius:50%;filter:blur(2px)}.glow-one{width:280px;height:280px;right:-90px;top:-110px;background:rgba(255,255,255,.35)}.glow-two{width:260px;height:260px;left:-100px;bottom:-110px;background:rgba(255,255,255,.24)}
.visual-topline{position:relative;z-index:3;display:flex;justify-content:space-between;padding:22px 24px;color:var(--green-950);font-size:.74rem;font-weight:900;letter-spacing:.14em}.visual-topline span:last-child{padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.55);letter-spacing:.06em}
.visual-scene{position:absolute;inset:72px 32px 98px;border-radius:30px;background:linear-gradient(180deg,#f5fbf8 0%,#e8f2ed 100%);overflow:hidden;box-shadow:0 14px 34px rgba(0,44,28,.1)}
.scene-blob{position:absolute;border-radius:50%}.scene-blob-left{width:250px;height:250px;background:#b7e7d0;left:-74px;bottom:-92px}.scene-blob-right{width:210px;height:210px;background:#cae99c;right:-52px;top:-44px}
.person{position:absolute;bottom:-2px}.person-back{left:70px;width:170px;height:286px}.person-front{right:66px;width:165px;height:250px}.hair{position:absolute;border-radius:50%;z-index:3}.hair-dark{width:92px;height:105px;left:27px;top:2px;background:#5f4c3d;transform:rotate(7deg)}.hair-light{width:82px;height:91px;left:38px;top:9px;background:#c9b7a1;transform:rotate(-10deg)}.face{position:absolute;width:66px;height:79px;left:41px;top:37px;background:#f0c5a4;border-radius:44% 44% 52% 52%;z-index:5;box-shadow:inset -6px -8px 0 rgba(179,109,76,.08)}.face-older{background:#e3b28f}.body{position:absolute;bottom:0;left:0;border-radius:76px 76px 20px 20px}.body-green{width:146px;height:190px;background:#11835b}.body-cream{width:144px;height:162px;background:#f1eadf}.arm{position:absolute;height:125px;width:31px;border-radius:30px;top:118px;z-index:2}.arm-left{left:11px;background:#11835b;transform:rotate(15deg)}.arm-right{right:5px;background:#11835b;transform:rotate(-17deg)}.older-arm{background:#f1eadf}.tablet{position:absolute;width:112px;height:84px;left:50%;top:177px;transform:translateX(-50%) rotate(-8deg);background:#14392f;border-radius:11px;z-index:8;padding:13px;box-shadow:0 12px 28px rgba(0,40,28,.26)}.tablet-line{height:8px;border-radius:8px;background:#d9f0e3;margin-bottom:9px}.tablet-line.short{width:65%}.tablet-dot{width:16px;height:16px;border-radius:50%;background:#8bd56a;margin-top:6px}
.visual-caption{position:absolute;left:0;right:0;bottom:0;height:98px;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;background:rgba(0,60,43,.91);color:#fff;z-index:5}.visual-caption strong{display:block;font-size:1.05rem}.visual-caption span{display:block;font-size:.72rem;color:#bfe6d4;margin-top:4px}.caption-arrow{width:40px;height:40px;display:grid!important;place-items:center!important;background:rgba(255,255,255,.12);border-radius:50%;font-size:1.1rem!important;color:#fff!important}.floating-stat{position:absolute;left:-18px;bottom:28px;z-index:10;background:#fff;border:1px solid var(--line);box-shadow:0 14px 35px rgba(10,40,29,.13);border-radius:18px;padding:14px 16px;display:flex;align-items:baseline;gap:8px}.floating-stat strong{font-family:'Plus Jakarta Sans';font-size:1.2rem;color:var(--green-900)}.floating-stat span{font-size:.68rem;color:var(--muted);font-weight:700}
.conversion-band{background:var(--green-950);color:#fff}.conversion-band-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0}.conversion-band-grid>div{padding:6px 24px;border-right:1px solid rgba(255,255,255,.12)}.conversion-band-grid>div:first-child{padding-left:0}.conversion-band-grid>div:last-child{border-right:none}.conversion-band strong{display:block;font-family:'Plus Jakarta Sans';font-size:1rem}.conversion-band span{display:block;font-size:.68rem;color:#b9dacb;margin-top:4px;font-weight:700}
.section{padding:98px 0}.section-light{background:#fff}.section-tint{background:#f1f7f3}.section-heading h2,.network-copy h2,.quote-copy h2,.faq-section h2{font-family:'Plus Jakarta Sans';font-size:clamp(2.2rem,4.2vw,4.1rem);line-height:1.05;letter-spacing:-.03em;margin:14px 0 20px}.section-heading p,.network-copy p,.faq-section .section-heading p{color:var(--muted);line-height:1.75;max-width:620px}.split-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.split-heading p{justify-self:end;max-width:480px}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px}.step-card{position:relative;min-height:246px;border:1px solid var(--line);background:#fff;border-radius:24px;padding:28px;box-shadow:0 10px 32px rgba(15,53,38,.05)}.step-card.featured-step{background:linear-gradient(145deg,#e8f5ee,#fbfffd);border-color:#cbe4d6}.step-number{font-family:'Plus Jakarta Sans';font-weight:800;color:var(--green-700);font-size:.8rem}.step-card h3{font-size:1.15rem;margin:32px 0 10px}.step-card p{font-size:.84rem;line-height:1.7;color:var(--muted);max-width:310px}.step-arrow{position:absolute;right:24px;bottom:22px;color:var(--green-700);font-size:1.2rem;font-weight:800}
.centered{text-align:center;max-width:820px;margin:0 auto}.centered p{margin-left:auto;margin-right:auto}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:52px}.benefit-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;min-height:220px}.icon-circle{width:40px;height:40px;border-radius:12px;background:#e3f4e8;color:var(--green-800);display:grid;place-items:center;font-weight:900;margin-bottom:26px}.benefit-card h3{font-size:1rem;margin:0 0 10px}.benefit-card p{font-size:.82rem;line-height:1.7;color:var(--muted);margin:0}
.network-section{background:#fff}.network-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.region-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.region-list span{border:1px solid #d1e2d8;background:#f7fbf8;padding:9px 12px;border-radius:12px;font-size:.7rem;color:var(--green-900);font-weight:800}.map-card{position:relative;height:380px;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 48% 47%,rgba(126,208,91,.18),transparent 44%),linear-gradient(145deg,#eef7f1,#dcefe4);border:1px solid #d3e7da}.map-orbit{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(0,88,63,.14);border-radius:50%}.orbit-a{width:250px;height:250px}.orbit-b{width:360px;height:360px}.map-shape{position:absolute;left:50%;top:50%;width:210px;height:270px;transform:translate(-50%,-44%) rotate(12deg);clip-path:polygon(47% 0,57% 8%,73% 5%,79% 19%,92% 30%,82% 44%,96% 57%,83% 69%,76% 87%,59% 81%,47% 99%,39% 79%,25% 84%,22% 67%,6% 58%,20% 45%,11% 29%,26% 22%,27% 9%);background:linear-gradient(160deg,#a5df7f,#55b866);opacity:.95;box-shadow:0 24px 50px rgba(29,120,64,.18)}
.map-point{position:absolute;width:12px;height:12px;background:#fff;border:4px solid var(--green-800);border-radius:50%;box-shadow:0 0 0 8px rgba(255,255,255,.3)}.p1{left:35%;top:31%}.p2{left:61%;top:42%}.p3{left:52%;top:58%}.p4{left:70%;top:67%}.p5{left:38%;top:71%}.map-label{position:absolute;left:22px;bottom:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 13px;color:var(--green-900);font-size:.7rem;font-weight:800;display:flex;gap:8px;align-items:center}.map-label span{width:20px;height:20px;border-radius:7px;background:#e4f4e9;display:grid;place-items:center}
.quote-section{padding:98px 0;background:linear-gradient(135deg,#003b2b 0%,#006247 65%,#088a60 100%);color:#fff}.quote-grid{display:grid;grid-template-columns:1fr 520px;gap:70px;align-items:center}.light-kicker{color:#bfe7d3}.quote-copy h2{font-size:clamp(2.4rem,4vw,4.2rem);max-width:640px}.quote-copy>p{color:#c9e5d8;line-height:1.8;max-width:560px}.secure-note{display:flex;gap:12px;margin-top:32px;max-width:510px}.secure-note>span{width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:#c9eca2;color:var(--green-950);display:grid;place-items:center;font-weight:900}.secure-note strong{display:block;font-size:.8rem}.secure-note small{display:block;color:#b3d5c5;font-size:.7rem;line-height:1.55;margin-top:3px}
.quote-card{background:#fff;color:var(--ink);border-radius:28px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.2)}.form-progress{margin-bottom:18px}.progress-label{display:flex;justify-content:space-between;align-items:center;font-size:.67rem;font-weight:800;color:var(--muted);margin-bottom:8px}.progress-track{height:6px;border-radius:6px;background:#e6eee9;overflow:hidden}.progress-track span{display:block;height:100%;width:50%;background:linear-gradient(90deg,var(--green-800),var(--green-500));border-radius:6px;transition:width .2s ease}.form-step{display:none}.form-step.is-active{display:block}.form-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}.form-badge{width:34px;height:34px;border-radius:10px;background:#e3f4e8;color:var(--green-800);display:grid;place-items:center;font-size:.68rem;font-weight:900;flex:0 0 34px}.form-head h3{margin:0;font-size:1.2rem}.form-head p{margin:5px 0 0;color:var(--muted);font-size:.75rem}.back-step{border:none;background:transparent;color:var(--green-900);font-size:1.25rem;padding:1px 4px;cursor:pointer}.quote-card label{display:grid;gap:7px;font-size:.73rem;font-weight:800;margin:13px 0}.quote-card input,.quote-card select{width:100%;min-height:50px;border:1px solid var(--line);border-radius:13px;background:#fbfdfc;padding:0 14px;outline:none;color:var(--ink)}.quote-card input:focus,.quote-card select:focus{border-color:var(--green-700);box-shadow:0 0 0 4px rgba(8,113,79,.08)}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.optional{font-weight:600;color:#93a09b}.field-note{font-size:.68rem;color:var(--muted);margin:-5px 0 12px}.consent{grid-template-columns:18px 1fr!important;grid-template-columns:auto 1fr!important;align-items:start;gap:9px!important;font-size:.66rem!important;font-weight:600!important;color:var(--muted)}.consent input{width:16px!important;min-height:16px!important;margin-top:1px}.form-submit{width:100%;margin-top:2px}.form-status{min-height:20px;margin:8px 0 0;text-align:center;color:var(--muted);font-size:.7rem}.form-status.error{color:#b23131}.form-status.success{color:var(--green-900)}
.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{cursor:pointer;list-style:none;padding:22px 0;font-weight:800;display:flex;justify-content:space-between;align-items:center;font-size:.92rem}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--green-800);font-size:1.2rem}details[open] summary:after{content:'−'}details p{margin:-4px 0 22px;color:var(--muted);font-size:.8rem;line-height:1.7;max-width:650px}
.final-cta{background:var(--green-900);color:#fff}.final-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:64px 0}.final-cta h2{font-family:'Plus Jakarta Sans';font-size:clamp(2rem,3.5vw,3.4rem);letter-spacing:-.03em;margin:12px 0 0}.final-cta .light-kicker{color:#bfe7d3}
.site-footer{background:#062d22;color:#d4e9df}.footer-top{padding:28px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-brand{display:flex;gap:10px;align-items:center}.footer-brand strong{display:block;font-size:.8rem}.footer-brand small{display:block;color:#88b6a4;font-size:.65rem;margin-top:2px}.footer-top>a{color:#fff;text-decoration:none;font-size:.75rem;font-weight:800}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:18px 0 25px;display:flex;justify-content:space-between;gap:25px;color:#88b6a4;font-size:.62rem;line-height:1.6}.mobile-sticky-cta{display:none}
/* Admin styles retained for the internal panel. */
.admin-page{background:#0e1411;color:#ecf5ef;min-height:100vh}.admin-top{display:flex;justify-content:space-between;align-items:center;padding:20px 6vw;background:#121b16;border-bottom:1px solid #23332a}.admin-top a{color:#b8e4d0}.admin-shell{padding:44px 6vw 80px;max-width:1400px;margin:auto}.admin-shell .section-title h1{color:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stats>div{background:#121b16;border:1px solid #23332a;border-radius:18px;padding:22px}.stats span{color:#8ea297;display:block;font-size:.8rem}.stats strong{font-size:2.2rem;display:block;margin-top:8px}.table-card{background:#121b16;border:1px solid #23332a;border-radius:18px;overflow:hidden}.table-head{padding:18px 20px;display:flex;justify-content:space-between;align-items:center}.table-head h2{margin:0}.table-head span{color:#8ea297;font-size:.82rem}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{padding:14px 16px;border-top:1px solid #23332a;text-align:left;font-size:.85rem}th{color:#9fb0a7;font-weight:700}td{color:#e7f0ea}
.thanks-page{min-height:100vh;display:grid;place-items:center;padding:30px}.thanks-card{max-width:620px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:44px;text-align:center;box-shadow:var(--shadow)}.thanks-card h1{font-family:'Plus Jakarta Sans';font-size:clamp(2.3rem,5vw,4.4rem);line-height:1;margin:12px 0}.thanks-card p{color:var(--muted);line-height:1.7;margin-bottom:24px}
@media (max-width:1000px){.hero-grid,.network-grid,.quote-grid,.faq-grid,.split-heading{grid-template-columns:1fr}.hero-grid{padding:54px 0}.hero-copy{max-width:760px}.hero-visual-wrap{margin-top:8px}.split-heading{gap:14px}.split-heading p{justify-self:start}.benefit-grid{grid-template-columns:1fr 1fr}.quote-grid{gap:42px}.conversion-band-grid{grid-template-columns:1fr 1fr}.conversion-band-grid>div:nth-child(2){border-right:none}.conversion-band-grid>div{padding:14px 18px}.steps-grid{grid-template-columns:1fr}.faq-grid{gap:40px}}
@media (max-width:640px){.container{width:min(100% - 28px,1180px)}.announcement-inner{font-size:.64rem;text-align:center;min-height:42px}.announcement-dot{display:none}.header-inner{height:68px}.header-cta{font-size:.72rem}.hero-grid{gap:36px}.hero-copy h1{font-size:2.75rem}.hero-lead{font-size:.95rem}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.text-link{margin-left:5px}.hero-trust{gap:8px;flex-direction:column}.hero-visual-card{height:420px;border-radius:28px}.visual-scene{inset:65px 18px 88px}.person-back{left:34px;transform:scale(.88);transform-origin:bottom left}.person-front{right:30px;transform:scale(.88);transform-origin:bottom right}.floating-stat{left:10px;bottom:18px}.conversion-band-grid{grid-template-columns:1fr 1fr;padding:10px 0}.conversion-band-grid>div{padding:12px}.section{padding:74px 0}.section-heading h2,.network-copy h2,.quote-copy h2,.faq-section h2{font-size:2.25rem}.benefit-grid{grid-template-columns:1fr}.network-grid{gap:40px}.map-card{height:310px}.quote-section{padding:74px 0}.quote-card{padding:20px;border-radius:23px}.two-fields{grid-template-columns:1fr}.final-cta-inner{padding:48px 0;align-items:flex-start;flex-direction:column}.footer-top{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column;gap:8px}.mobile-sticky-cta{display:none !important;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;background:linear-gradient(135deg,var(--green-800),var(--green-700));color:#fff;min-height:54px;border-radius:16px;align-items:center;justify-content:center;gap:14px;text-decoration:none;font-size:.76rem;font-weight:900;box-shadow:0 16px 30px rgba(0,40,28,.25)}body{padding-bottom:74px}}

/* Human photography / trust sections */
.human-section{padding:110px 0;background:#fff}.human-grid{display:grid;grid-template-columns:1fr 1fr;gap:84px;align-items:center}.human-photo-card{position:relative;border-radius:32px;overflow:hidden;background:#eaf5ee;border:1px solid #d4e6da;box-shadow:var(--shadow)}.human-photo-card img{width:100%;height:100%;object-fit:cover;display:block}.human-photo-main{height:560px}.human-photo-main:before{content:'';position:absolute;inset:18px;border:1px solid rgba(255,255,255,.7);border-radius:25px;z-index:2;pointer-events:none}.photo-badge{position:absolute;left:24px;bottom:24px;right:24px;display:flex;align-items:center;gap:12px;background:rgba(3,66,47,.92);color:#fff;padding:13px 15px;border-radius:16px;z-index:3;backdrop-filter:blur(8px)}.photo-badge strong{font-size:1.15rem;color:#cbedae}.photo-badge span{font-size:.7rem;line-height:1.4;color:#e5f4ec}.human-copy h2{font-size:clamp(2.35rem,4vw,4rem);line-height:1.02}.human-copy>p{max-width:590px;color:var(--muted);line-height:1.8}.human-points{margin:30px 0 34px;border-top:1px solid var(--line)}.human-points>div{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.human-points>div>span{color:var(--green-700);font-size:.72rem;font-weight:900;letter-spacing:.08em}.human-points strong{display:block;font-size:.83rem}.human-points small{display:block;margin-top:3px;color:var(--muted);font-size:.7rem;line-height:1.5}.section-soft-human{background:linear-gradient(180deg,#f3f9f5 0%,#eef6f1 100%)}.program-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:78px;align-items:center}.program-copy h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.03}.program-copy>p{color:var(--muted);line-height:1.8;max-width:650px}.program-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.program-list article{display:flex;gap:11px;padding:18px;border-radius:18px;background:#fff;border:1px solid #dbe9e0}.program-list h3{margin:0;font-size:.87rem}.program-list p{margin:5px 0 0;color:var(--muted);font-size:.68rem;line-height:1.55}.program-icon{width:27px;height:27px;border-radius:9px;background:#e6f3ea;color:var(--green-800);display:grid;place-items:center;flex:0 0 27px;font-weight:900}.human-photo-side{height:560px}.photo-overlay{position:absolute;left:24px;right:24px;bottom:24px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,48,34,.92));padding:84px 4px 8px;color:#fff}.photo-overlay span{display:block;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#c8ebad;font-weight:900}.photo-overlay strong{display:block;font-size:1.2rem;line-height:1.2;max-width:300px;margin-top:8px}.source-note{margin-top:24px;color:#71847b;font-size:.61rem;line-height:1.6}.human-proof{padding:96px 0;background:#fff}.proof-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.proof-quote h2{font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.03}.proof-quote p{color:var(--muted);max-width:600px;line-height:1.8}.mini-proof-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.mini-proof-row span{border:1px solid #d5e7db;background:#f8fcfa;border-radius:999px;padding:9px 12px;font-size:.66rem;font-weight:800;color:var(--green-900)}.proof-people{position:relative;min-height:430px}.mini-photo{position:absolute;width:260px;height:310px;border-radius:28px;overflow:hidden;border:8px solid #fff;box-shadow:0 22px 50px rgba(0,50,30,.14);left:25px;top:30px;transform:rotate(-5deg);background:#eef7f1}.mini-photo img{width:100%;height:100%;object-fit:cover;display:block}.mini-photo-offset{left:auto;right:0;top:88px;transform:rotate(6deg)}.proof-card{position:absolute;left:75px;bottom:10px;z-index:4;background:#075d43;color:#fff;padding:16px 18px;border-radius:18px;max-width:280px;box-shadow:0 15px 40px rgba(0,60,40,.2)}.proof-card strong{display:block;font-size:.78rem}.proof-card span{display:block;font-size:.66rem;line-height:1.5;color:#cbe7da;margin-top:3px}
@media (max-width:1000px){.human-grid,.program-grid,.proof-grid{grid-template-columns:1fr}.human-photo-main,.human-photo-side{height:520px}.program-grid,.proof-grid{gap:42px}.program-list{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.human-section,.human-proof{padding:74px 0}.human-photo-main,.human-photo-side{height:410px;border-radius:24px}.human-grid,.program-grid,.proof-grid{gap:34px}.program-list{grid-template-columns:1fr}.photo-badge{left:14px;right:14px;bottom:14px}.proof-people{min-height:390px}.mini-photo{width:210px;height:270px;left:5px}.mini-photo-offset{right:0;left:auto;top:70px}.proof-card{left:36px;bottom:0}.human-copy h2,.program-copy h2,.proof-quote h2{font-size:2.25rem}}

/* v0.4 — official MedSênior photography layer */
.hero-photo-card{background:#dceee5}
.hero-real-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.01)}
.hero-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,48,34,.05) 0%,rgba(0,48,34,0) 46%,rgba(0,48,34,.62) 100%);z-index:2}
.hero-photo-card .visual-topline{position:absolute;top:0;left:0;right:0;z-index:4;color:#fff}
.hero-photo-card .visual-topline span:last-child{background:rgba(255,255,255,.72);color:var(--green-950)}
.hero-photo-card .visual-caption{z-index:4}
.process-visual{position:relative;min-height:280px;display:flex;align-items:flex-end;justify-content:flex-end;gap:14px}
.process-photo{position:relative;overflow:hidden;border-radius:24px;border:1px solid #d5e7dd;box-shadow:0 18px 45px rgba(0,55,38,.10);background:#eaf5ee}
.process-photo img{width:100%;height:100%;display:block;object-fit:cover}
.process-photo span{position:absolute;left:14px;bottom:14px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--green-950);font-size:.64rem;font-weight:900}
.process-photo-main{width:58%;height:275px}
.process-photo-small{width:38%;height:205px;margin-bottom:36px;transform:rotate(4deg)}
.benefit-photo-card{padding:0 0 22px;overflow:hidden}
.benefit-photo{height:145px;overflow:hidden}
.benefit-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.benefit-photo-card:hover .benefit-photo img{transform:scale(1.035)}
.benefit-photo-card .icon-circle{margin:18px 22px 20px}
.benefit-photo-card h3,.benefit-photo-card p{margin-left:22px;margin-right:22px}
.benefit-photo-card p{margin-bottom:0}
@media (max-width:1000px){.process-visual{justify-content:flex-start}.process-photo-main{width:60%}.process-photo-small{width:35%}}
@media (max-width:640px){.process-visual{min-height:235px;gap:10px}.process-photo-main{height:220px}.process-photo-small{height:170px;margin-bottom:20px}.benefit-photo{height:185px}.hero-real-photo{object-position:center top}}

/* v0.5 — MedSênior brand assets */
.brand-cluster{display:flex;align-items:center;gap:16px;min-width:0}.brand-divider{width:1px;height:34px;background:#d6e4dc;display:inline-block}.medsenior-logo-header{display:block;width:150px;height:auto;max-height:46px;object-fit:contain;object-position:left center}.footer-divider{height:28px;background:rgba(255,255,255,.22);margin-left:10px}.medsenior-logo-footer{display:block;width:150px;height:auto;max-height:46px;object-fit:contain;object-position:left center;filter:none}.map-card-image{display:grid!important;place-items:center;overflow:hidden}.regional-map-image{position:relative;z-index:2;width:min(82%,518px);height:auto;max-height:100%;object-fit:contain;display:block}.map-card-image .map-orbit{z-index:1}.map-card-image .map-label{z-index:4}
@media (max-width:640px){.brand-cluster{gap:9px}.brand-divider{height:28px}.medsenior-logo-header{width:104px;max-height:36px}.footer-brand{display:flex;flex-wrap:wrap;gap:10px}.medsenior-logo-footer{width:118px;max-height:34px}.footer-divider{display:none}.regional-map-image{width:92%}}


/* v0.6 — Prime Corretora brand assets */
.prime-logo-mark{display:block;width:40px;height:40px;object-fit:contain;object-position:center;flex:0 0 40px}
.prime-logo-footer{
  display:block;
  width:105px;
  height:auto;
  max-height:105px;
  object-fit:contain;
  object-position:center;
  filter:none;
}
.footer-brand-copy{display:flex;flex-direction:column;gap:3px}.footer-brand-copy strong{font-size:.82rem}.footer-brand-copy small{font-size:.66rem;color:rgba(255,255,255,.7)}
@media (max-width:640px){.prime-logo-mark{width:34px;height:34px;flex-basis:34px}.prime-logo-footer{width:112px;max-height:90px}.footer-brand-copy{display:none}}

/* Logo completa da Prime no cabeçalho */
.brand-prime-full{
  display:flex;
  align-items:center;
  text-decoration:none;
  min-width:0;
}

.prime-logo-header-full{
  display:block;
  width:150px;
  height:65px;
  object-fit:contain;
  object-position:center;
}

/* Ajuste do conjunto Prime + divisor + MedSênior */
.brand-cluster{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}

@media (max-width:640px){
  .prime-logo-header-full{
    width:92px;
    height:50px;
  }

  .brand-cluster{
    gap:10px;
  }
}

/* Card flutuante principal do hero */
.floating-stat-compact {
  position: absolute;
  left: 0;
  bottom: 42px;
  z-index: 10;

  display: flex;
  align-items: center;
  gap: 12px;

  max-width: 390px;
  padding: 16px 22px;

  background: #fff;
  border-radius: 22px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.floating-stat-compact strong {
  font-size: 1.7rem;
  line-height: 1;
  font-weight: 800;
  color: #006b5b;
}

.floating-stat-compact span {
  font-size: 0.84rem;
  line-height: 1.3;
  color: #294b4a;
}

/* =========================================================
   MINI CHAT DE ATENDIMENTO
   ========================================================= */

.mini-chat{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:80;
  font-family:inherit;
}

.mini-chat-toggle{
  display:flex;
  align-items:center;
  gap:10px;
  border:none;
  padding:0 18px 0 12px;
  min-height:54px;
  border-radius:999px;
  background:#fff;
  color:var(--green-950);
  font-family:inherit;
  font-size:.78rem;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 14px 35px rgba(0,45,30,.18);
  border:1px solid rgba(0,88,63,.10);
  transition:transform .2s ease, box-shadow .2s ease;
}

.mini-chat-toggle:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 40px rgba(0,45,30,.22);
}

.mini-chat-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--green-800);
  color:#fff;
  font-size:.95rem;
}

.mini-chat-box{
  position:absolute;
  right:0;
  bottom:66px;
  width:min(360px,calc(100vw - 32px));
  background:#fff;
  border:1px solid #dcebe2;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,45,30,.20);

  opacity:0;
  visibility:hidden;
  transform:translateY(12px) scale(.98);
  transform-origin:bottom right;
  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease;
}

.mini-chat.is-open .mini-chat-box{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
}

.mini-chat-header{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px 48px 18px 18px;
  background:linear-gradient(135deg,var(--green-900),var(--green-700));
  color:#fff;
}

.mini-chat-avatar{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  color:#fff;
  font-weight:900;
}

.mini-chat-header strong{
  display:block;
  font-size:.88rem;
  line-height:1.25;
}

.mini-chat-header span{
  display:block;
  margin-top:3px;
  color:#d9eee5;
  font-size:.68rem;
}

.mini-chat-close{
  position:absolute;
  top:12px;
  right:12px;
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:1.25rem;
  line-height:1;
  cursor:pointer;
}

.mini-chat-body{
  padding:18px;
}

.mini-chat-body > p{
  margin:0 0 14px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.55;
}

.mini-chat-option{
  display:flex;
  align-items:center;
  gap:11px;
  width:100%;
  padding:13px;
  margin-top:9px;
  border:1px solid #dcebe2;
  border-radius:16px;
  background:#f8fcfa;
  color:var(--green-950);
  text-decoration:none;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease;
  box-sizing:border-box;
}

.mini-chat-option:hover{
  transform:translateY(-1px);
  border-color:#b9d9c8;
  background:#f1f9f4;
}

.mini-chat-option-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#dff2e6;
  color:var(--green-800);
  font-size:.82rem;
  font-weight:900;
}

.mini-chat-option-icon.whatsapp-icon{
  background:#dff2e6;
}

.mini-chat-option > span:nth-child(2){
  min-width:0;
  flex:0 1 auto;
}

.mini-chat-option strong{
  display:block;
  font-size:.75rem;
  line-height:1.3;
}

.mini-chat-option small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.63rem;
  line-height:1.4;
}

.mini-chat-arrow{
  color:var(--green-700);
  font-size:1rem;
  font-weight:900;
}

.mini-chat-note{
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid var(--line);
  color:#789187;
  font-size:.58rem;
  line-height:1.45;
  text-align:center;
}

/* Desktop: evita conflito visual com a barra mobile */
@media (min-width:641px){
  .mini-chat{
    bottom:24px;
  }
}

/* Mobile */
@media (max-width:640px){

  .mini-chat{
    right:14px;
    bottom:18px;
  }

  .mini-chat-toggle{
    min-height:50px;
    padding-right:15px;
    font-size:.7rem;
  }

  .mini-chat-icon{
    width:32px;
    height:32px;
  }

  .mini-chat-box{
    right:0;
    bottom:61px;
    width:min(350px,calc(100vw - 28px));
  }

}

/* =========================================================
   MINI CHAT — FORMULÁRIO WHATSAPP
   ========================================================= */

.mini-chat-field{
  margin-bottom:14px;
}

.mini-chat-field label{
  display:block;
  margin-bottom:6px;
  color:var(--green-950);
  font-size:.76rem;
  font-weight:800;
}

.mini-chat-field input{
  width:100%;
  box-sizing:border-box;
  min-height:48px;
  padding:0 14px;
  border:1px solid #d6e6dd;
  border-radius:12px;
  background:#fff;
  color:var(--green-950);
  font-family:inherit;
  font-size:.85rem;
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}

.mini-chat-field input:focus{
  border-color:var(--green-800);
  box-shadow:0 0 0 3px rgba(0,120,82,.08);
}

.mini-chat-submit{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:12px;
  padding:0 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:var(--green-800);
  color:#fff;
  font-family:inherit;
  font-size:.78rem;
  font-weight:800;
  cursor:pointer;
  transition:transform .2s ease, opacity .2s ease;
}

.mini-chat-submit:hover{
  transform:translateY(-1px);
  opacity:.94;
}

.mini-chat-submit span{
  font-size:1rem;
}

.mini-chat-form-status{
  min-height:18px;
  margin:4px 0 10px;
  color:#a43a3a;
  font-size:.74rem;
  font-weight:700;
}

.mini-chat-form-status.success{
  color:#16804a;
}

/* AÇÕES DOS LEADS */
.lead-copy-btn,
.lead-delete-btn{
  border:0;
  border-radius:8px;
  padding:7px 11px;
  font-size:.72rem;
  font-weight:700;
  cursor:pointer;
  transition:
    background .18s ease,
    transform .18s ease,
    opacity .18s ease;
  margin:2px;
  white-space:nowrap;
}

.lead-copy-btn{
  background:#dff2e6;
  color:#176b43;
}

.lead-copy-btn:hover{
  background:#c9ead7;
  transform:translateY(-1px);
}

.lead-delete-btn{
  background:#f8dddd;
  color:#a52d2d;
}

.lead-delete-btn:hover{
  background:#f2c5c5;
  transform:translateY(-1px);
}

.lead-copy-btn:active,
.lead-delete-btn:active{
  transform:translateY(0);
}

.lead-copy-btn:disabled,
.lead-delete-btn:disabled{
  opacity:.6;
  cursor:not-allowed;
}

/* =========================================================
   MINI CHAT — BOTÃO WHATSAPP MODERNO
   ========================================================= */

.mini-chat-form-submit {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;

  margin-top: 2px !important;
  padding: 0 16px !important;

  border: 0 !important;
  border-radius: 12px !important;

  background: #128c7e !important;
  color: #fff !important;

  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 800 !important;

  white-space: nowrap !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  cursor: pointer !important;

  box-shadow: 0 5px 14px rgba(18, 140, 126, .18) !important;

  appearance: none !important;
  -webkit-appearance: none !important;

  transition:
    background .18s ease,
    transform .18s ease,
    box-shadow .18s ease !important;
}

.mini-chat-form-submit:hover {
  background: #0f7f72 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 7px 18px rgba(18, 140, 126, .24) !important;
}

.mini-chat-form-submit:active {
  transform: translateY(0) !important;
  box-shadow: 0 3px 9px rgba(18, 140, 126, .16) !important;
}

.mini-chat-form-submit span {
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 1 !important;

  transition: transform .18s ease !important;
}

.mini-chat-form-submit:hover span {
  transform: translateX(3px) !important;
}

.mini-chat-form-submit:disabled {
  opacity: .7 !important;
  cursor: wait !important;
  transform: none !important;
}

/* =========================================================
   MEDSÊNIOR — MAPA INTERATIVO / REGIÕES
   COLE ESTE BLOCO NO FINAL DO style.css
   ========================================================= */

.network-section {
  position: relative;
}

.network-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 520px);
  gap: 56px;
  align-items: center;
}

/* ---------------------------------------------------------
   LISTA DE REGIÕES
   --------------------------------------------------------- */

.region-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 26px;
}

.region-list .region-button {
  appearance: none;
  border: 1px solid #d7e7de;
  background: #f8fbf9;
  color: #07543e;
  border-radius: 999px;
  padding: 9px 14px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: all .2s ease;
}

.region-list .region-button:hover {
  background: #e9f6ee;
  border-color: #91cdb0;
  transform: translateY(-1px);
}

.region-list .region-button.is-active {
  background: #087653;
  border-color: #087653;
  color: #fff;
  box-shadow: 0 7px 18px rgba(8, 118, 83, .18);
}


/* ---------------------------------------------------------
   CARD DO MAPA
   --------------------------------------------------------- */

.map-card {
  position: relative;
  width: 100%;
  height: 500px;
  overflow: hidden;
  border-radius: 32px;
  border: 1px solid #d8e9df;

  background:
    radial-gradient(
      circle at 50% 45%,
      rgba(132, 205, 99, .17),
      transparent 45%
    ),
    linear-gradient(
      145deg,
      #f2f9f4 0%,
      #e3f1e8 100%
    );

  box-shadow:
    0 18px 50px rgba(15, 74, 48, .08);
}


/* ---------------------------------------------------------
   ÁREA DO MAPA
   --------------------------------------------------------- */

.map-wrapper {
  position: absolute;
  inset: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 25px 30px 70px;
}


/* ---------------------------------------------------------
   IMAGEM DO MAPA
   --------------------------------------------------------- */

.regional-map-image {
  position: relative;
  z-index: 2;

  display: block;

  width: 390px;
  max-width: 86%;
  height: auto;

  object-fit: contain;

  pointer-events: none;
  user-select: none;

  filter:
    drop-shadow(
      0 18px 24px rgba(15, 70, 45, .10)
    );

  /* Integra o fundo branco da imagem ao card */
  mix-blend-mode: multiply;
}


/* ---------------------------------------------------------
   PONTOS CLICÁVEIS
   --------------------------------------------------------- */

.map-hotspot {
  position: absolute;
  z-index: 10;

  width: 20px;
  height: 20px;

  padding: 0;

  border: 3px solid #fff;
  border-radius: 50%;

  background: #12845d;

  cursor: pointer;

  transform: translate(-50%, -50%);

  box-shadow:
    0 0 0 4px rgba(18, 132, 93, .16),
    0 6px 14px rgba(0, 60, 40, .20);

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease;
}

.map-hotspot::after {
  content: "";

  position: absolute;

  width: 5px;
  height: 5px;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background: #fff;
}

.map-hotspot:hover {
  background: #075d43;

  transform:
    translate(-50%, -50%)
    scale(1.18);

  box-shadow:
    0 0 0 7px rgba(18, 132, 93, .14),
    0 8px 18px rgba(0, 60, 40, .24);
}

.map-hotspot.is-active {
  background: #064b37;

  transform:
    translate(-50%, -50%)
    scale(1.22);

  box-shadow:
    0 0 0 8px rgba(18, 132, 93, .18),
    0 9px 22px rgba(0, 60, 40, .25);
}


/* ---------------------------------------------------------
   POSIÇÃO DOS ESTADOS
   --------------------------------------------------------- */

/* Pernambuco */
.map-hotspot-pe {
  left: 80%;
  top: 35%;
}

/* Distrito Federal */
.map-hotspot-df {
  left: 61%;
  top: 46%;
}

/* Minas Gerais */
.map-hotspot-mg {
  left: 63%;
  top: 54%;
}

/* Espírito Santo */
.map-hotspot-es {
  left: 69%;
  top: 57%;
}

/* Rio de Janeiro */
.map-hotspot-rj {
  left: 65%;
  top: 61%;
}

/* São Paulo */
.map-hotspot-sp {
  left: 57%;
  top: 65%;
}

/* Paraná */
.map-hotspot-pr {
  left: 52%;
  top: 71%;
}

/* Rio Grande do Sul */
.map-hotspot-rs {
  left: 47%;
  top: 81%;
}


/* ---------------------------------------------------------
   ETIQUETA INFERIOR
   --------------------------------------------------------- */

.map-label {
  position: absolute;
  z-index: 20;

  left: 32px;
  bottom: 28px;

  display: inline-flex;
  align-items: center;
  gap: 9px;

  padding: 10px 15px;

  border: 1px solid rgba(8, 118, 83, .12);
  border-radius: 999px;

  background: rgba(255, 255, 255, .92);

  color: #07543e;

  font-size: 13px;
  font-weight: 800;

  box-shadow:
    0 8px 22px rgba(20, 70, 45, .08);

  backdrop-filter: blur(8px);
}

.map-label span {
  display: grid;
  place-items: center;

  width: 24px;
  height: 24px;

  border-radius: 50%;

  background: #e6f5eb;
  color: #087653;

  font-size: 16px;
  font-weight: 900;
}


/* ---------------------------------------------------------
   PAINEL DAS UNIDADES
   --------------------------------------------------------- */

.region-details {
  margin-top: 22px;

  padding: 19px;

  border: 1px solid #dcebe2;
  border-radius: 20px;

  background: #f8fcf9;

  box-shadow:
    0 14px 35px rgba(10, 70, 45, .07);

  animation: regionDetailsIn .22s ease;
}

.region-details[hidden] {
  display: none;
}

@keyframes regionDetailsIn {
  from {
    opacity: 0;
    transform: translateY(7px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.region-details-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.region-details-kicker {
  display: block;

  margin-bottom: 5px;

  color: #16845f;

  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
}

.region-details-header h3 {
  margin: 0;

  color: #063f30;

  font-size: 21px;
  line-height: 1.15;
}

.region-details-close {
  display: grid;
  place-items: center;

  width: 30px;
  height: 30px;

  padding: 0;

  border: 0;
  border-radius: 50%;

  background: #e8f3ec;

  color: #07543e;

  font-size: 20px;
  line-height: 1;

  cursor: pointer;
}

.region-details-list {
  display: grid;
  gap: 7px;

  margin-top: 15px;
}

.region-unit {
  display: flex;
  align-items: center;
  gap: 9px;

  padding: 10px 11px;

  border: 1px solid #e2eee7;
  border-radius: 11px;

  background: #fff;

  color: #294c3f;

  font-size: 12px;
  font-weight: 700;
}

.region-unit::before {
  content: "⌖";

  display: grid;
  place-items: center;

  width: 23px;
  height: 23px;

  flex: 0 0 23px;

  border-radius: 7px;

  background: #e8f5ec;
  color: #13845e;

  font-size: 13px;
}

.region-quote-button {
  width: 100%;

  margin-top: 14px;

  padding: 12px 15px;

  border: 0;
  border-radius: 11px;

  background: #087653;
  color: #fff;

  font-family: inherit;
  font-size: 13px;
  font-weight: 900;

  cursor: pointer;

  transition: all .2s ease;
}

.region-quote-button:hover {
  background: #075b42;
  transform: translateY(-1px);
}

.region-quote-button span {
  margin-left: 7px;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 900px) {

  .network-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .map-card {
    height: 460px;
  }

  .regional-map-image {
    width: 370px;
  }

}

@media (max-width: 600px) {

  .network-grid {
    gap: 28px;
  }

  .region-list {
    gap: 7px;
  }

  .region-list .region-button {
    padding: 8px 11px;
    font-size: 12px;
  }

  .map-card {
    height: 390px;
    border-radius: 24px;
  }

  .map-wrapper {
    padding: 15px 10px 60px;
  }

  .regional-map-image {
    width: 320px;
    max-width: 92%;
  }

  .map-hotspot {
    width: 18px;
    height: 18px;
  }

  .map-label {
    left: 18px;
    bottom: 18px;

    padding: 8px 12px;

    font-size: 11px;
  }

  .map-label span {
    width: 21px;
    height: 21px;
  }

}

/* =========================================================
   POSIÇÃO FINAL DOS MARCADORES — MAPA MEDSÊNIOR
   ========================================================= */

.map-hotspot-pe {
  left: 77.5%;
  top: 33%;
}

.map-hotspot-df {
  left: 64%;
  top: 45%;
}

.map-hotspot-mg {
  left: 66%;
  top: 50%;
}

.map-hotspot-es {
  left: 71%;
  top: 55%;
}

.map-hotspot-rj {
  left: 69%;
  top: 58%;
}

.map-hotspot-sp {
  left: 59%;
  top: 62%;
}

.map-hotspot-pr {
  left: 54%;
  top: 67%;
}

.map-hotspot-rs {
  left: 51%;
  top: 73%;
}

/* =========================================================
   FAIXA DE INDICADORES — DASHBOARD MEDSÊNIOR
   ========================================================= */

.conversion-dashboard {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 15% 40%, rgba(42, 177, 125, .12), transparent 28%),
    radial-gradient(circle at 85% 20%, rgba(255, 255, 255, .06), transparent 25%),
    #004d39;
  color: #fff;
  padding: 24px 0 26px;
}

.conversion-dashboard-grid {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.dashboard-stat {
  position: relative;
  min-height: 92px;
  padding: 0 34px;
  border-right: 1px solid rgba(255,255,255,.13);
}

.dashboard-stat:first-child {
  padding-left: 0;
}

.dashboard-stat:last-child {
  border-right: 0;
}

.dashboard-stat-top {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.dashboard-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  color: #bcefdc;
  font-size: 15px;
  font-weight: 800;
}

.dashboard-line {
  width: 54px;
  height: 1px;
  background: linear-gradient(
    90deg,
    rgba(255,255,255,.35),
    rgba(255,255,255,0)
  );
}

.dashboard-stat > strong {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -.04em;
  font-weight: 800;
}

.dashboard-stat .counter-plus {
  margin-left: 2px;
}

.dashboard-stat .stat-word {
  font-size: 24px;
  letter-spacing: -.03em;
}

.dashboard-stat .stat-title {
  display: block;
  margin-top: 8px;
  color: #d9f3e8;
  font-size: 14px;
  font-weight: 700;
}

.dashboard-stat small {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  font-weight: 500;
}

.dashboard-chart {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  height: 45px;
  opacity: .22;
  pointer-events: none;
}

.dashboard-chart::before,
.dashboard-chart::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(255,255,255,.08);
}

.dashboard-chart::before {
  top: 14px;
}

.dashboard-chart::after {
  top: 34px;
}

.chart-line {
  position: absolute;
  left: -3%;
  top: 45px;
  width: 106%;
  height: 45px;
  border-top: 2px solid #9ce4c5;
  transform: rotate(-2deg);
  clip-path: polygon(
    0 80%,
    8% 72%,
    15% 76%,
    23% 42%,
    31% 58%,
    39% 35%,
    47% 48%,
    55% 18%,
    63% 34%,
    71% 12%,
    79% 27%,
    87% 8%,
    94% 20%,
    100% 2%
  );
}

.chart-dot {
  position: absolute;
  z-index: 3;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #b9efd9;
  box-shadow: 0 0 0 5px rgba(185,239,217,.08);
}

.dot-1 { left: 23%; top: 43px; }
.dot-2 { left: 39%; top: 35px; }
.dot-3 { left: 55%; top: 19px; }
.dot-4 { left: 71%; top: 13px; }
.dot-5 { left: 87%; top: 9px; }
.dot-6 { left: 94%; top: 20px; }


/* ANIMAÇÃO DE ENTRADA */

.dashboard-stat {
  opacity: 0;
  transform: translateY(18px);
  animation: dashboardStatIn .65s cubic-bezier(.2,.8,.2,1) forwards;
}

.dashboard-stat:nth-child(1) { animation-delay: .08s; }
.dashboard-stat:nth-child(2) { animation-delay: .18s; }
.dashboard-stat:nth-child(3) { animation-delay: .28s; }
.dashboard-stat:nth-child(4) { animation-delay: .38s; }

.dashboard-chart {
  opacity: 0;
  animation: dashboardChartIn 1.4s ease forwards .35s;
}

@keyframes dashboardStatIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes dashboardChartIn {
  to {
    opacity: .22;
  }
}


/* MOBILE */

@media (max-width: 900px) {
  .conversion-dashboard {
    padding: 28px 0 34px;
  }

  .conversion-dashboard-grid {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 28px;
  }

  .dashboard-stat {
    min-height: 110px;
    padding: 0 20px;
  }

  .dashboard-stat:nth-child(2) {
    border-right: 0;
  }

  .dashboard-stat:nth-child(3),
  .dashboard-stat:nth-child(4) {
    border-top: 1px solid rgba(255,255,255,.10);
    padding-top: 22px;
  }

  .dashboard-stat:first-child {
    padding-left: 0;
  }

  .dashboard-stat > strong {
    font-size: 29px;
  }

  .dashboard-stat .stat-word {
    font-size: 20px;
  }
}

@media (max-width: 560px) {
  .conversion-dashboard-grid {
    grid-template-columns: 1fr 1fr;
  }

  .dashboard-stat {
    padding-left: 12px;
    padding-right: 12px;
  }

  .dashboard-stat:first-child {
    padding-left: 0;
  }

  .dashboard-stat > strong {
    font-size: 25px;
  }

  .dashboard-stat .stat-word {
    font-size: 17px;
  }

  .dashboard-stat .stat-title {
    font-size: 12px;
  }

  .dashboard-stat small {
    font-size: 10px;
  }

  .dashboard-icon {
    width: 26px;
    height: 26px;
    font-size: 13px;
  }

  .dashboard-chart {
    display: none;
  }
}

/* Ajuste do 44+ */
.dashboard-stat .counter,
.dashboard-stat .counter-plus {
  display: inline-block;
  vertical-align: baseline;
}

.dashboard-stat .counter-plus {
  margin-left: 3px;
  font-size: 30px;
  line-height: 1;
}

/* =========================================================
   DASHBOARD PREMIUM — INDICADORES MEDSÊNIOR
   ========================================================= */

.conversion-dashboard {
  position: relative;
  overflow: hidden;
  padding: 24px 0 30px;
}

/* ---------- INDICADORES ---------- */

.dashboard-stat {
  position: relative;
  min-height: 100px;
  padding: 0 34px;
  border-right: 1px solid rgba(255,255,255,.12);
}

.dashboard-stat:first-child {
  padding-left: 0;
}

.dashboard-stat:last-child {
  border-right: 0;
}

/* ---------- MICRO LABELS ---------- */

.dashboard-stat-top {
  height: 30px;
  margin-bottom: 12px;
}

.dashboard-icon {
  position: relative;
  width: auto;
  height: 26px;
  min-width: 26px;
  padding: 0 9px;
  border-radius: 20px;
  background: rgba(255,255,255,.09);
  color: #b9ead5;
  font-size: 0;
}

.dashboard-icon::after {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  white-space: nowrap;
}

.dashboard-stat:nth-child(1) .dashboard-icon::after {
  content: "EXPERIÊNCIA";
}

.dashboard-stat:nth-child(2) .dashboard-icon::after {
  content: "ESPECIALIZAÇÃO";
}

.dashboard-stat:nth-child(3) .dashboard-icon::after {
  content: "PREVENÇÃO";
}

.dashboard-stat:nth-child(4) .dashboard-icon::after {
  content: "PRESENÇA";
}

/* pontinho de atividade */

.dashboard-icon::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-right: 7px;
  border-radius: 50%;
  background: #b9ead5;
  box-shadow: 0 0 0 4px rgba(185,234,213,.08);
  vertical-align: middle;
}

/* remove a linha individual antiga */

.dashboard-line {
  display: none;
}


/* ---------- NÚMEROS ---------- */

.dashboard-stat > strong {
  position: relative;
  z-index: 2;
  font-size: 34px;
  line-height: 1;
  letter-spacing: -.045em;
}

.dashboard-stat .stat-word {
  font-size: 24px;
}

.dashboard-stat .stat-title {
  margin-top: 7px;
  font-size: 14px;
  font-weight: 700;
}

.dashboard-stat small {
  font-size: 12px;
  opacity: .62;
}


/* ---------- GRÁFICO DE FUNDO ---------- */

.dashboard-chart {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 5px;
  height: 55px;
  opacity: 1;
  pointer-events: none;
}

/* linha horizontal de referência */

.dashboard-chart::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 38px;
  height: 1px;
  background: rgba(185,234,213,.10);
}

.dashboard-chart::after {
  display: none;
}


/* linha gráfica */

.chart-line {
  position: absolute;
  left: -2%;
  top: 5px;
  width: 104%;
  height: 48px;
  border: 0;
  background: rgba(185,234,213,.16);

  clip-path: polygon(
    0% 78%,
    8% 72%,
    15% 76%,
    23% 48%,
    31% 58%,
    39% 36%,
    47% 50%,
    55% 22%,
    63% 37%,
    71% 15%,
    79% 29%,
    87% 10%,
    94% 22%,
    100% 5%,
    100% 8%,
    94% 25%,
    87% 13%,
    79% 32%,
    71% 18%,
    63% 40%,
    55% 25%,
    47% 53%,
    39% 39%,
    31% 61%,
    23% 51%,
    15% 79%,
    8% 75%,
    0% 81%
  );

  animation: dashboardGraphReveal 1.6s ease-out forwards;
  transform-origin: left center;
}


/* ---------- PONTOS DO GRÁFICO ---------- */

.chart-dot {
  z-index: 4;
  width: 7px;
  height: 7px;
  background: #a9e6cd;
  box-shadow:
    0 0 0 5px rgba(169,230,205,.08),
    0 0 14px rgba(169,230,205,.20);
  animation: dashboardDotPulse 2.4s ease-in-out infinite;
}

.dot-1 { left: 23%; top: 25px; }
.dot-2 { left: 39%; top: 17px; }
.dot-3 { left: 55%; top: 8px; }
.dot-4 { left: 71%; top: 4px; }
.dot-5 { left: 87%; top: 1px; }
.dot-6 { left: 94%; top: 8px; }


/* ---------- ANIMAÇÃO ---------- */

@keyframes dashboardGraphReveal {
  from {
    opacity: 0;
    transform: scaleX(0);
  }

  to {
    opacity: 1;
    transform: scaleX(1);
  }
}

@keyframes dashboardDotPulse {
  0%, 100% {
    opacity: .55;
    transform: scale(.85);
  }

  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}


/* ---------- ENTRADA DOS INDICADORES ---------- */

.dashboard-stat {
  opacity: 0;
  transform: translateY(12px);
}

.dashboard-stat:nth-child(1) {
  animation: dashboardStatEnter .55s ease forwards .05s;
}

.dashboard-stat:nth-child(2) {
  animation: dashboardStatEnter .55s ease forwards .15s;
}

.dashboard-stat:nth-child(3) {
  animation: dashboardStatEnter .55s ease forwards .25s;
}

.dashboard-stat:nth-child(4) {
  animation: dashboardStatEnter .55s ease forwards .35s;
}

@keyframes dashboardStatEnter {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ---------- MOBILE ---------- */

@media (max-width: 900px) {

  .dashboard-stat {
    padding: 0 18px;
  }

  .dashboard-stat:first-child {
    padding-left: 0;
  }

  .dashboard-stat > strong {
    font-size: 29px;
  }

  .dashboard-stat .stat-word {
    font-size: 20px;
  }
}

@media (max-width: 560px) {

  .conversion-dashboard {
    padding: 22px 0 26px;
  }

  .dashboard-stat {
    padding: 0 10px;
    min-height: 92px;
  }

  .dashboard-stat > strong {
    font-size: 25px;
  }

  .dashboard-stat .stat-word {
    font-size: 17px;
  }

  .dashboard-stat .stat-title {
    font-size: 12px;
  }

  .dashboard-stat small {
    font-size: 10px;
  }

  .dashboard-chart {
    opacity: .65;
  }
}

@media (max-width:640px){
  .announcement{
    display:none !important;
  }
}

/* Mobile: faixa de destaques compacta */
@media (max-width:640px){
  .conversion-dashboard-grid .dashboard-stat:nth-child(3),
  .conversion-dashboard-grid .dashboard-stat:nth-child(4){
    display:none !important;
  }

  .conversion-dashboard-grid{
    grid-template-columns:repeat(2,1fr) !important;
  }

  .conversion-dashboard-grid .dashboard-stat{
    min-height:170px;
    padding:24px 20px;
  }

  .conversion-dashboard-grid .dashboard-stat-top{
    margin-bottom:12px;
  }

  .conversion-dashboard-grid .dashboard-line{
    max-width:70px;
  }

  .conversion-dashboard-grid .counter,
  .conversion-dashboard-grid .counter-plus{
    font-size:2.2rem;
  }

  .conversion-dashboard-grid .stat-title{
    font-size:.95rem;
    line-height:1.25;
  }

  .conversion-dashboard-grid .dashboard-stat small{
    font-size:.75rem;
  }
}

/* Cotação - versão mobile */
.quote-description-mobile{
  display:none;
}

@media (max-width:640px){
  .quote-description-desktop{
    display:none;
  }

  .quote-description-mobile{
    display:block;
  }

  .quote-section .secure-note{
    display:none !important;
  }

  .quote-section .quote-copy h2{
    font-size:2.7rem;
    line-height:1.02;
    margin-bottom:18px;
  }

  .quote-section .quote-copy{
  padding-bottom:20px;
}

.quote-card{
  transform: translateY(-35px);
}

}

.quote-section .quote-copy h2 em{
  color:#78d66b;
}