:root{--bg:#f6f6f4;--surface:#fff;--text:#1d1d1f;--muted:#5f6368;--line:#e4e4e0;--brand:#000;--accent:#1b6fd8;--accent-ink:#0f4fa3;--code-bg:#fff8e1;--code-line:#e0a800;--radius:12px;--shadow:0 1px 2px #0000000a, 0 4px 16px #0000000d;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SFMono-Regular", "Roboto Mono", Menlo, Consolas, monospace;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:1rem}body{background:var(--bg);color:var(--text);font:17px/1.65 var(--font);margin:0;overflow-x:hidden}img{max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:2px}a:hover{color:var(--accent-ink)}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}.wrap--narrow{width:min(760px,100% - 32px)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{z-index:10;background:#fff;padding:.5rem 1rem;top:1rem;left:1rem}.site-header{background:var(--brand);color:#fff;z-index:5;position:relative}.site-header__inner{justify-content:space-between;align-items:center;min-height:64px;display:flex}.site-logo img{width:180px;height:auto;display:block}.nav-menu summary{cursor:pointer;align-items:center;gap:.5rem;padding:.5rem .25rem;font-size:.95rem;list-style:none;display:flex}.nav-menu summary::-webkit-details-marker{display:none}.nav-menu__icon,.nav-menu__icon:before,.nav-menu__icon:after{background:currentColor;width:18px;height:2px;display:block;position:relative}.nav-menu__icon:before,.nav-menu__icon:after{content:"";position:absolute}.nav-menu__icon:before{top:-6px}.nav-menu__icon:after{top:6px}.nav-menu nav ul{margin:0;padding:.5rem 0;list-style:none}.nav-menu nav a{color:#fff;padding:.6rem 1rem;text-decoration:none;display:block}.nav-menu nav a:hover,.nav-menu nav a[aria-current=page]{background:#ffffff1a}@media (width<=899px){.nav-menu nav{background:var(--brand);border-top:1px solid #ffffff1f;position:absolute;top:100%;left:0;right:0}}@media (width>=900px){.nav-menu summary{display:none}.nav-menu nav,.nav-menu:not([open])>nav{display:block}.nav-menu nav ul{gap:.25rem;padding:0;display:flex}.nav-menu nav a{border-radius:8px;padding:.45rem .8rem;font-size:.95rem}details.nav-menu:not([open])>:not(summary){display:block}details.nav-menu::details-content{content-visibility:visible;display:contents}}.nav-dropdown summary{cursor:pointer;color:#fff;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:1rem;list-style:none;display:flex}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown summary:after{content:"";border-bottom:2px solid;border-right:2px solid;width:.45em;height:.45em;transition:transform .15s;transform:translateY(-25%)rotate(45deg)}.nav-dropdown details[open]>summary:after{transform:translateY(15%)rotate(-135deg)}.nav-dropdown summary:hover,.nav-dropdown summary[aria-current=page]{background:#ffffff1a}.nav-menu nav .nav-dropdown ul{padding:0 0 .25rem 1rem;display:block}@media (width>=900px){.nav-dropdown{position:relative}.nav-dropdown summary{border-radius:8px;padding:.45rem .8rem;font-size:.95rem}.nav-menu nav .nav-dropdown ul{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:190px;padding:.4rem;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #00000026}.nav-menu nav .nav-dropdown ul a{color:var(--text);border-radius:6px;padding:.5rem .75rem}.nav-menu nav .nav-dropdown ul a:hover,.nav-menu nav .nav-dropdown ul a[aria-current=page]{background:var(--bg)}}.hero{padding:2.5rem 0 1rem}.hero h1,.listing-header h1{letter-spacing:-.01em;margin:0 0 .5rem;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.2}.hero p,.listing-header p{color:var(--muted);max-width:60ch;margin:0}.listing-header{padding:2.5rem 0 1rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.25rem;margin:1.5rem 0 2.5rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000000d,0 10px 28px #00000014}.card__media{aspect-ratio:40/21;border-bottom:1px solid var(--line);background:#fff;justify-content:center;align-items:center;display:flex}.card__media img{object-fit:contain;width:100%;height:100%;padding:1rem 1.5rem}.card__placeholder{color:var(--line);font-size:3rem;font-weight:800}.card__body{flex-direction:column;flex:1;gap:.4rem;padding:1rem 1.25rem 1.25rem;display:flex}.card__cat{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.75rem;font-weight:700;text-decoration:none}.card__title{margin:0;font-size:1.15rem;line-height:1.3}.card__title a{color:var(--text);text-decoration:none}.card__title a:hover{color:var(--accent)}.card__excerpt{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.95rem;display:-webkit-box;overflow:hidden}.card__more{margin-top:auto;padding-top:.5rem;font-size:.95rem;font-weight:600;text-decoration:none}.pagination{justify-content:space-between;align-items:center;gap:1rem;margin:0 0 3rem;display:flex}.pagination a{background:var(--brand);color:#fff;border-radius:8px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none}.pagination__status{color:var(--muted);font-size:.9rem}.entry{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:2rem;margin-bottom:2.5rem;padding:clamp(1.25rem,4vw,2.75rem)}.breadcrumbs{color:var(--muted);margin-bottom:.5rem;font-size:.85rem}.breadcrumbs a{color:var(--muted)}.entry__header h1{letter-spacing:-.015em;margin:0 0 .5rem;font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.15}.entry__meta{color:var(--muted);margin:0;font-size:.9rem}.entry__image{border:1px solid var(--line);border-radius:var(--radius);background:#fff;justify-content:center;margin:1.5rem 0 .5rem;padding:1rem;display:flex}.entry__image img{object-fit:contain;width:auto;max-height:260px}.entry__disclosure{border-top:1px solid var(--line);color:var(--muted);margin-top:2rem;padding-top:1rem;font-size:.85rem}.prose>:first-child{margin-top:1.5rem}.prose h2{letter-spacing:-.01em;margin:2.25rem 0 .75rem;font-size:1.55rem;line-height:1.25}.prose h3{margin:1.75rem 0 .5rem;font-size:1.2rem}.prose h4{margin:1.5rem 0 .5rem;font-size:1.05rem}.prose p,.prose ul,.prose ol{margin:0 0 1rem}.prose li{margin:.25rem 0}.prose img{border-radius:8px;margin:1.5rem auto;display:block}.prose table{border-collapse:collapse;width:100%;margin:1.5rem 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.55rem .75rem}.prose th{background:#fafaf8}.prose blockquote{border-left:4px solid var(--line);color:var(--muted);margin:1.5rem 0;padding:.5rem 1rem}.code-box{background:var(--code-bg);border:2px dashed var(--code-line);border-radius:var(--radius);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem .9rem;margin:1.5rem 0;padding:1.1rem 1.25rem;display:flex}.code-box__label{font-weight:700}.code-box__code{font-family:var(--mono);font-variant-numeric:slashed-zero;letter-spacing:.18em;border:1px solid var(--line);user-select:all;background:#fff;border-radius:8px;padding:.3rem .4rem .3rem .6rem;font-size:1.35rem;font-weight:700}.code-box__copy{font:600 .9rem var(--font);background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:.55rem 1rem}.code-box__copy:hover{background:#333}.cta{text-align:center;margin:1.75rem 0}.btn{background:var(--brand);border-radius:10px;padding:.9rem 1.6rem;font-weight:700;text-decoration:none;display:inline-block;box-shadow:0 2px 8px #00000026;color:#fff!important}.btn:hover{background:#2b2b2b}.toc{border:1px solid var(--line);border-radius:var(--radius);background:#fafaf8;margin:1.75rem 0}.toc summary{cursor:pointer;padding:.8rem 1.1rem;font-weight:700}.toc ol{margin:0;padding:0 1.1rem 1rem 2.4rem;font-size:.95rem}.toc__item--h3{margin-left:1rem;list-style:circle}.faq{border-top:1px solid var(--line);margin:1.5rem 0}.faq__item{border-bottom:1px solid var(--line)}.faq__item summary{cursor:pointer;padding:.9rem 2rem .9rem 0;font-weight:650;list-style:none;position:relative}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary:after{content:"+";color:var(--muted);font-size:1.3rem;position:absolute;top:.7rem;right:.25rem}.faq__item[open] summary:after{content:"−"}.faq__answer{padding:0 0 .75rem}.faq__answer>:last-child{margin-bottom:0}.related h2{margin:0;font-size:1.4rem}.site-footer{background:var(--brand);color:#cfcfcf;padding:2.5rem 0;font-size:.9rem}.site-footer__links{flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:1rem;display:flex}.site-footer a{color:#fff}.site-footer__disclosure{max-width:70ch}.site-footer__copy{color:#9a9a9a;margin-bottom:0}.contact__intro{max-width:680px;padding:2.5rem 0 1.5rem}.contact__intro h1{margin:0 0 .6rem;font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.15}.contact__intro p{color:var(--muted);margin:0;font-size:1.05rem}.contact__grid{align-items:start;gap:1.5rem;display:grid}@media (width>=900px){.contact__grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}.contact__card,.help-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.25rem,4vw,2rem)}.contact__card h2,.help-card h2{margin:0 0 1rem;font-size:1.25rem}.contact__aside{gap:1.5rem;display:grid}.help-card--muted{box-shadow:none;background:#fafaf8}.help-card p{margin:0}.help-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.help-list li{border-left:3px solid var(--code-line);gap:.15rem;padding-left:1rem;display:grid}.help-list span{color:var(--muted);font-size:.95rem}.contact-form{gap:1rem;display:grid}.field{gap:.35rem;display:grid}.field label{font-size:.95rem;font-weight:600}.field__hint{color:var(--muted);font-weight:400}.field input,.field select,.field textarea{font:inherit;width:100%;color:var(--text);background:#fff;border:1px solid #cfcfca;border-radius:8px;padding:.7rem .8rem;font-size:1rem}.field textarea{resize:vertical;min-height:9rem}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.field--trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.cf-turnstile{min-height:65px}.contact-form__privacy{color:var(--muted);margin:0;font-size:.85rem}.contact-form__submit{cursor:pointer;font:inherit;border:0;justify-self:start;font-weight:700}.contact-form__submit:disabled{opacity:.6;cursor:progress}.contact-form__status{min-height:1.5em;margin:0;font-weight:600}.contact-form__status.is-error{color:#b42318}.contact-form__done h2{margin-top:0}.contact__faq{max-width:760px;margin:2.5rem 0 3rem}.contact__faq h2{margin:0 0 .5rem;font-size:1.4rem}
