@charset "UTF-8";
/*
    Theme Name: PolyPress
    Text Domain: polypress
    Version: 1.0.0
    Description: A modern WordPress theme for PolyPress
    Author: PolyPress
*/
/* --------------------------------------------------------- */
/* GLOBAL */
/* --------------------------------------------------------- */
/* 
  _____  ______  _____ ______ _______ 
 |  __ \|  ____|/ ____|  ____|__   __|
 | |__) | |__  | (___ | |__     | |   
 |  _  /|  __|  \___ \|  __|    | |   
 | | \ \| |____ ____) | |____   | |   
 |_|  \_\______|_____/|______|  |_|   

*/
/* --------------------------------------------------------- */
/*///////////// SUBATOMICS/RESET start /////////////*/
/* Based on this article https://andy-bell.co.uk/a-modern-css-reset/ */
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
* {
  margin: 0;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
li > h1,
li > h2,
li > h3,
li > h4,
li > h5,
li > h6 {
  display: inline;
}

/*///////////// SUBATOMICS/RESET end /////////////*/
/* --------------------------------------------------------- */
/* --------------------------------------------------------- */
/* 
   _____ ______ _   _ ______ _____            _      
  / ____|  ____| \ | |  ____|  __ \     /\   | |     
 | |  __| |__  |  \| | |__  | |__) |   /  \  | |     
 | | |_ |  __| | . ` |  __| |  _  /   / /\ \ | |     
 | |__| | |____| |\  | |____| | \ \  / ____ \| |____ 
  \_____|______|_| \_|______|_|  \_\/_/    \_\______|


*/
/* --------------------------------------------------------- */
/*///////////// GLOBAL/GENERAL start /////////////*/
html {
  scroll-behavior: smooth;
}

* {
  scroll-margin-top: 120px;
}

body {
  overflow-x: hidden;
}

main {
  padding-top: 120px;
}

@media (max-width: 959px) {
  main {
    padding-top: 80px;
  }
}
/*///////////// GLOBAL/GENERAL end /////////////*/
/* --------------------------------------------------------- */
/* --------------------------------------------------------- */
/* 
  _________     _______   ____   _____ _____            _____  _    ___     __
 |__   __\ \   / /  __ \ / __ \ / ____|  __ \     /\   |  __ \| |  | \ \   / /
    | |   \ \_/ /| |__) | |  | | |  __| |__) |   /  \  | |__) | |__| |\ \_/ / 
    | |    \   / |  ___/| |  | | | |_ |  _  /   / /\ \ |  ___/|  __  | \   /  
    | |     | |  | |    | |__| | |__| | | \ \  / ____ \| |    | |  | |  | |   
    |_|     |_|  |_|     \____/ \_____|_|  \_\/_/    \_\_|    |_|  |_|  |_|   

*/
/* --------------------------------------------------------- */
/*///////////// SUBATOMICS/TYPOGRAPHY start /////////////*/
:root {
  --sans-serif-font-family: "Figtree";
  --serif-font-family: "Lora";
  --mono-font-family: "Anonymous Pro";
  --display-font-family: var(--sans-serif-font-family);
  --body-text-font-family: var(--sans-serif-font-family);
  --captions-font-family: var(--sans-serif-font-family);
  --sans-fallback-fonts: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  --serif-fallback-fonts: serif;
}

html {
  font-size: 16px;
}

* {
  font-kerning: normal;
  font-size: inherit;
}

/* FONT FAMILIES */
* {
  font-family: var(--captions-font-family), var(--sans-fallback-fonts);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--display-font-family), var(--sans-fallback-fonts);
}

p, main li, p strong, p span, main li strong, th, td {
  font-family: var(--body-text-font-family), var(--sans-fallback-fonts);
}

button, a.button, small, .mini {
  font-family: var(--captions-font-family), var(--sans-fallback-fonts);
}

pre, code, pre code, pre code span {
  font-family: var(--mono-font-family), monospace;
}

em, i, article a {
  font-family: inherit;
}

/* TEXT WRAP */
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

p {
  text-wrap: pretty;
}

/* LIGATURES */
* {
  -ms-font-feature-settings: "kern";
  font-feature-settings: "kern";
}

h1, h2, h3, h4, h5, h6, button, a.button, a small, small {
  font-variant-ligatures: discretionary-ligatures;
  -ms-font-feature-settings: "kern", "liga", "calt";
  font-feature-settings: "kern", "liga", "calt";
}

p, p a, li, p strong, p span, li strong {
  -ms-font-feature-settings: "kern", "liga", "clig", "calt";
  font-feature-settings: "kern", "liga", "clig", "calt";
}

/* TEXT STYLES */
.title-1 {
  font-size: 3.2rem;
  line-height: 110%;
  font-weight: 700;
  font-variation-settings: "wght" 800;
  letter-spacing: -0.5px;
  margin-bottom: 2.5rem;
}

.title-2 {
  font-size: 2.2rem;
  line-height: 110%;
  font-weight: 700;
  font-variation-settings: "wght" 800;
  letter-spacing: -0.4px;
  margin-bottom: 2rem;
}

h1, .heading-1 {
  font-size: 2rem;
  line-height: 115%;
  font-weight: 700;
  font-variation-settings: "wght" 800;
  letter-spacing: -0.25px;
  margin-bottom: 4rem;
}

h2, .heading-2 {
  font-size: 1.75rem;
  line-height: 120%;
  font-weight: 600;
  font-variation-settings: "wght" 700;
  letter-spacing: -0.5px;
  margin-bottom: 2rem;
}

h3, .heading-3 {
  font-size: 1.5rem;
  line-height: 120%;
  font-weight: 500;
  font-variation-settings: "wght" 600;
  letter-spacing: -0.1px;
  margin-bottom: 1rem;
}

h4, .heading-4 {
  font-size: 1.375rem;
  line-height: 120%;
  font-weight: 500;
  font-variation-settings: "wght" 600;
  letter-spacing: -0.1px;
  margin-bottom: 1rem;
}

h5, .heading-5 {
  font-size: 1.25rem;
  line-height: 120%;
  font-weight: 500;
  font-variation-settings: "wght" 600;
  letter-spacing: -0.1px;
  margin-bottom: 1rem;
}

h6, .heading-6 {
  font-size: 1.2rem;
  line-height: 120%;
  font-weight: 500;
  font-variation-settings: "wght" 600;
  letter-spacing: -0.1px;
  margin-bottom: 1rem;
}

p, main ul {
  margin-bottom: 2rem;
}

p, p a, li, p strong, p span, li strong, th, td {
  font-size: 1.2rem;
  line-height: 150%;
  letter-spacing: 0.02px;
}

pre, code, pre code {
  font-size: 1.2rem;
  line-height: 133%;
}

small, .caption, .caption-uppercase {
  font-size: 1rem;
  line-height: 133%;
}

.caption.uppercase, .caption-uppercase {
  text-transform: uppercase;
  letter-spacing: 2px;
}

.mini {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

strong, b {
  font-weight: 600;
  font-variation-settings: "wght" 600;
}

@media (min-width: 720px) {
  .title-1 {
    font-size: 3.75rem;
  }
  .title-2 {
    font-size: 3rem;
  }
  h1, .heading-1 {
    font-size: 2.75rem;
  }
  h2, .heading-2 {
    font-size: 2.5rem;
  }
  h3, .heading-3 {
    font-size: 2.1rem;
  }
  h4, .heading-4 {
    font-size: 1.75rem;
  }
  h5, .heading-5 {
    font-size: 1.6rem;
  }
  h6, .heading-6 {
    font-size: 1.4rem;
  }
}
@media (min-width: 1200px) {
  .title-1 {
    font-size: 5.25rem;
    line-height: 100%;
    letter-spacing: -1px;
  }
  .title-2 {
    font-size: 4.25rem;
    letter-spacing: -1px;
  }
  h1, .heading-1 {
    font-size: 3.25rem;
    letter-spacing: 0.5px;
  }
  p, p a, li, p strong, p span, li strong, th, td {
    font-size: 1.25rem;
  }
}
@media (min-width: 1380px) {
  .title-1 {
    font-size: 7.5rem;
  }
  .title-2 {
    font-size: 5rem;
  }
}
/*///////////// SUBATOMICS/TYPOGRAPHY end /////////////*/
/* --------------------------------------------------------- */
/* --------------------------------------------------------- */
/*
    _____ ____  _      ____  _____   _____ 
  / ____/ __ \| |    / __ \|  __ \ / ____|
 | |   | |  | | |   | |  | | |__) | (___  
 | |   | |  | | |   | |  | |  _  / \___ \ 
 | |___| |__| | |___| |__| | | \ \ ____) |
  \_____\____/|______\____/|_|  \_\_____/ 

*/
/* --------------------------------------------------------- */
/*///////////// SUBATOMICS/COLORS start /////////////*/
:root {
  /* ACCENT */
  --primary-accent-500: var(--indigo-500);
  --primary-accent-700: var(--indigo-700);
  --primary-accent-800: var(--indigo-800);
  --primary-accent-900: var(--indigo-900);
  --primary-accent-07pct: var(--indigo-500-07pct);
  --primary-accent-30pct: var(--indigo-500-30pct);
  --primary-accent-50pct: var(--indigo-500-50pct);
  --primary-accent-90pct: var(--indigo-500-90pct);
  --accent-gradient-start: #D837F8;
  --accent-gradient-end: #3747F8;
  --accent-color-gradient: linear-gradient(45deg, var(--accent-gradient-start), var(--accent-gradient-end));
  /* WHITE */
  --white: hsl(0, 0%, 100%);
  --off-white: hsl(222, 38%, 95%);
  --off-white-70pct: hsl(222, 38%, 95%, 0.7);
  --white-90pct: hsla(0, 0%, 100%, 0.9);
  --white-80pct: hsla(0, 0%, 100%, 0.8);
  --white-70pct: hsla(0, 0%, 100%, 0.7);
  --white-60pct: hsla(0, 0%, 100%, 0.6);
  --white-50pct: hsla(0, 0%, 100%, 0.5);
  --white-40pct: hsla(0, 0%, 100%, 0.4);
  --white-30pct: hsla(0, 0%, 100%, 0.3);
  --white-20pct: hsla(0, 0%, 100%, 0.2);
  --white-10pct: hsla(0, 0%, 100%, 0.1);
  /* GRAY */
  --gray: hsl(240, 0%, 48%);
  --off-gray: hsl(0, 0%, 30%);
  --gray-800: hsl(0, 0%, 20%);
  --gray-900: hsl(0, 0%, 14%);
  /* BLACK */
  --black: hsl(0, 0%, 0%);
  --black-90pct: hsla(0, 0%, 0%, 0.9);
  --black-80pct: hsla(0, 0%, 0%, 0.8);
  --black-70pct: hsla(0, 0%, 0%, 0.7);
  --black-60pct: hsla(0, 0%, 0%, 0.6);
  --black-50pct: hsla(0, 0%, 0%, 0.5);
  --black-40pct: hsla(0, 0%, 0%, 0.4);
  --black-30pct: hsla(0, 0%, 0%, 0.3);
  --black-20pct: hsla(0, 0%, 0%, 0.2);
  --black-10pct: hsla(0, 0%, 0%, 0.1);
  /* IVORY */
  --ivory-050: hsl(200, 50%, 96%);
  --ivory-075: hsl(200, 30%, 90%);
  --ivory-100: hsl(200, 32%, 86%);
  --ivory-150: hsl(202, 32%, 83%);
  --ivory-200: hsl(205, 32%, 79%);
  /* SLATE */
  --slate-050: hsl(231, 64%, 96%);
  --slate-100: hsl(210, 11%, 85%);
  --slate-200: hsl(218, 7%, 76%);
  --slate-300: hsl(224, 7%, 68%);
  --slate-400: hsl(233, 8%, 60%);
  --slate-500: hsl(226, 5%, 50%);
  --slate-600: hsl(233, 8%, 42%);
  --slate-700: hsl(228, 9%, 32%);
  --slate-800: hsl(233, 25%, 24%);
  --slate-850: hsl(233, 40%, 15%);
  --slate-900: hsl(233, 45%, 12%);
  --slate-950: hsl(234, 80%, 6%);
  --slate-975: hsl(234, 100%, 3%);
  --slate-050-90pct: hsla(231, 64%, 96%, 0.9);
  --slate-050-80pct: hsla(231, 64%, 96%, 0.8);
  --slate-050-70pct: hsla(231, 64%, 96%, 0.7);
  --slate-050-60pct: hsla(231, 64%, 96%, 0.6);
  --slate-050-50pct: hsla(231, 64%, 96%, 0.5);
  --slate-050-40pct: hsla(231, 64%, 96%, 0.4);
  --slate-050-30pct: hsla(231, 64%, 96%, 0.3);
  --slate-050-20pct: hsla(231, 64%, 96%, 0.2);
  --slate-050-10pct: hsla(231, 64%, 96%, 0.1);
  --slate-950-90pct: hsla(234, 61%, 6%, 0.9);
  --slate-950-80pct: hsla(234, 61%, 6%, 0.8);
  --slate-950-70pct: hsla(234, 61%, 6%, 0.7);
  --slate-950-60pct: hsla(234, 61%, 6%, 0.6);
  --slate-950-50pct: hsla(234, 61%, 6%, 0.5);
  --slate-950-40pct: hsla(234, 61%, 6%, 0.4);
  --slate-950-30pct: hsla(234, 61%, 6%, 0.3);
  --slate-950-20pct: hsla(234, 61%, 6%, 0.2);
  --slate-950-10pct: hsla(234, 61%, 6%, 0.1);
  /* INDIGO */
  --indigo-500: hsl(259, 100%, 59%);
  --indigo-500-07pct: hsla(259, 100%, 59%, 0.07);
  --indigo-500-30pct: hsla(259, 100%, 59%, 0.3);
  --indigo-500-50pct: hsla(259, 100%, 59%, 0.5);
  --indigo-500-90pct: hsla(259, 100%, 59%, 0.9);
  --indigo-600: hsl(259, 71%, 49%);
  --indigo-700: hsl(259, 76%, 39%);
  --indigo-800: hsl(259, 84%, 29%);
  --indigo-900: hsl(259, 100%, 16%);
  --indigo-950: hsl(240, 53%, 10%);
}

/* --------------------------------------------------------- */
/* --------------------------------------------------------- */
/* 
    __  __  ____  _____  ______  _____ 
 |  \/  |/ __ \|  __ \|  ____|/ ____|
 | \  / | |  | | |  | | |__  | (___  
 | |\/| | |  | | |  | |  __|  \___ \ 
 | |  | | |__| | |__| | |____ ____) |
 |_|  |_|\____/|_____/|______|_____/ 

*/
/* --------------------------------------------------------- */
/*///////////// SUBATOMICS/MODES start /////////////*/
:root {
  --light-mode-background: var(--ivory-050);
  --light-mode-background-70pct: var(--off-white-70pct);
  --light-mode-text: var(--black-80pct);
  --dark-mode-background: var(--slate-975);
  --dark-mode-background-70pct: var(--slate-950-70pct);
  --dark-mode-text: var(--white-80pct);
}

html :has(body.light-mode), .light-mode {
  background: var(--light-mode-background);
}

html :has(body.dark-mode), .dark-mode {
  background: var(--dark-mode-background);
}

@media screen and (max-width: 767px) {
  body.light-mode nav.header-nav {
    background: var(--light-mode-background-70pct);
    border: 1px solid var(--black-20pct);
  }
  body.dark-mode nav.header-nav {
    background: var(--dark-mode-background-70pct);
    border: 1px solid var(--white-20pct);
  }
}
@media screen and (min-width: 768px) {
  body.light-mode nav.header-nav.position-fixed {
    background: var(--light-mode-background-70pct);
    border: 1px solid var(--black-20pct);
  }
  body.dark-mode nav.header-nav.position-fixed {
    background: var(--dark-mode-background-70pct);
    border: 1px solid var(--white-20pct);
  }
}
html :has(body.light-mode), .light-mode h1, .light-mode h2, .light-mode h3, .light-mode h4, .light-mode h5, .light-mode h6, .light-mode .bold {
  color: black;
}

html :has(body.dark-mode), .dark-mode h1, .dark-mode h2, .dark-mode h3, .dark-mode h4, .dark-mode h5, .dark-mode h6, .dark-mode .bold {
  color: white;
}

.light-mode p, .light-mode li, .light-mode pre code, .light-mode div {
  color: var(--light-mode-text);
}

.dark-mode p, .dark-mode li, .dark-mode pre code, .dark-mode div {
  color: var(--dark-mode-text);
}

.light-mode hr {
  border-color: var(--black-20pct);
}

.dark-mode hr {
  border-color: var(--white-20pct);
}

.light-mode a:not(.button):not(header a):not(.wp-block-button__link) {
  color: var(--light-mode-text);
}

.dark-mode a:not(.button):not(header a):not(.wp-block-button__link) {
  color: var(--dark-mode-text);
}

.light-mode a:not(.button):hover:not(header a):not(.wp-block-button__link) {
  color: var(--primary-accent-500);
}

.dark-mode a:not(.button):hover:not(header a):not(.wp-block-button__link) {
  color: var(--primary-accent-500);
}

.light-mode small {
  color: black;
}

.dark-mode small {
  color: white;
}

.light-mode pre, .dark-mode pre {
  background: var(--light-mode-text);
  border: 1px solid rgba(255, 255, 255, 0.231372549);
}

.light-mode pre code, .dark-mode pre code {
  color: white;
}

.light-mode p code {
  background: var(--light-mode-text);
  color: white;
}

.dark-mode p code {
  background: var(--gray-900);
  color: var(--butterscotch);
}

/*///////////// SUBATOMICS/MODES end ////////////*/
/* --------------------------------------------------------- */
/* 

*/
/* --------------------------------------------------------- */
/*///////////// GLOBAL-STYLES/CONTAINERS start /////////////*/
.container, .container-narrow,
article > .wp-block-columns,
article > .wp-block-group, main > .wp-block-columns,
main > .wp-block-group {
  width: calc(100% - 16px);
  margin: 0 auto;
}

.container,
article > .wp-block-columns,
article > .wp-block-group, main > .wp-block-columns,
main > .wp-block-group {
  max-width: 1440px;
}

.container-narrow {
  max-width: 840px;
}

.full-width {
  max-width: none !important;
}

@media (min-width: 750px) {
  .container, .container-narrow,
  article > .wp-block-columns,
  article > .wp-block-group, main > .wp-block-columns,
  main > .wp-block-group {
    width: calc(100% - 80px);
  }
}
/* Mobile Grid Layout */
@media (max-width: 720px) {
  .wp-block-group.is-layout-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  /* reverse columns on mobile for .services-container */
  .services-container {
    flex-direction: column-reverse !important;
  }
  .mobile-margin-bottom-000 {
    margin-bottom: 0 !important;
  }
  .mobile-margin-bottom-050 {
    margin-bottom: 0.5rem !important;
  }
  .mobile-margin-bottom-100 {
    margin-bottom: 1rem !important;
  }
  .mobile-margin-bottom-175 {
    margin-bottom: 1.75rem !important;
  }
  .mobile-margin-bottom-200 {
    margin-bottom: 2rem !important;
  }
  .mobile-margin-bottom-250 {
    margin-bottom: 2.5rem !important;
  }
  .mobile-margin-bottom-300 {
    margin-bottom: 3rem !important;
  }
  .mobile-margin-bottom-400 {
    margin-bottom: 4rem !important;
  }
  .mobile-margin-bottom-500 {
    margin-bottom: 5rem !important;
  }
  .mobile-margin-bottom-600 {
    margin-bottom: 6rem !important;
  }
  .mobile-margin-top-000 {
    margin-top: 0 !important;
  }
  .mobile-margin-top-050 {
    margin-top: 0.5rem !important;
  }
  .mobile-margin-top-100 {
    margin-top: 1rem !important;
  }
  .mobile-margin-top-175 {
    margin-top: 1.75rem !important;
  }
  .mobile-margin-top-200 {
    margin-top: 2rem !important;
  }
  .mobile-margin-top-250 {
    margin-top: 2.5rem !important;
  }
  .mobile-margin-top-300 {
    margin-top: 3rem !important;
  }
  .mobile-margin-top-400 {
    margin-top: 4rem !important;
  }
  .mobile-padding-bottom-000 {
    padding-bottom: 0 !important;
  }
  .mobile-padding-bottom-050 {
    padding-bottom: 0.5rem !important;
  }
  .mobile-padding-bottom-100 {
    padding-bottom: 1rem !important;
  }
  .mobile-padding-bottom-175 {
    padding-bottom: 1.75rem !important;
  }
  .mobile-padding-bottom-200 {
    padding-bottom: 2rem !important;
  }
  .mobile-padding-bottom-250 {
    padding-bottom: 2.5rem !important;
  }
  .mobile-padding-bottom-300 {
    padding-bottom: 3rem !important;
  }
  .mobile-padding-bottom-400 {
    padding-bottom: 4rem !important;
  }
  .mobile-padding-bottom-500 {
    padding-bottom: 5rem !important;
  }
  .mobile-padding-bottom-600 {
    padding-bottom: 6rem !important;
  }
  .mobile-padding-top-000 {
    padding-top: 0 !important;
  }
  .mobile-padding-top-050 {
    padding-top: 0.5rem !important;
  }
  .mobile-padding-top-100 {
    padding-top: 1rem !important;
  }
  .mobile-padding-top-175 {
    padding-top: 1.75rem !important;
  }
  .mobile-padding-top-200 {
    padding-top: 2rem !important;
  }
  .mobile-padding-top-250 {
    padding-top: 2.5rem !important;
  }
  .mobile-padding-top-300 {
    padding-top: 3rem !important;
  }
  .mobile-padding-top-400 {
    padding-top: 4rem !important;
  }
  .mobile-gap-000 {
    gap: 0 !important;
  }
  .mobile-gap-050 {
    gap: 0.5rem !important;
  }
  .mobile-gap-075 {
    gap: 0.75rem !important;
  }
  .mobile-gap-100 {
    gap: 1rem !important;
  }
  .mobile-gap-150 {
    gap: 1.5rem !important;
  }
  .mobile-gap-175 {
    gap: 1.75rem !important;
  }
  .mobile-gap-200 {
    gap: 2rem !important;
  }
  .mobile-gap-250 {
    gap: 2.5rem !important;
  }
  .mobile-gap-300 {
    gap: 3rem !important;
  }
  .mobile-gap-400 {
    gap: 4rem !important;
  }
  .mobile-gap-500 {
    gap: 5rem !important;
  }
  .mobile-gap-600 {
    gap: 6rem !important;
  }
  .mobile-text-left {
    text-align: left !important;
  }
  .mobile-text-center {
    text-align: center !important;
  }
  .mobile-text-right {
    text-align: right !important;
  }
  .mobile-text-justify {
    text-align: justify !important;
  }
  .mobile-flex-row {
    flex-direction: row !important;
  }
  .mobile-flex-column {
    flex-direction: column !important;
  }
  .mobile-flex-row-reverse {
    flex-direction: row-reverse !important;
  }
  .mobile-flex-column-reverse {
    flex-direction: column-reverse !important;
  }
  .mobile-center-with-margins {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-000 {
    margin-bottom: 0 !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-050 {
    margin-bottom: 0.5rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-100 {
    margin-bottom: 1rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-175 {
    margin-bottom: 1.75rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-200 {
    margin-bottom: 2rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-250 {
    margin-bottom: 2.5rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-300 {
    margin-bottom: 3rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-400 {
    margin-bottom: 4rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-500 {
    margin-bottom: 5rem !important;
  }
  [class*=margin-bottom-].mobile-margin-bottom-600 {
    margin-bottom: 6rem !important;
  }
  [class*=margin-top-].mobile-margin-top-000 {
    margin-top: 0 !important;
  }
  [class*=margin-top-].mobile-margin-top-050 {
    margin-top: 0.5rem !important;
  }
  [class*=margin-top-].mobile-margin-top-100 {
    margin-top: 1rem !important;
  }
  [class*=margin-top-].mobile-margin-top-175 {
    margin-top: 1.75rem !important;
  }
  [class*=margin-top-].mobile-margin-top-200 {
    margin-top: 2rem !important;
  }
  [class*=margin-top-].mobile-margin-top-250 {
    margin-top: 2.5rem !important;
  }
  [class*=margin-top-].mobile-margin-top-300 {
    margin-top: 3rem !important;
  }
  [class*=margin-top-].mobile-margin-top-400 {
    margin-top: 4rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-000 {
    padding-bottom: 0 !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-050 {
    padding-bottom: 0.5rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-100 {
    padding-bottom: 1rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-175 {
    padding-bottom: 1.75rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-200 {
    padding-bottom: 2rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-250 {
    padding-bottom: 2.5rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-300 {
    padding-bottom: 3rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-400 {
    padding-bottom: 4rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-500 {
    padding-bottom: 5rem !important;
  }
  [class*=padding-bottom-].mobile-padding-bottom-600 {
    padding-bottom: 6rem !important;
  }
  [class*=padding-top-].mobile-padding-top-000 {
    padding-top: 0 !important;
  }
  [class*=padding-top-].mobile-padding-top-050 {
    padding-top: 0.5rem !important;
  }
  [class*=padding-top-].mobile-padding-top-100 {
    padding-top: 1rem !important;
  }
  [class*=padding-top-].mobile-padding-top-175 {
    padding-top: 1.75rem !important;
  }
  [class*=padding-top-].mobile-padding-top-200 {
    padding-top: 2rem !important;
  }
  [class*=padding-top-].mobile-padding-top-250 {
    padding-top: 2.5rem !important;
  }
  [class*=padding-top-].mobile-padding-top-300 {
    padding-top: 3rem !important;
  }
  [class*=padding-top-].mobile-padding-top-400 {
    padding-top: 4rem !important;
  }
  [class*=gap-].mobile-gap-000 {
    gap: 0 !important;
  }
  [class*=gap-].mobile-gap-050 {
    gap: 0.5rem !important;
  }
  [class*=gap-].mobile-gap-075 {
    gap: 0.75rem !important;
  }
  [class*=gap-].mobile-gap-100 {
    gap: 1rem !important;
  }
  [class*=gap-].mobile-gap-150 {
    gap: 1.5rem !important;
  }
  [class*=gap-].mobile-gap-175 {
    gap: 1.75rem !important;
  }
  [class*=gap-].mobile-gap-200 {
    gap: 2rem !important;
  }
  [class*=gap-].mobile-gap-250 {
    gap: 2.5rem !important;
  }
  [class*=gap-].mobile-gap-300 {
    gap: 3rem !important;
  }
  [class*=gap-].mobile-gap-400 {
    gap: 4rem !important;
  }
  [class*=gap-].mobile-gap-500 {
    gap: 5rem !important;
  }
  [class*=gap-].mobile-gap-600 {
    gap: 6rem !important;
  }
  [class*=flex-].mobile-flex-row {
    flex-direction: row !important;
  }
  [class*=flex-].mobile-flex-column {
    flex-direction: column !important;
  }
  [class*=flex-].mobile-flex-row-reverse {
    flex-direction: row-reverse !important;
  }
  [class*=flex-].mobile-flex-column-reverse {
    flex-direction: column-reverse !important;
  }
}
/* Custom Grid System */
.grid-layout {
  display: grid;
  gap: 2rem;
}

/* Default mobile layout - single column */
@media (max-width: 720px) {
  .grid-layout {
    grid-template-columns: 1fr;
  }
  .grid-layout.mobile-2-cols {
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-layout.mobile-3-cols {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-layout.mobile-4-cols {
    grid-template-columns: repeat(4, 1fr);
  }
  /* Reset WordPress columns on mobile */
  .wp-block-columns {
    /* display: block !important; */
  }
  .wp-block-columns > .wp-block-column {
    margin-left: 0 !important;
  }
  .wp-block-columns > .wp-block-column:last-child {
    margin-bottom: 0 !important;
  }
}
/*///////////// GLOBAL-STYLES/CONTAINERS end /////////////*/
/* --------------------------------------------------------- */
.row {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media (min-width: 900px) {
  .row {
    flex-direction: row;
  }
}
.row .col {
  flex-grow: 1;
  width: 100%;
}

:root {
  --border-radius-sm: 3px;
  --border-radius-md: 8px;
  --border-radius-lg: 12px;
  --border-radius-xl: 16px;
  --border-radius-full: 100px;
  --border-radius-button: var(--border-radius-full);
  --border-radius-card: var(--border-radius-md);
}

.margin-top-000 {
  margin-top: 0 !important;
}

.margin-top-050 {
  margin-top: 0.5rem !important;
}

.margin-top-100 {
  margin-top: 1rem !important;
}

.margin-top-175 {
  margin-top: 1.75rem !important;
}

.margin-top-200 {
  margin-top: 2rem !important;
}

.margin-top-250 {
  margin-top: 2.5rem !important;
}

.margin-top-300 {
  margin-top: 3rem !important;
}

.margin-top-400 {
  margin-top: 4rem !important;
}

.margin-bottom-000 {
  margin-bottom: 0 !important;
}

.margin-bottom-050 {
  margin-bottom: 0.5rem !important;
}

.margin-bottom-100 {
  margin-bottom: 1rem !important;
}

.margin-bottom-175 {
  margin-bottom: 1.75rem !important;
}

.margin-bottom-200 {
  margin-bottom: 2rem !important;
}

.margin-bottom-250 {
  margin-bottom: 2.5rem !important;
}

.margin-bottom-300 {
  margin-bottom: 3rem !important;
}

.margin-bottom-400 {
  margin-bottom: 4rem !important;
}

.margin-bottom-500 {
  margin-bottom: 5rem !important;
}

.margin-bottom-600 {
  margin-bottom: 6rem !important;
}

.padding-top-000 {
  padding-top: 0 !important;
}

.padding-top-050 {
  padding-top: 0.5rem !important;
}

.padding-top-100 {
  padding-top: 1rem !important;
}

.padding-top-200 {
  padding-top: 2rem !important;
}

.padding-top-300 {
  padding-top: 3rem !important;
}

.padding-top-400 {
  padding-top: 4rem !important;
}

.padding-bottom-000 {
  padding-bottom: 0 !important;
}

.padding-bottom-050 {
  padding-bottom: 0.5rem !important;
}

.padding-bottom-100 {
  padding-bottom: 1rem !important;
}

.padding-bottom-200 {
  padding-bottom: 2rem !important;
}

.padding-bottom-300 {
  padding-bottom: 3rem !important;
}

.padding-bottom-400 {
  padding-bottom: 4rem !important;
}

.gap-000 {
  gap: 0rem !important;
}

.gap-050 {
  gap: 0.5rem !important;
}

.gap-075 {
  gap: 0.75rem !important;
}

.gap-100 {
  gap: 1rem !important;
}

.gap-150 {
  gap: 1.5rem !important;
}

.gap-200 {
  gap: 2rem !important;
}

.gap-300 {
  gap: 3rem !important;
}

.gap-400 {
  gap: 4rem !important;
}

:root {
  --box-shadow-stroke: 0 0 0px 0.5px var(--slate-700);
  --box-shadow-stroke-50pct: 0 0 0px 0.5px var(--slate-800);
}

/* --------------------------------------------------------- */
/*
  ____  _    _ _______ _______ ____  _   _  _____ 
 |  _ \| |  | |__   __|__   __/ __ \| \ | |/ ____|
 | |_) | |  | |  | |     | | | |  | |  \| | (___  
 |  _ <| |  | |  | |     | | | |  | | . ` |\___ \ 
 | |_) | |__| |  | |     | | | |__| | |\  |____) |
 |____/ \____/   |_|     |_|  \____/|_| \_|_____/                                                  
*/
/* --------------------------------------------------------- */
/*///////////// GLOBAL/BUTTONS start /////////////*/
.wp-block-button, .wp-block-button__link, .wp-element-button {
  all: unset;
}

.wp-block-buttons {
  margin: 0;
}

button, a.button, input.button, .wp-element-button {
  font-size: 1rem;
}

button.small-button, a.small-button, input.small-button, .wp-element-button.small-button {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

:where(button, .button, .wp-element-button):not(.search-submit) {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  max-width: 100%;
  padding-inline: 24px;
  border: none;
  border-radius: var(--border-radius-button);
  background-color: var(--primary-accent-500);
  border: 2px solid var(--primary-accent-500);
  color: white;
  letter-spacing: 0.5px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  min-width: 140px;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 600;
  font-variation-settings: "wght" 600;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}
:where(button, .button, .wp-element-button):not(.search-submit):focus {
  outline: 2px solid var(--primary-accent-500);
  outline-offset: 2px;
}

@media (min-width: 768px) {
  button, .button, .wp-element-button {
    background-color: var(--primary-accent-90pct);
  }
}
button:hover, a.button:hover, input.button:hover, .wp-element-button:hover {
  text-decoration: none;
  background-color: var(--primary-accent-700);
}

/* BUTTON SIZES */
.small-button {
  height: 36px;
}

.large-button {
  height: 60px;
  min-width: 180px;
}

/* SECONDARY BUTTON */
.secondary-button {
  color: var(--primary-accent-500);
  background: none;
}
.secondary-button:focus {
  outline: 2px solid var(--primary-accent-500);
  outline-offset: 2px;
}

.secondary-button:hover, .tertiary-button:hover {
  color: white;
  background-color: var(--primary-accent-700);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.tertiary-button:not(:hover) {
  color: black;
  border-color: black;
  background: none;
}
.tertiary-button:not(:hover):focus {
  outline: 2px solid var(--primary-accent-500);
  outline-offset: 2px;
}

.dark-mode .tertiary-button:not(:hover) {
  color: white;
  border-color: white;
}

/*///////////// GLOBAL/BUTTONS end /////////////*/
/* --------------------------------------------------------- */
.fade-in {
  opacity: 0;
  transform: translateY(75px);
  transition: opacity 0.65s, transform 0.65s;
}

.visible {
  opacity: 1;
  transform: translateY(0);
  transition-timing-function: ease-out;
}

/* DISPLAY */
.d-none {
  display: none !important;
}

.d-block {
  display: block !important;
}

.d-inline {
  display: inline !important;
}

.uppercase {
  text-transform: uppercase;
}

/* MARGIN */
.margin-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.margin-right-auto {
  margin-left: 0 !important;
  margin-right: auto !important;
}

.margin-left-auto {
  margin-right: 0 !important;
  margin-left: auto !important;
}

/* OPACITY */
.opacity-0pct {
  opacity: 0;
}

.opacity-40pct {
  opacity: 0.4;
}

.opacity-30pct {
  opacity: 0.3;
}

.opacity-50pct {
  opacity: 0.5;
}

.opacity-75pct {
  opacity: 0.75;
}

.opacity-100pct {
  opacity: 1;
}

/* COLOR */
.color-accent {
  color: var(--primary-accent-500) !important;
}

.color-gradient {
  background: var(--accent-color-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.color-white {
  color: white !important;
}

.color-black {
  color: black !important;
}

/*Color on filter mode */
.accent-filter {
  filter: brightness(0) saturate(100%) invert(15%) sepia(66%) saturate(6358%) hue-rotate(339deg) brightness(96%) contrast(101%);
}

/* Font Weight */
.font-weight-400 {
  font-weight: 400 !important;
  font-variation-settings: "wght" 400 !important;
}

.font-weight-600 {
  font-weight: 600 !important;
  font-variation-settings: "wght" 600 !important;
}

.align-center {
  text-align: center;
}

.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.align-justify {
  text-align: justify;
}

/* FLEXBOX JUSTIFY CONTENT */
.justify-start {
  display: flex !important;
  justify-content: flex-start !important;
  flex-direction: column !important;
}

.justify-end {
  display: flex !important;
  justify-content: flex-end !important;
  flex-direction: column !important;
}

.justify-center {
  display: flex !important;
  justify-content: center !important;
  flex-direction: column !important;
}

.justify-between {
  display: flex !important;
  justify-content: space-between !important;
  flex-direction: column !important;
}

.justify-around {
  display: flex !important;
  justify-content: space-around !important;
  flex-direction: column !important;
}

.justify-evenly {
  display: flex !important;
  justify-content: space-evenly !important;
  flex-direction: column !important;
}

/* FLEXBOX ALIGN ITEMS */
.items-stretch {
  display: flex !important;
  align-items: stretch !important;
  flex-direction: column !important;
}

.items-start {
  display: flex !important;
  align-items: flex-start !important;
  flex-direction: column !important;
}

.items-end {
  display: flex !important;
  align-items: flex-end !important;
  flex-direction: column !important;
}

.items-center {
  display: flex !important;
  align-items: center !important;
  flex-direction: column !important;
}

.items-baseline {
  display: flex !important;
  align-items: baseline !important;
  flex-direction: column !important;
}

/* FLEXBOX FLEX BASIS */
.flex-basis-fit-content {
  flex-basis: fit-content !important;
}

/* LEGACY CLASSES - Keep for backward compatibility */
.space-between {
  display: flex !important;
  justify-content: space-between !important;
  align-items: stretch;
  flex-direction: column !important;
}

.space-around {
  display: flex !important;
  justify-content: space-around !important;
  align-items: stretch;
  flex-direction: column !important;
}

.medium-case-study-card {
  margin-bottom: 1.25rem;
  border-radius: 24px;
}
.medium-case-study-card > div {
  padding: 4rem;
}

/* --------------------------------------------------------- */
hr {
  margin-block: 6rem;
  border-width: 1px;
  width: calc(100% - 2rem);
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  border-color: var(--slate-850) !important;
}

.secondary-separator {
  max-width: 300px;
}

hr.vertical-hr {
  width: unset;
}

.transparent-separator {
  opacity: 0;
}

.small-separator {
  margin-block: 4rem;
}

.large-separator {
  margin-block: 8rem;
}

/* --------------------------------------------------------- */
/* --------------------------------------------------------- */
/* 

*/
/* --------------------------------------------------------- */
ul {
  list-style: none; /* Remove default bullets */
}

main ul {
  margin-bottom: 2rem;
}

main ul:not(.wp-block-latest-posts__list) li::before {
  content: "";
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  margin-left: -1.3em;
  vertical-align: middle;
  background-image: url(assets/images/spark-bullet.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0.75rem;
}

.hanging-list {
  padding-left: 24px;
}

.arrow-bullets li::before {
  content: "➜";
}

ul.checkmark-bullet li::before {
  content: "✓";
}

.spaced-list li {
  margin-bottom: 1.2rem;
}

ul.no-bullets li:before {
  display: none;
}

/* --------------------------------------------------------- */
.wp-block-embed iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  box-shadow: 0 0 2px black;
  border-radius: var(--border-radius-md);
}

.wp-block-latest-posts__featured-image img {
  border-radius: var(--border-radius-md);
}

@media (max-width: 959px) {
  .wp-block-image img[style*="width:160px"] {
    width: 140px !important;
  }
}
.archive-content-area {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
}

.posts-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  width: inherit;
}

.sidebar-widget {
  margin-bottom: 2rem;
}

a.tag {
  margin-right: 8px;
}

.post-card img {
  margin-bottom: 1.5rem;
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-top: -25px;
  max-width: unset;
  border-radius: var(--border-radius-card) var(--border-radius-card) 0 0;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.post-card h2, a.post-thumbnail-link {
  color: var(--primary-accent-500) !important;
}

a.post-thumbnail-link:hover h2 {
  color: var(--primary-accent-700) !important;
}

.post-card h2:hover, a.post-thumbnail-link:hover {
  color: var(--primary-accent-700) !important;
}

.post-card .article-meta, .cover .article-meta {
  margin-bottom: 1.5rem;
}

.post-navigation {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}
.post-navigation:has(> :only-child) {
  justify-content: center;
}
.post-navigation:has(> :only-child) .card {
  max-width: 600px;
  width: 100%;
}
.post-navigation .prev-post:empty,
.post-navigation .next-post:empty {
  display: none;
}

/* LATEST POSTS */
@media (max-width: 959px) {
  .wp-block-latest-posts.is-grid li {
    margin-right: 0;
  }
  .archive-content-area {
    flex-direction: column;
  }
  .archive-content-area .tags-widget {
    display: none;
  }
  .categories-widget {
    position: relative;
  }
  .categories-widget .categories-list {
    display: none;
    margin-top: 0.5rem;
    background: white;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    padding: 0.5rem 0.5rem 0.5rem 1.5rem;
    padding-left: 2.5rem;
  }
  .categories-widget.open .categories-list {
    display: block;
  }
  .categories-widget .categories-toggle {
    display: inline-flex;
    align-items: center;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 6px;
    padding: 0.2em 0.5em;
    margin-left: 0.5em;
    cursor: pointer;
    font-size: 1.2em;
    transition: background 0.2s;
  }
  .categories-widget .categories-toggle svg {
    transition: transform 0.2s;
  }
  .categories-widget.open .categories-toggle svg {
    transform: rotate(180deg);
  }
  .posts-container {
    grid-template-columns: 1fr;
    width: 100%;
  }
}
@media (min-width: 960px) {
  .categories-widget .categories-toggle {
    display: none;
  }
}
form label {
  display: block;
}

input {
  padding: 8px;
  border-radius: 2px;
  border: 1px solid var(--slate-300);
}

.search-form {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.search-form .search-field {
  flex: 1;
  padding: 8px 12px;
  border-radius: 4px;
  border: 1px solid var(--slate-300);
  background-color: var(--wp--preset--color--background);
  color: var(--wp--preset--color--foreground);
  transition: border-color 0.2s ease;
}
.search-form .search-field:focus {
  outline: none;
  border-color: var(--wp--preset--color--primary);
}
.search-form .search-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--wp--preset--color--foreground);
  transition: color 0.2s ease;
}
.search-form .search-submit:hover {
  color: var(--wp--preset--color--primary);
}
.search-form .search-submit svg {
  width: 20px;
  height: 20px;
}

.search-input-wrapper {
  display: flex;
}

@media (max-width: 950px) {
  form[aria-label="Contact form"] * {
    max-width: 100%;
    max-width: -webkit-fill-available;
  }
}
/* COMPONENTS */
/* --------------------------------------------------------- */
/* 
  _    _ ______          _____  ______ _____  
 | |  | |  ____|   /\   |  __ \|  ____|  __ \ 
 | |__| | |__     /  \  | |  | | |__  | |__) |
 |  __  |  __|   / /\ \ | |  | |  __| |  _  / 
 | |  | | |____ / ____ \| |__| | |____| | \ \ 
 |_|  |_|______/_/    \_\_____/|______|_|  \_\
*/
/* --------------------------------------------------------- */
/* HEADER start */
header {
  width: 100%;
  display: flex;
  position: fixed;
  top: 0;
  justify-content: center;
  z-index: 500;
}

.header-inner {
  max-width: 1440px;
  padding: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 90px;
  transition: all 0.5s;
}

header.position-fixed .header-inner {
  box-shadow: var(--box-shadow-stroke-50pct);
  padding: 15px 20px;
  background: var(--slate-975);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  transition: all 0.5s;
}

.custom-logo {
  margin: 0 !important;
  height: 45px;
}

.open-menu-button, .close-menu-button {
  border: none;
  border: none;
  height: 42px;
  width: 42px;
  padding: 0;
  display: flex;
  display: none; /* temporary for single page  */
  justify-content: center;
  align-items: center;
  min-width: unset !important;
}

.close-menu-button {
  display: none;
}

.open-menu .open-menu-button {
  display: none;
}

.menu-links {
  display: none;
}

.menu-links ul {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.menu-links ul ul {
  gap: 0;
}

.menu-links li {
  font-size: 1.5rem;
}

.menu-links a {
  color: white;
  -webkit-text-decoration: underline var(--primary-accent-500);
          text-decoration: underline var(--primary-accent-500);
  text-underline-offset: 6px;
  font-size: 2rem;
}

.menu-links a.button {
  font-size: 1rem;
}

.menu-links li:not(.current-menu-item) a:hover {
  color: var(--primary-accent-500) !important;
}

.nav-dropdown-sub-menu {
  display: flex;
  position: relative;
  margin-top: 20px;
}

.nav-dropdown-sub-menu li:not(:first-child).nav-dropdown-sub-menu-title {
  margin-top: 24px;
}

.header-buttons {
  display: none;
}

.nav-dropdown a {
  display: flex;
  align-items: flex-end;
}

.nav-dropdown-sub-menu li {
  margin-bottom: 8px;
}

@media (max-width: 959px) {
  header .header-inner {
    box-shadow: var(--box-shadow-stroke);
    padding: 15px 20px;
    background: var(--black-80pct);
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    transition: unset;
  }
  header .header-inner:has(.open-menu) {
    -webkit-backdrop-filter: unset;
            backdrop-filter: unset;
  }
  header {
    display: block;
  }
  .menu-buttons {
    position: absolute;
    top: 24px;
    right: 15px;
  }
  header nav a.button {
    margin-left: 40px;
    margin-top: 1.5rem;
    min-width: 260px;
  }
  .open-menu .menu-links {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    align-items: flex-start;
    justify-content: flex-start;
    background: rgba(0, 0, 0, 0.8);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    overflow-x: scroll;
    padding-top: 40px;
    padding-bottom: 60px;
  }
  .open-menu .close-menu-button {
    display: flex;
    position: relative;
  }
  .nav-dropdown-sub-menu a, .nav-dropdown-sub-menu-title {
    font-size: 1.2rem !important;
  }
  .nav-dropdown-sub-menu-title {
    text-transform: uppercase;
  }
}
@media (min-width: 960px) {
  header {
    top: 16px;
  }
  .header-inner {
    border-radius: 16px;
    margin-inline: auto;
    width: calc(100% - 80px);
    padding: 15px 4px;
  }
  header.position-fixed .header-inner {
    width: 870px;
  }
  .open-menu-button {
    display: none;
  }
  .menu-links {
    display: flex;
  }
  .menu-links ul {
    flex-direction: row;
    padding-left: 0;
  }
  .menu-links a {
    -webkit-text-decoration: underline rgba(255, 255, 255, 0);
            text-decoration: underline rgba(255, 255, 255, 0);
    text-underline-offset: 6px;
    font-size: 1rem;
  }
  header .menu-links a {
    color: white;
  }
  .header-buttons {
    display: flex;
    gap: 2px;
  }
  .nav-dropdown {
    display: flex;
    align-items: center;
  }
  .nav-dropdown span {
    display: block;
  }
  .nav-dropdown::after {
    display: inline-block;
    content: "";
    height: 20px;
    width: 16px;
    background: url("/new_media/icons/down-chevron.svg") no-repeat;
    background-size: contain;
    background-position: 0;
  }
  .nav-dropdown:hover {
    color: var(--primary-accent-500);
  }
  .nav-dropdown:hover .nav-dropdown-sub-menu {
    display: block !important;
  }
  .nav-dropdown:hover .nav-dropdown-sub-menu-title {
    color: black;
  }
  .nav-dropdown:hover::after {
    filter: invert(36%) sepia(95%) saturate(1284%) hue-rotate(352deg) brightness(105%) contrast(99%);
  }
  ul.nav-dropdown-sub-menu {
    display: none;
    position: fixed;
    background: white;
    padding: 16px 32px 20px 20px;
    border-radius: 4px;
    box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.2);
    margin-top: 0;
    top: 67px;
  }
  .nav-dropdown:hover ul.nav-dropdown-sub-menu {
    display: flex;
  }
  .nav-dropdown-sub-menu-title {
    display: inline-block;
    text-transform: uppercase;
    border-bottom: 1px solid var(--yellow-500);
    margin-bottom: 8px;
  }
  .nav-dropdown-sub-menu li:not(:first-child).nav-dropdown-sub-menu-title {
    margin-top: 16px;
  }
}
header .button {
  margin: 0;
}

.menu-links {
  align-items: center;
  gap: 16px;
}

header nav a.button {
  color: white !important;
  font-weight: 700;
  font-variation-settings: "wght" 700;
  width: 140px;
}

header .light-mode a:not(.button):not(.wp-block-button):hover {
  color: var(--primary-accent-500) !important;
}

@media (min-width: 750px) {
  header.position-fixed .header-inner {
    width: calc(100% - 80px);
  }
}
/* HEADER change of logo */
.site-header__logo {
  display: block;
}

.site-header__second-logo {
  display: none;
}

@media (min-width: 960px) {
  .site-header__logo {
    display: none;
  }
  .site-header__second-logo {
    display: block;
  }
  header.position-fixed .site-header__logo {
    display: block;
  }
  header.position-fixed .site-header__second-logo {
    display: none;
  }
}
/* HEADER end */
/* --------------------------------------------------------- */
/* 
    Nav Styles
*/
/* --------------------------------------------------------- */
nav.header-nav {
  z-index: 100;
  position: fixed;
  padding: 7px 8px;
  border-radius: 12px;
  right: 15px;
  top: 20px;
}

body:has(.hellobar) nav.header-nav {
  visibility: hidden;
}

nav.open-nav {
  position: fixed;
  top: 0 !important;
  right: 0px;
  padding-top: 100px;
  padding-bottom: 100vh;
  width: 100%;
  border: none !important;
  border-radius: 0;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.nav-links {
  display: none;
  text-align: left;
}

.nav-buttons {
  display: flex;
}

.nav-buttons button {
  all: unset;
  box-shadow: none;
}

.nav-hamburger {
  display: flex;
}

.nav-close {
  display: none !important;
}

.open-nav .nav-hamburger {
  display: none;
}
.open-nav .nav-close {
  display: block !important;
  position: fixed;
  top: 32px;
  right: 32px;
}
.open-nav .nav-links {
  display: grid !important;
  z-index: 90;
  font-size: 2.5rem;
  font-weight: 600;
}
.open-nav .nav-links a {
  margin: 8px 16px;
}
.open-nav .nav-buttons {
  border: none;
  top: 20px;
}

nav.header-nav.position-fixed {
  top: 20px;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

@media (min-width: 768px) {
  nav.header-nav.position-fixed {
    padding: 16px 28px;
    border-radius: 200px;
  }
}
@media (min-width: 768px) {
  .nav-buttons {
    display: none;
  }
  .nav-links {
    display: flex;
    background: none;
    gap: 12px;
  }
  nav.header-nav {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}
nav a.current-page {
  opacity: 0.5;
}

@media (min-width: 768px) {
  .nav-links {
    gap: 16px;
  }
}
.nav-links a, .menu-links a:not(.button) {
  letter-spacing: 0.5px;
}

/*  on _header.scss there is another style for this 
    .menu-item a { 
    color: black !important;
} */
.nav-links a:hover {
  color: var(--primary-accent-500) !important;
}

.menu-item a {
  text-decoration: none;
}

.menu-item a:hover {
  text-decoration: none;
}

.current-menu-item a {
  opacity: 0.5 !important;
}

header .button {
  min-width: unset;
}

/* --------------------------------------------------------- */
footer {
  background: black;
  padding: 2rem 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
  width: 100%;
  border-top: 1px solid var(--slate-850);
}

.timezones-container {
  flex: 1;
  display: flex;
  justify-content: flex-start;
}

.footer-navbar-container {
  flex: 1;
  display: flex;
  justify-content: center;
}

.social-links-container {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.timezones {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: flex-start;
}
.timezones div {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.timezones div img.country-flag {
  width: 20px;
  height: 13px;
  border-radius: 2px;
  flex-shrink: 0;
}
.timezones div small {
  min-width: 100px;
  color: #ffffff;
}
.timezones div output {
  color: #ffffff;
  margin-left: auto;
}

.timezones > div[aria-label] {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.timezones .country-flag {
  width: 1.5em;
}

.timezones small {
  width: 140px;
  display: inline-block;
}

.timezones output {
  font-variant-numeric: tabular-nums;
  min-width: 3.5em;
  text-align: left;
  margin-left: 0;
}

@media (max-width: 719px) {
  .timezones > div[aria-label] {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
  }
  .timezones small {
    width: auto;
  }
}
.social-links {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: flex-end;
}
.social-links li {
  list-style: none;
}
.social-links li a {
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.social-links li a:hover {
  color: var(--primary-accent-500);
}

footer nav {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
}
footer nav a {
  color: #ffffff;
  text-decoration: none;
}
footer nav a:hover {
  color: var(--primary-accent-500);
}

@media (min-width: 900px) {
  footer {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  footer nav {
    flex-direction: row;
    gap: 1.5rem;
  }
  footer nav a {
    font-size: 1rem;
  }
}
@media (max-width: 899px) {
  footer {
    flex-direction: column;
    gap: 2rem;
    text-align: center;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .timezones-container {
    display: none;
  }
  .footer-navbar-container,
  .social-links-container {
    width: 100%;
    justify-content: center;
  }
  .timezones {
    align-items: center;
  }
  .social-links {
    align-items: center;
  }
}
footer small.copyright::before {
  display: none;
}

footer .container {
  display: none;
}

.up-right-arrow-icon {
  display: none;
}

/* Cover Styles */
.cover, .cta-section {
  background: var(--slate-950);
  padding-block: 5rem;
  width: 100% !important;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  max-width: unset !important;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.cta-section {
  min-height: 400px;
}

.cover {
  margin-bottom: 4rem !important;
}

.cover .wp-block-columns {
  justify-content: center;
}

.cover .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained, .cta-section .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
  width: 100%;
  z-index: 3;
}
.cover .wp-block-columns, .cover .wp-block-group, .cta-section .wp-block-columns, .cta-section .wp-block-group {
  margin-inline: auto;
}
.cover *, .cta-section * {
  color: white !important;
  cursor: default;
}
.cover a, .cta-section a {
  cursor: pointer;
}
.cover > *, .cta-section > * {
  z-index: 3;
  position: relative;
}

@media (min-width: 900px) {
  .cover, .cta-section {
    padding-top: 170px;
    padding-bottom: 60px;
  }
  .cover {
    margin-top: -120px !important;
  }
}
@media (min-width: 1200px) {
  .cover, .cta-section {
    padding-bottom: 60px;
  }
  .cover {
    padding-top: 170px;
  }
  .cta-section {
    padding-top: 60px;
  }
}
@media (min-width: 1380px) {
  .cta-section {
    min-height: 500px;
  }
}
.cover:has(ul) {
  min-height: 500px;
}

@media (min-width: 1380px) {
  .cover:has(ul) {
    min-height: 550px;
  }
}
@media (min-width: 1200px) {
  .cover ul {
    padding-left: 24px;
  }
}
.cover h1 {
  max-width: 1040px;
}

/* Blog & Blog Posts Styles */
/* Mobile Styles */
@media (max-width: 959px) {
  body.blog .cover, body.archive .cover {
    min-height: unset;
  }
  body.single-post .cover {
    min-height: unset;
    padding-block: 3rem;
  }
}
.cover h1 {
  text-shadow: 0px 4px 10px black;
}

.cover {
  border-bottom: 1px solid var(--slate-850);
}

.card {
  position: relative;
  padding: 24px 16px 32px;
  gap: 1.5rem;
  border-radius: var(--border-radius-card);
  border: 1px solid var(--slate-850);
  background: var(--slate-950);
  background-image: radial-gradient(at 75% 0%, var(--primary-accent-07pct) 0%, rgba(0, 0, 0, 0.5019607843) 100%);
}

.card.dark-mode {
  background: black;
  box-shadow: 0 0 0px 0.5px rgba(255, 255, 255, 0.5);
}

.card .card {
  border-radius: var(--border-radius-md);
}

.small-services-summary-card img {
  filter: brightness(0) saturate(100%) invert(89%) sepia(8%) saturate(378%) hue-rotate(164deg) brightness(93%) contrast(90%);
}

.small-services-summary-card:hover img {
  filter: brightness(0) saturate(100%) invert(20%) sepia(53%) saturate(7160%) hue-rotate(337deg) brightness(101%) contrast(91%);
}

.small-services-summary-card a.wp-block-button__link.wp-element-button {
  position: absolute;
  background: var(--ivory-075);
  border: none;
  width: 50px !important;
  height: 50px;
  font-size: 2rem;
  border-radius: var(--border-radius-lg) 0 var(--border-radius-lg) 0;
  bottom: 0;
  right: 0;
  color: gray !important;
  font-weight: 400 !important;
  font-variation-settings: "wght" 400 !important;
  min-width: unset;
  padding: 0 4px;
}

.small-services-summary-card:hover a.wp-block-button__link.wp-element-button {
  background: var(--primary-accent-500) !important;
  color: white !important;
  box-shadow: none;
}

@media (max-width: 959px) {
  .small-services-summary-card a.wp-block-button__link.wp-element-button {
    border-radius: var(--border-radius-md) 0 var(--border-radius-md) 0;
  }
}
.category-section {
  margin-bottom: 4rem;
}
.category-section .category-title {
  margin-bottom: 2rem;
  max-width: 640px;
}

.case-studies-grid {
  display: grid;
  gap: 2rem;
}

.case-studies-archive .cover :is(h1, h2) {
  margin-bottom: 0;
}

.case-card {
  display: flex;
  background-color: white;
  padding: 24px;
  border-radius: 24px;
  gap: 32px;
  justify-content: flex-start;
  position: relative;
}
.case-card *:not(.button) {
  margin: 0;
  padding: 0;
}
.case-card p a {
  text-decoration: underline rgba(246, 9, 64, 0.5019607843) dotted 2px;
  -webkit-text-decoration: underline rgba(246, 9, 64, 0.5019607843) dotted 2px;
  text-underline-offset: 5px;
}
.case-card p a:hover {
  text-decoration: underline #f60940 solid 2px;
  -webkit-text-decoration: underline #f60940 solid 2px;
  text-underline-offset: 5px;
  opacity: 1;
}

.case-card > div {
  flex-grow: 1;
  max-width: 650px;
}

.case-card .case-img {
  align-content: center;
  border-radius: 24px;
  flex-grow: 2;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: var(--accent-color);
}

.case-card .case-img img {
  margin-inline: auto;
}

.case-card .case-rgt {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding-block: 2rem 0;
  z-index: 1;
}
.case-card .case-rgt .case-card-testimonial {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.case-card .case-rgt .case-card-testimonial .case-card-heading {
  display: flex;
  gap: 12px;
}
.case-card .case-rgt .quote-trustpilot {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.case-card .case-rgt .quote-trustpilot :is(p, a) {
  font-weight: 600;
}

.case-card .case-img {
  background-position: center center;
}

.case-card-name {
  align-self: center;
}
.case-card-name > div {
  display: flex;
  align-items: center;
}
.case-card-name > div a {
  margin-left: 6px;
}
.case-card-name > div a:hover img {
  filter: var(--accent-filter);
}
.case-card-name > div img {
  filter: brightness(0);
  width: 20px;
  height: 20px;
}

.case-card[data-client=equine-network] .case-img {
  background-color: #380B06;
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-equine.svg);
}

.case-card[data-client=rex] .case-img {
  background-color: #0152DB;
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-rex.svg);
}

.case-card[data-client=primepro] .case-img {
  background-color: var(--black-100, rgb(35, 35, 35));
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-primepro.svg);
}

.case-card[data-client=peerwise] .case-img {
  background-color: #2B2268;
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-peerwise.svg);
  background-size: auto;
  background-position: center center;
}

.case-card[data-client=royal-legal-solutions] .case-img {
  background-color: #18A6F2;
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-royal.svg);
}

.case-card[data-client=the-horse] .case-img {
  background-color: #E11548;
  background-image: url(https://southtarget.com/wp-content/themes/polypress/assets/images/card-bg-the-horse.svg);
}

@media (max-width: 959px) {
  .case-card {
    flex-direction: column;
    gap: 1rem;
    padding-inline: 0px;
    padding-top: 0px;
  }
  .case-card .case-img {
    height: 150px;
    align-content: center;
    border-radius: 24px 24px 0px 0px !important;
  }
  .case-card .case-img img {
    max-width: 180px;
  }
  .case-card .case-rgt {
    padding-top: 0;
    margin-inline: auto;
    padding-inline: 16px;
  }
  .case-card .case-rgt img {
    max-width: unset;
  }
}
@media (min-width: 960px) {
  .card {
    padding: 24px 24px 32px;
  }
}
.label {
  background: none;
  border: 1px solid var(--slate-600);
  border-radius: 8px;
  padding: 0.5rem 1rem;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* For Safari support */
  width: -moz-fit-content;
  width: fit-content;
}

.label * {
  margin-bottom: 0;
}

.wp-block-group > .label {
  margin-inline: 0;
}

.accordions-container {
  padding-top: 2rem;
}

.accordion {
  border-bottom: 1px solid rgba(116, 55, 248, 0.3137254902);
  margin-bottom: 32px;
}

.acc-button {
  display: flex;
  position: relative;
  cursor: pointer;
  align-items: center;
  transition: 0.4s;
  margin-top: 1rem;
  margin-bottom: 1rem;
  color: rgba(255, 255, 255, 0.3019607843);
}

.faqs h3.heading-4 {
  margin-bottom: 0;
  display: flex;
  gap: 5px;
}

.faqs .accordion h3 span {
  color: #7537F8;
}

.acc-button:after {
  content: "+";
  float: right;
  margin-left: auto;
  font-size: 2rem;
}

.acc-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

@media (min-width: 1024px) {
  .acc-panel {
    padding-left: 48px;
    padding-right: 20px;
  }
}
@media (min-width: 1024px) {
  .faqs .acc-panel {
    padding-left: 30px;
  }
}
/* --------------------------------------------------------- */
/* Details Block Accordion Styles - Native WordPress Class */
/* --------------------------------------------------------- */
/* Apply minimal accordion styling directly to all Details blocks */
.wp-block-details {
  border: 1px solid rgba(116, 55, 248, 0.1254901961) !important;
  border-radius: 8px !important;
  margin-bottom: 1rem !important;
  transition: all 0.3s ease !important;
  background: transparent !important;
  padding: 0 !important;
}

.wp-block-details:hover {
  border-color: rgba(116, 55, 248, 0.3137254902) !important;
  box-shadow: 0 2px 8px rgba(116, 55, 248, 0.1) !important;
}

.wp-block-details summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  padding: 1rem 1.5rem !important;
  position: relative !important;
  color: #ffffff !important;
  font-weight: 500 !important;
  transition: all 0.3s ease !important;
  list-style: none !important;
  outline: none !important;
  border-radius: 8px !important;
  border: none !important;
  border-bottom: 1px solid transparent !important;
  background: transparent !important;
  margin: 0 !important;
}

.wp-block-details summary:hover {
  background-color: rgba(116, 55, 248, 0.031372549) !important;
}

/* Hide all default markers */
.wp-block-details summary::-webkit-details-marker,
.wp-block-details summary::marker,
.wp-block-details summary::before {
  display: none !important;
  content: none !important;
}

.wp-block-details summary::after {
  content: "+" !important;
  font-size: 1.75rem !important;
  font-weight: 900 !important;
  color: rgba(255, 255, 255, 0.3019607843) !important;
  transition: all 0.3s ease !important;
  transform: rotate(0deg) !important;
  line-height: 1 !important;
  width: 24px !important;
  height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.wp-block-details summary:hover::after {
  color: #7537F8 !important;
}

.wp-block-details[open] summary::after {
  transform: rotate(45deg) !important;
  color: #7537F8 !important;
}

.wp-block-details[open] summary {
  border-bottom: 1px solid rgba(116, 55, 248, 0.1254901961) !important;
  border-radius: 8px 8px 0 0 !important;
  background-color: rgba(116, 55, 248, 0.16) !important;
}

.wp-block-details > :not(summary) {
  padding: 1rem 1.5rem !important;
  animation: fadeIn 0.3s ease-in-out !important;
  margin: 0 !important;
  border: none !important;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Mobile Styles */
@media (max-width: 767px) {
  .wp-block-details p {
    font-size: 1rem !important;
  }
  .wp-block-details summary {
    font-size: 1rem !important;
    padding: 0.75rem 1rem !important;
  }
  .wp-block-details > :not(summary) {
    padding: 0.75rem 1rem !important;
  }
  .wp-block-details summary::after {
    font-size: 1.5rem !important;
    width: 20px !important;
    height: 20px !important;
  }
}
/* CTA Section */
.cta-section {
  background: var(--slate-950);
  padding: 5rem 0;
  margin-top: 5rem;
  color: white;
  border-top: 1px solid var(--slate-850);
}
.cta-section .container {
  text-align: center;
}
.cta-section h2 {
  color: white;
  margin-bottom: 2rem;
  font-size: 3rem;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .cta-section h2 {
    font-size: 2.5rem;
  }
}
.cta-section h3 {
  color: white;
  margin-bottom: 1.5rem;
  font-size: 2.5rem;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .cta-section h3 {
    font-size: 2rem;
  }
}
.cta-section h4 {
  color: white;
  margin-bottom: 1rem;
  font-size: 2rem;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .cta-section h4 {
    font-size: 1.5rem;
  }
}
.cta-section p {
  color: white;
  opacity: 0.9;
  font-size: 1.2rem;
  line-height: 1.6;
  margin-bottom: 2rem;
}
@media (max-width: 768px) {
  .cta-section p {
    font-size: 1.1rem;
  }
}
.cta-section .wp-block-buttons {
  justify-content: center;
  gap: 1rem;
}
.cta-section .wp-block-buttons .wp-block-button .wp-block-button__link {
  background: white;
  color: var(--slate-950);
  border: 2px solid white;
  padding: 1rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}
.cta-section .wp-block-buttons .wp-block-button .wp-block-button__link:hover {
  background: transparent;
  color: white;
  border-color: white;
}
.cta-section .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: white;
  border: 2px solid white;
}
.cta-section .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: white;
  color: var(--slate-950);
}

/* --------------------------------------------------------- */
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1 0 auto;
}/*# sourceMappingURL=main.css.map */