.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.whatsapp-floater{position:fixed;right:26px;bottom:max(26px,env(safe-area-inset-bottom));z-index:1050;display:grid;place-items:center;width:60px;height:60px;border:2px solid rgba(255,255,255,.85);border-radius:50%;background:#25d366;color:#082f23;box-shadow:0 8px 26px rgba(0,0,0,.24);transition:transform .2s,box-shadow .2s}
.whatsapp-floater>svg{width:34px;height:34px}
.whatsapp-floater:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.whatsapp-floater-label{position:absolute;right:74px;padding:8px 14px;border:1px solid var(--mist);border-radius:999px;background:var(--cream);color:var(--ink);font-size:.78rem;font-weight:600;white-space:nowrap;opacity:0;transform:translateX(6px);transition:opacity .2s,transform .2s;pointer-events:none}
.whatsapp-floater:hover .whatsapp-floater-label,.whatsapp-floater:focus-visible .whatsapp-floater-label{opacity:1;transform:none}
.whatsapp-floater .whatsapp-ff-badge{position:absolute;right:-6px;top:-9px;width:29px;height:29px;padding:2px;border-radius:50%;background:var(--cream);object-fit:contain;box-shadow:0 2px 7px rgba(0,0,0,.2)}
.connect-dialog{position:fixed;inset:0;width:min(540px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid var(--mist);border-radius:26px;color:var(--ink);background:var(--cream);box-shadow:0 30px 90px rgba(0,0,0,.3);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.connect-dialog:not([open]){display:none}
.connect-dialog::backdrop{background:rgba(6,25,40,.72);backdrop-filter:blur(5px)}
.connect-is-open{overflow:hidden}
.connect-panel{position:relative;padding:30px}
.connect-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--mist);border-radius:50%;background:white;color:var(--ink);font:400 1.6rem/1 Inter,sans-serif}
.connect-header{text-align:center;padding:6px 12px 24px}
.connect-header>img{width:76px;height:76px;object-fit:contain;margin:0 auto 12px}
.connect-kicker{font:600 .59rem/1.6 JetBrains Mono,monospace;letter-spacing:.09em;color:var(--deep)}
.connect-header h2{font-size:2.6rem;line-height:1.1;margin-top:8px}
.connect-header>p:last-child{font-size:.88rem;line-height:1.6;color:var(--ink2);max-width:350px;margin:12px auto 0}
.connect-section{margin-top:22px}
.connect-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.connect-section-head h3{font-size:1.2rem;line-height:1.25}
.connect-section-head>span{font:500 .65rem JetBrains Mono,monospace;color:var(--deep);white-space:nowrap}
.connect-channel-list{display:grid;gap:10px}
.connect-channel{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid var(--mist);border-radius:17px;background:white;transition:border-color .2s,background .2s}
.connect-channel:hover{border-color:var(--teal);background:var(--pale)}
.connect-featured{background:var(--ink);border-color:var(--ink);color:white}
.connect-featured:hover{background:var(--ink2)}
.connect-channel-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:13px;background:var(--pale);color:var(--deep)}
.connect-channel-icon svg{width:25px;height:25px}
.connect-channel-icon img{width:42px;height:42px;object-fit:contain}
.connect-link-copy{min-width:0;flex:1}
.connect-link-copy strong,.connect-link-copy span,.connect-link-copy small,.connect-link-copy b{display:block}
.connect-link-copy strong{font-size:.94rem}
.connect-link-copy span{font-size:.76rem;line-height:1.5;margin-top:3px;color:var(--ink2)}
.connect-link-copy small{font-size:.59rem;line-height:1.5;margin-top:6px;color:var(--deep)}
.connect-link-copy b{font-size:.69rem;font-weight:600;margin-top:8px;color:var(--deep)}
.connect-featured .connect-link-copy span{color:rgba(255,255,255,.85)}
.connect-featured .connect-link-copy small,.connect-featured .connect-link-copy b{color:var(--mint)}
.connect-arrow{flex:none;font-size:1.15rem}
.connect-note{font-size:.72rem;line-height:1.6;color:var(--ink2);margin-top:12px}
.connect-social{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.connect-social a,.connect-websites a{display:flex;align-items:center;justify-content:space-between;gap:12px;background:white;border:1px solid var(--mist);border-radius:14px;padding:14px;font-size:.85rem}
.connect-websites{display:grid;gap:10px}
.connect-websites strong,.connect-websites small{display:block}
.connect-websites small{font-size:.72rem;color:var(--ink2);margin-top:3px}
.connect-social a:hover,.connect-websites a:hover{border-color:var(--teal)}
.connect-bottom{text-align:center;border-top:1px solid var(--mist);margin-top:24px;padding-top:22px;font-size:.82rem}
.connect-bottom a{display:inline-block;margin-top:8px;font-weight:600;color:var(--deep)}
.connect-dialog a:focus-visible,.connect-dialog button:focus-visible,.connect-page a:focus-visible,.whatsapp-floater:focus-visible{outline:3px solid var(--sky2);outline-offset:4px}
.connect-page{min-height:100svh;padding:120px 20px 64px;background:linear-gradient(135deg,var(--ink),#174f4b)}
.connect-page-card{max-width:620px;margin:auto;padding:36px;border:1px solid var(--mist);border-radius:28px;background:var(--cream)}
@media(max-width:600px){.whatsapp-floater{right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:56px;height:56px}.connect-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:22px}.connect-panel{padding:22px 18px}.connect-header{padding-top:20px}.connect-header h2{font-size:2.3rem}.connect-channel{padding:13px 11px;gap:10px}.connect-channel-icon{width:35px;height:35px}.connect-page{padding:100px 12px 40px}.connect-page-card{padding:24px 18px}}
@media(prefers-reduced-motion:reduce){.whatsapp-floater,.whatsapp-floater-label{transition:none}}
