@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/8a053b136321ec99-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/2a8fe189f1a8dd0c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/c214ffb7f5362987-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__variable_7347c0{--font-display:"Archivo","Archivo Fallback"}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8192f1afef14275b.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/b04fe76c44ae53c6.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.__variable_92b5c9{--font-body:"Atkinson Hyperlegible Next"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__variable_37214d{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--film:#F4F3F0;--surface:#FFFFFF;--band:#E9E7E2;--ink:#16191D;--ink-2:#3B4047;--muted:#5B6068;--rule:#D5D1C9;--cobalt:#A63F08;--cobalt-hover:#7F3006;--blueprint:#16191D;--blueprint-2:#1F2329;--blueprint-3:#2B3038;--on-dark:#F4F2EE;--on-dark-2:#C4C0B8;--on-dark-label:#9C978E;--line-cyan:#FF7A1A;--markup-orange:#FF8A4C;--markup-red:#A31F09;--draw-line:#8DB8DA;--t-hero:clamp(2.5rem,1.2rem + 5.2vw,5.5rem);--t-h1:clamp(2.4rem,1.5rem + 3.6vw,4.25rem);--t-h2:clamp(2rem,1.4rem + 2.3vw,3.25rem);--t-h3:clamp(1.3125rem,1.2rem + .45vw,1.625rem);--t-lead:clamp(1.1875rem,1.12rem + .3vw,1.375rem);--t-body:clamp(1.0625rem,1.03rem + .12vw,1.125rem);--t-small:clamp(.9375rem,.92rem + .08vw,1rem);--t-label:.875rem;--sec:clamp(72px,3.2rem + 4.2vw,144px);--gut:16px;--radius:4px;--ease:cubic-bezier(.65,0,.35,1);--ease-out:cubic-bezier(.2,.7,.1,1);--header-h:72px}.quote-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,5vw,80px);align-items:start}.quote-aside{position:sticky;top:calc(var(--header-h) + 28px);display:grid;gap:24px}.quote-next{display:grid}.quote-next li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:16px 0;border-top:1px solid var(--rule)}.quote-next li:last-child{border-bottom:1px solid var(--rule)}.quote-next .code{padding-top:3px}.quote-next strong{display:block;font-family:var(--font-display),sans-serif;font-weight:650;font-size:1.125rem;line-height:1.3}.quote-next p{margin-top:2px;line-height:1.5}.notice,.quote-next p{font-size:var(--t-small);color:var(--ink-2)}.quote-foot{font-size:var(--t-small);color:var(--muted)}.quote-foot a{color:var(--cobalt);text-underline-offset:3px}@media (max-width:980px){.quote-layout{grid-template-columns:minmax(0,1fr)}.quote-aside{position:static}}.form-card{--field-line:color-mix(in srgb,var(--muted) 78%,var(--surface));min-width:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);overflow:clip}.form-body{display:grid;gap:36px;padding:clamp(20px,3vw,36px)}.form-group legend,.form-legend{display:flex;align-items:baseline;gap:12px;font-family:var(--font-display),sans-serif;font-weight:650;font-size:1.3125rem;line-height:1.2;color:var(--ink)}.choice{position:relative;display:block;cursor:pointer}.choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.choice:hover .choice-body{border-color:var(--cobalt)}.choice input:checked+.choice-body{border-color:var(--cobalt);background:color-mix(in srgb,var(--cobalt) 5%,transparent);box-shadow:0 0 0 1px var(--cobalt) inset}.choice input:checked+.choice-body:after{border-color:var(--cobalt);background:radial-gradient(circle,var(--cobalt) 0 46%,transparent 52%)}.choice input:focus-visible+.choice-body{outline:3px solid var(--cobalt);outline-offset:3px}.choice input:checked+.choice-body .choice-code{color:var(--cobalt)}.inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:grid;gap:8px;min-width:0;align-content:start}.field label{font-weight:600;font-size:var(--t-small);line-height:1.3;color:var(--ink)}.field input,.field textarea{width:100%;min-height:52px;padding:0 14px;font:inherit;font-size:1.0625rem;line-height:1.4;color:var(--ink);background:var(--surface);border:1.5px solid var(--field-line);border-radius:var(--radius);transition:border-color .2s,box-shadow .2s}.field textarea{min-height:168px;padding:12px 14px;resize:vertical;line-height:1.55}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}.field input:hover,.field textarea:hover{border-color:var(--ink-2)}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--cobalt);outline:3px solid var(--cobalt);outline-offset:2px}.field [aria-invalid=true]{border-color:var(--markup-red);box-shadow:0 0 0 1px var(--markup-red) inset}.field-help{font-size:var(--t-small);line-height:1.45;color:var(--muted)}@media (max-width:640px){.inline-fields{grid-template-columns:minmax(0,1fr)}}.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.required-note{font-size:var(--t-small);color:var(--muted)}.btn--submit{justify-self:start;min-width:240px}.btn--submit:disabled{opacity:.65;cursor:progress}@media (max-width:640px){.btn--submit{justify-self:stretch;min-width:0}}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--film);color:var(--ink);font-family:var(--font-body),"Helvetica Neue",Arial,sans-serif;font-weight:400;font-size:var(--t-body);line-height:1.6;font-feature-settings:"lnum";font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:inherit}dd,dl,figure,h1,h2,h3,h4,ol,p,ul{margin:0}ol,ul{padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;border-radius:4px}.band-dark :focus-visible,.page-hero :focus-visible,.site-footer :focus-visible,.site-header :focus-visible{outline-color:var(--line-cyan)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wrap{width:min(100% - 2 * var(--gut),1240px);margin-inline:auto}h1,h2,h3,h4{font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;text-wrap:balance}h1{font-weight:700;font-stretch:106%;font-size:var(--t-h1);line-height:1.05;letter-spacing:-.02em}h2{font-stretch:104%;font-size:var(--t-h2);line-height:1.1;letter-spacing:-.015em}h2,h3{font-weight:650}h3{font-size:var(--t-h3);line-height:1.2;letter-spacing:-.01em}p{text-wrap:pretty}small{font-size:var(--t-label)}.lead{font-size:var(--t-lead);line-height:1.5;color:var(--ink-2);max-width:62ch}.eyebrow,.kicker{display:flex;align-items:baseline;gap:12px;margin-bottom:18px;font-family:var(--font-body),sans-serif;font-weight:600;font-size:var(--t-small);line-height:1.3;color:var(--cobalt)}.code,.eyebrow .code,.eyebrow .sheet,.sheet{color:var(--muted)}.code,.sheet{font-family:var(--font-mono),ui-monospace,Menlo,monospace;font-weight:500;font-size:var(--t-label);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sec,.section{position:relative;padding-block:var(--sec)}.sec-head{max-width:820px;margin-bottom:clamp(36px,4vw,64px)}.band-light{background:var(--film)}.band-alt{background:var(--band)}.prose>*+*{margin-top:1em}.prose ol,.prose ul{padding-left:1.25em}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li+li{margin-top:.4em}.prose a{color:var(--cobalt);text-underline-offset:3px}.site-header{position:sticky;top:0;z-index:50;background:var(--blueprint);color:var(--on-dark);border-bottom:1px solid rgba(196,190,180,.22)}.hd{gap:32px;min-height:var(--header-h)}.brand,.hd{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;color:var(--on-dark);font-family:var(--font-display),sans-serif;font-weight:700;font-stretch:112%;font-size:1.625rem;letter-spacing:-.02em;line-height:1}.brand svg{width:28px;height:28px;color:var(--line-cyan)}.nav{display:flex;gap:6px;margin-left:auto}.nav a{padding:10px 14px;border-radius:var(--radius);text-decoration:none;font-size:1.0625rem;color:var(--on-dark-2);transition:color .2s,background-color .2s}.nav a:hover{color:var(--on-dark);background:rgba(244,242,238,.08)}.hd>.btn{margin-left:8px}.menu{display:none;margin-left:auto;position:relative}.menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 14px;border:1px solid rgba(196,190,180,.45);border-radius:var(--radius);font-weight:600;font-size:1rem}.menu summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(320px,calc(100vw - 32px));background:var(--blueprint-2);border:1px solid rgba(196,190,180,.3);border-radius:var(--radius);padding:8px}.menu-panel a:not(.btn){display:block;padding:14px;text-decoration:none;font-size:1.125rem;border-radius:var(--radius)}.menu-panel a:not(.btn):hover{background:rgba(244,242,238,.08)}.menu-panel .btn{width:100%;margin:8px 0 0}@media (max-width:980px){.hd>.btn,.nav{display:none}.menu{display:block}.hd{gap:16px}}.page-hero{position:relative;background-color:var(--blueprint);color:var(--on-dark);overflow:clip}.page-hero-in{padding-block:clamp(28px,3.2vw,44px) clamp(40px,4.4vw,72px)}.page-hero--compact .page-hero-in{padding-block:clamp(24px,2.6vw,36px) clamp(32px,3.4vw,52px)}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,52px);align-items:center;margin-top:clamp(20px,2.6vw,32px)}.page-hero--visual .page-hero-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.page-hero h1{font-size:var(--t-h1);color:var(--on-dark);font-stretch:108%;line-height:1.03}.page-hero .lead{margin-top:20px;color:var(--on-dark-2);max-width:52ch}.page-hero .eyebrow{color:var(--line-cyan)}.page-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.page-hero-visual{position:relative;min-width:0}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:var(--t-small);color:var(--on-dark-2)}.crumbs a{text-decoration:none;padding-block:8px}.crumbs a:hover{text-decoration:underline;text-underline-offset:3px}.crumbs [aria-current],.crumbs a:hover{color:var(--on-dark)}.crumbs .sep{color:var(--on-dark-label)}@media (max-width:1080px){.page-hero--visual .page-hero-grid{grid-template-columns:minmax(0,1fr)}}.site-footer{background:#0E1013;color:var(--on-dark-2);padding-block:56px 40px;border-top:1px solid rgba(196,190,180,.2)}.ft{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px}.ft p.b{margin-top:16px;max-width:36ch;font-size:var(--t-small);line-height:1.55}.ft-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.ft-cols h2{font-family:var(--font-body),sans-serif;font-weight:600;font-stretch:100%;letter-spacing:0;line-height:1.3;color:var(--on-dark);margin-bottom:12px}.ft-cols a,.ft-cols h2{font-size:var(--t-small)}.ft-cols a{display:block;padding:6px 0;text-decoration:none;color:var(--on-dark-2)}.ft-cols a:hover{color:var(--on-dark);text-decoration:underline;text-underline-offset:3px}.ft-base{justify-content:space-between;gap:8px 24px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(196,190,180,.2);font-size:var(--t-label);color:var(--on-dark-label)}.ft-base,.ft-legal{display:flex;flex-wrap:wrap}.ft-legal{gap:4px 20px}.ft-legal a{padding:6px 0;color:var(--on-dark-2);text-decoration:none}.ft-legal a:hover{color:var(--on-dark);text-decoration:underline;text-underline-offset:3px}@media (max-width:1080px){.ft{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.ft-cols{grid-template-columns:1fr 1fr}}@media (max-width:639px){.page-hero .eyebrow{flex-direction:column;align-items:flex-start;gap:4px}}.page-hero--catalog .lead{font-size:1.1875rem;max-width:60ch}@media (min-width:1081px){.page-hero--catalog .page-hero-grid{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:start}.page-hero--catalog .page-hero-copy{position:sticky;top:calc(var(--header-h) + 24px)}.page-hero--catalog .lead{font-size:var(--t-body);max-width:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 24px;border-radius:var(--radius);border:2px solid transparent;font-family:var(--font-display),sans-serif;font-weight:600;font-size:1.125rem;line-height:1;text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s,border-color .2s}.btn svg{width:18px;height:18px;transition:transform .2s}.btn:hover svg{transform:translateX(3px)}.btn-cobalt{background:var(--cobalt);color:#fff}.btn-cobalt:hover{background:var(--cobalt-hover)}.btn-cyan{background:var(--line-cyan);color:var(--blueprint)}.btn-cyan:hover{background:#FF9A4D}.btn-line{border-color:var(--on-dark-label);color:var(--on-dark)}.btn-line:hover{border-color:var(--on-dark);background:rgba(244,242,238,.06)}.btn-sm{min-height:44px;padding:0 18px;font-size:1rem}@keyframes tab-in{0%{opacity:0}to{opacity:1}}.index-list{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--rule)}.index-list--2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,5vw,88px)}.index-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 20px;padding:20px 0;border-top:1px solid var(--rule);text-decoration:none}.index-row:before{content:"";position:absolute;left:-14px;top:18px;bottom:18px;width:3px;background:var(--cobalt);border-radius:2px;transform:scaleY(0);transition:transform .25s var(--ease-out)}.index-row:focus-visible:before,.index-row:hover:before{transform:scaleY(1)}.index-title{font-family:var(--font-display),sans-serif;font-weight:650;font-size:var(--t-h3);line-height:1.2;letter-spacing:-.01em;transition:transform .25s var(--ease-out)}.index-row:hover .index-title{transform:translateX(4px)}.index-desc{grid-column:1;color:var(--muted);font-size:var(--t-small);line-height:1.4}@media (max-width:980px){.index-list--2{grid-template-columns:minmax(0,1fr)}}.fig svg{width:100%;height:auto;overflow:visible}.faq-list details{border-top:1px solid var(--rule)}.faq-list details:last-child{border-bottom:1px solid var(--rule)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-family:var(--font-display),sans-serif;font-weight:600;font-size:clamp(1.1875rem,1.05rem + .6vw,1.5rem);line-height:1.25}.faq-list summary::-webkit-details-marker{display:none}.plus{position:relative;flex:0 0 auto;width:22px;height:22px}.plus:after,.plus:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:var(--cobalt);margin-top:-1px;transition:transform .3s var(--ease-out)}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.faq-list details p{padding:0 44px 26px 0;color:var(--ink-2);max-width:60ch}@media (max-width:480px){.btn{white-space:normal;text-align:center;line-height:1.2;padding-block:12px}}.scroll-region{position:relative;min-width:0}.scroll-region:after,.scroll-region:before{content:"";position:absolute;top:0;bottom:0;z-index:2;width:22px;pointer-events:none;opacity:0;transition:opacity .15s}.scroll-region:before{left:0;background:linear-gradient(to right,var(--sr-edge,rgba(22,25,29,.22)),transparent)}.scroll-region:after{right:0;background:linear-gradient(to left,var(--sr-edge,rgba(22,25,29,.22)),transparent)}.scroll-region[data-x=end]:before,.scroll-region[data-x=mid]:after,.scroll-region[data-x=mid]:before,.scroll-region[data-x=start]:after{opacity:1}@media (prefers-reduced-motion:reduce){.scroll-region:after,.scroll-region:before{transition:none}}.sec--tight{padding-block:clamp(48px,2.4rem + 2.6vw,88px)}.cat-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,88px);align-items:start}.cat-split .sec-head{margin-bottom:0}@media (max-width:980px){.cat-cols,.cat-split{grid-template-columns:minmax(0,1fr)}.cat-split{gap:24px}}.hero-fig .fig{--dw-grid:rgba(127,211,247,.06);--dw-line:var(--draw-line);--dw-line-2:#8EA6CC;--dw-fill:rgba(127,211,247,.10);--dw-mark:var(--markup-orange);--dw-label:var(--on-dark-2);--fig-bg:var(--blueprint)}.hero-fig{min-width:0}.hero-fig-cap{margin-top:12px;font-size:var(--t-small);line-height:1.4;color:var(--on-dark-2)}.hero-fig svg{max-height:min(56vh,520px)}@media (prefers-reduced-motion:no-preference){.hero-fig .pen-view .pen-trace{animation:pen-trace 1.1s var(--ease) both;animation-timeline:auto;animation-delay:calc(var(--i, 0) * 90ms + .15s)}.hero-fig .pen-view .pen-pop{animation:pen-pop .42s var(--ease-out) both;animation-timeline:auto;animation-delay:calc(var(--i, 0) * 60ms + 1.2s)}}.fig{--dw-grid:rgba(166,63,8,.06);--dw-line:var(--ink);--dw-line-2:#33465a;--dw-fill:rgba(166,63,8,.08);--dw-mark:var(--markup-red);--dw-label:var(--ink-2);position:relative;isolation:isolate}.fig--dark{--dw-grid:rgba(127,211,247,.06);--dw-line:var(--draw-line);--dw-line-2:#8EA6CC;--dw-fill:rgba(127,211,247,.10);--dw-mark:var(--markup-orange);--dw-label:var(--on-dark-2)}.fig-grid:before{content:"";position:absolute;inset:-24px -16px 48px;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--dw-grid) 1px,transparent 1px),linear-gradient(90deg,var(--dw-grid) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:radial-gradient(ellipse 70% 62% at 50% 46%,#000 45%,transparent 100%);mask-image:radial-gradient(ellipse 70% 62% at 50% 46%,#000 45%,transparent 100%)}.dw-line{fill:none;stroke:var(--dw-line);stroke-width:1.25;stroke-linejoin:round;stroke-linecap:round}.dw-wall{fill:none;stroke:var(--dw-line);stroke-width:3}.dw-thin{fill:none;stroke:var(--dw-line-2);stroke-width:.8}.dw-dash{fill:none;stroke:var(--dw-line-2);stroke-width:.9;stroke-dasharray:4 3}.dw-mark{fill:none;stroke:var(--dw-mark);stroke-width:1.6}.dw-mark-fill{fill:var(--dw-mark);stroke:none}.pen-trace{stroke-dasharray:1;stroke-dashoffset:0}.pen-pop{transform-box:fill-box;transform-origin:center}@media (prefers-reduced-motion:no-preference){.pen-load .pen-trace{animation:pen-trace 1.1s var(--ease) both;animation-delay:calc(var(--i, 0) * 90ms + .15s)}.pen-load .pen-pop{animation:pen-pop .42s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 60ms + 1.2s)}@supports (animation-timeline:view()){.pen-view .pen-trace{animation:pen-trace linear both;animation-timeline:view();animation-range:entry 5% cover 35%;animation-delay:0s}.pen-view .pen-pop{animation:pen-pop linear both;animation-timeline:view();animation-range:entry 25% cover 45%;animation-delay:0s}}}@keyframes pen-trace{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes pen-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes rv-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@keyframes hp-fade{0%{opacity:0}to{opacity:1}}@keyframes xb-lift{0%{transform:translateY(0)}to{transform:translateY(var(--lift,0))}}@keyframes xb-tag{0%{opacity:0}to{opacity:1}}.never{display:flex;gap:16px;align-items:center;max-width:720px;margin-top:clamp(40px,4vw,64px);padding:20px 24px;border:1px solid var(--rule);border-left:4px solid var(--markup-red);border-radius:var(--radius);background:var(--surface)}.never svg{flex:0 0 auto;width:34px;height:34px;color:var(--markup-red)}.never p{font-family:var(--font-display),sans-serif;font-weight:600;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);line-height:1.3}.never span{display:block;margin-top:4px;font-family:var(--font-body),sans-serif;font-weight:400;font-size:var(--t-small);color:var(--ink-2)}@keyframes how-grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes how-grow-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes how-dot{0%{transform:scale(0)}to{transform:scale(1)}}.fig{--dw-lay:var(--cobalt);--dw-on-mark:#fff;--ts-ink:var(--ink);--ts-ink-2:var(--ink-2);--ts-muted:var(--muted);--ts-rule:var(--rule);--ts-accent:var(--cobalt);--ts-hover:#EAF0FB;--ts-mark:var(--markup-red);--ts-link:var(--cobalt)}.fig--dark,.hero-fig .fig{--dw-lay:#DDF3FE;--dw-on-mark:var(--blueprint);--ts-ink:var(--on-dark);--ts-ink-2:var(--on-dark-2);--ts-muted:var(--on-dark-label);--ts-rule:rgba(196,190,180,.3);--ts-accent:var(--line-cyan);--ts-hover:rgba(244,242,238,.06);--ts-mark:var(--markup-orange);--ts-link:var(--line-cyan)}@keyframes pen-fade{0%{opacity:0}to{opacity:1}}.est-dot.on{background:var(--line-cyan);border-color:var(--line-cyan)}@media (prefers-reduced-motion:no-preference){.hero-fig .pen-view :is(.est-fade,.est-rise,.est-grow,.est-dot,.est-hl,.est-flash,.est-sweep),.pen-load :is(.est-fade,.est-rise,.est-grow,.est-dot,.est-hl,.est-flash,.est-sweep){animation:var(--an) var(--dur,.6s) var(--ease-out) both;animation-delay:calc(var(--b, .3s) + var(--i, 0) * var(--st, 80ms))}@supports (animation-timeline:view()){.pen-view :is(.est-fade,.est-rise,.est-grow,.est-dot,.est-hl,.est-flash,.est-sweep){animation:var(--an) linear both;animation-timeline:view();animation-range:entry calc(6% + var(--i, 0) * 1.5% + var(--r, 0) * 2%) cover calc(32% + var(--i, 0) * 1.5% + var(--r, 0) * 2%);animation-delay:0s}}}@keyframes est-fade{0%{opacity:0}}@keyframes est-rise{0%{opacity:0;transform:translateY(10px)}}@keyframes est-grow{0%{transform:scaleX(0)}}@keyframes est-rule{0%{transform:scaleX(0)}}@keyframes est-dot{0%{opacity:0;transform:scale(.3)}}@keyframes est-hl{0%{opacity:0}35%{opacity:.6}to{opacity:.14}}@keyframes est-flash{0%{opacity:0}25%,70%{opacity:1}to{opacity:0}}@keyframes est-sweep{0%{opacity:0;transform:translateX(0)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translateX(486px)}}
.bd{--bd-text:var(--ink);--bd-text-2:var(--ink-2);--bd-accent:var(--cobalt);--bd-sheet:#fff;--bd-soft:rgba(166,63,8,.08);--bd-soft-2:rgba(166,63,8,.04);--bd-rule:var(--rule);--bd-you:var(--markup-red)}.bd.fig--dark,.hero-fig .bd{--bd-text:var(--on-dark);--bd-text-2:var(--on-dark-2);--bd-accent:var(--line-cyan);--bd-sheet:var(--blueprint-2);--bd-soft:rgba(255,122,26,.12);--bd-soft-2:rgba(255,122,26,.05);--bd-rule:rgba(196,190,180,.32);--bd-you:var(--markup-orange)}.bd{color:var(--bd-text)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.pen-view .bd-a{animation:var(--bd-anim,bd-in) linear both;animation-timeline:view();animation-range:entry calc(var(--r0, 0%) + var(--i, 0) * 2%) entry calc(var(--r1, 70%) + var(--i, 0) * 2%)}}.hero-fig .pen-view .bd-a{animation:var(--bd-anim,bd-in) var(--dur,.6s) var(--ease-out) both;animation-timeline:auto;animation-range:normal;animation-delay:calc(var(--i, 0) * var(--step, 80ms) + var(--d0, .2s))}}@keyframes bd-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes bd-fade{0%{opacity:0}to{opacity:1}}@keyframes bd-grow{0%{transform:scaleX(0)}to{transform:none}}@keyframes bd-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}@keyframes bd-drop{0%{opacity:0;transform:translateY(calc(var(--lift) - 70px))}to{opacity:1;transform:translateY(var(--lift))}}@keyframes bd-sort{0%{transform:translateX(calc(var(--d) * 100%))}to{transform:none}}@keyframes bd-ball{0%{stroke-dashoffset:var(--v)}to{stroke-dashoffset:0}}.dw-hatch{background-image:repeating-linear-gradient(135deg,var(--hatch,var(--dw-mark)) 0 2px,transparent 2px 6px)}.bd-scroll{overflow-x:auto}.bd-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px;font-size:.9375rem;color:var(--bd-text-2)}.bd-legend li{display:inline-flex;align-items:center;gap:8px}.bd-note{margin-top:16px;font-size:var(--t-small);line-height:1.5;color:var(--bd-text-2);max-width:64ch}.bd-note strong{color:var(--bd-text);font-weight:650}.gantt{display:grid}.gantt-lane{margin:26px 0 6px;font-family:var(--font-body),sans-serif;font-weight:600;font-size:1rem;color:var(--bd-text-2)}.gantt-lane:first-child{margin-top:0}.gantt-row,.gantt-rows{display:grid}.gantt-row{grid-template-columns:minmax(150px,28%) minmax(0,1fr);column-gap:16px;align-items:center;min-height:42px;padding:8px 0;border-top:1px solid var(--bd-rule)}.gantt-label{font-size:1rem;line-height:1.3;color:var(--bd-text)}.gantt-row--axis{align-items:start;padding-top:0;border-top:0}.gantt-label--head{margin:0;padding-top:14px;font-family:var(--font-body),sans-serif;font-weight:600;font-size:1rem;color:var(--bd-text-2)}.gantt-track{position:relative;display:block;height:20px;margin-inline:16px}.dw-track{background-image:linear-gradient(90deg,var(--bd-rule) 1px,transparent 1px);background-size:var(--gstep,25%) 100%}.bd-gantt:not(.bd-staff) .gantt-track:after{content:"";position:absolute;left:var(--due);top:-9px;bottom:-9px;width:2px;margin-left:-1px;background:var(--dw-mark)}.gantt-bar{position:absolute;top:2px;bottom:2px;border-radius:3px;transform-origin:left center}.gantt-bar--bidmere,.gantt-bar--full{background:var(--bd-accent)}.gantt-bar--customer{border:2px solid var(--bd-accent);background:var(--bd-soft)}.gantt-bar--part{--hatch:var(--bd-accent);border:1.5px solid var(--bd-accent)}.gantt-swatch{display:inline-block;width:26px;height:12px;border-radius:3px}.gantt-swatch--full{background:var(--bd-accent)}.gantt-swatch--part{--hatch:var(--bd-accent);border:1.5px solid var(--bd-accent)}.gantt-axis{position:relative;height:72px;margin-inline:16px}.gantt-axis:before{content:"";position:absolute;left:0;right:0;top:24px;height:2px;background:var(--bd-rule)}.gantt-axis.dw-track{background-size:var(--gstep,25%) 48px;background-repeat:repeat-x}.gantt-ms{position:absolute;top:9px;display:grid;place-items:center;width:30px;height:30px;margin-left:-15px;border-radius:50%;border:2px solid var(--bd-accent);background:var(--bd-sheet);font-family:var(--font-display),sans-serif;font-weight:700;font-size:.9375rem;line-height:1;color:var(--bd-text)}.gantt-ms--due{border-color:var(--dw-mark);background:var(--dw-mark);color:var(--blueprint)}.gantt-day{position:absolute;top:52px;font-size:.875rem;line-height:1;color:var(--bd-text-2);transform:translateX(-50%);white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gantt-day--first{transform:none;margin-left:-16px}.gantt-day--last{transform:translateX(-100%);margin-left:16px}.gantt-axis--plain{height:22px}.gantt-axis--plain:before{display:none}.gantt-axis--plain .gantt-day{top:0}.gantt-keys{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(20px,3vw,40px);margin-bottom:4px}.gantt-keys li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;column-gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--bd-rule);font-size:1rem;line-height:1.3;color:var(--bd-text)}.gantt-key-day{color:var(--bd-text-2);font-size:.9375rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.gantt-key-n{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--bd-accent);font-family:var(--font-display),sans-serif;font-weight:700;font-size:.875rem;line-height:1}.gantt-key--due .gantt-key-n{border-color:var(--dw-mark);background:var(--dw-mark);color:var(--blueprint)}.bd-staff .dw-track{--gstep:20%}.gantt-row--phases{border-top:0}.gantt-row--months{min-height:0;padding:0 0 10px;border-top:0}.gantt-phases{position:relative;display:block;height:68px;margin-inline:16px}.gantt-phase{position:absolute;top:0;bottom:0;display:grid;place-items:center;padding-inline:4px;background:var(--bd-soft);border-left:1px solid var(--bd-rule);font-size:.9375rem;font-weight:600;line-height:1.2;color:var(--bd-text);text-align:center;overflow:hidden}.gantt-phase:nth-child(2n){background:var(--bd-soft-2)}.gantt-phase--narrow{padding-inline:0;font-size:.875rem;line-height:1}.gantt-phase--narrow span{writing-mode:vertical-rl}.gantt-phase span{-webkit-hyphens:manual;hyphens:manual}@media (max-width:640px){.gantt-row{row-gap:8px;padding:10px 0 12px}.gantt-keys,.gantt-row{grid-template-columns:minmax(0,1fr)}.gantt-ms{top:12px;width:24px;height:24px;margin-left:-12px;font-size:.875rem}.gantt-row--months{padding-bottom:6px}.gantt-row--months .gantt-label,.gantt-row--phases .gantt-label{display:none}.gantt-phases{height:132px}.gantt-phase--mid span{writing-mode:vertical-rl}.gantt-label--head{padding-top:0}}.bd-paper{--bd-text:var(--ink);--bd-text-2:var(--ink-2);--bd-accent:var(--cobalt);--bd-rule:var(--rule);--bd-you:var(--markup-red);--dw-mark:var(--markup-red);--dw-line:var(--ink);overflow:hidden;border-radius:var(--radius);background:#fff;color:var(--ink);box-shadow:0 1px 0 rgba(22,25,29,.08),0 22px 44px -22px rgba(8,9,11,.55)}.bd-paper-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;padding:14px 20px;border-bottom:1px solid var(--rule);background:var(--film);font-family:var(--font-display),sans-serif;font-weight:600;font-size:1.0625rem;line-height:1.3}.bd-paper-meta{font-family:var(--font-body),sans-serif;font-weight:400}.bd-paper-meta,.bd-paper-note{font-size:.9375rem;color:var(--muted)}.bd-paper-note{padding:12px 20px 18px;line-height:1.45}.qual{width:100%;border-collapse:collapse}.qual td,.qual th{padding:10px 8px;border-top:1px solid var(--rule)}.qual thead th{border-top:0;border-bottom:2px solid var(--ink);font-family:var(--font-display),sans-serif;font-weight:600;font-size:1rem;text-align:center}.qual tbody th,.qual thead th:first-child{text-align:left;padding-left:20px}.qual thead th:first-child{color:var(--muted);font-family:var(--font-body),sans-serif;font-weight:600}.qual tbody th{font-weight:400;font-size:1rem;line-height:1.3;color:var(--ink-2)}.qual-cell{text-align:center}.qual-short{display:none}.bd svg.harvey{width:30px;height:30px;margin-inline:auto;overflow:visible}.harvey-ring{fill:none;stroke:var(--cobalt);stroke-width:1.4}.harvey-fill{fill:none;stroke:var(--cobalt);stroke-width:8.6}@media (max-width:640px){.qual td,.qual th{padding-inline:4px}.qual tbody th,.qual thead th:first-child{padding-left:14px}.qual-name{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.qual-short{display:inline}.bd svg.harvey{width:26px;height:26px}.bd-paper-head,.bd-paper-note{padding-inline:14px}}.letter-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px clamp(20px,3vw,36px);padding:20px}.letter-sign,.letter-wide{grid-column:1/-1}.letter-h{margin-bottom:6px;font-family:var(--font-body),sans-serif;font-weight:600;font-size:1rem;color:var(--muted)}.letter-list li{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:8px;padding:6px 0;font-size:1rem;line-height:1.4;color:var(--ink-2)}.bd svg.letter-mark{width:20px;height:20px;margin-top:1px;overflow:visible}.letter-mark path{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.letter-mark--in path{stroke:var(--cobalt)}.letter-mark--out path{stroke:var(--markup-red)}.letter-list--plain li{display:block;position:relative;padding-left:18px}.letter-list--plain li:before{content:"";position:absolute;left:4px;top:1.05em;width:5px;height:5px;border-radius:50%;background:var(--muted)}.letter-sign{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 18px;padding-top:10px}.letter-sign-line{flex:1 1 200px;height:34px;border-bottom:1.5px dashed var(--ink-2)}.letter-sign-label{color:var(--muted)}.letter-flag,.letter-sign-label{flex:0 0 auto;font-size:.9375rem}.letter-flag{padding:4px 12px;border:1.5px solid var(--markup-red);border-radius:var(--radius);background:#fff;font-weight:600;line-height:1.3;color:var(--markup-red)}@media (max-width:640px){.letter-body{grid-template-columns:minmax(0,1fr);padding:16px 14px}}.level-sheet{padding:clamp(14px,2vw,28px);border:1px solid var(--bd-rule);border-radius:var(--radius);background:rgba(255,255,255,.035)}.level{width:100%;table-layout:fixed;border-collapse:collapse}.level td,.level th{padding:8px 4px;border-top:1px solid var(--bd-rule)}.level thead th{border-top:0;border-bottom:2px solid var(--bd-text-2);padding-bottom:12px;font-family:var(--font-display),sans-serif;font-weight:600;font-size:1.0625rem;text-align:center;color:var(--bd-text);white-space:nowrap}.level tbody th,.level tfoot th,.level thead th:first-child{width:34%;text-align:left;padding-right:10px}.level thead th:first-child{font-family:var(--font-body),sans-serif;font-weight:600;font-size:1rem;color:var(--bd-text-2)}.level tbody th,.level tfoot th{font-weight:400;font-size:1rem;line-height:1.3;color:var(--bd-text)}.level tfoot th{font-weight:600}.level-cell{height:48px;text-align:center}.bd svg.level-in{width:26px;height:26px;margin-inline:auto;overflow:visible}.level-in path{fill:none;stroke:var(--bd-accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.level-gap{display:block;width:26px;height:26px;margin-inline:auto;border:1.5px solid var(--dw-mark);border-radius:var(--radius)}.bd svg.level-in--key,.level-gap--key{display:inline-block;width:22px;height:22px}.level-gap--key{margin:0}.level-total{padding-top:12px;text-align:center;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.level-total b{display:block;font-family:var(--font-display),sans-serif;font-weight:650;font-size:1.625rem;color:var(--bd-text)}.level-total span{display:block;margin-top:2px;font-size:.875rem;color:var(--bd-text-2)}.level-meter{display:block;height:4px;margin:8px 2px 0;border-radius:2px;background:var(--bd-rule);overflow:hidden}.level-meter>i{display:block;height:100%;background:var(--bd-accent);transform-origin:left center;transform:scaleX(var(--c))}.level thead th.level-col:first-of-type{color:var(--bd-accent)}@media (max-width:640px){.level-sheet{padding:12px}.level tbody th,.level tfoot th,.level thead th:first-child{width:36%}.level tbody th,.level tfoot th{font-size:.9375rem;padding-right:6px}.level-word{display:none}.level-cell{height:46px}.bd svg.level-in,.level-gap{width:24px;height:24px}}.bv{--bv-solid:color-mix(in srgb,var(--dw-line) 40%,transparent);--bv-soft:color-mix(in srgb,var(--dw-line) 14%,transparent)}.bv.fig--dark{--fig-bg:var(--blueprint)}.bv svg{margin-inline:auto}.bv-t{font-family:var(--font-body),"Helvetica Neue",Arial,sans-serif;font-size:16px;font-weight:400;fill:var(--dw-label);paint-order:stroke;stroke:var(--fig-bg,var(--film));stroke-width:4px;stroke-linejoin:round}.bv-t--strong{fill:var(--dw-line);font-weight:700}.bv-t--mark{fill:var(--dw-mark);font-weight:700}.bv-t--flat{stroke:none}.bv-n{font-size:17px;font-weight:650;fill:var(--dw-line)}.bv-n,.bv-op{font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;stroke:none}.bv-op{font-size:28px;font-weight:500;fill:var(--dw-label)}@media (max-width:640px){.bv-t{stroke-width:5px}.bv-n,.bv-t{font-size:21px}.bv-op{font-size:34px}}.bv-solid{fill:var(--bv-solid);stroke:var(--dw-line);stroke-width:1.25}.bv-ink{fill:var(--dw-line);stroke:none}.bv-mask{fill:var(--fig-bg,var(--film));stroke:var(--dw-line);stroke-width:1.25}.bv-heavy{fill:none;stroke:var(--dw-line);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.bv-grow{transform-box:fill-box;transform-origin:0 50%;--kf:bv-grow;--dur:.7s;--t0:.9s}.bv-drop{--kf:bv-drop;--dur:.6s;--t0:.5s;--step:140ms}.bv-fade{--kf:bv-fade;--dur:.5s;--t0:.5s}.bv-pop{transform-box:fill-box;transform-origin:center;--kf:bv-pop;--dur:.42s;--t0:1.2s;--step:60ms}.bv-sweep{fill:none;stroke-dasharray:1;stroke-dashoffset:0;--kf:bv-sweep;--dur:.45s;--t0:.8s;--step:280ms;--bv-ease:linear}.bv-ring{opacity:0;transform-box:fill-box;transform-origin:center;--kf:bv-ring;--dur:.7s;--t0:1.45s;--step:130ms}@media (prefers-reduced-motion:no-preference){.pen-load .bv-a{animation:var(--kf) var(--dur,.6s) var(--bv-ease,var(--ease-out)) both;animation-delay:calc(var(--i, 0) * var(--step, 90ms) + var(--t0, 1s))}}@keyframes bv-grow{0%{transform:scaleX(0)}to{transform:none}}@keyframes bv-drop{0%{opacity:0;transform:translateY(-26px)}to{opacity:1;transform:none}}@keyframes bv-fade{0%{opacity:0}to{opacity:1}}@keyframes bv-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes bv-sweep{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes bv-ring{0%{opacity:0;transform:scale(.7)}15%{opacity:.85}to{opacity:0;transform:scale(2)}}.bv-switch{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;min-width:0;margin:0 0 14px;padding:0;border:0}.bv-radio{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.bv-switch label{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1.5px solid var(--dw-line-2);border-radius:var(--radius);font-size:1rem;font-weight:600;line-height:1;color:var(--dw-label);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}.bv-radio:checked+label{border-color:var(--dw-line);background:var(--dw-line);color:var(--fig-bg,var(--film))}.bv-radio:focus-visible+label{outline:3px solid var(--dw-line);outline-offset:3px}@media (hover:hover){.bv-radio:not(:checked)+label:hover{border-color:var(--dw-line);color:var(--dw-line)}}.ss-lp,.ss-price,.ss-tr{transition:opacity .35s var(--ease)}.ss-lp{opacity:0}.ss:has(.bv-radio--lpta:checked) .ss-tr{opacity:0}.ss:has(.bv-radio--lpta:checked) .ss-lp{opacity:1}.ss:has(.bv-radio--lpta:checked) .ss-price--out{opacity:.28}.ss-track{fill:none;stroke:var(--dw-line-2);stroke-width:.9}.ss-fill{fill:var(--bv-solid);stroke:none;--step:45ms;--t0:.8s}.ss-fill--price{fill:var(--bv-soft);stroke:var(--dw-line-2);stroke-width:.9}.tg-arm{transform-box:fill-box;transform-origin:50% 0;transform:scaleY(.28);--kf:tg-arm;--dur:.38s;--t0:1s;--bv-ease:var(--ease)}.tg-arm--2{--t0:1.75s}.tg-token{opacity:1;transform:translate(313px,-65px);--kf:tg-token;--dur:1.5s;--t0:.9s;--bv-ease:var(--ease)}.tg-shackle{transform:translate(6px,-8px);--kf:tg-shackle;--dur:.38s;--t0:2.05s;--bv-ease:var(--ease)}@keyframes tg-arm{0%{transform:scaleY(1)}to{transform:scaleY(.28)}}@keyframes tg-shackle{0%{transform:none}to{transform:translate(6px,-8px)}}@keyframes tg-token{0%{opacity:0;transform:translate(0)}6%{opacity:1;transform:translate(0)}22%{transform:translate(44px)}32%{transform:translate(44px)}48%{transform:translate(105px,-33px)}58%{transform:translate(134px,-65px)}74%{transform:translate(262px,-65px)}82%{transform:translate(262px,-65px)}to{opacity:1;transform:translate(313px,-65px)}}.cd-needle{transform-origin:260px 138px;transform:rotate(38deg);--kf:cd-turn;--dur:1.1s;--t0:.35s;--bv-ease:var(--ease)}.cd-bar{transform-box:fill-box;transform-origin:0 50%;--kf:cd-scale;--dur:1.1s;--t0:.35s;--bv-ease:var(--ease)}@keyframes cd-turn{0%{transform:rotate(-135deg)}to{transform:rotate(38deg)}}@keyframes cd-scale{0%{transform:scaleX(.8)}to{transform:none}}.cd-sweep{stroke:var(--dw-line);stroke-width:3.5;stroke-linecap:butt;--dur:1.1s;--t0:.35s;--bv-ease:var(--ease)}.cl-fill{fill:color-mix(in srgb,var(--dw-line) 11%,transparent);stroke:none}.cl-label-bg{fill:var(--fig-bg,var(--film));stroke:var(--dw-line);stroke-width:1.25}.cl-window{fill:none;stroke:var(--dw-line);stroke-width:2.2;stroke-linejoin:round}.cl-day--out{opacity:.5}.cl-letting{fill:color-mix(in srgb,var(--dw-mark) 22%,transparent);stroke:var(--dw-mark);stroke-width:1.6}.cl-mark{fill:var(--fig-bg,var(--film));stroke:var(--dw-mark);stroke-width:2.4}.bv-n--mark{fill:var(--dw-mark)}.qw-fill{stroke:var(--bv-solid);stroke-width:44;stroke-linecap:butt;--t0:.7s;--step:220ms;--dur:.42s}.bv2-fig{--bv-text:var(--ink);--bv-ok:var(--cobalt)}.bv2-fig.fig--dark,.hero-fig .bv2-fig{--bv-text:var(--on-dark);--bv-ok:var(--line-cyan)}svg.bv2{display:block;width:100%;height:auto;overflow:visible}svg.bv2 .bv-t{fill:var(--bv-text);font-family:var(--font-body),"Helvetica Neue",Arial,sans-serif;font-size:18px;font-weight:400;paint-order:stroke;stroke:var(--fig-bg,var(--film));stroke-width:5px;stroke-linejoin:round}svg.bv2 .bv-tb{font-size:20px;font-weight:700}svg.bv2 .bv-ts{fill:var(--dw-label)}svg.bv2 .bv-tm{font-family:var(--font-mono),ui-monospace,Menlo,monospace;font-size:18px;font-weight:500;letter-spacing:0}svg.bv2 .bv-tk{fill:var(--dw-mark)}svg.bv2 .bv-mid{text-anchor:middle}svg.bv2 .bv-end{text-anchor:end}svg.bv2 .bv-node{fill:var(--fig-bg,var(--film));stroke:var(--dw-line);stroke-width:1.75}svg.bv2 .bv-card{fill:var(--dw-fill);stroke:var(--dw-line);stroke-width:1.4}svg.bv2 .bv-card--gap{fill:none;stroke:var(--dw-mark);stroke-width:1.5;stroke-dasharray:5 4}svg.bv2 .bv-heavy{fill:none;stroke:var(--dw-line);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}svg.bv2 .bv-ink{fill:none;stroke:var(--dw-line);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}svg.bv2 .bv-mk{fill:none;stroke:var(--dw-mark);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}svg.bv2 .bv-mk-heavy{fill:none;stroke:var(--dw-mark);stroke-width:3;stroke-linecap:round}svg.bv2 .bv-mk-dash{fill:none;stroke:var(--dw-mark);stroke-width:1.6;stroke-dasharray:6 5;stroke-linecap:round}svg.bv2 .bv-ghost{fill:none;stroke:var(--dw-line-2);stroke-width:1.1;stroke-dasharray:5 5}svg.bv2 .bv-dots{fill:none;stroke:var(--dw-line-2);stroke-width:1.6;stroke-dasharray:1 6;stroke-linecap:round}svg.bv2 .bv-ok{fill:none;stroke:var(--bv-ok);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}svg.bv2 .bv-ok-ring{fill:none;stroke:var(--bv-ok);stroke-width:1.4;opacity:.55}svg.bv2 .bv-seg{fill:var(--dw-fill);stroke:var(--dw-line);stroke-width:1.4}svg.bv2 .bv-track{fill:none;stroke:var(--dw-line-2);stroke-width:3;opacity:.5}svg.bv2 .bv-arc{fill:none;stroke:var(--dw-mark);stroke-width:3;stroke-linecap:round;stroke-dasharray:.72 1}svg.bv2 .bv-open{fill:none;stroke:var(--dw-mark);stroke-width:1.6;stroke-dasharray:4 4;stroke-linecap:round}svg.bv2 .bv-solid{fill:var(--dw-mark);stroke:none}svg.bv2 .bv-paper{fill:var(--dw-fill);stroke:var(--dw-line);stroke-width:1.3;stroke-linejoin:round}svg.bv2 .bv-grow{transform-box:fill-box;transform-origin:left center}@media (prefers-reduced-motion:no-preference){.pen-load svg.bv2 .bv-fade{animation:bv2-fade .52s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 70ms + .5s)}.pen-load svg.bv2 .bv-grow{animation:bv2-grow .62s var(--ease-out) both;animation-delay:calc(var(--i, 0) * .11s + .7s)}.pen-load svg.bv2 .bv-arc{animation:bv2-arc 1.3s var(--ease) both;animation-delay:1s}}@keyframes bv2-fade{0%{opacity:0}to{opacity:1}}@keyframes bv2-grow{0%{opacity:0;transform:scaleX(.05)}to{opacity:1;transform:none}}@keyframes bv2-arc{0%{stroke-dashoffset:.72}to{stroke-dashoffset:0}}svg.bv2 .bv-thin{fill:none;stroke:var(--dw-line-2);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}svg.bv2 .bv-nh{stroke:none}@media (min-width:1081px){.hero-fig:has(.sv){max-width:560px;margin-inline:auto}}@keyframes sv-wipe{0%{clip-path:inset(0 100% 100% 0)}to{clip-path:inset(0)}}@keyframes sv-in{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}@keyframes sv-blink{0%{opacity:0}to{opacity:1}}@keyframes sv-stamp{0%{opacity:0;transform:rotate(-12deg) scale(1.6)}to{opacity:1;transform:rotate(-4deg) scale(1)}}:root{--t-body:1.125rem;--t-small:1rem;--on-dark-2:#D0DCED;--on-dark-label:#AFBFDA;--muted:#465C73;--sec:clamp(56px,5.5vw,88px)}body{line-height:1.7}h1,h2,h3{font-stretch:100%}h2{line-height:1.18}.lead{line-height:1.65;max-width:56ch}.page-hero h1{font-stretch:100%;line-height:1.12;max-width:22ch}.page-hero .lead{font-size:1.25rem;line-height:1.65}.sec-head{max-width:760px;margin-bottom:36px}.cat-intro,.prose{line-height:1.8}.cat-note,.fee-note,.index-desc,.step-detail{font-size:1rem;line-height:1.65}.index-desc{max-width:60ch;margin-top:6px;color:var(--ink-2)}.faq-list details p{line-height:1.8}.faq-list summary{line-height:1.4}.field select{width:100%;min-height:48px;padding:12px;background:#fff;color:var(--ink);border:1px solid #8f8a82;font:inherit;border-radius:0}.field select:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px}@media(max-width:1200px){.hd{gap:20px}.nav{gap:0}.nav a{padding-inline:10px}}@media(max-width:1100px){.hd>.btn,.nav{display:none}.menu{display:block}}.analytics-choice{position:fixed;z-index:90;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:24px;padding:12px max(24px,calc((100vw - 1180px) / 2));border-top:1px solid var(--rule);background:#FBFAF7;color:#16191D;box-shadow:0 -10px 30px rgba(22,25,29,.12);font-size:15px;line-height:1.45}.analytics-choice p{margin:0;max-width:72ch}.analytics-choice a{color:#A63F08;text-decoration:underline;text-underline-offset:2px}.analytics-actions{display:flex;flex:none;gap:8px}.analytics-actions button{min-height:40px;padding:8px 16px;border:1px solid #16191d;border-radius:var(--radius);background:transparent;color:#16191D;cursor:pointer;font:inherit;font-weight:600}.analytics-actions button[data-choice=yes]{background:#16191D;color:#fff}@media (max-width:760px){.analytics-choice{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px calc(14px + env(safe-area-inset-bottom))}.analytics-actions button{flex:1 1}}:root{--gut:clamp(20px,3vw,40px);--header-h:76px}.hd{gap:24px}.nav a{padding-inline:12px;font-size:1rem}.hd>.btn{margin-left:4px}.menu summary{gap:12px}.menu summary svg{flex:0 0 auto}.menu-panel{padding:12px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}.site-footer{padding-block:64px 32px}.ft{gap:40px 64px}.ft-cols a{min-height:44px;padding-block:8px}.ft-legal a{display:inline-flex;align-items:center;min-height:44px}.ft-base{margin-top:44px}@media (max-width:1080px){.hd>.btn,.nav{display:none}.menu{display:block}}:root{--on-dark-2:#D2CEC6;--on-dark-label:#ADA89F;--muted:#4F545B}h1,h2{font-weight:800;font-stretch:84%;letter-spacing:-.012em}h1{line-height:1.02}h2{line-height:1.05}h3{font-weight:700;font-stretch:94%}.page-hero h1{font-stretch:84%;line-height:1.02}.eyebrow,.kicker{font-weight:700}.eyebrow:before,.kicker:before{content:none;display:none}.site-header{border-bottom:3px solid var(--line-cyan)}.brand{font-weight:800;font-stretch:92%;letter-spacing:-.01em}.site-footer{border-top:3px solid var(--line-cyan)}.btn{border-radius:4px;font-weight:700;font-stretch:94%}.btn-cyan{box-shadow:0 2px 0 rgba(0,0,0,.25)}.menu summary,.menu-panel,.menu-panel a:not(.btn){border-radius:4px}@keyframes pe-highlight{0%{background-size:0 100%}to{background-size:100% 100%}}.form-more{border-top:1px solid var(--rule);padding-top:16px}.form-more>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-weight:600;font-size:var(--t-small);color:var(--ink)}.form-more>summary::-webkit-details-marker{display:none}.form-more>summary:before{content:"+";display:grid;place-items:center;width:22px;height:22px;border:1.5px solid var(--field-line,var(--rule));border-radius:var(--radius);font-weight:600;line-height:1;color:var(--cobalt)}.form-more[open]>summary:before{content:"\2212"}.form-more>summary:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}.editorial-photo{display:block;overflow:hidden;border-radius:8px;width:100%;line-height:0}.editorial-photo img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:3/2}.page-hero-visual>.editorial-photo{box-shadow:0 24px 48px -32px #0008}.page-hero-visual>.editorial-photo img{min-height:250px;aspect-ratio:4/3}@media(prefers-reduced-motion:reduce){.editorial-photo{scroll-behavior:auto}}.inline-quote{scroll-margin-top:calc(var(--header-h) + 20px)}.inline-quote>.wrap>.lead{margin:16px 0 32px;max-width:65ch}.inline-quote h3{font-size:var(--t-h3);margin-bottom:16px}.quote-prices p{margin:12px 0}.quote-prices a{text-decoration:underline;text-underline-offset:3px}@media (max-width:720px){body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-quote-bar[hidden],body:has(.analytics-choice) .mobile-quote-bar{display:none}}@media (prefers-reduced-motion:reduce){html:has(.mobile-quote-bar){scroll-behavior:auto}}.hero-offer{margin-top:18px}.hero-offer-note{margin:4px 0 0;font-size:var(--t-small);color:rgba(255,255,255,.8)}.hero-has-form .hh-form .form-card{color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.35)}.hero-has-form .hh-form .form-body{gap:26px}
/* Quote forms and calls to action added 2026-11-11 (transforms/cro). Source only: scripts/perf-css.mjs purges
   these rules into each template's bm-<hash>.css. Edit here, then run npm run bake. */
.form-body--short{gap:20px}
.form-body--short .field textarea{min-height:120px}
.form-body--short .btn--submit{justify-self:stretch;min-width:0}
.form-body--short .required-note{margin:0}
.form-body--short [role=status]:empty{display:none}
.form-more{padding-top:6px;border-top:1px solid var(--rule)}
.form-more>summary{min-height:44px}
.form-more-fields{display:grid;gap:18px;margin-top:10px}
.cro-cta-copy{flex:1 1 20rem;min-width:0;margin:0;font-size:var(--t-small);line-height:1.55;color:var(--ink-2)}
.cro-cta-copy strong{display:block;margin-bottom:2px;font-family:var(--font-display),sans-serif;font-weight:650;font-size:1.1875rem;line-height:1.3;color:var(--ink)}
.cro-cta .btn,.cro-band .btn{flex:0 0 auto;color:var(--blueprint);text-decoration:none}
.cro-band{padding-block:clamp(28px,3.4vw,44px);background:var(--blueprint);border-top:3px solid var(--line-cyan);color:var(--on-dark)}
.cro-band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 40px}
.cro-band .cro-cta-copy{flex-basis:28rem;font-size:var(--t-body);color:var(--on-dark-2)}
.cro-band .cro-cta-copy strong{font-size:var(--t-h3);color:var(--on-dark)}
@media (max-width:640px){.cro-cta .btn,.cro-band .btn{flex:1 1 100%}}
.hero-quote{scroll-margin-top:calc(var(--header-h) + 16px)}
.hero-quote:focus{outline:none}
.hero-quote .form-card{color:var(--ink);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.hero-quote .form-body--short{gap:18px}
.hero-quote .form-legend{margin:0}
@media (min-width:1081px){.hero-quote{margin-bottom:28px}}
@media (max-width:1080px){.hero-grid--form{display:flex;flex-direction:column;align-items:stretch;gap:0}
.hero-grid--form>.page-hero-copy,.hero-grid--form>.page-hero-visual{display:contents}
.hero-grid--form .hero-quote{order:1;width:100%;max-width:46rem;margin-top:24px}
.hero-grid--form .page-hero-actions~*{order:2}
.hero-grid--form .page-hero-visual>:not(.hero-quote){order:3;margin-top:clamp(28px,4vw,52px)}}
.cro-band :focus-visible{outline-color:var(--line-cyan)}
.quote-prices>a,.home-service-grid+p>a{display:inline-flex;align-items:center;min-height:44px}

/* Copy-ready embed code and link blocks added 2026-11-11 (transforms/authority). Source only: scripts/perf-css.mjs
   purges these rules into each template's bm-<hash>.css. Edit here, then run npm run bake. */

.prose a.btn-cyan{color:var(--blueprint)}.prose tbody th[scope=row]{background:none;color:inherit;font-family:inherit;font-weight:inherit;letter-spacing:inherit}
