:root{--ground: #f5f3ee;--panel: #fcfbf8;--ink: #16213a;--muted: #5d6170;--rule: #dcd8ce;--italic: #4b6b9e;--italic-on-dark: #e9c46a;--brand: #213962;--brand-soft: #dfe5ee;--marker: #e2ae2f;--marker-ink: #16213a;--marker-text: #8a6410;--clay: #a9502a;--field-bg: #213962;--field-fg: #eef1f6;--field-muted: #c3ccdb;--field-rule: rgb(255 255 255 / .18);--contact-bg: #16213a;--contact-fg: #f3f4f6;--display: "Newsreader", "Iowan Old Style", Georgia, "Times New Roman", serif;--body: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--wrap: 1180px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--ground: #0e1320;--panel: #151c2b;--italic: #9db4da;--italic-on-dark: #edbb45;--ink: #e6eaf1;--muted: #98a2b3;--rule: #273044;--brand: #9db4da;--brand-soft: #1c2638;--marker: #edbb45;--marker-text: #edbb45;--clay: #e07a4e;--field-bg: #1c2638;--field-fg: #e6eaf1;--field-muted: #98a2b3;--field-rule: #273044;--contact-bg: #0a0e18;--contact-fg: #e6eaf1;color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--marker);outline-offset:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:12px;z-index:50;background:var(--marker);color:var(--marker-ink);padding:8px 12px}.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:clamp(16px,4vw,40px)}.narrow{max-width:760px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;letter-spacing:-.015em}h1 em,h2 em,h3 em{font-style:italic;font-weight:400;color:var(--italic)}.contact h1 em,.contact h2 em,.pr-add h2 em,.hero.on-photo h1 em{color:var(--italic-on-dark)}.eyebrow{font:500 12px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.mono{font-family:var(--mono)}.tnum{font-variant-numeric:tabular-nums}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--ground) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}.nav{display:flex;align-items:center;gap:24px;padding-block:14px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand{color:var(--brand)}.brand .logo{height:40px;width:auto;display:block}.brand b{font:500 22px/1 var(--display);letter-spacing:-.02em}.brand span{font:500 11px/1 var(--mono);color:var(--muted);letter-spacing:.1em;align-self:center}.dba{display:flex;align-items:center;gap:16px;margin-top:18px;color:var(--brand)}.dba .logo-tpc{height:54px;width:auto;flex:none}.dba p{margin:0;font-size:13px;color:var(--muted);max-width:24em}.nav-desktop{margin-left:auto}.nav-desktop ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}.nav-desktop a{text-decoration:none;font-weight:500;font-size:15px;color:var(--muted)}.nav-desktop a:hover,.nav-desktop a[aria-current=page]{color:var(--ink)}.nav-mobile{display:none;position:relative;margin-left:auto}.nav-mobile summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1.5px solid var(--ink);border-radius:2px;font:600 14px/1 var(--body)}.nav-mobile summary::-webkit-details-marker{display:none}.burger{display:grid;gap:3px;width:16px}.burger i{display:block;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}.nav-mobile[open] .burger i:nth-child(1){transform:translateY(5px) rotate(45deg)}.nav-mobile[open] .burger i:nth-child(2){opacity:0}.nav-mobile[open] .burger i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.nav-mobile>nav{position:absolute;right:0;top:calc(100% + 10px);width:min(300px,calc(100vw - 32px));background:var(--panel);border:1px solid var(--rule);box-shadow:0 18px 40px -20px #16213a66;padding:8px 16px 16px}.nav-mobile ul{list-style:none;margin:0 0 12px;padding:0}.nav-mobile li a{display:block;padding:12px 0;border-bottom:1px solid var(--rule);text-decoration:none;font-weight:500}.nav-mobile li a[aria-current=page]{color:var(--brand)}.nav-mobile .btn{width:100%;justify-content:center}.btn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;font:600 15px/1 var(--body);padding:13px 18px;border-radius:2px;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--marker);color:var(--marker-ink)}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:disabled{opacity:.6;cursor:wait}.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}@media(max-width:900px){.nav-desktop,.nav-cta{display:none}.nav-mobile{display:block}}@media(max-width:520px){.brand span{display:none}}.page-hero{padding-block:clamp(40px,6vw,72px) clamp(32px,5vw,56px);border-bottom:1px solid var(--rule)}.page-hero h1{font-size:clamp(38px,5.4vw,68px);line-height:1.02;font-weight:500;margin-top:14px;max-width:18ch}.page-hero p{font-size:clamp(17px,1.6vw,19px);color:var(--muted);max-width:40em;margin:18px 0 0}.crumbs{display:flex;flex-wrap:wrap;gap:6px;font:500 12px/1.4 var(--mono);color:var(--muted);list-style:none;padding:0;margin:0}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs li+li:before{content:"/";margin-right:6px}.hero{padding-block:clamp(40px,7vw,88px) clamp(40px,6vw,72px)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}@media(max-width:980px){.hero-grid{grid-template-columns:1fr}}.hero h1{font-size:clamp(42px,6.4vw,84px);line-height:1;font-weight:500;margin-top:18px}.hero h1 em{display:block}.lede{font-size:clamp(17px,1.6vw,19px);max-width:34em;color:var(--muted);margin:22px 0 28px}.ctas{display:flex;flex-wrap:wrap;gap:12px}.creds{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:34px;padding-top:20px;border-top:1px solid var(--rule)}.creds div{font:500 13px/1.3 var(--mono);color:var(--muted)}.creds b{display:block;color:var(--ink);font-family:var(--body);font-size:15px;font-weight:600}.readout{background:var(--panel);border:1px solid var(--rule);border-radius:3px;box-shadow:0 1px 0 var(--rule),0 18px 40px -24px #16213a59}.ro-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--rule)}.ro-head .eyebrow{color:var(--ink)}.tag{font:500 11px/1 var(--mono);letter-spacing:.06em;padding:5px 7px;border-radius:2px;background:var(--brand-soft);color:var(--brand);white-space:nowrap}.ro-body{padding:16px 18px 18px}.toggle{display:inline-flex;flex-wrap:wrap;border:1px solid var(--rule);border-radius:2px;padding:3px;gap:3px;margin-bottom:14px}.toggle button{border:0;background:transparent;color:var(--muted);font:500 13px/1 var(--body);padding:8px 10px;border-radius:1px;cursor:pointer}.toggle button[aria-pressed=true]{background:var(--ink);color:var(--ground)}.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.kpi{border-left:2px solid var(--rule);padding-left:10px}.kpi .v{font:600 24px/1.1 var(--display);font-variant-numeric:tabular-nums}.kpi .l{font:500 11px/1.3 var(--mono);color:var(--muted);letter-spacing:.04em}.kpi.warn{border-color:var(--clay)}.kpi.warn .v{color:var(--clay)}.kpi.good{border-color:var(--brand)}.kpi.good .v{color:var(--brand)}.chart{width:100%;height:auto;display:block}.chart text{font:500 10px var(--mono);fill:var(--muted)}.comps{margin-top:14px;border-top:1px solid var(--rule)}.comp{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 78px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--rule);font-size:13px}.comp .bar{height:6px;background:var(--brand-soft);border-radius:1px;position:relative;overflow:hidden}.comp .bar i{position:absolute;inset:0 auto 0 0;background:var(--brand)}.comp .bar i.soon{background:var(--marker)}.comp .r{font:500 12px var(--mono);text-align:right;color:var(--muted);white-space:nowrap}.ro-foot{font:400 11px/1.45 var(--mono);color:var(--muted);margin:10px 0 0}.band{padding-block:clamp(56px,8vw,104px)}.ruled{border-top:1px solid var(--rule)}.band-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(20px,4vw,56px);align-items:end;margin-bottom:clamp(28px,4vw,48px)}@media(max-width:860px){.band-head{grid-template-columns:1fr}}.band-head h2{font-size:clamp(32px,4.2vw,54px);line-height:1.04;font-weight:500;margin-top:12px}.band-head p{color:var(--muted);margin:0;max-width:36em}.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--rule)}@media(max-width:760px){.split{grid-template-columns:1fr}}.side{padding:clamp(22px,3vw,36px);background:var(--panel)}.side+.side{border-left:1px solid var(--rule)}@media(max-width:760px){.side+.side{border-left:0;border-top:1px solid var(--rule)}}.side h3{font-size:26px;font-weight:500;margin-top:10px}.side.field{background:var(--field-bg);color:var(--field-fg)}.side.field .eyebrow,.side.field .svc .who,.side.field .svc p{color:var(--field-muted)}.side.field .svc,.side.field .svc li{border-color:var(--field-rule)}.svc{padding:18px 0;border-top:1px solid var(--rule)}.svc:first-of-type{margin-top:18px}.svc h4{margin:0 0 4px;font:600 18px/1.3 var(--body)}.svc h4 a{text-decoration:none}.svc h4 a:hover{text-decoration:underline;text-underline-offset:3px}.svc .who{font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;display:block}.svc p{margin:0;color:var(--muted);font-size:15px;max-width:40em}.chips{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.chips li{font:500 12px/1 var(--mono);padding:6px 8px;border:1px solid var(--rule);border-radius:2px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:860px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.steps{grid-template-columns:1fr}}.step{padding:22px 22px 26px 0;border-top:3px solid var(--ink);margin-right:18px}.step .n{font:500 12px var(--mono);color:var(--muted)}.step h3{font-size:21px;font-weight:600;margin:8px 0 6px}.step p{margin:0;color:var(--muted);font-size:15px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:900px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.grid-4{grid-template-columns:1fr}}.cell{padding:20px;background:var(--panel);border:1px solid var(--rule)}.cell h3{font-size:19px;font-weight:600;margin-bottom:6px}.cell p{margin:0;font-size:14.5px;color:var(--muted)}.work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:760px){.work{grid-template-columns:1fr}}.doc{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:20px;background:var(--panel);border:1px solid var(--rule)}@media(max-width:420px){.doc{grid-template-columns:1fr}}.doc figure{margin:0;aspect-ratio:4 / 3;align-self:start;max-width:100%;background:#fff;border:1px solid var(--rule);overflow:hidden}.doc figure img{width:100%;height:100%;object-fit:contain}.sheet{aspect-ratio:4 / 3;align-self:start;max-width:100%;background:var(--ground);border:1px solid var(--rule);padding:10px 9px;display:flex;flex-direction:column;gap:6px}.sheet i{display:block;height:3px;background:var(--rule)}.sheet i.h{height:7px;width:70%;background:var(--ink)}.sheet i.a{background:var(--brand);width:55%}.sheet i.s{width:80%}.sheet i.x{height:10px;background:var(--ink);width:62%}.doc h3{font-size:19px;font-weight:600;margin:6px 0}.doc p{margin:0;font-size:14.5px;color:var(--muted)}.guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule)}@media(max-width:900px){.guides{grid-template-columns:1fr}}.guide{padding:22px 22px 26px 0;border-bottom:1px solid var(--rule);text-decoration:none;display:block}.guide:hover h3{color:var(--brand)}.guide h3{font-size:20px;font-weight:600;line-height:1.2;margin:8px 0}.guide p{margin:0;color:var(--muted);font-size:14.5px;max-width:30em}.guide .meta{font:500 11px/1.4 var(--mono);color:var(--muted);margin-top:12px;display:block}.guide.soon{pointer-events:none}.guide.soon h3{color:var(--muted)}.svc-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,5vw,64px);align-items:start}@media(max-width:900px){.svc-layout{grid-template-columns:1fr}}.includes{display:grid;gap:0;border-top:1px solid var(--rule)}.includes div{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--rule)}@media(max-width:640px){.includes div{grid-template-columns:1fr;gap:6px}}.includes h3{font-size:18px;font-weight:600}.includes p{margin:0;color:var(--muted)}.aside-card{background:var(--panel);border:1px solid var(--rule);padding:22px;position:sticky;top:90px}.aside-card h2{font-size:20px;font-weight:600;margin-bottom:12px}.aside-card ul{margin:0 0 18px;padding-left:18px;color:var(--muted);font-size:15px;display:grid;gap:6px}.aside-card .phone{font:600 20px/1.2 var(--display);margin-top:14px;-webkit-user-select:all;user-select:all}.faqs{border-top:1px solid var(--rule)}.faqs details{border-bottom:1px solid var(--rule);padding:16px 0}.faqs summary{cursor:pointer;font:600 17px/1.4 var(--body);list-style:none;display:flex;justify-content:space-between;gap:16px}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:"+";font-family:var(--mono);color:var(--muted)}.faqs details[open] summary:after{content:"−"}.faqs details p{margin:10px 0 0;color:var(--muted);max-width:46em}.section-title{font-size:clamp(24px,3vw,34px);font-weight:500;margin:48px 0 18px}.article{font-size:17.5px;line-height:1.7}.article h2{font-size:clamp(24px,3vw,32px);font-weight:500;margin:44px 0 12px;line-height:1.15}.article h3{font-size:21px;font-weight:700;margin:30px 0 8px}.article p,.article ul,.article ol{margin:0 0 18px}.article li{margin-bottom:6px}.article a{color:var(--brand);text-underline-offset:3px}.article strong{font-weight:600}.article blockquote{margin:24px 0;padding:4px 0 4px 18px;border-left:3px solid var(--marker);color:var(--muted)}.article table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 22px}.article th,.article td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--rule);vertical-align:top}.article th{font:500 12px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.table-scroll{overflow-x:auto}.byline{display:flex;flex-wrap:wrap;gap:6px 16px;font:500 12px/1.4 var(--mono);color:var(--muted);margin-top:16px}.contact{background:var(--contact-bg);color:var(--contact-fg)}.contact .band-head p,.contact .eyebrow{color:color-mix(in srgb,var(--contact-fg) 72%,transparent)}.c-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px)}@media(max-width:860px){.c-grid{grid-template-columns:1fr}}.c-info dl{margin:0;display:grid;gap:18px}.c-info dt{font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--contact-fg) 60%,transparent)}.c-info dd{margin:6px 0 0;font:600 22px/1.2 var(--display)}.c-info dd a{text-decoration:none}.cform{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cform .full{grid-column:1 / -1}@media(max-width:520px){.cform{grid-template-columns:1fr}}.cform label{display:grid;gap:6px;font:500 12px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--contact-fg) 72%,transparent)}.cform input,.cform select,.cform textarea{font:400 16px/1.4 var(--body);color:var(--contact-fg);background:transparent;border:0;border-bottom:1.5px solid color-mix(in srgb,var(--contact-fg) 35%,transparent);padding:10px 0;border-radius:0;width:100%}.cform select option{color:#16213a;background:#fff}.cform textarea{min-height:110px;resize:vertical}.cform .hp{position:absolute;left:-9999px}.form-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.form-note{font:400 14px/1.4 var(--body);color:color-mix(in srgb,var(--contact-fg) 80%,transparent)}.form-note.err{color:#f0a07c}.site-footer{padding-block:40px 48px;font-size:14px;color:var(--muted);border-top:1px solid var(--rule)}.f-grid{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:28px}@media(max-width:860px){.f-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.f-grid{grid-template-columns:1fr}}.f-grid h2{font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.f-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.f-grid a{text-decoration:none;color:var(--ink)}.f-grid a:hover{text-decoration:underline}.f-base{margin-top:32px;padding-top:18px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}@media(prefers-reduced-motion:no-preference){.chart path.line{transition:d .5s ease}}.vsheet{margin:0;background:var(--panel);border:1px solid var(--rule);border-radius:3px;box-shadow:0 1px 0 var(--rule),0 18px 40px -24px #16213a59}.vs-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;border-bottom:1px solid var(--rule)}.vs-title{font:600 20px/1.2 var(--display);margin-top:6px}.vs-tally{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px 0}.vsheet table{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}.vsheet th{text-align:left;font:500 11px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 18px;border-bottom:1px solid var(--rule)}.vsheet td{padding:11px 18px;border-bottom:1px dashed var(--rule);vertical-align:top}.vsheet tr:last-child td{border-bottom:0}.vs-note{color:var(--muted);font-size:13.5px}.vs-foot{padding:14px 18px;border-top:1px solid var(--rule);font-size:14px;color:var(--muted)}.vs-foot strong{color:var(--clay)}.chip{display:inline-block;font:500 11px/1 var(--mono);letter-spacing:.04em;padding:5px 7px;border-radius:2px;white-space:nowrap;border:1px solid currentColor}.chip-verified{color:var(--brand)}.chip-spec{color:var(--clay)}.chip-incomplete{color:var(--marker-text)}.chip-held{color:var(--muted)}.pm-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,64px);align-items:start}@media(max-width:900px){.pm-grid{grid-template-columns:1fr}}.pm-grid .article p:first-child{margin-top:0}.phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid var(--ink)}@media(max-width:820px){.phases{grid-template-columns:1fr}}.phase{padding:22px 24px 8px 0}.phase h3{font-size:22px;font-weight:500;margin:6px 0 10px}.phase ul{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:8px;font-size:15px}.pm-strip{background:var(--field-bg);color:var(--field-fg)}.pm-strip .eyebrow{color:var(--field-muted)}.pm-strip-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px;padding-block:28px}.pm-strip-q{margin:8px 0 0;font:600 clamp(22px,2.6vw,30px)/1.15 var(--display);max-width:30ch;text-wrap:balance}.field-photo{margin:0;display:grid;gap:10px;align-content:start;min-width:0}.fp-frame{overflow:hidden;border:1px solid var(--rule);background:var(--brand-soft)}.fp-frame img{width:100%;height:100%;object-fit:cover}.field-photo figcaption{font-size:13.5px;line-height:1.5;color:var(--muted)}.fp-tag{display:block;font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:6px}.field-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 20px}.field-grid .fg-wide{grid-column:span 4}.field-grid .fg-wide .fp-frame{aspect-ratio:16 / 10}.field-grid .fg-tall{grid-column:span 2}.field-grid .fg-tall .fp-frame{aspect-ratio:3 / 4}.field-grid .fg-half{grid-column:span 3}.field-grid .fg-half .fp-frame{aspect-ratio:4 / 3}.field-grid .fg-third{grid-column:span 2}.field-grid .fg-third .fp-frame{aspect-ratio:4 / 3}@media(max-width:820px){.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid .fg-wide{grid-column:1 / -1}.field-grid .fg-tall,.field-grid .fg-third,.field-grid .fg-half{grid-column:span 1}.field-grid .fg-tall .fp-frame{aspect-ratio:4 / 3}}@media(max-width:480px){.field-grid .fg-tall,.field-grid .fg-third,.field-grid .fg-half{grid-column:1 / -1}}.svc-photo{margin-bottom:36px}.photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.photo-pair .fp-frame{aspect-ratio:4 / 3}@media(max-width:560px){.photo-pair{grid-template-columns:1fr}}.svc-photo .fp-frame{aspect-ratio:16 / 9}.svc-photo.portrait .fp-frame{aspect-ratio:3 / 4}.article img{max-width:100%;border:1px solid var(--rule);margin:8px 0 6px}.article img+em,.article p:has(>img)+p>em:only-child{display:block;font-style:normal;font-size:13.5px;color:var(--muted)}.case{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:start}@media(max-width:900px){.case{grid-template-columns:1fr}}.case h2{font-size:clamp(26px,3vw,36px);line-height:1.05;font-weight:500;margin:10px 0 14px}.case p{color:var(--muted);margin:0 0 16px}.case-steps{margin:0;padding:0;list-style:none;counter-reset:c;display:grid;gap:10px}.case-steps li{counter-increment:c;position:relative;padding-left:34px;font-size:15px;color:var(--muted)}.case-steps li:before{content:counter(c,decimal-leading-zero);position:absolute;left:0;top:0;font:500 12px/1.9 var(--mono);color:var(--brand)}.case-steps b{color:var(--ink);font-weight:600}.case .photo-pair .fp-frame{aspect-ratio:4 / 3}.after-study{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:start}@media(max-width:900px){.after-study{grid-template-columns:1fr}}.as-title{font-size:clamp(32px,4vw,50px);line-height:1.04;font-weight:500;margin:12px 0 14px}.as-intro p{color:var(--muted);margin:0;max-width:34em}.as-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.as-list li{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1.15fr);gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--rule)}@media(max-width:560px){.as-list li{grid-template-columns:1fr;gap:6px}.as-arrow{display:none}}.as-name{display:block;font-weight:600}.as-detail{display:block;font:500 12px/1.4 var(--mono);color:var(--muted);margin-top:2px}.as-arrow{color:var(--marker-text);font:600 18px var(--mono);text-align:center}.as-next{text-decoration:none;display:block}.as-next span:first-child{display:block;font-weight:500}.as-next:hover span:first-child{text-decoration:underline;text-underline-offset:3px}.as-svc{display:block;font:500 11px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin-top:3px}.sample-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:480px){.sample-row{grid-template-columns:1fr}}.sample{display:grid;gap:8px;text-decoration:none;padding:12px;background:var(--panel);border:1px solid var(--rule)}.sample img{width:100%;aspect-ratio:4 / 3;object-fit:contain;background:#fff;border:1px solid var(--rule)}.sample span{font:500 12px/1.3 var(--mono);color:var(--brand)}.sample:hover span{text-decoration:underline}.case-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:3px solid var(--ink)}@media(max-width:480px){.case-results{grid-template-columns:1fr}}.cr{padding:18px 18px 18px 0;border-bottom:1px solid var(--rule);display:grid;gap:4px}.cr-v{font:500 clamp(24px,3vw,32px)/1.1 var(--display);color:var(--brand)}.cr-l{font:500 12px/1.4 var(--mono);color:var(--muted)}.cr-foot{grid-column:1 / -1;font-size:13px;color:var(--muted);margin:12px 0 0}.presenter{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);align-items:start}@media(max-width:900px){.presenter{grid-template-columns:1fr}}.pr-intro p{color:var(--muted);margin:0;max-width:34em}.pr-tiers{display:grid;gap:14px}.pr-tier{padding:20px 22px;background:var(--panel);border:1px solid var(--rule)}.pr-tier ul{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;color:var(--muted)}.pr-add{background:var(--field-bg);color:var(--field-fg);border-color:var(--field-bg)}.pr-add .eyebrow{color:var(--marker)}.pr-add ul{color:var(--field-fg)}.pr-qs{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.pr-qs span{font:500 12px/1.3 var(--mono);padding:7px 9px;border:1px solid var(--field-rule);color:var(--field-muted)}.hero.on-photo{color:#f4f2ec;background:linear-gradient(100deg,#121c32f2,#16213ae0 48%,#213962b8),url(/field/stormwater-outlet-after.webp) center / cover no-repeat}.hero.on-photo h1{color:#fff}.hero.on-photo .eyebrow,.hero.on-photo .lede,.hero.on-photo .creds div{color:#c8cfdc}.hero.on-photo .creds{border-color:#ffffff2e}.hero.on-photo .creds b{color:#fff}.hero.on-photo .btn-ghost{color:#fff;box-shadow:inset 0 0 0 1.5px #ffffffb3}.hero.on-photo .readout{box-shadow:0 24px 60px -24px #0000008c}.study-pages{display:grid;gap:clamp(24px,4vw,40px)}.sp-intro p{color:var(--muted);max-width:44em;margin:0}.sp-docs{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:start}@media(max-width:820px){.sp-docs{grid-template-columns:1fr}}.sp-doc{margin:0;display:grid;gap:10px;min-width:0}.sp-frame{background:#fff;border:1px solid var(--rule);border-radius:6px;overflow:hidden;box-shadow:0 1px 0 var(--rule),0 24px 50px -28px #16213a66}.sp-frame img{width:100%;height:auto}.sp-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#eceae4;border-bottom:1px solid #dcd8ce;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#5d6170}.sp-bar i{width:8px;height:8px;border-radius:50%;background:#cfcbc1}.sp-bar span{margin-left:8px}.sp-doc figcaption{font-size:14px;color:var(--muted)}.aud-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:980px){.aud-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.aud-cards{grid-template-columns:1fr}}.aud-card{position:relative;display:block;min-height:300px;overflow:hidden;text-decoration:none;color:#fff;border-radius:3px;background:var(--brand)}.aud-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.aud-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#121c321a 20%,#121c32e0)}.aud-text{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;display:grid;gap:6px}.aud-n{font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#d9dfe9}.aud-who{font:500 26px/1.1 var(--display);letter-spacing:-.01em}.aud-line{font-size:14px;line-height:1.45;color:#e3e7ee}@media(prefers-reduced-motion:no-preference){.aud-card:hover img{transform:scale(1.04)}}.hero.on-photo .readout,.hero.on-photo .readout .ro-head .eyebrow{color:var(--ink)}.hero.on-photo .readout .eyebrow{color:var(--muted)}
