/* Signup popup — synedica.io "Stay in the loop" dialog */
.syn-pop { position: fixed; inset: 0; z-index: 100; display: flex; align-items: center; justify-content: center; padding: 24px 16px; font-family: "Plus Jakarta Sans", system-ui, sans-serif; opacity: 0; transition: opacity .25s cubic-bezier(.16, 1, .3, 1); }
.syn-pop[hidden] { display: none; }
.syn-pop.is-open { opacity: 1; }
.syn-pop *, .syn-pop *::before, .syn-pop *::after { box-sizing: border-box; }
.syn-pop p, .syn-pop h2, .syn-pop ul { margin: 0; padding: 0; }
.syn-pop__backdrop, .syn-pop__backdrop:hover, .syn-pop__backdrop:focus, .syn-pop__backdrop:active { position: absolute; inset: 0; border: 0; padding: 0; cursor: default; outline: none; box-shadow: none; transform: none; background: rgba(13, 17, 23, .42) !important; -webkit-backdrop-filter: blur(10px) saturate(160%); backdrop-filter: blur(10px) saturate(160%); }
.syn-pop__card {
	position: relative; width: 100%; max-width: 460px; border-radius: 28px; overflow: hidden;
	background: linear-gradient(160deg, rgba(255, 255, 255, .92) 0%, rgba(240, 246, 255, .88) 100%);
	-webkit-backdrop-filter: blur(40px) saturate(200%); backdrop-filter: blur(40px) saturate(200%);
	border: 1px solid rgba(255, 255, 255, .9); box-shadow: 0 24px 80px rgba(13, 17, 23, .28), 0 4px 12px rgba(27, 111, 216, .12);
	opacity: 0; transform: translateY(24px) scale(.97); transition: opacity .45s cubic-bezier(.16, 1, .3, 1), transform .45s cubic-bezier(.16, 1, .3, 1);
}
.syn-pop.is-open .syn-pop__card { opacity: 1; transform: none; }
.syn-pop.is-closing .syn-pop__card { opacity: 0; transform: translateY(12px) scale(.98); }
.syn-pop__close { position: absolute; top: 14px; right: 14px; z-index: 10; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding: 0; color: #8A95A3; background: rgba(255, 255, 255, .7); border: 1px solid rgba(0, 0, 0, .06); cursor: pointer; transition: color .2s; }
.syn-pop__close:hover { color: #0D1117; background: rgba(255, 255, 255, .7); border-color: rgba(0, 0, 0, .06); transform: none; box-shadow: none; }
.syn-pop__top { padding: 32px 28px 35px; font-size: 16px; line-height: 1.6; }
.syn-pop__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: "JetBrains Mono", ui-monospace, Menlo, monospace; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; color: #1B6FD8; line-height: 1.5; }
.syn-pop__dot { position: relative; display: flex; width: 8px; height: 8px; }
.syn-pop__dot i { position: absolute; inset: 0; border-radius: 50%; background: #1B6FD8; opacity: .4; animation: syn-ping 1s cubic-bezier(0, 0, .2, 1) infinite; }
.syn-pop__dot b { position: relative; width: 8px; height: 8px; border-radius: 50%; background: #1B6FD8; }
.syn-pop h2.syn-pop__title { margin-top: 12px; font-family: inherit; font-size: 26px; font-weight: 700; line-height: 1.15; letter-spacing: -.01em; color: #0D1117; }
@media (min-width: 640px) { .syn-pop h2.syn-pop__title { font-size: 28px; } }
.syn-pop p.syn-pop__lead { margin-top: 10px; font-size: 13.5px; line-height: 1.625; color: #4A5568; }
.syn-pop__form { margin-top: 22px; }
.syn-pop__form .elementor-form-fields-wrapper { display: flex; flex-direction: column; gap: 10px; }
@media (min-width: 640px) { .syn-pop__form .elementor-form-fields-wrapper { flex-direction: row; align-items: center; } }
.syn-pop__form .elementor-message { margin: 8px 0 0; min-height: 18px; line-height: 18px; }
.syn-pop__form .elementor-form:not(:has(.elementor-message))::after { content: ""; display: block; height: 18px; margin-top: 8px; }
.syn-pop__rule { height: 1px; margin: 0 28px; background: rgba(0, 0, 0, .07); }
.syn-pop__bottom { padding: 16px 28px 24px; }
.syn-pop__row { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; }
.syn-pop__lbl { font-family: "JetBrains Mono", ui-monospace, Menlo, monospace; font-size: 9.5px; letter-spacing: .22em; text-transform: uppercase; font-weight: 500; color: #8A95A3; }
.syn-pop__all { font-size: 11px; font-weight: 500; color: #1B6FD8 !important; text-decoration: none !important; }
.syn-pop__all:hover { text-decoration: underline !important; }
.syn-pop__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; list-style: none; }
.syn-pop__tile { border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; background: rgba(255, 255, 255, .7); border: 1px solid rgba(27, 111, 216, .14); }
.syn-pop__img { position: relative; display: block; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; background: linear-gradient(180deg, #7d9ab8 0%, #a9c0d6 60%, #c9d9e6 100%); }
.syn-pop__img img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; border-radius: 0; display: block; transform: scale(.9); transform-origin: center; }
.syn-pop__pens { position: absolute; top: 6px; right: 6px; display: inline-flex; align-items: center; padding: 3px 9px; border-radius: 9999px; white-space: nowrap; font-family: "Plus Jakarta Sans", system-ui, sans-serif; font-size: 10px; font-weight: 600; letter-spacing: .01em; line-height: 1.4; color: #fff; background: #1B6FD8; box-shadow: 0 2px 8px rgba(27, 111, 216, .3), inset 0 1px 0 rgba(255, 255, 255, .25); }
.syn-pop__meta { padding: 8px; }
.syn-pop__name { font-size: 11.5px; font-weight: 600; line-height: 1.25; color: #0D1117; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.syn-pop p.syn-pop__sub { margin-top: 2px; font-family: "JetBrains Mono", ui-monospace, Menlo, monospace; font-size: 8.5px; letter-spacing: .05em; text-transform: uppercase; color: #8A95A3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.syn-pop-open { overflow: hidden; }
