/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 17 2026 | 08:23:03 */
/* =========================================================================
   IDS — Stitch Design System CSS
   Standalone, framework-free stylesheet for pages exported from Google
   Stitch. Paste this whole file into the WordPress "Custom CSS" plugin
   ONCE — it is shared across every Stitch page, not just this one.
   Each page's HTML only needs the markup (no <head>, no Tailwind CDN).
   ========================================================================= */

/* ---- Fonts (loaded via @import so no <head> edits are needed) --------- */
@import url('https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible+Next:ital,wght@0,400..700;1,400..700&family=Plus+Jakarta+Sans:ital,wght@0,400..800;1,400..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap');

/* ---- Design tokens ------------------------------------------------------ */
:root{
  /* Brand colours */
  --ids-deep-green:#007A5A;
  --ids-lime:#A7C23F;
  --ids-teal:#0AA3B8;
  --ids-orange:#F7941D;
  --ids-vermilion:#F04B18;
  --ids-charcoal:#292627;
  --ids-charcoal-2:#332f30;   /* slightly lighter charcoal used on cards */
  --ids-charcoal-3:#343031;
  --ids-white:#FFFFFF;
  --ids-warm-neutral:#F7F7F2;
  --ids-border:#E2E2DC;

  /* Text-on-colour helpers */
  --ids-on-lime:var(--ids-charcoal);
  --ids-on-orange:var(--ids-charcoal);
  --ids-on-teal:var(--ids-white);
  --ids-on-green:var(--ids-white);
  --ids-on-charcoal:var(--ids-white);

  /* Type */
  --ids-font-headline:'Plus Jakarta Sans', Arial, sans-serif;
  --ids-font-body:'Atkinson Hyperlegible Next', Arial, sans-serif;

  /* Radii */
  --ids-radius:8px;
  --ids-radius-lg:12px;
  --ids-radius-xl:16px;
  --ids-radius-2xl:20px;
  --ids-radius-3xl:24px;
  --ids-radius-full:9999px;

  /* Layout */
  --ids-container-w:1280px;
  --ids-gutter:1rem;

  /* Spacing scale (used consistently instead of arbitrary values) */
  --ids-space-1:0.25rem;
  --ids-space-2:0.5rem;
  --ids-space-3:0.75rem;
  --ids-space-4:1rem;
  --ids-space-5:1.25rem;
  --ids-space-6:1.5rem;
  --ids-space-8:2rem;
  --ids-space-10:2.5rem;
  --ids-space-12:3rem;
  --ids-space-14:3.5rem;
  --ids-space-16:4rem;
  --ids-space-20:5rem;

  --ids-shadow-sm:0 1px 3px rgba(41,38,39,0.08);
  --ids-shadow-md:0 8px 24px rgba(41,38,39,0.12);
  --ids-shadow-lg:0 20px 45px rgba(41,38,39,0.18);
  --ids-shadow-xl:0 25px 60px rgba(41,38,39,0.25);
}

/* ---- Reset / base -------------------------------------------------------- */
.ids-page, .ids-page *, .ids-page *::before, .ids-page *::after{
  box-sizing:border-box;
}
.ids-page{
  font-family:var(--ids-font-body);
  color:var(--ids-charcoal);
  background:var(--ids-white);
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
.ids-page img{ max-width:100%; display:block; }
.ids-page a{ text-decoration:none; color:inherit; }
.ids-page ul{ list-style:none; margin:0; padding:0; }
.ids-page h1,.ids-page h2,.ids-page h3,.ids-page h4{
  font-family:var(--ids-font-headline);
  margin:0;
  line-height:1.15;
}
.ids-page p{ margin:0; }
.ids-page svg{ display:block; }
.ids-page .material-symbols-outlined{
  font-family:'Material Symbols Outlined';
  font-weight:normal;
  font-style:normal;
  font-size:24px;
  line-height:1;
  letter-spacing:normal;
  text-transform:none;
  display:inline-block;
  white-space:nowrap;
  word-wrap:normal;
  direction:ltr;
  vertical-align:middle;
}

/* ---- Layout helpers ------------------------------------------------------ */
.ids-container{
  max-width:var(--ids-container-w);
  margin-inline:auto;
  padding-inline:var(--ids-gutter);
}
@media(min-width:640px){ .ids-container{ padding-inline:1.5rem; } }
@media(min-width:1024px){ .ids-container{ padding-inline:2rem; } }

.ids-section{ width:100%; padding-block:5rem; }
.ids-section--tight{ padding-block:3rem; }
.ids-section--border-y{ border-top:1px solid var(--ids-border); border-bottom:1px solid var(--ids-border); }

.ids-section--white{ background:var(--ids-white); color:var(--ids-charcoal); }
.ids-section--warm{ background:var(--ids-warm-neutral); color:var(--ids-charcoal); }
.ids-section--green{ background:var(--ids-deep-green); color:var(--ids-white); }
.ids-section--charcoal{ background:var(--ids-charcoal); color:var(--ids-white); }

.ids-section__eyebrow{
  display:block;
  font-family:var(--ids-font-headline);
  font-weight:700;
  font-size:0.75rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  margin-bottom:0.5rem;
}
.ids-section--white .ids-section__eyebrow,
.ids-section--warm .ids-section__eyebrow{ color:var(--ids-deep-green); }
.ids-section--green .ids-section__eyebrow,
.ids-section--charcoal .ids-section__eyebrow{ color:var(--ids-lime); }

.ids-section__heading{ font-weight:800; font-size:2rem; letter-spacing:-0.01em; }
@media(min-width:640px){ .ids-section__heading{ font-size:2.5rem; } }
.ids-section__intro{ max-width:48rem; margin-inline:auto; text-align:center; margin-bottom:3.5rem; }
.ids-section__lead{ margin-top:0.75rem; font-size:1rem; opacity:0.85; }
@media(min-width:640px){ .ids-section__lead{ font-size:1.125rem; } }

.ids-grid{ display:grid; gap:1.5rem; }
.ids-grid--2{ grid-template-columns:1fr; }
.ids-grid--3{ grid-template-columns:1fr; }
.ids-grid--4{ grid-template-columns:1fr; }
@media(min-width:640px){
  .ids-grid--4{ grid-template-columns:repeat(2,1fr); }
}
@media(min-width:768px){
  .ids-grid--2{ grid-template-columns:repeat(2,1fr); }
  .ids-grid--3{ grid-template-columns:repeat(3,1fr); }
}
@media(min-width:1024px){
  .ids-grid--4{ grid-template-columns:repeat(4,1fr); }
}

.ids-split{ display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:center; }
@media(min-width:1024px){ .ids-split{ grid-template-columns:7fr 5fr; gap:3rem; } }
.ids-split--reverse{ }

/* ---- Buttons -------------------------------------------------------------- */
.ids-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:0.5rem;
  min-height:48px; padding:0.85rem 1.75rem;
  font-family:var(--ids-font-headline); font-weight:700; font-size:0.95rem;
  border-radius:var(--ids-radius-xl);
  border:2px solid transparent;
  cursor:pointer;
  transition:background-color .15s ease, border-color .15s ease, transform .15s ease;
}
.ids-btn .material-symbols-outlined{ font-size:20px; }
.ids-btn--lime{ background:var(--ids-lime); color:var(--ids-charcoal); }
.ids-btn--lime:hover{ background:#97b334; }
.ids-btn--charcoal{ background:var(--ids-charcoal); color:var(--ids-white); }
.ids-btn--charcoal:hover{ background:#000; }
.ids-btn--green{ background:var(--ids-deep-green); color:var(--ids-white); }
.ids-btn--green:hover{ background:#006047; }
.ids-btn--outline-white{ background:transparent; color:var(--ids-white); border-color:var(--ids-white); }
.ids-btn--outline-white:hover{ background:rgba(255,255,255,0.1); }
.ids-btn--ghost-white{ background:rgba(255,255,255,0.1); color:var(--ids-white); border-color:rgba(255,255,255,0.2); }
.ids-btn--ghost-white:hover{ background:rgba(255,255,255,0.2); }
.ids-btn--block{ width:100%; }
.ids-btn-row{ display:flex; flex-wrap:wrap; align-items:center; gap:1rem; }
.ids-btn-row--center{ justify-content:center; }

/* ---- Badges / pills / icon chips ------------------------------------------ */
.ids-badge{
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.4rem 0.9rem; border-radius:var(--ids-radius-full);
  font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem;
  text-transform:uppercase; letter-spacing:0.06em;
}
.ids-badge--lime{ background:var(--ids-lime); color:var(--ids-charcoal); }
.ids-badge__dot{ width:8px; height:8px; border-radius:50%; background:var(--ids-deep-green); }

.ids-icon-circle{
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  width:40px; height:40px; border-radius:var(--ids-radius-lg);
}
.ids-icon-circle--sm{ width:36px; height:36px; }
.ids-icon-circle--lg{ width:56px; height:56px; border-radius:50%; }
.ids-icon-circle--xl{ width:80px; height:80px; border-radius:50%; }
.ids-icon-circle--on-lime{ background:var(--ids-charcoal); color:var(--ids-lime); }
.ids-icon-circle--on-teal{ background:var(--ids-white); color:var(--ids-teal); }
.ids-icon-circle--on-orange{ background:var(--ids-charcoal); color:var(--ids-orange); }
.ids-icon-circle--charcoal-on-lime{ background:var(--ids-lime); color:var(--ids-charcoal); }
.ids-icon-circle--soft-white{ background:rgba(255,255,255,0.2); color:var(--ids-white); }

/* ---- Generic colour "panel" (used across many Stitch layouts) ------------ */
.ids-panel{ border-radius:var(--ids-radius-3xl); }
.ids-panel--lime{ background:var(--ids-lime); color:var(--ids-charcoal); }
.ids-panel--teal{ background:var(--ids-teal); color:var(--ids-white); }
.ids-panel--orange{ background:var(--ids-orange); color:var(--ids-charcoal); }
.ids-panel--green{ background:var(--ids-deep-green); color:var(--ids-white); }
.ids-panel--charcoal{ background:var(--ids-charcoal); color:var(--ids-white); }
.ids-panel--white{ background:var(--ids-white); color:var(--ids-charcoal); border:1px solid var(--ids-border); }
.ids-panel--shadow{ box-shadow:var(--ids-shadow-md); }

/* =========================================================================
   MODULE 1 — HERO
   ========================================================================= */
.ids-hero{ position:relative; overflow:hidden; }
.ids-hero__decor{ position:absolute; top:-6rem; left:-6rem; width:24rem; height:24rem; opacity:0.1; pointer-events:none; }
.ids-hero__grid{ display:grid; grid-template-columns:1fr; align-items:stretch; min-height:auto; }
@media(min-width:1024px){ .ids-hero__grid{ grid-template-columns:7fr 5fr; min-height:620px; } }
.ids-hero__content{ position:relative; z-index:1; padding-block:3rem; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
@media(min-width:1024px){ .ids-hero__content{ padding-block:5rem; padding-right:2.5rem; } }
.ids-hero__title{ color:var(--ids-white); font-size:2.25rem; font-weight:800; letter-spacing:-0.01em; margin-bottom:1.5rem; }
@media(min-width:640px){ .ids-hero__title{ font-size:3rem; } }
@media(min-width:1024px){ .ids-hero__title{ font-size:3.25rem; } }
.ids-hero__lead{ color:rgba(255,255,255,0.95); font-size:1.125rem; line-height:1.65; max-width:42rem; margin-bottom:2rem; }
@media(min-width:640px){ .ids-hero__lead{ font-size:1.25rem; } }
.ids-hero__actions{ margin-bottom:2rem; }
.ids-hero__proof{
  display:inline-flex; align-items:center; gap:0.75rem;
  padding-top:1rem; border-top:1px solid rgba(255,255,255,0.2);
  color:rgba(255,255,255,0.9); font-family:var(--ids-font-headline); font-weight:600; font-size:0.9rem;
}
.ids-hero__media{ position:relative; display:flex; align-items:center; justify-content:center; padding-block:1.5rem; }
@media(min-width:1024px){ .ids-hero__media{ padding-block:0; } }
.ids-hero__blur{ position:absolute; border-radius:50%; filter:blur(40px); pointer-events:none; }
.ids-hero__photo{ position:relative; width:100%; height:100%; min-height:380px; border-radius:var(--ids-radius-2xl); overflow:hidden; box-shadow:var(--ids-shadow-xl); border:4px solid rgba(255,255,255,0.1); }
@media(min-width:1024px){ .ids-hero__photo{ min-height:520px; } }
.ids-hero__photo img{ width:100%; height:100%; object-fit:cover; }
.ids-hero__caption{
  position:absolute; left:1rem; right:1rem; bottom:1rem;
  display:flex; align-items:center; gap:0.75rem;
  background:rgba(41,38,39,0.9); backdrop-filter:blur(6px);
  padding:1rem; border-radius:var(--ids-radius-xl);
  border-left:4px solid var(--ids-lime); color:var(--ids-white);
}
.ids-hero__caption-title{ font-family:var(--ids-font-headline); font-weight:700; text-transform:uppercase; font-size:0.7rem; letter-spacing:0.05em; }
.ids-hero__caption-sub{ font-size:0.7rem; color:rgba(255,255,255,0.8); }

/* =========================================================================
   MODULE 2 — SNAPSHOT FACT GRID
   ========================================================================= */
.ids-snapshot__grid{
  display:grid; grid-template-columns:1fr; border:1px solid rgba(255,255,255,0.2);
  border-radius:var(--ids-radius-2xl); background:rgba(0,0,0,0.1); overflow:hidden;
}
@media(min-width:640px){ .ids-snapshot__grid{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px){ .ids-snapshot__grid{ grid-template-columns:repeat(4,1fr); } }
.ids-snapshot__item{ padding:1.75rem; display:flex; flex-direction:column; gap:0.75rem; border-top:1px solid rgba(255,255,255,0.2); }
.ids-snapshot__grid > .ids-snapshot__item:nth-child(-n+4){ border-top:none; }
@media(min-width:640px){ .ids-snapshot__grid > .ids-snapshot__item:nth-child(odd){ border-left:none; } .ids-snapshot__grid > .ids-snapshot__item{ border-left:1px solid rgba(255,255,255,0.2); } }
.ids-snapshot__tag{ display:flex; align-items:center; gap:0.5rem; font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.05em; }
.ids-snapshot__dot{ width:12px; height:12px; border-radius:50%; }
.ids-snapshot__title{ font-family:var(--ids-font-headline); font-weight:700; font-size:1.25rem; color:var(--ids-white); }
.ids-snapshot__text{ font-size:0.9rem; color:rgba(255,255,255,0.85); line-height:1.6; }
.ids-snapshot__link{ margin-top:auto; padding-top:0.5rem; font-family:var(--ids-font-headline); font-weight:700; font-size:0.75rem; display:inline-flex; align-items:center; gap:0.25rem; }
.ids-snapshot__link .material-symbols-outlined{ font-size:14px; }

.ids-dot--lime{ background:var(--ids-lime); }
.ids-dot--teal{ background:var(--ids-teal); }
.ids-dot--orange{ background:var(--ids-orange); }
.ids-dot--vermilion{ background:var(--ids-vermilion); }
.ids-text--lime{ color:var(--ids-lime); }
.ids-text--teal{ color:var(--ids-teal); }
.ids-text--orange{ color:var(--ids-orange); }
.ids-text--vermilion{ color:var(--ids-vermilion); }

/* =========================================================================
   MODULE 3 — SERVICE CARDS (large colour fields)
   ========================================================================= */
.ids-services__list{ display:flex; flex-direction:column; gap:2.5rem; }
.ids-service-card{ display:grid; grid-template-columns:1fr; border-radius:var(--ids-radius-3xl); overflow:hidden; box-shadow:var(--ids-shadow-lg); }
@media(min-width:1024px){ .ids-service-card{ grid-template-columns:7fr 5fr; } }
.ids-service-card__body{ padding:2rem; display:flex; flex-direction:column; justify-content:space-between; gap:1.5rem; }
@media(min-width:640px){ .ids-service-card__body{ padding:2.5rem; } }
@media(min-width:1024px){ .ids-service-card__body{ padding:3rem; } }
.ids-service-card__eyebrow{ display:inline-flex; align-items:center; gap:0.5rem; align-self:flex-start; padding:0.35rem 0.85rem; border-radius:var(--ids-radius-full); background:var(--ids-charcoal); color:var(--ids-white); font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.05em; margin-bottom:1rem; }
.ids-service-card--teal .ids-service-card__eyebrow{ background:var(--ids-white); color:var(--ids-teal); }
.ids-service-card__title{ font-size:1.875rem; font-weight:800; letter-spacing:-0.01em; margin-bottom:0.75rem; }
@media(min-width:640px){ .ids-service-card__title{ font-size:2.25rem; } }
.ids-service-card__tagline{ font-family:var(--ids-font-headline); font-weight:600; font-size:1.125rem; margin-bottom:1.5rem; }
.ids-service-card__features{ display:grid; grid-template-columns:1fr; gap:0.65rem; font-size:0.9rem; margin-bottom:2rem; }
@media(min-width:640px){ .ids-service-card__features{ grid-template-columns:repeat(2,1fr); } }
.ids-service-card__feature{ display:flex; align-items:center; gap:0.5rem; }
.ids-service-card__feature .material-symbols-outlined{ color:var(--ids-deep-green); font-size:18px; }
.ids-service-card__feature--span2{ grid-column:1 / -1; }
.ids-service-card__media{ position:relative; min-height:280px; }
@media(min-width:1024px){ .ids-service-card__media{ min-height:100%; } }
.ids-service-card__media img{ width:100%; height:100%; object-fit:cover; }

/* Personal-support extra visual column (module 3, service 2) */
.ids-service-card__side{ padding:2.5rem; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.ids-service-card__side-title{ font-weight:700; font-size:1.5rem; color:var(--ids-white); margin-bottom:0.5rem; }
.ids-service-card__side-text{ font-size:0.9rem; color:rgba(255,255,255,0.9); max-width:22rem; }
.ids-service-card__side-chip{ margin-top:1.5rem; display:inline-flex; align-items:center; gap:0.5rem; padding:0.4rem 1rem; border-radius:var(--ids-radius-full); background:rgba(255,255,255,0.1); color:var(--ids-white); font-family:var(--ids-font-headline); font-weight:600; font-size:0.75rem; }

/* =========================================================================
   MODULE 4 — SERVICE CHOOSER PATHWAYS
   ========================================================================= */
.ids-chooser__list{ display:flex; flex-direction:column; gap:1rem; }
.ids-pathway{
  padding:1.25rem; border-radius:var(--ids-radius-2xl);
  display:flex; flex-direction:column; gap:1rem;
  box-shadow:var(--ids-shadow-sm); transition:transform .15s ease;
}
.ids-pathway:hover{ transform:translateY(-2px); }
@media(min-width:768px){ .ids-pathway{ flex-direction:row; align-items:center; justify-content:space-between; } }
.ids-pathway__label{ display:flex; align-items:center; gap:0.9rem; }
.ids-pathway__text{ font-family:var(--ids-font-headline); font-weight:700; font-size:1rem; }
.ids-pathway__tag{ align-self:flex-start; padding:0.5rem 1rem; border-radius:var(--ids-radius-xl); background:var(--ids-charcoal); color:var(--ids-white); font-family:var(--ids-font-headline); font-weight:700; font-size:0.875rem; }
@media(min-width:768px){ .ids-pathway__tag{ align-self:auto; } }
.ids-pathway__tag--lime{ background:var(--ids-lime); color:var(--ids-charcoal); }

.ids-callout{
  margin-top:2rem; padding:1.5rem; border-radius:var(--ids-radius-2xl);
  background:var(--ids-white); border:1px solid var(--ids-border); box-shadow:var(--ids-shadow-sm);
  display:flex; flex-direction:column; gap:1.5rem;
}
@media(min-width:640px){ .ids-callout{ flex-direction:row; align-items:center; justify-content:space-between; } }
.ids-callout__text{ display:flex; align-items:flex-start; gap:0.9rem; }
.ids-callout__text p{ font-size:0.9rem; line-height:1.6; }
.ids-callout__actions{ display:flex; align-items:center; gap:0.75rem; width:100%; }
@media(min-width:640px){ .ids-callout__actions{ width:auto; } }
.ids-callout__actions .ids-btn{ flex:1; }
@media(min-width:640px){ .ids-callout__actions .ids-btn{ flex:none; } }

/* =========================================================================
   MODULE 5 — B2B / PARTNER SPLIT PANEL
   ========================================================================= */
.ids-b2b{ position:relative; overflow:hidden; }
.ids-b2b__decor{ position:absolute; right:-5rem; top:-5rem; width:20rem; height:20rem; opacity:0.15; pointer-events:none; }
.ids-b2b__grid{ position:relative; z-index:1; display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:center; }
@media(min-width:1024px){ .ids-b2b__grid{ grid-template-columns:7fr 5fr; } }
.ids-b2b__eyebrow{ display:flex; align-items:center; gap:0.5rem; margin-bottom:0.5rem; }
.ids-b2b__eyebrow-bar{ width:2rem; height:4px; background:var(--ids-lime); }
.ids-b2b__title{ font-size:2rem; font-weight:800; margin-bottom:1rem; }
@media(min-width:640px){ .ids-b2b__title{ font-size:2.5rem; } }
.ids-b2b__lead{ font-size:1.05rem; line-height:1.65; color:rgba(255,255,255,0.9); margin-bottom:1.5rem; }
.ids-b2b__features{ display:grid; grid-template-columns:1fr; gap:0.75rem; margin-bottom:1.5rem; }
@media(min-width:640px){ .ids-b2b__features{ grid-template-columns:repeat(2,1fr); } }
.ids-b2b__feature{ display:flex; align-items:center; gap:0.6rem; font-family:var(--ids-font-headline); font-weight:600; font-size:0.9rem; color:rgba(255,255,255,0.9); }
.ids-b2b__feature .material-symbols-outlined{ color:var(--ids-lime); font-size:20px; }
.ids-b2b__note{ padding:1rem; border-radius:var(--ids-radius-xl); background:rgba(255,255,255,0.1); border-left:4px solid var(--ids-lime); font-size:0.85rem; color:rgba(255,255,255,0.85); }
.ids-b2b__panel{ background:var(--ids-charcoal-3); border:1px solid rgba(255,255,255,0.1); border-radius:var(--ids-radius-3xl); padding:2rem; display:flex; flex-direction:column; justify-content:space-between; gap:1.5rem; }
@media(min-width:1024px){ .ids-b2b__panel{ padding:2.5rem; } }
.ids-b2b__panel-heading{ display:flex; align-items:center; gap:0.75rem; color:var(--ids-lime); font-family:var(--ids-font-headline); font-weight:700; font-size:0.85rem; text-transform:uppercase; letter-spacing:0.05em; }
.ids-b2b__stat-label{ display:block; color:rgba(255,255,255,0.6); font-family:var(--ids-font-headline); font-size:0.7rem; text-transform:uppercase; letter-spacing:0.08em; margin-bottom:0.25rem; }
.ids-b2b__stat-value{ font-size:2rem; font-weight:800; color:var(--ids-white); line-height:1.2; }
@media(min-width:640px){ .ids-b2b__stat-value{ font-size:2.25rem; } }
.ids-b2b__stat-sub{ display:block; color:var(--ids-lime); font-weight:600; margin-top:0.25rem; }
.ids-b2b__panel-actions{ display:flex; flex-direction:column; gap:0.75rem; }
@media(min-width:640px){ .ids-b2b__panel-actions{ flex-direction:row; } }
.ids-b2b__panel-actions .ids-btn{ flex:1; }

/* =========================================================================
   MODULE 6 — SUPPORT TEAM ("orbit" layout)
   ========================================================================= */
.ids-team__frame{ background:var(--ids-warm-neutral); border:1px solid var(--ids-border); border-radius:var(--ids-radius-3xl); padding:1.5rem; }
@media(min-width:640px){ .ids-team__frame{ padding:2.5rem 3rem; } }
.ids-team__grid{ display:grid; grid-template-columns:1fr; gap:2rem; align-items:center; }
@media(min-width:1024px){ .ids-team__grid{ grid-template-columns:4fr 8fr; } }
.ids-team__hub{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:2.5rem; border-radius:var(--ids-radius-3xl); box-shadow:var(--ids-shadow-md); }
.ids-team__hub-label{ font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--ids-deep-green); margin-bottom:0.25rem; }
.ids-team__hub-title{ font-size:2.25rem; font-weight:800; margin-bottom:0.75rem; }
.ids-team__hub-text{ font-size:0.9rem; font-weight:500; line-height:1.6; }
.ids-team__roles{ display:grid; grid-template-columns:1fr; gap:1rem; }
@media(min-width:640px){ .ids-team__roles{ grid-template-columns:repeat(2,1fr); } }
.ids-team__role{ background:var(--ids-white); border-left:4px solid var(--ids-border); border-radius:var(--ids-radius-2xl); padding:1.25rem; box-shadow:var(--ids-shadow-sm); display:flex; flex-direction:column; gap:0.5rem; }
.ids-team__role--green{ border-left-color:var(--ids-deep-green); }
.ids-team__role--teal{ border-left-color:var(--ids-teal); }
.ids-team__role--orange{ border-left-color:var(--ids-orange); }
.ids-team__role--vermilion{ border-left-color:var(--ids-vermilion); }
.ids-team__role-heading{ display:flex; align-items:center; gap:0.5rem; font-family:var(--ids-font-headline); font-weight:700; font-size:1rem; }
.ids-team__role--green .ids-team__role-heading{ color:var(--ids-deep-green); }
.ids-team__role--teal .ids-team__role-heading{ color:var(--ids-teal); }
.ids-team__role--orange .ids-team__role-heading{ color:var(--ids-orange); }
.ids-team__role--vermilion .ids-team__role-heading{ color:var(--ids-vermilion); }
.ids-team__role-text{ font-size:0.8rem; color:rgba(41,38,39,0.8); line-height:1.6; }
.ids-team__role-note{ font-size:0.7rem; font-weight:600; padding-top:0.25rem; }
.ids-team__banner{ margin-top:2rem; padding:1rem; border-radius:var(--ids-radius-xl); background:var(--ids-deep-green); color:var(--ids-white); text-align:center; font-family:var(--ids-font-headline); font-weight:700; font-size:0.9rem; letter-spacing:0.02em; }

/* =========================================================================
   MODULE 7 — REFERRAL PROCESS STAGES
   ========================================================================= */
.ids-process__grid{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
@media(min-width:768px){ .ids-process__grid{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px){ .ids-process__grid{ grid-template-columns:repeat(4,1fr); } }
.ids-process__stage{ background:var(--ids-white); border-top:4px solid var(--ids-border); border-radius:var(--ids-radius-2xl); padding:1.5rem; box-shadow:var(--ids-shadow-sm); display:flex; flex-direction:column; justify-content:space-between; }
.ids-process__stage--lime{ border-top-color:var(--ids-lime); }
.ids-process__stage--teal{ border-top-color:var(--ids-teal); }
.ids-process__stage--orange{ border-top-color:var(--ids-orange); }
.ids-process__stage--vermilion{ border-top-color:var(--ids-vermilion); }
.ids-process__num{ font-family:var(--ids-font-headline); font-weight:900; font-size:2.75rem; display:block; margin-bottom:0.5rem; }
.ids-process__stage--lime .ids-process__num{ color:var(--ids-lime); }
.ids-process__stage--teal .ids-process__num{ color:var(--ids-teal); }
.ids-process__stage--orange .ids-process__num{ color:var(--ids-orange); }
.ids-process__stage--vermilion .ids-process__num{ color:var(--ids-vermilion); }
.ids-process__title{ font-family:var(--ids-font-headline); font-weight:700; font-size:1.05rem; margin-bottom:0.5rem; }
.ids-process__text{ font-size:0.85rem; color:rgba(41,38,39,0.8); line-height:1.6; }
.ids-process__footnote{ margin-top:1rem; padding-top:0.75rem; border-top:1px solid var(--ids-border); font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem; }
.ids-process__stage--lime .ids-process__footnote{ color:var(--ids-deep-green); }
.ids-process__stage--teal .ids-process__footnote{ color:var(--ids-teal); }
.ids-process__stage--orange .ids-process__footnote{ color:var(--ids-orange); }
.ids-process__stage--vermilion .ids-process__footnote{ color:var(--ids-vermilion); }
.ids-process__foot{ margin-top:2.5rem; max-width:40rem; margin-inline:auto; text-align:center; display:flex; flex-direction:column; align-items:center; gap:1rem; }
.ids-process__foot-note{ font-size:0.85rem; font-style:italic; opacity:0.7; }

/* =========================================================================
   MODULE 8 — FUNDING / PRICING
   ========================================================================= */
.ids-funding__badges{ display:grid; grid-template-columns:1fr; gap:1.5rem; margin-bottom:3rem; }
@media(min-width:768px){ .ids-funding__badges{ grid-template-columns:repeat(3,1fr); } }
.ids-funding-badge{ padding:2rem; border-radius:var(--ids-radius-2xl); background:rgba(0,0,0,0.15); border:1px solid rgba(255,255,255,0.2); display:flex; flex-direction:column; align-items:center; text-align:center; }
.ids-funding-badge__title{ font-size:1.5rem; font-weight:800; color:var(--ids-white); margin-bottom:0.5rem; }
.ids-funding-badge__tag{ font-family:var(--ids-font-headline); font-weight:700; font-size:0.75rem; background:rgba(255,255,255,0.1); padding:0.35rem 0.9rem; border-radius:var(--ids-radius-full); margin-bottom:0.75rem; }
.ids-funding-badge__text{ font-size:0.85rem; color:rgba(255,255,255,0.8); }
.ids-funding__pricing{ padding:2rem; border-radius:var(--ids-radius-3xl); display:flex; flex-direction:column; gap:2rem; box-shadow:var(--ids-shadow-lg); }
@media(min-width:768px){ .ids-funding__pricing{ flex-direction:row; align-items:center; justify-content:space-between; padding:2.5rem; } }
.ids-funding__pricing-eyebrow{ display:flex; align-items:center; gap:0.5rem; font-family:var(--ids-font-headline); font-weight:700; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--ids-deep-green); margin-bottom:0.5rem; }
.ids-funding__pricing-title{ font-size:1.5rem; font-weight:800; margin-bottom:0.5rem; }
@media(min-width:640px){ .ids-funding__pricing-title{ font-size:1.75rem; } }
.ids-funding__pricing-text{ font-size:0.95rem; font-weight:500; line-height:1.6; }

/* =========================================================================
   MODULE 9 — COVERAGE / HOURS
   ========================================================================= */
.ids-coverage__eyebrow{ display:flex; align-items:center; gap:0.5rem; margin-bottom:0.5rem; }
.ids-coverage__eyebrow-bar{ width:2rem; height:4px; background:var(--ids-teal); }
.ids-coverage__title{ font-size:2rem; font-weight:800; letter-spacing:-0.01em; margin-bottom:1rem; }
@media(min-width:640px){ .ids-coverage__title{ font-size:2.5rem; } }
.ids-coverage__lead{ font-size:1rem; line-height:1.7; color:rgba(41,38,39,0.85); margin-bottom:1.5rem; }
@media(min-width:640px){ .ids-coverage__lead{ font-size:1.125rem; } }
.ids-coverage__graphic{ padding:1.5rem; border-radius:var(--ids-radius-2xl); background:var(--ids-warm-neutral); border:1px solid var(--ids-border); display:flex; flex-direction:column; align-items:center; text-align:center; gap:0.75rem; margin-bottom:1.5rem; }
.ids-coverage__graphic-caption{ font-family:var(--ids-font-headline); font-weight:700; font-size:0.75rem; }
.ids-coverage__office{ display:flex; align-items:flex-start; gap:0.9rem; padding:1rem; border-radius:var(--ids-radius-xl); background:var(--ids-warm-neutral); border:1px solid var(--ids-border); font-size:0.75rem; color:rgba(41,38,39,0.8); margin-bottom:1.5rem; }
.ids-coverage__office strong{ display:block; font-family:var(--ids-font-headline); font-size:0.9rem; color:var(--ids-charcoal); margin-bottom:0.15rem; }
.ids-coverage__cta{ display:inline-flex; align-items:center; gap:0.5rem; font-family:var(--ids-font-headline); font-weight:700; font-size:0.9rem; color:var(--ids-deep-green); }
.ids-coverage__hours{ background:var(--ids-charcoal); color:var(--ids-white); padding:2rem; border-radius:var(--ids-radius-3xl); box-shadow:var(--ids-shadow-xl); display:flex; flex-direction:column; gap:1.5rem; }
@media(min-width:1024px){ .ids-coverage__hours{ padding:2.5rem; } }
.ids-coverage__hours-heading{ display:flex; align-items:center; gap:0.75rem; color:var(--ids-lime); }
.ids-coverage__hours-heading h3{ color:var(--ids-white); font-size:1.5rem; font-weight:700; }
.ids-hours-row{ display:flex; align-items:center; justify-content:space-between; padding:0.75rem 1rem; border-radius:var(--ids-radius-xl); background:rgba(255,255,255,0.1); }
.ids-hours-row__label{ font-family:var(--ids-font-headline); font-weight:500; font-size:0.9rem; color:rgba(255,255,255,0.9); }
.ids-hours-row__value{ font-family:var(--ids-font-headline); font-weight:700; font-size:1rem; color:var(--ids-lime); }
.ids-coverage__hours-note{ font-size:0.8rem; color:rgba(255,255,255,0.8); line-height:1.6; }

/* =========================================================================
   MODULE 10 — CHOOSING A PROVIDER (checklist)
   ========================================================================= */
.ids-decision__grid{ display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:start; }
@media(min-width:1024px){ .ids-decision__grid{ grid-template-columns:4fr 8fr; } }
.ids-decision__intro{ padding:2rem; border-radius:var(--ids-radius-3xl); box-shadow:var(--ids-shadow-md); }
@media(min-width:640px){ .ids-decision__intro{ padding:2.5rem; } }
.ids-decision__intro-title{ font-size:1.5rem; font-weight:800; line-height:1.25; margin-bottom:1rem; }
@media(min-width:640px){ .ids-decision__intro-title{ font-size:1.75rem; } }
.ids-decision__intro-text{ font-size:0.9rem; line-height:1.6; margin-bottom:1.5rem; }
.ids-decision__note{ padding:1rem; border-radius:var(--ids-radius-xl); background:rgba(0,0,0,0.2); border-left:2px solid var(--ids-lime); font-size:0.75rem; line-height:1.6; }
.ids-decision__note strong{ display:block; font-family:var(--ids-font-headline); margin-bottom:0.25rem; }
.ids-checklist{ background:var(--ids-white); border:1px solid var(--ids-border); border-radius:var(--ids-radius-3xl); padding:2rem; box-shadow:var(--ids-shadow-sm); }
@media(min-width:640px){ .ids-checklist{ padding:2.5rem; } }
.ids-checklist__grid{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
@media(min-width:640px){ .ids-checklist__grid{ grid-template-columns:repeat(2,1fr); } }
.ids-checklist__item{ display:flex; align-items:flex-start; gap:0.75rem; }
.ids-checklist__item--span2{ grid-column:1 / -1; }
.ids-checklist__num{ width:28px; height:28px; border-radius:var(--ids-radius-lg); background:var(--ids-deep-green); color:var(--ids-lime); font-family:var(--ids-font-headline); font-weight:700; font-size:0.75rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:0.15rem; }
.ids-checklist__title{ font-family:var(--ids-font-headline); font-weight:700; font-size:0.9rem; margin-bottom:0.25rem; }
.ids-checklist__text{ font-size:0.8rem; color:rgba(41,38,39,0.8); line-height:1.55; }

/* =========================================================================
   MODULE 11 — WHY IDS (2x2 mosaic)
   ========================================================================= */
.ids-why__grid{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
@media(min-width:768px){ .ids-why__grid{ grid-template-columns:repeat(2,1fr); } }
.ids-why__tile{ border-radius:var(--ids-radius-3xl); box-shadow:var(--ids-shadow-md); display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; }
.ids-why__tile-body{ padding:2rem; }
@media(min-width:640px){ .ids-why__tile-body{ padding:2.5rem; } }
.ids-why__tile-title{ font-size:1.5rem; font-weight:800; margin-bottom:0.75rem; }
@media(min-width:640px){ .ids-why__tile-title{ font-size:1.875rem; } }
.ids-why__tile-text{ font-size:0.95rem; line-height:1.6; }
@media(min-width:640px){ .ids-why__tile-text{ font-size:1rem; } }
.ids-why__tile-footer{ padding:0 2rem 2rem; font-family:var(--ids-font-headline); font-weight:700; font-size:0.75rem; text-transform:uppercase; letter-spacing:0.05em; }
@media(min-width:640px){ .ids-why__tile-footer{ padding:0 2.5rem 2.5rem; } }
.ids-why__quote{ margin-top:1rem; padding:1rem; border-radius:var(--ids-radius-xl); background:rgba(255,255,255,0.4); border-left:4px solid var(--ids-charcoal); font-family:var(--ids-font-headline); font-weight:700; font-style:italic; font-size:0.9rem; }
.ids-why__tile-media{ height:12rem; width:100%; overflow:hidden; border-top:2px solid rgba(41,38,39,0.1); }
.ids-why__tile-media img{ width:100%; height:100%; object-fit:cover; }

/* =========================================================================
   MODULE 12 — TESTIMONIALS
   ========================================================================= */
.ids-testimonials{ position:relative; overflow:hidden; }
.ids-testimonials__decor{ position:absolute; inset:0; opacity:0.1; pointer-events:none; display:flex; align-items:center; justify-content:center; }
.ids-testimonials__grid{ position:relative; z-index:1; display:grid; grid-template-columns:1fr; gap:2rem; }
@media(min-width:768px){ .ids-testimonials__grid{ grid-template-columns:repeat(3,1fr); } }
.ids-testimonial{ background:var(--ids-charcoal-2); border-top:4px solid var(--ids-border); border-radius:var(--ids-radius-3xl); padding:2rem; box-shadow:var(--ids-shadow-lg); display:flex; flex-direction:column; justify-content:space-between; gap:1.5rem; }
.ids-testimonial--lime{ border-top-color:var(--ids-lime); }
.ids-testimonial--teal{ border-top-color:var(--ids-teal); }
.ids-testimonial--orange{ border-top-color:var(--ids-orange); }
.ids-testimonial__quote-icon{ font-size:40px; }
.ids-testimonial--lime .ids-testimonial__quote-icon{ color:var(--ids-lime); }
.ids-testimonial--teal .ids-testimonial__quote-icon{ color:var(--ids-teal); }
.ids-testimonial--orange .ids-testimonial__quote-icon{ color:var(--ids-orange); }
.ids-testimonial__text{ font-family:var(--ids-font-headline); font-weight:700; font-size:1.25rem; line-height:1.4; color:var(--ids-white); }
.ids-testimonial__meta{ display:flex; align-items:center; gap:0.75rem; padding-top:1rem; border-top:1px solid rgba(255,255,255,0.1); }
.ids-testimonial__avatar{ width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:var(--ids-font-headline); font-weight:700; }
.ids-testimonial--lime .ids-testimonial__avatar{ background:var(--ids-lime); color:var(--ids-charcoal); }
.ids-testimonial--teal .ids-testimonial__avatar{ background:var(--ids-teal); color:var(--ids-white); }
.ids-testimonial--orange .ids-testimonial__avatar{ background:var(--ids-orange); color:var(--ids-charcoal); }
.ids-testimonial__name{ display:block; font-family:var(--ids-font-headline); font-weight:700; color:var(--ids-white); }
.ids-testimonial__role{ font-size:0.75rem; color:rgba(255,255,255,0.6); }
.ids-testimonials__disclaimer{ margin-top:2.5rem; text-align:center; max-width:40rem; margin-inline:auto; font-size:0.75rem; font-style:italic; color:rgba(255,255,255,0.6); }

/* =========================================================================
   MODULE 13 — FAQ (native details/summary accordion)
   ========================================================================= */
.ids-faq__list{ display:flex; flex-direction:column; gap:0.9rem; }
.ids-faq__item{ padding:1.25rem; border-radius:var(--ids-radius-2xl); background:var(--ids-warm-neutral); border:1px solid var(--ids-border); }
.ids-faq__item summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:1rem; font-family:var(--ids-font-headline); font-weight:700; font-size:1rem; }
@media(min-width:640px){ .ids-faq__item summary{ font-size:1.125rem; } }
.ids-faq__item summary::-webkit-details-marker{ display:none; }
.ids-faq__icon{ color:var(--ids-deep-green); transition:transform .2s ease; flex-shrink:0; }
.ids-faq__item[open] .ids-faq__icon{ transform:rotate(180deg); }
.ids-faq__answer{ margin-top:0.75rem; padding-top:0.75rem; border-top:1px solid var(--ids-border); font-size:0.9rem; line-height:1.65; color:rgba(41,38,39,0.85); }

/* =========================================================================
   MODULE 14 — FINAL CTA
   ========================================================================= */
.ids-final-cta{ position:relative; overflow:hidden; }
.ids-final-cta__decor{ position:absolute; right:-6rem; bottom:-6rem; width:24rem; height:24rem; opacity:0.2; pointer-events:none; }
.ids-final-cta__inner{ position:relative; z-index:1; max-width:56rem; margin-inline:auto; text-align:center; display:flex; flex-direction:column; align-items:center; gap:1.5rem; }
.ids-final-cta__icon{ width:64px; height:64px; border-radius:var(--ids-radius-xl); }
.ids-final-cta__title{ font-size:2rem; font-weight:800; letter-spacing:-0.01em; }
@media(min-width:640px){ .ids-final-cta__title{ font-size:3rem; } }
.ids-final-cta__text{ font-size:1rem; max-width:40rem; line-height:1.65; color:rgba(255,255,255,0.9); }
@media(min-width:640px){ .ids-final-cta__text{ font-size:1.125rem; } }
.ids-final-cta__contacts{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:1.5rem; padding-top:1.5rem; font-size:0.9rem; color:rgba(255,255,255,0.85); }
.ids-final-cta__contacts a{ display:flex; align-items:center; gap:0.4rem; }
.ids-final-cta__contacts a:hover{ color:var(--ids-lime); }
.ids-final-cta__sep{ opacity:0.4; }
.ids-final-cta__footnote{ padding-top:1.5rem; border-top:1px solid rgba(255,255,255,0.2); color:rgba(255,255,255,0.7); font-family:var(--ids-font-headline); font-size:0.75rem; }

/* ---- Small text-utility helpers kept intentionally minimal --------------- */
.ids-u-text-center{ text-align:center; }
.ids-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; }

