.trainer-promo { position:relative; padding:48px 0 36px; background:linear-gradient(to bottom,#fafafa 0 23%,#fff7fa 23% 100%); overflow:hidden; }
.trainer-promo::before { content:''; position:absolute; top:23%; left:0; right:0; border-top:1px solid #f9dce7; }
.trainer-promo::after { content:''; position:absolute; bottom:0; left:0; right:0; border-bottom:1px solid #f9dce7; }
.trainer-promo-grid { position:relative; display:grid; grid-template-columns:350px 410px; justify-content:center; align-items:center; gap:70px; }
.trainer-promo-copy { padding-top:110px; padding-bottom:30px; }
.trainer-promo-kicker { color:var(--signal); font-size:22px; font-weight:650; line-height:1.4; margin-bottom:8px; }
.trainer-promo h2 { font-size:24px; font-weight:600; line-height:1.22; letter-spacing:-.025em; text-transform:none; color:var(--steel); margin:0 0 28px; }
.trainer-promo-benefits { display:flex; flex-direction:column; gap:13px; }
.trainer-promo-benefits li { display:flex; align-items:center; gap:14px; padding:13px 16px; min-height:58px; background:#fff; border-radius:999px; font-size:12px; color:var(--steel); box-shadow:0 8px 18px #50213903; }
.trainer-promo-benefits li>span { display:grid; place-items:center; flex:0 0 34px; height:34px; background:var(--signal); color:white; border-radius:50%; font-size:17px; }
.trainer-promo-cta { display:block; background:var(--signal); color:#fff; border-radius:999px; text-align:center; padding:14px 20px; font-size:13px; font-weight:700; margin-top:20px; }
.trainer-promo-cta:hover { background:var(--signal-dark); }
.trainer-promo-cta:focus-visible { outline:3px solid var(--steel); outline-offset:4px; }
.trainer-promo-visual { position:relative; width:410px; height:760px; }
.trainer-promo-phone { position:absolute; top:0; left:18px; width:365px; height:760px; border:3px solid #aba2af; border-radius:65px; background:#080808; box-shadow:inset 0 0 0 2px #e4dfe5,0 0 0 1px #68616c; padding:12px; }
.trainer-promo-screen { position:relative; width:100%; height:100%; border-radius:51px; background:#272727; }
.trainer-promo-camera { position:absolute; top:10px; left:50%; transform:translateX(-50%); width:102px; height:33px; }
.trainer-promo-camera::before { content:''; position:absolute; width:69px; height:33px; border-radius:22px; background:#000; }
.trainer-promo-camera::after { content:''; position:absolute; right:0; width:32px; height:32px; border-radius:50%; background:radial-gradient(circle,#0c1c34 0 12%,#04080f 17% 34%,#000 38%); }
.trainer-promo-side-button { position:absolute; left:-6px; top:145px; width:3px; height:29px; background:#938997; box-shadow:0 56px #938997,0 90px #938997,371px 96px #938997; }
.trainer-promo-note { position:absolute; display:flex; align-items:center; gap:12px; background:white; border-radius:20px; padding:14px 16px; width:232px; color:var(--steel); box-shadow:0 8px 20px #4d254506; }
.trainer-promo-note>span { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border-radius:50%; background:#fce7f1; color:var(--signal); }
.trainer-promo-note p { font-size:12px; line-height:1.65; }
.trainer-promo-note.note-top { top:120px; right:-8px; }
.trainer-promo-note.note-middle { top:350px; left:-5px; }
.trainer-promo-note.note-bottom { bottom:70px; right:-12px; }
@media(max-width:1000px) { .trainer-promo-grid { grid-template-columns:minmax(260px,350px) 350px; gap:35px; } .trainer-promo-visual { width:350px; height:680px; } .trainer-promo-phone { width:320px; height:680px; left:10px; } .trainer-promo-side-button { box-shadow:0 56px #938997,0 90px #938997,326px 96px #938997; } }
@media(max-width:760px) { .trainer-promo { padding:40px 0; background:#fff7fa; } .trainer-promo::before { top:0; } .trainer-promo-grid { grid-template-columns:minmax(0,380px); gap:32px; } .trainer-promo-copy { padding:0; } .trainer-promo-visual { justify-self:center; width:310px; height:590px; } .trainer-promo-phone { width:280px; height:590px; left:15px; border-radius:48px; padding:10px; } .trainer-promo-screen { border-radius:36px; } .trainer-promo-note { width:200px; padding:12px; } .trainer-promo-note.note-top { top:90px; right:0; } .trainer-promo-note.note-middle { top:290px; left:0; } .trainer-promo-note.note-bottom { bottom:45px; right:0; } .trainer-promo-side-button { box-shadow:0 56px #938997,0 90px #938997,286px 96px #938997; } }
@media(max-width:360px) { .trainer-promo-visual { width:280px; } .trainer-promo-phone { left:0; } }

/* Foto configurável exibida na tela do mockup de celular da home. */
.trainer-promo-screen{overflow:hidden}
.trainer-promo-phone-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.trainer-promo-phone-photo[hidden]{display:none!important}
.trainer-promo-camera{z-index:2;pointer-events:none}
