/**
 * Canada Create SEO service landing layout.
 * Source: Elementor template service-landing-v5-motion.
 * This file is conditionally enqueued by inc/cc-elementor-motion.php.
 */

.cc-seo-landing,
.cc-seo-landing * {
  box-sizing: border-box;
}

.cc-seo-landing {
  --cc-red: #F20D18;
  --cc-red-dark: #C90812;
  --cc-ink: #07111D;
  --cc-ink-deep: #020914;
  --cc-panel: #0A1522;
  --cc-panel-soft: #101C2A;
  --cc-paper: #FAFAFB;
  --cc-white: #FFFFFF;
  --cc-text: #151A21;
  --cc-muted: #AAB3BF;
  --cc-muted-dark: #5D6570;
  --cc-line: #263544;
  --cc-green: #18BF68;
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow-x: hidden;
  overflow-x: clip;
  isolation: isolate;
}
.cc-seo-landing > .e-con-inner,
.cc-seo-section > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  padding: 0 !important;
}

.cc-seo-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.cc-shell {
  width: min(calc(100% - 48px), 1240px) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
}

.cc-seo-landing .elementor-heading-title,
.cc-seo-landing .elementor-icon-box-title,
.cc-seo-landing .elementor-icon-box-description,
.cc-seo-landing p {
  margin-block: 0;
}

.cc-hero {
  position: relative;
  overflow: hidden;
  background: var(--cc-ink-deep) !important;
}

.cc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .7;
  background-image:
    radial-gradient(circle at 71% 13%, rgba(242,13,24,.42), transparent 14rem),
    radial-gradient(circle at 92% 4%, rgba(242,13,24,.21), transparent 12rem),
    radial-gradient(circle, rgba(255,255,255,.58) 0 1px, transparent 1.2px),
    radial-gradient(circle, rgba(242,13,24,.8) 0 1px, transparent 1.2px);
  background-position: 0 0, 0 0, 0 0, 27px 34px;
  background-size: auto, auto, 72px 72px, 109px 109px;
  background-repeat: no-repeat, no-repeat, repeat, repeat;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, transparent 92%);
  mask-image: linear-gradient(to bottom, #000 0%, transparent 92%);
}

.cc-hero::after {
  content: "";
  position: absolute;
  left: -8%;
  right: -8%;
  bottom: -8%;
  height: 49%;
  z-index: 0;
  pointer-events: none;
  opacity: .34;
  background:
    linear-gradient(rgba(61,91,117,.25) 1px, transparent 1px),
    linear-gradient(90deg, rgba(61,91,117,.25) 1px, transparent 1px);
  background-size: 34px 34px;
  transform: perspective(430px) rotateX(59deg);
  transform-origin: bottom;
  -webkit-mask-image: linear-gradient(to top, #000 12%, transparent 93%);
  mask-image: linear-gradient(to top, #000 12%, transparent 93%);
}

.cc-hero-art {
  position: absolute !important;
  inset: 0;
  z-index: 1;
  width: 100% !important;
  height: 100%;
  pointer-events: none;
  opacity: .38;
}

.cc-hero-art .elementor-widget-container,
.cc-hero-art svg {
  width: 100%;
  height: 100%;
  display: block;
}

.cc-hero-art svg {
  transform: translate3d(0, 56px, 0) scale(1.015);
  transform-origin: center bottom;
}

.cc-hero-shell,
.cc-stats-shell,
.cc-section-shell {
  position: relative;
  z-index: 2;
}

.cc-hero-grid {
  flex-wrap: nowrap !important;
}

.cc-hero-copy,
.cc-dashboard,
.cc-case-card,
.cc-price-card {
  min-width: 0;
}

.cc-hero-badge .elementor-heading-title {
  letter-spacing: .1em;
}

.cc-hero-title .elementor-heading-title,
.cc-section-title .elementor-heading-title {
  text-wrap: balance;
}

.cc-hero-description p,
.cc-trust-line p,
.cc-card-copy p,
.cc-case-summary p {
  margin: 0;
}

.cc-hero-ctas .elementor-widget-button {
  width: auto;
}

.cc-hero-ctas .elementor-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.cc-dashboard-card,
.cc-signal-card,
.cc-win-card,
.cc-case-card {
  border-radius: 10px;
  box-shadow: 0 16px 42px rgba(0,0,0,.24);
}

.cc-dashboard-card,
.cc-signal-card,
.cc-case-card {
  overflow: hidden;
}

.cc-kpi-row .elementor-widget-heading,
.cc-ai-kpi .elementor-widget-heading {
  width: auto;
}

.cc-kpi-up .elementor-heading-title {
  color: var(--cc-red);
}

.cc-svg-chart,
.cc-svg-map,
.cc-svg-donut,
.cc-case-chart {
  width: 100%;
  line-height: 0;
}

.cc-svg-chart svg,
.cc-svg-map svg,
.cc-svg-donut svg,
.cc-case-chart svg {
  width: 100%;
  height: auto;
  display: block;
}

.cc-svg-donut {
  width: 78px;
  flex: 0 0 78px;
}

.cc-win-card .elementor-icon-box-wrapper,
.cc-stat-item .elementor-icon-box-wrapper,
.cc-service-card .elementor-icon-box-wrapper,
.cc-difference-card .elementor-icon-box-wrapper,
.cc-case-result .elementor-icon-box-wrapper {
  height: 100%;
}

.cc-win-card .elementor-icon-box-wrapper,
.cc-stat-item .elementor-icon-box-wrapper,
.cc-case-result .elementor-icon-box-wrapper {
  display: flex;
  align-items: center;
}

.cc-win-card .elementor-icon-box-icon,
.cc-stat-item .elementor-icon-box-icon,
.cc-case-result .elementor-icon-box-icon {
  margin: 0 !important;
}

.cc-win-card .elementor-icon,
.cc-stat-item .elementor-icon,
.cc-case-result .elementor-icon {
  display: inline-flex;
}

.cc-stats-bar {
  background: linear-gradient(90deg, #08131F, #020914 52%, #08131F) !important;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.cc-stat-item:not(:last-child) {
  border-right: 1px solid rgba(255,255,255,.14);
}

.cc-section-title::after {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  margin: 11px auto 0;
  background: var(--cc-red);
  border-radius: 99px;
}

.cc-service-card {
  height: 100%;
  border-radius: 9px;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.cc-service-card .elementor-icon-box-wrapper {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 12px 14px;
  align-items: start;
}

.cc-service-card .elementor-icon-box-icon {
  grid-row: 1 / span 2;
  margin: 0 !important;
}

.cc-service-card:hover {
  transform: translateY(-3px);
  border-color: rgba(242,13,24,.48) !important;
  box-shadow: 0 16px 32px rgba(7,17,29,.08);
}

.cc-proof,
.cc-difference {
  position: relative;
  background: var(--cc-ink-deep) !important;
}

.cc-proof::before,
.cc-difference::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .8;
  background-image:
    radial-gradient(circle at 17% 12%, rgba(242,13,24,.12), transparent 18rem),
    radial-gradient(circle, rgba(255,255,255,.38) 0 1px, transparent 1.2px);
  background-size: auto, 92px 92px;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 70%);
  mask-image: linear-gradient(90deg, #000, transparent 70%);
}

.cc-case-header {
  padding-bottom: 2px;
}

.cc-case-legend .elementor-heading-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.cc-case-legend .elementor-heading-title::before {
  content: "";
  width: 24px;
  height: 3px;
  border-radius: 99px;
  background: var(--cc-red);
}

.cc-case-number .elementor-heading-title {
  line-height: 1;
}

.cc-case-label p {
  margin: 2px 0 0;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.cc-case-visual,
.cc-case-visual > .e-con-inner {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 3.25fr) minmax(128px, 1fr);
  gap: 16px !important;
  align-items: stretch !important;
}

.cc-case-visual > .e-con-inner {
  padding: 0 !important;
}

.cc-case-visual > .e-con,
.cc-case-visual > .e-con-inner > .e-con {
  width: auto !important;
  min-width: 0;
}

.cc-case-chart-widget {
  min-width: 0;
}

.cc-case-improvement {
  min-width: 104px;
  border: 1px solid rgba(24,191,104,.38);
  border-radius: 8px;
  background: rgba(24,191,104,.055);
}

.cc-case-results {
  padding-top: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 8px;
  background: rgba(255,255,255,.018);
}

.cc-case-result {
  min-width: 0;
}

.cc-case-result:not(:last-child) {
  border-right: 1px solid rgba(255,255,255,.12);
}

.cc-case-result .elementor-icon-box-wrapper {
  gap: 10px;
}

.cc-case-result .elementor-icon-box-content {
  min-width: 0;
}

.cc-process-grid {
  position: relative;
}

.cc-process-grid::before {
  content: "";
  position: absolute;
  top: 32px;
  left: 2%;
  right: 11%;
  border-top: 1px dashed #9BA5B1;
  z-index: 0;
}

.cc-process-step {
  position: relative;
  z-index: 1;
}

.cc-process-number .elementor-heading-title,
.cc-process-step > .elementor-widget-heading:first-child .elementor-heading-title,
.cc-process-step > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  width: auto;
  height: auto;
  margin: 0;
  display: grid;
  place-items: center;
  color: var(--cc-white);
}

.cc-process-number,
.cc-process-step > .elementor-widget-heading:first-child,
.cc-process-step > .e-con-inner > .elementor-widget-heading:first-child {
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  flex: 0 0 44px !important;
  margin-inline: auto;
  display: grid !important;
  place-items: center;
  border-radius: 50%;
  background: var(--cc-red) !important;
  color: var(--cc-white) !important;
  box-shadow: 0 0 0 6px var(--cc-paper);
}

.cc-process-number .elementor-widget-container,
.cc-process-step > .elementor-widget-heading:first-child .elementor-widget-container,
.cc-process-step > .e-con-inner > .elementor-widget-heading:first-child .elementor-widget-container {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}

.cc-process-step > .elementor-widget-heading:not(.cc-process-number) .elementor-heading-title {
  color: var(--cc-text) !important;
}

.cc-process-step > .e-con-inner > .elementor-widget-heading:not(:first-child) .elementor-heading-title {
  color: var(--cc-text) !important;
}

.cc-process-step .elementor-widget-text-editor,
.cc-process-step .elementor-widget-text-editor p {
  color: #4B5563 !important;
}

.cc-difference-card:not(:last-child) {
  border-right: 1px solid rgba(255,255,255,.34);
}

.cc-difference-card .elementor-icon-box-wrapper {
  gap: 11px;
}

.cc-price-card {
  height: 100%;
  min-height: 360px;
  border-radius: 9px;
  box-shadow: 0 14px 30px rgba(7,17,29,.07);
}

.cc-price-card-featured {
  color: var(--cc-white);
  box-shadow: 0 20px 46px rgba(2,9,20,.18);
}

.cc-price-badge {
 margin: -22px -2px 0 !important;
  border-radius: 8px 8px 0 0;
}

.cc-price-card .elementor-widget-button {
  margin-top: auto;
}

.cc-price-card .elementor-button {
  width: 100%;
  min-height: 44px;
}

.cc-price-features .elementor-icon-list-item {
  align-items: flex-start;
}

.cc-faq .elementor-toggle {
  border: 1px solid #D7DDE4;
  border-radius: 8px;
  overflow: hidden;
}

.cc-faq .elementor-toggle-item {
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #E3E7EB !important;
  border-radius: 0 !important;
  background: var(--cc-white);
}

.cc-faq .elementor-toggle-item:last-child {
  border-bottom: 0 !important;
}

.cc-faq .elementor-tab-title {
  min-height: 44px;
  display: flex;
  align-items: center;
}

.cc-faq .elementor-tab-content {
  border-top: 1px solid #E8EBEF !important;
}

@media (max-width: 1024px) {
  .cc-shell {
    width: min(calc(100% - 40px), 960px) !important;
  }

  .cc-hero-grid {
    flex-direction: column !important;
    gap: 34px !important;
  }

  .cc-hero-copy,
  .cc-dashboard {
    width: 100% !important;
  }

  .cc-hero-copy {
    max-width: 720px;
  }

  .cc-hero-art svg {
    transform: translate3d(0, 34px, 0) scale(1.01);
  }

  .cc-process-grid::before {
    display: none;
  }

  .cc-difference-card {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.24);
  }

  .cc-difference-card:last-child {
    border-bottom: 0;
  }

  .cc-price-card {
    min-height: 0;
    height: auto;
  }
}

@media (max-width: 767px) {
  .cc-shell {
    width: calc(100% - 32px) !important;
  }

  .cc-hero-art {
    opacity: .24;
  }

  .cc-hero-art svg {
    transform: translate3d(0, 18px, 0);
  }

  .cc-hero-grid {
    flex-direction: column !important;
  }

  .cc-hero-copy,
  .cc-dashboard {
    width: 100% !important;
  }

  .cc-hero-ctas {
    flex-direction: column !important;
  }

  .cc-hero-ctas .elementor-widget-button,
  .cc-hero-ctas .elementor-button {
    width: 100%;
  }

  .cc-stat-item {
    border-right: 0 !important;
  }

  .cc-stat-item:nth-child(odd) {
    border-right: 1px solid rgba(255,255,255,.14) !important;
  }

  .cc-stat-item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .cc-service-card .elementor-icon-box-wrapper {
    grid-template-columns: 42px 1fr;
  }

  .cc-difference-card {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.24);
  }

  .cc-case-visual {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 10px !important;
  }

  .cc-case-visual > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 10px !important;
  }

  .cc-case-visual > .e-con,
  .cc-case-visual > .e-con-inner > .e-con,
  .cc-case-improvement {
    width: auto !important;
    min-width: 0;
  }

  .cc-case-results {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: minmax(0, 1fr) !important;
  }

  .cc-case-result:not(:last-child) {
    border-right: 1px solid rgba(255,255,255,.12);
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
  }

  .cc-price-card {
    min-height: 0;
    height: auto;
  }
}

@media (max-width: 480px) {
  .cc-shell {
    width: calc(100% - 28px) !important;
  }

  .cc-hero-shell {
    padding-top: 34px !important;
    padding-bottom: 30px !important;
    gap: 28px !important;
  }

  .cc-hero-title .elementor-heading-title {
    font-size: 34px !important;
    line-height: 1.08 !important;
  }

  .cc-hero-description p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .cc-dashboard-card {
    padding: 16px 14px 12px !important;
  }

  .cc-signal-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(2, auto) !important;
    gap: 10px !important;
  }

  .cc-local-card {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(120px, 1.1fr);
    grid-template-rows: auto auto 1fr;
    gap: 4px 10px !important;
    align-items: center !important;
    min-height: 0 !important;
    padding: 15px 14px !important;
  }

  .cc-local-card > :nth-child(1) {
    grid-column: 1;
    grid-row: 1;
  }

  .cc-local-card > :nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }

  .cc-local-card > :nth-child(3) {
    grid-column: 1;
    grid-row: 3;
  }

  .cc-local-card > :nth-child(4) {
    grid-column: 2;
    grid-row: 1 / span 3;
  }

  .cc-local-card .cc-svg-map {
    max-width: 190px;
    margin-inline: auto;
  }

  .cc-ai-card {
    min-height: 0 !important;
    padding: 15px 14px !important;
  }

  .cc-ai-kpi {
    align-items: center !important;
  }

  .cc-wins-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: minmax(0, 1fr) !important;
    gap: 6px !important;
  }

  .cc-win-card,
  .cc-win-card:last-child {
    grid-column: auto;
    min-height: 108px;
    padding: 10px 5px !important;
  }

  .cc-win-card .elementor-icon-box-wrapper {
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    text-align: center;
  }

  .cc-win-card .elementor-icon-box-content {
    width: 100%;
  }

  .cc-win-card .elementor-icon-box-title {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  .cc-win-card .elementor-icon-box-description {
    font-size: 8px !important;
    line-height: 1.35 !important;
  }

  .cc-case-card {
    padding: 16px 12px 14px !important;
    gap: 8px !important;
  }

  .cc-case-visual {
    grid-template-columns: minmax(0, 1fr) 86px;
    gap: 8px !important;
  }

  .cc-case-visual > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) 86px;
    gap: 8px !important;
  }

  .cc-case-improvement {
    min-width: 0;
    padding: 9px 5px !important;
  }

  .cc-case-results {
    padding-top: 9px;
  }

  .cc-case-result {
    padding: 6px 4px !important;
  }

  .cc-case-result .elementor-icon-box-wrapper {
    flex-direction: column;
    justify-content: flex-start;
    gap: 5px;
    text-align: center;
  }

  .cc-case-result .elementor-icon-box-content {
    width: 100%;
  }

  .cc-case-result .elementor-icon {
    font-size: 18px !important;
  }

  .cc-case-result .elementor-icon-box-title {
    font-size: 13px !important;
    line-height: 1.1 !important;
  }

  .cc-case-result .elementor-icon-box-description {
    font-size: 8px !important;
    line-height: 1.25 !important;
  }

  .cc-process-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(4, auto) !important;
    gap: 12px !important;
  }

  .cc-process-grid::before {
    display: block;
    top: 22px;
    bottom: 22px;
    left: 21px;
    right: auto;
    border-top: 0;
    border-left: 1px dashed #9BA5B1;
  }

  .cc-process-step {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 3px 14px !important;
    align-items: center !important;
    padding: 0 0 12px !important;
  }

  .cc-process-number {
    grid-column: 1;
    grid-row: 1 / span 2;
    margin-inline: 0;
  }

  .cc-process-step > .elementor-widget-heading:not(.cc-process-number),
  .cc-process-step > .elementor-widget-text-editor,
  .cc-process-step > .e-con-inner > .elementor-widget-heading:not(:first-child),
  .cc-process-step > .e-con-inner > .elementor-widget-text-editor {
    grid-column: 2;
    width: 100%;
  }

  .cc-process-step > .elementor-widget-heading:not(.cc-process-number) .elementor-heading-title,
  .cc-process-step > .e-con-inner > .elementor-widget-heading:not(:first-child) .elementor-heading-title,
  .cc-process-step > .elementor-widget-text-editor,
  .cc-process-step > .elementor-widget-text-editor p,
  .cc-process-step > .e-con-inner > .elementor-widget-text-editor,
  .cc-process-step > .e-con-inner > .elementor-widget-text-editor p {
    text-align: left !important;
  }

  .cc-difference-card {
    padding: 15px 4px !important;
  }

  .cc-difference-card .elementor-icon-box-wrapper {
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 12px;
    text-align: left !important;
  }

  .cc-price-card {
    padding: 20px 18px !important;
  }
}

@media (max-width: 359px) {
  .cc-shell {
    width: calc(100% - 24px) !important;
  }

  .cc-hero-title .elementor-heading-title {
    font-size: 31px !important;
    line-height: 1.1 !important;
  }

  .cc-hero-ctas .elementor-button {
    min-height: 46px;
    padding-inline: 14px !important;
    font-size: 13px !important;
  }

  .cc-svg-donut {
    width: 66px;
    flex-basis: 66px;
  }

  .cc-case-visual {
    grid-template-columns: minmax(0, 1fr) 76px;
    gap: 6px !important;
  }

  .cc-case-visual > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) 76px;
    gap: 6px !important;
  }

  .cc-case-improvement {
    width: auto !important;
  }

  .cc-section-title .elementor-heading-title {
    font-size: 25px !important;
  }

  .cc-faq .elementor-tab-title {
    padding-inline: 12px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cc-service-card {
    transition: none;
  }
}

/* Inline content accents moved out of Elementor content. */
.cc-badge-light {
  color: #FFFFFF;
}

.cc-star {
  color: #FFD43B;
}

.cc-now-badge {
  padding: 4px 7px;
  border-radius: 3px;
  background: var(--cc-red);
  font-size: .42em;
  vertical-align: middle;
}

.cc-inline-growth {
  color: var(--cc-green);
  font-size: .48em;
}

.cc-price-unit {
  font-size: .42em;
  font-weight: 600;
}
