@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,300;0,6..72,400;0,6..72,500;1,6..72,300;1,6..72,400&family=Barlow:ital,wght@0,400;0,500;0,600;1,400&family=Barlow+Condensed:wght@400;500;600&display=swap";:root{--stone-50: #fbfaf7;--stone-100: #f4f2ec;--stone-200: #ece9e1;--stone-300: #ddd8cd;--stone-400: #c6c0b3;--ink-900: #16181c;--ink-800: #24272d;--ink-700: #3a3e46;--ink-600: #555a63;--ink-500: #6f757e;--ink-400: #949aa3;--ink-300: #b8bdc4;--cobalt-100: #e7e9fb;--cobalt-200: #ced3f7;--cobalt-300: #a4aff0;--cobalt-400: #6b7ae4;--cobalt-500: #2b3bd9;--cobalt-600: #2431b4;--cobalt-700: #1d2790;--cobalt-800: #171e6d;--cobalt-900: #11164c;--surface-page: var(--stone-100);--surface-raised: var(--stone-50);--surface-inverse: var(--ink-900);--surface-accent: var(--cobalt-500);--surface-tint: var(--cobalt-100);--text-body: var(--ink-900);--text-secondary:var(--ink-700);--text-muted: var(--ink-500);--text-accent: var(--cobalt-700);--text-inverse: var(--stone-50);--text-on-accent:#ffffff;--border-hairline: var(--stone-300);--border-strong: var(--ink-900);--border-accent: var(--cobalt-500);--border-inverse: var(--ink-700);--focus-ring: var(--cobalt-500);--selection-bg: var(--cobalt-100)}:root{--font-display: "Newsreader", "Iowan Old Style", Georgia, serif;--font-body: "Barlow", "Helvetica Neue", Arial, sans-serif;--font-label: "Barlow Condensed", "Barlow", Arial, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Menlo, monospace;--text-display-1: clamp(2.75rem, 5.4vw, 4.75rem);--text-display-2: clamp(2.25rem, 4vw, 3.375rem);--text-display-3: clamp(1.75rem, 2.6vw, 2.25rem);--text-display-4: 1.5rem;--text-lead: clamp(1.125rem, 1.4vw, 1.3125rem);--text-body: 1.0625rem;--text-small: .9375rem;--text-fine: .8125rem;--text-label: .8125rem;--text-label-lg: 1rem;--weight-display: 300;--weight-display-emph: 400;--weight-body: 400;--weight-body-emph: 500;--weight-label: 500;--leading-display: 1.06;--leading-heading: 1.18;--leading-body: 1.62;--leading-tight: 1.35;--tracking-display: -.02em;--tracking-body: 0em;--tracking-label: .16em;--tracking-label-wide: .24em;--measure-prose: 62ch;--measure-narrow: 46ch}:root{--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;--space-11: 176px;--section-y: clamp(64px, 9vw, 128px);--gutter: clamp(20px, 5vw, 64px);--page-max: 1200px;--grid-gap: 1px;--radius-none: 0;--radius-sm: 0;--radius-pill: 999px;--hairline: 1px;--rule-strong: 2px;--mark-size: 9px}:root{--shadow-none: none;--shadow-sm: 0 1px 0 rgba(22, 24, 28, .06);--shadow-md: 0 2px 18px -10px rgba(22, 24, 28, .22);--shadow-lg: 0 24px 60px -32px rgba(22, 24, 28, .34)}:root{--dur-fast: .14s;--dur-base: .28s;--dur-slow: .68s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--reveal-distance: 14px}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 1ms;--dur-base: 1ms;--dur-slow: 1ms;--reveal-distance: 0px}}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-wrap:pretty}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-heading);letter-spacing:var(--tracking-display);margin:0;text-wrap:balance}h1{font-size:var(--text-display-1);line-height:var(--leading-display)}h2{font-size:var(--text-display-2)}h3{font-size:var(--text-display-3)}h4{font-size:var(--text-display-4);font-weight:var(--weight-display-emph)}p{margin:0 0 var(--space-5);max-width:var(--measure-prose)}p:last-child{margin-bottom:0}a{color:var(--text-accent);text-decoration:none;border-bottom:1px solid var(--cobalt-300);transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}a:hover{color:var(--cobalt-500);border-color:var(--cobalt-500)}a:active{color:var(--cobalt-800)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}::selection{background:var(--selection-bg);color:var(--ink-900)}strong,b{font-weight:var(--weight-body-emph)}small{font-size:var(--text-fine)}img{max-width:100%;display:block}hr{border:0;border-top:var(--hairline) solid var(--border-hairline);margin:var(--space-7) 0}.ip-frame{position:relative}.ip-corner{position:absolute;width:var(--mark-size);height:var(--mark-size);pointer-events:none;opacity:.85}.ip-corner:before,.ip-corner:after{content:"";position:absolute;background:var(--border-accent)}.ip-corner:before{left:50%;top:0;width:1px;height:100%;transform:translate(-.5px)}.ip-corner:after{top:50%;left:0;height:1px;width:100%;transform:translateY(-.5px)}.ip-corner.tl{left:calc(var(--mark-size) / -2);top:calc(var(--mark-size) / -2)}.ip-corner.tr{right:calc(var(--mark-size) / -2);top:calc(var(--mark-size) / -2)}.ip-corner.bl{left:calc(var(--mark-size) / -2);bottom:calc(var(--mark-size) / -2)}.ip-corner.br{right:calc(var(--mark-size) / -2);bottom:calc(var(--mark-size) / -2)}.ip-corner.on-ink:before,.ip-corner.on-ink:after{background:var(--cobalt-400)}.ip-eyebrow{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-label);font-size:var(--text-label);font-weight:var(--weight-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-accent)}.ip-eyebrow.on-ink{color:var(--cobalt-300)}.ip-eyebrow.muted{color:var(--text-muted)}.ip-eyebrow-rule{display:block;width:40px;height:1px;background:currentColor;opacity:.55}.ip-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);border-radius:var(--radius-none);cursor:pointer;font-family:var(--font-label);font-size:var(--text-label-lg);font-weight:var(--weight-label);letter-spacing:var(--tracking-label);text-transform:uppercase;text-decoration:none;border:var(--hairline) solid transparent;padding:0 var(--space-6);height:48px;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.ip-btn-sm{height:36px;padding:0 var(--space-4);font-size:var(--text-label)}.ip-btn-lg{height:58px;padding:0 var(--space-7)}.ip-btn-block{width:100%}.ip-btn-primary{background:var(--surface-accent);color:var(--text-on-accent);border-color:var(--surface-accent)}.ip-btn-primary:hover{background:var(--cobalt-600);border-color:var(--cobalt-600)}.ip-btn-primary:active{background:var(--cobalt-700);border-color:var(--cobalt-700);transform:translateY(1px)}.ip-btn-secondary{background:transparent;color:var(--ink-900);border-color:var(--ink-900)}.ip-btn-secondary:hover{background:var(--cobalt-100);border-color:var(--cobalt-500);color:var(--cobalt-700)}.ip-btn-secondary:active{background:var(--cobalt-200)}.ip-btn-ghost{background:transparent;color:var(--text-accent);border-color:transparent;padding:0 var(--space-2)}.ip-btn-ghost:hover{color:var(--cobalt-500);background:var(--cobalt-100)}.ip-btn-ghost:active{color:var(--cobalt-800)}.ip-btn-on-ink.ip-btn-primary{background:var(--stone-50);color:var(--ink-900);border-color:var(--stone-50)}.ip-btn-on-ink.ip-btn-primary:hover{background:var(--cobalt-200);border-color:var(--cobalt-200)}.ip-btn-on-ink.ip-btn-secondary{color:var(--stone-50);border-color:var(--ink-600)}.ip-btn-on-ink.ip-btn-secondary:hover{background:var(--cobalt-900);border-color:var(--cobalt-400);color:var(--stone-50)}.ip-btn:disabled,.ip-btn[aria-disabled=true]{opacity:.45;pointer-events:none}.ip-btn-icon{width:44px;height:44px;padding:0;border-color:var(--border-hairline);color:var(--ink-900);background:transparent}.ip-btn-icon:hover{border-color:var(--cobalt-500);color:var(--cobalt-700);background:var(--cobalt-100)}.ip-textlink{font-family:var(--font-label);text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:var(--text-label);color:var(--text-accent);border-bottom:1px solid var(--cobalt-300);display:inline-flex;gap:var(--space-2);align-items:center;padding-bottom:2px}.ip-tag{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-label);font-size:var(--text-label);font-weight:var(--weight-label);letter-spacing:var(--tracking-label);text-transform:uppercase;padding:3px var(--space-3);border:var(--hairline) solid transparent;border-radius:var(--radius-none)}.ip-tag-accent{background:var(--cobalt-100);color:var(--cobalt-700)}.ip-tag-neutral{background:var(--stone-200);color:var(--ink-700)}.ip-tag-outline{border-color:var(--border-hairline);color:var(--ink-700)}.ip-tag-solid{background:var(--cobalt-500);color:var(--text-on-accent)}.ip-card{position:relative;background:transparent;border:var(--hairline) solid var(--border-hairline);border-radius:var(--radius-none);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.ip-card-interactive:hover{border-color:var(--cobalt-400);background:var(--stone-50)}.ip-card-index{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-accent);font-variant-numeric:tabular-nums}.ip-card-title{font-family:var(--font-display);font-size:var(--text-display-4);font-weight:var(--weight-display-emph);line-height:var(--leading-tight);letter-spacing:-.01em}.ip-card-body{color:var(--text-secondary);font-size:var(--text-body);margin:0}.ip-card-meta{font-size:var(--text-fine);color:var(--text-muted)}.ip-callout{position:relative;border-left:var(--rule-strong) solid var(--border-accent);padding:var(--space-5) var(--space-6);background:var(--stone-50);font-family:var(--font-display);font-size:var(--text-display-4);font-weight:var(--weight-display-emph);line-height:var(--leading-tight);max-width:var(--measure-prose)}.ip-callout-accent{background:var(--cobalt-100);border-left-color:var(--cobalt-500);color:var(--cobalt-900)}.ip-callout-inverse{background:var(--ink-900);border-left-color:var(--cobalt-400);color:var(--text-inverse)}.ip-callout-label{display:block;font-family:var(--font-label);font-size:var(--text-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-accent);margin-bottom:var(--space-3)}.ip-step{display:grid;grid-template-columns:64px 1fr;gap:var(--space-5);padding:var(--space-6) 0;border-top:var(--hairline) solid var(--border-hairline)}.ip-step-num{font-family:var(--font-display);font-size:2.25rem;font-weight:var(--weight-display);color:var(--cobalt-400);font-variant-numeric:tabular-nums;line-height:1}.ip-step-title{font-family:var(--font-display);font-size:var(--text-display-4);font-weight:var(--weight-display-emph);margin-bottom:var(--space-2)}.ip-step-body{color:var(--text-secondary);margin:0}.ip-field{display:flex;flex-direction:column;gap:var(--space-2);max-width:420px}.ip-field label{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}.ip-input{font-family:var(--font-body);font-size:var(--text-body);color:var(--text-body);background:var(--surface-raised);border:var(--hairline) solid var(--border-hairline);border-radius:var(--radius-none);padding:0 var(--space-4);height:48px;transition:border-color var(--dur-fast) var(--ease-out)}.ip-input::placeholder{color:var(--ink-400)}.ip-input:hover{border-color:var(--ink-400)}.ip-input:focus{border-color:var(--cobalt-500);outline:none;box-shadow:inset 0 -2px 0 var(--cobalt-500)}.ip-input:disabled{opacity:.45}.ip-field-hint{font-size:var(--text-fine);color:var(--text-muted)}.ip-field-error .ip-input{border-color:var(--cobalt-700)}.ip-rule{position:relative;border:0;border-top:var(--hairline) solid var(--border-hairline);margin:var(--space-7) 0}.ip-rule-strong{border-top-color:var(--ink-900)}.ip-rule-marked:after{content:"+";position:absolute;left:0;top:50%;transform:translate(-25%,-52%);color:var(--cobalt-500);font-family:var(--font-body);font-size:14px;line-height:1;background:var(--surface-page);padding:0 4px}.ip-wordmark{font-family:var(--font-label);font-weight:var(--weight-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--ink-900);display:inline-flex;align-items:baseline;gap:.05em;border:0;line-height:1}.ip-wordmark .ip-wordmark-bar{display:inline-block;width:.46em;height:2px;background:var(--cobalt-500);margin:0 .2em;vertical-align:.34em}.ip-wordmark.on-ink{color:var(--stone-50)}.ip-nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-5) var(--gutter);background:color-mix(in srgb,var(--surface-page) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:var(--hairline) solid transparent;transition:padding var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.ip-nav-compact{padding-top:var(--space-3);padding-bottom:var(--space-3);border-bottom-color:var(--border-hairline)}.ip-nav-links{display:flex;align-items:center;gap:var(--space-6);list-style:none;margin:0;padding:0}.ip-nav-link{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-700);border-bottom:1px solid transparent;padding-bottom:2px}.ip-nav-link:hover,.ip-nav-link[aria-current=true]{color:var(--cobalt-700);border-bottom-color:var(--cobalt-500)}.ip-footer{border-top:var(--hairline) solid var(--border-hairline);padding:var(--space-8) var(--gutter) var(--space-6);display:flex;flex-wrap:wrap;gap:var(--space-6);justify-content:space-between;align-items:flex-end}.ip-footer-line{font-family:var(--font-display);font-size:var(--text-display-4);font-weight:var(--weight-display);color:var(--text-secondary);max-width:var(--measure-narrow)}.ip-footer-fine{font-size:var(--text-fine);color:var(--text-muted);font-variant-numeric:tabular-nums}.ip-flow{display:flex;flex-direction:column;gap:var(--space-6)}.ip-flow-row{display:flex;align-items:stretch;flex-wrap:wrap;gap:var(--space-3)}.ip-flow-node{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-4) var(--space-4);border:var(--hairline) solid var(--border-hairline);font-family:var(--font-label);font-size:var(--text-label-lg);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-700);background:transparent}.ip-flow-node-accent{border-color:var(--cobalt-500);color:var(--cobalt-700);background:var(--cobalt-100)}.ip-flow-node-muted{color:var(--ink-500);border-style:dashed}.ip-flow-arrow{display:flex;align-items:center;color:var(--cobalt-500);font-size:14px;padding:0 var(--space-1)}.ip-flow-caption{font-size:var(--text-small);color:var(--text-muted);max-width:var(--measure-prose)}.ip-flow-legend{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-muted)}.ip-shell{max-width:var(--page-max);margin:0 auto;padding:0 var(--gutter)}.ip-section{padding:var(--section-y) 0}.ip-grid-cells{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.ip-lead{font-size:var(--text-lead);color:var(--text-secondary);max-width:var(--measure-prose)}.ip-reveal{opacity:0;transform:translateY(var(--reveal-distance));transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.ip-reveal.is-in{opacity:1;transform:none}html:not(.js) .ip-reveal{opacity:1;transform:none}html{scroll-behavior:smooth;overflow-x:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
