:root{
    --cl-action: #0A8C7A;
    --cl-action-dk: #056052;
    --cl-sy: #8FCAC1;
    --cl-sy-lt: #EFF8F7;
    --cl-dk: #0d1f1c;
    --cl-md: #6b7a78;
    --cl-lt: #ffffff;
    --cl-red: #E31E24;
}
html{position: relative;height: inherit;min-height: 100%;}
body {position: absolute;display: block;height: 100%;min-height: 100%;width: 100%;min-width: 330px;background: #fff;padding: 0;margin: 0;}

*{box-sizing: border-box;}
h1, h2, h3, h4, p, span, label, a, button, input, select, textarea, li, *{font-family: 'Poppins', Arial, sans-serif;font-style: normal;font-weight: 400;text-decoration: none;margin: 0;padding: 0;}
h1, h2, h3, h4, p, span, label, a, button, input, select, textarea, li{color: var(--cl-dk);font-size: 18px;line-height: 1.4;}
*::placeholder{font-family: 'Poppins', Arial, sans-serif;font-style: normal;color: var(--cl-md);margin: 0;font-weight: 400;}
b, strong{font-weight: 700;}
::-webkit-scrollbar{display: block;width: 10px;}
::-webkit-scrollbar-track{background: var(--cl-sy-lt);}
::-webkit-scrollbar-thumb{background: var(--cl-action);}
::-webkit-scrollbar-thumb:hover{background: var(--cl-action-dk);}

.font-sm{font-size: 13px;color: var(--cl-md);}
.font-body{font-size: 17px;line-height: 1.6;color: var(--cl-md);}
.font-md {font-size: 20px;}
.font-lg {font-size: 34px;line-height: 1.25;}
.font-giant{font-size: 42px;line-height: 1.15;}
.font-bold, .font-bold *{font-weight: 700;}
.font-up {text-transform: uppercase}
.lh{line-height: 1.2}
.lh-half{line-height: 1.5}

.cl-action{color: var(--cl-action)}
.cl-lt{color: var(--cl-lt)}
.cl-dk{color: var(--cl-dk)}

.mt-1{margin-top: 10px;}.mb-1{margin-bottom: 10px;}
.mt-2{margin-top: 20px;}.mb-2{margin-bottom: 20px;}
.mt-4{margin-top: 40px;}.mb-4{margin-bottom: 40px;}
.mt-6{margin-top: 60px;}.mb-6{margin-bottom: 60px;}

.flex, .flex-desk{display: flex;align-items: center;justify-content: space-between;}
.flex.wrap{flex-wrap: wrap;}
.flex.gap, .flex-desk.gap{gap: 20px;}
.flex.center{justify-content: center;}
.txt-center, .txt-center *{text-align: center}
.container{margin: 0 auto;max-width: 1180px;padding: 0 20px;}

.lead{max-width: 720px;margin-left: auto;margin-right: auto;color: var(--cl-md);}

.btn{font-family: 'Poppins', sans-serif;display: inline-flex;align-items: center;justify-content: center;gap: 10px;width: fit-content;background-color: var(--cl-dk);font-size: 16px;font-weight: 700;line-height: 1;color: var(--cl-lt);text-align: center;text-transform: uppercase;cursor: pointer;padding: 18px 28px;margin: 0 auto;transition: all .2s ease;border-radius: 100px;border: none;letter-spacing: .3px;white-space: nowrap;
    animation: ctaPulse 2.6s ease-out infinite;}
/* CTA Pulse — pulsação suave para chamar atenção (comentário Figma #5-#9) */
@keyframes ctaPulse{
    0%{box-shadow: 0 0 0 0 rgba(255,255,255,.45);}
    70%{box-shadow: 0 0 0 14px rgba(255,255,255,0);}
    100%{box-shadow: 0 0 0 0 rgba(255,255,255,0);}
}
@keyframes ctaPulseDark{
    0%{box-shadow: 0 0 0 0 rgba(10,140,122,.4);}
    70%{box-shadow: 0 0 0 14px rgba(10,140,122,0);}
    100%{box-shadow: 0 0 0 0 rgba(10,140,122,0);}
}
.btn:hover{animation-play-state: paused;}
.btn::after{content: '';display: inline-block;width: 22px;height: 22px;flex-shrink: 0;border-radius: 50%;background-color: rgba(255,255,255,.25);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M17 7H9M17 7V15'/%3E%3C/svg%3E");background-position: 50%;background-repeat: no-repeat;background-size: 11px;}
.btn:hover{box-shadow: 0 6px 16px rgba(0,0,0,.25); transform: translateY(-1px);}
.btn.action{background: linear-gradient(135deg, var(--cl-action) 0%, var(--cl-action-dk) 100%);}
.btn.action-lt{background: var(--cl-lt); color: var(--cl-action-dk); animation-name: ctaPulseDark;}
.btn.lt{background: var(--cl-lt); color: var(--cl-action-dk); width: 100%; animation-name: ctaPulseDark;}
.btn.action-lt::after,
.btn.lt::after{background-color: rgba(10,140,122,.15);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23056052' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M17 7H9M17 7V15'/%3E%3C/svg%3E");}

/* ===== HERO ===== */
.hero-section{position: relative;background: linear-gradient(180deg, #EAF3F2 0%, #DDEEEC 100%);padding: 60px 0 100px;overflow: hidden;}
.hero-bg{position: absolute;inset: 0;background: url(img/hero-doctor.png) no-repeat 100% 50% / cover;z-index: 0;}
.hero-notch{position: absolute;left: 50%;bottom: -1px;width: 64px;height: 32px;background: #fff;clip-path: polygon(0 0, 100% 0, 50% 100%);transform: translateX(-50%);z-index: 2;}
.hero-section .container{position: relative;z-index: 1;align-items: center;}
.hero-section .txt-box{max-width: 560px;}
.logo-cms{width: 140px;aspect-ratio: 242/157;background: url(img/logo-cms.png) no-repeat 0 50% / contain;margin-bottom: 20px;}
.hero-section h1{margin-bottom: 15px;}
.check-list{list-style: none;padding: 0;}
.check-list li{position: relative;padding-left: 26px;padding-bottom: 12px;margin-bottom: 12px;font-size: 16px;border-bottom: 1px solid var(--cl-sy);}
.check-list li:last-child{border-bottom: none;}
.check-list li::before{content:'';position: absolute;left: 0;top: 5px;width: 12px;height: 12px;border-radius: 50%;background: var(--cl-action);z-index: 2;}
/* Pulsing Dot — pequeno efeito de pulsação no bullet ativo (comentário Figma #2-#3) */
.check-list li::after{content:'';position: absolute;left: 0;top: 5px;width: 12px;height: 12px;border-radius: 50%;border: 2px solid var(--cl-action);animation: dotPulseRing 2s ease-out infinite;}
.check-list li:nth-child(2)::after{animation-delay: .3s;}
.check-list li:nth-child(3)::after{animation-delay: .6s;}
.check-list li:nth-child(4)::after{animation-delay: .9s;}
.check-list li:nth-child(5)::after{animation-delay: 1.2s;}
@keyframes dotPulseRing{
    0%{transform: scale(1);opacity: .8;}
    70%{transform: scale(2.2);opacity: 0;}
    100%{opacity: 0;}
}
.hero-section .img-box{display: none;}

.whats-float{position: fixed;right: 20px;bottom: 20px;z-index: 50;display: flex;align-items: center;justify-content: center;width: 58px;height: 58px;background: linear-gradient(135deg,#1fbf5c,#0f9d4c);border-radius: 50%;box-shadow: 0 8px 20px rgba(0,0,0,.25);
    animation: floatBounce 3s ease-in-out infinite;}
/* Efeito Floating WhatsApp (comentário Figma #1) */
@keyframes floatBounce{
    0%,100%{transform: translateY(0);}
    50%{transform: translateY(-8px);}
}
.whats-float:hover{animation-play-state: paused;}
.whats-ico{position: relative;display:block;width: 40px;height: 40px;border-radius: 50%;background: rgba(255,255,255,.2) url(img/whatsapp-icon.png) 50% no-repeat;background-size: 60%;flex-shrink: 0;}
.whats-ico::before{content:'';position: absolute;inset: 0;border-radius: 50%;border: 2px solid rgba(255,255,255,.6);animation: dotPulseRing 2s ease-out infinite;}

/* ===== PROBLEMA ===== */
.problem-section{padding: 90px 0;background: var(--cl-lt);}
.pi-cards{align-items: stretch;}
.pi-card{flex: 1;border: 1px solid var(--cl-sy);border-radius: 16px;padding: 30px;text-align: left;position: relative;}
.pi-card h3{font-size: 15px;letter-spacing: .5px;margin-bottom: 15px;}
.pi-card ul{list-style: none;padding: 0;margin: 0;}
.pi-card li{position: relative;padding-left: 16px;margin-bottom: 10px;font-size: 15px;color: var(--cl-md);}
.pi-card li::before{content:'·';position: absolute;left: 0;color: var(--cl-md);}
.pi-ico{position: absolute;top: 24px;right: 24px;width: 44px;height: 44px;background: var(--cl-sy-lt) no-repeat 50%;background-size: 62%;border-radius: 10px;}
.pi-ico.pi-patient{background-image: url(img/icon-patient.png);}
.pi-ico.pi-investor{background-image: url(img/icon-investor.png);}

.flow-box{display: flex;flex-wrap: nowrap;align-items: center;justify-content: center;gap: 8px;overflow-x: auto;padding: 4px 4px 10px;}
.flow-step{background: var(--cl-sy-lt);color: var(--cl-action-dk);font-weight: 700;font-size: 13px;padding: 14px 14px;border-radius: 12px;text-align: center;flex: 0 0 auto;min-width: 130px;max-width: 148px;}
.flow-arrow{width: 16px;height: 2px;background: var(--cl-dk);position: relative;flex-shrink: 0;}
.flow-arrow::after{content:'';position: absolute;right: -1px;top: -4px;border: 5px solid transparent;border-left-color: var(--cl-dk);}

/* ===== RECEITA ===== */
.revenue-section{background: linear-gradient(135deg, #0A8C7A 0%, #056052 100%);padding: 90px 0 60px;color: var(--cl-lt);}
.revenue-section .txt-box{max-width: 480px;}
.revenue-list{list-style: none;padding: 0;}
.revenue-list li{position: relative;padding: 14px 0 14px 22px;border-bottom: 1px solid rgba(255,255,255,.25);color: var(--cl-lt);font-size: 17px;}
.revenue-list li::before{content:'';position: absolute;left: 0;top: 22px;width: 6px;height: 6px;border-radius: 50%;background: var(--cl-lt);}
.revenue-list li.highlight{color: var(--cl-dk);font-weight: 700;border-bottom: none;background: var(--cl-lt);border-radius: 100px;padding: 12px 20px 12px 34px;margin-top: 6px;}
.revenue-list li.highlight .arrow-ico{filter: none;}
/* Expanding Dot — bullet ativo se expande (comentário Figma #4) */
.revenue-list li.highlight::before{background: var(--cl-red);left: 14px;top: 50%;transform: translateY(-50%);animation: dotExpand 1.8s ease-in-out infinite;}
@keyframes dotExpand{
    0%,100%{transform: scale(1);}
    50%{transform: scale(2);}
}
.arrow-ico{display:inline-block;width: 16px;height: 16px;vertical-align: middle;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d1f1c' stroke-width='2'%3E%3Cpath d='M7 17L17 7M17 7H9M17 7V15'/%3E%3C/svg%3E") no-repeat 50% / contain;}
.revenue-section .img-box{position: relative;flex: 1;min-width: 300px;height: 360px;}
.revenue-photo-1, .revenue-photo-2{position: absolute;border-radius: 16px;background-size: cover;background-position: 50%;box-shadow: 0 14px 30px rgba(0,0,0,.25);}
.revenue-photo-1{background-image: url(img/revenue-2.png);top: 0;left: 8%;width: 88%;height: 60%;z-index: 1;}
.revenue-photo-2{background-image: url(img/revenue-1.png);bottom: 0;right: 0;width: 58%;height: 54%;z-index: 2;}
.medsempre-card{position: absolute;left: 0;bottom: 18%;width: 165px;aspect-ratio: 159/101;background: url(img/medsempre-card.png) no-repeat 50% / contain;filter: drop-shadow(0 12px 20px rgba(0,0,0,.35));z-index: 3;}

/* ===== VALIDADO ===== */
.validated-section{padding: 90px 0;background: var(--cl-lt);}
.validated-section .txt-box{max-width: 500px;}
.numbered-list{list-style: none;padding: 0;counter-reset: none;}
.numbered-list li{display: flex;align-items: center;gap: 16px;background: var(--cl-sy-lt);border-radius: 12px;padding: 16px 20px;margin-bottom: 12px;font-weight: 700;font-size: 15px;}
.numbered-list li span{color: var(--cl-action);font-size: 22px;font-weight: 800;min-width: 34px;border-right: 2px solid var(--cl-action);padding-right: 14px;}
.validated-section .img-box{flex: 1;min-width: 300px;}
.training-photo{width: 100%;aspect-ratio: 620/413;background: url(img/training.png) no-repeat 50% / cover;border-radius: 16px;}

/* ===== UNIDADES ===== */
.units-section{padding: 90px 0;background: #F4F9F8;}
.unit-cards{align-items: stretch;}
.unit-card{flex: 1;background: var(--cl-lt);border: 1px solid var(--cl-sy);border-radius: 16px;overflow: hidden;padding-bottom: 24px;}
.unit-photo{width: 100%;aspect-ratio: 356/240;background-size: cover;background-position: 50%;}
.unit-photo.unit-1{background-image: url(img/unit-types.png); background-position: 0 50%; background-size: 300% auto;}
.unit-photo.unit-2{background-image: url(img/unit-types.png); background-position: 50% 50%; background-size: 300% auto;}
.unit-photo.unit-3{background-image: url(img/unit-types.png); background-position: 100% 50%; background-size: 300% auto;}
.unit-tag{font-size: 12px;color: var(--cl-md);margin-top: 20px;letter-spacing: 1px;}
.unit-title{font-size: 17px;margin-bottom: 14px;}
.unit-label{font-size: 13px;color: var(--cl-md);margin-top: 8px;}
.unit-value{font-size: 18px;}

/* ===== É PRA MIM ===== */
.fit-section{padding: 90px 0;background: var(--cl-lt);}
.fit-section .txt-box{max-width: 480px;}
.fit-section .img-box{flex: 1;min-width: 300px;}

/* ===== DEPOIMENTO ===== */
.testimonial-section{padding: 90px 0;background: linear-gradient(135deg, #0A8C7A 0%, #056052 100%);}
.testimonial-section .txt-box{max-width: 560px;}
.quote-box{position: relative;background: rgba(255,255,255,.08);border-radius: 16px;padding: 24px;}
.quote-box p{font-size: 15px;line-height: 1.8;opacity: .95;font-style: italic;}
.quote-mark{font-size: 50px;color: rgba(255,255,255,.4);line-height: .5;font-family: Georgia, serif;}
.quote-open{display: block;margin-bottom: 10px;}
.quote-close{display: block;text-align: right;margin-top: 10px;}
.testimonial-section .img-box{position: relative;flex-shrink: 0;width: 320px;}
.persio-photo{width: 100%;aspect-ratio: 336/362;background: url(img/dr-persio.png) no-repeat 50% / cover;border-radius: 16px;}
.play-btn{position: absolute;bottom: -18px;left: 50%;transform: translateX(-50%);display: flex;align-items: center;gap: 8px;background: linear-gradient(135deg,#0A8C7A,#056052);color: #fff;font-weight: 700;font-size: 13px;padding: 10px 18px 10px 14px;border-radius: 100px;box-shadow: 0 6px 14px rgba(0,0,0,.3);white-space: nowrap;}
.play-ico{width: 20px;height: 20px;border-radius: 50%;background: rgba(255,255,255,.25) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Cpath d='M7 17L17 7M17 7H9M17 7V15'/%3E%3C/svg%3E") 50% no-repeat;background-size: 10px;}

/* ===== FORMULÁRIO ===== */
.form-section{position: relative;background: linear-gradient(180deg, rgba(6,74,64,.88), rgba(4,48,42,.92)), url(img/form-bg.png) no-repeat 50% / cover;padding: 90px 0;}
.form-section .txt-box{max-width: 420px;}
.form-section .form,
.form-section .form > *{width: 100%;}
#form-box{max-width: 420px;width: 100%;background: linear-gradient(135deg, var(--cl-action) 0%, var(--cl-action-dk) 100%);padding: 30px;border-radius: 20px;}
#lead-form label{display: block;color: var(--cl-lt);font-size: 13px;margin-bottom: 6px;}
#lead-form input{display: block;width: 100%;background: var(--cl-action-dk);border: none;border-radius: 8px;padding: 12px 14px;color: var(--cl-lt);font-size: 14px;margin-bottom: 18px;}
#lead-form input:focus{outline: 2px solid var(--cl-lt);}
#lead-form button{margin-top: 4px;}

/* ===== FOOTER ===== */
footer{position: relative;background: var(--cl-action); padding: 50px 0 30px;}
.footer-logos{margin-bottom: 20px;}
.f-logo{height: 30px;background-repeat: no-repeat;background-position: 50%;background-size: contain;filter: brightness(0) invert(1);opacity: .92;}
.f-logo-ccc{width: 175px;background-image: url(img/logo-ccc-full.png);}
.f-logo-cms{width: 85px;background-image: url(img/logo-cms.png);}
.f-logo-medsempre{width: 130px;background-image: url(img/logo-medsempre.png);}
.f-social{display: flex;align-items: center;justify-content: center;width: 30px;height: 30px;color: #fff;opacity: .92;}
.f-social svg{width: 22px;height: 22px;}
footer p{font-size: 13px;color: rgba(255,255,255,.85);text-align: center}

/* Scale In — card surge aumentando de tamanho (comentário Figma #11-#15) */
.scale-in{opacity: 0;transform: scale(.88);transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1);}
.scale-in.in-view{opacity: 1;transform: scale(1);}

.room-slider{position: relative;width: 100%;aspect-ratio: 16/9;border-radius: 16px;overflow: hidden;}
.room-track{display: flex;width: 400%;height: 100%;transition: transform .5s ease;}
.room-slide{width: 25%;height: 100%;flex-shrink: 0;background-size: cover;background-position: 50%;}
.room-nav{position: absolute;top: 50%;transform: translateY(-50%);width: 38px;height: 38px;border-radius: 50%;background: rgba(0,0,0,.35);color: #fff;border: none;font-size: 22px;line-height: 1;cursor: pointer;display: flex;align-items: center;justify-content: center;transition: background .2s ease;}
.room-nav:hover{background: rgba(0,0,0,.6);}
.room-nav.prev{left: 14px;}
.room-nav.next{right: 14px;}

/* ===== VIDEO MODAL ===== */
.video-modal{position: fixed;inset: 0;background: rgba(0,0,0,.85);z-index: 100;display: none;align-items: center;justify-content: center;padding: 20px;}
.video-modal.open{display: flex;}
.video-modal-inner{position: relative;width: 100%;max-width: 900px;}
.video-frame{position: relative;width: 100%;aspect-ratio: 16/9;background: #000;border-radius: 12px;overflow: hidden;}
.video-frame iframe{position: absolute;inset: 0;width: 100%;height: 100%;border: none;}
.video-close{position: absolute;top: -44px;right: 0;background: transparent;border: none;color: #fff;font-size: 32px;line-height: 1;cursor: pointer;}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 990px) {
    *.flex-desk{flex-direction: column;}
    .revenue-section .img-box{margin-top: 40px;}
    .revenue-section .txt-box{max-width: 100%;text-align: center;}
    .revenue-list li{text-align: left;}
    .testimonial-section .img-box{width: 260px;margin: 0 auto;}
    .form-section .txt-box{text-align: center;max-width: 100%;}
}
@media (max-width: 768px) {
    .btn{white-space: normal;text-align: center;}
    .font-giant{font-size: 28px;}
    .font-lg{font-size: 24px;}
    .container{padding: 0 16px;}

    .hero-section{padding: 40px 0 60px;text-align: center;}
    .hero-bg{display: none;}
    .hero-notch{display: none;}
    .hero-section .txt-box{max-width: 100%;}
    .hero-section .img-box{display: block;margin-top: 30px;}
    .hero-photo{width: 100%;aspect-ratio: 683/449;background: url(img/hero-doctor.png) no-repeat 50% 0 / cover;border-radius: 20px;}
    .logo-cms{margin: 0 auto 20px;}
    .check-list{text-align: left;max-width: 320px;margin: 0 auto;}

    .pi-cards{flex-direction: column;}
    .flow-box{flex-direction: column;}
    .flow-arrow{width: 2px;height: 16px;}
    .flow-arrow::after{right: -4px;top: auto;bottom: -1px;border-left-color: transparent;border-top-color: var(--cl-dk);}

    .unit-cards{flex-direction: column;}
    .whats-float{width: 52px;height: 52px;}
}
