/* Shared components (header / page title, etc.) */

/* Page title component */
.ng-pageTitle{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:32px;
  padding:200px 0 56px;
}
.ng-pageTitle__left{display:flex;flex-direction:column;gap:12px;width:100%}
.ng-pageTitle__kicker{display:flex;align-items:center;gap:8px}
.ng-pageTitle__dot{width:8px;height:8px;border-radius:999px;background:var(--accent)}
.ng-pageTitle__kickerText{font-weight:500;font-size:20px;line-height:1;color:var(--text)}
.ng-pageTitle__title{
  margin:0;
  font-family:"Open Sans",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
  font-weight:600;
  font-size:96px;
  line-height:1;
  letter-spacing:.01em;
  color:var(--text);
  white-space: pre;
}
.ng-pageTitle__desc{
  margin:0;
  max-width:420px;
  text-align:left;
  font-size:18px;
  line-height:1.6;
  color:var(--text);
}

.ng-pageTitle--side{
  flex-direction:row;
  align-items:flex-end;
  justify-content:space-between;
}
.ng-pageTitle--side .ng-pageTitle__left{width:auto}
.ng-pageTitle--side .ng-pageTitle__desc{
  margin-left:0;
  max-width:420px;
}
.ng-pageTitle:not(.ng-pageTitle--side) .ng-pageTitle__desc{
  margin-top:8px;
}

@media (max-width: 1024px){
  .ng-pageTitle{padding:152px 0 40px}
  .ng-pageTitle__title{font-size:64px}
  .ng-pageTitle__desc{font-size:16px}
}

