Last modified by Aaron Blackburn on 2026/09/25 20:47

Show last authors
1 {{html clean="false"}}
2 <!--
3 ============================================================
4 FirstDigital - Cloud Connected PSTN (CCP) How To's (XWiki fragment)
5 ============================================================
6 -->
7 <style>
8 @import url('https://fonts.googleapis.com/css2?family=Host+Grotesk:wght@300;400;600;800&display=swap');
9
10 /* Safety net: if the wiki ever renders this block twice, show only the first copy. */
11 .fdcht-hub ~ .fdcht-hub { display: none !important; }
12
13 /* ---- FirstDigital brand tokens (Brand Guide 2025, p.11) ---- */
14 .fdcht-hub {
15 --fd-navy: #003366;
16 --fd-blue: #307ab2;
17 --fd-blue-bright: #38b2e3;
18 --fd-red: #cf333d;
19 --fd-body: #2e404d;
20 --fd-secondary: #8f9499;
21 --fd-bg-mid: #dedede;
22 --fd-bg-light: #f0f0f0;
23 --fd-ice: #e3f1f8;
24 --fd-white: #ffffff;
25 }
26
27 .fdcht-hub, .fdcht-hub * { box-sizing: border-box; }
28
29 .fdcht-hub {
30 font-family: 'Host Grotesk', 'Segoe UI', -apple-system, BlinkMacSystemFont, Arial, sans-serif;
31 font-weight: 300;
32 color: var(--fd-body);
33 background: var(--fd-white);
34 max-width: 1000px;
35 margin: 0 auto;
36 padding: 0 20px 30px;
37 -webkit-font-smoothing: antialiased;
38 }
39
40 /* ---- Masthead ---- */
41 .fdcht-masthead {
42 display: flex;
43 align-items: center;
44 justify-content: space-between;
45 gap: 20px;
46 flex-wrap: wrap;
47 padding: 22px 0 18px;
48 border-bottom: 1px solid var(--fd-bg-mid);
49 }
50
51 .fdcht-masthead img { height: 46px; width: auto; display: block; }
52
53 .fdcht-masthead-label {
54 font-size: 12px;
55 font-weight: 600;
56 letter-spacing: 0.16em;
57 text-transform: uppercase;
58 color: var(--fd-secondary);
59 white-space: nowrap;
60 }
61
62 /* ---- Hero ---- */
63 .fdcht-hero {
64 margin-top: 22px;
65 border-radius: 6px;
66 padding: 34px 34px 32px;
67 background: linear-gradient(100deg,
68 var(--fd-navy) 0%,
69 var(--fd-navy) 56%,
70 var(--fd-blue) 100%);
71 }
72
73 .fdcht-rule {
74 width: 62px; height: 4px;
75 background: var(--fd-red);
76 border: 0;
77 margin: 0 0 16px;
78 }
79
80 .fdcht-eyebrow {
81 font-size: 16px;
82 font-weight: 600;
83 letter-spacing: 0.18em;
84 text-transform: uppercase;
85 color: var(--fd-blue-bright);
86 margin-bottom: 9px;
87 }
88
89 .fdcht-hero h1 {
90 font-size: clamp(26px, 3.6vw, 36px);
91 font-weight: 800;
92 line-height: 1.14;
93 letter-spacing: -0.01em;
94 color: var(--fd-white);
95 margin: 0 0 12px;
96 }
97
98 .fdcht-hero p {
99 font-size: 15.5px;
100 font-weight: 300;
101 line-height: 1.62;
102 color: #dbe6ef;
103 margin: 0;
104 max-width: 600px;
105 }
106
107 /* ---- How-to list ---- */
108 .fdcht-list {
109 display: flex;
110 flex-direction: column;
111 gap: 14px;
112 margin-top: 26px;
113 }
114
115 .fdcht-row {
116 display: flex;
117 align-items: center;
118 gap: 18px;
119 background: var(--fd-white);
120 border: 1px solid var(--fd-bg-mid);
121 border-radius: 6px;
122 padding: 18px 20px;
123 text-decoration: none !important;
124 color: inherit;
125 transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
126 }
127
128 .fdcht-row:hover {
129 transform: translateY(-2px);
130 border-color: var(--fd-blue-bright);
131 box-shadow: 0 12px 26px rgba(0,51,102,0.14);
132 }
133
134 .fdcht-row:focus-visible {
135 outline: 3px solid var(--fd-blue-bright);
136 outline-offset: 2px;
137 }
138
139 .fdcht-badge {
140 width: 46px; height: 46px;
141 border-radius: 8px;
142 background: var(--fd-ice);
143 display: flex;
144 align-items: center;
145 justify-content: center;
146 flex: 0 0 auto;
147 }
148
149 .fdcht-badge svg {
150 width: 22px; height: 22px;
151 fill: none;
152 stroke: var(--fd-navy);
153 stroke-width: 1.7;
154 stroke-linecap: round;
155 stroke-linejoin: round;
156 }
157
158 .fdcht-badge svg .accent { stroke: var(--fd-blue-bright); }
159
160 .fdcht-row-text { flex: 1 1 auto; min-width: 0; }
161
162 .fdcht-q {
163 display: block;
164 font-size: 16.5px;
165 font-weight: 700;
166 line-height: 1.35;
167 color: var(--fd-navy);
168 }
169
170 .fdcht-tag {
171 display: inline-flex;
172 align-items: center;
173 gap: 5px;
174 font-size: 12px;
175 font-weight: 600;
176 letter-spacing: .04em;
177 text-transform: uppercase;
178 color: var(--fd-secondary);
179 margin-top: 5px;
180 }
181
182 .fdcht-tag svg {
183 width: 12px; height: 12px;
184 fill: var(--fd-secondary);
185 stroke: none;
186 }
187
188 .fdcht-watch {
189 flex: 0 0 auto;
190 display: flex;
191 align-items: center;
192 gap: 8px;
193 font-size: 13px;
194 font-weight: 600;
195 color: var(--fd-red);
196 white-space: nowrap;
197 }
198
199 .fdcht-watch svg {
200 width: 30px; height: 30px;
201 flex: 0 0 auto;
202 }
203
204 .fdcht-watch svg circle {
205 fill: var(--fd-red);
206 transition: fill .2s ease;
207 }
208
209 .fdcht-watch svg path {
210 fill: var(--fd-white);
211 }
212
213 .fdcht-row:hover .fdcht-watch svg circle { fill: var(--fd-navy); }
214
215 /* Style variant for Documentation/Guide links */
216 .fdcht-watch.fdcht-read {
217 color: var(--fd-blue);
218 }
219
220 .fdcht-watch.fdcht-read svg circle {
221 fill: var(--fd-blue);
222 }
223
224 .fdcht-row:hover .fdcht-watch.fdcht-read svg circle { fill: var(--fd-navy); }
225
226 /* ---- Footer ---- */
227 .fdcht-footer {
228 margin-top: 30px;
229 padding-top: 18px;
230 border-top: 1px solid var(--fd-bg-mid);
231 display: flex;
232 justify-content: space-between;
233 gap: 16px;
234 flex-wrap: wrap;
235 font-size: 12.5px;
236 color: var(--fd-secondary);
237 }
238
239 @media (max-width: 720px) {
240 .fdcht-hub { padding: 0 12px 24px; }
241 .fdcht-masthead img { height: 38px; }
242 .fdcht-hero { padding: 26px 22px 24px; }
243 .fdcht-row { padding: 16px; gap: 14px; }
244 .fdcht-watch span { display: none; }
245 .fdcht-footer { justify-content: flex-start; }
246 }
247
248 @media (prefers-reduced-motion: reduce) {
249 .fdcht-row, .fdcht-watch svg circle { transition: none; }
250 }
251 </style>
252
253 <div class="fdcht-hub">
254
255 <div class="fdcht-masthead">
256 <img src="https://learn.firstdigital.com/bin/download/Main/WebHome/FirstDigital-Logo.png?rev=1.3" alt="FirstDigital">
257 <span class="fdcht-masthead-label">Fiber &middot; Internet &middot; Cloud &middot; Voice</span>
258 </div>
259
260 <section class="fdcht-hero">
261 <hr class="fdcht-rule">
262 <div class="fdcht-eyebrow">Cloud Connected PSTN</div>
263 <h1>How To&rsquo;s</h1>
264 <p>Guides and video walkthroughs for common Cloud Connected PSTN tasks. Select a topic below to view.</p>
265 </section>
266
267 <nav class="fdcht-list" aria-label="Cloud Connected PSTN how-to guides and videos">
268
269 <!-- Configure CCP in Control Hub Guide -->
270 <a class="fdcht-row" href="https://learn.firstdigital.com/bin/view/CCP/Configure%20CCP%20in%20Control%20Hub/">
271 <span class="fdcht-badge">
272 <svg viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="3" width="18" height="18" rx="2"/><path class="accent" d="M8 12h8M8 8h8M8 16h5"/></svg>
273 </span>
274 <span class="fdcht-row-text">
275 <span class="fdcht-q">Configure Cloud Connected PSTN in Control Hub</span>
276 <span class="fdcht-tag"><svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>Documentation Guide</span>
277 </span>
278 <span class="fdcht-watch fdcht-read">
279 <span>Read Guide</span>
280 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="12"/><path d="M10 7l5 5-5 5" stroke="#ffffff" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>
281 </span>
282 </a>
283
284 <!-- Bulk Provisioning Guide -->
285 <a class="fdcht-row" href="https://learn.firstdigital.com/bin/view/CCP/Bulk%20Provisioning/">
286 <span class="fdcht-badge">
287 <svg viewBox="0 0 24 24" aria-hidden="true"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="8.5" cy="7" r="4"/><path class="accent" d="M20 8v6M23 11h-6"/></svg>
288 </span>
289 <span class="fdcht-row-text">
290 <span class="fdcht-q">FDConnect Bulk Management and Provisioning</span>
291 <span class="fdcht-tag"><svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>Documentation Guide</span>
292 </span>
293 <span class="fdcht-watch fdcht-read">
294 <span>Read Guide</span>
295 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="12"/><path d="M10 7l5 5-5 5" stroke="#ffffff" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>
296 </span>
297 </a>
298
299 <!-- Video Walkthrough: Moving a number -->
300 <a class="fdcht-row" href="https://app.vidcast.io/share/c2f50516-9950-4b45-a019-4a81a6fee293?playerMode=vidcast" target="_blank" rel="noopener">
301 <span class="fdcht-badge">
302 <svg viewBox="0 0 24 24" aria-hidden="true"><path d="M7 7h8l-2.5-2.5M7 7l2.5 2.5"/><path class="accent" d="M17 17H9l2.5 2.5M17 17l-2.5-2.5"/></svg>
303 </span>
304 <span class="fdcht-row-text">
305 <span class="fdcht-q">Moving a number between SIP trunks via FDconnect</span>
306 <span class="fdcht-tag"><svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>Video walkthrough</span>
307 </span>
308 <span class="fdcht-watch">
309 <span>Watch</span>
310 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="12"/><path d="M10 8.5l6 3.5-6 3.5z"/></svg>
311 </span>
312 </a>
313
314 <!-- Video Walkthrough: Disaster Redirect Plan -->
315 <a class="fdcht-row" href="https://app.vidcast.io/share/7b80781e-6678-457d-b7e4-2349a095c7d3?playerMode=vidcast" target="_blank" rel="noopener">
316 <span class="fdcht-badge">
317 <svg viewBox="0 0 24 24" aria-hidden="true"><path d="M12 3l9 4.5v5.4C21 17.7 17 20.4 12 21c-5-.6-9-3.3-9-8.1V7.5L12 3z"/><path class="accent" d="M12 8.5v4.5M12 16v.01"/></svg>
318 </span>
319 <span class="fdcht-row-text">
320 <span class="fdcht-q">Disaster Redirect Plan</span>
321 <span class="fdcht-tag"><svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>Video walkthrough</span>
322 </span>
323 <span class="fdcht-watch">
324 <span>Watch</span>
325 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="12"/><path d="M10 8.5l6 3.5-6 3.5z"/></svg>
326 </span>
327 </a>
328
329 <!-- Video Walkthrough: Free Caller Registry -->
330 <a class="fdcht-row" href="https://app.vidcast.io/share/9a76e07d-1a9d-4d69-9354-e0d8b5699543?playerMode=vidcast" target="_blank" rel="noopener">
331 <span class="fdcht-badge">
332 <svg viewBox="0 0 24 24" aria-hidden="true"><rect x="4" y="4" width="16" height="16" rx="2"/><path class="accent" d="M8.5 12.5l2.3 2.3L16 9.5"/></svg>
333 </span>
334 <span class="fdcht-row-text">
335 <span class="fdcht-q">Free Caller Registry</span>
336 <span class="fdcht-tag"><svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>Video walkthrough</span>
337 </span>
338 <span class="fdcht-watch">
339 <span>Watch</span>
340 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="12"/><path d="M10 8.5l6 3.5-6 3.5z"/></svg>
341 </span>
342 </a>
343
344 </nav>
345
346 <div class="fdcht-footer">
347 <span>FirstDigital &middot; Cloud Connected PSTN How To&rsquo;s</span>
348 <span>Need help? Contact your FirstDigital support team at 801-456-1000 or support@firstdigital.com.</span>
349 </div>
350
351 </div>
352 {{/html}}