/* GLOBAL SYSTEM VARIABLES & AESTHETICS */
:root, body, [data-amplify-authenticator] {
	--wp--preset--font-family--archivo: "Archivo WPS", Arial, Helvetica, sans-serif;
	--wp--style--global--content-size: 1200px;
	
    --wps-font-family: "Archivo WPS", sans-serif;
    --wps-color-secondary: #09551A; /* Deep green */
    --wps-color-gradient-end: #44e095; /* Vibrant light green */
    --wps-color-muted-green: #2e9061;

    /* Platform design layout bases */
	--wps-bg-dark: #0e1625;
	--wps-bg-submenu: rgba(14, 22, 37, 0.85);
    --wps-bg-surface: rgba(255, 255, 255, 0.03);
    --wps-bg-button: rgba(255, 255, 255, 0.03);
    --wps-bg-eyebrow: rgba(57, 239, 136, .08);
    --wps-border: rgba(255, 255, 255, 0.08);
	--wps-card-border: rgba(255, 255, 255, 0.1);
	/*
    --wps-bg: #0b0f19;
    --wps-text-accent: #9cffc3;
    --wps-text: #f3f4f6;
    --wps-text-muted: #9ca3af;
	*/
    --wps-bg: #fafaff;
	--wps-bg-alpha: #fafaff21;
	--wps-text-head: #101827;
	--wps-text: #515151;
	--wps-text-muted: #657084;
    --wps-text-accent: #ffffff;
	--wps-text-eyebrow: #0b6b43;
	--wps-text-headline: #0b6b43;
	--wps-text-headline2: #2563eb;
    
    --wps-max-width: 1200px;
    --wps-gap: 2rem;
    --wps-radius: 12px;
    
    /* Dynamic fluid typography (Viewport-based scaling) */
    --fs-h1: clamp(2.5rem, 5vw, 3.5rem);
    --fs-h2: clamp(1.75rem, 3.5vw, 2.5rem);
    --fs-h3: clamp(1.25rem, 3.5vw, 1.75rem);
    --fs-body: 1.05rem;
    --fs-box: 0.95rem;
    --fs-headline: 0.75rem;
    --fs-headline-2: 0.85rem;

    /* Mantine framework support */
    --mantine-font-family: var(--wps-font-family);

    /* Amplify framework support */
	--amplify-fonts-default-variable: var(--wps-font-family) !important;
	--amplify-fonts-default-static: var(--wps-font-family) !important;
	--amplify-colors-font-primary: var(--wps-text) !important;
	--amplify-colors-font-secondary: var(--wps-text-muted) !important;

    font-family: var(--wps-font-family) !important;
	scroll-behavior: smooth;
}

/* BASE LAYOUT & RESET SYSTEM */
body, .editor-styles-wrapper {
    margin: 0;
    padding: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
	min-height: 100vh;
    background: var(--wps-bg);
    color: var(--wps-text);
    font-size: var(--fs-body);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}
body,
button,
input,
textarea,
select,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--wps-font-family) !important;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--wps-text-head);
}
:where(.wp-site-blocks :focus) {
    outline-style: none !important;
}
.wps-legacy-elementor-main {
	margin-top: 0 !important;
}
h1 {
	font-size: var(--fs-h1) !important;
}
h2 {
	font-size: var(--fs-h2) !important;
}
h3 {
	font-size: var(--fs-h3) !important;
}
.wp-site-blocks {
    display: flex;
    flex-direction: column;
	min-height: 100vh;
}
main {
    display: flex;
    flex-direction: column;
	flex: 1;
}
a { color: inherit; text-decoration: none; transition: color 0.2s ease; }
img, picture { display: block; max-width: 100%; height: auto; }
a:hover { text-decoration: none;}

/* CORE CONTAINER FOR STATIC PUBLISHER & GUTENBERG */
header {
	position: fixed;
	width: 100%;
	padding: 0;
	z-index: 10;
	background-color: var(--wps-bg-dark);
}

header nav button.wp-block-navigation__responsive-container-open {
	background-color: transparent !important;
	padding: 0.5rem 0.75rem !important;
}

footer {
	width: 100%;
	padding: 0;
	margin: 0;
	background-color: var(--wps-bg-dark);
}

footer .wps-footer-nav a {
	color: #9ca3af !important;
}

.wps-footer-nav .wps-menu-active {
	color: var(--wps-color-gradient-end) !important;
}

.wps-header, .wps-footer {
    display: flex;
    flex-direction: row;
	align-self: center;
    padding: 0;
	margin-left: auto;
	margin-right: auto;
    max-width: var(--wps-max-width) !important;
    width: 100%;
	color: var(--wps-text-accent);
}

.wps-header {
    padding: 2rem 0;
}

.wps-footer-nav p a {
  display: inline-block;
  transition:
    transform 0.28s ease,
    color 0.28s ease;
  will-change: transform;
}

.wps-footer-nav p a:hover {
  transform: translateY(-4px);
}

.wps-footer-nav-products {
	display: flex;
	flex-direction: column;
}

.wps-footer-nav-products > p {
	margin-top: 0.5rem;
	margin-left: 1rem;
}

.wps-footer-nav-products summary {
  position: relative;
  list-style: none;
  cursor: pointer;
}

.wps-footer-nav-products summary::-webkit-details-marker {
  display: none;
}

.wps-footer-nav-products summary::marker {
  content: "";
}

.wps-footer-nav-products summary::after {
  content: ">";
  display: inline-block;
  margin-left: 6px;
  font-size: 0.75em;
  line-height: 1;
  color: currentColor;
  transform: translateY(-1px);
  transition: transform 0.18s ease, color 0.18s ease;
}

.wps-footer-nav-products[open] summary::after {
  transform: rotate(90deg) translateY(1px);
}

.wps-navigation {
	gap: 1rem;
}

.wpsuite-container {
    display: flex;
    flex-direction: column;
    max-width: var(--wps-max-width) !important;
    padding: 4rem 0;
    width: 100%;
}

.wps-full-width {
	width: 100%;
	margin: 0 !important;
}

.unauthenticated {
    display: var(--gatey-account-not-authenticated, var(--wpsuite-in-editor, none)) !important;
}

.authenticated {
    display: var(--gatey-account-authenticated, var(--wpsuite-in-editor, none)) !important;
}

/* Accessibility helper class */
.screen-reader-text, .sr-only {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* Legacy elementor dialog and input fixes */
div.dialog-widget {
    position: fixed !important;
    z-index: 100000;
}
.mf-input { border: 1px solid #666 !important; }

/* UNIVERSAL HERO SECTION TEMPLATE */
.wps-hero {
    display: flex;
    flex-direction: column;
	gap: 1rem;
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center;
    text-align: left;
    padding: 6rem 1.5rem 4rem 1.5rem;
}

.wps-hero h1 {
    font-size: var(--fs-h1) !important;
    line-height: 1.1;
    font-weight: 800;
    margin-bottom: 1.5rem;
    letter-spacing: -0.02em;
}
.wps-hero .hero-lead {
    font-size: 1.25rem;
    color: var(--wps-text-muted);
    max-width: 720px;
    margin-bottom: 2.5rem;
}

.wps-eyebrow {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    padding: 8px 13px;
    border: 1px solid var(--wps-border);
    border-radius: 999px;
    color: var(--wps-text-eyebrow);
    background: var(--wps-bg-eyebrow);
    font-size: var(--fs-headline) !important;
    font-weight: 300;
    letter-spacing: .08em;
	margin-bottom: 0.5rem !important;
}

.wps-headline, .wps-headline-2 {
    font-size: var(--fs-headline);
    font-weight: 300;
    text-transform: uppercase;
    text-decoration: none;
    line-height: 1.5em;
    color: var(--wps-text-headline);
	margin-bottom: 0.5rem !important;
}

.wps-headline-2 {
    font-size: var(--fs-headline-2);
    color: var(--wps-text-headline-2);
}

/* UNIVERSAL GRID & CARD REPRESENTATION (FOR PRODUCT MODULES) */
.wps-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: var(--wps-gap);
    margin: 3rem 0;
	width: 100%;
}
.wps-grid:has(> :nth-child(3):last-child) {
	grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.wps-post-box {
  gap: 1rem;
}

.wps-post-box.wps-grid, .wps-post-box.wps-grid:has(> :nth-child(3):last-child) {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
}

.wps-post-box li {
  background: var(--wps-bg-surface);
  border: 1px solid var(--wps-border);
  border-radius: var(--wps-radius);
  width: 100%;
  max-width: 380px;
  transition-duration: .25s;
  transition-property: background, border, box-shadow;
  overflow: hidden;  
  margin-top: 0;
}

.wps-post-box li:hover {
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5)
}

.wps-post-box-featured-image {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  overflow: hidden;
  line-height: 0;
  aspect-ratio: 16 / 9;
  height: 100%;
  max-height: 10rem;
}

.wps-post-box-featured-image a,
.wps-post-box-featured-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

.wps-post-box-featured-image img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

.wps-card {
    background: var(--wps-bg-surface);
    border: 1px solid var(--wps-border);
    border-radius: var(--wps-radius);
    padding: 2.5rem;
}
/*
.wps-card:hover {
    transform: translateY(-4px);
    border-color: var(--wps-color-gradient-end);
}
*/
.wps-box {
    background: var(--wps-bg-button);
    border: 1px solid var(--wps-border);
    border-radius: var(--wps-radius);
    padding: 1rem;
	font-size: var(--fs-box) !important;
	width: 100%;
	gap: calc(var(--wps-gap, 2rem) / 4) !important;
}
.wps-box .wps-icon {
	color: var(--wps-text-headline);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 auto;
}

/* 2-COLUMN SPLIT SECTION (PRODUCT PAGES & EWWW OPTIMIZER COMPATIBILITY) */
.wps-split {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4rem;
    padding: 4rem 0;
}
.wps-split .split-content { flex: 1; }
.wps-split .split-media { flex: 1; display: flex; justify-content: center; }
.wps-split .split-media picture, 
.wps-split .split-media img {
    border-radius: var(--wps-radius);
    border: 1px solid var(--wps-border);
    box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}

.wps-muted {
	color: var(--wps-text-muted);
}

.wps-note {
	font-size: 0.9rem;
    color: var(--wps-text-muted);
    border-left: 3px solid var(--wps-card-border);
    padding-left: 1rem;
    margin-top: 1.5rem;
}

.wps-product-image {
	opacity: 0.5;
	transition-duration: 0.2s;
}

.wps-product-image:hover {
	opacity: 1;
}

/* UNIFIED GLOBAL BUTTONS STYLE (AMPLIFY MATRIX GENERATION) */
.amplify-button, .wps-btn-primary .wp-block-button__link, .wps-btn-secondary .wp-block-button__link {
    font-family: var(--wps-font-family) !important;
    font-weight: 500 !important;
    color: white !important;
    border: unset !important;
    border-radius: 0px !important;
    background-image: linear-gradient(40deg, var(--wps-color-secondary) 0%, var(--wps-color-gradient-end) 100%) !important;
    padding: 0.65rem 1.5rem !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    text-decoration: none;
    transition: background .3s, border .3s, border-radius .3s, box-shadow .3s, transform .3s;
    outline: none !important;
    box-shadow: none !important;
}
.amplify-button[disabled], .wps-btn-primary[disabled], .wps-btn-secondary[disabled] {
    filter: grayscale(1) opacity(0.6);
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}
.wps-btn-primary, .wps-btn-secondary {
    padding: 0 !important;
	flex-grow: 1;
}
.wps-btn-primary .wp-block-button__link::before, .wps-btn-secondary .wp-block-button__link::before {
	height: 22px;
}
.wps-btn-secondary .wp-block-button__link {
    border: 1px solid white !important;
    background-image: unset !important;
    background: var(--wps-bg-button) !important;
}
.amplify-button:not([disabled]):active, .wps-btn-primary .wp-block-button__link:active, .wps-btn-secondary .wp-block-button__link:active { transform: scale(0.98); }
.amplify-button:not([disabled]):hover, .wps-btn-primary .wp-block-button__link:hover {
    background-image: linear-gradient(40deg, var(--wps-color-gradient-end) 0%, var(--wps-color-secondary) 100%) !important;
}

.wps-btn-primary .wp-block-button__link:hover, .wps-btn-secondary .wp-block-button__link:hover { transform: translateY(-10px); }

.amplify-button--fullwidth { width: 100% !important; }

/* AWS AMPLIFY AUTHENTICATOR LAYOUT OVERRIDES (SIGNIN & PROFILE ONLY) */
.amplify-visually-hidden { display: none !important; }
.amplify-tabs__list { display: none !important; }
.amplify-loader { fill: none !important; }
.amplify-checkbox input { margin-right: -10px !important; }
.amplify-flex.amplify-button__loader-wrapper { width: 100%; }
.amplify-button span { width: 100%; height: unset; justify-content: center; }
[data-amplify-authenticator] { --amplify-components-authenticator-router-border-width: 0; }
[data-amplify-authenticator][data-variation=modal] { z-index: 100000; }
[data-amplify-router-content] { padding-top: 0 !important; }
.mantine-Modal-close {
    color: var(--wps-color-secondary) !important;
    background-color: transparent !important;
    padding: 0 !important;
}
.federated-sign-in-button .amplify-text { color: white; padding-left: 0.5rem; }
.dark-link {
    background-color: transparent !important;
    color: var(--wps-color-muted-green) !important;
    text-decoration: none !important;
}
@media (max-width: 767px) {
    [data-amplify-container] { width: 100%; padding-left: 10px; padding-right: 10px; }
    .dialog-widget-content { box-shadow: unset !important; }
	[smartcloud-gatey-authenticator] {
		width: 100%;
	}
}

/* COMPARISON TABLE ARCHITECTURE */
.wps-hscroll {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
}

/* base table */
.wps-compare {
  --col-feature: min(40vw, 100px);
  --col-main: min(40vw, 100px);
  --col-others: min(70vw, 100px);

  margin: 0 !important;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;

  width: max-content !important;
  min-width: 100%;
  max-width: none !important;
}

.wps-compare col.c-feature {
  width: var(--col-feature) !important;
}

.wps-compare col.c-main {
  width: var(--col-main) !important;
}

.wps-compare col.c-others {
  width: var(--col-others) !important;
}

.wps-compare th,
.wps-compare td {
  padding: 10px;
  border: 1px solid #eee;
  vertical-align: top;
  background: var(--e-global-color-a5fb362);
  word-break: normal;
  overflow-wrap: anywhere;
  min-width: var(--col-others);
}

/* always sticky first / feature column */
.wps-compare th:first-child,
.wps-compare td:first-child {
  position: sticky;
  left: 0;
  min-width: var(--col-feature);
  width: var(--col-feature);
  z-index: 5;
}

/* if there is main, the second is sticky, too */
.wps-compare.has-main th:nth-child(2),
.wps-compare.has-main td:nth-child(2) {
  position: sticky;
  left: var(--col-feature);
  min-width: var(--col-main);
  width: var(--col-main);
  z-index: 4;
}

/* if there is no main, the second is scrollable */
.wps-compare.no-main th:nth-child(n+2),
.wps-compare.no-main td:nth-child(n+2) {
  min-width: var(--col-others);
  width: var(--col-others);
}

/* if there is main, the columns follow main are scrollable */
.wps-compare.has-main th:nth-child(n+3),
.wps-compare.has-main td:nth-child(n+3) {
  min-width: var(--col-others);
  width: var(--col-others);
}

/* headers are in sticky z-index */
.wps-compare thead th {
  z-index: 6;
}

.wps-compare.has-main thead th:nth-child(2) {
  z-index: 5;
}

/* tablet */
@media (min-width: 767px) {
  .wps-compare {
    --col-feature: 160px;
    --col-main: 160px;
    --col-others: 160px;
  }
}

/* desktop */
@media (min-width: 1024px) {
  .wps-compare {
    --col-feature: 220px;
    --col-main: 220px;
    --col-others: 220px;
  }
}

/* larger desktop */
@media (min-width: 1366px) {
  .wps-compare {
    --col-feature: 240px;
    --col-main: 240px;
    --col-others: 240px;
  }
}

/* PRICING TABLE ARCHITECTURE */
.wps-pricing {
    display: flex;
    flex-direction: row;
    gap: 1.5rem;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
    margin-top: 3rem;
}
.wps-price-card {
    background: var(--wps-bg-surface);
    border: 1px solid var(--wps-border);
    border-radius: var(--wps-radius);
    padding: 3rem 2rem;
    flex: 1;
    min-width: 300px;
    max-width: 380px;
    display: flex;
    flex-direction: column;
}
.wps-price-card.featured { border-color: var(--wps-color-gradient-end); }
.wps-price-card .price { font-size: 3rem; font-weight: 800; margin: 1.5rem 0; color: #fff; }

/* LEGAL & BLOG TYPOGRAPHY FLOW (PRIVACY, TERMS, BLOG ENTRIES) */
.wps-prose { max-width: 750px; margin: 0 auto; }
.wps-prose h2, .wps-prose h3 { margin: 2.5rem 0 1rem 0; color: #fff; font-weight: 700; }
.wps-prose p { margin-bottom: 1.5rem; color: var(--wps-text-muted); }
.wps-prose ul { margin: 0 0 1.5rem 1.5rem; color: var(--wps-text-muted); }

/* COOKIEYES (GTM) COOKIE CONSENT BANNER STYLING */
.elementor-icon-list-items { list-style-type: none; }
.cky-footer-shadow { background-image: unset !important; }
.cky-consent-bar, .cky-preference-center { background-color: var(--wps-bg-dark) !important; }
.cky-btn-revisit-wrapper, .cky-btn-confirm, .cky-btn-reject, .cky-btn-preferences, .cky-btn-accept {
    border: none !important;
    background-color: transparent !important;
    background-image: linear-gradient(40deg, var(--wps-color-secondary) 0%, var(--wps-color-gradient-end) 100%) !important;
}
.cky-btn-revisit-wrapper:hover, .cky-btn-confirm:hover, .cky-btn-reject:hover, .cky-btn-preferences:hover, .cky-btn-accept:hover {
    background-color: transparent !important;
    background-image: linear-gradient(40deg, var(--wps-color-gradient-end) 0%, var(--wps-color-secondary) 100%) !important;
}
.cky-btn-revisit:hover { background-color: transparent !important; }
.cky-btn-cancel { color: var(--wps-color-muted-green) !important; }

/* DESKTOP SUBMENU CLEANUP (PRODUCTS DROP-DOWN) */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container {
    background-color: var(--wps-bg-submenu) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 0px !important;
    padding: 0.75rem 0 !important;
    min-width: 80px !important;
    box-shadow: none !important;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container li {
    background-color: transparent !important;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container a {
    padding: 0 1.2rem !important;
    font-size: 0.95rem !important;
    text-align: left !important;
    display: block !important;
    white-space: nowrap;
}

/* CLOSED MOBILE TOGGLE (HAMBURGER BUTTON) */
.wp-block-navigation__responsive-container-open {
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 6px !important;
    color: #ffffff;
    display: none;
    align-items: center;
    justify-content: center;
}
.wp-block-navigation__responsive-container-open svg {
    width: 22px !important;
    height: 22px !important;
}

/* OPENED MOBILE OVERLAY MENU */
.wp-block-navigation__responsive-container.is-menu-open {
    background-color: #0b0f19 !important;
    z-index: 999999 !important;
}

/* Opened close (X) button border matching the hamburger style */
.wp-block-navigation__responsive-container-close {
    top: 1rem !important;
    right: 0 !important;
    padding: 0.5rem 0.75rem !important;
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 6px !important;
    color: #ffffff !important;
}

/* Mobile navigation link formatting */
.wp-block-navigation__responsive-container .wp-block-navigation-item a {
    font-size: 1rem !important;
    font-weight: 400 !important;
    padding: 0.6rem 0 !important;
    display: block !important;
}

.wps-menu {
	gap: 0 !important;
}

.wps-menu .current-menu-item a span {
    color: var(--wps-color-gradient-end);
}

.wps-menu .wps-menu-item {
	padding: 0.5rem 1rem !important;
}

.wps-menu .wps-menu-item:not(ul):last-child {
    display: var(--gatey-account-authenticated
    , var(--wpsuite-in-editor, none));
	padding-right: 0 !important;
}

.wps-menu .wps-menu-item:last-child > a > .wp-block-navigation-item__label::before {
    content: "Hey";
    padding-right: 5px;
    color: inherit !important;
}

.wps-menu .wps-menu-item:last-child > a > .wp-block-navigation-item__label::after {
    content: var(--gatey-account-attribute-given_name);
    color: var(--wps-color-gradient-end);
}

.wps-menu .wps-menu-item:not(:last-child):not(:nth-child(2)):not(:nth-child(3)):hover {
  transition-property: transform;
  transition-duration: 0.4s;
  transition-timing-function: ease-in;
  transform: translateY(-10px);
}

/* CONDITIONAL SIGN IN HANDLING (DESKTOP BUTTON VS MOBILE LINK) */
.wps-nav-link-mobile {
    display: none !important;
}

/* MOBILE SUBMENU SPECIFIC (BLEND WITH BACKGROUND EFFECT) */
@media (max-width: 1024px) {
    /* CORE OVERLAY CONTAINER & ALIGNMENT RESET */
    .wp-block-navigation__responsive-container.is-menu-open {
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 0 !important;
    }
	.wps-hero {
		padding: 3rem 0;
	}

    /* INNER CONTENT LIST RESET (THE ACTUAL UL WRAPPER) */
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
    .wp-block-navigation__responsive-container.is-menu-open ul.wp-block-navigation__container {
        width: 100% !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .wp-block-navigation__responsive-dialog[role="dialog"] .wp-block-navigation__responsive-container-content {
		padding-top: 0 !important;
    }
    .wp-block-navigation__responsive-dialog:not([role="dialog"]) .wp-block-navigation__responsive-container-content {
		display: none !important;
    }
	.wps-menu .wps-menu-item:hover {
		transform: unset !important;
	}
	.wps-menu .wps-menu-item span:hover {
		color: var(--wps-color-gradient-end) !important;
	}

    /* FONT SIZE & ITEM GAP REDUCTION */
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a,
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content {
        font-size: 1rem !important;
        font-weight: 500 !important;
        padding: 0.6rem 0 !important;
        margin: 0 !important;
        width: 100% !important;
        text-align: left !important;
        line-height: 1.3 !important;
        border: none !important;
        outline: none !important;
    }

    /* PRODUCTS SUBMENU: TOTAL VISUAL MELTDOWN INTO BACKGROUND */
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
        background-color: transparent !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
		gap: 1rem !important;
        padding: 0.25rem 0 0.5rem 1.2rem !important;
        margin: 0 !important;
        width: 100% !important;
		min-width: unset !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    /* Nested items inside the mobile product submenu */
    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a {
        padding: 0 !important;
    }

    /* INDEPENDENT CLOSE (X) TOGGLE BUTTON POSITIONING */
    .wp-block-navigation__responsive-container-close {
        position: absolute !important;
        top: 0.5rem !important;
        right: 0 !important;
        padding: 0.5rem 0.75rem !important;
        background: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 6px !important;
        color: #ffffff !important;
        z-index: 1000000 !important;
        margin: 0 !important;
    }
	
	.wps-header {
	    padding: 1rem 0 !important;
	}
	.wps-footer {
	    flex-direction: column;
	}
	.wps-footer-column {
		width: 100%;
	    max-width: 400px;
	}
	.wps-navigation {
		flex-direction: row-reverse;
	}
    .wp-block-navigation__responsive-container-open {
        display: flex;
    }
    .wp-block-navigation__responsive-container-open + .wp-block-buttons {
        display: none !important;
    }
    
    .wps-nav-link-mobile.authenticated {
		display: var(--gatey-account-authenticated, var(--wpsuite-in-editor, none)) !important;
    }
    .wps-nav-link-mobile.unauthenticated {
		display: var(--gatey-account-not-authenticated, var(--wpsuite-in-editor, none)) !important;
    }
	.wps-nav-button {
		display: none !important;
	}
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: flex;
    }
	
	.wps-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.wps-grid:has(> :nth-child(3):last-child) {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.wps-menu .wps-menu-item .wps-mobile-collapsed-submenu {
		overflow: hidden;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		flex-direction: row !important;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu
		> .wp-block-navigation-item__content {
		width: auto !important;
		max-width: calc(100% - 2rem) !important;
		flex: 0 1 auto;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu
		> .wp-block-navigation-submenu__toggle
		svg {
		display: none;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu
		> .wp-block-navigation-submenu__toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: auto;
		min-width: 0;
		padding: 0 0 0 0.35rem;
		margin: 0;
		background: transparent;
		border: 0;
		color: inherit;
		cursor: pointer;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu
		> .wp-block-navigation-submenu__toggle::before {
		content: ">";
		display: inline-block;
		font-size: 0.95rem;
		line-height: 1;
		transition: transform 0.2s ease;
		transform-origin: center;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu.is-mobile-submenu-open
		> .wp-block-navigation-submenu__toggle::before {
		transform: rotate(90deg);
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu
		> .wp-block-navigation__submenu-container {
		display: none !important;
		width: 100%;
	}
	.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-item.has-child.wps-mobile-collapsed-submenu.is-mobile-submenu-open
		> .wp-block-navigation__submenu-container {
		display: flex !important;
		flex-direction: column;
		position: static;
		width: 100%;
		visibility: visible;
		opacity: 1;
	}
    .wps-split {
		flex-direction: column;
		gap: 2rem;
	}
	.wps-plit-rtl {
		flex-direction: column-reverse;
	}
    .wps-center {
		align-items: center !important;
		text-align: center;
	}
	.wps-grid, .wps-post-box.wps-grid, .wps-post-box.wps-grid:has(> :nth-child(3):last-child) {
		grid-template-columns: 1fr;
	}
	.wps-eyebrow {
		align-self: center;
	}
	.wps-hero {
		padding: 1.5rem 0;
	}
	.wps-subfooter {
	    flex-direction: column;
		padding-top: 2.5rem !important;
	}
	.wps-footer-column {
		padding-top: 0 !important;
		align-self: center;
	}
	.wps-copyright {
		flex-direction: column;
		gap: 0 !important;
	}
	body.archive,
	body.page-signin .wpsuite-container,
	body.page-dashboard .wpsuite-container,
	body.page-profile .wpsuite-container,
	body.page-preferences .wpsuite-container,
	body.page-ai-agents .wpsuite-container,
	body.page-docs .wpsuite-container,
	body.page-blog .wpsuite-container {
		/*margin: 1rem 0;*/
		padding: 1rem 0;
	}
}

body.page-wp-suite-cloud-first-wordpress-integrations,
body.page-wp-suite-for-agencies-aws-powered-client-solutions-on-wordpress,
body.page-flow {
	--wps-bg: radial-gradient(circle at 12% 10%, rgba(57, 239, 136, 0.18), transparent 28%), radial-gradient(circle at 90% 18%, rgba(130, 201, 255, 0.16), transparent 22%), radial-gradient(circle at 76% 82%, rgba(157, 145, 255, 0.12), transparent 22%), linear-gradient(180deg, #06090e 0%, #09111a 54%, #06090e 100%) !important;
	--wps-bg-surface: linear-gradient(180deg, rgba(14, 21, 31, 0.84), rgba(10, 16, 24, 0.9)) !important;
    --wps-text: #f3f4f6;
    --wps-text-head: #f3f4f6;
    --wps-text-muted: #9ca3af;
	--wps-text-eyebrow: #9cffc3;
	--wps-text-headline: #97ffd0;
	--wps-text-headline-2: #9dcfff
}

body.archive .wpsuite.container,
body.page-signin .wpsuite-container,
body.page-dashboard .wpsuite-container,
body.page-profile .wpsuite-container,
body.page-preferences .wpsuite-container,
body.page-ai-agents .wpsuite-container,
body.page-docs .wpsuite-container,
body.page-blog .wpsuite-container,
body.page-403-2 .wpsuite-container,
body.error404 .wpsuite-container {
	margin-top: 5rem;
	min-height: calc(100vh - 350px);
}

body.page-signin .wpsuite-container,
body.page-403-2 .wpsuite-container,
body.page-preferences .wpsuite-container,
body.error404 .wpsuite-container {
	justify-content: center;
}

body.page-profile {
	--wps-bg-surface: white;
	--wps-radius: 0;
}

body.page-preferences .email-form, body.page-preferences .preferences-form {
  display: none;
}

body.page-403-2 .wpsuite-container,
body.error404 .wpsuite-container {
	padding-top: 0;
}
body.page-403-2,
body.error404 {
	--wps-bg: var(--wps-bg-dark);
	--wps-text: #f3f4f6;
	--wps-text-head: #f3f4f6;
}

body.page-blog, body.archive, body.wp_template-archive {
  --wps-radius: 0;
  --wps-border: #a2abbd2e;
}

/* --- ANIMATIONS --- */
.preloader, .loader {
    width: 80px; height: 80px;
}
.loader { display: none; margin-bottom: -55px; }
.circular { animation: rotate 2s linear infinite; height: 100% !important; position: relative; width: 100% !important; }
.path {
    stroke-dasharray: 1, 200; stroke-dashoffset: 0;
    animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
    stroke-linecap: round;
}
@keyframes rotate { 100% { transform: rotate(360deg); } }
@keyframes dash {
    0% { stroke-dasharray: 1, 200; stroke-dashoffset: 0; }
    50% { stroke-dasharray: 89, 200; stroke-dashoffset: -35; }
    100% { stroke-dasharray: 89, 200; stroke-dashoffset: -124; }
}
@keyframes color {
    100%, 0% { stroke: var(--wps-color-secondary); }
    50% { stroke: var(--wps-color-gradient-end); }
}

@media (prefers-reduced-motion: reduce) {
	:root, body, [data-amplify-authenticator] {
		scroll-behavior: auto;
	}
	.circular,
    .path {
        animation: none !important;
    }
    .path {
        stroke-dasharray: none;
        stroke-dashoffset: 0;
        stroke: var(--wps-color-secondary);
    }	
}

.wps-post-meta-section,
.wps-post-toc-section,
.wps-post-tags-section {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	width: 100%;
	background: #f4f5f9;
	color: #515151 !important;
}

.wps-post-meta-section *,
.wps-post-toc-section *,
.wps-post-tags-section * {
	color: #515151 !important;
	box-sizing: border-box;
}

.wps-post-meta-inner,
.wps-post-toc-inner,
.wps-post-tags-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
}

/* Compact post meta */

.wps-post-meta-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.wps-post-meta-line {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	min-height: 28px;
	font-size: 14px;
	line-height: 0;
}

.wps-post-meta-label {
	display: inline-flex;
	align-items: center;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	line-height: 0;
	opacity: 0.72;
	white-space: nowrap;
}

.wps-post-meta-value,
.wps-post-meta-value time {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 500;
	line-height: 0;
	text-decoration: none !important;
}

.wps-post-meta-line-categories {
	align-items: center;
	flex-wrap: wrap;
}

.wps-post-category-list,
.wps-post-tag-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
}

.wps-post-category-list a,
.wps-post-tag-list a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	padding: 2px 10px;
	border-radius: 999px;
	background: #ffffff;
	color: #515151 !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 0;
	text-decoration: none !important;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.wps-post-category-list a:hover,
.wps-post-tag-list a:hover,
.wps-post-meta-value:hover {
	opacity: 0.76;
	text-decoration: none !important;
}

/* Compact TOC */

.wps-post-toc {
	max-width: 760px;
	margin: 0;
	padding: 18px 22px;
	border: 1px solid rgba(81, 81, 81, 0.12);
	background: #ffffff;
	box-shadow: none;
}

.wps-post-toc-section.wps-toc-pending {
	display: none;
}

.wps-post-toc-title {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
}

.wps-post-toc ol {
	margin: 0;
	padding-left: 0;
	list-style: none;
	counter-reset: wps-toc;
}

.wps-post-toc li {
	counter-increment: wps-toc;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 7px 0;
	font-size: 14px;
	line-height: 0;
}

.wps-post-toc li::before {
	content: counter(wps-toc) ".";
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	flex: 0 0 28px;
	min-width: 28px;
	font-weight: 600;
	opacity: 0.72;
	line-height: 1;
}

.wps-post-toc-level-3 {
	padding-left: 24px !important;
	font-size: 13px;
}

.wps-post-toc a {
	display: inline-flex;
	align-items: center;
	color: #515151 !important;
	text-decoration: none !important;
	line-height: 0;
}

.wps-post-toc a:hover {
	opacity: 0.75;
}

/* Compact footer tags */

.wps-post-tags-inner {
	padding-top: 28px;
	padding-bottom: 32px;
}

.wps-post-tags-title {
	margin: 0 0 14px;
	padding-top: 20px;
	border-top: 1px solid rgba(81, 81, 81, 0.14);
	font-size: 28px;
	font-weight: 800;
	line-height: 1.2;
	color: #515151 !important;
}

/* Kill excessive block / paragraph spacing around shortcodes */

.wps-post-meta-section + *,
.wps-post-toc-section + *,
.wps-post-tags-section + * {
	margin-top: 0 !important;
}

.wp-block-shortcode:has(.wps-post-meta-section),
.wp-block-shortcode:has(.wps-post-toc-section),
.wp-block-shortcode:has(.wps-post-tags-section) {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Mobile */

@media (max-width: 767px) {
	.wps-post-meta-inner,
	.wps-post-toc-inner,
	.wps-post-tags-inner {
		padding-left: 16px;
		padding-right: 16px;
	}

	.wps-post-meta-line,
	.wps-post-meta-line-categories {
		align-items: flex-start;
	}

	.wps-post-toc {
		max-width: 100%;
		padding: 16px 18px;
	}

	.wps-post-tags-title {
		font-size: 22px;
	}
}

/* LIGHT CONTENT TOKEN DEFAULTS
   These keep reusable Gutenberg/query blocks readable on light pages.
   Dark pages can still override the same design tokens on the body/page class. */
body:not(.page-wp-suite-cloud-first-wordpress-integrations):not(.page-wp-suite-for-agencies-aws-powered-client-solutions-on-wordpress):not(.page-flow):not(.page-403-2):not(.error404) {
  --wps-text-head: #101827;
  --wps-text: #515151;
  --wps-text-muted: #657084;
  --wps-text-eyebrow: #0b6b43;
  --wps-text-headline: #0b6b43;
  --wps-text-headline-2: #2563eb;
}
