@font-face{font-family:Fraunces;font-style:italic;font-weight:300 700;font-display:swap;src:url(/fonts/fraunces-italic-300-700.woff2) format("woff2");unicode-range:U+0000-00FF,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:Fraunces;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/fraunces-normal-300-700.woff2) format("woff2");unicode-range:U+0000-00FF,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:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400.woff2) format("woff2");unicode-range:U+0000-00FF,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(/fonts/ibm-plex-mono-normal-500.woff2) format("woff2");unicode-range:U+0000-00FF,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:"Source Sans 3";font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/source-sans-3-italic-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,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:"Source Sans 3";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/source-sans-3-normal-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,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}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}button,input,select,textarea{font:inherit;color:inherit}:root{color-scheme:light;--color-primary: #2c5e3f;--color-primary-dark: #214a31;--color-primary-light: #3d7a54;--color-accent: #ae3f1c;--color-accent-dark: #953313;--color-accent-light: #d4663c;--color-on-accent: #fffdf2;--color-text: #2a362e;--color-text-light: #5b6b5e;--color-text-muted: #5e6c60;--color-bg: #f6f3e8;--color-bg-alt: #edeada;--color-bg-elevated: #fffdf2;--color-border: #dbd8c3;--color-border-hover: #b6bb9d;--color-border-strong: #7d8a67;--color-ink: #15241b;--color-surface-warm: #f0eddc;--color-mark: #bc4b24;--foliage-back: #dde3c8;--foliage-mid: #bccaa3;--foliage-front: #87a87f;--moon-fill: #f0ecd6;--moon-stroke: #cbb98a;--footer-bg: #edeada;--footer-text: #15241b;--footer-text-dim: #5e6c60;--hero-bg: #0d1812;--hero-ink: #f2efdb;--hero-accent: #d4663c;--max-width: 1100px;--nav-height: 72px;--section-padding: 6rem;--section-padding-tight: 3rem;--section-space: clamp(2.75rem, 4.5vw, 3.5rem);--card-radius: 4px;--btn-radius: 3px;--control-radius: 8px;--panel-radius: 12px;--media-radius: 16px;--pill-radius: 999px;--card-pad: 1.5rem;--measure-prose: 62ch;--measure-lede: 46ch;--measure-display: 20ch;--text-display: clamp(2.4rem, 5.5vw, 4.2rem);--text-h2: clamp(1.75rem, 2.4vw, 2.15rem);--text-h3: 1.3rem;--text-lede: 1.125rem;--text-body: 1.05rem;--text-small: .9rem;--text-label: .75rem;--shadow-sm: 0 1px 2px rgba(21, 36, 27, .05);--shadow-md: 0 4px 12px rgba(21, 36, 27, .07);--shadow-lg: 0 8px 24px rgba(21, 36, 27, .09);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .32s cubic-bezier(.22, 1, .36, 1);--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--font-body: "Source Sans 3", -apple-system, "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--tracking-display: -.015em;--tracking-tight: -.005em;--tracking-label: .14em}[data-theme=dark]{color-scheme:dark;--color-primary: #8fc29a;--color-primary-dark: #74a981;--color-primary-light: #aad4b3;--color-accent: #e98558;--color-accent-dark: #c9602f;--color-accent-light: #ec9168;--color-on-accent: #15241b;--color-text: #dee0ca;--color-text-light: #a3b29d;--color-text-muted: #8fa08a;--color-bg: #0d1812;--color-bg-alt: #1a2d21;--color-bg-elevated: #1e3226;--color-border: #3a523f;--color-border-hover: #46654e;--color-border-strong: #66896c;--color-ink: #f2efdb;--color-surface-warm: #243b2e;--color-mark: #e0784a;--foliage-back: #142319;--foliage-mid: #1c3424;--foliage-front: #2d5038;--moon-fill: #ece5c0;--moon-stroke: transparent;--footer-bg: #0a130e;--footer-text: #d9dcc4;--footer-text-dim: #768872;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 14px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .55)}:root:not([data-theme=dark]) :is(.case-hero,.pl-hero){--hero-bg: var(--color-bg-alt);--hero-ink: var(--color-ink);--hero-accent: var(--color-accent)}html{font-family:var(--font-body);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{color:var(--color-text);background:var(--color-bg);line-height:1.66;font-optical-sizing:auto}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;letter-spacing:var(--tracking-display);line-height:1.1;color:var(--color-ink)}h1{font-size:var(--text-display)}h2{font-size:var(--text-h2);letter-spacing:var(--tracking-tight)}h3{font-size:var(--text-h3);letter-spacing:var(--tracking-tight)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(prefers-contrast:more){:root,[data-theme=dark]{--color-text-light: var(--color-text);--color-text-muted: var(--color-text);--color-border: var(--color-border-strong)}}.label{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-light)}::selection{background:var(--color-primary);color:var(--color-bg)}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.75rem}.section{padding:var(--section-padding) 0}.section--tight{padding:var(--section-padding-tight) 0}.section--home{padding-block:var(--section-space)}.section--alt{background:var(--color-bg-alt)}.hidden{display:none}@media(max-width:640px){:root{--card-pad: 1.25rem}}.btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:.55rem;padding:.8rem 1.4rem;border-radius:var(--btn-radius);font-weight:600;font-size:.82rem;font-family:var(--font-body);letter-spacing:.05em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;transition:background var(--transition-base),color var(--transition-base),border-color var(--transition-base)}.btn--primary{background:var(--color-primary);color:#fff}.btn--primary:hover{background:var(--color-primary-dark)}[data-theme=dark] .btn--primary{color:var(--color-bg)}.btn--secondary{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn--secondary:hover{border-color:var(--color-text)}.btn--ghost{background:transparent;border:1px solid currentColor;color:inherit}.btn--ghost:hover{background:currentColor;color:var(--color-bg)}.btn--accent{background:var(--hero-ink);color:var(--hero-bg)}.btn--accent:hover{background:#fffdf2;color:var(--hero-bg)}:root:not([data-theme=dark]) .btn--accent{background:var(--color-ink);color:var(--color-bg-elevated)}:root:not([data-theme=dark]) .btn--accent:hover{background:var(--color-primary-dark);color:var(--color-bg-elevated)}.btn--sm{padding:.5rem 1rem;font-size:var(--text-label)}.btn--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.card{position:relative;padding:var(--card-pad);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--card-radius);transition:border-color var(--transition-base)}.card--interactive:hover,.card--interactive:focus-visible,.card--interactive:focus-within{border-color:var(--color-ink)}.card__links{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.5rem;margin:1rem 0 -.5rem;padding-top:.5rem;border-top:1px solid var(--color-border)}.card--interactive:hover .link--arrow:after,.card--interactive:focus-visible .link--arrow:after{transform:translate(4px)}.card__image{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-bg-alt);display:flex;align-items:center;justify-content:center}.card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.card--interactive:hover .card__image img{transform:scale(1.03)}.card__body{padding:0}.card__title{font-family:var(--font-display);font-weight:400;font-size:1.5rem;line-height:1.15;letter-spacing:var(--tracking-tight);margin-bottom:.4rem;color:var(--color-ink)}.card__subtitle{font-style:italic;font-family:var(--font-display);color:var(--color-text-light);font-size:var(--text-body);margin-bottom:.9rem}.card__description{color:var(--color-text-light);font-size:var(--text-small);margin-bottom:1.2rem;line-height:1.6;max-width:var(--measure-prose)}.card__actions{display:flex;gap:.75rem;flex-wrap:wrap}.card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .85rem;margin-bottom:.75rem;font-size:var(--text-small)}.card__meta time{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light);white-space:nowrap}.icon-box{width:44px;height:44px;background:var(--color-primary);border-radius:var(--panel-radius);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.icon-box--accent{background:var(--color-accent);color:var(--color-on-accent)}[data-theme=dark] .icon-box{color:var(--color-bg)}.icon-box--lg{width:56px;height:56px;border-radius:var(--panel-radius)}.badge{display:inline-block;white-space:nowrap;padding:.24rem .6rem;border-radius:2px;font-size:var(--text-label);font-weight:500;font-family:var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase;background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border)}.badge--accent{background:var(--color-accent);color:var(--color-on-accent);border-color:transparent}.badge--muted{background:var(--color-bg-alt);color:var(--color-text-light);border-color:var(--color-border)}.empty-state{text-align:center;padding:5rem 2rem;color:var(--color-text-light);font-family:var(--font-display);font-style:italic;font-size:1.15rem}.filter-bar{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;margin-bottom:3.5rem}.filter-btn{min-height:44px;padding:.45rem 1rem;border:1px solid var(--color-border);border-radius:2px;background:transparent;cursor:pointer;font-size:var(--text-label);font-weight:500;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-light);transition:all var(--transition-base)}.filter-btn:hover{color:var(--color-text);border-color:var(--color-text-light)}.filter-btn.active{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-bg)}.grid{display:grid;gap:1.75rem}.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.grid--4{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:var(--text-label);font-family:var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-light)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border-strong);border-radius:var(--btn-radius);font-family:inherit;font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary);box-shadow:0 0 0 3px #2c5e3f24}.form-group textarea{resize:vertical;min-height:120px}.prose{line-height:1.78;font-size:var(--text-body);max-width:var(--measure-prose)}.prose h2{font-family:var(--font-display);font-size:var(--text-h2);font-weight:400;letter-spacing:var(--tracking-tight);margin:2.75rem 0 1rem;color:var(--color-ink)}.prose h2:before{content:"";display:block;width:26px;height:1px;background:var(--color-primary);margin-bottom:.7rem}.prose h3{font-family:var(--font-display);font-size:var(--text-h3);font-weight:400;margin:2rem 0 .75rem;color:var(--color-ink)}.prose p{margin-bottom:1.25rem}.prose ul,.prose ol{margin:1rem 0;padding-left:1.5rem}.prose li{margin-bottom:.6rem}.prose li::marker{color:var(--color-accent)}.prose a{color:var(--color-primary);background-image:linear-gradient(currentColor,currentColor);background-position:0% 100%;background-repeat:no-repeat;background-size:100% 1px;transition:background-size var(--transition-base)}.prose a:hover{background-size:100% 2px}.prose strong{color:var(--color-ink);font-weight:600}.prose img{border-radius:var(--btn-radius);margin:1.5rem 0}.prose blockquote{border-left:2px solid var(--color-primary);padding-left:1.1rem;margin:1.75rem 0;font-style:italic;font-family:var(--font-display);color:var(--color-text);font-size:1.1rem}.prose code{background:var(--color-bg-alt);padding:.15rem .4rem;border-radius:4px;font-size:.88em;font-family:var(--font-mono)}.prose pre{background:var(--color-ink);color:var(--color-bg);padding:1.1rem 1.25rem;border-radius:var(--card-radius);overflow-x:auto;margin:1.5rem 0;font-size:.88rem;line-height:1.6}.prose pre code{background:none;padding:0}.link{color:var(--color-primary);font-weight:500;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;transition:background-size var(--transition-base);display:inline-block}.link:hover{background-size:100% 2px}.link--arrow{background-image:none}a.link--arrow{display:inline-flex;align-items:center;min-height:44px}.link--arrow:after{content:" →";transition:transform var(--transition-base);display:inline-block;margin-left:.25rem}.link--arrow:hover:after{transform:translate(4px)}.link--more{font-size:var(--text-small);line-height:1.45}.tap-target,.support .contact-card .links a{position:relative}.tap-target:before,.support .contact-card .links a:before{content:"";position:absolute;left:0;right:0;top:50%;height:44px;transform:translateY(-50%)}html.js [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}html.js [data-reveal].revealed{opacity:1;transform:translateY(0)}html.js [data-reveal=delay-1]{transition-delay:80ms}html.js [data-reveal=delay-2]{transition-delay:.16s}html.js [data-reveal=delay-3]{transition-delay:.24s}html.js [data-reveal=delay-4]{transition-delay:.32s}@media(prefers-reduced-motion:reduce){html.js [data-reveal],html.js [data-reveal].revealed{opacity:1;transform:none;transition:none}}@media(max-width:768px){html.js [data-reveal],html.js [data-reveal].revealed{opacity:1;transform:none;transition:none}}.measure-prose{max-width:var(--measure-prose)}.measure-lede{max-width:var(--measure-lede)}.measure-display{max-width:var(--measure-display)}@media(max-width:768px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}.filter-bar{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-left:-1.75rem;margin-right:-1.75rem;padding:0 1.75rem .5rem}.filter-bar::-webkit-scrollbar{display:none}.filter-btn{padding:.6rem 1rem;white-space:nowrap;flex-shrink:0}:root{--section-padding: 4rem;--section-padding-tight: 2.5rem}}.page-frame{padding:3rem 0}.page-frame__grid{display:block}.page-frame__main{min-width:0;max-width:680px}.page-frame--wide .page-frame__main{max-width:none}.page-frame--wide .page-frame__main>:is(p,dl,.prose){max-width:var(--measure-prose)}.page-frame__side{max-width:680px;margin-top:3rem}.page-frame__side>*+*{margin-top:2rem}.page-frame__side .on-this-page,.page-frame__side .side-app{display:none}.page-frame__wide{margin-bottom:3.5rem}.page-frame__after{max-width:680px}@media(min-width:1100px){.page-frame--reading .page-frame__grid{display:grid;grid-template-columns:minmax(0,680px) 300px;gap:4rem}.page-frame--reading .page-frame__side{margin-top:0;min-width:0}.page-frame__side .on-this-page,.page-frame__side .side-app{display:block}.page-frame--reading .page-frame__side{display:flex;flex-direction:column}.side-rail{flex:1 0 auto;min-height:650px}.side-rail>.side-ad{position:sticky;top:calc(var(--nav-height) + 1.5rem)}}.side-app__eyebrow{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.4rem}.side-app__name{font-family:var(--font-display);font-size:1.25rem;color:var(--color-ink);margin-bottom:.4rem}.side-app__text{font-size:.9rem;line-height:1.55;color:var(--color-text-light);margin-bottom:1rem}.page-frame__section{margin-bottom:3.5rem;scroll-margin-top:calc(var(--nav-height) + 1.5rem)}.page-frame__section>h2{margin-bottom:.75rem}.page-frame__note{color:var(--color-text-light);font-size:.95rem;margin-bottom:1.5rem}.page-frame__section h3{margin:2rem 0 .75rem;font-size:1.05rem}.page-frame__list{padding-left:1.25rem;color:var(--color-text-light);line-height:1.7}.page-frame__list li+li{margin-top:.4rem}.page-frame__end>*+*{margin-top:3rem}.title-block{margin-bottom:2.5rem}.title-block .breadcrumbs{margin-bottom:2.25rem}.title-block__eyebrow{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-primary);margin-bottom:1rem}.title-block__title{font-size:clamp(2rem,4.2vw,2.9rem);line-height:1.08;margin-bottom:1.1rem;max-width:720px}.title-block__lede{font-size:1.1rem;line-height:1.7;color:var(--color-text-light);margin-bottom:.75rem;max-width:var(--measure-prose)}.title-block__lede strong{color:var(--color-ink)}.title-block__details{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.5rem}.title-block__divider{display:flex;align-items:center;gap:.85rem;margin:1.75rem 0 0;max-width:720px}.title-block__divider:before{content:"";width:8px;height:8px;background:var(--color-mark);transform:rotate(45deg);flex-shrink:0}.page-frame--wide .title-block__divider{max-width:none}.title-block__divider span{flex:1;height:1px;background:var(--color-border)}.key-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--panel-radius);overflow:hidden;margin:0 0 3rem}.key-facts__item{display:flex;flex-direction:column;gap:.3rem;padding:1.1rem 1.25rem;background:var(--color-bg)}.key-facts__label{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted)}.key-facts__value{font-family:var(--font-display);font-size:1.2rem;color:var(--color-ink)}.key-facts__value--sm{font-size:1rem}.key-facts__sub{font-size:.82rem;line-height:1.45;color:var(--color-text-light)}.data-table{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--panel-radius)}.data-table table{width:100%;border-collapse:collapse;font-size:.92rem}.data-table thead th{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted);text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-alt)}.data-table tbody th,.data-table tbody td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.data-table tbody tr:last-child th,.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody th{font-weight:600;color:var(--color-ink)}.data-table tbody td{color:var(--color-text)}.data-table .num,.data-table .cost{white-space:nowrap;font-variant-numeric:tabular-nums}.data-table .col-notes{color:var(--color-text-light);font-size:.88rem}.data-table .print-only{display:none}.data-table .col-check{width:3.2em}.faq-list__item{border-bottom:1px solid var(--color-border);padding:.85rem 0}.faq-list__item:first-of-type{border-top:1px solid var(--color-border)}.faq-list__item summary{cursor:pointer;font-weight:600;color:var(--color-ink);list-style:none;position:relative;padding-right:1.5rem}.faq-list__item summary::-webkit-details-marker{display:none}.faq-list__item summary:after{content:"+";position:absolute;right:.25rem;top:0;color:var(--color-primary);font-family:var(--font-display);transition:transform var(--transition-base)}.faq-list__item[open] summary:after{transform:rotate(45deg)}.faq-list__item p{margin-top:.6rem;color:var(--color-text-light);line-height:1.7}.support:not(.support--own){max-width:680px}.support:not(.support--own) .faq{border-bottom:1px solid var(--color-border)}.support:not(.support--own) .faq:first-of-type{border-top:1px solid var(--color-border)}.support:not(.support--own) .faq summary{display:block;min-height:44px;padding:.9rem 1.5rem .9rem 0;cursor:pointer;font-weight:600;color:var(--color-ink);list-style:none;position:relative}.support:not(.support--own) .faq summary::-webkit-details-marker{display:none}.support:not(.support--own) .faq summary:after{content:"+";position:absolute;right:.25rem;top:.9rem;color:var(--color-primary);font-family:var(--font-display);transition:transform var(--transition-base)}.support:not(.support--own) .faq[open] summary:after{transform:rotate(45deg)}.support:not(.support--own) .faq p{margin:0 0 .9rem;color:var(--color-text-light);line-height:1.7}.support:not(.support--own) .contact-card{margin-top:2.5rem}.support:not(.support--own) .contact-card h2{font-size:1.3rem;margin-bottom:.6rem}.support:not(.support--own) .contact-card p{color:var(--color-text-light);line-height:1.7;margin-bottom:.75rem}.support .contact-card .links{display:flex;flex-wrap:wrap;gap:1.1rem 1.25rem;margin-bottom:0}.support .contact-card .links>span[aria-hidden=true]{display:none}.support .contact-card .links a{white-space:nowrap}.app-box__head{display:flex;align-items:center;gap:.9rem;margin-bottom:.6rem}.app-box__head img{width:56px;height:56px;border-radius:13px;flex-shrink:0}.app-box h2{font-size:1.5rem;margin:0}.app-box__text{color:var(--color-text-light);line-height:1.7;margin-bottom:1.4rem}.app-box__text p+p{margin-top:.5rem}.app-box__tagline{color:var(--color-ink);font-weight:600}.app-box__actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.app-box__note{margin-top:1.25rem;font-size:.85rem;line-height:1.6;color:var(--color-text-muted)}.related-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem}.related-links__title{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-light);margin-bottom:.75rem}.related-links ul{list-style:none;display:grid;gap:.45rem;padding:0;margin:0}.on-this-page{margin-bottom:0}.on-this-page__title{font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.75rem}.on-this-page ol{list-style:none;margin:0;padding:0 0 0 .9rem;border-left:1px solid var(--color-border);display:grid;gap:.55rem;font-size:.92rem;line-height:1.4}.on-this-page a{color:var(--color-text-light);text-decoration:none}.on-this-page a:hover{color:var(--color-ink)}.print-row{margin:0 0 1.5rem}.print-btn{font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:.4rem .9rem;border-radius:var(--pill-radius);border:1px solid currentColor;background:none;color:inherit}.diy-tag{display:inline-block;margin-left:.5rem;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--pill-radius);padding:.05rem .4rem;vertical-align:middle}.page-frame__section--compact{margin-bottom:2.5rem}.page-frame__section--compact>h2{font-size:1.3rem;margin-bottom:.85rem}@media print{body>header,.footer,.newsletter,.editorial-ad,.print-row,.page-frame__side,.title-block .breadcrumbs,.title-block__divider,.faq-list,.app-box,.related-links,.print-btn{display:none!important}.page-frame__main{max-width:none}.data-table .print-only{display:table-cell}.data-table .col-check:after{content:"☐";font-size:1.1em}.data-table thead .col-check:after{content:""}.data-table th,.data-table td{border:1px solid #999;padding:6px 8px}}.side-ad{display:none}@media(max-width:1099px){.side-rail{display:none}}@media(min-width:1100px){.side-ad{display:block;padding-block:.9rem;border-block:1px solid var(--color-border)}.side-ad .editorial-ad__label{margin:0 0 .75rem;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;line-height:1.5;letter-spacing:var(--tracking-label);text-align:center;text-transform:uppercase}.side-ad__slot{width:100%;min-width:0;min-height:250px}.side-ad:has(.side-ad__slot[data-ad-status=unfilled]),.side-ad:has(.side-ad__slot[data-ad-status=unfill-optimized]){display:none}}@media print{.side-ad{display:none}}.page-frame [id]{scroll-margin-top:calc(var(--nav-height) + 1.5rem)}.editorial-ad[data-editorial-ad-placement]{clear:both;width:100%;max-width:680px;margin:2.75rem 0;padding-block:.9rem;border-block:1px solid var(--color-border)}.editorial-ad[data-editorial-ad-placement] .editorial-ad__label{margin:0 0 .75rem;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-label);font-weight:500;line-height:1.5;letter-spacing:var(--tracking-label);text-align:center;text-transform:uppercase}.editorial-ad__slot{min-width:0}.editorial-ad[data-editorial-ad-placement] .editorial-ad__slot{min-height:250px}.editorial-ad[data-editorial-ad-placement]:has(.editorial-ad__slot[data-ad-status=unfilled]),.editorial-ad[data-editorial-ad-placement]:has(.editorial-ad__slot[data-ad-status=unfill-optimized]){display:none}.genre-groups>.editorial-ad,.model-list>.editorial-ad{grid-column:1 / -1;margin-block:0}@media(max-width:520px){.editorial-ad[data-editorial-ad-placement]{margin-block:2rem}}.skip-link[data-astro-cid-37fxchfa]{position:absolute;top:-40px;left:1rem;z-index:2000;padding:.5rem 1rem;background:var(--color-ink);color:var(--color-bg);font-size:.85rem;border-radius:4px;transition:top var(--transition-base)}.skip-link[data-astro-cid-37fxchfa]:focus{top:.75rem}.navbar[data-astro-cid-37fxchfa]{position:fixed;top:0;left:0;right:0;height:var(--nav-height);background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--color-border);z-index:1000}.nav-container[data-astro-cid-37fxchfa]{max-width:var(--max-width);margin:0 auto;padding:0 1.75rem;height:100%;display:flex;align-items:center;gap:1.75rem}.nav-links[data-astro-cid-37fxchfa]{margin-left:auto}.nav-actions[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:.5rem}.logo[data-astro-cid-37fxchfa]{display:inline-flex;align-items:baseline;gap:.45rem;padding-block:4px;color:var(--color-ink)}.logo-mark[data-astro-cid-37fxchfa]{display:inline-block;width:8px;height:8px;background:var(--color-mark);transform:rotate(45deg);flex-shrink:0;transition:transform var(--transition-slow)}.logo[data-astro-cid-37fxchfa]:hover .logo-mark[data-astro-cid-37fxchfa]{transform:rotate(135deg)}.logo-text[data-astro-cid-37fxchfa]{font-family:var(--font-display);font-size:1.35rem;font-weight:400;letter-spacing:var(--tracking-tight)}.nav-links[data-astro-cid-37fxchfa]{display:flex;list-style:none;gap:1.75rem;align-items:center}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-light);position:relative;display:inline-flex;align-items:center;min-height:44px;transition:color var(--transition-base)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:after{content:"";position:absolute;bottom:8px;left:0;right:0;height:1px;background:var(--color-ink);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover,.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa].active{color:var(--color-ink)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover:after,.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa].active:after{transform:scaleX(1)}.menu-toggle[data-astro-cid-37fxchfa]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px;position:relative}.menu-toggle[data-astro-cid-37fxchfa]:before{content:"";position:absolute;inset:-10px -5px}.menu-toggle[data-astro-cid-37fxchfa] span[data-astro-cid-37fxchfa]{width:24px;height:1.5px;background:var(--color-ink);transition:.3s}.theme-toggle[data-astro-cid-37fxchfa]{background:transparent;border:none;border-radius:var(--pill-radius);width:34px;height:34px;position:relative;cursor:pointer;color:var(--color-text);display:flex;align-items:center;justify-content:center;transition:color var(--transition-base)}.theme-toggle[data-astro-cid-37fxchfa]:before{content:"";position:absolute;inset:-5px;border-radius:var(--pill-radius)}.theme-toggle[data-astro-cid-37fxchfa]:hover{color:var(--color-ink)}.theme-toggle[data-astro-cid-37fxchfa] svg[data-astro-cid-37fxchfa]{width:20px;height:20px}.sun-icon[data-astro-cid-37fxchfa]{display:none}.moon-icon[data-astro-cid-37fxchfa],[data-theme=dark] .sun-icon[data-astro-cid-37fxchfa]{display:block}[data-theme=dark] .moon-icon[data-astro-cid-37fxchfa]{display:none}.footer[data-astro-cid-37fxchfa]{background:var(--footer-bg);color:var(--footer-text-dim);border-top:1px solid color-mix(in srgb,var(--footer-text) 14%,transparent);padding-block:.5rem}.footer[data-astro-cid-37fxchfa] [data-astro-cid-37fxchfa]:focus-visible{outline-color:var(--footer-text)}.footer-row[data-astro-cid-37fxchfa]{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 1.5rem;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase}.footer-row[data-astro-cid-37fxchfa] p[data-astro-cid-37fxchfa]{display:flex;align-items:center;min-height:44px;margin:0}.footer-links[data-astro-cid-37fxchfa]{display:flex;gap:1.25rem;list-style:none;margin:0;padding:0}.footer-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--footer-text-dim);transition:color var(--transition-base)}.footer-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--footer-text)}main[data-astro-cid-37fxchfa]{padding-top:var(--nav-height);min-height:calc(100vh - var(--nav-height))}@media(max-width:768px){.menu-toggle[data-astro-cid-37fxchfa]{display:flex;width:44px;height:44px;padding:10px;align-items:center;justify-content:center}.menu-toggle[data-astro-cid-37fxchfa]:before,.theme-toggle[data-astro-cid-37fxchfa]:before{display:none}.theme-toggle[data-astro-cid-37fxchfa]{width:44px;height:44px}.nav-actions[data-astro-cid-37fxchfa]{margin-left:auto}.nav-links[data-astro-cid-37fxchfa]{position:absolute;top:var(--nav-height);left:0;right:0;background:var(--color-bg);flex-direction:column;padding:1rem 1.75rem;gap:0;border-bottom:1px solid var(--color-border);display:none;align-items:stretch}.nav-links[data-astro-cid-37fxchfa].active{display:flex}.nav-links[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa]{border-bottom:1px solid var(--color-border)}.nav-links[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{display:flex;padding:.85rem 0;font-size:1rem;letter-spacing:.04em}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:after{display:none}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa].active{color:var(--color-ink);font-weight:700;box-shadow:inset 2px 0 0 var(--color-mark);padding-left:.75rem}.nav-links[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa]:last-child{border-bottom:none}.menu-toggle[data-astro-cid-37fxchfa].active span[data-astro-cid-37fxchfa]:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-toggle[data-astro-cid-37fxchfa].active span[data-astro-cid-37fxchfa]:nth-child(2){opacity:0}.menu-toggle[data-astro-cid-37fxchfa].active span[data-astro-cid-37fxchfa]:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}}
