@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-600.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-700.woff2) format("woff2");font-weight:700;font-display:swap}:root{--font-display: "Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "IBM Plex Mono", Menlo, monospace;--font-label: var(--font-mono);--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px;--border-width: 1px;--focus-width: 2px;--focus-ring: 3px;--shadow-card: 0 1px 2px rgba(15, 18, 22, .05), 0 12px 32px rgba(15, 18, 22, .08);--step--1: clamp(.82rem, .79rem + .15vw, .9rem);--step-0: clamp(1rem, .97rem + .18vw, 1.08rem);--step-1: clamp(1.25rem, 1.1rem + .5vw, 1.4rem);--step-2: clamp(1.6rem, 1.35rem + 1.1vw, 2.15rem);--step-3: clamp(2.35rem, 1.8rem + 2.6vw, 3.4rem);--step-4: clamp(2.6rem, 1.6rem + 4.2vw, 4.6rem);--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-display: 700;--leading-display: 1;--leading-tight: 1.08;--leading-snug: 1.4;--leading-normal: 1.65;--tracking-tight: -.015em;--tracking-normal: 0;--tracking-wide: .12em;--duration-fast: .15s;--duration-base: .2s;--ease: cubic-bezier(.2, 0, .2, 1);--lift: -2px;--neutral-0: #ffffff;--neutral-50: #faf8f6;--neutral-100: #f2efeb;--neutral-200: #e6e1db;--neutral-300: #cbc3ba;--neutral-500: #817a72;--neutral-700: #403b36;--neutral-900: #1c1917;--coral-50: #fff1ec;--coral-100: #ffddd1;--coral-500: #ff7a59;--coral-600: #ef5f3c;--coral-700: #c9472a;--teal-50: #e6f6f3;--teal-500: #19a394;--teal-700: #0e7a6e;--amber-50: #fff5e4;--amber-500: #f59e0b;--amber-700: #b45309;--green-50: #e7f6ee;--green-600: #0f9d58;--c-ink: var(--neutral-900);--c-ink-soft: var(--neutral-700);--c-muted: var(--neutral-500);--c-paper: var(--neutral-0);--c-surface: var(--neutral-0);--c-line: var(--neutral-100);--c-line-strong: var(--neutral-200);--c-accent: var(--coral-600);--c-accent-strong: var(--coral-700);--c-accent-tint: var(--coral-50);--c-accent-2: var(--teal-700);--c-accent-3: var(--coral-500);--c-on-accent: var(--neutral-0);--c-results-bg: var(--neutral-900);--c-results-text: var(--neutral-50);--c-results-muted: var(--neutral-300);--c-selection: var(--coral-100);--color-text: var(--c-ink);--color-text-soft: var(--c-ink-soft);--color-text-muted: var(--c-muted);--color-emphasis: var(--coral-700);--color-highlight: var(--coral-500);--color-highlight-tint: var(--coral-50);--color-info: var(--teal-500);--color-info-tint: var(--teal-50);--color-success: var(--green-600);--color-success-tint: var(--green-50);--color-warning: var(--amber-700);--color-bg: var(--c-paper);--color-surface: var(--c-surface);--color-surface-muted: var(--neutral-50);--color-border: var(--c-line);--color-border-strong: var(--c-line-strong);--color-header-bg: color-mix(in srgb, var(--c-paper) 85%, transparent);--color-brand: var(--c-accent);--color-brand-strong: var(--c-accent-strong);--color-brand-tint: var(--c-accent-tint);--color-brand-2: var(--c-accent-2);--color-danger: var(--clay-700);--color-on-brand: var(--c-on-accent);--color-link: var(--c-accent-strong);--color-focus: var(--c-accent);--color-selection: var(--c-selection);--color-footer-bg: var(--c-ink);--color-footer-text: var(--c-paper);--color-footer-muted: var(--c-results-muted);--color-footer-rule: var(--c-ink-soft);--color-chip-bg: transparent;--color-chip-border: var(--c-line-strong);--color-chip-active-bg: var(--c-ink);--color-chip-active-fg: var(--c-paper);--input-bg: var(--c-surface);--input-border: var(--c-line-strong);--input-radius: var(--radius-sm);--input-pad-y: var(--space-xs);--input-pad-x: var(--space-sm);--calc-controls-bg: var(--c-surface);--calc-results-bg: var(--c-results-bg);--calc-results-text: var(--c-results-text);--calc-results-muted: var(--c-results-muted);--btn-radius: var(--radius-pill);--btn-pad-y: var(--space-xs);--btn-pad-x: var(--space-md);--btn-font: var(--step-0);--btn-weight: var(--weight-semibold);--btn-primary-bg: var(--color-brand-strong);--btn-hover-bg: var(--color-text);--btn-primary-fg: var(--color-on-brand);--btn-ghost-fg: var(--color-text);--btn-ghost-border: var(--color-border-strong);--measure: 68ch;--container: 1400px;--gutter: clamp(1rem, .5rem + 2vw, 2.5rem);--card-min: 17rem;--z-header: 10}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip;scroll-behavior:smooth;accent-color:var(--color-brand);scrollbar-color:var(--color-border-strong) transparent}body{min-height:100vh;font-family:var(--font-body);font-size:var(--step-0);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--color-selection);color:var(--color-emphasis)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:3px solid var(--color-bg);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}input,textarea{caret-color:var(--color-brand)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text);text-wrap:balance}h1{font-size:var(--step-3);line-height:var(--leading-display)}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}h4,h5,h6,p,ul,ol,blockquote{font-size:var(--step-0)}small{font-size:var(--step--1)}a{color:var(--color-link);text-decoration-thickness:var(--border-width);text-underline-offset:.15em}a:hover{text-decoration:none}strong,b{font-weight:var(--weight-bold)}code,pre,kbd,samp{font-family:var(--font-mono);font-size:var(--step--1)}img,picture,svg,video,canvas{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.layout-main{padding-block:var(--space-lg) var(--space-2xl)}.layout-main>*+*{margin-top:var(--space-2xl)}.prose{max-width:var(--measure);margin-inline:auto}.prose>*+*{margin-top:var(--space-md)}.prose h2{margin-top:var(--space-xl)}.prose h3{margin-top:var(--space-lg)}.prose ul,.prose ol{padding-left:var(--space-md)}.prose blockquote{padding-left:var(--space-md);border-left:var(--border-width) solid var(--color-border-strong);color:var(--color-text-muted)}.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}.label{font-family:var(--font-mono);font-size:var(--step--1);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);padding:var(--btn-pad-y) var(--btn-pad-x);font-family:var(--font-body);font-size:var(--btn-font);font-weight:var(--btn-weight);line-height:1.2;text-decoration:none;color:var(--btn-primary-fg);background:var(--btn-primary-bg);border:var(--border-width) solid transparent;border-radius:var(--btn-radius);cursor:pointer;transition:background var(--duration-base) var(--ease),transform var(--duration-fast) var(--ease),box-shadow var(--duration-base) var(--ease)}.btn:hover{background:var(--btn-hover-bg);transform:translateY(var(--lift));box-shadow:0 6px 18px color-mix(in srgb,var(--color-brand) 35%,transparent)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn--ghost{color:var(--btn-ghost-fg);background:transparent;border-color:var(--btn-ghost-border);box-shadow:none}.btn--ghost:hover{background:var(--color-surface-muted);color:var(--color-text);box-shadow:none}.text-button{display:inline;padding:0;font:inherit;font-weight:var(--weight-medium);color:var(--color-link);background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:.18em;text-decoration-color:color-mix(in srgb,var(--color-link) 40%,transparent)}.text-button:hover{text-decoration-color:currentColor}.site-header{position:sticky;top:0;z-index:var(--z-header);background:var(--color-header-bg);backdrop-filter:saturate(1.3) blur(10px);border-bottom:var(--border-width) solid var(--color-border)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-sm)}.brand{display:inline-flex;align-items:center;gap:var(--space-2xs);font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-1);letter-spacing:var(--tracking-tight);color:var(--color-text);text-decoration:none}.brand img{width:1.9rem;height:1.9rem}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md)}.nav a{position:relative;font-size:var(--step-0);font-weight:var(--weight-medium);color:var(--color-text-soft);text-decoration:none;padding-block:var(--space-3xs)}.nav a:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--color-brand);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-base) var(--ease)}.nav a:hover{color:var(--color-text)}.nav a:hover:after,.nav a[aria-current=page]:after{transform:scaleX(1)}.nav a[aria-current=page]{color:var(--color-emphasis)}.nav-mobile{display:none;position:relative}.nav-mobile__btn{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;color:var(--color-text);border-radius:var(--radius-md);cursor:pointer;list-style:none}.nav-mobile__btn::-webkit-details-marker{display:none}.nav-mobile__btn svg{width:1.6rem;height:1.6rem}.nav-mobile__btn:hover{background:var(--color-surface-muted)}.nav-mobile__close,.nav-mobile[open] .nav-mobile__open{display:none}.nav-mobile[open] .nav-mobile__close{display:block}.nav-mobile__panel{position:absolute;top:calc(100% + var(--space-2xs));right:0;min-width:14rem;display:grid;gap:var(--space-3xs);padding:var(--space-2xs);background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);z-index:var(--z-header)}.nav-mobile__panel a{padding:var(--space-xs) var(--space-sm);font-weight:var(--weight-medium);color:var(--color-text-soft);text-decoration:none;border-radius:var(--radius-sm)}.nav-mobile__panel a:hover{background:var(--color-surface-muted);color:var(--color-text)}.nav-mobile__panel a[aria-current=page]{color:var(--color-emphasis);background:var(--color-brand-tint)}@media(max-width:52rem){.nav{display:none}.nav-mobile{display:block}}.site-footer{margin-top:var(--space-2xl);background:var(--color-footer-bg);color:var(--color-footer-text);padding-block:var(--space-lg)}.site-footer a{color:var(--color-footer-text);text-decoration:none}.site-footer a:hover{color:color-mix(in srgb,var(--color-footer-text) 70%,var(--color-brand))}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);align-items:start}.footer-brand-col{grid-column:1 / -1}@media(min-width:40rem){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md) var(--space-lg)}}@media(min-width:68rem){.footer-grid{grid-template-columns:1.6fr repeat(5,minmax(0,1fr))}.footer-brand-col{grid-column:auto}}.site-footer .brand{color:var(--color-footer-text)}.footer-tagline{margin-top:var(--space-xs);color:var(--color-footer-muted);max-width:34ch}.footer-col h2{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-footer-muted);margin-bottom:var(--space-xs)}.footer-col ul{list-style:none;padding:0;display:grid;gap:var(--space-2xs)}.footer-legal{margin-top:var(--space-md);padding-top:var(--space-md);border-top:var(--border-width) solid var(--color-footer-rule);color:var(--color-footer-muted);font-size:var(--step--1)}.tool-top{position:relative;display:grid;justify-items:center;gap:var(--space-xl);padding-top:var(--space-lg)}.tool-top:before{content:"";position:absolute;inset:-4rem 0 auto;height:36rem;background:radial-gradient(55rem 24rem at 50% 0%,var(--color-brand-tint) 0%,transparent 72%),radial-gradient(34rem 18rem at 82% 8%,var(--color-info-tint) 0%,transparent 72%);z-index:-1;pointer-events:none}.hero{max-width:52rem;text-align:center}.hero h1{font-size:var(--step-4);letter-spacing:var(--tracking-tight)}.hero h1 .accent{color:var(--color-emphasis)}.hero__lede{margin:var(--space-md) auto 0;max-width:44ch;font-size:var(--step-1);line-height:var(--leading-snug);color:var(--color-text-soft)}.trust{margin:var(--space-lg) 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-xs) var(--space-md)}.trust li{display:inline-flex;align-items:center;gap:var(--space-2xs);font-size:var(--step--1);font-weight:var(--weight-medium);color:var(--color-text-soft)}.trust svg{width:1.05rem;height:1.05rem;color:var(--color-brand);flex:none}.tool-stage{width:100%}.tool-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:clamp(var(--space-md),2vw,var(--space-lg))}.tool-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}.tool-main{order:2;display:grid;gap:var(--space-md);align-content:start}.tool-side{order:1;display:grid;gap:0;align-content:start}@media(min-width:48rem){.tool-grid{grid-template-columns:minmax(0,1fr) minmax(17rem,20rem);gap:var(--space-lg)}.tool-main{order:1}.tool-side{order:2}}.mini-steps{list-style:none;padding:0;margin:0 0 var(--space-lg);display:grid;gap:var(--space-md);counter-reset:step}.mini-steps li{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-sm);align-items:start}.mini-steps li:before{counter-increment:step;content:counter(step);display:grid;place-items:center;width:1.75rem;height:1.75rem;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-0);color:var(--color-on-brand);background:var(--color-brand);border-radius:var(--radius-pill)}.mini-steps h3{font-family:var(--font-body);font-weight:var(--weight-semibold);font-size:var(--step-0);line-height:1.75rem}.mini-steps p{grid-column:2;margin-top:var(--space-3xs);color:var(--color-text-soft);font-size:var(--step--1)}.field{display:grid;gap:var(--space-2xs);margin-bottom:var(--space-md)}.field>span:first-child{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}.input,select.input{width:100%;padding:var(--input-pad-y) var(--input-pad-x);background:var(--input-bg);border:var(--border-width) solid var(--input-border);border-radius:var(--input-radius);color:var(--color-text);transition:border-color var(--duration-base) var(--ease)}.input:focus-visible,select.input:focus-visible{border-color:var(--color-brand)}.input[type=file]{padding:var(--space-2xs);cursor:pointer}.input[type=file]::file-selector-button{margin-right:var(--space-sm);padding:var(--space-2xs) var(--space-sm);font:inherit;font-weight:var(--weight-semibold);color:var(--color-on-brand);background:var(--color-brand-strong);border:0;border-radius:var(--radius-pill);cursor:pointer}.input[type=file]::file-selector-button:hover{background:var(--color-text)}.input[type=range]{padding:0;accent-color:var(--color-brand)}.range-row{display:flex;align-items:center;gap:var(--space-sm)}.range-row output{font-family:var(--font-mono);font-size:var(--step--1);color:var(--color-text-soft);min-width:3ch;text-align:right}.check{display:inline-flex;align-items:center;gap:var(--space-2xs);font-size:var(--step--1);color:var(--color-text-soft);cursor:pointer}.check input{accent-color:var(--color-brand)}.tool-note{margin-top:var(--space-2xs);font-size:var(--step--1);color:var(--color-text-muted)}.tool-subheading{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.tool-error{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);font-size:var(--step--1);color:var(--color-warning);background:var(--color-highlight-tint);border-radius:var(--radius-sm)}.tool-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-top:var(--space-md)}.uploader{margin-bottom:var(--space-sm)}.uploader__drop{display:grid;justify-items:center;gap:var(--space-2xs);padding:var(--space-lg) var(--space-md);text-align:center;cursor:pointer;background:var(--color-surface-muted);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-base) var(--ease),background var(--duration-base) var(--ease)}.uploader__drop:hover{border-color:var(--color-brand);background:var(--color-brand-tint)}.uploader input:focus-visible+.uploader__drop{outline:var(--focus-width) solid var(--color-focus);outline-offset:2px}.uploader__icon{width:2.25rem;height:2.25rem;padding:var(--space-2xs);color:var(--color-on-brand);background:var(--color-brand);border-radius:var(--radius-pill)}.uploader__title{font-weight:var(--weight-semibold);color:var(--color-text);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uploader__hint{font-size:var(--step--1);color:var(--color-text-muted)}.uploader__drop.is-set{border-style:solid;border-color:var(--color-brand);background:var(--color-brand-tint)}.preview{position:relative;display:grid;place-items:center;width:100%;min-height:24rem;padding:var(--space-lg);background:radial-gradient(circle at 1px 1px,var(--color-border-strong) 1px,transparent 0) 0 0 / 14px 14px,var(--color-surface-muted);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}@media(min-width:62rem){.preview{aspect-ratio:4 / 3;max-height:34rem}}.preview canvas{max-height:26rem;width:auto;border-radius:var(--radius-sm);filter:drop-shadow(0 6px 18px color-mix(in srgb,var(--color-text) 14%,transparent))}.preview--page{aspect-ratio:auto;max-height:none}@media(min-width:62rem){.preview--page{aspect-ratio:auto;max-height:none}}.preview--page canvas{max-width:100%;height:auto;max-height:34rem}.uploader--compact{margin-bottom:var(--space-2xs)}.uploader--compact .uploader__drop{padding:var(--space-sm)}.preview__empty{display:grid;justify-items:center;gap:var(--space-sm);color:var(--color-text-muted);text-align:center;max-width:26ch}.preview__empty .paw-art{width:8.5rem;height:auto;color:var(--color-brand);opacity:.9}.preview__badge{position:absolute;top:var(--space-sm);left:var(--space-sm);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-surface) 80%,transparent);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-sm)}.preview.is-busy canvas,.preview.is-busy .preview__empty{opacity:.4;transition:opacity var(--duration-base) var(--ease)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);max-width:60rem;margin-inline:auto}@media(max-width:44rem){.steps{grid-template-columns:1fr;gap:var(--space-md)}}.steps li{list-style:none;position:relative;padding-top:var(--space-md)}.steps li:before{content:counter(step,decimal-leading-zero);counter-increment:step;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-2);color:var(--color-brand);letter-spacing:var(--tracking-tight)}.steps{counter-reset:step;padding:0}.steps li h3{margin-top:var(--space-2xs);font-family:var(--font-display);font-size:var(--step-1)}.steps li p{margin-top:var(--space-2xs);color:var(--color-text-soft);font-size:var(--step-0)}.steps li:not(:last-child):after{content:"";position:absolute;top:var(--space-md);left:2.6rem;right:calc(-1 * var(--space-lg));height:var(--border-width);background:var(--color-border-strong)}@media(max-width:44rem){.steps li:not(:last-child):after{display:none}}.section-head{max-width:var(--measure);margin-inline:auto;margin-bottom:var(--space-lg)}.section-head h2{font-size:var(--step-2)}.section-head p{margin-top:var(--space-xs);color:var(--color-text-soft)}.grid-section>.section-head{max-width:none;margin-bottom:var(--space-md);text-align:center}.grid-section>.section-head p{max-width:var(--measure);margin-inline:auto}.card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}@media(min-width:34rem){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.card{display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:transform var(--duration-base) var(--ease),border-color var(--duration-base) var(--ease),box-shadow var(--duration-base) var(--ease)}.card:hover{transform:translateY(var(--lift));border-color:var(--color-brand);box-shadow:var(--shadow-card)}.card__body{padding:var(--space-md)}.card h3{font-family:var(--font-display);font-size:var(--step-1)}.card p{margin-top:var(--space-2xs);color:var(--color-text-muted);font-size:var(--step--1)}.ph-img{display:grid;place-content:center;gap:var(--space-2xs);text-align:center;padding:var(--space-lg);background:radial-gradient(circle at 1px 1px,var(--color-border-strong) 1px,transparent 0) 0 0 / 16px 16px,var(--color-surface-muted);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md)}.ph-img--wide{aspect-ratio:16 / 9}.ph-img--photo{aspect-ratio:4 / 3}.ph-img--square{aspect-ratio:1 / 1}.ph-img--tall{aspect-ratio:3 / 4}.ph-img__hint{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted)}.ph-img__label{font-weight:var(--weight-semibold);color:var(--color-text-soft);max-width:42ch;margin-inline:auto}.ph-img--compact{overflow:hidden;padding:var(--space-xs);border:0;border-bottom:var(--border-width) solid var(--color-border-strong);border-radius:0}.ph-img--compact .ph-img__label{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;font-size:var(--step--1);font-weight:var(--weight-medium)}.ph-img--real{display:block;overflow:hidden;padding:0;border:0;background:none}.ph-img--real img{width:100%;height:100%;object-fit:cover}.ph-img--real.ph-img--compact{border-bottom:var(--border-width) solid var(--color-border-strong)}.capture{margin-block:var(--space-sm) var(--space-md);max-width:34rem}.capture__form{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.capture__form .input{flex:1 1 15rem}.capture__form .btn{flex:none}.capture__note{margin-top:var(--space-2xs);font-size:var(--step--1);color:var(--color-text-muted)}.capture__done{padding:var(--space-md) var(--space-lg);background:var(--color-success-tint);border-radius:var(--radius-md)}.capture__done h3{font-family:var(--font-display)}.capture__done p{margin-top:var(--space-2xs);color:var(--color-text-soft)}.guide{max-width:var(--measure);margin-inline:auto}.guide__head{margin-bottom:var(--space-lg)}.guide__head h1{font-size:var(--step-3)}.guide__lede{margin-top:var(--space-md);font-size:var(--step-1);line-height:var(--leading-snug);color:var(--color-text-soft)}.guide__hero{margin-bottom:var(--space-lg)}.page-cols__main>*+*{margin-top:var(--space-2xl)}.page-cols--sidebar .guide,.page-cols--sidebar .prose,.page-cols--sidebar .faq,.page-cols--sidebar .note-band{max-width:none}.side{display:none}@media(min-width:68rem){.page-cols--sidebar{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:var(--space-xl);align-items:start}.side{display:grid;gap:var(--space-md)}}.side__head{margin-bottom:var(--space-sm)}.side__title{font-size:var(--step-2);line-height:var(--step-3)}.side__lede{margin-top:var(--space-md);font-size:var(--step-1);line-height:var(--leading-snug);color:var(--color-text-soft)}.side .aff-card{padding:var(--space-sm)}.side .aff-card__cta{flex-direction:column}.side .aff-card__cta .btn{width:100%}.prose a:not(.btn){color:var(--color-link);text-decoration-color:color-mix(in srgb,var(--color-link) 40%,transparent)}.prose h2{font-size:var(--step-2)}.prose .btn{text-decoration:none}.aff-card{display:flex;flex-direction:column;gap:var(--space-2xs);padding:var(--space-md);background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md)}.aff-card__name{font-family:var(--font-display);font-size:var(--step-1)}.aff-card__blurb{color:var(--color-text-soft);font-size:var(--step--1)}.aff-card__cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-sm);margin-top:auto;padding-top:var(--space-xs)}.aff-card__cta .btn{white-space:nowrap}.aff-card__disclosure{font-size:var(--step--1);color:var(--color-text-muted)}.aff-note{margin-top:var(--space-md);text-align:center;font-size:var(--step--1);color:var(--color-text-muted)}.faq{max-width:var(--measure);margin-inline:auto}.faq>h2{font-size:var(--step-2);margin-bottom:var(--space-sm)}.faq details{border-top:var(--border-width) solid var(--color-border-strong);padding-block:var(--space-sm)}.faq details:last-child{border-bottom:var(--border-width) solid var(--color-border-strong)}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--step-1);cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--color-emphasis);font-weight:var(--weight-regular);transition:transform var(--duration-base) var(--ease)}.faq details[open] summary:after{transform:rotate(45deg)}.faq p{margin-top:var(--space-xs);color:var(--color-text-soft);max-width:62ch}.quote-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-md);margin-block:var(--space-md)}.quote{margin:0;padding:var(--space-lg);background:var(--color-surface-muted);border-radius:var(--radius-md)}.quote blockquote{font-family:var(--font-display);font-size:var(--step-1);line-height:var(--leading-snug);color:var(--color-text)}.quote blockquote:before{content:"“";color:var(--color-emphasis)}.quote blockquote:after{content:"”";color:var(--color-emphasis)}.quote figcaption{margin-top:var(--space-sm);font-size:var(--step--1);color:var(--color-text-muted)}.note-band{margin:var(--space-lg) auto 0;padding:var(--space-md) var(--space-lg);background:var(--color-info-tint);border-radius:var(--radius-md);color:var(--color-text-soft);max-width:var(--measure)}@media(prefers-reduced-motion:no-preference){.reveal{animation:reveal .7s var(--ease) both}.reveal-2{animation:reveal .7s var(--ease) .08s both}.reveal-3{animation:reveal .7s var(--ease) .16s both}@keyframes reveal{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}}
