/* ==============================================
   Main Stylesheet - Import-based Architecture
   ============================================== */
@font-face {
    font-family: 'Noto Sans';
    src: url(f15ade3eeb853dc18caf.woff2) format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Noto Sans';
    src: url(6b028cb219076d91ab8e.woff2) format('woff2');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}
/* Design Tokens (CSS Variables) */
:root {
  /* Color tokens */
  --ds-color-white: #fff;
  --ds-color-white-subtle: #EAECF4;
  --ds-color-black: #000;
  --ds-color-brand: #006064;
  --ds-color-brand-strong: #004d4f;
  --ds-color-surface: var(--ds-color-white);
  --ds-color-surface-muted: #f2f6f6;
  --ds-color-text: #333333;
  --ds-color-text-muted: #6b7885;
  --ds-color-border: #6b7885;
  --ds-color-border-subtle: #dbdfdf;
  --ds-color-danger: #c34844;
  --ds-color-warning: #490b00;
  --ds-color-brand-hover: #0F3638;
  --ds-color-brand-disabled: #6B7986;
  --ds-color-on-brand-hover: #EBFFFF;
  --ds-color-focused-outline: #0C9DA3;

  /* Text on brand-colored surfaces */
  --ds-color-on-brand: var(--ds-color-white);

  /* Focus */
  --ds-color-focus: var(--ds-color-brand);
  --ds-color-focus-halo: var(--ds-color-white);
  --ds-focus-width: 3px;
  --ds-focus-offset: 3px;
  --ds-focus-width-sm: 2px;
  --ds-focus-offset-sm: 2px;

  /* Input hover/focus */
  --ds-input-focus-width: 2px;
  --ds-input-focus-offset: 2px;

  /* Typography */
  --ds-font-family-base: "Noto Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --ds-font-family-heading: var(--ds-font-family-base);
  --ds-line-height-body: 1.5;
  --ds-line-height-heading: 1.2;

  /* Type scale (aligned to Figma "Normal") */
  --ds-font-base: 16px;
  --ds-text-xs: clamp(0.75rem, 0.72rem + 0.15vw, 0.875rem);
  --ds-text-sm: clamp(0.875rem, 0.84rem + 0.15vw, 1rem);
  --ds-text-md: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
  --ds-text-lg: clamp(1.125rem, 1.05rem + 0.35vw, 1.25rem);
  --ds-text-xl: clamp(1.5rem, 1.2rem + 1vw, 2rem);
  --ds-text-2xl: clamp(2rem, 1.6rem + 1.5vw, 2.75rem);

  /* Spacing scale */
  --ds-space-0: 0;
  --ds-space-1: 4px; /* 0.25rem; /* 4px */
  --ds-space-2: 8px; /* 0.5rem;  /* 8px */
  --ds-space-3: 12px; /* 0.75rem; /* 12px */
  --ds-space-4: 16px; /* 1rem;    /* 16px */
  --ds-space-5: 24px; /* 1.5rem;  /* 24px */
  --ds-space-6: 32px; /* 2rem;    /* 32px */
  --ds-space-7: 48px; /* 3rem;    /* 48px */
  --ds-space-8: 64px; /* 4rem;    /* 64px */

  /* Radii */
  --ds-radius-xs: 3.2px; /* 0.2rem; /* 3.2px */
  --ds-radius-sm: 8px; /* 0.5rem; /* 8px */
  --ds-radius-md: 12px; /* 0.75rem; /* 12px */
  --ds-radius-lg: 24px; /* 1.5rem; /* 24px */
  --ds-radius-xl: 32px; /* 2rem; /* 32px */

  /* Shadows */
  --ds-shadow-1: 0 1px 2px rgba(0, 0, 0, 0.06);
  --ds-shadow-2: 0 12px 32px rgba(0, 0, 0, 0.10);
  --ds-shadow-3: inset 0px 0px 0px 2px var(--ds-color-brand);
  --ds-shadow-4: 0px 4px 10px 0px #0000000D;

  /* Layout */
  --ds-container-max: 1248px; /* 78rem on default text size */
  /* Compatibility tokens (scaffold theme variable names) */

  /* Meta */
  --font-size-base-px: 16;

  /* Typography */
  --font-family-primary: var(--ds-font-family-base);
  --font-family-heading: var(--ds-font-family-heading);
  --font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* Font sizes */
  --font-size-display: var(--ds-text-2xl);
  --font-size-h1: var(--ds-text-2xl);
  --font-size-h2: var(--ds-text-xl);
  --font-size-h3: var(--ds-text-lg);
  --font-size-h4: var(--ds-text-md);
  --font-size-h5: var(--ds-text-sm);
  --font-size-h6: var(--ds-text-xs);

  --font-size-body: var(--ds-text-md);
  --font-size-body-sm: var(--ds-text-sm);
  --font-size-body-xs: var(--ds-text-xs);

  --font-size-lg: var(--ds-text-lg);
  --font-size-xl: var(--ds-text-xl);

  --font-size-base: var(--font-size-body);
  --font-size-small: var(--font-size-body-sm);
  --font-size-caption: var(--font-size-body-xs);
  --font-size-label: var(--font-size-body-sm);
  --font-size-button: var(--font-size-body);
  --font-size-nav: var(--font-size-body);
  --font-size-footer: var(--font-size-body-sm);

  /* Line heights */
  --line-height-tight: var(--ds-line-height-heading);
  --line-height-snug: 1.35;
  --line-height-normal: var(--ds-line-height-body);
  --line-height-relaxed: var(--ds-line-height-body);
  --line-height-loose: 1.75;

  /* Spacing */
  --space-px: 1px;
  --space-0: var(--ds-space-0);
  --space-1: var(--ds-space-1);
  --space-2: var(--ds-space-2);
  --space-3: var(--ds-space-3);
  --space-4: var(--ds-space-4);
  --space-5: var(--ds-space-5);
  --space-6: var(--ds-space-6);
  --space-8: var(--ds-space-6);
  --space-10: var(--ds-space-7);
  --space-12: var(--ds-space-7);
  --space-16: var(--ds-space-8);
  --space-20: calc(var(--ds-space-8) + var(--ds-space-6));
  --space-24: calc(var(--ds-space-8) + var(--ds-space-7));

  --space-3xs: var(--ds-space-1);
  --space-2xs: var(--ds-space-2);
  --space-xs: var(--ds-space-3);
  --space-sm: var(--ds-space-4);
  --space-md: var(--ds-space-5);
  --space-lg: var(--ds-space-6);
  --space-xl: var(--ds-space-7);
  --space-2xl: var(--ds-space-8);
  --space-3xl: calc(var(--ds-space-8) + var(--ds-space-6));

  --spacing-section: var(--space-3xl);
  --spacing-component: var(--space-xl);
  --spacing-element: var(--space-md);
  --spacing-inline: var(--space-sm);
  --spacing-gap: var(--space-md);

  /* Colors */
  --color-primary: var(--ds-color-brand);
  --color-primary-hover: var(--ds-color-brand-strong);
  --color-primary-active: var(--ds-color-brand-strong);
  --color-primary-light: var(--ds-color-surface-muted);
  --color-primary-dark: var(--ds-color-brand-strong);

  --color-surface: var(--ds-color-surface);
  --color-surface-muted: var(--ds-color-surface-muted);

  --color-text: var(--ds-color-text);
  --color-text-muted: var(--ds-color-text-muted);

  --color-border: var(--ds-color-border);
  --color-border-subtle: var(--ds-color-border-subtle);

  --color-danger: var(--ds-color-danger);
  --color-on-brand: var(--ds-color-on-brand);

  --color-focus: var(--ds-color-focus);
  --color-focus-halo: var(--ds-color-focus-halo);
  --focus-width: var(--ds-focus-width);
  --focus-offset: var(--ds-focus-offset);

  /* Radii */
  --radius-sm: var(--ds-radius-sm);
  --radius-md: var(--ds-radius-md);
  --radius-lg: var(--ds-radius-lg);
  --radius-xl: var(--ds-radius-xl);

  /* Shadows */
  --shadow-sm: var(--ds-shadow-1);
  --shadow-md: var(--ds-shadow-2);
  --shadow-lg: var(--ds-shadow-2);

  /* Breakpoints */
  --breakpoint-sm: 30rem;
  --breakpoint-md: 48rem;
  --breakpoint-lg: 64rem;
  --breakpoint-xl: 80rem;

  /* Z-index */
  --z-header: 1000;
  --z-dropdown: 1100;
  --z-modal: 2000;

}
.iqtig-contrast-mode-dark:root {
        --ds-color-brand: #60ffc9;
        --ds-color-brand-strong: #38e7b0;
        --ds-color-surface: #000000;
        --ds-color-surface-muted: #0b0b0b;
        --ds-color-text: #ffffff;
        --ds-color-text-muted: #d6d6d6;
        --ds-color-border: #60ffc9;
        --ds-color-border-subtle: #2a2a2a;
        --ds-color-danger: #ff6b6b;

        /* In contrast mode the brand color is light (mint), so text must be dark */
        --ds-color-on-brand: #000000;
        --ds-color-brand-hover: #23CC93;
        --ds-color-brand-disabled: #719499;
        --ds-color-on-brand-hover: #0b0b0b;

        --ds-color-focus: #60ffc9;
        --ds-color-focus-halo: #000000;
    }
.iqtig-text-size-large:root {
        --ds-font-base: 20px;
    }
/* Base styles */
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  /* Keep UA zoom behaviour intact; tokens scale via --ds-font-scale. */
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
    font-size: var(--ds-font-base);
}
html :where(img[class*=wp-image-]) {
  min-height: 0;
}
body {
  margin: 0;
  font-family: var(--ds-font-family-base);
  font-size: var(--ds-text-md);
  line-height: var(--ds-line-height-body);
  color: var(--ds-color-text);
  background: var(--ds-color-surface);
}
/* Links */
a {
  color: var(--ds-color-brand);
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.15em;
}
a:hover {
  color: var(--ds-color-brand-strong);
}
/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--ds-font-family-heading);
  line-height: var(--ds-line-height-heading);
  margin: 0;
}
h1 { font-size: var(--ds-text-2xl); }
h2 { font-size: var(--ds-text-xl); }
/* Media */
img, svg, video {
  max-width: 100%;
  height: auto;
}
/* Form baseline (foundation; not a “component library”) */
:where(input, select, textarea) {
  font: inherit;
  color: inherit;
}
:where(input, select, textarea) {
  width: 100%;
  background: var(--ds-color-surface);
  border: 1px solid var(--ds-color-border);
  border-radius: var(--ds-radius-sm);
  padding: var(--ds-space-3) var(--ds-space-4);
}
:where(input, select, textarea)::-moz-placeholder {
  color: var(--ds-color-text-muted);
}
:where(input, select, textarea)::placeholder {
  color: var(--ds-color-text-muted);
}
/* Prevent browser autofill from applying yellow/olive backgrounds. */
:where(input, textarea):-webkit-autofill,
:where(input, textarea):-webkit-autofill:hover,
:where(input, textarea):-webkit-autofill:focus,
:where(input, textarea):-webkit-autofill:active {
  -webkit-text-fill-color: var(--ds-color-text) !important;
  caret-color: var(--ds-color-text);
  box-shadow: 0 0 0 1000px var(--ds-color-surface) inset !important;
  -webkit-transition: background-color 9999s ease-out 0s;
  transition: background-color 9999s ease-out 0s;
}
:where(input, select, textarea):disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
/* Error state hook */
.ds-is-error :where(input, select, textarea),
:where(input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"]) {
  border-color: var(--ds-color-danger);
}
/* Highly visible focus ring (BITV 2.0 / WCAG-friendly) */
:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
  /* Halo ensures visibility on brand backgrounds */
  box-shadow: 0 0 0 calc(var(--ds-focus-width) + var(--ds-focus-offset)) var(--ds-color-focus-halo);
  outline: var(--ds-focus-width) solid var(--ds-color-focus);
  outline-offset: var(--ds-focus-offset);
}
a:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible, summary:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
    border-radius: var(--ds-radius-xs);
  }
a:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline-offset: var(--ds-focus-offset-sm);
  }
/* Remove default outline when not keyboard-focus */
:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus {
  outline: none;
}
/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
  }
}
/* Accessibility helper */
.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Layout primitives (BEM-friendly) */
.l-container {
  width: min(100% - (2 * var(--ds-space-5)), var(--ds-container-max));
  margin-inline: auto;
}
.l-stack {
  display: grid;
  gap: var(--ds-space-4);
}
.l-stack--xl {
  gap: var(--ds-space-7);
}
/* Main content area */
.site-main {
  padding-block: var(--ds-space-7);
}
/* Content */
.content__title {
  font-size: var(--ds-text-xl);
  margin: 0 0 var(--ds-space-4);
}
.content__body {
  display: grid;
  gap: var(--ds-space-4);
}
/* ===================================
   Gutenberg Content Width Constraints
   =================================== */
/* Constrain Gutenberg blocks to 48rem (matches theme.json contentSize) */
.content__body > * {
  max-width: 48rem;
  margin-inline: auto;
  width: 100%;
}
/* Allow wide-aligned blocks to use wideSize (78rem) */
.content__body > .alignwide {
  max-width: 78rem;
}
/* Allow full-width blocks to break out completely */
.content__body > .alignfull {
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
/* Reset for nested elements */
.content__body > * > * {
  max-width: none;
}
/* Surfaces */
.ds-surface {
  background: var(--ds-color-surface);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-lg);
  padding: var(--ds-space-6);
}
.ds-surface--elevated {
  box-shadow: var(--ds-shadow-2);
}
/* Survey layout (matches provided layout intent; functional form markup not included) */
.survey-layout__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ds-space-6);
}
/*
 * Critical for preventing horizontal overflow in 2-column layouts:
 * allow grid children to shrink when they contain horizontally-scrollable content.
 * Without this, wide children can force the grid track wider and create page-level
 * horizontal scroll (as seen in the tech lead screenshot).
 */
.survey-layout__grid > * {
  min-width: 0;
}
@media (min-width: 64rem) {
  .survey-layout__grid {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
}
/* ===============================================
   Block Style Variations
   =============================================== */
.wp-block-column {
    overflow: hidden;
}
/* Column (individual): Bordered style */
.wp-block-column.is-style-bordered {
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-lg);
  padding: var(--ds-space-5);
  display: flex;
  flex-direction: column;
}
.wp-block-column.is-style-bordered .align-bottom {
    margin-top: auto;
  }
.iqtig-contrast-mode-dark .wp-block-column.is-style-bordered {
  border: 1px solid var(--ds-color-border);
}
/* Column (individual): Card style */
.wp-block-column.is-style-card {
  background: var(--ds-color-surface-muted);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-lg);
  padding: var(--ds-space-6);
  box-shadow: var(--ds-shadow-1);
}
.iqtig-contrast-mode-dark .wp-block-column.is-style-card {
  border: 1px solid var(--ds-color-border);
}
p.is-style-lead{
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-text-xl);
    font-weight: 700;
    line-height: var(--ds-font-scale-large);
}
/* Dark Mode Details Arrow Color */
.iqtig-contrast-mode-dark .wp-block-details summary::marker {
  color: var(--ds-color-border);  
}
/* Details block: Accordion box style */
details.is-style-accordion-box {
  margin: var(--ds-space-4) 0;
  padding: var(--ds-space-5);
  border: 2px solid var(--ds-color-border-subtle);
  border-radius: 0.5rem;
  background: var(--ds-color-surface);
  overflow: clip;
}
details.is-style-accordion-box:hover,details.is-style-accordion-box:focus-within {
  /** Workaround for box-sizing: border-box not working */
  border: 2px solid var(--ds-color-brand);
  box-shadow: inset 0px 0px 0px 1px var(--ds-color-brand);
}
details.is-style-accordion-box summary {
  list-style: none;
  display: flex;
  gap: var(--ds-space-3);
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 0;
  font-weight: 600;
  font-size: 1.125rem;
  color: var(--ds-color-brand);
}
details.is-style-accordion-box summary:focus-visible {
    outline: none;
    box-shadow: none;
  }
details.is-style-accordion-box[open] summary {
  padding-bottom: var(--ds-space-2);
}
details.is-style-accordion-box summary::-webkit-details-marker {
  display: none;
}
details.is-style-accordion-box summary::after {
  content: "▼";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--ds-color-brand);
  transition: transform 150ms ease;
  font-size: 0.875rem;
}
details.is-style-accordion-box[open] summary::after {
  transform: rotate(180deg);
}
details.is-style-accordion-box .wp-block-details__content {
  padding: 0;
  padding-top: var(--ds-space-4);
  margin-top: var(--ds-space-4);
  border-top: 1px solid var(--ds-color-border-subtle);
  color: var(--ds-color-text);
  font-size: 1.125rem;
}
details.is-style-accordion-box .wp-block-details__content > :first-child {
  margin-top: 0;
}
details.is-style-accordion-box .wp-block-details__content > :last-child {
  margin-bottom: 0;
}
details.is-style-accordion-box .wp-block-details__content p {
  margin: 0 0 var(--ds-space-3);
}
details.is-style-accordion-box .wp-block-details__content p:last-child {
  margin-bottom: 0;
}
details.is-style-accordion-box .wp-block-details__content ul,
details.is-style-accordion-box .wp-block-details__content ol {
  margin: 0 0 var(--ds-space-3);
  padding-left: 1.25rem;
}
details.is-style-accordion-box .wp-block-details__content li + li {
  margin-top: 0.25rem;
}
/* Columns with TOC Menu: Increase gap */
.wp-block-columns:has(.is-style-toc-menu) {
  gap: var(--ds-space-8) !important;
}
/* Media Text block: Contact Media Text style */
.wp-block-media-text.is-style-contact-media-text {
  border: 2px solid var(--ds-color-border-subtle);
  border-radius: 0.5rem;
  padding: 0 1rem;
  gap: 1rem;
  grid-template-columns: 2.5rem auto !important; /** Forces media width */
}
.wp-block-media-text.is-style-contact-media-text .wp-block-media-text__content {
  padding: 0;
}
.wp-block-media-text.is-style-contact-media-text .wp-block-media-text__media {
  border-radius: 0.5rem;
  background: var(--green-60, #719499);
  padding: .4rem;
}
.wp-block-image.is-style-rainbow-bg {
    background: radial-gradient(60% 80% at 15% 25%, rgba(233, 248, 238, 1) 0%, rgba(233, 248, 238, 0) 70%),
    radial-gradient(55% 80% at 75% 30%, rgba(180, 242, 240, 1) 0%, rgba(180, 242, 240, 0) 70%),
    radial-gradient(70% 90% at 35% 85%, rgba(255, 225, 214, 1) 0%, rgba(255, 225, 214, 0) 70%),
    radial-gradient(70% 90% at 85% 85%, rgba(210, 243, 236, 1) 0%, rgba(210, 243, 236, 0) 70%),
    linear-gradient(135deg, rgba(245, 247, 243, 1), rgba(240, 246, 244, 1));
    background-size: 140% 140%;
    background-position: 0% 0%;
    width: 100%;
}
.wp-block-column > .wp-block-image.is-style-rainbow-bg:first-child {
    left: calc(var(--ds-space-5) * -1);
    margin: 0 calc(var(--ds-space-5) * -1) calc(var(--ds-space-5) * -1);
    position: relative;
    top: calc(var(--ds-space-5) * -1);
    width: calc(100% + (var(--ds-space-5) * 2));
}
@media (max-width: 48.75rem) {
.wp-block-columns:has(.c-video-with-chapters) {
        min-width: 0;
}
    }
.wp-block-column:has(.c-video-with-chapters) {
    overflow: visible!important;
}
@media (max-width: 48.75rem) {
.wp-block-column:has(.c-video-with-chapters) {
        overflow: initial;
}
    }
@keyframes iqtigBackgroundShift {
    0% {
        background-position: 0% 0%;
    }
    100% {
        background-position: 100% 100%;
    }
}
/* Header (global) */
.c-skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  padding: var(--ds-space-3) var(--ds-space-4);
  background: var(--ds-color-surface);
  color: var(--ds-color-text);
  border: 2px solid var(--ds-color-focus);
  border-radius: var(--ds-radius-sm);
  z-index: 9999;
}
.c-skip-link:focus,
.c-skip-link:focus-visible {
  left: var(--ds-space-4);
  top: var(--ds-space-4);
  outline: none;
}
.c-header {
  background: var(--ds-color-brand);
  position: sticky;
  z-index: 50;

  top: 0;
  left: 0;
  right: 0;
  transform: translateY(0);
  transition: transform .2s ease-in-out;
}
.c-header.hide {
    transform: translateY(-100%);
  }
@media (max-width: 59.999rem) {
.c-header {
        padding: 1rem 1.3rem 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
}
    }
/* Account for WordPress admin bar when present. */
.admin-bar .c-header {
    top: 32px;
}
@media (max-width: 782px) {
.admin-bar .c-header {
        top: 46px;
}
    }
.c-header__utility {
  background: transparent;
  color: #fff;
  position: relative; /* For absolute positioning of mobile top border */
}
@media (max-width: 59.999rem) {
.c-header__utility {
        display: none;
        padding-top: 2rem;
        width: 100%;

        /* Top border on mobile menu */
}
        .c-header__utility::before {
            content: "";
            position: absolute;
            display: block;
            width: calc(100% + 1.3rem * 2);
            height: 1px;
            background: var(--ds-color-white-subtle);
            top: 0;
            left: -1.3rem;
        }
    }
.c-header__utilityInner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  min-height: 2.75rem; /* ~44px */
}
@media (max-width: 59.999rem) {
.c-header__utilityInner {
        justify-content: flex-start;
        margin-inline: 0;
}
    }
.c-header__controls {
  display: flex;
  gap: var(--ds-space-4);
  align-items: center;
}
@media (max-width: 59.999rem) {
.c-header__controls {
        flex-direction: column;
}
    }
.c-header__controls button {
        padding: var(--ds-space-1);
    }
.c-header__controls button:focus-visible {
        box-shadow: none;
        outline: var(--ds-focus-offset-sm) solid var(--ds-color-on-brand);
        outline-offset: 0;
        border-radius: var(--ds-radius-xs);
    }
.c-header__control {
  display: inline-flex;
  align-items: center;
  gap: var(--ds-space-2);
  padding: var(--ds-space-2) 0;
  background: transparent;
  border: 0;
  color: var(--ds-color-on-brand);
  font: inherit;
  font-size: var(--ds-text-md);
  line-height: 1;
  cursor: pointer;
}
.c-header__control[aria-disabled="true"] {
  cursor: default;
  opacity: 0.9;
}
.c-header__control .c-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--ds-color-on-brand);
}
.c-header__aa {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  font-weight: 600;
  font-size: 0.95rem;
  line-height: 1;
}
.c-header__controlText {
  white-space: nowrap;
}
/* Current value (Dark/Normal/English, etc.) should remain white like other utility text */
.c-header__control-value {
  color: inherit;
  font-weight: 600;
}
/* Utility dropdowns (scheme / text size / language) */
.c-dropdown {
  position: relative;
  display: inline-flex;
}
@media (max-width: 59.999rem) {
.c-dropdown {
        width: 100%;
}
    }
.c-header__caret {
  display: inline-flex;
  align-items: center;
}
.c-dropdown__menu {
  position: absolute;
  top: calc(100% + var(--ds-space-2));
  right: 0;
  min-width: 12rem;
  padding: var(--ds-space-2);
  background: var(--ds-color-surface);
  color: var(--ds-color-text);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-sm);
  box-shadow: var(--ds-shadow-2);
  z-index: 2000;
}
.c-dropdown__menu[hidden] {
  display: none !important;
}
.c-dropdown__item {
  display: block;
  width: 100%;
  text-align: left;
  padding: var(--ds-space-2) var(--ds-space-3);
  background: transparent;
  border: 0;
  border-radius: var(--ds-radius-sm);
  color: inherit;
  font: inherit;
  font-size: var(--ds-text-md);
  line-height: 1.2;
  cursor: pointer;
}
.c-dropdown__item:hover,
.c-dropdown__item:focus-visible {
  background: rgba(0,0,0,0.06);
  outline: none;
}
.c-dropdown__item[aria-checked="true"] {
  font-weight: 700;
}
.c-dropdown__item:disabled,
.c-dropdown__item[aria-disabled="true"] {
  cursor: default;
  opacity: 1;
}
.c-dropdown__item:disabled:hover,
.c-dropdown__item:disabled:focus-visible {
  background: transparent;
}
.c-header__main {
  background: var(--ds-color-surface);
  box-shadow: var(--ds-shadow-4);
}
@media (max-width: 59.999rem) {
.c-header__main {
        background: transparent;
        box-shadow: none;
        padding: 0;
        height: 100%;
        width: calc(100% + 2.6rem);
}
    }
.c-header__mainInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 5.25rem;
}
@media (max-width: 59.999rem) {
.c-header__mainInner {
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        margin-inline: 0;
        height: 100%;
        background: var(--ds-color-surface);
        color: var(--ds-color-on-brand);
        min-height: unset;
}
    }
@media (max-width: 59.999rem) {
.is-open .c-header__mainInner {
        padding: var(--ds-space-3) var(--ds-space-4);
        min-height: 4.25rem;
        margin-top: 2rem;
}
    }
.c-header__brand {
  display: flex;
  align-items: center;
  gap: var(--ds-space-3);
}
@media (max-width: 59.999rem) {
.c-header__brand {
        position: absolute;
        top: 1rem;
        left: 1.3rem;
}
    }
.c-header__logo,
.c-header .custom-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  /* The logo background is part of the image asset (different per scheme). */
  background: transparent;
  padding: 0;
  border-radius:  0;
}
:is(.c-header__logo,.c-header .custom-logo-link) span {
        height: -moz-fit-content;
        height: fit-content;
    }
:is(.c-header__logo,.c-header .custom-logo-link) svg {
        display: block;
    }
@media (max-width: 59.999rem) {
.c-header__logo,
.c-header .custom-logo-link {
        background: transparent;
        padding: 0;
}
        :is(.c-header__logo,.c-header .custom-logo-link) > * {
            pointer-events: none;
        }
            :is(.c-header__logo,.c-header .custom-logo-link) svg path {
                fill: var(--ds-color-brand);
            }

                :is(.c-header__logo,.c-header .custom-logo-link) svg path:first-child {
                    fill: var(--ds-color-surface);
                }

        :is(.c-header__logo,.c-header .custom-logo-link):focus-visible {
            box-shadow: none;
            outline: var(--ds-focus-width-sm) solid var(--ds-color-on-brand);
            outline-offset: var(--ds-focus-offset-sm);
        }
    }
.c-header__menu {
    list-style: none;
    margin: 0;
    padding: 0;
  display: flex;
  align-items: center;
  gap: var(--ds-space-4);
  /* Ensure long translated labels remain visible on a single bar (no hidden overflow). */
  flex-wrap: wrap;
  row-gap: var(--ds-space-2);
  justify-content: flex-end;
}
@media (max-width: 59.999rem) {
.c-header__menu {
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
}
    }
.c-header__link {
  display: inline-flex;
  align-items: center;
  gap: var(--ds-space-2);
  text-decoration: none;
  color: var(--ds-color-text);
  font-size: var(--ds-text-md);
  padding: var(--ds-space-1) var(--ds-space-2);
  border-radius: var(--ds-radius-sm);
}
.c-header__link.is-current,
    .c-header__link[aria-current="page"] {
        text-decoration: underline;
        text-decoration-color: var(--ds-color-text);
        text-underline-offset: 0.35em;
        font-weight: 700;
        cursor: default;
    }
.c-header__link:hover {
        text-decoration: underline;
        text-decoration-color: var(--ds-color-brand);
        text-underline-offset: 0.35em;
    }
.c-header__link:focus-visible {
        outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
        outline-offset: 0;
    }
.c-header__link .c-icon {
        /* Header nav icons: crisp, aligned with label text. */
        flex: 0 0 auto;
        width: 1.25rem;
        height: 1.25rem;
    }
.c-header__link .c-icon svg {
            max-width: 100%;
            height: auto;
        }
.c-header__link > span {
        line-height: 1.1;
    }
.c-header__burger {
  display: none;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border: 0 none;
  background: transparent;
  color: var(--ds-color-surface);
    margin-left: auto;
    margin-bottom: 1rem;
}
.c-header__burger:focus-visible {
        box-shadow: none;
        outline: var(--ds-focus-width-sm) solid var(--ds-color-on-brand);
        outline-offset: var(--ds-focus-offset-sm);
        border-radius: var(--ds-radius-xs);
    }
@media (max-width: 59.999rem) {
.c-header__burger {
        display: inline-flex;
}
    }
.c-header__burger .c-header__burger-icon-close {
        display: none;
    }
.c-header__burger svg {
        width: 3rem;
        height: 3rem;
    }
.c-header__nav--desktop {
    display: block;
}
@media (max-width: 59.999rem) {
.c-header__nav--desktop {
        display: none;
}
    }
.c-icon--menu-item {
    width: 1.5rem;
    height: 1.5rem;
}
.is-open {
    overflow-y: hidden;
}
@media (max-width: 59.999rem) {
        .is-open .c-header {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
            overflow-y: auto;
            overflow-x: hidden;
            z-index: 99999;
        }

        .is-open .c-header__utility,
        .is-open .c-header__nav--desktop {
            display: block;
        }
            .is-open .c-header__burger .c-header__burger-icon-close {
                display: initial;
            }

            .is-open .c-header__burger .c-header__burger-icon-open {
                display: none;
            }
    }
/* Contrast scheme matches the Figma "Dark" variant: black bars + mint accents */
.iqtig-contrast-mode-dark .c-header__logo svg path {
                fill: var(--ds-color-surface);
            }
.iqtig-contrast-mode-dark .c-header__logo svg path:first-child {
                    fill: var(--ds-color-text);
                }
.iqtig-contrast-mode-dark .c-header__logo:focus-visible {
            outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
        }
.iqtig-contrast-mode-dark .c-header__utility,
    .iqtig-contrast-mode-dark .c-header__main,
    .iqtig-contrast-mode-dark .c-header__mobileTop,
    .iqtig-contrast-mode-dark .c-header__mobileControls,
    .iqtig-contrast-mode-dark .c-dropdown__trigger {
        background: #000;
    }
.iqtig-contrast-mode-dark .c-header__controls button:focus-visible {
        outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
    }
@media (max-width: 59.999rem) {
            /* Bottom border on mobile menu */
            .iqtig-contrast-mode-dark .c-header__utility::after {
                content: "";
                position: absolute;
                display: block;
                width: calc(100% + 1.3rem * 2);
                height: 1px;
                background: var(--ds-color-white-subtle);
                bottom: -2rem;
                left: -1.3rem;
            }
        }
.iqtig-contrast-mode-dark .c-header {
        background: var(--ds-color-black);
    }
.iqtig-contrast-mode-dark .c-header__main {
        box-shadow: none;
        border-top: 1px solid var(--ds-color-white-subtle);
        border-bottom: 1px solid var(--ds-color-white-subtle);
    }
@media (max-width: 59.999rem) {
.iqtig-contrast-mode-dark .c-header__main {
            background: transparent;
            border-bottom: none;
    }
        }
.iqtig-contrast-mode-dark .is-open .c-header__main {
        border-top: none;
    }
.iqtig-contrast-mode-dark .c-header__control,
    .iqtig-contrast-mode-dark .c-header__control .c-icon {
        color: var(--ds-color-white);
    }
.iqtig-contrast-mode-dark .c-header__control-value,
    .iqtig-contrast-mode-dark .c-header__caret .c-icon  {
        color: var(--ds-color-focus);
    }
.iqtig-contrast-mode-dark .c-dropdown__menu {
        background: var(--ds-color-surface);
        color: var(--ds-color-text);
        border-color: var(--ds-color-border-subtle);
    }
.iqtig-contrast-mode-dark .c-dropdown__item {
        text-decoration: none;
    }
.iqtig-contrast-mode-dark .c-dropdown__item:hover,
        .iqtig-contrast-mode-dark .c-dropdown__item .c-dropdown__item:focus-visible {
            background: rgba(255, 255, 255, 0.16);
            color: var(--ds-color-focus);
        }
.iqtig-contrast-mode-dark .c-dropdown__item[aria-checked="true"] {
        background: transparent;
        color: var(--ds-color-focus);
        font-weight: 400;
    }
@media (max-width: 59.999rem) {
.iqtig-contrast-mode-dark .c-header__mainInner {
            background: #000;
    }
        }
.iqtig-contrast-mode-dark .c-header__burger {
        color: var(--ds-color-white);
    }
.iqtig-contrast-mode-dark .c-header__burger:focus-visible {
            outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
        }
/* Breadcrumbs */
.c-breadcrumbsWrap {
  background: var(--ds-color-surface);
}
.c-breadcrumbs {
  padding: 1.5rem 0 0;
  color: var(--ds-color-text-muted);
  font-size: 0.9375rem;
  line-height: 1.3;
}
.c-breadcrumbs__list {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem;
}
.c-breadcrumbs__list a {
  color: inherit;
  text-decoration: none;
}
.c-breadcrumbs__list a:hover,
.c-breadcrumbs__list a:focus-visible {
  color: var(--ds-color-text);
}
.c-breadcrumbs__item--home,
.c-breadcrumbs__homeLink {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.c-breadcrumbs__homeLink {
  width: 1rem;
  height: 1rem;
  line-height: 1;
}
.c-breadcrumbs__homeIcon,
.c-breadcrumbs__homeIcon .c-icon,
.c-breadcrumbs__homeIcon svg {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
}
.c-breadcrumbs__sep {
  opacity: 0.55;
}
.c-breadcrumbs .breadcrumb_last {
  color: var(--ds-color-text);
}
/* Footer (global) */
.c-footer__top {
  padding: var(--ds-space-6) 0;
  border-bottom: 1px solid rgba(255,255,255,0.15);
}
.c-footer__nav {
  display: flex;
  justify-content: center;
}
.c-footer__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: var(--ds-space-6);
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.c-footer__link,
.c-footer__menu a {
  color: #fff;
  text-decoration: none;
  font-size: var(--ds-text-md);
  line-height: 1.4;
  padding: var(--ds-space-1) var(--ds-space-2);
  border-radius: var(--ds-radius-sm);
}
.c-footer__link:hover,
.c-footer__menu a:hover {
  text-decoration: underline;
  text-underline-offset: 0.35em;
}
.c-footer__link:focus-visible,
.c-footer__menu a:focus-visible {
  box-shadow: none;
  outline: var(--ds-focus-width-sm) solid var(--ds-color-on-brand);
  outline-offset: var(--ds-focus-offset-sm);
}
.iqtig-contrast-mode-dark .c-footer__link:focus-visible,
  .iqtig-contrast-mode-dark .c-footer__menu a:focus-visible {
    outline: var(--ds-focus-width-sm) solid var(--ds-color-focus);
  }
.c-footer__bottom {
  padding: var(--ds-space-6) 0;
  text-align: center;
}
.c-footer__text {
  margin: 0;
  font-size: var(--ds-text-sm);
  line-height: 1.6;
  max-width: 72rem;
  margin-inline: auto;
}
/* Mobile spacing */
@media (max-width: 30rem) {
  .c-footer__menu {
    gap: var(--ds-space-5);
  }
}
/* Note: the contrast scheme is implemented via token overrides under */
/* Footer (Figma-aligned) */
.c-footer {
  background: var(--ds-color-brand, #006064);
  color: var(--ds-color-on-brand, #fff);
}
/* Contrast scheme: footer must stay black (per design). */
.iqtig-contrast-mode-dark .c-footer {
  background: var(--ds-color-surface);
  color: var(--ds-color-text);
}
.iqtig-contrast-mode-dark .c-footer__link,
.iqtig-contrast-mode-dark .c-footer__text {
  color: var(--ds-color-text);
}
.iqtig-contrast-mode-dark .c-footer__link:hover {
  color: var(--ds-color-brand);
}
.c-footer__inner {
  display: flex;
  flex-direction: column;
  /* Figma: padding 48px 0px; gap 60px */
  padding-block: 3rem;
  padding-inline: 1.5rem;
  gap: 3.75rem;
}
.c-footer__links {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  /* Figma: gap 60px */
  gap: 3.75rem;
  width: 100%;
  flex-wrap: wrap;
}
.c-footer__links a {
  font-family: var(--ds-font-family-base, 'Noto Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif);
  font-style: normal;
  font-weight: 600;
  font-size: 1.125rem; /* 18px */
  line-height: 1.75rem; /* 28px */
  color: var(--ds-color-on-brand, #fff);
  text-decoration: none;
}
.c-footer__links a:hover {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.c-footer__links a:focus-visible {
  outline: 2px solid var(--ds-color-focus, #FFD54F);
  outline-offset: 2px;
  border-radius: 0.25rem;
}
.c-footer__divider {
  width: 100%;
  height: 1px;
  background: var(--ds-color-on-brand, #fff);
  opacity: 0.15; /* Figma */
  border: 0;
  margin: 0;
}
.c-footer__legal-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  /* Figma: padding 0px 220px */
  padding-inline: clamp(1rem, 15vw, 13.75rem);
}
.c-footer__legal {
  font-family: var(--ds-font-family-base, 'Noto Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif);
  font-style: normal;
  font-weight: 400;
  font-size: 1.125rem; /* 18px */
  line-height: 1.75rem; /* 28px */
  text-align: center;
  color: var(--ds-color-on-brand, #fff);
  max-width: 62.5rem; /* 1000px */
}
/* Small screens: reduce horizontal padding and link gap */
@media (max-width: 600px) {
  .c-footer__inner {
    padding-inline: 1rem;
    gap: 2.25rem;
  }

  .c-footer__links {
    gap: 1.5rem;
  }

  .c-footer__legal-wrap {
    padding-inline: 1rem;
  }
}
/**
 * General Form Styles
 * Applies to all forms (WPCF7, Gravity Forms, IQTIG plugin)
 */
/* Reduce spacing for all form fields */
.wpcf7-form-control-wrap,
.gfield,
.form-field {
  margin-bottom: var(--ds-space-3);
}
.wpcf7 form p,
.gform_wrapper .gfield {
  margin-bottom: var(--ds-space-3);
}
/* Common input styling */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="url"],
input[type="number"],
textarea,
select {
  width: 100%;
  padding: var(--ds-space-2) var(--ds-space-3);
  border: 1px solid var(--ds-color-border);
  border-radius: var(--ds-radius-sm);
  background-color: var(--ds-color-surface);
  color: var(--ds-color-text);
  font-family: var(--ds-font-family-base);
  font-size: var(--ds-text-md);
  line-height: var(--ds-line-height-body);
  transition: border-color 0.2s, box-shadow 0.2s;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--ds-color-focus);
  box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo);
}
/* Labels */
label {
  display: block;
  margin-bottom: var(--ds-space-1);
  font-size: var(--ds-text-sm);
  font-weight: 600;
  color: var(--ds-color-text);
}
/* Required indicator */
.required,
abbr[title] {
  color: var(--ds-color-danger);
  text-decoration: none;
}
/* Help text */
.wpcf7-form .wpcf7-not-valid-tip,
.gfield_description,
.iqtig-forms-help-text {
  font-size: var(--ds-text-xs);
  color: var(--ds-color-text-muted);
  margin-top: var(--ds-space-1);
}
/* Error states */
.wpcf7-form .wpcf7-not-valid,
.gfield_error input,
.gfield_error textarea,
.gfield_error select,
.form-field.has-error input,
.form-field.has-error textarea {
  border-color: var(--ds-color-danger);
  border-width: 2px;
}
.wpcf7-form .wpcf7-not-valid-tip,
.gfield_error .validation_message,
.iqtig-forms-error {
  color: var(--ds-color-danger);
  font-size: var(--ds-text-xs);
  margin-top: var(--ds-space-1);
}
/* Checkbox and radio inputs */
input[type="checkbox"],
input[type="radio"] {
  margin-right: var(--ds-space-2);
  width: 1.125rem;
  height: 1.125rem;
  accent-color: var(--ds-color-brand);
}
/* Submit buttons */
input[type="submit"],
button[type="submit"],
.wpcf7-submit,
.gform_button,
.wp-block-button__link {
  padding: var(--ds-space-2) var(--ds-space-5);
  background-color: var(--ds-color-brand);
  color: var(--ds-color-on-brand);
  border: none;
  border-radius: var(--ds-radius-md);
  font-family: var(--ds-font-family-base);
  font-size: var(--ds-text-md);
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s, transform 0.1s;
  display: inline-block;
  text-decoration: none;
}
input[type="submit"]:hover,
button[type="submit"]:hover,
.wpcf7-submit:hover,
.gform_button:hover,
.wp-block-button__link:hover {
  background-color: var(--ds-color-brand-strong);
}
input[type="submit"]:focus,
button[type="submit"]:focus,
.wpcf7-submit:focus,
.gform_button:focus,
.wp-block-button__link:focus {
  outline: var(--ds-focus-width) solid var(--ds-color-focus);
  outline-offset: var(--ds-focus-offset);
}
/* Responsive adjustments */
@media screen and (max-width: 600px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  input[type="url"],
  input[type="number"],
  textarea,
  select {
    font-size: 16px; /* Prevent zoom on iOS */
  }
}
/**
 * Buttons (global)
 * Theme-specific styling for the page buttons
 */
/* Default font size and padding for all buttons */
.wp-block-button .wp-block-button__link {
  padding: var(--ds-space-4) var(--ds-space-5);
  font-size: var(--ds-text-lg);
  transition: background-color 0.2s;
  color: var(--ds-color-on-brand);
  border-radius: var(--ds-radius-md);
}
.wp-block-button.is-style-outline .wp-block-button__link {
  padding: calc(var(--ds-space-4) - 2px) calc(var(--ds-space-5) - 2px); /* Adjust padding to account for 2px border */
  color: var(--ds-color-brand);
  background-color: var(--ds-color-surface-muted);
}
.wp-block-button.is-style-borderless .wp-block-button__link {
  padding: var(--ds-space-1) var(--ds-space-2); /* Reduced padding for borderless style */
  background-color: transparent;
  color: var(--ds-color-text);
}
/* Hover states */
.wp-block-button .wp-block-button__link:hover {
    background-color: var(--ds-color-brand-hover);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: var(--ds-color-on-brand-hover);
}
.wp-block-button.is-style-borderless .wp-block-button__link:hover {
  background-color: white;
  color: black;
}
/* Focus states */
.wp-block-button.is-style-borderless .wp-block-button__link:focus {
    outline-color: white;
}
/* Dark mode adjustments */
.iqtig-contrast-mode-dark .wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: var(--ds-color-brand-hover);
}
.iqtig-contrast-mode-dark .wp-block-button.is-style-borderless .wp-block-button__link:focus {
    outline-color: var(--ds-color-brand);
}
.wp-block-button .wp-block-button__link::before,
.wp-block-button .wp-block-button__link::after,
.iqtig-contrast-mode-dark .wp-block-button.is-style-borderless .wp-block-button__link::before,
.iqtig-contrast-mode-dark .wp-block-button.is-style-borderless .wp-block-button__link::after {
  /* White */
  filter: brightness(0) saturate(100%) invert(100%);
}
.wp-block-button.is-style-outline .wp-block-button__link::before,
.wp-block-button.is-style-outline .wp-block-button__link::after {
  /* Brand */
  filter: brightness(0) saturate(100%) invert(26%) sepia(96%) saturate(453%) hue-rotate(133deg) brightness(94%) contrast(101%);
}
.iqtig-contrast-mode-dark .wp-block-button .wp-block-button__link::before,
.iqtig-contrast-mode-dark .wp-block-button .wp-block-button__link::after,
.wp-block-button.is-style-borderless .wp-block-button__link::before,
.wp-block-button.is-style-borderless .wp-block-button__link::after,
.wp-block-button.is-style-borderless .wp-block-button__link:hover::before,
.wp-block-button.is-style-borderless .wp-block-button__link:hover::after {
  /* Black */
  filter: brightness(0) saturate(100%);
}
.iqtig-contrast-mode-dark .wp-block-button.is-style-outline .wp-block-button__link::before,
.iqtig-contrast-mode-dark .wp-block-button.is-style-outline .wp-block-button__link::after {
  /* Dark Mode Brand */
  filter: brightness(0) saturate(100%) invert(100%) sepia(18%) saturate(6155%) hue-rotate(65deg) brightness(106%) contrast(121%);
}
.iqtig-contrast-mode-dark .wp-block-button.is-style-outline .wp-block-button__link:hover::before,
.iqtig-contrast-mode-dark .wp-block-button.is-style-outline .wp-block-button__link:hover::after {
    /* Dark Mode Brand Hover */
    filter: brightness(0) saturate(100%) invert(57%) sepia(79%) saturate(413%) hue-rotate(109deg) brightness(98%) contrast(90%);
}
/** Custom Button Style: FAQ Icon */
.wp-block-button.is-style-faq-icon .wp-block-button__link {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.wp-block-button.is-style-faq-icon .wp-block-button__link::before {
  content: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M20 0C31.046 0 40 8.956 40 20C40 31.044 31.046 40 20 40C8.954 40 0 31.044 0 20C0 8.956 8.954 0 20 0ZM20 3.334C10.81 3.334 3.334 10.81 3.334 20C3.334 29.19 10.81 36.666 20 36.666C29.19 36.666 36.666 29.19 36.666 20C36.666 10.81 29.19 3.334 20 3.334ZM20 27C21.1046 27 22 27.8954 22 29C22 30.1046 21.1046 31 20 31C18.8954 31 18 30.1046 18 29C18 27.8954 18.8954 27 20 27ZM20 9.5C23.0376 9.5 25.5 11.9624 25.5 15C25.5 17.0216 24.905 18.148 23.3978 19.7172L23.0606 20.0606C21.8168 21.3044 21.5 21.8326 21.5 23C21.5 23.8284 20.8284 24.5 20 24.5C19.1716 24.5 18.5 23.8284 18.5 23C18.5 20.9784 19.095 19.852 20.6022 18.2828L20.9394 17.9394C22.1832 16.6956 22.5 16.1674 22.5 15C22.5 13.6193 21.3808 12.5 20 12.5C18.7056 12.5 17.641 13.4837 17.513 14.7444L17.5 15C17.5 15.8284 16.8284 16.5 16 16.5C15.1716 16.5 14.5 15.8284 14.5 15C14.5 11.9624 16.9624 9.5 20 9.5Z%27 fill=%27black%27/%3E%3C/svg%3E%0A");
  width: 40px;
  height: 40px;
  display: inline-block;
  margin: -20px 0 -20px -10px;
  transform: scale(.5);
}
/** Custom Arrow Button Style */
.wp-block-button.is-style-arrow-icon .wp-block-button__link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.wp-block-button.is-style-arrow-icon .wp-block-button__link::after {
  content: url("data:image/svg+xml,%3Csvg width=%2720%27 height=%2712%27 viewBox=%270 0 20 12%27 fill=%27black%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M1 6H18.0833M18.0833 6L13.1398 1M18.0833 6L13.1398 11%27 stroke=%27%23333333%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
  margin-left: .5em;
}
.wpforms-field .wpforms-field-label {
    font-size: var(--ds-text-sm) !important;
    font-weight: 600 !important;
    color: var(--ds-color-text) !important;
  }
/* Input fields */
.wpforms-field input[type="text"],
  .wpforms-field input[type="password"],
  .wpforms-field input[type="email"],
  .wpforms-field input[type="tel"],
  .wpforms-field textarea {
    padding: var(--ds-space-2) var(--ds-space-3) !important;
    border: 1px solid var(--ds-color-border) !important;
    border-radius: var(--ds-radius-sm) !important;
    background-color: var(--ds-color-surface) !important;
    color: var(--ds-color-text) !important;
    font-size: var(--ds-text-md) !important;
    line-height: var(--ds-line-height-body) !important;
    transition: all .1s !important;
  }
:is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):hover {
        outline: none !important;
        border-color: var(--ds-color-focus) !important;
        box-shadow: inset 0px 0px 0px 1px var(--ds-color-focus) !important;
    }
:is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):focus {
        outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
        outline-offset: var(--ds-input-focus-offset) !important;
        box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), inset 0px 0px 0px 1px var(--ds-color-focus) !important;
    }
.wpforms-error:is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea) {
        border-color: var(--ds-color-danger) !important;
        /* border-width: 2px !important; */
        box-shadow: 0px 0px 0px 1px var(--ds-color-danger) !important;
    }
:is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):-webkit-autofill,
    :is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):-webkit-autofill:hover,
    :is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):-webkit-autofill:focus,
    :is(.wpforms-field input[type="text"],.wpforms-field input[type="password"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea):-webkit-autofill:active {
        -webkit-text-fill-color: var(--ds-color-text) !important;
        caret-color: var(--ds-color-text);
        box-shadow: 0 0 0 1000px var(--ds-color-surface) inset !important;
        -webkit-transition: background-color 9999s ease-out 0s;
        transition: background-color 9999s ease-out 0s;
    }
/* Checkbox/radio fieldset */
.wpforms-field fieldset {
    gap: var(--ds-space-2) !important;
  }
.wpforms-field fieldset label {
    gap: var(--ds-space-2) !important;
    font-weight: 400 !important;
    color: var(--ds-color-text) !important;
    font-size: var(--ds-text-sm) !important;
  }
/* Checkbox/radio inputs */
.wpforms-field input[type="checkbox"],
  .wpforms-field input[type="radio"] {
    width: 1.125rem !important;
    height: 1.125rem !important;
  }
.wpforms-field input[type="checkbox"]:before, .wpforms-field input[type="radio"]:before {
        background-color: var(--ds-color-surface) !important;
        accent-color: var(--ds-color-brand) !important;
        transition: all .1s !important;
        width: 1rem !important;
        height: 1rem !important;
    }
.iqtig-contrast-mode-dark :is(.wpforms-field input[type="checkbox"]):before, .iqtig-contrast-mode-dark :is(.wpforms-field input[type="radio"]):before {
        border-color: var(--ds-color-brand) !important;
    }
.wpforms-field input[type="checkbox"]:hover:before, .wpforms-field input[type="radio"]:hover:before {
        outline: none !important;
        border-color: var(--ds-color-focus) !important;
        box-shadow: 0 0 0 1px var(--ds-color-brand);
    }
.wpforms-field input[type="checkbox"]:focus:before, .wpforms-field input[type="radio"]:focus:before {
        outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
        outline-offset: var(--ds-input-focus-offset) !important;
    }
.wpforms-field input[type="checkbox"]:checked:before, .wpforms-field input[type="radio"]:checked:before {
        background-color: var(--ds-color-on-brand-hover) !important;
        border-color: var(--ds-color-brand) !important;
        box-shadow: 0 0 0 1px var(--ds-color-brand), 0px 1px 2px rgba(0, 0, 0, 0.15) !important;
    }
.wpforms-field input[type="checkbox"]:checked:after, .wpforms-field input[type="radio"]:checked:after {
        border-color: var(--ds-color-brand) !important;
        width: 1rem;
        top: 50% !important;
        transform: translate(0, calc(-100% + 3px)) scale(0.5) rotate(-45deg) !important;
    }
.wpforms-field input.wpforms-error[type="checkbox"]:before, .wpforms-field input.wpforms-error[type="radio"]:before {
        border-color: var(--ds-color-danger) !important;
        box-shadow: 0px 0px 0px 1px var(--ds-color-danger) !important;
    }
.wpforms-field input.wpforms-error[type="checkbox"]:before:focus, .wpforms-field input.wpforms-error[type="radio"]:before:focus {
        box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), 0px 0px 0px 1px var(--ds-color-danger);
        }
.wpforms-field .wpforms-field-description {
    font-size: var(--ds-text-sm) !important;
    color: var(--ds-color-text-muted) !important;
    margin-top: var(--ds-space-2) !important; 
    line-height: 1.4 !important;
  }
.wpforms-field em.wpforms-error {
    font-size: var(--ds-text-sm) !important;
    color: var(--ds-color-danger) !important;
    margin-top: var(--ds-space-2) !important; 
    line-height: 1.4 !important;
    padding: 0 !important;
  }
.wpforms-field em.wpforms-error::before {
        content: none !important;
    }
.wpforms-submit:last-of-type {
    width: 100% !important;
}
/* Force app button style */
.wpforms-submit {
  padding: var(--ds-space-4) var(--ds-space-5) !important;
  font-size: var(--ds-text-lg) !important;
  transition: background-color 0.2s !important;
  color: var(--ds-color-on-brand) !important;
  border-radius: var(--ds-radius-md) !important;
  background-color: var(--ds-color-brand) !important;
  height: auto !important;
  line-height: var(--ds-line-height-body) !important;
}
.wpforms-submit:hover {
    background-color: var(--ds-color-brand-hover) !important;
}
.wpforms-submit:focus {
    outline: var(--ds-focus-width) solid var(--ds-color-focus) !important;
    outline-offset: 2px !important;
}
.wpforms-submit:focus::after {
        border: none !important;
    }
.wpforms-container-full {
    width: 100% !important;
}
/**
 * IQTIG Login Form Block Styles
 * Theme-specific styling for the IQTIG Custom Plugin login form
 */
.wp-block-iqtig-forms-login-form form {
    gap: var(--ds-space-3);
  }
.wp-block-iqtig-forms-login-form form p {
          font-size: var(--ds-text-sm);
          margin: 0;
      }
/* Form field wrapper */
.wp-block-iqtig-forms-login-form .form-field {
    gap: var(--ds-space-1);
  }
.wp-block-iqtig-forms-login-form .iqtig-forms-field-hint {
        margin-top: calc(-1 * var(--ds-space-2));
        margin-bottom: var(--ds-space-2);
    }
/* Labels */
.wp-block-iqtig-forms-login-form label {
    font-size: var(--ds-text-sm);
    font-weight: 600;
    color: var(--ds-color-text);
  }
/* Input fields */
.wp-block-iqtig-forms-login-form input[type="text"],
  .wp-block-iqtig-forms-login-form input[type="password"],
  .wp-block-iqtig-forms-login-form input[type="email"],
  .wp-block-iqtig-forms-login-form input[type="tel"],
  .wp-block-iqtig-forms-login-form textarea {
    padding: var(--ds-space-2) var(--ds-space-3);
    border: 1px solid var(--ds-color-border);
    border-radius: var(--ds-radius-sm);
    background-color: var(--ds-color-surface);
    color: var(--ds-color-text);
    font-size: var(--ds-text-md);
    line-height: var(--ds-line-height-body);
    transition: all .1s;
  }
:is(.wp-block-iqtig-forms-login-form input[type="text"],.wp-block-iqtig-forms-login-form input[type="password"],.wp-block-iqtig-forms-login-form input[type="email"],.wp-block-iqtig-forms-login-form input[type="tel"],.wp-block-iqtig-forms-login-form textarea):hover {
      outline: none;
      border-color: var(--ds-color-focus);
      box-shadow: inset 0px 0px 0px 1px var(--ds-color-focus);
    }
:is(.wp-block-iqtig-forms-login-form input[type="text"],.wp-block-iqtig-forms-login-form input[type="password"],.wp-block-iqtig-forms-login-form input[type="email"],.wp-block-iqtig-forms-login-form input[type="tel"],.wp-block-iqtig-forms-login-form textarea):focus {
      outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
      outline-offset: var(--ds-input-focus-offset) !important;
      box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), inset 0px 0px 0px 1px var(--ds-color-focus) !important;
    }
/* CUSTOM STYLE FOR CHECKBOX */
.wp-block-iqtig-forms-login-form .form-field-checkbox label {
      position: relative;
      padding-left: calc(1.125rem + 10px);
      cursor: pointer;
      -webkit-user-select: none;
         -moz-user-select: none;
              user-select: none;

      /* Hide the default checkbox */
    }
.wp-block-iqtig-forms-login-form .form-field-checkbox label input[type="checkbox"] {
        background: none;
        height: 0;
        cursor: pointer;
        opacity: 0;
        outline: 0 none;
        position: absolute;
        width: 0;
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox label input[type="checkbox"]:hover,
        .wp-block-iqtig-forms-login-form .form-field-checkbox label input[type="checkbox"]:focus {
          outline: var(--ds-input-focus-width) solid var(--ds-color-focus) !important;
          outline-offset: var(--ds-input-focus-offset) !important;
        }
/* The Custom Box (The Container) */
.wp-block-iqtig-forms-login-form .form-field-checkbox label::before {
        content: '';
        width: 1.125rem;
        height: 1.125rem;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        transition: all .1s;
        background-color: var(--ds-color-surface);
        border: 1px solid var(--ds-color-border);
        border-radius: 3px;
        flex-shrink: 0;
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox label:hover::before {
        border-color: var(--ds-color-brand);
        box-shadow: 0 0 0 1px var(--ds-color-brand), 0px 1px 2px rgba(0, 0, 0, 0.15);
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox label:has(input:focus)::before {
        outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
        outline-offset: var(--ds-input-focus-offset) !important;
      }
/* The "Checked" Logic using :has() */
.wp-block-iqtig-forms-login-form .form-field-checkbox label:has(input:checked)::before {
        background-color: var(--ds-color-on-brand-hover);
        border-color: var(--ds-color-brand);
        box-shadow: 0 0 0 1px var(--ds-color-brand), 0px 1px 2px rgba(0, 0, 0, 0.15);
      }
/* The checkmark */
.wp-block-iqtig-forms-login-form .form-field-checkbox label::after {
        content: "";
        position: absolute;
        top: 50%;
        left: calc(1.125rem / 2);
        width: 1.125rem;
        height: calc(1.125rem * .6);
        border-left: 4px solid var(--ds-color-brand);
        border-bottom: 4px solid var(--ds-color-brand);
        transform: translate(-50%, calc(-50% - 1px)) scale(0.55) rotate(-45deg);;
        display: none;
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox label:has(input:checked)::after {
        display: block;
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox.has-error label::before {
        border-color: var(--ds-color-danger);
        box-shadow: 0px 0px 0px 1px var(--ds-color-danger);
      }
.wp-block-iqtig-forms-login-form .form-field-checkbox.has-error label::before:focus {
        box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), 0px 0px 0px 1px var(--ds-color-danger);
        }
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper {
    display: block;
  }
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-error {
      margin-top: calc(var(--ds-space-1) * 2);
    }
/* Password toggle button */
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-password-toggle {
      background: url(9f911929733c3a3758b4.svg) no-repeat center;
      color: var(--ds-color-text-muted);
      font-size: var(--ds-text-sm);
      padding: var(--ds-space-4);
      right: var(--ds-space-4);
      top: calc(1px + var(--ds-space-2) + var(--ds-text-md) * 1.5 / 2);
      transform: translateY(-50%);
    }
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-password-toggle:hover,
        .wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-password-toggle:focus {
          color: var(--ds-color-text);
          outline-color: var(--ds-color-focus);
        }
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-password-toggle.is-visible {
          background-image: url(744444198415194fa972.svg);
        }
.wp-block-iqtig-forms-login-form form .iqtig-forms-password-wrapper .iqtig-forms-password-toggle .iqtig-forms-password-toggle-text {
          display: none;
        }
/* Error states */
.wp-block-iqtig-forms-login-form .form-field.has-error input,
  .wp-block-iqtig-forms-login-form .form-field.has-error textarea {
    border-color: var(--ds-color-danger);
    box-shadow: inset 0px 0px 0px 1px var(--ds-color-danger);
  }
.wp-block-iqtig-forms-login-form .form-field.has-error input:focus, .wp-block-iqtig-forms-login-form .form-field.has-error textarea:focus {
      box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), 0px 0px 0px 1px var(--ds-color-danger);
    }
.wp-block-iqtig-forms-login-form .iqtig-forms-error {
    color: var(--ds-color-danger);
    font-size: var(--ds-text-sm);
    margin-top: var(--ds-space-1);
  }
.wp-block-iqtig-forms-login-form .iqtig-forms-warning {
    color: var(--ds-color-warning);
    font-size: var(--ds-text-sm);
  }
/* Help text */
.wp-block-iqtig-forms-login-form .iqtig-forms-help-text {
    font-size: var(--ds-text-sm);
    color: var(--ds-color-text-muted);
    margin-top: var(--ds-space-1);
    line-height: 1.4;
  }
/* Submit button wrapper */
.wp-block-iqtig-forms-login-form .form-submit {
    margin-top: var(--ds-space-4);
  }
/* Submit button */
.wp-block-iqtig-forms-login-form .form-submit button,
  .wp-block-iqtig-forms-login-form .form-submit input[type="submit"] {
    width: 100%;
    padding: var(--ds-space-4) var(--ds-space-5);
    background-color: var(--ds-color-brand);
    color: var(--ds-color-on-brand);
    border: none;
    border-radius: var(--ds-radius-md);
    font-size: var(--ds-text-lg);
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s;
  }
[disabled]:is(.wp-block-iqtig-forms-login-form .form-submit button,.wp-block-iqtig-forms-login-form .form-submit input[type="submit"]) {
      background-color: var(--ds-color-brand-disabled);
      opacity: 0.5;
      cursor: not-allowed;
    }
.wp-block-iqtig-forms-login-form .form-submit button:hover,
  .wp-block-iqtig-forms-login-form .form-submit input[type="submit"]:hover {
    background-color: var(--ds-color-brand-strong);
  }
.wp-block-iqtig-forms-login-form .form-submit button:focus,
  .wp-block-iqtig-forms-login-form .form-submit input[type="submit"]:focus {
    outline: var(--ds-focus-width) solid var(--ds-color-focus);
    outline-offset: var(--ds-focus-offset);
  }
/* Checkbox/radio fieldset */
.wp-block-iqtig-forms-login-form fieldset {
    gap: var(--ds-space-2);
  }
.wp-block-iqtig-forms-login-form fieldset label {
    gap: var(--ds-space-2);
    font-weight: 400;
  }
/* Checkbox/radio inputs */
.wp-block-iqtig-forms-login-form input[type="checkbox"],
  .wp-block-iqtig-forms-login-form input[type="radio"] {
    width: 1.125rem;
    height: 1.125rem;
    accent-color: var(--ds-color-brand);
  }
/* Contrast mode support */
[data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form input[type="text"],
  [data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form input[type="password"],
  [data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form input[type="email"],
  [data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form input[type="tel"],
  [data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form textarea {
    border-color: var(--ds-color-border);
    background-color: var(--ds-color-surface);
    color: var(--ds-color-text);
  }
[data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form .form-submit button,
  [data-color-scheme="contrast"] .wp-block-iqtig-forms-login-form .form-submit input[type="submit"] {
    background-color: var(--ds-color-brand);
    color: var(--ds-color-on-brand);
  }
:is(.iqtig-forms-unsubscribe-form input[type="text"],.iqtig-forms-unsubscribe-form input[type="password"],.iqtig-forms-unsubscribe-form input[type="email"],.iqtig-forms-unsubscribe-form input[type="tel"],.iqtig-forms-unsubscribe-form textarea):hover {
      outline: none;
      border-color: var(--ds-color-focus);
      box-shadow: inset 0px 0px 0px 1px var(--ds-color-focus);
    }
:is(.iqtig-forms-unsubscribe-form input[type="text"],.iqtig-forms-unsubscribe-form input[type="password"],.iqtig-forms-unsubscribe-form input[type="email"],.iqtig-forms-unsubscribe-form input[type="tel"],.iqtig-forms-unsubscribe-form textarea):focus {
      outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
      outline-offset: var(--ds-input-focus-offset) !important;
      box-shadow: 0 0 0 var(--ds-focus-width) var(--ds-color-focus-halo), inset 0px 0px 0px 1px var(--ds-color-focus) !important;
    }
.iqtig-forms-unsubscribe-form .iqtig-forms-reasons-fieldset input[type="checkbox"]:hover,
      .iqtig-forms-unsubscribe-form .iqtig-forms-reasons-fieldset input[type="checkbox"]:focus {
        background: none;
        outline: var(--ds-input-focus-width) solid var(--ds-color-focus) !important;
        outline-offset: var(--ds-input-focus-offset) !important;
      }
/* Responsive - mobile full width button */
@media screen and (max-width: 600px) {
    .wp-block-iqtig-forms-login-form .form-submit button,
    .wp-block-iqtig-forms-login-form .form-submit input[type="submit"] {
      width: 100%;
    }
}
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox {
        align-items: center;
        justify-content: center;
        position: relative;
        display: flex;
        overflow: hidden;
        min-height: 30px;
        min-width: 30px;
    }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox:hover::before {
                border-color: var(--ds-color-brand);
                box-shadow: 0 0 0 1px var(--ds-color-brand), 0px 1px 2px rgba(0, 0, 0, 0.15);
            }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox::before {
            content: '';
            width: 1.125rem;
            height: 1.125rem;
            position: absolute;
            left: 4px;
            top: 50%;
            transform: translateY(-50%);
            transition: all .1s;
            background-color: var(--ds-color-surface);
            border: 1px solid var(--ds-color-border);
            border-radius: 3px;
            cursor: pointer;
        }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox::after {
            content: "";
            position: absolute;
            top: 50%;
            left: calc(26px / 2);
            width: 1.125rem;
            height: calc(1.125rem * .6);
            border-left: 4px solid var(--ds-color-brand);
            border-bottom: 4px solid var(--ds-color-brand);
            transform: translate(-50%, calc(-50% - 1px)) scale(0.55) rotate(-45deg);
            display: none;
            cursor: pointer;
        }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox:has(input:checked)::after {
                display: block;
            }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox:has(input:checked)::before {
                background-color: var(--ds-color-on-brand-hover);
                border-color: var(--ds-color-brand);
                box-shadow: 0 0 0 1px var(--ds-color-brand), 0px 1px 2px rgba(0, 0, 0, 0.15);
            }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox:has(input:focus)::before, .iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox:has(input:focus-within)::before {
                outline: var(--ds-input-focus-width) solid var(--ds-color-focused-outline) !important;
                outline-offset: var(--ds-input-focus-offset) !important;
            }
.iqtig-forms-unsubscribe-form .iqtig-forms-reason-checkbox [type="checkbox"] {
            cursor: pointer;
            height: 30px;
            left: 0;
            opacity: 0;
            position: absolute;
            margin: 0;
            top: 0;
            width: 30px;
            z-index: 9;
        }
.iqtig-forms-unsubscribe-form-left .iqtig-forms-reason-checkbox {
        cursor: pointer;
    }
.iqtig-forms-unsubscribe-form-left .row:has(.iqtig-forms-reason-checkbox) label {
            margin-left: 1.5rem;
        }
.wp-block-column:has(.wp-block-simpletoc-toc.is-style-toc-menu) {
    height: 100%;
    overflow: initial;
}
@media (max-width: 48.75rem) {
.wp-block-column:has(.wp-block-simpletoc-toc.is-style-toc-menu) {
        display: none;
}
    }
.wp-block-simpletoc-toc .simpletoc-list {
        list-style: none;
        padding: 0;
        margin: 0;
        display: grid;
        gap: var(--ds-space-2);
    }
.wp-block-simpletoc-toc .simpletoc-list a {
            display: block;
            padding: 0.7rem 0.9rem;
            border-radius: 0.375rem;
            color: var(--ds-color-text);
            text-decoration: none;
            line-height: 1.2;
            font-size: 1.125rem;
        }
.wp-block-simpletoc-toc .simpletoc-list a:hover {
                background: var(--ds-color-surface-muted);
            }
.wp-block-simpletoc-toc.is-style-toc-menu {
        position: sticky;
        top: var(--toc-header-height, calc(var(--ds-space-7) + 1.5rem));
    }
@media (max-width: 48.75rem) {
.wp-block-simpletoc-toc.is-style-toc-menu {
            position: initial;
    }
        }
.wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a:hover,
                .wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a.is-active,
                .wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a[aria-current="true"] {
                    color: #fff;
                }
.wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a:hover {
                    background: var(--ds-color-brand-hover);
                }
.wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a:focus-visible {
                    outline: 2px solid var(--ds-color-focus);
                    outline-offset: 2px;
                }
.wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a.is-active,
                .wp-block-simpletoc-toc.is-style-toc-menu .simpletoc-list a[aria-current="true"] {
                    background: var(--ds-color-brand);
                }
.iqtig-contrast-mode-dark .wp-block-simpletoc-toc.is-style-toc-menu a:focus-visible {
                    color: var(--ds-color-white);
                }
.iqtig-contrast-mode-dark .wp-block-simpletoc-toc.is-style-toc-menu a:hover,
                .iqtig-contrast-mode-dark .wp-block-simpletoc-toc.is-style-toc-menu a.is-active,
                .iqtig-contrast-mode-dark .wp-block-simpletoc-toc.is-style-toc-menu a[aria-current="true"] {
                    color: var(--ds-color-black);
                }
/* Login page (Figma: "Log In – Extra Large") */
.c-login {
  padding: var(--ds-space-8) 0;
}
.c-login__layout {
  display: grid;
  gap: var(--ds-space-8);
  align-items: start;
}
@media (min-width: 60rem) {
  .c-login__layout {
    grid-template-columns: 1fr 1fr;
    gap: 3.75rem; /* ~60px */
  }
}
.c-login__card {
  background: var(--ds-color-surface-muted);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-lg);
  box-shadow: var(--ds-shadow-sm);
  overflow: hidden;
}
/* Dark/contrast variant: black cards with mint borders */
.iqtig-contrast-mode-dark .c-login__card {
  background: var(--ds-color-surface);
  border-color: var(--ds-color-border);
  box-shadow: none;
}
.c-login__cardBody {
  padding: var(--ds-space-6);
}
@media (min-width: 60rem) {
  .c-login__cardBody {
    padding: 2.25rem; /* ~36px */
  }
}
/* Left card: hero */
.c-login__hero {
  padding: 0;
  background: transparent;
}
/* Video hero (optional via ACF). */
.c-login__heroVideo {
  width: 100%;
  height: auto;
  display: block;
}
/* Static image hero (optional via ACF). */
.c-login__heroImg {
  width: 100%;
  height: auto;
  display: block;
}
/* Default animated hero (no ACF overrides): CSS gradient + transparent heart overlay. */
.c-login__hero--animated {
  position: relative;
  overflow: hidden;
  aspect-ratio: 2048 / 1118;
  min-height: 14rem;
  display: grid;
  place-items: center;
  padding: 1.25rem 1rem 1.75rem;
}
.c-login__heroBg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(60% 80% at 15% 25%, rgba(233, 248, 238, 1) 0%, rgba(233, 248, 238, 0) 70%),
    radial-gradient(55% 80% at 75% 30%, rgba(180, 242, 240, 1) 0%, rgba(180, 242, 240, 0) 70%),
    radial-gradient(70% 90% at 35% 85%, rgba(255, 225, 214, 1) 0%, rgba(255, 225, 214, 0) 70%),
    radial-gradient(70% 90% at 85% 85%, rgba(210, 243, 236, 1) 0%, rgba(210, 243, 236, 0) 70%),
    linear-gradient(135deg, rgba(245, 247, 243, 1), rgba(240, 246, 244, 1));
  background-size: 140% 140%;
  background-position: 0% 0%;
  animation: iqtigLoginHeroShift 14s ease-in-out infinite alternate;
}
.c-login__heroHeart {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  will-change: opacity, transform;
}
.c-login__heroHearts {
  position: relative;
  z-index: 1;
  height: min(82%, 20rem);
  width: auto;
  aspect-ratio: 268 / 355;
}
.c-login__heroHeart--a {
  opacity: 1;
  animation: iqtigHeartA 3.5s ease-in-out infinite;
}
.c-login__heroHeart--b {
  opacity: 0;
  animation: iqtigHeartB 3.5s ease-in-out infinite;
}
@keyframes iqtigLoginHeroShift {
  0%   { background-position: 0% 0%; }
  100% { background-position: 100% 100%; }
}
@keyframes iqtigHeartA {
  0%, 45% { opacity: 1; transform: scale(1); }
  50%, 95% { opacity: 0; transform: scale(1.015); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes iqtigHeartB {
  0%, 45% { opacity: 0; transform: scale(1.015); }
  50%, 95% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.015); }
}
@media (prefers-reduced-motion: reduce) {
  .c-login__heroBg { animation: none; }
  .c-login__heroHeart--a,
  .c-login__heroHeart--b { animation: none; transform: none; }
  .c-login__heroHeart--b { display: none; }
}
.c-login__infoTitle {
  font-size: var(--ds-text-xl);
  line-height: 1.05;
  margin: 0 0 var(--ds-space-4);
  color: var(--ds-color-text);
}
.c-login__infoText {
  font-size: var(--ds-text-md);
  line-height: 1.5;
  color: var(--ds-color-text);
}
.c-login__infoBtn {
  margin-top: var(--ds-space-6);
  display: inline-flex;
  align-items: center;
  gap: var(--ds-space-3);
  padding: 0.625rem 1.25rem;
  border-radius: var(--ds-radius-md);
  border: 1px solid var(--ds-color-border);
  background: var(--ds-color-surface-muted);
  color: var(--ds-color-brand);
  text-decoration: none;
  font-weight: 600;
  line-height: 1;
}
.c-login__infoBtn:hover {
  background: var(--ds-color-surface);
}
.c-login__infoBtn:focus-visible {
  outline: 2px solid var(--ds-color-focus);
  outline-offset: 2px;
}
.c-login__infoBtn .c-icon {
  /* Match the design: a compact help icon aligned with the label. */
  width: 1.375rem;
  height: 1.375rem;
}
.c-login__title {
  font-size: var(--ds-text-xl);
  line-height: 1.05;
  margin: 0 0 var(--ds-space-4);
  color: var(--ds-color-text);
}
.c-login__intro {
  margin: 0 0 var(--ds-space-6);
  font-size: var(--ds-text-md);
  color: var(--ds-color-text);
}
/* Logged-in state (login page used as landing/gateway) */
.c-login__alreadyIn {
  display: grid;
  gap: var(--ds-space-4);
  padding: var(--ds-space-5);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-md);
  background: var(--ds-color-surface);
}
.c-login__alreadyInText {
  margin: 0;
}
.c-login__alert {
  border: 2px solid var(--ds-color-focus);
  border-radius: var(--ds-radius-md);
  padding: var(--ds-space-4);
  margin: 0 0 var(--ds-space-6);
  background: var(--ds-color-surface);
}
.c-login__form {
  display: grid;
  gap: var(--ds-space-5);
}
.c-login__field {
  display: grid;
  gap: var(--ds-space-2);
}
.c-login__label {
  font-weight: 600;
  font-size: var(--ds-text-md);
  color: var(--ds-color-text);
}
.c-login__input {
  width: 100%;
  border: 1px solid var(--ds-color-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-color-surface);
  padding: 0.9rem 1rem;
  font-size: var(--ds-text-md);
  line-height: 1.2;
}
.c-login__input:focus-visible {
  outline: 3px solid var(--ds-color-focus);
  outline-offset: 2px;
}
.c-login__hint {
  margin: 0;
  font-size: var(--ds-text-md);
  color: var(--ds-color-text);
}
.c-login__passwordWrap {
  position: relative;
  display: flex;
  align-items: center;
}
.c-login__input--password {
  padding-right: 3.25rem;
}
.c-login__pwToggle {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--ds-radius-sm);
  border: 0;
  background: transparent;
  color: var(--ds-color-text);
}
.c-login__pwToggle:focus-visible {
  outline: 3px solid var(--ds-color-focus);
  outline-offset: 2px;
}
.c-login__pwIcon {
  display: inline-flex;
}
.c-login__pwIcon--hide {
  display: none;
}
.c-login__pwToggle.is-visible .c-login__pwIcon--show {
  display: none;
}
.c-login__pwToggle.is-visible .c-login__pwIcon--hide {
  display: inline-flex;
}
.c-login__pwIcon .c-icon {
  width: 1.25rem;
  height: 1.25rem;
}
.c-login__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: var(--ds-space-2);
  width: 100%;
  border: 0;
  border-radius: var(--ds-radius-md);
  background: var(--ds-color-brand);
  color: var(--ds-color-on-brand);
  font-weight: 600;
  font-size: var(--ds-text-lg);
  padding: 1rem 1.25rem;
  cursor: pointer;
  text-decoration: none;
}
.c-login__alreadyIn {
  display: grid;
  gap: var(--ds-space-4);
  padding: var(--ds-space-5);
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: var(--ds-radius-md);
  background: var(--ds-color-surface);
}
.c-login__alreadyInText {
  margin: 0;
}
.c-login__submit:focus-visible {
  outline: 3px solid var(--ds-color-focus);
  outline-offset: 3px;
}
.c-login__accordion {
  margin-top: var(--ds-space-6);
  border-top: 1px solid var(--ds-color-border-subtle);
  padding-top: var(--ds-space-4);
}
.iqtig-contrast-mode-dark .c-login__accordion {
  border-top-color: var(--ds-color-border);
}
.c-login__accordionSummary {
  cursor: pointer;
  font-weight: 600;
  font-size: var(--ds-text-lg);
  list-style: none;
}
.c-login__accordionSummary::-webkit-details-marker {
  display: none;
}
.c-login__accordionSummary::before {
  content: '';
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin-right: var(--ds-space-2);
  transform: translateY(0.1rem) rotate(-90deg);
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\"><path d=\"M5 7.5l5 5 5-5\" fill=\"none\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\"><path d=\"M5 7.5l5 5 5-5\" fill=\"none\" stroke=\"black\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>") center / contain no-repeat;
}
.c-login__accordion[open] .c-login__accordionSummary::before {
  transform: translateY(0.1rem) rotate(0deg);
}
.c-login__accordionBody {
  margin-top: var(--ds-space-3);
  font-size: var(--ds-text-lg);
  color: var(--ds-color-text);
}
@media (max-width: 36rem) {
  .c-login__cardBody {
    padding: var(--ds-space-5);
  }
  .c-login__title,
  .c-login__infoTitle {
    font-size: var(--ds-text-xl);
  }
}
/* Login page: align "Text size: Normal" with Figma specs */
.c-login {
  padding: 3rem clamp(1.5rem, 7vw, 6.25rem) 3.75rem;
}
.c-login .l-container {
  width: min(100%, var(--ds-container-max));
  margin-inline: auto;
  padding-inline: 0;
}
@media (min-width: 60rem) {
  .c-login__layout {
    grid-template-columns: 40.625rem 33.125rem; /* 650px + 530px */
    gap: 3.75rem; /* 60px */
  }
}
.c-login__card--info .c-login__cardBody {
  padding: 0.25rem 2rem 3rem;
  gap: 3.75rem;
}
.c-login__card--form .c-login__cardBody {
  padding: 2rem;
  gap: 3rem;
}
.c-login__infoTitle,
.c-login__title {
  font-size: 2rem; /* 32px */
  line-height: 1.3125; /* 42px */
  letter-spacing: 0;
}
.c-login__infoText,
.c-login__intro,
.c-login__hint,
.c-login__helper,
.c-login__error,
.c-login__detailsBody,
.c-login__detailsSummary {
  font-size: 1.125rem; /* 18px */
  line-height: 1.5556; /* 28px */
}
.c-login__label {
  font-size: 1.125rem; /* 18px */
  line-height: 1.5556; /* 28px */
  font-weight: 600;
}
.c-login__input {
  min-height: 3.125rem; /* 50px */
  padding: 0.6875rem 1rem;
  border-radius: 0.625rem; /* 10px */
  font-size: 1.125rem;
  line-height: 1.5556;
}
.c-login__submit {
  min-height: 3.875rem; /* 62px */
  border-radius: 0.625rem; /* 10px */
  font-size: 1.25rem; /* 20px */
  line-height: 1.5; /* 30px */
  padding: 1rem 1.5rem;
}
/* UI-editable regions (Gutenberg Group blocks) */
.c-login__mainUi > :first-child,
.c-login__infoUi > :first-child {
  margin-top: 0;
}
.c-login__mainUi .wp-block-heading {
  font-size: var(--ds-text-xl);
  line-height: 1.05;
  margin: 0 0 var(--ds-space-4);
  color: var(--ds-color-text);
}
.c-login__mainUi p {
  margin: 0 0 var(--ds-space-6);
  font-size: var(--ds-text-md);
  color: var(--ds-color-text);
}
.c-login__infoUi .wp-block-heading {
  font-size: var(--ds-text-xl);
  line-height: 1.05;
  margin: 0 0 var(--ds-space-4);
  color: var(--ds-color-text);
}
.c-login__infoUi p {
  margin: 0 0 var(--ds-space-4);
  font-size: var(--ds-text-md);
  color: var(--ds-color-text);
}
.c-login__extraUi {
  padding: var(--ds-space-8) 0;
}
/* FAQ page */
.c-faq__breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: var(--ds-space-2);
  margin-bottom: var(--ds-space-5);
  color: var(--ds-color-text-muted);
  font-size: 0.9375rem;
}
.c-faq__breadcrumbHome {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: var(--ds-radius-sm);
  color: var(--ds-color-text-muted);
}
.c-faq__breadcrumbHome:hover,
.c-faq__breadcrumbHome:focus-visible {
  color: var(--ds-color-brand);
}
.c-faq__breadcrumbSep {
  opacity: 0.7;
}
.c-faq__breadcrumbCurrent {
  color: var(--ds-color-text);
}
.c-faq__layout {
  display: grid;
  gap: var(--ds-space-7);
  align-items: start;
}
@media (min-width: 60rem) {
  .c-faq__layout {
    grid-template-columns: 15.5rem 1fr;
    gap: var(--ds-space-8);
  }
}
.c-faq__aside {
  position: sticky;
  top: calc(var(--ds-space-7) + 3.5rem);
}
.c-faq__nav {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--ds-space-2);
}
.c-faq__navLink {
  display: block;
  padding: 0.7rem 0.9rem;
  border-radius: 0.375rem;
  color: var(--ds-color-text);
  text-decoration: none;
  line-height: 1.2;
}
.c-faq__navLink:hover,
.c-faq__navLink:focus-visible {
  background: var(--ds-color-surface-muted);
}
.c-faq__navLink.is-active,
.c-faq__navLink[aria-current="true"] {
  background: var(--ds-color-brand);
  color: #fff;
}
.c-faq__title {
  margin: 0 0 var(--ds-space-5);
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1.2;
}
.c-faq__adminNote {
  margin: 0 0 var(--ds-space-5);
  padding: var(--ds-space-3) var(--ds-space-4);
  border: 1px dashed var(--ds-color-border-subtle);
  border-radius: 0.5rem;
  background: var(--ds-color-surface-muted);
  color: var(--ds-color-text);
  font-size: 0.9375rem;
}
.c-faq__emptyHint {
  padding: var(--ds-space-3) var(--ds-space-4);
  border-radius: 0.5rem;
  background: var(--ds-color-surface-muted);
  color: var(--ds-color-text-muted);
  font-size: 0.9375rem;
}
.c-faq__section {
  margin-bottom: var(--ds-space-7);
}
.c-faq__sectionTitle {
  margin: var(--ds-space-5) 0 var(--ds-space-3);
  font-size: 1.125rem;
  line-height: 1.3;
  color: var(--ds-color-text);
}
.c-faq__items {
  display: grid;
  gap: var(--ds-space-3);
}
.c-faq__item {
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: 0.5rem;
  background: var(--ds-color-surface);
  overflow: clip;
}
.c-faq__summary {
  list-style: none;
  display: flex;
  gap: var(--ds-space-3);
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: var(--ds-space-4);
  font-weight: 600;
  color: var(--ds-color-brand);
}
.c-faq__summary::-webkit-details-marker {
  display: none;
}
.c-faq__chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--ds-color-brand);
  transition: transform 150ms ease;
}
.c-faq__item[open] .c-faq__chevron {
  transform: rotate(180deg);
}
.c-faq__answer {
  padding: var(--ds-space-4);
  border-top: 1px solid var(--ds-color-border-subtle);
  color: var(--ds-color-text);
}
.c-faq__answer p {
  margin: 0 0 var(--ds-space-3);
}
.c-faq__answer p:last-child {
  margin-bottom: 0;
}
.c-faq__answer ul,
.c-faq__answer ol {
  margin: 0 0 var(--ds-space-3);
  padding-left: 1.25rem;
}
.c-faq__answer li + li {
  margin-top: 0.25rem;
}
.c-faq__contactCard {
  border: 1px solid var(--ds-color-border-subtle);
  border-radius: 0.5rem;
  background: var(--ds-color-surface);
  padding: var(--ds-space-4);
}
.c-faq__contactHeader {
  margin-bottom: var(--ds-space-4);
}
.c-faq__contactHeading {
  margin: 0 0 var(--ds-space-2);
  font-weight: 600;
  color: var(--ds-color-brand);
}
.c-faq__contactIntro {
  color: var(--ds-color-text);
}
.c-faq__contactGrid {
  display: grid;
  gap: var(--ds-space-3);
}
@media (min-width: 40rem) {
  .c-faq__contactGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.c-faq__contactTile {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: var(--ds-space-3);
  align-items: center;
  padding: var(--ds-space-3);
  border-radius: 0.5rem;
  background: var(--ds-color-surface);
  border: 1px solid var(--ds-color-border-subtle);
}
.c-faq__contactIcon {
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
  background: var(--ds-color-text-muted);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.c-faq__contactLabel {
  font-weight: 600;
  color: var(--ds-color-text);
  margin-bottom: 0.15rem;
}
.c-faq__contactValue {
  color: var(--ds-color-text);
  text-decoration: none;
  word-break: break-word;
}
.c-faq__contactValue--link {
  text-decoration: underline;
}
a.c-faq__contactValue:hover,
a.c-faq__contactValue:focus-visible {
  text-decoration: underline;
}
.c-faq__blocks {
  margin-top: var(--ds-space-7);
}

