/* Coverage invitation and dialog, scoped to the Manaus consultation. */
.nio-coverage-card { position:relative; isolation:isolate; overflow:hidden; display:grid; grid-template-columns:1.1fr .9fr; gap:20px 24px; padding:52px 58px 0; border:1px solid #28472f; border-radius:32px; color:#fff; background:radial-gradient(ellipse at 100% 10%,#213d25 0,transparent 56%),#101c14; box-shadow:0 24px 65px #101c1420; }
.nio-coverage-copy { position:relative; z-index:2; padding-bottom:24px; }
.nio-coverage-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 22px; color:#b0dfa0; font-size:.69rem; font-weight:850; letter-spacing:.14em; }
.nio-coverage-eyebrow > span,.nio-fiber-location > span { width:6px; height:6px; border-radius:50%; background:#48ff0b; box-shadow:0 0 14px #48ff0b88; }
.nio-coverage-copy h2 { margin:0 0 22px; font-size:clamp(2.4rem,4.4vw,3.7rem); line-height:1.09; letter-spacing:-.055em; }
.nio-coverage-copy h2 em { color:#48ff0b; font-style:normal; }
.nio-coverage-description { max-width:440px; margin:0 0 26px; color:#cad8c9; font-size:1rem; line-height:1.75; }
.nio-coverage-button { min-height:58px; gap:36px; padding:0 27px; color:#101c14; background:#48ff0b; box-shadow:0 8px 32px #48ff0b26; }
.nio-coverage-button:hover { background:#79ff4c; box-shadow:0 10px 38px #48ff0b40; }
.nio-coverage-button > span { font-size:1.5rem; font-weight:500; }
.nio-coverage-note { margin:13px 0 0; color:#a6bba7; font-size:.77rem; }
.nio-fiber-art { position:absolute; z-index:-1; right:-18px; top:-18px; width:52%; height:calc(100% - 78px); pointer-events:none; }
.nio-fiber-art svg { width:100%; height:100%; overflow:visible; }
.nio-fiber-location { position:absolute; left:50%; top:76%; display:flex; align-items:center; gap:9px; white-space:nowrap; transform:translateX(-50%); padding:8px 14px; border:1px solid #48ff0b26; border-radius:999px; background:#14271bcc; color:#c1ddb8; font-size:.63rem; font-weight:750; letter-spacing:.12em; }
.nio-coverage-journey { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; position:relative; z-index:2; list-style:none; margin:0; padding:24px 0; border-top:1px solid #ffffff1c; }
.nio-coverage-journey li { display:flex; align-items:center; gap:12px; font-size:.82rem; color:#dfebdb; }
.nio-coverage-journey li > span { color:#84bd6e; font-size:.67rem; font-weight:850; letter-spacing:.05em; }
.nio-coverage-dialog { width:min(820px,calc(100% - 40px)); height:min(870px,calc(100dvh - 40px)); max-width:none; max-height:none; margin:auto; padding:0; border:1px solid #b8cdb1; border-radius:24px; background:#f1f7ed; color:#101c14; overflow:hidden; box-shadow:0 32px 110px #0007; }
.nio-coverage-dialog[open] { display:flex; flex-direction:column; }
.nio-coverage-dialog::backdrop { background:#07120bba; backdrop-filter:blur(5px); }
.nio-dialog-header { flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:66px; padding:10px 18px; border-bottom:1px solid #dbe5d8; background:#fff; }
.nio-dialog-header > span { color:#5c675f; font-size:.8rem; font-weight:750; }
.nio-dialog-back,.nio-dialog-close { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 12px; border:0; border-radius:12px; color:#101c14; background:#edf5e8; cursor:pointer; }
.nio-dialog-back { gap:10px; font-size:.83rem; font-weight:750; }
.nio-dialog-back > span { font-size:1.2rem; }
.nio-dialog-close { flex:0 0 44px; width:44px; padding:0; font-family:Arial,sans-serif; font-size:30px; line-height:1; }
.nio-dialog-back:hover,.nio-dialog-close:hover { background:#d8ffc9; }
.nio-dialog-header button:focus-visible { outline:3px solid #0b6b3b; outline-offset:2px; }
.nio-dialog-content { position:relative; flex:1; min-height:0; }
.nio-dialog-content iframe { display:block; width:100%; height:100%; border:0; background:#f1f7ed; }
.nio-dialog-loading { position:absolute; inset:0; z-index:1; display:flex; align-items:center; justify-content:center; gap:12px; margin:0; padding:24px; color:#36583a; background:#f1f7ed; font-size:.9rem; }
.nio-dialog-loading[hidden] { display:none; }
.nio-dialog-loading > span { width:20px; height:20px; border:2px solid #d0dfc9; border-top-color:#0b6b3b; border-radius:50%; animation:nio-loading-spin .8s linear infinite; }
.nio-consultation-open .mobile-cta { visibility:hidden; }
@keyframes nio-loading-spin { to { transform:rotate(360deg); } }
@media(max-width:760px) {
 .nio-coverage-card { grid-template-columns:1fr; padding:34px 28px 0; border-radius:26px; }
 .nio-coverage-copy { max-width:480px; }
 .nio-fiber-art { width:400px; right:-205px; top:0; height:420px; opacity:.33; }
 .nio-coverage-description { max-width:380px; }
 .nio-fiber-location { display:none; }
 .nio-coverage-journey { gap:14px; padding:20px 0; }
 .nio-coverage-journey li { display:block; font-size:.72rem; line-height:1.5; }
 .nio-coverage-journey li > span { display:block; margin-bottom:5px; }
}
@media(max-width:540px) {
 .nio-coverage-copy h2 { font-size:2.55rem; }
 .nio-coverage-description { font-size:.9rem; }
 .nio-coverage-button { width:100%; gap:20px; }
 .nio-coverage-note { text-align:center; }
 .nio-coverage-dialog { width:100%; height:100%; height:100dvh; border:0; border-radius:0; }
 .nio-dialog-header { min-height:64px; padding:calc(8px + env(safe-area-inset-top)) 12px 8px; }
 .nio-dialog-header > span { display:none; }
 .nio-dialog-content { padding-bottom:env(safe-area-inset-bottom); }
}
@media(prefers-reduced-motion:reduce) { .nio-dialog-loading > span { animation:none; } }
