body,button,input,select,textarea{font-family:'Montserrat',sans-serif !important;}
h1,h2,h3,h4,h5,h6{font-family:'Montserrat',sans-serif !important;color:#0b1f3f;letter-spacing:0;font-weight:700;}
h1{font-size:44px;line-height:1.08;}
h2{font-size:36px;line-height:1.16;}
h3{font-size:20px;line-height:1.4;}
h4,.h4{font-size:18px;line-height:1.4;font-weight:700;}
body p{padding-bottom:0;margin-bottom:0;}
p{font-family:'Montserrat',sans-serif !important;font-size:16px !important;line-height:1.75 !important;color:#5d6b85 !important;}
.container:not(#header .container){max-width:1320px !important;margin-left:auto !important;margin-right:auto !important;padding-left:24px !important;padding-right:24px !important;width:100% !important;}
@media screen and (max-width:1199px){
  .container:not(#header .container){padding-left:40px !important;padding-right:40px !important;}
}
@media screen and (max-width:767px){
  .container:not(#header .container){padding-left:20px !important;padding-right:20px !important;}
}
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;}
[data-reveal].in{opacity:1;transform:translateY(0);}
html{scroll-behavior:smooth;}
/* TOC Style */
.toc-main{position:relative;margin-top:15px;margin-bottom:15px !important;z-index:10;}
body button.btn.btn-toc{background:#ff6c1a !important;color:#fff !important;border-radius:6px;width:auto !important;max-width:max-content !important;min-width:200px;padding:10px 18px;font-weight:600;font-size:15px;display:inline-flex !important;align-items:center;justify-content:space-between;gap:14px;}
body button.btn.btn-toc.dropdown-toggle::after{display:inline-block;margin-left:0.5em;vertical-align:0.2em;content:"";border-top:0.35em solid;border-right:0.35em solid transparent;border-bottom:0;border-left:0.35em solid transparent;}
.btn-toc.dropdown-menu{width:100%;min-width:280px;background:#f3f6f9 !important;border-radius:6px;padding:18px 22px;border:1px solid #dde3ee;margin-top:8px !important;max-height:360px !important;overflow-y:auto !important;}
.btn-toc.dropdown-menu.show{position:relative !important;transform:none !important;margin-top:12px !important;}
.btn-toc.dropdown-menu li{list-style:none !important;list-style-type:none !important;position:relative;padding:6px 0 6px 18px !important;color:#000;}
.btn-toc.dropdown-menu li::before{content:"" !important;position:absolute !important;left:0 !important;top:13px !important;width:7px !important;height:7px !important;border-radius:50% !important;background:#ff6c1a !important;}
.btn-toc.dropdown-menu li a{font-size:14px;color:#4c596d !important;line-height:1.5;}
.btn-toc.dropdown-menu li a:hover{color:#ff6c1a !important;}
/* Blog Section */
.blog-section .blog-card{padding-bottom:0}
.blog-section .blog-card figure{margin-bottom:0}
.blog-section .desc{padding:15px;background:#f7f7f7;border:1px solid #ededed}
.blog-section .bolg-category-title .h4,.blog-section .bolg-category-title h4{font-size:18px;line-height:1.4;font-weight:700;color:#192a44;padding-right:10px;margin:0}
.blog-section .blog-card .bolg-category-title img{visibility:hidden}
.blog-section .blog-card:hover .bolg-category-title img{transition:1s ease-in-out;visibility:visible}
.blog-section .blog-card h3,.blog-section .blog-card .h3{color:var(--secondrycolor);font-size:20px;font-weight:600;line-height:150%;transition:.3s ease-in-out;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:60px;margin:0 !important;padding:0}
.blog-section .blog-card:hover h3,.blog-section .blog-card:hover .h3{color:var(--primarycolor)}
@media(max-width:767px){
  .blog-section .blog-card h3,.blog-section .blog-card .h3{font-size:20px;min-height:50px;}
}
@media(max-width:480px){
  .blog-section .desc{padding:10px}
  .blog-section .blog-card h3,.blog-section .blog-card .h3{font-size:17px;min-height:45px;}
}
/* Reviews Section */
.reviews-section{background:#f8f9fa !important;}
.reviews-section .title-wrap h2{font-family:'Montserrat',sans-serif !important;font-size:36px !important;line-height:1.16 !important;font-weight:700 !important;color:#0B1F3F !important;margin-bottom:16px !important;padding-bottom:0 !important;}
.reviews-section .title-wrap p{font-family:'Montserrat',sans-serif !important;font-size:16px !important;color:#5D6B85 !important;max-width:900px;margin-top:0;line-height:1.6;}
.reviews-section .review-card{background:#ffffff !important;border:1px solid #dde3ee;border-radius:14px;padding:37px 24px 26px 24px;margin-bottom:20px;height:346px;display:flex;flex-direction:column;}
.reviews-section .review-card img{margin-bottom:34px;height:37px;width:auto}
.reviews-section .review-card p{color:var(--secondrytextcolor);font-size:14px;line-height:168%;padding-bottom:15px;min-height:0}
.reviews-section .review-card h3{color:var(--secondrycolor);font-size:20px;font-weight:700;line-height:150%;padding-bottom:2px}
.reviews-section .review-card h4,.reviews-section .review-card .h4{color:var(--secondrytextcolor);font-size:18px;font-weight:700;line-height:1.4;position:relative;gap:10px}
.reviews-section .review-card h4 .dots,.reviews-section .review-card .h4 .dots{width:8px;height:8px;background:var(--primarycolor);border-radius:100%}
.reviews-section .review-card h4 .dots:before,.reviews-section .review-card .h4 .dots:before{display:none}
.reviews-section .review-card p{padding-bottom:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.reviews-section .review-card p{-webkit-line-clamp:8;margin-bottom:15px}
.reviews-section .review-card .review-title{color:var(--secondrycolor);font-size:18px;font-weight:700;line-height:150%;padding-bottom:2px;min-height:auto !important;margin:0;margin-top:auto;}
.reviews-section .scroller__wrapper{width:100%;max-width:100%;overflow:hidden;}
.reviews-section .slide-scroller{margin-left:0;}
.reviews-section .scroller__item{box-sizing:border-box;}
@media (max-width:1920px){
  .reviews-section .review-card p{min-height:0;}
}
@media (max-width:1700px){
  .reviews-section .review-card p{min-height:0;}
}
@media (max-width:1400px){
  .reviews-section .review-card p{min-height:0;}
}
@media (max-width:1300px){
  .reviews-section .review-card p{min-height:0;}
}
@media screen and (max-width:1199px){
  .hero h1{font-size:44px;}
  .reviews-section .title-wrap h2{font-size:36px !important;}
  .reviews-section .review-card .review-title{font-size:16px;}
  .reviews-section .review-card img{margin-bottom:20px;}
  .reviews-section .review-card h3{font-size:20px;}
  .reviews-section .review-card h4,.reviews-section .review-card .h4{font-size:18px;grid-gap:5px;gap:5px;}
  .reviews-section .review-card p{min-height:0;}
}
@media screen and (max-width:991px){
  .reviews-section .review-card{height:330px;}
  .reviews-section .review-card p{min-height:0;}
}
@media screen and (max-width:767px){
  .reviews-section .title-wrap h2{font-size:36px !important;line-height:1.2 !important;}
  .reviews-section .review-card h4,.reviews-section .review-card .h4{font-size:18px;}
  .reviews-section .review-card{padding:20px;margin-bottom:20px;height:310px;}
  .reviews-section .review-card p{font-size:13px;padding-bottom:10px;min-height:0;}
  .reviews-section .review-card p{padding-bottom:0;min-height:0;}
}
@media (max-width:480px){
  .reviews-section .title-wrap h2{font-size:36px !important;}
  .reviews-section .review-card{height:auto;min-height:310px;}
  .reviews-section .review-card p{min-height:0;-webkit-line-clamp:inherit;}
  .reviews-section .review-card img{height:30px;width:auto;}
}
/* Recognition & Awards Section */
.awards-section{padding:80px 0;background-color:#ffffff !important;}
.awards-section .title-wrap{max-width:900px;}
.awards-section .title-wrap h2{font-family:'Montserrat',sans-serif;font-weight:700;font-size:36px;line-height:1.15;color:#0B1F3F;}
.awards-section .title-wrap p{font-size:16px;line-height:1.7;color:#5D6B85;margin-top:14px;}
.awards-section .blog-scroll-wrapper{position:relative;max-width:100%;margin-top:48px;}
.awards-section .blog-scroll-container{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1.5rem;padding-top:12px;padding-bottom:1rem;scroll-behavior:smooth;}
.awards-section .blog-scroll-container::-webkit-scrollbar{display:none;}
.awards-section .blog-scroll-container.dragging{cursor:grabbing;user-select:none;}
.awards-section .indus-wrapper{flex:0 0 auto;width:calc(100% / 5 - 1.25rem);scroll-snap-align:start;}
.awards-section .achievement{background:#f8f9fa !important;border:1px solid #dde3ee !important;border-radius:14px;padding:24px 18px;text-align:center;transition:all .25s ease;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 4px 12px rgba(11,31,63,0.03);}
.awards-section .achievement:hover{background:#ffffff !important;border-color:#FF6C1A !important;box-shadow:0 12px 24px rgba(255,107,34,0.12) !important;transform:translateY(-4px);}
.awards-section .achievement-logo{margin-bottom:16px;height:80px;display:flex;align-items:center;justify-content:center;width:100%;}
.awards-section .achievement-logo img{max-width:100px;max-height:70px;margin:0 auto;width:auto;height:auto;object-fit:contain;}
.awards-section .achievement .h4{color:#0B1F3F;font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;line-height:140%;padding-bottom:6px;margin-bottom:0;}
.awards-section .achievement p{color:#5D6B85;font-family:'Montserrat',sans-serif;font-size:14px;line-height:150%;font-weight:500;margin-bottom:0;}
.awards-section .scroll-btn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:#FFFFFF;border:1px solid rgba(11,31,63,0.1);display:flex;align-items:center;justify-content:center;color:#0B1F3F;cursor:pointer;transition:all 0.25s ease;z-index:10;box-shadow:0 4px 12px rgba(11,31,63,0.08);}
.awards-section .scroll-btn:hover{background:#FF6C1A;color:#FFFFFF;border-color:#FF6C1A;box-shadow:0 6px 16px rgba(255,107,34,0.25);}
.awards-section .scroll-btn.prev{left:-23px;}
.awards-section .scroll-btn.next{right:-23px;}
@media (max-width: 1199px){
  .awards-section .indus-wrapper{width:calc(100% / 4 - 1.125rem);}
}
@media (max-width: 991px){
  .awards-section{padding:60px 0;}
  .awards-section .title-wrap h2{font-size:36px;}
  .awards-section .indus-wrapper{width:calc(100% / 3 - 1rem);}
  .awards-section .scroll-btn{top:auto;bottom:-70px;transform:none;}
  .awards-section .scroll-btn.prev{left:50%;margin-left:-55px;}
  .awards-section .scroll-btn.next{right:50%;margin-right:-55px;}
  .awards-section .blog-scroll-wrapper{margin-bottom:50px;}
}
@media (max-width: 767px){
  .awards-section .indus-wrapper{width:calc(100% / 2 - 0.75rem);}
}
@media (max-width: 480px){
  .awards-section .indus-wrapper{width:100%;}
}
.canada-section{padding:80px 0;background:#ffffff;}
.canada-section.bg-soft{background:#f8f9fa;}
.client-section.bg-soft{background:#f8f9fa !important;}
.blog-section.bg-soft{background:#f8f9fa !important;}
.canada-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#ff6c1a;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px;}
.canada-eyebrow::before{content:"//";color:#0b1f3f;opacity:0.4;}
.canada-sec-head{max-width:900px;margin-bottom:44px;}
.canada-sec-head.centered{margin-left:auto;margin-right:auto;text-align:center;}
.canada-sec-head h2{font-size:36px;line-height:1.16;color:#0b1f3f;margin-bottom:16px;font-weight:700;}
.canada-sec-head p{font-size:16px !important;color:#5d6b85 !important;line-height:1.75 !important;}
/* Buttons */
.btn-spark-primary{background:#ff6c1a;color:#ffffff !important;font-weight:700;font-size:15px;padding:14px 28px;border-radius:8px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;border:1.5px solid #ff6c1a;transition:all 0.3s ease;box-shadow:0 4px 16px rgba(255,108,26,0.25);}
.btn-spark-primary:hover{background:#e55b0b;border-color:#e55b0b;transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,108,26,0.35);}
.btn-spark-outline{background:transparent;color:#0b1f3f !important;font-weight:700;font-size:15px;padding:14px 28px;border-radius:8px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(11,31,63,0.25);transition:all 0.3s ease;}
.btn-spark-outline:hover{background:#0b1f3f;color:#ffffff !important;border-color:#0b1f3f;transform:translateY(-2px);}
/* HERO SECTION */
.canada-hero{padding:44px 0 32px;background:#ffffff;}
.canada-hero .hero-banner-img{max-width:100%;height:auto;display:block;margin-left:auto;mix-blend-mode:multiply;}
.canada-hero h1{font-size:44px;line-height:1.12;font-weight:700;color:#0b1f3f;margin-bottom:20px;}
.canada-hero h1 span.accent{color:#ff6c1a;}
.canada-hero p.lead-text{font-size:16px !important;color:#5d6b85 !important;margin-bottom:32px;line-height:1.75 !important;}
.canada-hero .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:0;}
.cta-bar .cta-text .cta-title{font-size:18px !important;line-height:1.24 !important;font-weight:700;color:#0b1f3f;margin:0 0 2px;}
.cta-text .cta-title{font-size:26px !important;line-height:1.3 !important;font-weight:700;color:#0b1f3f;margin:0 0 2px;}
.marquee-strip{overflow:hidden;position:relative;padding:16px 0;background:#f4f8ff;border-top:1px solid #d8e6fa;border-bottom:1px solid #d8e6fa;}
.marquee-track{display:flex;width:max-content;gap:0;animation:marqueeScroll 22s linear infinite;}
.marquee-track:hover{animation-play-state:paused;}
.marquee-item{display:flex;align-items:center;color:#0b1f3f;font-size:15px;font-weight:700;padding:0 2.4rem;white-space:nowrap;}
.marquee-dot{display:inline-block;width:6px;height:6px;background:#ff6c1a;border-radius:50%;align-self:center;flex-shrink:0;}
@keyframes marqueeScroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
/* WHY PARTNER SECTION */
.why-partner-section{background:#ffffff;}
.why-partner-panel{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:36px;align-items:start;}
.why-partner-copy{position:sticky;top:96px;padding:8px 12px 8px 0;}
.why-partner-copy h2{color:#0b1f3f;font-size:36px;font-weight:700;line-height:1.16;margin-bottom:18px;}
.why-partner-copy p{color:#5d6b85 !important;font-size:16px !important;line-height:1.75 !important;margin-bottom:16px;}
.why-choice-board{background:#ffffff;border:1px solid #dce5f1;border-radius:18px;box-shadow:0 18px 46px rgba(11,31,63,0.07);overflow:hidden;}
.why-choice-board h3{margin:0;padding:24px 28px;color:#0b1f3f;font-size:20px;font-weight:700;border-bottom:1px solid #e4ebf4;background:#f4f8ff;}
.why-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.why-choice-card{position:relative;min-height:220px;padding:28px;border-right:1px solid #e4ebf4;border-bottom:1px solid #e4ebf4;background:#ffffff;}
.why-choice-card:nth-child(2n), .why-choice-card:last-child{border-right:0;}
.why-choice-card:last-child{grid-column:1 / -1;min-height:auto;border-bottom:0;}
.why-choice-card span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:18px;border-radius:50%;background:#fff3ec;color:#ff6c1a;font-size:12px;font-weight:800;}
.why-choice-card h4{color:#0b1f3f;font-size:18px;font-weight:700;line-height:1.35;margin-bottom:10px;}
.why-choice-card p{color:#5d6b85 !important;font-size:15px !important;line-height:1.7 !important;margin:0;}
.why-choice-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#ff6c1a;opacity:0;transition:opacity 0.25s ease;}
.why-choice-card:hover::before{opacity:1;}
.hero-code-window{background:#0b1f3f;border-radius:16px;box-shadow:0 24px 48px rgba(11,31,63,0.25);overflow:hidden;padding:0;color:#ffffff;position:relative;}
.cw-head{display:flex;gap:7px;padding:14px 18px;background:rgba(255,255,255,0.06);}
.cw-dot{width:10px;height:10px;border-radius:50%;}
.cw-dot.r{background:#ff6c1a;}
.cw-dot.y{background:#ffc24d;}
.cw-dot.g{background:#4cd87b;}
.cw-body{padding:24px 22px;font-family:monospace;font-size:13.5px;line-height:1.9;color:#b9c3da;}
.cw-body .kw{color:#ff9c5c;font-weight:600;}
.cw-body .str{color:#8fd9a8;}
.cw-body .cmt{color:#6c7d9c;font-style:italic;}
/* IMAGE 1 UI: READINESS DIAGNOSTIC */
.canada-readiness-card{background:#ffffff;border:1px solid #dde3ee;border-radius:20px;box-shadow:0 8px 30px rgba(11,31,63,0.05);overflow:hidden;display:grid;grid-template-columns:1.25fr 0.75fr;}
.readiness-list{padding:40px 36px;border-right:1px solid #dde3ee;}
.readiness-list-title{color:#0b1f3f;font-size:16px;font-weight:700;margin-bottom:18px;}
.diag-check-item{display:flex;align-items:flex-start;gap:14px;padding:13px 0;border-bottom:1px solid #f0f3f8;cursor:pointer;user-select:none;transition:background 0.2s;}
.diag-check-item:last-child{border-bottom:none;}
.diag-check-box{width:22px;height:22px;border:2px solid #cbd5e1;border-radius:6px;flex-shrink:0;margin-top:2px;display:grid;place-items:center;transition:all 0.2s ease;}
.diag-check-item input:checked + .diag-check-box{background:#ff6c1a;border-color:#ff6c1a;}
.diag-check-item input:checked + .diag-check-box::after{content:"✓";color:#fff;font-size:13px;font-weight:800;}
.diag-check-item span.txt{font-size:15px;color:#0b1f3f;font-weight:500;line-height:1.5;}
.diag-check-item input{display:none;}
.readiness-readout{position:relative;min-height:420px;padding:44px 36px;background:linear-gradient(rgba(11,31,63,0.045) 1px,transparent 1px),linear-gradient(90deg,rgba(11,31,63,0.045) 1px,transparent 1px),#f8fbff;background-size:58px 58px;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;}
.readiness-readout::before{content:"";position:absolute;inset:48px 32px;border:1px solid #d8e6fa;border-radius:16px;background:rgba(255,255,255,0.62);box-shadow:0 12px 30px rgba(11,31,63,0.05);}
.readout-gauge{--gauge-progress:0deg;position:relative;z-index:1;width:min(240px,78vw);height:138px;margin-bottom:28px;}
.readout-gauge::before, .readout-gauge::after{content:"";position:absolute;left:50%;bottom:0;width:210px;height:105px;transform:translateX(-50%);border-radius:210px 210px 0 0;}
.readout-gauge::before{background:#dde3ee;}
.readout-gauge::after{background:conic-gradient(from 270deg at 50% 100%,#ff6c1a var(--gauge-progress),transparent 0);transition:background 0.35s ease;}
.readout-fill{position:absolute;left:50%;bottom:18px;width:174px;height:87px;transform:translateX(-50%);border-radius:174px 174px 0 0;background:#f8fbff;z-index:2;}
.readout-count{position:absolute;left:50%;bottom:1px;transform:translateX(-50%);z-index:3;color:#0b1f3f;font-size:38px;font-weight:800;line-height:1;}
.readout-count span{font-size:16px;color:#5d6b85;font-weight:700;}
.readout-verdict{position:relative;z-index:1;max-width:280px;min-height:72px;margin:0 auto;color:#0b1f3f !important;font-size:15px !important;line-height:1.55 !important;font-weight:600;text-align:center;}
/* BUSINESS CHALLENGES & SERVICES CARDS */
.canada-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.canada-card-grid.cols-2{grid-template-columns:repeat(2,1fr);}
.canada-card{background:#ffffff;border:1px solid #dde3ee;border-radius:14px;padding:30px 26px;transition:all 0.3s ease;box-shadow:0 4px 14px rgba(11,31,63,0.03);position:relative;overflow:hidden;}
.canada-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3.5px;background:#ff6c1a;}
.canada-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(11,31,63,0.09);border-color:rgba(255,108,26,0.3);}
.canada-card .num-tag{font-size:12px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:4px 10px;border-radius:999px;margin-bottom:14px;display:inline-block;}
.canada-card h3{font-size:20px;font-weight:700;color:#0b1f3f;margin-bottom:10px;}
.canada-card p{font-size:15px !important;color:#5d6b85 !important;line-height:1.7 !important;}
/* PROCESS BOARD */
.process-board{display:grid;grid-template-columns:290px minmax(0,680px);gap:24px;max-width:1040px;margin:0 auto;border:1px solid #dde3ee;border-radius:14px;background:#ffffff;box-shadow:0 12px 34px rgba(11,31,63,0.06);padding:24px;overflow:hidden;font-family:'Montserrat',sans-serif !important;}
.process-tabs{display:grid;grid-template-columns:1fr;gap:12px;align-self:start;}
.process-tab{display:inline-flex;align-items:center;justify-content:flex-start;gap:12px;min-height:58px;padding:13px 16px;border:1px solid #dde3ee;border-radius:8px;background:#ffffff;color:#0b1f3f;font-size:13px;font-weight:700;line-height:1.35;text-align:left;transition:border-color 0.25s ease,background 0.25s ease,color 0.25s ease,transform 0.25s ease;}
.process-tab span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#f8f9fa;color:#0b1f3f;flex-shrink:0;font-family:'Montserrat',sans-serif !important;font-size:12px;font-weight:700;}
.process-tab:hover, .process-tab.active{background:#ff6c1a;border-color:#ff6c1a;color:#ffffff;transform:translateX(4px);}
.process-tab:hover span, .process-tab.active span{background:#ffffff;color:#ff6c1a;}
.process-progress{display:none !important;}
.process-stage{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;min-height:100%;border-left:1px solid #eef2f7;position:relative;z-index:3;}
.process-stage-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;position:relative;padding:20px 20px 20px 32px;max-width:none;}
.process-icon{position:relative;z-index:4;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#ff6c1a;color:#ffffff;font-size:23px;margin-top:0;margin-bottom:16px;box-shadow:0 4px 14px rgba(255,108,26,0.35);}
.process-icon svg{stroke:#ffffff !important;width:28px;height:28px;}
.process-stage-copy h3{position:relative;z-index:1;color:#0b1f3f;font-family:'Montserrat',sans-serif !important;font-size:20px !important;line-height:1.4 !important;font-weight:700 !important;margin:0 0 10px 0;}
.process-stage-copy p{position:relative;z-index:1;color:#5d6b85 !important;font-family:'Montserrat',sans-serif !important;font-size:16px !important;line-height:1.75 !important;font-weight:400 !important;margin:0;max-width:600px;}
.process-mobile-detail{display:none;}
.canada-tech-split-wrapper{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:center;}
.tech-left-col{text-align:left;}
.tech-left-col .canada-eyebrow{margin-bottom:12px;}
.tech-left-col h2{font-size:36px;font-weight:700;color:#0b1f3f;line-height:1.16;margin-bottom:16px;}
.tech-left-col p{font-size:16px;line-height:1.75;color:#5d6b85;margin:0;}
.tech-right-col{display:flex;flex-direction:column;gap:20px;}
.canada-tech-filter-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px;background:#ffffff;border:1.5px solid #dde3ee;border-radius:999px;box-shadow:0 4px 18px rgba(11,31,63,0.04);width:100%;}
.tech-filter-btn{font-family:inherit;font-size:13px;font-weight:600;color:#5d6b85;background:transparent;border:none;padding:8px 16px;border-radius:999px;cursor:pointer;transition:all 0.25s cubic-bezier(0.16,1,0.3,1);display:inline-flex;align-items:center;}
.tech-filter-btn:hover{color:#ff6c1a;background:#fff3ec;}
.tech-filter-btn.active{color:#ffffff;background:#ff6c1a;box-shadow:0 4px 12px rgba(255,108,26,0.3);}
.tech-stack-grid{width:100%;}
.tech-group{display:none;width:100%;background:#ffffff;border:1.5px solid #dde3ee;border-radius:18px;padding:28px 24px;transition:all 0.35s cubic-bezier(0.16,1,0.3,1);box-shadow:0 6px 24px rgba(11,31,63,0.05);position:relative;overflow:hidden;}
.tech-group.active{display:block;animation:techFadeIn 0.35s ease forwards;}
@keyframes techFadeIn{
  from{opacity:0;transform:translateY(8px);}
  to{opacity:1;transform:translateY(0);}
}
.tech-group::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff6c1a,#ff9554);}
.tech-group-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid #f0f4f9;}
.tech-group-title-wrap{display:flex;align-items:center;gap:12px;}
.tech-group-icon{width:40px;height:40px;border-radius:12px;background:#ff6c1a;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 12px rgba(255,108,26,0.25);}
.tech-group-icon svg{stroke:#ffffff !important;}
.tech-group h3{font-size:17px;font-weight:700;color:#0b1f3f;margin:0;letter-spacing:-0.01em;text-transform:none;}
.tech-count-badge{font-family:inherit;font-size:11px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:0.05em;}
.tech-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;}
.tech-pill{font-size:13.5px;font-weight:600;color:#0b1f3f;background:#f8fafc;border:1.5px solid #dde3ee;padding:8px 15px;border-radius:10px;transition:all 0.25s cubic-bezier(0.16,1,0.3,1);display:inline-flex;align-items:center;gap:8px;}
.tech-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:#ff6c1a;transition:background 0.25s ease;}
.tech-pill:hover{border-color:#ff6c1a;color:#ff6c1a;background:#fff3ec;transform:translateY(-2px);box-shadow:0 6px 14px rgba(255,108,26,0.16);}
@media (max-width: 991px){
  .cta-bar .cta-text .cta-title{font-size:16px !important;}

  .canada-tech-split-wrapper{grid-template-columns:1fr;gap:32px;}
  .canada-tech-filter-bar{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;width:100%;max-width:100%;border-radius:12px;justify-content:flex-start;padding:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .canada-tech-filter-bar::-webkit-scrollbar{height:4px;}
  .canada-tech-filter-bar::-webkit-scrollbar-thumb{background:#ffc08d;border-radius:999px;}
  .tech-filter-btn{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;}
}
/* INDUSTRY CHALLENGES SPLIT LAYOUT (LEFT MENU, RIGHT SHOWCASE) */
.canada-industry-split-wrapper{display:grid;grid-template-columns:5fr 7fr;gap:32px;align-items:center;}
.industry-nav-column{display:flex;flex-direction:column;gap:12px;}
.industry-nav-card{background:#ffffff;border:1.5px solid #dde3ee;border-radius:14px;padding:16px 20px;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all 0.25s cubic-bezier(0.16,1,0.3,1);position:relative;overflow:hidden;}
.industry-nav-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#ff6c1a;opacity:0;transition:opacity 0.25s ease;}
.industry-nav-card:hover{border-color:#ff6c1a;transform:translateX(4px);background:#fffdfb;}
.industry-nav-card.active{border-color:#ff6c1a;background:#fff3ec;box-shadow:0 8px 20px rgba(255,108,26,0.12);}
.industry-nav-card.active::before{opacity:1;}
.ind-nav-icon{width:40px;height:40px;border-radius:10px;background:#ffffff;border:1px solid #dde3ee;display:grid;place-items:center;flex-shrink:0;transition:all 0.25s ease;}
.industry-nav-card.active .ind-nav-icon{border-color:#ff6c1a;background:#ffffff;box-shadow:0 4px 10px rgba(255,108,26,0.15);}
.ind-nav-text{flex-grow:1;}
.ind-nav-text h3{font-size:16px;font-weight:700;color:#0b1f3f;margin:0 0 2px;}
.ind-nav-text p{font-size:12.5px !important;color:#5d6b85 !important;margin:0 !important;}
.ind-nav-arrow{color:#a0aec0;transition:all 0.25s ease;flex-shrink:0;}
.industry-nav-card:hover .ind-nav-arrow, .industry-nav-card.active .ind-nav-arrow{color:#ff6c1a;transform:translateX(3px);}
/* RIGHT COLUMN DETAIL SHOWCASE BOX */
.industry-showcase-column{position:relative;display:flex;flex-direction:column;justify-content:center;height:100%;}
.industry-detail-card{display:none;background:#ffffff;border:1.5px solid #dde3ee;border-radius:18px;padding:36px 32px;box-shadow:0 10px 30px rgba(11,31,63,0.05);}
.industry-detail-card.active{display:block;animation:techFadeIn 0.35s ease cubic-bezier(0.16,1,0.3,1);}
.ind-badge{display:inline-block;font-size:12px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:5px 14px;border-radius:999px;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:14px;}
.ind-detail-header h3{font-size:20px;font-weight:700;color:#0b1f3f;margin-bottom:12px;}
.ind-detail-header p{font-size:15px !important;line-height:1.7 !important;color:#5d6b85 !important;margin-bottom:24px !important;}
.ind-points-title{font-size:13px;font-weight:700;color:#0b1f3f;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #f0f4f9;}
.ind-points-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-left:0;list-style:none;margin:0;}
.ind-points-grid li{font-size:13.5px;font-weight:600;color:#0b1f3f;background:#f8fafc;border:1px solid #dde3ee;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:10px;transition:all 0.25s ease;}
.ind-points-grid li::before{content:'✓';color:#ff6c1a;font-weight:800;font-size:14px;flex-shrink:0;}
.ind-points-grid li:hover{border-color:#ff6c1a;background:#fff3ec;transform:translateY(-2px);}
.ind-mobile-detail{display:none;}
@media (max-width: 991px){
  .canada-industry-split-wrapper{grid-template-columns:1fr;gap:24px;}
  .industry-nav-column{gap:14px;}
  .industry-nav-card{transform:none !important;}
  .industry-nav-card.active{border-color:#ff6c1a;background:#fff3ec;box-shadow:0 8px 20px rgba(255,108,26,0.1);}
  .industry-showcase-column{display:none;}
  .ind-mobile-detail{display:none;background:#ffffff;border:1.5px solid #dde3ee;border-top:0;border-radius:0 0 14px 14px;padding:22px 20px;margin:-14px 0 2px;box-shadow:0 10px 24px rgba(11,31,63,0.06);}
  .ind-mobile-detail.open{display:block;animation:techFadeIn 0.3s ease cubic-bezier(0.16,1,0.3,1);}
  .industry-nav-card.mobile-open{border-color:#ff6c1a;border-bottom-color:#dde3ee;border-radius:14px 14px 0 0;background:#fff3ec;}
  .ind-mobile-detail .industry-detail-card{display:block;border:0;border-radius:0;padding:0;box-shadow:none;background:transparent;animation:none;}
  .ind-mobile-detail .ind-detail-header h3{font-size:20px;}
  .ind-mobile-detail .ind-detail-header p{font-size:15px !important;margin-bottom:18px !important;}
}
@media (max-width: 640px){
  .ind-points-grid{grid-template-columns:1fr;}
}
@media (max-width: 991px){
  .industry-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 640px){
  .industry-grid{grid-template-columns:1fr;}
}
/* IMAGE 2 UI: SOLUTION MATCHER ACCORDION & DYNAMIC RESULT */
.solution-dynamic-result-box{position:sticky;top:70px;z-index:99;background:linear-gradient(135deg,#fff3ec 0%,#ffffff 100%);border:1.5px solid #ff6c1a;border-radius:16px;padding:18px 24px;margin-bottom:24px;display:flex;align-items:center;gap:16px;box-shadow:0 10px 30px rgba(11,31,63,0.1);backdrop-filter:blur(8px);}
.result-box-icon{width:44px;height:44px;border-radius:12px;background:#ffffff;border:1px solid #ffe2d1;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 12px rgba(255,108,26,0.12);}
.result-box-content{flex-grow:1;}
.result-badge{display:inline-block;font-size:12px;font-weight:700;color:#ff6c1a;background:#ffffff;border:1px solid #ffd5be;padding:3px 12px;border-radius:999px;margin-bottom:4px;text-transform:uppercase;letter-spacing:0.04em;}
.result-text{font-size:15px !important;font-weight:700 !important;color:#0b1f3f !important;margin:0 !important;line-height:1.4 !important;}
.sol-checkbox-wrapper{display:flex;align-items:center;cursor:pointer;margin-right:14px;user-select:none;flex-shrink:0;}
.sol-checkbox{position:absolute;opacity:0;cursor:pointer;height:0;width:0;}
.custom-chk{width:20px;height:20px;background-color:#ffffff;border:2px solid #cbd5e1;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;}
.sol-checkbox-wrapper:hover .custom-chk{border-color:#ff6c1a;}
.sol-checkbox:checked ~ .custom-chk{background-color:#ff6c1a;border-color:#ff6c1a;}
.custom-chk::after{content:"";width:5px;height:9px;border:solid white;border-width:0 2.5px 2.5px 0;transform:rotate(45deg);display:none;margin-top:-1px;}
.sol-checkbox:checked ~ .custom-chk::after{display:block;}
.canada-solution-box{background:#ffffff;border:1px solid #dde3ee;border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(11,31,63,0.04);}
.sol-acc-item{border-bottom:1px solid #dde3ee;}
.sol-acc-item:last-child{border-bottom:none;}
.sol-acc-head{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;cursor:pointer;background:#ffffff;transition:background 0.15s ease;}
.sol-acc-head:hover{background:#fff3ec;}
.sol-goal-text{font-size:15.5px;font-weight:600;color:#0b1f3f;max-width:65%;margin:0;}
.sol-badge{font-size:13px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:6px 14px;border-radius:999px;text-align:center;}
.sol-acc-item.open .sol-acc-head{background:#fff3ec;}
.sol-acc-body{max-height:0;overflow:hidden;transition:max-height 0.35s ease;background:#f8f9fa;}
.sol-acc-item.open .sol-acc-body{max-height:1000px;}
.sol-acc-body-inner{padding:26px 28px;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px;}
.sol-col h4, .sol-col p.sol-col-title{font-size:14px !important;font-weight:700 !important;color:#0b1f3f !important;text-transform:uppercase !important;letter-spacing:0.05em !important;margin-bottom:8px !important;}
.sol-col p{font-size:14px !important;color:#0b1f3f !important;line-height:1.6 !important;margin:0 0 12px !important;}
.sol-col .chips{display:flex;flex-wrap:wrap;gap:6px;}
.sol-col .chip{font-size:12.5px;font-weight:600;color:#0b1f3f;background:#ffffff;border:1px solid #dde3ee;padding:5px 10px;border-radius:999px;}
.sol-cta-link{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:13.5px;font-weight:700;color:#ff6c1a;text-decoration:none;}
.sol-cta-link:hover{text-decoration:underline;}
/* IMAGE 3 UI: FAQ ACCORDION (EXACT FROM sparkout-web-dev-canada (2).html) */
.canada-faq-box{background:#ffffff;border:1px solid #dde3ee;border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(11,31,63,0.04);}
.faq-acc-item{border-bottom:1px solid #dde3ee;}
.faq-acc-item:last-child{border-bottom:none;}
.faq-acc-head{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;cursor:pointer;background:#ffffff;transition:background 0.15s ease;}
.faq-acc-head:hover{background:#fff3ec;}
.faq-q-text{font-size:20px;font-weight:600;color:#101826;margin:0;line-height:1.4;}
.faq-acc-item.open .faq-acc-head{background:#fff3ec;}
.faq-acc-body{max-height:0;overflow:hidden;transition:max-height 0.28s ease;background:#ffffff;}
.faq-acc-item.open .faq-acc-body{max-height:500px;}
.btn-spark-primary svg{margin-left:4px;vertical-align:middle;}
.faq-acc-body-inner{padding:4px 28px 26px;}
.faq-acc-body-inner p{font-size:16px !important;color:#5b6b7c !important;line-height:1.75 !important;margin:0 !important;}
/* CSS-DRAWN ACCORDION + / - TOGGLE ICON (FROM CANADIAN LANDING PAGE BLUEPRINT) */
.acc-plus{flex:none;width:18px;height:18px;position:relative;margin-left:16px;}
.acc-plus::before, .acc-plus::after{content:'';position:absolute;background:#5b6b7c;}
.acc-plus::before{top:8px;left:0;width:18px;height:2px;border-radius:2px;}
.acc-plus::after{top:0;left:8px;width:2px;height:18px;border-radius:2px;transition:transform 0.2s ease;}
.faq-acc-item.open .acc-plus::after, .sol-acc-item.open .acc-plus::after{transform:rotate(90deg);}
/* IMAGE 4 UI: FINAL CTA */
.canada-final-cta{background:#0b1f3f;border-radius:24px;padding:64px 48px;text-align:center;position:relative;overflow:hidden;color:#ffffff;}
.canada-final-cta::before{content:"";position:absolute;top:-60px;right:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,108,26,0.25),transparent 70%);}
.canada-final-cta::after{content:"";position:absolute;bottom:-80px;left:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,108,26,0.15),transparent 70%);}
.canada-final-cta h3{color:#ffffff !important;font-size:26px;line-height:1.3;max-width:720px;margin:0 auto 16px;font-weight:700;position:relative;z-index:1;}
.canada-final-cta p{color:rgba(255,255,255,0.85) !important;max-width:600px;margin:0 auto 32px !important;font-size:16px !important;line-height:1.75 !important;position:relative;z-index:1;}
.canada-final-cta .cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1;}
.canada-final-cta .btn-spark-outline{border-color:rgba(255,255,255,0.5);color:#ffffff !important;}
.canada-final-cta .btn-spark-outline:hover{background:#ffffff;color:#0b1f3f !important;border-color:#ffffff;}
/* RESPONSIVE STYLES */
@media (max-width: 991px){
  .canada-section{padding:40px 0;}
  .canada-hero h1{font-size:38px;}
  .canada-sec-head h2{font-size:32px;line-height:1.2;}
  .canada-sec-head p{font-size:16px !important;line-height:1.75 !important;}
  .why-partner-panel{grid-template-columns:1fr;gap:28px;}
  .why-partner-copy{position:static;padding:0;}
  .why-partner-copy h2{font-size:34px;}
  .canada-card-grid{grid-template-columns:repeat(2,1fr);}
  .process-board{grid-template-columns:1fr;}
  .process-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .process-progress, .process-stage{grid-column:1;grid-row:auto;}
  .process-stage{border-left:0;padding-top:26px;min-height:auto;}
  .tech-stack-grid{grid-template-columns:repeat(2,1fr);}
  .industry-grid{grid-template-columns:repeat(2,1fr);}
  .canada-readiness-card{grid-template-columns:1fr;}
  .readiness-list{order:2;border-right:none;border-top:1px solid #dde3ee;border-bottom:none;}
  .readiness-readout{order:1;}
  .readiness-readout{min-height:340px;justify-content:flex-start;padding-top:38px;padding-bottom:34px;}
  .readiness-readout::before{inset:28px 24px;}
  .readout-gauge{margin-bottom:18px;}
  .readout-verdict{min-height:auto;margin-top:0;}
  .sol-acc-body-inner{grid-template-columns:1fr;gap:16px;}
}
@media (max-width: 767px){
  .canada-section{padding:28px 0;}
  .canada-sec-head{margin-bottom:28px;}
  .canada-sec-head h2{font-size:22px;line-height:1.2;margin-bottom:16px;}
  .canada-sec-head p{font-size:14px !important;line-height:1.7 !important;}
  .canada-hero h1{font-size:30px;}
  .canada-hero{padding:40px 0 60px;}
  .why-partner-copy h2{font-size:28px;}
  .why-choice-board{border-radius:14px;}
  .why-choice-board h3{font-size:16px;padding:20px;}
  .why-choice-list{grid-template-columns:1fr;}
  .why-choice-card, .why-choice-card:nth-child(2n){border-right:0;}
  .why-choice-card{min-height:auto;padding:24px 20px;border-bottom:1px solid #e4ebf4;}
  .why-choice-card:last-child{grid-column:auto;border-bottom:0;}
  .canada-card-grid{grid-template-columns:1fr;}
  .canada-card-grid.cols-2{grid-template-columns:1fr;}
  .process-board{padding:18px 12px;grid-template-columns:1fr;border-radius:16px;}
  .process-tabs{grid-template-columns:1fr;}
  .process-tab{min-height:44px;padding:10px 14px;font-size:13px;line-height:1.35;border-radius:6px;}
  .process-tab span{width:30px;height:30px;font-size:12px;}
  .process-tab{justify-content:flex-start;text-align:left;}
  .process-progress, .process-stage{display:none;}
  .process-stage-copy{grid-template-columns:1fr;gap:10px;padding:18px 0;}
  .process-icon{width:46px;height:46px;font-size:20px;margin-top:0;}
  .process-stage-copy h3, .process-stage-copy p{grid-column:1;}
  .process-stage-copy h3{font-size:16px !important;line-height:1.35 !important;margin-bottom:8px;}
  .process-stage-copy p{font-size:14px !important;line-height:1.7 !important;}
  .process-tab.mobile-open{border-color:#ff6c1a;border-bottom-color:#dde3ee;border-radius:6px 6px 0 0;background:#ff6c1a;color:#ffffff;}
  .process-mobile-detail{display:none;background:#ffffff;border:1px solid #dde3ee;border-top:0;border-radius:0 0 8px 8px;padding:18px 16px 20px;margin:-12px 0 12px;box-shadow:0 10px 24px rgba(11,31,63,0.06);}
  .process-mobile-detail.open{display:block;animation:techFadeIn 0.3s ease cubic-bezier(0.16,1,0.3,1);}
  .process-mobile-detail .process-stage-copy{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:0;}
  .process-mobile-detail .process-icon{width:44px;height:44px;margin:0 0 4px;}
  .process-mobile-detail h3{font-size:17px !important;line-height:1.35 !important;font-weight:700 !important;color:#0b1f3f;margin:0 0 6px;}
  .process-mobile-detail p{font-size:13.5px !important;line-height:1.65 !important;color:#5d6b85 !important;margin:0;}
  .tech-stack-grid{grid-template-columns:1fr;}
  .industry-grid{grid-template-columns:1fr;}
  .sol-acc-head{flex-direction:column;align-items:flex-start;gap:10px;}
  .sol-goal-text{max-width:100%;}
  .canada-final-cta{padding:44px 24px;}
  .canada-final-cta h3{font-size:26px;}
  .readiness-list{padding:24px 20px;}
  .readiness-readout{min-height:300px;padding:30px 20px 28px;justify-content:flex-start;}
  .readiness-readout::before{inset:20px 16px;border-radius:14px;}
  .readout-gauge{width:min(210px,76vw);height:120px;margin-bottom:16px;}
  .readout-gauge::before, .readout-gauge::after{width:190px;height:95px;border-radius:190px 190px 0 0;}
  .readout-fill{width:156px;height:78px;border-radius:156px 156px 0 0;}
  .readout-count{font-size:34px;}
  .readout-count span{font-size:14px;}
  .readout-verdict{max-width:300px;min-height:auto;margin:0 auto;font-size:14px !important;line-height:1.55 !important;}
  .marquee-strip{padding:14px 0;}
  .marquee-track{animation-duration:18s;}
  .marquee-item{font-size:13px;padding:0 1.8rem;}
}
/* NEW UI: CHALLENGE LEDGER HORIZONTAL ROWS (FROM aa-web/web-solution-selector.html) */
.challenge-ledger{display:flex;flex-direction:column;border-top:1px solid #dde3ee;margin-top:16px;}
.challenge-row{display:grid;grid-template-columns:90px minmax(260px,0.75fr) 1.25fr;gap:30px;align-items:center;padding:34px 12px;border-bottom:1px solid #dde3ee;transition:all 0.35s ease;border-radius:12px;}
.challenge-row:hover{padding-left:24px;background:#fff8f3;border-bottom-color:rgba(255,108,26,0.3);}
.challenge-row .num{color:#ff6c1a;font-size:48px;line-height:1;font-weight:600;}
.challenge-row h3{margin:0;font-size:20px;line-height:1.4;font-weight:700;color:#0b1f3f;}
.challenge-row p{margin:0;color:#5d6b85 !important;font-size:15px !important;line-height:1.7 !important;}
/* NEW UI: STAGGERED CORNER CARDS (FROM aa-web/sparkout-canada-web-development-v2.html) */
.stagger-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding-bottom:28px;}
.stagger-card{background:#ffffff;border:1px solid #dde3ee;border-radius:16px;padding:32px 26px;transition:transform 0.35s ease,box-shadow 0.35s ease,border-color 0.3s ease;position:relative;overflow:hidden;box-shadow:0 4px 16px rgba(11,31,63,0.03);}
.stagger-card:nth-child(even){transform:translateY(28px);}
.stagger-card:hover{transform:translateY(-6px) !important;box-shadow:0 16px 36px rgba(11,31,63,0.08);border-color:rgba(255,108,26,0.4);}
.stagger-card .corner{position:absolute;top:16px;right:16px;width:18px;height:18px;border-top:2px solid #ff6c1a;border-right:2px solid #ff6c1a;}
.stagger-card .cnum{color:#ff6c1a;font-size:14px;font-weight:700;letter-spacing:0.05em;}
.stagger-card h3{font-size:20px;margin:14px 0 10px;font-weight:700;color:#0b1f3f;}
.stagger-card p{font-size:15px !important;color:#5d6b85 !important;line-height:1.65 !important;margin:0;}
@media (max-width: 991px){
  .challenge-row{grid-template-columns:60px 1fr;gap:14px 20px;padding:24px 8px;}
  .challenge-row p{grid-column:2;}
  .challenge-row .num{font-size:36px;}
  .challenge-row h3{font-size:16px;}
  .stagger-grid{grid-template-columns:repeat(2,1fr);}
  .stagger-card:nth-child(even){transform:translateY(0);}
}
@media (max-width: 575px){
  .challenge-row{grid-template-columns:44px 1fr;gap:10px;}
  .challenge-row .num{font-size:28px;}
  .stagger-grid{grid-template-columns:1fr;}
}
/* INTERACTIVE SERVICES CARD GRID */
.canada-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
.canada-service-card{background:linear-gradient(135deg,rgba(255,108,26,0.06),transparent 42%),#ffffff;border:1px solid #dde3ee;border-radius:16px;padding:32px 26px;position:relative;overflow:hidden;transition:all 0.35s cubic-bezier(0.16,1,0.3,1);box-shadow:0 4px 16px rgba(11,31,63,0.03);min-height:236px;}
.canada-service-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3.5px;background:#ff6c1a;transition:height 0.3s ease;}
.canada-service-card::after{content:"";position:absolute;right:-52px;bottom:-52px;width:128px;height:128px;border:1px solid rgba(255,108,26,0.18);border-radius:16px;transform:rotate(18deg) scale(0.84);transition:transform 0.35s ease,opacity 0.35s ease;opacity:0;}
.canada-service-card:hover{transform:translateY(-8px);box-shadow:0 16px 36px rgba(11,31,63,0.09);border-color:rgba(255,108,26,0.4);}
.canada-service-card:hover::before{height:5px;}
.canada-service-card:hover::after{opacity:1;transform:rotate(18deg) scale(1);}
.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;position:relative;z-index:1;}
.service-icon-box{width:46px;height:46px;border-radius:12px;background:#fff3ec;display:flex;align-items:center;justify-content:center;transition:background 0.3s ease,transform 0.3s ease;}
.canada-service-card:hover .service-icon-box{background:#ff6c1a;transform:translateY(-2px) rotate(-3deg);}
.canada-service-card:hover .service-icon-box svg{stroke:#ffffff;}
.service-num-tag{font-size:12px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:4px 10px;border-radius:999px;transition:background 0.25s ease,color 0.25s ease;}
.canada-service-card:hover .service-num-tag{background:#0b1f3f;color:#ffffff;}
.canada-service-card h3{font-size:20px;font-weight:700;color:#0b1f3f;margin-bottom:10px;line-height:1.35;position:relative;z-index:1;transition:color 0.25s ease;}
.canada-service-card:hover h3{color:#ff6c1a;}
.canada-service-card p{font-size:15px !important;color:#5d6b85 !important;line-height:1.65 !important;margin:0;position:relative;z-index:1;}
@media (max-width: 991px){
  .canada-services-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 575px){
  .canada-services-grid{grid-template-columns:1fr;}
}
/* SERVICES CTA */
.services-cta-band{background:#ffffff;padding:0 0 72px;}
.services-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 36px;border:1px solid #ffd7bf;border-radius:16px;background:linear-gradient(135deg,rgba(255,108,26,0.1),transparent 45%),#ffffff;box-shadow:0 14px 34px rgba(11,31,63,0.06);}
.services-cta-inner h3{color:#0b1f3f;font-size:26px;font-weight:700;line-height:1.3;margin-bottom:12px;}
.services-cta-inner p{color:#5d6b85 !important;font-size:16px !important;line-height:1.75 !important;margin:0;}
@media (max-width: 767px){
  .services-cta-band{padding-bottom:56px;}
  .services-cta-inner{align-items:flex-start;flex-direction:column;padding:28px 22px;}
  .services-cta-inner h3{font-size:26px;}
}
/* SECTION 9: SUCCESS STORIES CARD STYLES */
.canada-story-card{background:#ffffff;border:1.5px solid #ff6c1a;border-radius:16px;padding:28px 26px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 4px 18px rgba(11,31,63,0.04);transition:all 0.25s ease;position:relative;text-decoration:none !important;}
.canada-story-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(255,108,26,0.12);border-color:#ff6c1a;}
.story-badge{display:inline-block;align-self:flex-start;font-size:14px;font-weight:700;color:#ff6c1a;background:#fff3ec;padding:6px 14px;border-radius:999px;margin-bottom:20px;}
.story-block{margin-bottom:14px;}
.story-block strong{display:block;font-size:18px;font-weight:700;color:#0b1f3f;margin-bottom:4px;}
.story-block p{font-size:15px !important;color:#5d6b85 !important;line-height:1.6 !important;margin:0 !important;}
.outcome-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;}
.outcome-chip{font-size:12.5px;font-weight:600;color:#0b1f3f;background:#f8f9fa;border:1px solid #dde3ee;padding:5px 12px;border-radius:999px;}
.story-cta-link{display:inline-flex;align-items:center;gap:6px;margin-top:20px;font-size:14.5px;font-weight:700;color:#ff6c1a;text-decoration:none;transition:color 0.15s ease;}
.story-cta-link:hover{text-decoration:underline;color:#e05b0f;}
/* SECTION 10: ENGAGEMENT MODEL CARDS */
.flex-col-justify{display:flex;flex-direction:column;justify-content:space-between;}
.model-best-for{margin-top:20px;padding-top:16px;border-top:1px solid #eef2f8;}
.model-best-for h4, .model-best-for p.best-for-title{font-size:18px;font-weight:700;color:#ff6c1a;letter-spacing:0.6px;text-transform:uppercase;margin-bottom:10px;}
.model-best-for .chips{display:flex;flex-wrap:wrap;gap:7px;}
.model-best-for .chip{font-size:12px;font-weight:600;color:#0b1f3f;background:#f8f9fa;border:1px solid #dde3ee;padding:4px 11px;border-radius:999px;line-height:1.4;display:inline-block;transition:all 0.2s ease;}
.model-best-for .chip:hover{background:#fff3ec;border-color:#ff6c1a;color:#ff6c1a;}
/* SECTION 11: WHY CHOOSE SPARKOUT NEW UI */
.why-sparkout-grid{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start;}
@media (max-width: 991px){
  .why-sparkout-grid{grid-template-columns:1fr;gap:32px;}
}
.why-sticky-col{position:sticky;top:90px;}
@media (max-width: 991px){
  .why-sticky-col{position:static;top:auto;}
}
.why-sticky-col h2{font-size:36px;font-weight:700;color:#0b1f3f;line-height:1.16;margin:12px 0 16px;}
.why-sticky-col p{font-size:16px;color:#5d6b85;line-height:1.75;margin-bottom:24px;}
.why-trust-stats{display:flex;gap:28px;padding-top:20px;border-top:1px solid #e2e8f0;}
.trust-stat-item strong{display:block;font-size:26px;font-weight:800;color:#ff6c1a;line-height:1.1;}
.trust-stat-item span{font-size:12.5px;font-weight:600;color:#5d6b85;}
.why-cards-stack{display:flex;flex-direction:column;gap:16px;}
.why-feature-card{display:flex;gap:20px;background:#ffffff;border:1px solid #eef2f8;border-radius:16px;padding:24px 26px;box-shadow:0 4px 20px rgba(11,31,63,0.03);transition:all 0.25s cubic-bezier(0.16,1,0.3,1);position:relative;}
.why-feature-card:hover{transform:translateX(6px);border-color:#ff6c1a;box-shadow:0 8px 30px rgba(255,108,26,0.1);}
.why-card-num{font-size:14px;font-weight:800;color:#ff6c1a;background:#fff3ec;border:1px solid rgba(255,108,26,0.2);width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.why-card-content h3{font-size:20px;font-weight:700;color:#0b1f3f;margin:0 0 8px;line-height:1.3;}
.why-card-content p{font-size:15px;color:#5d6b85;line-height:1.7;margin:0;}
/* PRE-FAQ LIGHT CTA BANNER */
.pt-0{padding-top:0 !important;}
.canada-light-cta-box{background:#ffffff;border:1px solid #ffd8c2;border-radius:20px;padding:48px 40px;text-align:center;box-shadow:0 10px 30px rgba(255,108,26,0.06);position:relative;overflow:hidden;}
.canada-light-cta-box::before{content:'';position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(255,108,26,0.12) 0%,rgba(255,255,255,0) 70%);pointer-events:none;}
.canada-light-cta-box .cta-eyebrow{font-size:13px;font-weight:700;color:#ff6c1a;letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;}
.canada-light-cta-box .cta-title{font-size:26px;font-weight:700;color:#0b1f3f;line-height:1.3;max-width:800px;margin:0 auto 16px;}
.canada-light-cta-box .cta-desc{font-size:16px;color:#5d6b85;line-height:1.6;max-width:720px;margin:0 auto 30px;}
.canada-light-cta-box .cta-actions{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;}
.btn-cta-primary{display:inline-flex;align-items:center;justify-content:center;background:#ff6c1a;color:#ffffff !important;font-size:15px;font-weight:700;padding:14px 28px;border-radius:10px;text-decoration:none !important;box-shadow:0 6px 20px rgba(255,108,26,0.3);transition:all 0.25s ease;}
.btn-cta-primary:hover{background:#e05b0f;transform:translateY(-2px);box-shadow:0 10px 25px rgba(255,108,26,0.4);}
.btn-cta-secondary{display:inline-flex;align-items:center;justify-content:center;background:#ffffff;color:#0b1f3f !important;border:1.5px solid #0b1f3f;font-size:15px;font-weight:700;padding:13px 26px;border-radius:10px;text-decoration:none !important;transition:all 0.25s ease;}
.btn-cta-secondary:hover{background:#0b1f3f;color:#ffffff !important;transform:translateY(-2px);}
@media (max-width: 767px){
  .canada-light-cta-box{padding:32px 20px;}
  .canada-light-cta-box .cta-title{font-size:26px;}
  .canada-light-cta-box .cta-actions{flex-direction:column;width:100%;}
  .btn-cta-primary, .btn-cta-secondary{width:100%;}
}
/* FINAL RESPONSIVE TYPOGRAPHY OVERRIDES */
@media (max-width: 991px){
  h1,.canada-hero h1,.hero h1{font-size:38px !important;line-height:1.12 !important;font-weight:700 !important;}
  h2,.canada-sec-head h2,.why-partner-copy h2,.tech-left-col h2,.why-sticky-col h2,.awards-section .title-wrap h2,.reviews-section .title-wrap h2{font-size:32px !important;line-height:1.2 !important;font-weight:700 !important;}
  h3,.canada-card h3,.process-stage-copy h3,.ind-detail-header h3,.challenge-row h3,.stagger-card h3,.canada-service-card h3,.why-card-content h3,.reviews-section .review-card h3{font-size:20px !important;line-height:1.4 !important;font-weight:700 !important;}
  h4,.h4,.why-choice-card h4,.sol-col h4,.model-best-for h4,.reviews-section .review-card h4,.reviews-section .review-card .h4,.awards-section .achievement .h4{font-size:17px !important;line-height:1.4 !important;font-weight:600 !important;}
  p,.canada-sec-head p,.canada-hero p.lead-text,.why-partner-copy p,.tech-left-col p,.why-sticky-col p,.process-stage-copy p,.reviews-section .title-wrap p,.awards-section .title-wrap p{font-size:14px !important;line-height:1.7 !important;font-weight:400 !important;}
  .cta-text .cta-title,.services-cta-inner h3,.canada-light-cta-box .cta-title,.canada-final-cta h3{font-size:26px !important;line-height:1.3 !important;font-weight:700 !important;}
  .services-cta-inner p,.canada-light-cta-box .cta-desc,.canada-final-cta p{font-size:14px !important;line-height:1.7 !important;font-weight:400 !important;}
  .faq-q-text{font-size:17px !important;line-height:1.4 !important;font-weight:600 !important;}
  .faq-acc-body-inner p{font-size:14.5px !important;line-height:1.65 !important;}
}
@media (max-width: 767px){
  h1,.canada-hero h1,.hero h1{font-size:28px !important;line-height:1.12 !important;font-weight:700 !important;}
  h2,.canada-sec-head h2,.why-partner-copy h2,.tech-left-col h2,.why-sticky-col h2,.awards-section .title-wrap h2,.reviews-section .title-wrap h2{font-size:22px !important;line-height:1.2 !important;font-weight:700 !important;}
  h3,.canada-card h3,.process-stage-copy h3,.ind-detail-header h3,.challenge-row h3,.stagger-card h3,.canada-service-card h3,.why-card-content h3,.reviews-section .review-card h3{font-size:16px !important;line-height:1.35 !important;font-weight:700 !important;}
  h4,.h4,.why-choice-card h4,.sol-col h4,.model-best-for h4,.reviews-section .review-card h4,.reviews-section .review-card .h4,.awards-section .achievement .h4{font-size:17px !important;line-height:1.35 !important;font-weight:600 !important;}
  p,.canada-sec-head p,.canada-hero p.lead-text,.why-partner-copy p,.tech-left-col p,.why-sticky-col p,.process-stage-copy p,.reviews-section .title-wrap p,.awards-section .title-wrap p{font-size:14px !important;line-height:1.7 !important;font-weight:400 !important;}
  .cta-text .cta-title,.services-cta-inner h3,.canada-light-cta-box .cta-title,.canada-final-cta h3{font-size:22px !important;line-height:1.3 !important;font-weight:700 !important;}
  .services-cta-inner p,.canada-light-cta-box .cta-desc,.canada-final-cta p{font-size:14px !important;line-height:1.7 !important;font-weight:400 !important;}
  .faq-q-text{font-size:15px !important;line-height:1.4 !important;font-weight:600 !important;}
  .faq-acc-body-inner p{font-size:13.5px !important;line-height:1.6 !important;}
  .faq-acc-head{padding:16px 18px !important;}
  .faq-acc-body-inner{padding:4px 18px 18px !important;}
}
/* FINAL TECH SECTION OVERFLOW FIX */
@media (max-width: 991px){
  html,body{overflow-x:clip !important;}
  #technologies{overflow:hidden !important;}
  #technologies .container,.canada-tech-split-wrapper,.tech-left-col,.tech-right-col,.tech-stack-grid,.tech-group,.canada-tech-filter-bar{min-width:0 !important;max-width:100% !important;}
  .canada-tech-split-wrapper{width:100% !important;overflow:hidden !important;}
  .tech-left-col h2,.tech-left-col p{max-width:100% !important;overflow-wrap:anywhere !important;}
  .canada-tech-filter-bar{box-sizing:border-box !important;margin:0 !important;border-radius:12px !important;overflow-x:auto !important;overflow-y:hidden !important;scrollbar-width:none !important;-ms-overflow-style:none !important;}
  .canada-tech-filter-bar::-webkit-scrollbar{display:none !important;width:0 !important;height:0 !important;}
  .tech-group{box-sizing:border-box !important;overflow:hidden !important;}
  .tech-pills{max-width:100% !important;}
  .tech-pill{max-width:100% !important;white-space:normal !important;overflow-wrap:anywhere !important;}
}
@media (max-width: 767px){
  .tech-right-col{gap:16px !important;}
  .canada-tech-filter-bar{width:100% !important;}
  .tech-filter-btn{padding:8px 14px !important;font-size:13px !important;}
  .tech-group{padding:24px 18px !important;border-radius:14px !important;}
  .tech-group-header{gap:12px !important;align-items:flex-start !important;}
  .tech-group-title-wrap{min-width:0 !important;}
}

@media (max-width: 991px) {

    html {
        overflow-x: clip !important;
        overflow-y: visible !important;
    }

    body {
        overflow-x: clip !important;
        overflow-y: visible !important;
    }

    main {
        overflow: visible !important;
        transform: none !important;
        filter: none !important;
        contain: none !important;
    }

    #solution-selector {
        overflow: visible !important;
        transform: none !important;
        filter: none !important;
        contain: none !important;
    }

    #solution-selector > .container {
        overflow: visible !important;
        transform: none !important;
        filter: none !important;
        contain: none !important;
    }

    .solution-dynamic-result-box {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 70px !important;

        transform: none !important;
        filter: none !important;
        contain: none !important;
        will-change: auto !important;

        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
}
@media (max-width:475px){
    .solution-dynamic-result-box {
        top: 58px !important;
}}

/* RESPONSIVE BUTTON FONT SIZE & PADDING (TABLET & MOBILE) */
@media (max-width: 991px) {
  .btn-spark-primary,
  .btn-spark-outline,
  .btn-cta-primary,
  .btn-cta-secondary,
  body button.btn.btn-toc {
    font-size: 13.5px !important;
    padding: 10px 20px !important;
  }
}

@media (max-width: 767px) {
  .btn-spark-primary,
  .btn-spark-outline,
  .btn-cta-primary,
  .btn-cta-secondary,
  body button.btn.btn-toc {
    font-size: 12.5px !important;
    padding: 8px 16px !important;
  }
}