/* ============================================================================
   Inertia — INNOVATION (Product Strategy & Definition) page system stylesheet
   ----------------------------------------------------------------------------
   Serves the `inertia_inn_*` widgets ONLY. Independent of every other set's
   stylesheet; none of them reaches into this page and this sheet reaches into
   no other page.

   Lifted from the source final.html (the design-system layer plus the page's
   own psd-* block). The source leaned on inline `style=` attributes; every one
   of them is a class here, with the same values, so the Elementor Style-tab
   controls and the responsive rules below can reach them.

   Every rule is prefixed `.inn-sec` — the class every section widget's root
   <section> carries — so generic names like `.tick` or `.btn-y` never apply
   outside this template's own markup.

   Fidelity contract:
     >= 1600px   the source values, untouched — except type, which matches
                 the source exactly at >= 1800px only (see TYPE SCALE).
     <= 1599px   the responsive block at the end of this file (gutters, sizes,
                 stacked layouts). Section top/bottom spacing is read from
                 --inn-spt / --inn-spb: the Section control's desktop value
                 (--inn-pt / --inn-pb) at >= 1600px, and below that its
                 laptop / tablet / mobile values (--inn-pt-r / --inn-pb-r),
                 falling back to 35px / 45px / 30px (see Section spacing).
   ============================================================================ */

/* ---------------------------------------------------------------------------
   Manrope — self-hosted, shared with the other Inertia widget sets.
   --------------------------------------------------------------------------- */
@font-face{font-family:'Manrope';font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/Manrope-300.woff2") format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/Manrope-400.woff2") format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/Manrope-500.woff2") format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/Manrope-600.woff2") format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/Manrope-700.woff2") format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/Manrope-800.woff2") format('woff2');}

/* ---------------------------------------------------------------------------
   Design tokens — verbatim from the source token files, scoped to this
   template's sections rather than :root so they cannot collide with another
   set's tokens on a shared page.
   --------------------------------------------------------------------------- */
.inn-sec{
  --beyond-blue:#160C4B; --breakthrough-yellow:#FFC000; --white:#FFFFFF;
  --beyond-10:#EBE9F1; --beyond-20:#D7D3E2; --beyond-30:#B8B2C7; --beyond-40:#8E8499;
  --beyond-50:#6F6678; --beyond-60:#4F4658; --beyond-70:#38304B; --beyond-80:#221945; --beyond-90:#1A1148;
  --fg-1:var(--beyond-blue); --fg-2:rgba(0,0,0,0.80); --fg-3:var(--beyond-50); --fg-muted:var(--beyond-30);
  --bg-1:var(--white); --bg-2:var(--beyond-10); --bg-dark:var(--beyond-blue);
  --border:var(--beyond-20); --border-strong:var(--beyond-40);
  --link:var(--beyond-blue); --link-hover:var(--beyond-90);
  --font-display:'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-body:'Manrope', system-ui, -apple-system, sans-serif;
  --weight-light:300; --weight-regular:400; --weight-medium:500; --weight-semibold:600; --weight-bold:700; --weight-black:800;
  --text-xs:12px; --text-sm:14px; --text-base:16px; --text-md:18px; --text-body:19px; --text-lg:22px;
  --text-xl:28px; --text-2xl:36px; --text-3xl:48px; --text-4xl:64px; --text-5xl:88px;
  --leading-tight:1.10; --leading-snug:1.20; --leading-normal:1.35; --leading-relaxed:1.55;
  --tracking-tight:-0.02em; --tracking-normal:0; --tracking-wide:0.04em; --tracking-eyebrow:0.12em;
  --space-0:0; --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px;
  --space-6:32px; --space-7:48px; --space-8:64px; --space-9:96px; --space-10:128px;
  --radius-none:0; --radius-sm:4px; --radius-md:8px; --radius-lg:12px; --radius-pill:999px;
  --shadow-sm:0 1px 2px rgba(22,12,75,0.06);
  --shadow-md:0 8px 24px rgba(22,12,75,0.10);
  --shadow-lg:0 16px 48px rgba(22,12,75,0.14);
  --ease-out:cubic-bezier(0.2,0.8,0.2,1); --ease-in-out:cubic-bezier(0.4,0.0,0.2,1);
  --dur-fast:150ms; --dur-base:300ms; --dur-slow:500ms;
  --container-page:1180px; --gutter-mobile:20px; --gutter-desktop:64px;
}

/* ---------------------------------------------------------------------------
   THEME ISOLATION
   Per-section widgets lose the source page's <body>, so the body's type and
   colour are restated on each section, and the element resets sit at (0,2,0)
   via :where() — above a theme's `.entry-content h2`, tied with (and so beaten
   by, being earlier) the `.inn-sec`-prefixed component rules below.
   --------------------------------------------------------------------------- */
[class*="elementor-widget-inertia_inn_"] > .elementor-widget-container{ margin:0; padding:0; }
.inn-sec{
  position:relative;
  font-family:var(--font-body);
  font-size:var(--text-body);
  font-weight:var(--weight-regular);
  line-height:var(--leading-relaxed);
  color:var(--fg-2);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  --inn-spt:var(--inn-pt,0px);
  --inn-spb:var(--inn-pb,0px);
  padding-top:var(--inn-spt);
  padding-bottom:var(--inn-spb);
}
[class*="elementor-widget-inertia_inn_"] .inn-sec *,
[class*="elementor-widget-inertia_inn_"] .inn-sec *::before,
[class*="elementor-widget-inertia_inn_"] .inn-sec *::after{ box-sizing:border-box; }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(h1,h2,h3,h4,h5,h6){
  font-family:var(--font-display); font-weight:var(--weight-bold); color:var(--fg-1);
  letter-spacing:var(--tracking-tight); line-height:var(--leading-tight); margin:0 0 .5em; padding:0; text-transform:none;
}
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(p){ margin:0 0 1em; padding:0; text-wrap:pretty; }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(figure,blockquote,ul,ol){ margin:0; padding:0; }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(blockquote){ border:0; background:none; quotes:none; }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(a){ color:var(--link); text-decoration:none; transition:color var(--dur-fast) var(--ease-out); }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(a:hover){ color:var(--link-hover); }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(strong,b){ font-weight:var(--weight-bold); }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(img,svg){ max-width:100%; display:block; }
[class*="elementor-widget-inertia_inn_"] .inn-sec :where(button,input,textarea,select){ font-family:inherit; }
.inn-sec ::selection{ background:var(--breakthrough-yellow); color:var(--beyond-blue); }

/* Many themes ship img{height:auto!important;max-width:100%!important}, which
   collapses every object-fit:cover frame. Re-assert the sizing patterns this
   page uses: the cover frames fill their box, the marks and logos are sized by
   height with the width following. */
.inn-sec :is(.hero-media,.psd-open-media,.psd-mont > div,.psd-band-media,.psd-cs-media > div) img{
  width:100%!important; height:100%!important; max-width:none!important; object-fit:cover!important;
}
.inn-sec .cert-marks img{ width:auto!important; height:78px!important; max-width:none!important; }
.inn-sec .pbar-marks img{ width:auto!important; height:var(--inn-mh,70px)!important; max-width:none!important; }
.inn-sec .ts-logo{ width:auto!important; height:var(--inn-lh,30px)!important; }
.inn-sec .ts-face{ width:38px!important; height:38px!important; max-width:none!important; object-fit:cover!important; }

/* Section spacing defaults. At 1600px and up every section holds the design's
   own values (--inn-pt / --inn-pb, written by the Section control's desktop
   value; the rules below only stand in before control CSS exists). Below
   1600px the spacing is 35px (1200-1599px), 45px (768-1199px) and 30px
   (767px and below), unless the Section control's laptop / tablet / mobile
   value is set — those write --inn-pt-r / --inn-pb-r, which win here. */
.inn-sec.inn-hero,.inn-sec.psd-sprint-sec,.inn-sec.psd-focus,.inn-sec.inn-outcomes,.inn-sec.inn-case,.inn-sec.inn-ts,.inn-sec.inn-faq,.inn-sec.inn-cta{--inn-pt:96px;--inn-pb:96px}
.inn-sec.psd-sprint-sec,.inn-sec.inn-outcomes{--inn-pb:64px}
.inn-sec.inn-open{--inn-pt:64px;--inn-pb:108px}
.inn-sec.cert-band{--inn-pt:26px;--inn-pb:28px}
.inn-sec.cta-strip{--inn-pt:48px;--inn-pb:48px}
.inn-sec.pbar-band{--inn-pt:48px;--inn-pb:50px}
@media (max-width:1599px){ .inn-sec{--inn-spt:var(--inn-pt-r,35px);--inn-spb:var(--inn-pb-r,35px)} }
@media (max-width:1199px){ .inn-sec{--inn-spt:var(--inn-pt-r,45px);--inn-spb:var(--inn-pb-r,45px)} }
@media (max-width:767px){ .inn-sec{--inn-spt:var(--inn-pt-r,30px);--inn-spb:var(--inn-pb-r,30px)} }

/* Page content wrapper */
.inn-sec .page-wrap{max-width:var(--container-page);margin:0 auto;padding-left:var(--gutter-desktop);padding-right:var(--gutter-desktop)}

/* ---------------------------------------------------------------------------
   Shared components (design-system layer, verbatim)
   --------------------------------------------------------------------------- */
.inn-sec .tick{width:44px;height:3px;background:var(--breakthrough-yellow);margin:0 0 var(--space-5);flex:none}
.inn-sec .eyebrow{font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);color:var(--beyond-blue);text-transform:none}
.inn-sec .btn-y{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--breakthrough-yellow);color:var(--beyond-blue);text-decoration:none;border:none;cursor:pointer;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-base);line-height:var(--leading-relaxed);padding:var(--space-4) var(--space-6);border-radius:var(--radius-sm);text-transform:none;letter-spacing:normal}
.inn-sec .btn-y::after{content:"\2192";font-weight:var(--weight-bold);transition:transform var(--dur-fast) var(--ease-out)}
.inn-sec .btn-y:hover{color:var(--beyond-blue);background:var(--breakthrough-yellow);filter:brightness(.95)}
.inn-sec .btn-y:hover::after{transform:translateX(4px)}
.inn-sec .psd-btn-o{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);border:0;border-radius:var(--radius-sm);background:transparent;box-shadow:inset 0 0 0 1px var(--beyond-40);color:var(--beyond-blue);font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--leading-relaxed);text-decoration:none;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}
.inn-sec .psd-btn-o::after{content:"\2192";font-weight:var(--weight-bold);transition:transform var(--dur-fast) var(--ease-out)}
.inn-sec .psd-btn-o:hover{background:var(--beyond-10);box-shadow:inset 0 0 0 1px var(--beyond-blue);color:var(--beyond-blue)}
.inn-sec .psd-btn-o:hover::after{transform:translateX(4px)}
.inn-sec .psd-btn-o:focus-visible{outline:2px solid var(--breakthrough-yellow);outline-offset:2px}
.inn-sec .seclink{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:600;font-size:16px;line-height:var(--leading-relaxed);color:var(--beyond-blue);text-decoration:none;border-bottom:2px solid var(--beyond-20);padding-bottom:3px;transition:border-color .2s ease}
.inn-sec .seclink:hover{border-color:var(--breakthrough-yellow);color:var(--beyond-blue)}
.inn-sec .display-h1{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:62px;line-height:1.05;letter-spacing:var(--tracking-tight);color:var(--beyond-blue);margin:0 0 var(--space-5)}
.inn-sec .sec-head-h2{font-family:var(--font-display);font-weight:800;font-size:50px;line-height:1.06;letter-spacing:-.028em;color:var(--fg-1);margin:0 0 18px}
.inn-sec .sec-head-h2.is-statement{font-size:34px;line-height:1.3;letter-spacing:-.022em}
.inn-sec .inn-c-yellow{color:var(--breakthrough-yellow)}
.inn-sec .inn-c-white{color:var(--white)}
.inn-sec .inn-nowrap{white-space:nowrap}

/* Section-bottom notch: the downward triangle that carries a section's colour
   into the top of the next one. Its colour follows the section background
   (--inn-bg, written by the Section background control). */
.inn-sec .inn-notch{position:relative;height:var(--inn-spb,0px)}
.inn-sec .inn-notch > span{position:absolute;left:-6px;top:calc(100% - 1px);width:56px;height:29px;background:var(--inn-bg);clip-path:polygon(0 0,100% 0,50% 100%);z-index:1}
.inn-sec.has-notch{padding-bottom:0}

/* Passive motion: scroll-settle (gravity) + ambient float (buoyancy) */
.inn-sec.settle,.inn-sec .settle{opacity:0;transform:translateY(20px);filter:blur(7px);transition:opacity 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1),filter 1.1s cubic-bezier(.2,.8,.2,1);}
.inn-sec.settle.in,.inn-sec .settle.in{opacity:1;transform:none;filter:none;}
.inn-sec .settle-x{opacity:0;transform:translateX(-40px);transform-origin:left center;transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);}
.inn-sec .settle-x.in{opacity:1;transform:none;}
@keyframes inn-floaty{
  0%{transform:translate(0,0) rotate(0deg);box-shadow:0 18px 40px -24px rgba(22,12,75,0.28);}
  25%{transform:translate(2px,-7px) rotate(0.15deg);}
  50%{transform:translate(0,-14px) rotate(0.3deg);box-shadow:0 36px 66px -28px rgba(22,12,75,0.32);}
  75%{transform:translate(-2px,-7px) rotate(0.15deg);}
  100%{transform:translate(0,0) rotate(0deg);box-shadow:0 18px 40px -24px rgba(22,12,75,0.28);}
}
.inn-sec .floaty{animation:inn-floaty 17s ease-in-out infinite;will-change:transform,box-shadow;}
.inn-sec .floaty:hover{animation-play-state:paused;}
/* Signature: hero scan / focus-pull */
.inn-sec .hero-media .sig-scan{position:absolute;top:0;bottom:0;left:-8%;width:2px;background:var(--breakthrough-yellow);opacity:0;pointer-events:none;z-index:3;box-shadow:0 0 16px 3px rgba(255,192,0,0.55);}
.inn-sec .hero-media .sig-scan::before{content:"";position:absolute;top:0;bottom:0;right:0;width:92px;transform:translateX(-100%);background:linear-gradient(90deg,rgba(255,192,0,0) 0%,rgba(255,192,0,0.16) 100%);}
.inn-sec .hero-media .sig-scan-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:11px;height:11px;border-radius:50%;background:var(--breakthrough-yellow);box-shadow:0 0 14px 4px rgba(255,192,0,0.7);}
.inn-sec .hero-media img{transition:filter 1.15s cubic-bezier(.2,.8,.2,1),transform 1.15s cubic-bezier(.2,.8,.2,1);}
.inn-sec .hero-media.sig-armed img{filter:blur(7px);transform:scale(1.04);}
.inn-sec .hero-media.sig-run img{filter:none;transform:none;}
.inn-sec .hero-media.sig-run .sig-scan{animation:inn-sigScan 1.25s cubic-bezier(.2,.8,.2,1) forwards;}
@keyframes inn-sigScan{0%{left:-8%;opacity:0;}12%{opacity:1;}88%{opacity:1;}100%{left:104%;opacity:0;}}

/* ---------------------------------------------------------------------------
   1. HERO
   --------------------------------------------------------------------------- */
.inn-sec.inn-hero{background:var(--white);--inn-bg:var(--white);padding-top:0;padding-bottom:0}
.inn-sec .hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:var(--space-6);align-items:center;padding-top:var(--inn-spt,96px);padding-bottom:var(--inn-spb,96px)}
.inn-sec .inn-hero-eyebrow{margin:0 0 var(--space-4)}
.inn-sec .inn-hero-h{font-size:48px;text-wrap:balance}
.inn-sec .inn-hero-lead p{margin:0 0 var(--space-4);max-width:62ch;font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--leading-normal);color:var(--fg-1);text-wrap:pretty}
.inn-sec .inn-hero-body p{margin:0 0 var(--space-4);max-width:62ch;font-size:var(--text-md);color:var(--fg-2);text-wrap:pretty}
.inn-sec .inn-hero-copy > :last-child p:last-child{margin-bottom:var(--space-6)}
.inn-sec .inn-hero-btns{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--space-4) var(--space-5)}
.inn-sec .hero-media{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4;max-height:640px;width:100%;justify-self:end;background:var(--beyond-10);box-shadow:var(--shadow-md)}
.inn-sec .hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media (min-width:881px) and (max-width:1180px){.inn-sec .hero-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-7)}.inn-sec .hero-grid .hero-media{aspect-ratio:4/3;max-height:none;justify-self:stretch}}
@media (max-width:880px){.inn-sec .hero-grid{grid-template-columns:1fr;gap:44px}.inn-sec .hero-media{aspect-ratio:16/11;justify-self:stretch}}

/* ---------------------------------------------------------------------------
   2. CERTIFICATION BAND
   --------------------------------------------------------------------------- */
.inn-sec.cert-band{z-index:2;background:var(--beyond-blue);--inn-bg:var(--beyond-blue);border-top:1px solid rgba(255,255,255,.12);padding-top:0;padding-bottom:0}
.inn-sec .cert-band-inner{max-width:var(--container-page);margin:0 auto;padding:var(--inn-spt,26px) var(--gutter-desktop) var(--inn-spb,28px);display:flex;align-items:flex-start;gap:28px}
.inn-sec .cert-marks{display:flex;flex:none;gap:14px;align-items:flex-start;margin-top:1px}
.inn-sec .cert-marks img{display:block;width:auto;height:78px;filter:brightness(0) invert(1);opacity:.88}
.inn-sec.inn-marks-native .cert-marks img{filter:none;opacity:1}
.inn-sec .cert-rule{width:2px;flex:none;align-self:stretch;background:var(--beyond-30)}
.inn-sec .cert-text{flex:1;margin:0;font-family:var(--font-display);font-weight:var(--weight-regular);font-size:15px;line-height:1.62;color:rgba(255,255,255,.88)}
.inn-sec .cert-text p{margin:0}
.inn-sec .cert-text b,.inn-sec .cert-text strong{font-weight:var(--weight-semibold);color:var(--white)}
.inn-sec .cert-text a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:860px){.inn-sec .cert-band-inner{flex-direction:column;gap:18px;padding-left:var(--gutter-mobile);padding-right:var(--gutter-mobile)}.inn-sec .cert-rule{align-self:auto;width:auto;height:2px}}

/* ---------------------------------------------------------------------------
   3. OPENING
   --------------------------------------------------------------------------- */
.inn-sec.inn-open{z-index:4;background:var(--bg-2);--inn-bg:var(--beyond-10)}
.inn-sec .inn-open-h{margin:0 0 var(--space-4);font-size:48px;text-wrap:pretty}
.inn-sec .inn-open-lead{margin:0 0 var(--space-7);font-size:28px;font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1);text-wrap:pretty}
.inn-sec .psd-open{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--space-8);row-gap:var(--space-6);align-items:start}
.inn-sec .psd-open-media{position:relative;aspect-ratio:1/1;border-radius:var(--radius-lg);overflow:hidden;background:var(--beyond-20);align-self:center}
.inn-sec .psd-open-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.inn-sec .inn-open-copy{align-self:center}
.inn-sec .inn-open-kicker{margin:0;max-width:62ch;font-size:25.96px;font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1);text-wrap:pretty}
.inn-sec .inn-open-body{margin-top:var(--space-5)}
.inn-sec .inn-open-body p{margin:0;max-width:62ch;font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--fg-2);text-wrap:pretty}
.inn-sec .inn-open-body p + p{margin-top:var(--space-4)}
.inn-sec .inn-open-close{grid-column:1/-1;margin:0;padding-top:var(--space-6);border-top:1px solid var(--beyond-30);font-size:28px;font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1);text-wrap:pretty}
.inn-sec .inn-open-hl{display:block;margin-top:var(--space-7);padding-right:var(--space-3);font-weight:var(--weight-medium);line-height:var(--leading-relaxed);text-wrap:balance}
.inn-sec .inn-open-mark{background:var(--breakthrough-yellow);color:var(--beyond-blue);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.inn-sec .inn-open-mark strong,.inn-sec .inn-open-mark b{font-weight:var(--weight-black)}
@media (max-width:1100px){.inn-sec .psd-open{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.inn-sec .psd-open-media{aspect-ratio:auto;height:clamp(calc(var(--space-10) * 1.75),52vw,calc(var(--space-10) * 3.25))}}

/* ---------------------------------------------------------------------------
   4. PRODUCT STRATEGY SPRINT
   --------------------------------------------------------------------------- */
.inn-sec.psd-sprint-sec{z-index:3;background:var(--beyond-blue);--inn-bg:var(--beyond-blue);scroll-margin-top:var(--space-9)}
.inn-sec .psd-sprint-name{margin:0;font-family:var(--font-display);font-size:56.64px;font-weight:var(--weight-black);line-height:var(--leading-tight);letter-spacing:-0.03em;color:var(--breakthrough-yellow)}
.inn-sec .inn-sprint-lead{margin:var(--space-5) 0 0;font-size:32.2px;font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--white);text-wrap:pretty}
.inn-sec .psd-mont{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-7);aspect-ratio:2.2/1}
.inn-sec .psd-mont > div{position:relative;min-height:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--beyond-80)}
.inn-sec .psd-mont > div:first-child{grid-row:1 / span 2}
.inn-sec .psd-mont img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}
.inn-sec .inn-sprint-when{margin-top:var(--space-9)}
.inn-sec .inn-sprint-h3{margin:0 0 var(--space-4);font-size:36px;font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--breakthrough-yellow);text-wrap:pretty}
.inn-sec .inn-sprint-intro{margin:0;max-width:46em;font-size:24.2px;font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--white);text-wrap:pretty}
.inn-sec .inn-sprint-note{margin:var(--space-4) 0 var(--space-8);font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--beyond-30)}
.inn-sec .inn-acc-list{max-width:52rem;border-bottom:1px solid rgba(255,255,255,0.16)}
.inn-sec .psd-acc{--inn-acc-fs:22px;position:relative;border-top:1px solid rgba(255,255,255,0.16)}
.inn-sec .psd-acc::before{content:"";position:absolute;left:0;top:-1px;width:var(--space-6);height:2px;background:var(--breakthrough-yellow);transition:width var(--dur-slow) var(--ease-out)}
.inn-sec .psd-acc[open]::before{width:100%}
.inn-sec .psd-acc summary{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) 0;list-style:none;cursor:pointer}
.inn-sec .psd-acc summary::-webkit-details-marker{display:none}
.inn-sec .psd-acc summary::marker{content:""}
.inn-sec .psd-acc summary:focus-visible{outline:2px solid var(--breakthrough-yellow);outline-offset:var(--space-1)}
.inn-sec .inn-acc-ico{flex:none;width:var(--space-6);height:var(--space-6);color:var(--white)}
.inn-sec .inn-acc-t{flex:1;min-width:0;font-size:var(--inn-acc-fs);font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--white);text-wrap:balance}
.inn-sec .psd-acc-plus{position:relative;flex:none;width:calc(var(--space-6) + var(--space-2));height:calc(var(--space-6) + var(--space-2));border:1.5px solid var(--beyond-30);border-radius:var(--radius-pill);color:var(--white);transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}
.inn-sec .psd-acc-plus::before,.inn-sec .psd-acc-plus::after{content:"";position:absolute;left:50%;top:50%;width:var(--space-4);height:2px;margin:-1px 0 0 calc(var(--space-2) * -1);background:currentColor}
.inn-sec .psd-acc-plus::after{transform:rotate(90deg)}
.inn-sec .psd-acc summary:hover .psd-acc-plus,.inn-sec .psd-acc[open] .psd-acc-plus{border-color:var(--breakthrough-yellow);color:var(--breakthrough-yellow)}
.inn-sec .psd-acc[open] .psd-acc-plus{transform:rotate(45deg)}
.inn-sec .inn-acc-body{margin:0;padding:0 calc(var(--space-7) + var(--space-4)) var(--space-5) calc(var(--space-6) + var(--space-4));font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--beyond-20);text-wrap:pretty}
.inn-sec .inn-acc-body p{margin:0}
.inn-sec .inn-acc-body p + p{margin-top:.9em}
@media (prefers-reduced-motion:reduce){.inn-sec .psd-acc::before,.inn-sec .psd-acc-plus{transition:none}}
@media (max-width:860px){.inn-sec .psd-mont{aspect-ratio:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.inn-sec .psd-mont > div{aspect-ratio:1/1}.inn-sec .psd-mont > div:first-child{grid-row:auto;grid-column:1 / -1;aspect-ratio:16/10}}

/* ---------------------------------------------------------------------------
   5. WHAT THE SPRINT COVERS (three bands)
   --------------------------------------------------------------------------- */
.inn-sec.psd-focus{z-index:2;background:var(--white);--inn-bg:var(--white)}
.inn-sec .inn-h2-mb{margin:0 0 var(--space-5);text-wrap:pretty}
.inn-sec .inn-lead-b{margin:0;font-size:28px;font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1);text-wrap:pretty}
.inn-sec .inn-body-md{margin-top:var(--space-5)}
.inn-sec .inn-body-md.is-tight{margin-top:var(--space-4)}
.inn-sec .inn-body-md p{margin:0;font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--fg-2);text-wrap:pretty}
.inn-sec .inn-body-md p + p{margin-top:var(--space-4)}
.inn-sec .inn-flow-wrap{margin-top:var(--space-7)}
.inn-sec .psd-flow{--psd-bleed:var(--space-6);position:relative;margin:var(--space-2) calc(-1 * var(--psd-bleed)) 0}
.inn-sec .psd-bands{display:grid;list-style:none;margin:0;padding:0}
.inn-sec .psd-bands::after{content:"";height:1px;background:var(--border)}
.inn-sec .psd-band{position:relative;display:grid;grid-template-columns:minmax(0,4.5fr) minmax(0,2.1fr) minmax(0,3.4fr);grid-template-areas:"main media go";column-gap:var(--space-5);margin:0;padding:var(--space-7) var(--psd-bleed);background-color:transparent;transition:background-color var(--dur-base) var(--ease-out)}
.inn-sec .psd-band:first-child{padding-top:var(--space-5)}
.inn-sec .psd-band:first-child::before{display:none}
.inn-sec .psd-band::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--border)}
.inn-sec .psd-band::after{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--breakthrough-yellow);transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-base) var(--ease-out)}
.inn-sec .psd-band-main{grid-area:main;min-width:0}
.inn-sec .psd-band-id{margin:0 0 var(--space-7)}
.inn-sec .psd-band-head{position:relative;display:flex;align-items:center;min-height:var(--space-7);gap:var(--space-4);margin:0;padding-bottom:var(--space-3);border-bottom:3px solid var(--breakthrough-yellow)}
.inn-sec .psd-band-cat{margin:0;font-family:var(--font-display);font-size:37.8px;font-weight:var(--weight-black);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);white-space:nowrap;color:var(--fg-1)}
.inn-sec .psd-band-ico{flex:none;width:var(--space-7);height:var(--space-7);color:var(--beyond-blue);stroke-width:1.5;transition:stroke-width var(--dur-base) var(--ease-out)}
.inn-sec .psd-band-ico *{vector-effect:non-scaling-stroke}
.inn-sec .psd-band-q{margin:0;font-family:var(--font-display);font-size:25.96px;font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--fg-1)}
.inn-sec .psd-band-q span{display:block;white-space:nowrap}
.inn-sec .psd-band-d{margin:var(--space-5) 0 0;max-width:46ch;font-size:var(--text-md);color:var(--fg-2);text-wrap:pretty;transition:color var(--dur-base) var(--ease-out)}
.inn-sec .psd-band-media{grid-area:media;position:relative;align-self:stretch;min-height:calc(var(--space-10) * 2);border-radius:var(--radius-md);overflow:hidden;background:var(--beyond-20)}
.inn-sec .psd-band-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9);transition:transform var(--dur-slow) var(--ease-out),filter var(--dur-slow) var(--ease-out)}
.inn-sec .psd-band-go{grid-area:go;display:flex;flex-direction:column;min-width:0;padding-left:var(--space-2)}
.inn-sec .psd-band-go .seclink{margin-top:var(--space-7);align-self:flex-start;transition:background-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}
.inn-sec .psd-band-go .seclink:hover,.inn-sec .psd-band-go .seclink:focus-visible{background-color:color-mix(in srgb,var(--breakthrough-yellow) 42%,transparent);box-shadow:0 0 0 var(--space-1) color-mix(in srgb,var(--breakthrough-yellow) 42%,transparent)}
.inn-sec .psd-band-go .seclink span{display:inline-block;transition:transform var(--dur-base) var(--ease-out)}
.inn-sec .psd-band-go .seclink:hover span,.inn-sec .psd-band-go .seclink:focus-visible span{transform:translateX(var(--space-1))}
.inn-sec .psd-acts-k{margin:0 0 var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--fg-3)}
.inn-sec .psd-acts{list-style:none;margin:0;padding:0}
.inn-sec .psd-acts li{padding:var(--space-3) 0;border-top:1px solid var(--border);margin:0;list-style:none}
.inn-sec .psd-acts li:last-child{padding-bottom:0}
.inn-sec .psd-act-t{font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--fg-1)}
.inn-sec .psd-act-d{margin-top:var(--space-1);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--fg-2);transition:color var(--dur-base) var(--ease-out)}
.inn-sec .psd-band:hover,.inn-sec .psd-band:focus-within{background-color:var(--bg-2)}
.inn-sec .psd-band:hover::after,.inn-sec .psd-band:focus-within::after{transform:scaleX(1)}
.inn-sec .psd-band:hover .psd-band-media img,.inn-sec .psd-band:focus-within .psd-band-media img{transform:scale(1.03);filter:none}
.inn-sec .psd-band:hover .psd-band-d,.inn-sec .psd-band:focus-within .psd-band-d,.inn-sec .psd-band:hover .psd-act-d,.inn-sec .psd-band:focus-within .psd-act-d{color:var(--fg-1)}
.inn-sec .psd-band:hover .psd-band-ico,.inn-sec .psd-band:focus-within .psd-band-ico{stroke-width:2}
/* 1199px and below: each band stacks into one column — copy, photo, then the activities. */
@media (max-width:1199px){.inn-sec .psd-bands{grid-template-rows:none}.inn-sec .psd-band{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "media" "go";row-gap:var(--space-5)}.inn-sec .psd-band-media{align-self:stretch;aspect-ratio:16/9;min-height:0}.inn-sec .psd-band-go{padding-left:0}}
@media (max-width:860px){.inn-sec .psd-band-head{height:auto}.inn-sec .psd-flow{--psd-bleed:var(--space-3);margin-top:var(--space-4)}.inn-sec .psd-band::before,.inn-sec .psd-band::after{left:0}.inn-sec .psd-bands{display:block}.inn-sec .psd-band,.inn-sec .psd-band:first-child{display:block;padding:var(--space-6) var(--psd-bleed)}.inn-sec .psd-band:first-child{padding-top:var(--space-5)}.inn-sec .psd-band-id{margin-bottom:var(--space-5)}.inn-sec .psd-band-q{text-wrap:balance}.inn-sec .psd-band-cat{white-space:normal}.inn-sec .psd-band-q span{display:inline;white-space:normal}.inn-sec .psd-band-media{margin-top:var(--space-5);aspect-ratio:16/9;min-height:0}.inn-sec .psd-band-go{margin-top:var(--space-5);padding-left:0}}
@media (prefers-reduced-motion:reduce){.inn-sec .psd-band,.inn-sec .psd-band::after,.inn-sec .psd-band-d,.inn-sec .psd-act-d,.inn-sec .psd-band-ico,.inn-sec .psd-band-media img,.inn-sec .psd-band-go .seclink,.inn-sec .psd-band-go .seclink span{transition:none}}

/* ---------------------------------------------------------------------------
   6. WHAT THE SPRINT PRODUCES (outcome cards)
   --------------------------------------------------------------------------- */
.inn-sec.inn-outcomes{z-index:1;background:var(--bg-2);--inn-bg:var(--beyond-10)}
.inn-sec .inn-out-grid{display:grid;grid-template-columns:repeat(var(--inn-out-cols-sm,1),minmax(0,1fr));gap:var(--space-6);margin-top:var(--space-8)}
/* Card columns: Content > Outcome cards sets --inn-out-cols (992px and up, default 2) and --inn-out-cols-sm (991px and below, default 1). */
@media (min-width:992px){.inn-sec .inn-out-grid{grid-template-columns:repeat(var(--inn-out-cols,2),minmax(0,1fr))}}
.inn-sec .bcard{position:relative;border:1px solid var(--border);border-radius:8px;padding:34px 30px;display:flex;flex-direction:column;background:#fff;box-shadow:0 1px 2px rgba(22,12,75,0.05);transition:background .28s ease,border-color .28s ease,transform .22s ease,box-shadow .22s ease;}
.inn-sec .bcard:hover{transform:translateY(-5px);background:var(--beyond-blue);border-color:var(--beyond-blue);box-shadow:0 26px 50px -28px rgba(22,12,75,0.5);}
.inn-sec .b-title{font-family:var(--font-display);font-weight:600;font-size:21px;line-height:1.22;letter-spacing:-0.01em;color:var(--beyond-blue);margin:0 0 16px;transition:color .28s ease;}
.inn-sec .bcard:hover .b-title{color:#fff;}
.inn-sec .b-desc{font-size:15px;line-height:1.55;color:var(--fg-2);font-weight:400;margin:0 0 28px;transition:color .28s ease;}
.inn-sec .bcard:hover .b-desc{color:rgba(255,255,255,0.82);}
.inn-sec .inn-out-head{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:3px solid var(--breakthrough-yellow)}
.inn-sec .psd-out-ico{flex:none;display:block;width:clamp(var(--space-7),5vw,var(--space-8));height:clamp(var(--space-7),5vw,var(--space-8));color:var(--beyond-blue);transition:color .28s ease}
.inn-sec .inn-fill-y{fill:var(--breakthrough-yellow)}
.inn-sec .inn-out-t{margin:0;font-size:28px;font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:balance}
.inn-sec .inn-out-lead{margin:0 0 var(--space-3);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-normal);text-wrap:pretty}
.inn-sec .inn-out-list{list-style:none;margin:0;padding:0}
.inn-sec .inn-out-li{position:relative;margin:0;padding:var(--space-1) 0 var(--space-1) var(--space-5);list-style:none}
.inn-sec .psd-out-dot{position:absolute;left:0;top:calc(var(--space-1) + .45em);width:var(--space-2);height:var(--space-2);border-radius:var(--radius-pill);background:var(--beyond-blue);transition:background-color .28s ease}
.inn-sec .inn-out-li :is(strong,b){display:inline;margin:0;font-family:var(--font-display);font-size:inherit;font-weight:var(--weight-bold);line-height:inherit;letter-spacing:inherit;color:var(--beyond-blue);transition:color .28s ease}
.inn-sec .bcard:hover .psd-out-ico{color:var(--white)}
.inn-sec .bcard:hover .psd-out-dot{background:var(--breakthrough-yellow)}
.inn-sec .bcard:hover .inn-out-li :is(strong,b){color:#fff}

/* ---------------------------------------------------------------------------
   7. MID-PAGE CTA STRIP
   --------------------------------------------------------------------------- */
.inn-sec.cta-strip{background:var(--beyond-blue);--inn-bg:var(--beyond-blue)}
.inn-sec .cta-strip-inner{max-width:var(--container-page);margin:0 auto;padding:0 var(--gutter-desktop);display:flex;align-items:center;justify-content:space-between;gap:var(--space-7)}
.inn-sec .cta-strip-h{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--white);margin:0 0 var(--space-2);max-width:32ch;text-wrap:balance}
.inn-sec .cta-strip-p{font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--leading-relaxed);color:var(--white);margin:0;max-width:62ch}
.inn-sec .cta-strip-p p{margin:0}
.inn-sec .cta-strip .btn-y{flex:none;white-space:nowrap}
@media (max-width:1100px){.inn-sec .cta-strip-inner{flex-direction:column;align-items:flex-start;gap:var(--space-5)}}
@media (max-width:860px){.inn-sec .cta-strip-inner{padding:0 var(--gutter-mobile)}}

/* ---------------------------------------------------------------------------
   8. PROOF BAR
   --------------------------------------------------------------------------- */
.inn-sec.pbar-band{background:var(--white);--inn-bg:var(--white)}
.inn-sec .inn-pbar-k{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-relaxed);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--beyond-50);margin:0 0 var(--space-5)}
.inn-sec .pbar{background:transparent;padding:0;overflow:hidden}
.inn-sec .pbar ul{list-style:none;margin:0;padding:0}
.inn-sec .pbar li{list-style:none;margin:0}
.inn-sec .pbar-stats{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.inn-sec .pbar-stat{flex:1;text-align:center;min-width:0;position:relative}
.inn-sec .pbar-stat+.pbar-stat::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:1px;background:var(--beyond-20)}
.inn-sec .pbar-n{font-family:var(--font-display);font-size:36px;font-weight:700;line-height:1;letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--beyond-blue)}
.inn-sec .pbar-l{margin-top:7px;font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:var(--beyond-50)}
.inn-sec .pbar-g{display:block;text-decoration:none;color:inherit}
.inn-sec .pbar-g:hover{color:inherit}
.inn-sec .pbar-stars{display:flex;gap:2px;justify-content:center;margin-bottom:6px}
.inn-sec .pbar-stars svg{width:14px;height:14px;display:block}
.inn-sec .pbar-g .pbar-n{font-size:24px;color:var(--beyond-blue)}
.inn-sec .pbar-g .pbar-l{display:inline-flex;align-items:center;gap:6px;transition:color .18s}
.inn-sec .pbar-g .pbar-l svg{width:13px;height:13px;flex:none}
.inn-sec .pbar-g:hover .pbar-l{color:var(--beyond-blue)}
.inn-sec .pbar-rule{height:1px;background:var(--beyond-20);margin:24px 0 26px}
.inn-sec .pbar-marks{display:flex;align-items:center;justify-content:space-evenly;gap:24px;padding:0 8px}
.inn-sec .pbar-pair{display:flex;align-items:center;gap:28px;padding-right:12px}
.inn-sec .pbar-marks a,.inn-sec .pbar-mark{display:flex;align-items:center;justify-content:center}
.inn-sec .pbar-marks img{display:block;width:auto;opacity:.88;transition:opacity .18s}
.inn-sec .pbar-marks a:hover img{opacity:1}
.inn-sec .pbar .h-iso{--inn-mh:82px}
.inn-sec .pbar .h-iff{--inn-mh:67px}
.inn-sec .pbar .h-good{--inn-mh:74px}
.inn-sec .pbar .h-mdea{--inn-mh:70px}
.inn-sec .pbar .h-ida{--inn-mh:70px}
@media(max-width:760px){
  .inn-sec .pbar-stats{flex-wrap:wrap;gap:18px 10px}
  .inn-sec .pbar-stat{flex:0 0 30%}
  .inn-sec .pbar-stat:nth-child(n+4){flex:0 0 45%}
  .inn-sec .pbar-stat+.pbar-stat::before{display:none}
  .inn-sec .pbar-marks{flex-wrap:wrap;justify-content:center;gap:22px 28px}
  .inn-sec .pbar .h-iso{--inn-mh:58px}.inn-sec .pbar .h-iff{--inn-mh:48px}.inn-sec .pbar .h-good{--inn-mh:53px}.inn-sec .pbar .h-mdea{--inn-mh:50px}.inn-sec .pbar .h-ida{--inn-mh:50px}
}
@media(prefers-reduced-motion:reduce){.inn-sec .pbar-marks img,.inn-sec .pbar-g .pbar-l{transition:none}}

/* ---------------------------------------------------------------------------
   9. CASE STUDY
   --------------------------------------------------------------------------- */
.inn-sec.inn-case{background:var(--bg-2);--inn-bg:var(--beyond-10);scroll-margin-top:var(--space-9)}
.inn-sec .inn-case-h{margin:0 0 var(--space-7);text-wrap:balance}
.inn-sec .psd-cs{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--space-8);align-items:stretch}
.inn-sec .psd-cs-media{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:var(--space-4);min-height:26rem}
.inn-sec .psd-cs-media > div{position:relative;min-height:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--beyond-10)}
.inn-sec .psd-cs-media img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block}
.inn-sec .inn-cs-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.inn-sec .inn-cs-eyebrow{margin:0 0 var(--space-3)}
.inn-sec .inn-cs-t{margin:0 0 var(--space-5);font-family:var(--font-display);font-size:36px;font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--fg-1);text-wrap:balance}
.inn-sec .inn-cs-d{margin:0 0 var(--space-6);max-width:60ch;font-size:var(--text-md);color:var(--fg-1);text-wrap:pretty}
.inn-sec .inn-cs-d p{margin:0}
.inn-sec .psd-cs-rows{width:100%;border-bottom:1px solid var(--beyond-20)}
.inn-sec .psd-cs-row{display:grid;grid-template-columns:minmax(0,6.5rem) minmax(0,1fr);gap:var(--space-5);padding:var(--space-4) 0;border-top:1px solid var(--beyond-20)}
.inn-sec .inn-cs-k{margin:0;padding-top:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--fg-1)}
.inn-sec .inn-cs-v{margin:0;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--fg-2);text-wrap:pretty}
.inn-sec .inn-cs-v.is-strong{color:var(--fg-1);font-weight:var(--weight-semibold)}
.inn-sec .inn-cs-v a{color:var(--link)}
.inn-sec .psd-cs-quote{margin:var(--space-7) 0 0;padding:var(--space-5) var(--space-7);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg)}
.inn-sec .psd-cs-q{margin:0 0 var(--space-5);font-size:var(--text-md);line-height:1.55;font-weight:var(--weight-medium);font-style:italic;color:var(--beyond-blue)}
.inn-sec .psd-cs-q p{margin:0 0 var(--space-3);text-wrap:pretty}
.inn-sec .psd-cs-q p:last-child{margin:0}
.inn-sec .psd-cs-by{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.inn-sec .psd-cs-quote .ts-logo{margin-bottom:var(--space-4)}
.inn-sec .psd-cs-quote .ts-attrib{margin-top:0;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4) var(--space-6)}
.inn-sec .psd-cs-quote .ts-cs{margin:0;align-self:center}
.inn-sec .inn-cs-more{margin:var(--space-6) 0 0}
@media (max-width:1180px){.inn-sec .psd-cs{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.inn-sec .psd-cs-media{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.inn-sec .psd-cs-media > div{aspect-ratio:3/2}}
@media (max-width:860px){.inn-sec .psd-cs-quote{padding:var(--space-5)}}
@media (max-width:600px){.inn-sec .psd-cs-media{grid-template-columns:minmax(0,1fr)}.inn-sec .psd-cs-media > div{aspect-ratio:16/10}.inn-sec .psd-cs-row{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}}

/* ---------------------------------------------------------------------------
   10. TESTIMONIALS (shared ts-/rnav- vocabulary, verbatim)
   --------------------------------------------------------------------------- */
.inn-sec.inn-ts{background:var(--beyond-blue);--inn-bg:var(--beyond-blue)}
.inn-sec .inn-ts-h{margin:0;color:var(--white)}
.inn-sec .ts-stage{margin:40px 0 0;overflow:hidden}
.inn-sec .ts-track{display:flex;align-items:stretch;gap:22px;height:var(--ts-h,470px);transform:translate3d(var(--ts-x,0px),0,0);transition:transform .62s cubic-bezier(.2,.8,.2,1);will-change:transform}
.inn-sec .ts-card{position:relative;flex:0 0 var(--tsw,300px);min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-2);border-radius:12px;padding:28px 28px 24px;opacity:.42;cursor:pointer;transition:flex-basis .62s cubic-bezier(.2,.8,.2,1),opacity .45s ease,padding .62s cubic-bezier(.2,.8,.2,1),background .3s ease}
.inn-sec .ts-card:not(.is-hero):hover{opacity:.62;background:var(--beyond-10)}
.inn-sec .ts-card.is-hero{flex-basis:var(--tswh,620px);opacity:1;cursor:default;padding:36px 40px 28px}
.inn-sec .ts-card:not(.is-hero) .ts-logo{opacity:.85}
.inn-sec .ts-card:not(.is-hero) .ts-q{overflow:hidden;-webkit-mask-image:linear-gradient(#000 58%,transparent 100%);mask-image:linear-gradient(#000 58%,transparent 100%)}
.inn-sec .ts-card:not(.is-hero) .ts-cs{pointer-events:none}
.inn-sec .ts-card:not(.is-hero) .ts-face{display:none}
.inn-sec .ts-card:not(.is-hero) .ts-who b::after{display:none}
.inn-sec .ts-word{display:flex;align-items:center;gap:11px;height:30px;margin:0 0 22px}
.inn-sec .ts-word b{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.025em;line-height:1;color:var(--beyond-blue)}
.inn-sec .ts-word i{display:block;flex:none;width:1px;height:20px;background:var(--beyond-20)}
.inn-sec .ts-word em{font-family:var(--font-display);font-style:normal;font-size:8.5px;font-weight:500;letter-spacing:.15em;line-height:1.35;text-transform:uppercase;color:var(--beyond-50)}
.inn-sec .rnav{margin-top:34px;display:flex;flex-direction:column;align-items:center;gap:14px}
.inn-sec .rnav-row{display:flex;align-items:center;justify-content:center;gap:26px}
.inn-sec .rnav-btn{width:58px;height:58px;flex:none;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--beyond-blue);border-radius:50%;background:var(--beyond-blue);font-size:21px;line-height:1;color:var(--white);cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,opacity .18s ease}
.inn-sec .rnav-btn:hover{background:var(--breakthrough-yellow);border-color:var(--breakthrough-yellow);color:var(--beyond-blue);transform:scale(1.07)}
.inn-sec .rnav-btn:focus-visible{outline:2px solid var(--breakthrough-yellow);outline-offset:4px}
.inn-sec .rnav-btn[disabled]{cursor:default;background:transparent;border-color:var(--beyond-20);color:var(--beyond-30);transform:none}
.inn-sec .rnav-track{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:center;max-width:560px}
.inn-sec .rnav-seg{width:32px;height:6px;padding:0;border:0;border-radius:3px;background:var(--beyond-20);cursor:pointer;transition:background .2s ease;min-height:0;line-height:0}
.inn-sec .rnav-seg:hover{background:var(--beyond-40)}
.inn-sec .rnav-seg.is-on{background:var(--breakthrough-yellow)}
.inn-sec .rnav-seg:focus-visible{outline:2px solid var(--beyond-blue);outline-offset:4px}
.inn-sec .rnav-count{margin:0;display:flex;align-items:baseline;gap:8px;font-family:var(--font-display);font-size:13px;font-weight:500;letter-spacing:.16em}
.inn-sec .rnav-count b{font-weight:700;color:var(--beyond-blue)}
.inn-sec .rnav-count span{color:var(--beyond-50)}
.inn-sec .rnav.on-navy .rnav-btn{border-color:var(--white);background:var(--white);color:var(--beyond-blue)}
.inn-sec .rnav.on-navy .rnav-btn:hover{background:var(--breakthrough-yellow);border-color:var(--breakthrough-yellow);color:var(--beyond-blue)}
.inn-sec .rnav.on-navy .rnav-btn[disabled]{background:transparent;border-color:rgba(255,255,255,.26);color:rgba(255,255,255,.5)}
.inn-sec .rnav.on-navy .rnav-btn:focus-visible{outline-color:var(--breakthrough-yellow)}
.inn-sec .rnav.on-navy .rnav-seg{background:rgba(255,255,255,.26)}
.inn-sec .rnav.on-navy .rnav-seg:hover{background:rgba(255,255,255,.55)}
.inn-sec .rnav.on-navy .rnav-seg.is-on{background:var(--breakthrough-yellow)}
.inn-sec .rnav.on-navy .rnav-seg:focus-visible{outline-color:var(--breakthrough-yellow)}
.inn-sec .rnav.on-navy .rnav-count b{color:var(--white)}
.inn-sec .rnav.on-navy .rnav-count span{color:rgba(255,255,255,.6)}
@media(max-width:820px){.inn-sec .rnav-row{gap:16px}.inn-sec .rnav-btn{width:50px;height:50px;font-size:19px}.inn-sec .rnav-seg{width:22px}}
@media(prefers-reduced-motion:reduce){.inn-sec .rnav-btn,.inn-sec .rnav-seg{transition:none}.inn-sec .rnav-btn:hover{transform:none}}
.inn-sec .ts-logo{display:block;--inn-lh:30px;height:30px;width:auto;max-width:150px;object-fit:contain;object-position:left center;margin:0 0 22px}
.inn-sec .ts-logo.is-yewtwist{--inn-lh:26px;margin-top:2px;margin-bottom:24px}
.inn-sec .ts-logo.is-anasens{--inn-lh:30px;mix-blend-mode:multiply}
.inn-sec .ts-logo.is-blanda{--inn-lh:46px;mix-blend-mode:multiply;margin-top:-8px;margin-bottom:14px}
.inn-sec .ts-logo.is-verv{--inn-lh:28px;margin-top:1px;margin-bottom:23px}
.inn-sec .ts-logo.is-juno{--inn-lh:34px;margin-top:-2px;margin-bottom:20px}
.inn-sec .ts-q{flex:1 1 auto;min-height:0;font-size:18px;line-height:1.62;font-weight:500;font-style:italic;color:var(--beyond-blue);margin:0 0 20px;padding-right:18px;margin-right:-18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;border:0;background:none;quotes:none}
.inn-sec .ts-q::before,.inn-sec .ts-q::after{content:none}
.inn-sec .ts-q::-webkit-scrollbar{width:0}
.inn-sec .ts-q p{margin:0 0 .8em}
.inn-sec .ts-q p:last-child{margin:0}
.inn-sec .ts-q.is-over{padding-right:18px;margin-right:-18px;scrollbar-width:none;-webkit-mask-image:linear-gradient(#000 72%,rgba(0,0,0,.15) 96%,transparent 100%);mask-image:linear-gradient(#000 72%,rgba(0,0,0,.15) 96%,transparent 100%);transition:-webkit-mask-image .3s ease,mask-image .3s ease}
.inn-sec .ts-scrl{position:absolute;z-index:3;width:3px;border-radius:2px;background:var(--beyond-blue);opacity:0;transition:opacity .24s ease}
.inn-sec .ts-card.is-hero .ts-scrl.is-set{opacity:.55}
.inn-sec .ts-card.is-hero:hover .ts-scrl.is-set{opacity:.9}
.inn-sec .ts-scrl-knob{position:absolute;left:50%;top:0;width:19px;height:19px;margin-left:-9.5px;border-radius:50%;background:var(--breakthrough-yellow);box-shadow:0 2px 7px rgba(22,12,75,.28);cursor:grab;touch-action:none;transition:transform .18s ease}
.inn-sec .ts-card.is-hero:hover .ts-scrl-knob{transform:scale(1.1)}
.inn-sec .ts-scrl-knob:active{cursor:grabbing}
.inn-sec .ts-q.is-over.at-end{-webkit-mask-image:none;mask-image:none}
.inn-sec .ts-q.is-over:focus-visible{outline:2px solid var(--beyond-blue);outline-offset:4px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.inn-sec .ts-q.is-over{transition:none}}
.inn-sec .ts-attrib{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--beyond-20)}
.inn-sec .ts-face{width:38px;height:38px;flex:none;border-radius:50%;object-fit:cover}
.inn-sec .ts-who{margin:0;min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 9px;font-size:14px;line-height:1.4;color:var(--beyond-70)}
.inn-sec .ts-who b{min-width:0;font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--beyond-blue)}
.inn-sec .ts-card.is-hero .ts-who b{white-space:nowrap}
.inn-sec .ts-who b::after{content:"";display:inline-block;width:1px;height:11px;margin-left:9px;vertical-align:-1px;background:rgba(22,12,75,.24)}
.inn-sec .ts-cs{margin-top:20px;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;font-size:14.5px;font-weight:700;line-height:1.55;color:var(--beyond-blue);text-decoration:none;border-bottom:1px solid rgba(22,12,75,.25);padding-bottom:4px;transition:border-color .18s ease}
.inn-sec .ts-cs span{color:var(--breakthrough-yellow);transition:transform .2s ease}
.inn-sec .ts-cs:hover{color:var(--beyond-blue);border-bottom-color:var(--beyond-blue)}
.inn-sec .ts-cs:hover span{transform:translateX(4px)}
@media(prefers-reduced-motion:reduce){.inn-sec .ts-cs,.inn-sec .ts-cs span{transition:none}}
.inn-sec .ts-on-navy .ts-card{background:var(--bg-2)}
.inn-sec .ts-on-navy .ts-card:not(.is-hero){opacity:.5}
.inn-sec .ts-on-navy .ts-card:not(.is-hero):hover{opacity:.72;background:var(--bg-2)}

/* ---------------------------------------------------------------------------
   11. FAQ
   --------------------------------------------------------------------------- */
.inn-sec.inn-faq{background:var(--bg-2);--inn-bg:var(--beyond-10);scroll-margin-top:var(--space-9)}
.inn-sec .inn-faq-h{margin:0}
.inn-sec .inn-faq-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-7)}
.inn-sec .inn-faq-list details{--inn-faq-fs:var(--text-lg);background:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:border-color .2s ease;margin:0}
.inn-sec .inn-faq-list details[open]{border-color:var(--beyond-30)}
.inn-sec .inn-faq-list summary{list-style:none;cursor:pointer;padding:24px 28px;font-family:var(--font-display);font-weight:600;font-size:18px;color:var(--beyond-blue);display:flex;justify-content:space-between;align-items:center;gap:20px}
.inn-sec .inn-faq-list summary::-webkit-details-marker{display:none}
.inn-sec .inn-faq-list summary::marker{content:""}
.inn-sec .inn-faq-list summary:focus-visible{outline:2px solid var(--breakthrough-yellow);outline-offset:-2px}
.inn-sec .inn-faq-q{margin:0;font-size:var(--inn-faq-fs);font-weight:var(--weight-black);line-height:var(--leading-snug);color:var(--fg-1);letter-spacing:var(--tracking-tight)}
.inn-sec .faq-plus{color:var(--breakthrough-yellow);font-size:24px;line-height:1;flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.inn-sec .inn-faq-list details[open] .faq-plus{transform:rotate(45deg)}
.inn-sec .faq-a{padding:0 28px 26px;font-size:var(--text-md);line-height:1.6;color:var(--fg-2);font-weight:400;max-width:none}
.inn-sec .faq-a p{margin:0}
.inn-sec .faq-a p + p,.inn-sec .faq-a :is(ul,ol) + p,.inn-sec .faq-a p + :is(ul,ol){margin-top:.9em}
.inn-sec .faq-a :is(ul,ol){padding-left:1.2em}

/* ---------------------------------------------------------------------------
   12. CLOSING CTA + FORM
   --------------------------------------------------------------------------- */
.inn-sec.inn-cta{background:var(--beyond-blue);--inn-bg:var(--beyond-blue);scroll-margin-top:var(--space-9)}
.inn-sec .split{display:grid;grid-template-columns:1.05fr minmax(360px,.95fr);gap:var(--space-7);align-items:center}
.inn-sec .inn-cta-k{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-relaxed);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:rgba(255,255,255,0.7);margin-bottom:var(--space-4)}
.inn-sec .inn-cta-h{color:var(--white);max-width:22ch}
.inn-sec .inn-cta-body p{font-size:var(--text-md);line-height:var(--leading-relaxed);color:rgba(255,255,255,0.82);margin:0 0 var(--space-5);max-width:56ch}
.inn-sec .inn-cta-body p:last-child{margin:0}
.inn-sec .inn-cta-body :is(strong,b){font-weight:var(--weight-semibold);color:var(--white)}
.inn-sec .inn-cta-form{display:flex;flex-direction:column;gap:var(--space-3);margin:0}
.inn-sec .inn-cta-ftitle{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-relaxed);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--white);margin:0 0 var(--space-2)}
.inn-sec .fld-lt{width:100%;background:var(--white);border:1px solid rgba(255,255,255,0.25);border-radius:var(--radius-md);padding:var(--space-4);color:var(--beyond-blue);font-size:var(--text-sm);line-height:1.2;font-family:inherit;margin:0;box-shadow:none;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}
.inn-sec .fld-lt::placeholder{color:var(--beyond-40);opacity:1}
.inn-sec .fld-lt:focus{outline:none;border-color:var(--breakthrough-yellow);box-shadow:0 0 0 3px rgba(255,192,0,0.25)}
.inn-sec textarea.fld-lt{resize:vertical;line-height:1.5}
.inn-sec .inn-cta-form > .btn-y{align-self:flex-start;margin-top:var(--space-2)}
.inn-sec .inn-cta-note{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:rgba(255,255,255,0.82);margin:var(--space-2) 0 0}
.inn-sec .inn-cta-mail{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:rgba(255,255,255,0.6);margin:var(--space-2) 0 0}
.inn-sec .inn-cta-mail a{color:rgba(255,255,255,0.8);border-bottom:1px solid rgba(255,255,255,0.25)}
.inn-sec .inn-cta-mail a:hover{color:var(--white)}
.inn-sec .inn-cta-notice{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--breakthrough-yellow);margin:0}
/* Contact Form 7 inside the panel: the fields take .fld-lt, the submit .btn-y. */
.inn-sec .inn-cta-form .wpcf7{width:100%}
.inn-sec .inn-cta-form .wpcf7-form{display:flex;flex-direction:column;gap:var(--space-3);margin:0}
.inn-sec .inn-cta-form .wpcf7-form > p,.inn-sec .inn-cta-form .wpcf7-form > div:not(.wpcf7-response-output):not(.screen-reader-response){margin:0}
.inn-sec .inn-cta-form .wpcf7-form br{display:none}
.inn-sec .inn-cta-form .wpcf7-form label{display:block;margin:0;font-size:var(--text-sm);color:rgba(255,255,255,0.82)}
.inn-sec .inn-cta-form .wpcf7-form-control-wrap{display:block}
.inn-sec .inn-cta-form .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.inn-sec .inn-cta-form .wpcf7-form :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],textarea,select){width:100%;background:var(--white);border:1px solid rgba(255,255,255,0.25);border-radius:var(--radius-md);padding:var(--space-4);color:var(--beyond-blue);font-size:var(--text-sm);line-height:1.2;font-family:inherit;margin:0;box-shadow:none;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}
.inn-sec .inn-cta-form .wpcf7-form textarea{resize:vertical;line-height:1.5}
.inn-sec .inn-cta-form .wpcf7-form :is(input,textarea)::placeholder{color:var(--beyond-40);opacity:1}
.inn-sec .inn-cta-form .wpcf7-form :is(input,textarea,select):focus{outline:none;border-color:var(--breakthrough-yellow);box-shadow:0 0 0 3px rgba(255,192,0,0.25)}
.inn-sec .inn-cta-form .wpcf7-form :is(.wpcf7-submit,button[type="submit"]){display:inline-flex;align-items:center;gap:var(--space-2);align-self:flex-start;margin-top:var(--space-2);background:var(--breakthrough-yellow);color:var(--beyond-blue);border:none;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-base);line-height:var(--leading-relaxed);padding:var(--space-4) var(--space-6);text-align:left;width:auto;height:auto;text-transform:none;letter-spacing:normal}
.inn-sec .inn-cta-form .wpcf7-form button[type="submit"]::after{content:"\2192";font-weight:var(--weight-bold);transition:transform var(--dur-fast) var(--ease-out)}
.inn-sec .inn-cta-form .wpcf7-form :is(.wpcf7-submit,button[type="submit"]):hover{background:var(--breakthrough-yellow);color:var(--beyond-blue);filter:brightness(.95)}
.inn-sec .inn-cta-form .wpcf7-form button[type="submit"]:hover::after{transform:translateX(4px)}
.inn-sec .inn-cta-form .wpcf7-spinner{margin:0 0 0 var(--space-3)}
.inn-sec .inn-cta-form .wpcf7-response-output{margin:var(--space-2) 0 0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--white)}
.inn-sec .inn-cta-form .wpcf7-not-valid-tip{margin-top:6px;font-size:var(--text-sm);color:var(--breakthrough-yellow)}
@media (max-width:880px){.inn-sec .split{grid-template-columns:1fr;gap:36px}}

/* ============================================================================
   RESPONSIVE — 1599px and below.
   At 1600px and up nothing in this block applies, so the page holds the
   source's own layout. Below it, gutters, a few type sizes and paddings ease
   down so the layout stays comfortable on laptops, tablets and phones.
   Section top/bottom spacing is NOT set here — see Section spacing defaults
   near the top of this file.
   ============================================================================ */
@media (max-width:1199px){
  .inn-sec{--gutter-desktop:40px}
  .inn-sec .psd-flow{--psd-bleed:var(--space-5)}
  .inn-sec .psd-band{column-gap:var(--space-5)}
  .inn-sec .psd-band-q span{white-space:normal}
  .inn-sec .bcard{padding:30px 26px}
  .inn-sec .psd-cs-quote{padding:var(--space-5) var(--space-6)}
  .inn-sec .inn-sprint-when{margin-top:var(--space-8)}
  .inn-sec .inn-sprint-note{margin-bottom:var(--space-7)}
}
@media (max-width:1024px){
  .inn-sec{--gutter-desktop:32px}
  .inn-sec .pbar-marks{flex-wrap:wrap;justify-content:center;gap:22px 32px}
  .inn-sec .pbar-stats{gap:14px}
  .inn-sec .inn-out-grid{gap:var(--space-5);margin-top:var(--space-7)}
  .inn-sec .psd-cs{gap:var(--space-6)}
  .inn-sec .split{gap:var(--space-6)}
  .inn-sec .inn-open-hl{margin-top:var(--space-6)}
  .inn-sec .inn-open-lead{margin-bottom:var(--space-6)}
}
@media (max-width:860px){
  .inn-sec .page-wrap{padding-left:var(--gutter-mobile);padding-right:var(--gutter-mobile)}
  .inn-sec .inn-flow-wrap{margin-top:var(--space-6)}
}
@media (max-width:767px){
  .inn-sec .hero-grid{gap:var(--space-6)}
  .inn-sec .inn-sprint-when{margin-top:var(--space-7)}
  .inn-sec .inn-sprint-note{margin-bottom:var(--space-6)}
  .inn-sec .psd-mont{gap:var(--space-2);margin-top:var(--space-6)}
  .inn-sec .bcard{padding:26px 22px}
  .inn-sec .inn-out-grid{gap:var(--space-4);margin-top:var(--space-6)}
  .inn-sec .inn-case-h{margin-bottom:var(--space-6)}
  .inn-sec .psd-cs-quote{margin-top:var(--space-6);padding:var(--space-5) 20px}
  .inn-sec .psd-cs-quote .ts-attrib{justify-content:flex-start}
  .inn-sec .ts-stage{margin-top:var(--space-6)}
  .inn-sec .ts-card.is-hero{padding:28px 24px 22px}
  .inn-sec .ts-card{padding:24px 20px 20px}
  .inn-sec .inn-faq-list{margin-top:var(--space-6)}
  .inn-sec .inn-faq-list summary{padding:20px 20px;gap:16px}
  .inn-sec .faq-a{padding:0 20px 22px}
}
@media (max-width:600px){
  .inn-sec .psd-acc summary{gap:var(--space-3)}
  .inn-sec .inn-acc-body{padding:0 0 var(--space-5) calc(var(--space-6) + var(--space-3))}
  .inn-sec .inn-open-close{padding-top:var(--space-5)}
  .inn-sec .inn-open-hl{margin-top:var(--space-5);padding-right:0}
}
@media (max-width:480px){
  .inn-sec .inn-hero-btns{flex-direction:column;align-items:stretch}
  .inn-sec .inn-hero-btns a{justify-content:center;text-align:center}
  .inn-sec .cta-strip .btn-y,.inn-sec .inn-cta-form > .btn-y{align-self:stretch;justify-content:center;text-align:center}
  .inn-sec .cta-strip .btn-y{padding-left:var(--space-4);padding-right:var(--space-4)}
  .inn-sec .inn-notch > span{width:44px;height:23px;left:-4px}
}

/* ============================================================================
   CONTENT MAX-WIDTHS — desktop (1200px and up) only.
   Every content-wrapper and text max-width above (page wraps, bands, p, lists,
   headings, accordions) is released at 1199px and below so the content runs
   the full available width on laptops-below-desktop, tablets and phones.
   ============================================================================ */
@media (max-width:1199px){
  .inn-sec .page-wrap,
  .inn-sec .cert-band-inner,
  .inn-sec .cta-strip-inner,
  .inn-sec .inn-hero-lead p,
  .inn-sec .inn-hero-body p,
  .inn-sec .inn-open-kicker,
  .inn-sec .inn-open-body p,
  .inn-sec .inn-sprint-intro,
  .inn-sec .inn-acc-list,
  .inn-sec .psd-band-d,
  .inn-sec .cta-strip-h,
  .inn-sec .cta-strip-p,
  .inn-sec .inn-cs-d,
  .inn-sec .rnav-track,
  .inn-sec .faq-a,
  .inn-sec .inn-cta-h,
  .inn-sec .inn-cta-body p{max-width:none}
}

/* ============================================================================
   ACCORDION FIRST-LINE ALIGNMENT — 1199px and below.
   The icon and the toggle beside an accordion title centre on the title's
   FIRST line rather than on the whole (possibly multi-line) block. Each
   offset is (first-line height - control height) / 2, where the first-line
   height is the title's font-size times its 1.2 line-height. A change to a
   title's font-size or line-height must update --inn-acc-fs / --inn-faq-fs.
   Above 1199px the source's centred layout is unchanged.
   ============================================================================ */
@media (max-width:1199px){
  .inn-sec .psd-acc summary{align-items:flex-start}
  .inn-sec .psd-acc .inn-acc-ico{margin-top:calc((var(--inn-acc-fs) * 1.2 - var(--space-6)) / 2)}
  .inn-sec .psd-acc .psd-acc-plus{margin-top:calc((var(--inn-acc-fs) * 1.2 - (var(--space-6) + var(--space-2))) / 2)}
  .inn-sec .inn-faq-list summary{align-items:flex-start}
  .inn-sec .inn-faq-list .faq-plus{margin-top:calc((var(--inn-faq-fs) * 1.2 - 24px) / 2)}
}
/* Sprint situations toggle — 36px circle with 14px cross bars at 767px and
   below; its first-line offset uses the 36px control height. */
@media (max-width:767px){
  .inn-sec .psd-acc .psd-acc-plus{width:36px;height:36px;margin-top:calc((var(--inn-acc-fs) * 1.2 - 36px) / 2)}
  .inn-sec .psd-acc-plus::before,.inn-sec .psd-acc-plus::after{width:14px;margin-left:-7px}
}

/* ============================================================================
   THEME-PROOF RESTATEMENTS — final.html values, !important.
   Theme / kit rules on bare `a`, `figure` and flex children were wrapping the
   mid-page CTA label, underlining the interlinks and collapsing the gap above
   the case-study quote card. Each value below is the source's own.
   ============================================================================ */
/* Mid-page CTA: the button label never breaks; the copy column shrinks instead. */
[class*="elementor-widget-inertia_inn_"] .inn-sec .cta-strip-inner > div{flex:1 1 auto;min-width:0}
[class*="elementor-widget-inertia_inn_"] .inn-sec.cta-strip .btn-y{flex:0 0 auto !important;width:auto !important;max-width:none !important;min-width:max-content !important;white-space:nowrap !important;word-break:normal !important;overflow-wrap:normal !important;hyphens:none !important}

/* Interlinks (.seclink) — source: no underline, 2px beyond-20 rule below. */
[class*="elementor-widget-inertia_inn_"] .inn-sec a.seclink,
[class*="elementor-widget-inertia_inn_"] .inn-sec a.seclink:visited{display:inline-flex !important;align-items:center;gap:9px;font-family:var(--font-display) !important;font-weight:600 !important;font-size:16px !important;line-height:var(--leading-relaxed) !important;color:var(--beyond-blue) !important;text-decoration:none !important;border:0 !important;border-bottom:2px solid var(--beyond-20) !important;padding:0 0 3px !important}
[class*="elementor-widget-inertia_inn_"] .inn-sec a.seclink:hover,
[class*="elementor-widget-inertia_inn_"] .inn-sec a.seclink:focus-visible{color:var(--beyond-blue) !important;text-decoration:none !important;border-bottom-color:var(--breakthrough-yellow) !important}
[class*="elementor-widget-inertia_inn_"] .inn-sec a.ts-cs,
[class*="elementor-widget-inertia_inn_"] .inn-sec a.ts-cs:hover{text-decoration:none !important}

/* Case study: 48px between the photo/summary grid and the quote card (32px <=767px),
   32px above the "View more programs" interlink. */
[class*="elementor-widget-inertia_inn_"] .inn-sec .psd-cs-quote{margin:var(--space-7) 0 0 !important}
[class*="elementor-widget-inertia_inn_"] .inn-sec .inn-cs-more{margin:var(--space-6) 0 0 !important}
@media (max-width:767px){
  [class*="elementor-widget-inertia_inn_"] .inn-sec .psd-cs-quote{margin-top:var(--space-6) !important}
}

/* Case study: source spacing between the eyebrow and the project name —
   12px under the eyebrow, no top margin or padding on the name, locked so
   theme/kit paragraph and heading margins cannot widen the gap. */
[class*="elementor-widget-inertia_inn_"] .inn-sec .inn-cs-copy .inn-cs-eyebrow{margin:0 0 var(--space-3) !important;padding:0 !important}
[class*="elementor-widget-inertia_inn_"] .inn-sec .inn-cs-copy .inn-cs-t{margin-top:0 !important;padding-top:0 !important}

/* Sprint Coverage bands: at 767px and below the band image shows in full at
   its natural aspect ratio (no 16:9 frame, no cover cropping). */
@media (max-width:767px){
  [class*="elementor-widget-inertia_inn_"] .inn-sec .psd-band-media{aspect-ratio:auto !important;min-height:0 !important;height:auto !important}
  [class*="elementor-widget-inertia_inn_"] .inn-sec .psd-band-media img{position:static !important;inset:auto;width:100% !important;height:auto !important;max-width:100%;object-fit:contain !important}
}

/* ============================================================================
   TYPE SCALE — fixed pixel sizes per breakpoint (no fluid clamp()).
     1800px and up    final.html's own sizes, exactly (the base rules above
                      hold them; nothing in this block applies).
     1600 – 1799px    desktop
     1200 – 1599px    laptop
      768 – 1199px    tablet / iPad
      767px and down  mobile
   Each tier restates the sizes it changes at the same selector weight as the
   base rule, so this block (later in the file) wins. --inn-acc-fs and
   --inn-faq-fs also drive the accordion first-line alignment above.
   Small UI labels (eyebrows, kickers, stat labels, logo wordmarks, icons,
   form fields, interlinks) keep the source size at every width.
   ============================================================================ */
@media (max-width:1799px){
  .inn-sec .display-h1{font-size:56px}
  .inn-sec .sec-head-h2{font-size:46px}
  .inn-sec .sec-head-h2.is-statement{font-size:32px}
  .inn-sec .inn-hero-h{font-size:46px}
  .inn-sec .inn-open-h{font-size:46px}
  .inn-sec .inn-open-lead{font-size:26px}
  .inn-sec .inn-open-kicker{font-size:24px}
  .inn-sec .inn-open-close{font-size:26px}
  .inn-sec .psd-sprint-name{font-size:52px}
  .inn-sec .inn-sprint-lead{font-size:30px}
  .inn-sec .inn-sprint-h3{font-size:34px}
  .inn-sec .inn-sprint-intro{font-size:22px}
  .inn-sec .inn-lead-b{font-size:26px}
  .inn-sec .psd-band-cat{font-size:36px}
  .inn-sec .psd-band-q{font-size:24px}
  .inn-sec .inn-out-t{font-size:26px}
  .inn-sec .inn-cs-t{font-size:34px}
}
@media (max-width:1599px){
  .inn-sec{font-size:18px}
  .inn-sec .display-h1{font-size:50px}
  .inn-sec .sec-head-h2{font-size:42px}
  .inn-sec .sec-head-h2.is-statement{font-size:30px}
  .inn-sec .inn-hero-h{font-size:42px}
  .inn-sec .inn-hero-lead p{font-size:20px}
  .inn-sec .inn-open-h{font-size:42px}
  .inn-sec .inn-open-lead{font-size:24px}
  .inn-sec .inn-open-kicker{font-size:22px}
  .inn-sec .inn-open-close{font-size:24px}
  .inn-sec .psd-sprint-name{font-size:48px}
  .inn-sec .inn-sprint-lead{font-size:28px}
  .inn-sec .inn-sprint-h3{font-size:30px}
  .inn-sec .inn-sprint-intro{font-size:21px}
  .inn-sec .psd-acc{--inn-acc-fs:20px}
  .inn-sec .inn-lead-b{font-size:24px}
  .inn-sec .psd-band-cat{font-size:32px}
  .inn-sec .psd-band-q{font-size:22px}
  .inn-sec .b-title{font-size:20px}
  .inn-sec .inn-out-t{font-size:24px}
  .inn-sec .cta-strip-h{font-size:26px}
  .inn-sec .pbar-n{font-size:34px}
  .inn-sec .inn-cs-t{font-size:30px}
  .inn-sec .inn-faq-list details{--inn-faq-fs:20px}
}
@media (max-width:1199px){
  .inn-sec{font-size:17px}
  .inn-sec .display-h1{font-size:42px}
  .inn-sec .sec-head-h2{font-size:36px}
  .inn-sec .sec-head-h2.is-statement{font-size:26px}
  .inn-sec .inn-hero-h{font-size:36px}
  .inn-sec .inn-hero-lead p{font-size:20px}
  .inn-sec .inn-hero-body p,
  .inn-sec .inn-open-body p,
  .inn-sec .inn-sprint-note,
  .inn-sec .inn-body-md p,
  .inn-sec .psd-band-d,
  .inn-sec .inn-cs-d,
  .inn-sec .psd-cs-q,
  .inn-sec .faq-a,
  .inn-sec .cta-strip-p,
  .inn-sec .inn-cta-body p,
  .inn-sec .ts-q{font-size:17px}
  .inn-sec .inn-open-h{font-size:36px}
  .inn-sec .inn-open-lead{font-size:22px}
  .inn-sec .inn-open-kicker{font-size:20px}
  .inn-sec .inn-open-close{font-size:22px}
  .inn-sec .psd-sprint-name{font-size:40px}
  .inn-sec .inn-sprint-lead{font-size:24px}
  .inn-sec .inn-sprint-h3{font-size:26px}
  .inn-sec .inn-sprint-intro{font-size:19px}
  .inn-sec .psd-acc{--inn-acc-fs:19px}
  .inn-sec .inn-lead-b{font-size:22px}
  .inn-sec .psd-band-cat{font-size:28px}
  .inn-sec .psd-band-q{font-size:22px}
  .inn-sec .b-title{font-size:20px}
  .inn-sec .inn-out-t{font-size:22px}
  .inn-sec .cta-strip-h{font-size:24px}
  .inn-sec .pbar-n{font-size:32px}
  .inn-sec .inn-cs-t{font-size:28px}
  .inn-sec .inn-faq-list details{--inn-faq-fs:20px}
}
@media (max-width:767px){
  .inn-sec{font-size:16px}
  .inn-sec .display-h1{font-size:29px}
  .inn-sec .sec-head-h2{font-size:27px}
  .inn-sec .sec-head-h2.is-statement{font-size:22px}
  .inn-sec .inn-hero-h{font-size:27px}
  .inn-sec .inn-hero-lead p{font-size:18px}
  .inn-sec .inn-hero-body p,
  .inn-sec .inn-open-body p,
  .inn-sec .inn-sprint-note,
  .inn-sec .inn-body-md p,
  .inn-sec .psd-band-d,
  .inn-sec .inn-cs-d,
  .inn-sec .psd-cs-q,
  .inn-sec .faq-a,
  .inn-sec .cta-strip-p,
  .inn-sec .inn-cta-body p,
  .inn-sec .ts-q{font-size:16px}
  .inn-sec .inn-acc-body,
  .inn-sec .inn-cs-v,
  .inn-sec .inn-out-lead{font-size:15px}
  .inn-sec .inn-open-h{font-size:27px}
  .inn-sec .inn-open-lead{font-size:20px}
  .inn-sec .inn-open-kicker{font-size:19px}
  .inn-sec .inn-open-close{font-size:20px}
  .inn-sec .psd-sprint-name{font-size:29px}
  .inn-sec .inn-sprint-lead{font-size:20px}
  .inn-sec .inn-sprint-h3{font-size:22px}
  .inn-sec .inn-sprint-intro{font-size:17px}
  .inn-sec .psd-acc{--inn-acc-fs:18px}
  .inn-sec .inn-lead-b{font-size:20px}
  .inn-sec .psd-band-cat{font-size:26px}
  .inn-sec .psd-band-q{font-size:20px}
  .inn-sec .b-title{font-size:19px}
  .inn-sec .inn-out-t{font-size:18px}
  .inn-sec .cta-strip-h{font-size:22px}
  .inn-sec .pbar-n{font-size:28px}
  .inn-sec .pbar-g .pbar-n{font-size:22px}
  .inn-sec .inn-cs-t{font-size:24px}
  .inn-sec .inn-faq-list details{--inn-faq-fs:19px}
}
/* The mid-page strip button never wraps, so on narrow phones its label steps down to fit. */
@media (max-width:480px){
  .inn-sec.cta-strip .btn-y{font-size:14px}
}
@media (max-width:374px){
  .inn-sec.cta-strip .btn-y{font-size:13px}
}
/* Hero CTAs (primary yellow + secondary outline) stay on one line on mobile:
   label never wraps, side padding tightens and the font scales with the viewport. */
@media (max-width:767px){
  [class*="elementor-widget-inertia_inn_"] .inn-sec .inn-hero-btns a.btn-y,
  [class*="elementor-widget-inertia_inn_"] .inn-sec .inn-hero-btns a.psd-btn-o{white-space:nowrap !important;word-break:normal !important;overflow-wrap:normal !important;hyphens:none !important;max-width:100%;padding-left:var(--space-4) !important;padding-right:var(--space-4) !important;font-size:clamp(12px,3.5vw,16px) !important}
}

/* Section-bottom notch arrow — smaller at 1199px and below (desktop keeps the
   source 56×29). Placed after the 480px rule so it wins at every width below. */
@media (max-width:1199px){
  .inn-sec .inn-notch > span{width:36px;height:19px;left:-4px}
}
@media (max-width:767px){
  .inn-sec .inn-notch > span{width:28px;height:15px;left:-3px}
}

/* Eyebrow line (.tick) — 12px to the text below it at 1199px and below
   (desktop keeps the source 24px). */
@media (max-width:1199px){
  .inn-sec .tick{margin-bottom:12px}
}

/* ===========================================================================
   Responsive clear utilities — plugin-wide, restated identically at the end
   of every set's stylesheet so each page gets them whichever set it loads.
   Add the class to any element (a span inside a heading included) to break
   it onto its own line at one breakpoint only:
     .desktop-clear       1200px and up
     .ipad-lg-clear       992px – 1199px
     .ipad-clear          768px – 991px
     .mobLandscape-clear  575px – 767px
   Outside its range the class does nothing. The heading-span selector beats
   any "spans inside headings stay inline" rule; !important because
   that rule and theme/Elementor rules are !important or of unknown weight.
   Keep this block last in the file.
   =========================================================================== */
@media (min-width:1200px){
  .desktop-clear,
  [class*="elementor-widget-inertia_"] :is(h1,h2,h3,h4,h5,h6,.widget-heading,[class*="heading"],[class*="-title"],[class*="-h1"]) span.desktop-clear{
    clear:both !important; display:block !important;
  }
}
@media (min-width:992px) and (max-width:1199px){
  .ipad-lg-clear,
  [class*="elementor-widget-inertia_"] :is(h1,h2,h3,h4,h5,h6,.widget-heading,[class*="heading"],[class*="-title"],[class*="-h1"]) span.ipad-lg-clear{
    clear:both !important; display:block !important;
  }
}
@media (min-width:768px) and (max-width:991px){
  .ipad-clear,
  [class*="elementor-widget-inertia_"] :is(h1,h2,h3,h4,h5,h6,.widget-heading,[class*="heading"],[class*="-title"],[class*="-h1"]) span.ipad-clear{
    clear:both !important; display:block !important;
  }
}
@media (min-width:575px) and (max-width:767px){
  .mobLandscape-clear,
  [class*="elementor-widget-inertia_"] :is(h1,h2,h3,h4,h5,h6,.widget-heading,[class*="heading"],[class*="-title"],[class*="-h1"]) span.mobLandscape-clear{
    clear:both !important; display:block !important;
  }
}
