.post-tag-row{flex-wrap:wrap;gap:.5rem;display:flex}.post-tag-row--filter{justify-content:center;margin-bottom:1.5rem}.post-tag{color:#195080;background:#ffffffc2;border:1px solid #4370a347;border-radius:9999px;align-items:center;padding:.3rem .8rem;font-size:.8rem;font-weight:600;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.post-tag:hover{background:#b3dbff6b;border-color:#1950808f}.post-tag.is-active{color:#fff;background:#195080;border-color:#195080}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.post-card{border-radius:1.25rem;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.post-card:hover{border-color:#1950808f;transform:translateY(-5px);box-shadow:0 20px 40px #1950802e,0 0 0 1px #1950804d}.post-card-cover{aspect-ratio:16/9;background:linear-gradient(#8eb6eeb3,#4370a3a8);display:block;overflow:hidden}.post-card-cover-image{object-fit:cover;width:100%;height:100%}.post-card-body{flex-direction:column;flex:auto;gap:.55rem;padding:1.1rem 1.25rem 1.25rem;display:flex}.post-meta{color:#64748b;font-size:.8rem}.post-card-title{color:#1f2937;text-wrap:balance;font-size:1.15rem;font-weight:750;line-height:1.3}.post-card-title a:hover{color:#195080}.post-card-summary{color:#475569;font-size:.92rem;line-height:1.5}.post-card .post-tag-row{margin-top:auto;padding-top:.4rem}.post-empty{text-align:center;color:#475569;padding:2.5rem 1.5rem}.post-markdown{margin-top:1.25rem;font-size:1.05rem}.post-markdown p{margin-top:1rem;line-height:1.75}.post-markdown :is(h2,h3){margin-top:2rem}.post-markdown>:first-child{margin-top:0}@media (max-width:1024px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.post-grid{grid-template-columns:1fr}}
.ottawa-page{z-index:10;grid-template-columns:minmax(0,1fr);gap:3.5rem;width:min(100%,76rem);margin-inline:auto;display:grid;position:relative}.ottawa-page>*{animation:.42s both ottawa-fade-up}.ottawa-hero{border-radius:2rem;align-items:flex-end;min-height:30rem;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 60px #1950803d}.ottawa-hero-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ottawa-hero:after{content:"";background:linear-gradient(100deg,#081e36f0 0%,#0d3256d1 42%,#19508047 100%),linear-gradient(#0000 45%,#081e368c 100%);position:absolute;inset:0}.ottawa-hero-content{z-index:1;grid-template-columns:minmax(0,1fr);gap:1.1rem;max-width:46rem;padding:clamp(1.5rem,4vw,3.25rem) clamp(1.5rem,4vw,3.25rem) clamp(5rem,7vw,6rem);display:grid;position:relative}.ottawa-hero-logo{object-fit:contain;background:#fff;border-radius:1.25rem;justify-self:start;width:4.25rem;height:4.25rem;padding:.6rem;box-shadow:0 14px 30px #00000047}.ottawa-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#d8ecff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#b3dbff29;border:1px solid #b3dbff73;border-radius:9999px;justify-self:start;align-items:center;gap:.5rem;padding:.35rem .9rem;font-size:.78rem;font-weight:700;display:inline-flex}.ottawa-eyebrow:before{content:"";background:#00b2ff;border-radius:9999px;width:.5rem;height:.5rem;animation:1.5s ease-in-out infinite ottawa-pulse;box-shadow:0 0 0 4px #00b2ff40}.ottawa-hero-title{color:#fff;text-wrap:balance;text-shadow:0 8px 28px #00000059;font-size:clamp(2.1rem,5vw,3.6rem);font-weight:800;line-height:1.06}.ottawa-hero-summary{color:#dbe9f8;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.65}.ottawa-hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:.4rem;display:flex}.ottawa-hero-actions .ui-btn--secondary{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1f;border-color:#ffffff80}.ottawa-hero-actions .ui-btn--secondary:hover{color:#fff;background:#ffffff3d}.ottawa-stats{z-index:2;background:#ffffffeb;border-radius:1.5rem;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100% - 2.5rem,62rem);margin:-3rem auto 0;display:grid;position:relative}.ottawa-stat{text-align:center;border-right:1px solid #19508029;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;padding:1.3rem .9rem;display:flex}.ottawa-stat:last-child{border-right:0}.ottawa-stat-value{color:#195080;font-size:clamp(1.35rem,2.4vw,1.9rem);font-weight:800;line-height:1.1}.ottawa-stat-label{letter-spacing:.06em;text-transform:uppercase;color:#64748b;font-size:.74rem;font-weight:600}.ottawa-section-header{text-align:center;max-width:46rem;margin:0 auto 1.75rem}.ottawa-section-title{color:#195080;text-wrap:balance;font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:800}.ottawa-section-title:after{content:"";background:linear-gradient(90deg,#195080,#00b2ff);border-radius:9999px;width:3.5rem;height:.25rem;margin:.8rem auto 0;display:block}.ottawa-highlights{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.ottawa-highlight{border-radius:1.5rem;flex-direction:column;gap:.6rem;padding:1.4rem;display:flex}.ottawa-highlight-title{color:#1f2937;font-size:1.02rem;font-weight:750}.ottawa-highlight-text{color:#475569;font-size:.9rem;line-height:1.55}.ottawa-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.ottawa-service-card{border-radius:1.5rem;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.ottawa-service-card:hover{border-color:#1950808f;transform:translateY(-5px);box-shadow:0 20px 40px #19508033}.ottawa-service-card-media{aspect-ratio:16/9;position:relative;overflow:hidden}.ottawa-service-card-image{object-fit:cover;width:100%;height:100%;transition:transform .4s}.ottawa-service-card:hover .ottawa-service-card-image{transform:scale(1.05)}.ottawa-service-card-body{flex-direction:column;flex:auto;gap:.5rem;padding:1.2rem 1.3rem 1.35rem;display:flex}.ottawa-service-card-title{color:#1f2937;font-size:1.15rem;font-weight:750}.ottawa-service-card-text{color:#475569;font-size:.9rem;line-height:1.55}.ottawa-service-card-more{color:#195080;margin-top:auto;padding-top:.4rem;font-size:.88rem;font-weight:700}.ottawa-service-card-more span{transition:transform .2s;display:inline-block}.ottawa-service-card:hover .ottawa-service-card-more span{transform:translate(4px)}.ottawa-body{grid-template-columns:minmax(0,1fr) 20rem;align-items:start;gap:1.5rem;display:grid}.ottawa-body-card{padding:clamp(1.4rem,3vw,2.5rem)}.ottawa-body-card .post-markdown{margin-top:0}.ottawa-body-card .post-markdown h2{border-left:.3rem solid #195080;border-image:linear-gradient(#195080,#00b2ff) 1;padding-left:.9rem}.ottawa-aside{gap:1rem;display:grid;position:sticky;top:7.5rem}.ottawa-aside-card{border-radius:1.5rem;padding:1.4rem}.ottawa-aside-card--quote{background:linear-gradient(160deg,#b3dbff9e,#fff7d699);border-color:#19508038}.ottawa-aside-title{color:#195080;font-size:1.1rem;font-weight:800}.ottawa-aside-text{color:#334155;margin-top:.4rem;font-size:.9rem;line-height:1.55}.ottawa-aside-actions{gap:.6rem;margin-top:1rem;display:grid}.ottawa-aside-address{color:#475569;margin-top:.9rem;font-size:.8rem;line-height:1.5}.ottawa-platforms{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.9rem;display:grid}.ottawa-platform{color:#475569;text-align:center;background:#fff;border-radius:1rem;flex-direction:column;align-items:center;gap:.4rem;padding:.8rem .5rem;font-size:.76rem;font-weight:600;display:flex;box-shadow:inset 0 0 0 1px #0f172a0f}.ottawa-platform-logo{object-fit:contain;width:2.5rem;height:2.5rem}.ottawa-steps{counter-reset:ottawa-step;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:1rem;display:grid}.ottawa-step{counter-increment:ottawa-step;border-radius:1.5rem;padding:2.4rem 1.3rem 1.4rem;position:relative}.ottawa-step:before{content:counter(ottawa-step);color:#fff;background:linear-gradient(135deg,#195080,#2f7fc0);border-radius:9999px;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;font-size:1.1rem;font-weight:800;display:flex;position:absolute;top:-1.1rem;left:1.3rem;box-shadow:0 10px 22px #19508059}.ottawa-step-title{color:#1f2937;font-size:1.02rem;font-weight:750}.ottawa-step-text{color:#475569;margin-top:.35rem;font-size:.9rem;line-height:1.55}.ottawa-area{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);display:grid;overflow:hidden}.ottawa-area-copy{padding:clamp(1.4rem,3vw,2.4rem)}.ottawa-area-title{color:#195080;font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:800}.ottawa-area-text{color:#475569;margin-top:.5rem;line-height:1.6}.ottawa-chips{flex-wrap:wrap;gap:.5rem;margin-top:1.1rem;display:flex}.ottawa-chip{color:#195080;background:#fffc;border:1px solid #4370a347;border-radius:9999px;align-items:center;gap:.4rem;padding:.35rem .85rem;font-size:.84rem;font-weight:600;display:inline-flex}.ottawa-chip:before{content:"";background:#00b2ff;border-radius:9999px;width:.4rem;height:.4rem}.ottawa-area-map{min-height:22rem}.ottawa-clients{grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem;display:grid}.ottawa-client{background:#fff;border-radius:1.1rem;justify-content:center;align-items:center;height:5.5rem;padding:1rem;display:flex;box-shadow:inset 0 0 0 1px #0f172a0f,0 10px 24px #19508014}.ottawa-client-logo{object-fit:contain;width:100%;height:100%}.ottawa-faqs{gap:.75rem;width:min(100%,54rem);margin-inline:auto;display:grid}.ottawa-faq{border-radius:1.15rem;transition:border-color .18s,box-shadow .18s;overflow:hidden}.ottawa-faq[open]{border-color:#19508080}.ottawa-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;list-style:none;display:flex}.ottawa-faq summary::-webkit-details-marker{display:none}.ottawa-faq summary:after{content:"▾";color:#195080;flex:none;font-size:1.15rem;transition:transform .18s}.ottawa-faq[open] summary{background:linear-gradient(#b3dbff6b,#f1f1e666)}.ottawa-faq[open] summary:after{transform:rotate(180deg)}.ottawa-faq-question{color:#1f2937;font-size:1rem;font-weight:700}.ottawa-faq-answer{padding:.9rem 1.2rem 1.2rem;line-height:1.65}.ottawa-faq{interpolate-size:allow-keywords}.ottawa-faq::details-content{opacity:0;block-size:0;transition:block-size .5s ease, opacity .4s ease, content-visibility .5s allow-discrete;overflow:hidden}.ottawa-faq[open]::details-content{opacity:1;block-size:auto}.ottawa-faq summary{transition:background-color .18s}.ottawa-faq summary:hover .ottawa-faq-question{color:#195080}.ottawa-faq-question{transition:color .18s}.ottawa-faq[open] .ottawa-faq-answer{animation:.55s both ottawa-faq-reveal}@keyframes ottawa-faq-reveal{0%{transform:translateY(-6px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ottawa-faq[open] .ottawa-faq-answer{transition:none;animation:none}.ottawa-faq::details-content{transition:none;animation:none}}.ottawa-cta{text-align:center;background:linear-gradient(135deg,#0d3256 0%,#195080 55%,#2f7fc0 100%);border-radius:2rem;flex-direction:column;align-items:center;gap:.8rem;padding:clamp(1.75rem,4vw,3rem);display:flex;box-shadow:0 30px 60px #1950804d}.ottawa-cta-title{color:#fff;text-wrap:balance;font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:800}.ottawa-cta-text{color:#dbe9f8;max-width:38rem;line-height:1.6}.ottawa-cta-address{color:#b3dbff;font-size:.85rem}.ottawa-cta .ui-btn--primary{color:#195080;background:#fff}.ottawa-cta .ui-btn--primary:hover{background:#e6f2ff}@keyframes ottawa-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(1.25)}to{opacity:1;transform:scale(1)}}@keyframes ottawa-fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ottawa-page>*{animation:none}}@media (max-width:1024px){.ottawa-highlights,.ottawa-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ottawa-body{grid-template-columns:minmax(0,1fr)}.ottawa-aside{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.ottawa-steps{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;row-gap:2rem}.ottawa-step:not(:last-child):after{display:none}.ottawa-area{grid-template-columns:1fr}.ottawa-clients{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.ottawa-page{gap:2.5rem}.ottawa-hero{min-height:26rem}.ottawa-hero-title{font-size:clamp(1.7rem,8.6vw,2.1rem)}.ottawa-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ottawa-stat:nth-child(2){border-right:0}.ottawa-stat:nth-child(n+3){border-top:1px solid #19508029}.ottawa-highlights,.ottawa-card-grid,.ottawa-aside,.ottawa-steps{grid-template-columns:minmax(0,1fr)}.ottawa-clients{grid-template-columns:repeat(2,minmax(0,1fr))}}
