/* Funnel: restrained motion, a calendar/reel pairing, and the existing brand palette. */
.public-offer-page .sales-announcement { --sales-banner-bg:#285445; --sales-banner-color:#fff; display:flex; align-items:center; justify-content:center; gap:18px; position:relative; z-index:31; min-height:40px; padding:8px 22px; color:var(--sales-banner-color); background:var(--sales-banner-bg); overflow:hidden; font-size:12px; font-weight:600; line-height:1.4; }
.public-offer-page .sales-announcement-brand { --sales-banner-bg:var(--trainer-public-accent,#2557d6); }
.public-offer-page .sales-announcement-light { --sales-banner-bg:#e6eee8; --sales-banner-color:#163e30; }
.sales-announcement-viewport { overflow:hidden; min-width:0; max-width:760px; }
.sales-announcement-track { display:flex; align-items:center; gap:80px; width:max-content; max-width:100%; }
.sales-announcement-track > span { min-width:0; }
.sales-announcement.has-marquee .sales-announcement-track { max-width:none; animation:sales-marquee var(--sales-marquee-duration) linear infinite; }
.sales-announcement.has-marquee .sales-announcement-viewport { flex:1; max-width:700px; }
.sales-announcement.has-marquee .sales-announcement-track > span { flex:none; white-space:nowrap; }
.sales-announcement-link { flex:none; color:inherit; text-decoration:underline; text-underline-offset:3px; }
.sales-announcement.has-pulse::after { content:""; position:absolute; inset:0; border:2px solid currentColor; opacity:.14; pointer-events:none; animation:sales-breathe var(--sales-pulse-duration) cubic-bezier(.45,0,.55,1) infinite; }
.sales-announcement.has-pulse .sales-announcement-viewport,.sales-announcement.has-pulse .sales-announcement-link { animation:sales-breathe var(--sales-pulse-duration) cubic-bezier(.45,0,.55,1) infinite; }
.sales-announcement.has-halo::before { content:""; position:absolute; inset:-28px 25%; border-radius:50%; background:radial-gradient(ellipse,#ffffff26,transparent 70%); pointer-events:none; }
.sales-announcement-pause { position:relative; flex:none; border:1px solid #ffffff50; background:transparent; color:inherit; border-radius:50%; width:27px; height:27px; cursor:pointer; }
.sales-announcement:is(:hover,:focus-within,.is-paused) .sales-announcement-track,.sales-announcement:is(:hover,:focus-within,.is-paused) .sales-announcement-link { animation-play-state:paused; }
.sales-announcement:is(:hover,:focus-within,.is-paused)::after { animation-play-state:paused; }
.sales-announcement:is(:hover,:focus-within,.is-paused) .sales-announcement-viewport { animation-play-state:paused; }
.public-offer-page .sales-announcement :focus-visible { outline:2px solid currentColor; outline-offset:3px; }
@keyframes sales-marquee { to { transform:translateX(calc(-50% - 40px)); } }
@keyframes sales-breathe { 0%,100% { transform:scale(1); } 50% { transform:scale(1.035); } }
.public-offer-page .sales-discovery { max-width:1120px; padding:84px 32px; display:grid; gap:64px; align-items:center; grid-template-columns:minmax(0,1fr); scroll-margin-top:94px; }
.public-offer-page .sales-discovery.has-video { grid-template-columns:minmax(0,1fr) 290px; }
.sales-discovery-copy { min-width:0; }
.sales-discovery-label { display:inline-flex; align-items:center; gap:7px; padding:5px 10px; border:1px solid #d8e5dc; border-radius:30px; color:#285445; font-size:10px; font-weight:700; letter-spacing:.06em; background:#fff; }
.sales-discovery-label i { width:6px; height:6px; background:#269061; border-radius:50%; box-shadow:0 0 0 3px #26906115; }
.public-offer-page .sales-discovery h2,.public-offer-page .sales-presentation h2 { font-family:inherit; font-size:clamp(28px,3.3vw,42px); line-height:1.12; letter-spacing:-.035em; margin:18px 0; max-width:640px; color:#252a26; text-wrap:balance; }
.sales-discovery-description p,.sales-presentation > div > p { color:#666962; font-size:15px; line-height:1.75; max-width:630px; margin:0 0 14px; white-space:pre-line; }
.sales-live-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:14px; margin:34px 0 18px; }
.sales-live-grid.is-single { grid-template-columns:minmax(0,340px); }
.sales-live-card { position:relative; min-width:0; padding:22px 18px 16px; border:1px solid #e0dcd2; border-radius:18px; background:#fff; scroll-margin-top:100px; }
.sales-live-card.is-next { border-color:var(--trainer-public-accent,#2557d6); box-shadow:0 8px 30px #203d8310; }
.sales-live-next { position:absolute; top:-10px; left:18px; border-radius:20px; padding:3px 9px; background:var(--trainer-public-accent,#2557d6); color:#fff; font-size:9px; text-transform:uppercase; letter-spacing:.04em; font-weight:700; }
.sales-live-head { display:flex; align-items:flex-start; gap:13px; }
.sales-live-head > div:last-child { min-width:0; }
.sales-live-calendar { flex:none; width:43px; overflow:hidden; border:1px solid #e0dcd2; border-radius:8px; text-align:center; }
.sales-live-calendar span { display:block; background:#b97b38; color:#fff; font-size:9px; text-transform:uppercase; line-height:18px; }
.sales-live-calendar strong { display:block; padding:2px 0; font-size:25px; line-height:30px; font-variant-numeric:tabular-nums; }
.public-offer-page .sales-live-card h3 { margin:1px 0 4px; font-size:14px; line-height:1.35; font-weight:700; overflow-wrap:anywhere; }
.sales-live-head p { font-size:11px; margin:3px 0; color:#606b65; }
.sales-live-head small,.sales-live-head > div:last-child > span { font-size:10px; color:#788179; overflow-wrap:anywhere; }
.public-offer-page .sales-live-card .button { margin-top:17px; width:100%; justify-content:center; min-height:39px; padding:9px 12px; font-size:12px; border-color:var(--trainer-public-accent,#2557d6); color:var(--trainer-public-accent,#2557d6); background:#fff; border-radius:24px; }
.public-offer-page .sales-live-card .button.primary { color:#fff; background:var(--trainer-public-accent,#2557d6); }
.public-offer-page .sales-live-card .button:disabled { opacity:.62; cursor:not-allowed; }
.sales-live-test,.sales-live-replay { display:block; font-size:10px; color:#927238; margin-top:12px; }
.sales-live-empty { color:#666962; font-size:14px; padding:20px; border:1px dashed #d6d9d2; border-radius:14px; }
.sales-reassurance { display:flex; flex-wrap:wrap; gap:10px 16px; list-style:none; padding:0; margin:20px 0 0; font-size:11px; color:#70746d; }
.sales-reassurance li { display:flex; gap:6px; }.sales-reassurance span { color:#285445; }
.sales-video { margin:0; min-width:0; }
.sales-video-frame { position:relative; width:100%; aspect-ratio:16/9; background:#182b23; border-radius:22px; overflow:hidden; }
.sales-video-frame > img,.sales-video-frame > video,.sales-video-frame > iframe { position:absolute; inset:0; width:100%; height:100%; border:0; object-fit:contain; }.sales-video-frame > img { object-fit:cover; }
.sales-video-reel { width:100%; max-width:290px; justify-self:center; }.sales-video-reel .sales-video-frame { aspect-ratio:9/16; border:6px solid #fff; box-shadow:0 18px 45px #1d35232b; border-radius:29px; }
.sales-video-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; padding:30px; color:#fff; background:radial-gradient(ellipse at 10% 10%,#648b71 0,transparent 65%),linear-gradient(150deg,#294c40,#13271f); }
.sales-video-placeholder::before { content:""; position:absolute; border:1px solid #ffffff25; width:170%; height:170%; border-radius:50%; top:-90%; left:-20%; pointer-events:none; }
.sales-video-placeholder span { font-size:11px; letter-spacing:.13em; text-transform:uppercase; opacity:.75; margin-bottom:12px; }
.sales-video-placeholder strong { font-size:clamp(22px,2.5vw,36px); line-height:1.15; letter-spacing:-.03em; text-wrap:balance; }
.sales-video-reel .sales-video-placeholder { padding:24px 20px 65px; }
.sales-video-play { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; width:100%; border:0; background:#0000000c; color:#fff; cursor:pointer; }
.sales-video-play > span { display:grid; place-items:center; width:64px; height:64px; padding-left:4px; border-radius:50%; background:#fffffff0; color:#25342c; font-size:23px; box-shadow:0 4px 20px #0002; transition:transform 160ms cubic-bezier(.23,1,.32,1); }
.sales-video-play:active > span { transform:scale(.97); }.sales-video-play:focus-visible { outline:3px solid #fff; outline-offset:-8px; }
.sales-video-play small { padding:5px 10px; background:#0007; border-radius:20px; font-size:11px; }
.sales-video-pending { position:absolute; bottom:14px; left:14px; right:14px; width:fit-content; max-width:calc(100% - 28px); border-radius:15px; padding:6px 10px; font-size:10px; color:#fff; background:#ffffff18; backdrop-filter:blur(5px); }
.sales-video figcaption { margin-top:14px; font-size:11px; color:#75766e; text-align:center; line-height:1.5; }
.public-offer-page .sales-presentation { max-width:1120px; padding:24px 32px 72px; display:grid; gap:22px; }.sales-presentation .sales-video-frame { max-height:560px; }.sales-presentation > .button { justify-self:start; }
.sales-live-dialog { position:fixed; max-width:min(480px,calc(100% - 24px)); width:100%; max-height:calc(100dvh - 32px); overflow-y:auto; border:1px solid #e0dcd2; border-radius:24px; padding:34px; color:#263128; background:#fffdfa; box-shadow:0 24px 100px #12271e40; }
.sales-live-dialog::backdrop { background:#16261eb3; backdrop-filter:blur(3px); }.sales-live-dialog h2 { margin:14px 0; font-size:28px; letter-spacing:-.03em; }.sales-live-dialog p { font-size:13px; line-height:1.6; color:#626e65; }
.sales-live-dialog form { display:grid; gap:16px; }.sales-live-dialog form[hidden],.sales-live-dialog [hidden] { display:none; }.sales-live-dialog label { display:grid; gap:7px; font-size:12px; font-weight:600; }
.sales-live-dialog input { min-width:0; width:100%; padding:12px; border:1px solid #cdd8ce; border-radius:9px; font-size:16px; background:#fff; }
.sales-dialog-close { position:absolute; right:15px; top:14px; width:32px; height:32px; border:1px solid #ddd; background:#fff; border-radius:50%; cursor:pointer; }
.sales-honeypot { position:absolute; left:-9999px; height:1px; width:1px; overflow:hidden; }
.sales-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); align-items:start; gap:24px; margin-top:24px; }.sales-page-form { display:grid; gap:18px; min-width:0; }
.sales-editor-intro { margin-bottom:8px; }.sales-editor-intro h1 { font-size:30px; margin:10px 0; }.sales-editor-intro p { font-size:14px; color:#6c726b; line-height:1.6; }
.sales-editor-panel { padding:20px; }.sales-editor-panel > summary { font-weight:700; cursor:pointer; list-style-position:inside; }.sales-editor-panel[open] > summary { margin-bottom:22px; }.sales-editor-panel .form-grid { gap:16px; }.sales-editor-panel [hidden] { display:none; }
.sales-event-editor { margin:18px 0; padding:18px; border:1px solid #d9e2d9; border-radius:12px; background:#f9fbf8; }.sales-event-editor-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:18px; font-size:13px; }
.sales-editor-video { display:grid; gap:16px; }.sales-media-control { display:grid; gap:9px; border:1px dashed #cfd8cf; border-radius:12px; padding:16px; }.sales-media-control label { display:grid; gap:10px; font-size:12px; font-weight:600; }.sales-media-control input[type="file"] { width:100%; min-width:0; font-size:12px; }.sales-media-control progress { width:100%; accent-color:#285445; }.sales-media-control > span,.sales-media-current { font-size:12px; color:#626e65; }.sales-media-control > button { justify-self:start; }
.sales-editor-save { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; position:sticky; bottom:18px; z-index:3; padding:18px; box-shadow:0 6px 24px #0001; }.sales-editor-save > span { font-size:12px; color:#626e65; }
body.has-unsaved-changes .sales-editor-save { bottom:100px; }
.sales-editor-preview { position:sticky; top:24px; overflow:hidden; min-width:0; padding:16px; }.sales-preview-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; font-size:13px; }.sales-preview-head [aria-pressed="true"] { background:#e5eee7; border-color:#a4bca9; }.sales-preview-viewport { height:min(75vh,850px); overflow:auto; background:#e9ede7; border-radius:12px; }.sales-preview-viewport iframe { width:100%; height:100%; min-height:570px; border:0; background:#fff; }.sales-editor-preview.is-mobile iframe { width:390px; max-width:100%; display:block; margin:0 auto; }.sales-bookings { margin-top:24px; }
.sales-preview-viewport { position:relative; overflow:hidden; }.sales-preview-viewport iframe,.sales-editor-preview.is-mobile iframe { position:absolute; top:0; left:0; max-width:none; min-height:0; transform-origin:top left; margin:0; }
@media (max-width:1050px) { .sales-editor-layout { grid-template-columns:minmax(0,1fr); }.sales-editor-preview { position:static; } }
@media (max-width:760px) {
  .public-offer-page .sales-announcement { gap:8px; padding:8px 12px; min-height:42px; font-size:10px; }.sales-announcement:not(.has-marquee) .sales-announcement-track { width:auto; }.sales-announcement:not(.has-marquee) .sales-announcement-track > span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }.sales-announcement-link { max-width:105px; line-height:1.4; }.sales-announcement-pause { width:24px; height:24px; }
  .public-offer-page .sales-discovery,.public-offer-page .sales-discovery.has-video { grid-template-columns:minmax(0,1fr); gap:32px; padding:40px 22px 48px; }.sales-video-reel { grid-row:1; width:100%; max-width:none; }.sales-video-reel .sales-video-frame { border-width:4px; border-radius:23px; }.sales-video-reel .sales-video-placeholder { padding:20px 15px 55px; }.sales-video-reel .sales-video-placeholder strong { font-size:23px; }.public-offer-page .sales-discovery h2,.public-offer-page .sales-presentation h2 { font-size:29px; }
  .sales-live-grid,.sales-live-grid.is-single { grid-template-columns:minmax(0,1fr); gap:24px; margin-top:30px; }.sales-live-card { padding:22px 18px 18px; }.sales-live-head h3 { font-size:15px; }.sales-reassurance { display:grid; gap:10px; }.public-offer-page .sales-presentation { padding:10px 22px 42px; }.sales-presentation .sales-video-frame { border-radius:16px; }.sales-live-dialog { padding:32px 22px 24px; }
  .public-offer-page .sales-presentation { padding-inline:12px; }.sales-presentation > div,.sales-presentation > .button { margin-inline:10px; }.sales-video-landscape .sales-video-placeholder { padding:20px 18px 56px; }
  .sales-editor-panel { padding:16px; }.sales-event-editor { padding:14px; }.sales-editor-panel .form-grid { grid-template-columns:minmax(0,1fr); }.sales-editor-save { bottom:8px; }.sales-preview-viewport { height:680px; }
}
@media (prefers-reduced-motion:reduce) { .sales-announcement.has-marquee .sales-announcement-track,.sales-announcement.has-pulse .sales-announcement-link { animation:none; transform:none; }.sales-announcement.has-marquee .sales-announcement-track { width:auto; max-width:100%; }.sales-announcement.has-marquee .sales-announcement-track > span { white-space:normal; }.sales-announcement-track > span[aria-hidden="true"] { display:none; }.sales-announcement-pause { display:none; }.sales-video-play > span { transition:none; } }
@media (prefers-reduced-motion:reduce) { .sales-announcement.has-pulse::after { animation:none; transform:none; } }
@media (prefers-reduced-motion:reduce) { .sales-announcement.has-pulse .sales-announcement-viewport { animation:none; transform:none; } }
