.ha-short-answer{padding:var(--ha-space-lg);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-xl);background:var(--ha-color-surface);box-shadow:var(--ha-shadow-lg);color:var(--ha-color-ink)}.ha-short-answer__eyebrow{margin:0 0 var(--ha-space-md);font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-sm);font-weight:var(--ha-font-weight-semibold);line-height:var(--ha-line-height-tight);letter-spacing:.08em;text-transform:uppercase;color:var(--ha-color-accent-cta)}.ha-short-answer__cards{gap:var(--ha-space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,16.25rem),1fr));margin:0;padding:0;list-style:none;display:grid}.ha-short-answer__card{padding:var(--ha-space-lg);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg)}.ha-short-answer__title{margin:0 0 var(--ha-space-xs);font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-lg);font-weight:var(--ha-font-weight-semibold);line-height:var(--ha-line-height-tight);color:var(--ha-color-ink)}.ha-short-answer__card p{color:var(--ha-color-ink-muted);margin:0;font-size:.9375rem}.ha-short-answer a{color:var(--ha-color-primary)}.blog-article__body{color:var(--ha-color-ink);font-size:1.0625rem;line-height:1.6}.blog-article__body h2,.blog-article__body h3,.blog-article__body h4{font-family:var(--ha-font-family-heading);font-weight:var(--ha-font-weight-semibold);line-height:var(--ha-line-height-tight);color:var(--ha-color-ink);margin-block:var(--ha-space-xl) var(--ha-space-sm);scroll-margin-top:5rem}.blog-article__body h2{font-size:clamp(1.625rem,1.25rem + 1.5vw,2rem);font-weight:var(--ha-font-weight-bold);letter-spacing:-.01em;margin-block:var(--ha-space-xxxl) var(--ha-space-md);line-height:1.2}.blog-article__body h3{font-size:1.1875rem;line-height:1.3}.blog-article__body h4{font-size:var(--ha-font-size-base)}.blog-article__body h2:first-child,.blog-article__body h3:first-child{margin-top:0}.blog-article__body p{margin-block:var(--ha-space-md)}.blog-article__body .ha-eyebrow{margin-block:var(--ha-space-xxxl) var(--ha-space-sm);font-family:var(--ha-font-family-heading);font-size:.8125rem;font-weight:var(--ha-font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--ha-color-accent-cta)}.blog-article__body .ha-eyebrow:first-child,.blog-article__body .ha-eyebrow+h2{margin-top:0}.blog-article__body .ha-footnote{color:var(--ha-color-ink-subtle);font-size:.8125rem;font-style:normal}.blog-article__body ul,.blog-article__body ol{margin-block:var(--ha-space-md);gap:var(--ha-space-xs);flex-direction:column;padding-left:1.25rem;display:flex}.blog-article__body ul ul,.blog-article__body ol ol,.blog-article__body ul ol,.blog-article__body ol ul{margin-block:var(--ha-space-xs)}.blog-article__body a{color:var(--ha-color-primary);text-decoration:underline}.blog-article__body a:hover,.blog-article__body a:focus-visible{color:var(--ha-color-primary-hover)}.blog-article__body blockquote{margin-block:var(--ha-space-lg);padding:var(--ha-space-sm) var(--ha-space-lg);border-left:4px solid var(--ha-color-primary);color:var(--ha-color-ink-muted);font-style:italic}.blog-article__body code{font-family:var(--ha-font-family-mono);background:var(--ha-color-surface-sunken);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-sm);padding:.1em .35em;font-size:.9em}.blog-article__body pre code{font-size:inherit;background:0 0;border:0;border-radius:0;padding:0}.blog-article__body hr{margin-block:var(--ha-space-xl);border:0;border-top:1px solid var(--ha-color-border)}.blog-article__body img{max-width:100%;height:auto}.blog-article__body table{border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg);border-collapse:collapse;width:fit-content;max-width:100%;margin-block:1.25rem;font-size:.9375rem;display:block;overflow-x:auto}.blog-article__body th,.blog-article__body td{border:0;border-top:1px solid var(--ha-color-border);padding:.875rem var(--ha-space-md);text-align:left;vertical-align:top}.blog-article__body thead th{background:var(--ha-color-surface-sunken);font-weight:var(--ha-font-weight-semibold);border-top:0}.blog-article__body pre{margin-block:var(--ha-space-lg);padding:var(--ha-space-md) var(--ha-space-lg);border-radius:var(--ha-radius-lg);font-family:var(--ha-font-family-mono);font-size:var(--ha-font-size-sm);line-height:1.7;overflow-x:auto}.blog-article__body .download-button{min-height:2.75rem;padding:var(--ha-space-sm) var(--ha-space-lg);border-radius:var(--ha-radius-lg);background:var(--ha-color-accent-cta);color:var(--ha-color-white);font-weight:var(--ha-font-weight-semibold);font-size:var(--ha-font-size-base);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.blog-article__body .download-button:hover,.blog-article__body .download-button:focus-visible{color:var(--ha-color-white)}.blog-article__body .download-button:hover{background:var(--ha-color-accent-cta-hover)}.blog-article__body .download-button:active{background:var(--ha-color-accent-cta-active)}.blog-article__body .callout{margin-block:var(--ha-space-lg);padding:var(--ha-space-md) var(--ha-space-lg);border-left:4px solid var(--callout-accent);border-radius:var(--ha-radius-lg);background:var(--callout-tint);color:var(--ha-color-ink)}.blog-article__body .callout__label{margin:0 0 var(--ha-space-xs);font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-sm);font-weight:var(--ha-font-weight-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--callout-accent)}.blog-article__body .callout>:last-child{margin-bottom:0}.blog-article__body .callout--note{--callout-accent:var(--ha-color-info);--callout-tint:var(--ha-color-info-surface)}.blog-article__body .callout--tip{--callout-accent:var(--ha-color-success);--callout-tint:var(--ha-color-success-surface)}.blog-article__body .callout--warning{--callout-accent:var(--ha-color-warning);--callout-tint:var(--ha-color-warning-surface)}.blog-article__body .callout--important{--callout-accent:var(--ha-color-primary-strong);--callout-tint:var(--ha-color-surface-alt)}.blog-article__body .cta-inline{gap:var(--ha-space-md) var(--ha-space-lg);margin-block:var(--ha-space-xxl);padding:var(--ha-space-lg);border-radius:var(--ha-radius-xl);background:var(--ha-color-surface-inverse);color:var(--ha-color-ink-inverse);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.blog-article__body .cta-inline-content{flex:16rem}.blog-article__body .cta-inline .cta-heading{font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-lg);font-weight:var(--ha-font-weight-bold);line-height:var(--ha-line-height-tight);color:var(--ha-color-ink-inverse);margin:0}.blog-article__body .cta-inline-action{flex-shrink:0}.blog-article__body .cta-btn-inline{min-height:2.75rem;padding:var(--ha-space-sm) var(--ha-space-lg);border-radius:var(--ha-radius-lg);background:var(--ha-color-accent-cta);color:var(--ha-color-white);font-size:var(--ha-font-size-base);font-weight:var(--ha-font-weight-semibold);white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.blog-article__body .cta-btn-inline:hover,.blog-article__body .cta-btn-inline:focus-visible{color:var(--ha-color-white)}.blog-article__body .cta-btn-inline:hover{background:var(--ha-color-accent-cta-hover)}.blog-article__body .cta-btn-inline:active{background:var(--ha-color-accent-cta-active)}.blog-article__body .ha-howto,.blog-article__body .ha-checklist{counter-reset:ha-howto-step;margin-block:1.25rem}.blog-article__body .ha-howto h3,.blog-article__body .ha-checklist h3{counter-increment:ha-howto-step;min-height:2.25rem;padding:calc((2.25rem - 1lh) / 2) 0 0 calc(2.25rem + var(--ha-space-md));margin:var(--ha-space-md) 0 0;font-family:var(--ha-font-family-base);font-size:inherit;font-weight:var(--ha-font-weight-semibold);line-height:inherit;letter-spacing:normal;position:relative}.blog-article__body .ha-howto h3:before,.blog-article__body .ha-checklist h3:before{content:counter(ha-howto-step);border-radius:var(--ha-radius-lg);background:var(--ha-color-surface-inverse);width:2.25rem;height:2.25rem;color:var(--ha-color-ink-inverse);font-family:var(--ha-font-family-heading);font-size:inherit;font-weight:var(--ha-font-weight-semibold);place-items:center;line-height:1;display:grid;position:absolute;top:0;left:0}.blog-article__body .ha-howto h3~:is(p,ul,ol),.blog-article__body .ha-checklist h3~:is(p,ul,ol){margin-block:var(--ha-space-xxs) 0;margin-left:calc(2.25rem + var(--ha-space-md));color:var(--ha-color-ink-muted);font-size:.9375rem}.blog-article__body .ha-howto>ol,.blog-article__body .ha-checklist>ol{counter-reset:ha-howto-item;gap:var(--ha-space-md);padding-left:0;list-style:none}.blog-article__body .ha-howto>ol>li,.blog-article__body .ha-checklist>ol>li{counter-increment:ha-howto-item;min-height:2.25rem;padding:calc((2.25rem - 1lh) / 2) 0 0 calc(2.25rem + var(--ha-space-md));position:relative}.blog-article__body .ha-howto>ol>li:before,.blog-article__body .ha-checklist>ol>li:before{content:counter(ha-howto-item);border-radius:var(--ha-radius-lg);background:var(--ha-color-surface-inverse);width:2.25rem;height:2.25rem;color:var(--ha-color-ink-inverse);font-family:var(--ha-font-family-heading);font-size:inherit;font-weight:var(--ha-font-weight-semibold);place-items:center;line-height:1;display:grid;position:absolute;top:0;left:0}.blog-article__body .ha-howto>:last-child,.blog-article__body .ha-checklist>:last-child{margin-bottom:0}.blog-article__body .ha-compare,.blog-article__body .ha-cost{margin:1.25rem 0}.blog-article__body .ha-compare__scroll,.blog-article__body .ha-cost__scroll{border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg);overflow-x:auto}.blog-article__body .ha-compare__table,.blog-article__body .ha-cost__table{border:0;border-radius:0;width:100%;min-width:40rem;max-width:none;margin:0;display:table;overflow:visible}.blog-article__body .ha-compare__table th[scope=row],.blog-article__body .ha-cost__table th[scope=row]{font-weight:var(--ha-font-weight-medium)}.blog-article__body .ha-cost__table .ha-cost__total>:is(th,td){border-top:2px solid var(--ha-color-ink);padding:var(--ha-space-md);background:var(--ha-color-surface-sunken);font-weight:var(--ha-font-weight-bold)}.blog-article__body .ha-cost__table .ha-cost__total>td,.blog-article__body .ha-cost__table .ha-cost__total>td :is(strong,b){font-family:var(--ha-font-family-heading);font-size:1.375rem;font-weight:var(--ha-font-weight-medium)}.blog-article__body .ha-compare__table .ha-compare__col--highlight,.blog-article__body .ha-cost__table .ha-cost__col--highlight{color:var(--ha-color-accent-cta)}.blog-article__body .ha-compare__source,.blog-article__body .ha-cost__source{color:var(--ha-color-ink-subtle);margin-top:1.25rem;font-size:.8125rem}.blog-article__body .ha-chat-mock,.blog-article__body .ha-code-panel,.blog-article__body .ha-promo{background:var(--ha-color-surface-inverse);color:var(--ha-color-ink-inverse-muted)}.blog-article__body .ha-chat-mock h2,.blog-article__body .ha-chat-mock h3,.blog-article__body .ha-code-panel h2,.blog-article__body .ha-code-panel h3,.blog-article__body .ha-chat-mock a,.blog-article__body .ha-code-panel a{color:var(--ha-color-ink-inverse)}.blog-article__body .ha-chat-mock a:hover,.blog-article__body .ha-code-panel a:hover{color:var(--ha-color-accent-soft)}.blog-article__body .ha-chat-mock :not(pre)>code,.blog-article__body .ha-code-panel :not(pre)>code{background:var(--ha-color-surface-glass);border-color:var(--ha-color-border-glass);color:var(--ha-color-ink-inverse)}.blog-article__body :is(.ha-chat-mock,.ha-code-panel) .ha-eyebrow{color:var(--ha-color-accent-soft)}.blog-article__body .ha-price{white-space:nowrap;font-variant-numeric:tabular-nums}.blog-article__body td .ha-price,.blog-article__body td :is(strong,b):has(.ha-price){font-weight:var(--ha-font-weight-medium)}.blog-article__body .ha-price-cards{margin-block:var(--ha-space-xl)}.blog-article__body .ha-price-cards__list{gap:var(--ha-space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,11.25rem),1fr));margin:0;padding:0;list-style:none;display:grid}.blog-article__body .ha-price-card{gap:var(--ha-space-xxs);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg);background:var(--ha-color-surface);flex-direction:column;padding:1.25rem;display:flex}.blog-article__body .ha-price-card:has(>a){padding:0}.blog-article__body .ha-price-cards .ha-price-card>a{gap:var(--ha-space-xxs);border-radius:inherit;min-height:2.75rem;color:inherit;flex-direction:column;padding:1.25rem;text-decoration:none;display:flex}.blog-article__body .ha-price-cards .ha-price-card>a:hover,.blog-article__body .ha-price-cards .ha-price-card>a:focus-visible{color:inherit;background:var(--ha-color-surface-sunken)}.blog-article__body .ha-price-card__label{font-size:var(--ha-font-size-sm);font-weight:var(--ha-font-weight-normal);color:var(--ha-color-ink-muted);margin:0;line-height:1.6}.blog-article__body .ha-price-card__price{font-family:var(--ha-font-family-heading);font-size:1.75rem;font-weight:var(--ha-font-weight-medium);color:var(--ha-color-ink);margin:0;line-height:1.6}.blog-article__body .ha-price-card__period{font-size:.9375rem;font-weight:var(--ha-font-weight-medium);color:var(--ha-color-ink-muted)}.blog-article__body .ha-price--coming-soon+.ha-price-card__period{display:none}.blog-article__body .ha-price-cards__note{color:var(--ha-color-ink-muted);margin:1.25rem 0 0;font-size:.9375rem}.blog-article__body .ha-chat-mock{margin-block:var(--ha-space-xxl);padding:var(--ha-space-xl) var(--ha-space-lg);border-radius:var(--ha-radius-xl)}.blog-article__body .ha-chat-mock h2{margin-top:0}.blog-article__body .ha-chat-mock__eyebrow,.blog-article__body .ha-code-panel__title{margin:0 0 var(--ha-space-sm);font-family:var(--ha-font-family-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ha-color-accent-soft);font-size:.8125rem}.blog-article__body .ha-chat-mock__chat{margin:var(--ha-space-lg) 0;border:1px solid var(--ha-color-border-glass);border-radius:var(--ha-radius-xl);background:var(--ha-grey-900);flex-direction:column;gap:.875rem;padding:1.375rem;display:flex}.blog-article__body .ha-chat-mock__user{max-width:85%;padding:var(--ha-space-sm) var(--ha-space-md);border-radius:var(--ha-radius-xl) var(--ha-radius-xl) var(--ha-radius-sm) var(--ha-radius-xl);background:var(--ha-color-border-glass);color:var(--ha-color-ink-inverse);align-self:flex-end;font-size:.9375rem}.blog-article__body .ha-chat-mock__user p,.blog-article__body .ha-chat-mock__reply p{margin:0}.blog-article__body .ha-chat-mock__tool{font-family:var(--ha-font-family-mono);overflow-wrap:anywhere;color:var(--ha-color-ink-inverse-muted);margin:0;font-size:.8125rem}.blog-article__body .ha-chat-mock .ha-chat-mock__tool code{font-size:inherit;color:inherit;background:0 0;border:0;padding:0}.blog-article__body .ha-chat-mock__reply{color:var(--ha-color-ink-inverse);font-size:.9375rem}.blog-article__body .ha-chat-mock__caption{color:var(--ha-color-ink-inverse-muted);font-size:.75rem}.blog-article__body .ha-chat-mock__chips{gap:var(--ha-space-xs);margin:var(--ha-space-lg) 0 0;flex-flow:wrap;padding:0;list-style:none}.blog-article__body .ha-chat-mock .ha-chat-mock__chips>li{padding:var(--ha-space-xxs) var(--ha-space-sm);border:1px solid var(--ha-color-border-glass);border-radius:var(--ha-radius-pill);background:var(--ha-color-surface-glass);font-size:var(--ha-font-size-sm);color:var(--ha-color-ink-inverse-muted)}.blog-article__body .ha-benefits{gap:var(--ha-space-md);margin-block:var(--ha-space-xl);grid-template-columns:repeat(auto-fit,minmax(min(100%,13.75rem),1fr));padding:0;list-style:none;display:grid}.blog-article__body .ha-benefits__card{border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg);padding:1.375rem}.blog-article__body .ha-benefits__icon{width:1.75rem;height:1.75rem;color:var(--ha-color-accent-cta);display:inline-flex}.blog-article__body .ha-benefits__icon svg{width:100%;height:100%}.blog-article__body .ha-benefits__title{font-size:1.1875rem;font-weight:var(--ha-font-weight-semibold);margin:.625rem 0}.blog-article__body .ha-benefits__card p{color:var(--ha-color-ink-muted);margin:0;font-size:.9375rem}.blog-article__body .ha-chat-mock .ha-benefits__card{border-color:var(--ha-color-border-glass)}.blog-article__body .ha-chat-mock .ha-benefits__icon{color:var(--ha-color-accent-soft)}.blog-article__body .ha-chat-mock .ha-benefits__title{color:var(--ha-color-ink-inverse)}.blog-article__body .ha-chat-mock .ha-benefits__card p{color:var(--ha-color-ink-inverse-muted)}.blog-article__body .ha-code-panel{margin-block:var(--ha-space-xl);padding:var(--ha-space-lg);border-radius:var(--ha-radius-lg);font-size:var(--ha-font-size-sm)}.blog-article__body .ha-code-panel>:last-child{margin-bottom:0}.blog-article__body .ha-code-panel pre.astro-code{margin-block:var(--ha-space-sm);border-radius:0;padding:0;background-color:#0000!important}.blog-article__body .ha-panel{margin-block:var(--ha-space-xl);padding:var(--ha-space-lg);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-xl);background:var(--ha-color-surface-sunken)}.blog-article__body .ha-panel h2{margin-top:0;font-size:1.625rem}.blog-article__body .ha-panel>:last-child{margin-bottom:0}.blog-article__body .ha-promo{gap:var(--ha-space-md);margin-block:var(--ha-space-xl);border-radius:var(--ha-radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;padding:1.125rem 1.375rem;display:flex}.blog-article__body .ha-promo__text{font-weight:var(--ha-font-weight-semibold);color:var(--ha-color-ink-inverse);flex:16rem;margin:0}.blog-article__body .ha-promo__code{margin-inline:var(--ha-space-xxs);padding:var(--ha-space-xxs) var(--ha-space-xs);border:1px dashed var(--ha-color-accent-soft);border-radius:var(--ha-radius-md);background:var(--ha-color-surface-glass);font-size:var(--ha-font-size-sm);letter-spacing:.04em;color:var(--ha-color-ink-inverse);display:inline-block}.blog-article__body .ha-promo__button{min-height:2.75rem;padding:var(--ha-space-sm) var(--ha-space-lg);border-radius:var(--ha-radius-lg);background:var(--ha-color-accent-cta);color:var(--ha-color-white);font-weight:var(--ha-font-weight-semibold);white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.blog-article__body .ha-promo__button:hover,.blog-article__body .ha-promo__button:focus-visible{color:var(--ha-color-white)}.blog-article__body .ha-promo__button:hover{background:var(--ha-color-accent-cta-hover)}.blog-article__body .ha-promo__button:active{background:var(--ha-color-accent-cta-active)}.blog-article__body .ha-faq{margin-block:var(--ha-space-xl);border-top:1px solid var(--ha-color-border)}.blog-article__body .ha-faq .faq-item{border-bottom:1px solid var(--ha-color-border)}@supports (interpolate-size:allow-keywords){@media (prefers-reduced-motion:no-preference){.blog-article__body .ha-faq .faq-item{interpolate-size:allow-keywords}.blog-article__body .ha-faq .faq-item::details-content{height:0;transition:height .3s ease, content-visibility .3s ease allow-discrete;overflow:hidden}.blog-article__body .ha-faq .faq-item[open]::details-content{height:auto}}}.blog-article__body .ha-faq .faq-question{align-items:center;gap:var(--ha-space-md);min-height:2.75rem;padding-block:var(--ha-space-md);font-family:var(--ha-font-family-base);font-size:inherit;font-weight:var(--ha-font-weight-semibold);line-height:inherit;color:var(--ha-color-ink);cursor:pointer;background-color:#0000;padding-inline:0;list-style:none;display:flex}.blog-article__body .ha-faq .faq-question::-webkit-details-marker{display:none}.blog-article__body .ha-faq .faq-question-text{flex:auto}.blog-article__body .ha-faq .faq-indicator{color:var(--ha-color-accent-cta);flex:none;display:inline-flex}.blog-article__body .ha-faq .faq-icon{display:block}.blog-article__body .ha-faq .faq-icon-minus,.blog-article__body .ha-faq .faq-item[open]>.faq-question .faq-icon-plus{display:none}.blog-article__body .ha-faq .faq-item[open]>.faq-question .faq-icon-minus{display:block}.blog-article__body .ha-faq .faq-answer{padding-block:0 var(--ha-space-md);color:var(--ha-color-ink-muted);padding-inline:0}.blog-article__body .ha-faq .faq-answer p{margin-block:0 var(--ha-space-sm)}.blog-article__body .ha-faq .faq-answer>:last-child{margin-bottom:0}.blog-article__body .ha-faq .faq-answer ul,.blog-article__body .ha-faq .faq-answer ol{font-size:var(--ha-font-size-sm);margin-block:0;padding-inline-start:var(--ha-space-lg)}.blog-article__body .ha-faq .faq-answer li{margin-block:var(--ha-space-xxs)}.blog-article__body .ha-howto>:first-child,.blog-article__body .ha-checklist>:first-child{margin-top:0}:is(.blog-article__body,.ha-short-answer) :is(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--ha-color-primary);outline-offset:2px}.blog-article__body :is(.cta-inline,.ha-chat-mock,.ha-code-panel,.ha-promo) :is(a,button,summary,[tabindex]):focus-visible{outline-color:var(--ha-color-focus-ring)}@media (prefers-reduced-motion:no-preference){.blog-article__body .download-button,.blog-article__body .cta-btn-inline,.blog-article__body .ha-promo__button,.blog-article__body .ha-price-cards .ha-price-card>a{transition:background var(--ha-motion-fast), color var(--ha-motion-fast)}}@media (width>=62rem){.blog-article__body .ha-faq .faq-question,.blog-article__body .ha-faq .faq-answer{padding-inline:var(--ha-space-md)}.blog-article__body .cta-inline{padding:var(--ha-space-xl)}.blog-article__body .ha-panel{padding:1.75rem}.blog-article__body .ha-chat-mock{padding:2.25rem var(--ha-space-xl)}.ha-short-answer{padding:var(--ha-space-xl)}}.blog-tag-pills[data-astro-cid-3ugefph3]{gap:var(--ha-space-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.blog-tag-pill[data-astro-cid-3ugefph3]{padding:var(--ha-space-xxs) .625rem;border:1px solid var(--ha-color-border-glass);border-radius:var(--ha-radius-pill);font-family:var(--ha-font-family-mono);font-size:.75rem;line-height:var(--ha-line-height-base);letter-spacing:.02em;color:var(--ha-color-ink-inverse-muted);background:0 0}.blog-tag-pill--emphasis[data-astro-cid-3ugefph3]{border-color:var(--ha-color-accent-soft);background:var(--ha-color-surface-glass);font-weight:var(--ha-font-weight-semibold);color:var(--ha-color-ink-inverse)}.blog-post-header[data-astro-cid-q7jyj2q5]{padding-block:calc(var(--ha-space-xxl) + 3.5rem) var(--ha-space-xxxl);background:var(--ha-color-surface-inverse);color:var(--ha-color-ink-inverse)}.blog-post-header__inner[data-astro-cid-q7jyj2q5]{gap:var(--ha-space-lg);max-width:68rem;padding-inline:var(--ha-space-lg);flex-direction:column;margin-inline:auto;display:flex}.blog-post-header__crumbs[data-astro-cid-q7jyj2q5]{align-items:center;gap:var(--ha-space-xs);font-size:var(--ha-font-size-sm);color:var(--ha-color-ink-inverse-muted);flex-wrap:wrap;margin:0;padding:0;line-height:1.6;list-style:none;display:flex}.blog-post-header__crumb[data-astro-cid-q7jyj2q5]{align-items:center;gap:var(--ha-space-xs);display:flex}.blog-post-header__crumb[data-astro-cid-q7jyj2q5]:not(:first-child):before{content:"/";color:var(--ha-color-ink-inverse-muted)}.blog-post-header__crumb[data-astro-cid-q7jyj2q5] a[data-astro-cid-q7jyj2q5]{min-height:1.5rem;color:var(--ha-color-ink-inverse-muted);text-underline-offset:.2em;align-items:center;text-decoration:underline #0000;display:inline-flex}.blog-post-header__crumb[data-astro-cid-q7jyj2q5] a[data-astro-cid-q7jyj2q5]:hover{color:var(--ha-color-ink-inverse);text-decoration-color:currentColor}.blog-post-header__title[data-astro-cid-q7jyj2q5]{max-width:55rem;font-family:var(--ha-font-family-heading);font-size:clamp(2.2rem,5vw,3.6rem);font-weight:var(--ha-font-weight-bold);letter-spacing:-.02em;color:var(--ha-color-ink-inverse);overflow-wrap:break-word;margin:0;line-height:1.08}.blog-post-header__dek[data-astro-cid-q7jyj2q5]{max-width:45rem;font-family:var(--ha-font-family-base);font-size:var(--ha-font-size-lg);font-weight:var(--ha-font-weight-normal);color:var(--ha-color-ink-inverse-muted);margin:0;line-height:1.6}.blog-post-header__meta[data-astro-cid-q7jyj2q5]{align-items:center;gap:var(--ha-space-xs) var(--ha-space-md);font-size:var(--ha-font-size-sm);color:var(--ha-color-ink-inverse-muted);flex-wrap:wrap;margin:0;padding:0;line-height:1.6;list-style:none;display:flex}.blog-post-header__meta-item[data-astro-cid-q7jyj2q5]{align-items:center;gap:var(--ha-space-md);display:inline-flex}.blog-post-header__meta-item[data-astro-cid-q7jyj2q5]+.blog-post-header__meta-item[data-astro-cid-q7jyj2q5]:before{content:"";border-radius:var(--ha-radius-full);background:currentColor;width:4px;height:4px}.blog-post-header__author[data-astro-cid-q7jyj2q5]{min-height:1.5rem;color:var(--ha-color-ink-inverse);text-decoration:underline;text-decoration-color:var(--ha-color-border-glass);text-underline-offset:.2em;align-items:center;display:inline-flex}.blog-post-header__author[data-astro-cid-q7jyj2q5]:hover{text-decoration-color:currentColor}.blog-post-header[data-astro-cid-q7jyj2q5] a[data-astro-cid-q7jyj2q5]:focus-visible{outline:2px solid var(--ha-color-focus-ring);outline-offset:2px}@media (width>=62rem){.blog-post-header[data-astro-cid-q7jyj2q5]{padding-block:8rem 5.5rem}}.blog-summary[data-astro-cid-zco6ontr]{margin-top:calc(-1 * var(--ha-space-lg));position:relative}.blog-summary--edge[data-astro-cid-zco6ontr]{height:var(--ha-space-lg);border-radius:var(--ha-radius-xl) var(--ha-radius-xl) 0 0;background:var(--ha-color-surface)}@media (width>=62rem){.blog-summary[data-astro-cid-zco6ontr]{margin-top:calc(-1 * var(--ha-space-xxl))}.blog-summary--edge[data-astro-cid-zco6ontr]{height:var(--ha-space-xxl)}}.blog-post-toc__mobile[data-astro-cid-c5y67aal]{padding:var(--ha-space-xs) var(--ha-space-lg);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-lg);background:var(--ha-color-surface-sunken)}.blog-post-toc__summary[data-astro-cid-c5y67aal]{min-height:2.75rem;font-size:var(--ha-font-size-base);font-weight:var(--ha-font-weight-semibold);color:var(--ha-color-ink);cursor:pointer;align-items:center;display:flex}.blog-post-toc__rail[data-astro-cid-c5y67aal]{display:none}.blog-post-toc__title[data-astro-cid-c5y67aal]{font-size:var(--ha-font-size-sm);font-weight:var(--ha-font-weight-semibold);color:var(--ha-color-ink);margin:0 0 .625rem;line-height:1.6}.blog-post-toc__list[data-astro-cid-c5y67aal]{margin:0;padding:0;list-style:none}.blog-post-toc__mobile[data-astro-cid-c5y67aal] .blog-post-toc__list[data-astro-cid-c5y67aal]{padding-block-end:var(--ha-space-sm)}.blog-post-toc__link[data-astro-cid-c5y67aal]{color:var(--ha-color-ink-muted);font-size:var(--ha-font-size-sm);text-decoration:none}.blog-post-toc__mobile[data-astro-cid-c5y67aal] .blog-post-toc__link[data-astro-cid-c5y67aal]{align-items:center;min-height:2.75rem;line-height:1.35;display:flex}.blog-post-toc__rail[data-astro-cid-c5y67aal] .blog-post-toc__list[data-astro-cid-c5y67aal]{flex-direction:column;gap:.625rem;display:flex}.blog-post-toc__rail[data-astro-cid-c5y67aal] .blog-post-toc__link[data-astro-cid-c5y67aal]{line-height:1.6;display:block}@media (prefers-reduced-motion:no-preference){.blog-post-toc__link[data-astro-cid-c5y67aal]{transition:color .15s}}.blog-post-toc__link[data-astro-cid-c5y67aal]:hover{color:var(--ha-color-primary);text-decoration:underline}.blog-post-toc__link[data-astro-cid-c5y67aal][aria-current=location]{font-weight:var(--ha-font-weight-semibold);color:var(--ha-color-primary)}.blog-post-toc__summary[data-astro-cid-c5y67aal]:focus-visible,.blog-post-toc__link[data-astro-cid-c5y67aal]:focus-visible{outline:2px solid var(--ha-color-primary);outline-offset:2px}@media (width>=62rem){.blog-post-toc[data-astro-cid-c5y67aal]{max-height:calc(100vh - 6rem);padding:var(--ha-space-xxs);align-self:start;position:sticky;top:5rem;overflow-y:auto}.blog-post-toc__mobile[data-astro-cid-c5y67aal]{display:none}.blog-post-toc__rail[data-astro-cid-c5y67aal]{display:block}}.author-box[data-astro-cid-g27h6hd7]{gap:var(--ha-space-md);margin-top:var(--ha-space-xxl);padding:var(--ha-space-xl);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-xl);background:var(--ha-color-surface-sunken);flex-direction:column;scroll-margin-top:5rem;display:flex}.author-box__identity[data-astro-cid-g27h6hd7]{align-items:center;gap:var(--ha-space-md);display:flex}.author-box__avatar[data-astro-cid-g27h6hd7]{border-radius:var(--ha-radius-full);object-fit:cover;flex:none;width:54px;height:54px}.author-box__avatar--monogram[data-astro-cid-g27h6hd7]{background:var(--ha-color-surface-brand-tint);color:var(--ha-color-primary);font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-lg);font-weight:var(--ha-font-weight-semibold);justify-content:center;align-items:center;display:inline-flex}.author-box__role[data-astro-cid-g27h6hd7]{font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-sm);font-weight:var(--ha-font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--ha-color-ink-subtle);margin:0}.author-box__name[data-astro-cid-g27h6hd7]{font-family:var(--ha-font-family-heading);font-size:var(--ha-font-size-lg);font-weight:var(--ha-font-weight-bold);color:var(--ha-color-ink);margin:0}.author-box__bio[data-astro-cid-g27h6hd7]{line-height:var(--ha-line-height-base);color:var(--ha-color-ink-muted);margin:0}.blog-share[data-astro-cid-k7tkqyzr]{align-items:center;gap:var(--ha-space-sm);flex-wrap:wrap;display:flex}.blog-share__btn[data-astro-cid-k7tkqyzr]{justify-content:center;align-items:center;gap:var(--ha-space-xs);min-width:2.75rem;min-height:2.75rem;padding:0 var(--ha-space-sm);border:1px solid var(--ha-color-border);border-radius:var(--ha-radius-pill);background:var(--ha-color-surface);color:var(--ha-color-ink-muted);font-size:var(--ha-font-size-sm);cursor:pointer;line-height:1;text-decoration:none;display:inline-flex}.blog-share__btn[data-astro-cid-k7tkqyzr]:hover{border-color:var(--ha-color-primary);color:var(--ha-color-primary)}.blog-share__btn[data-astro-cid-k7tkqyzr]:focus-visible{outline:2px solid var(--ha-color-primary);outline-offset:2px}.blog-share__btn[data-astro-cid-k7tkqyzr] svg[data-astro-cid-k7tkqyzr]{flex:none;width:1.25rem;height:1.25rem;display:block}.blog-share__copy[data-astro-cid-k7tkqyzr].is-copied{border-color:var(--ha-color-success);color:var(--ha-color-success)}@media (prefers-reduced-motion:no-preference){.blog-share__btn[data-astro-cid-k7tkqyzr]{transition:border-color .2s ease-in-out,color .2s ease-in-out}}@media (width>=80rem){.blog-share[data-astro-cid-k7tkqyzr]{flex-flow:column;position:sticky;top:5rem}.blog-share__btn[data-astro-cid-k7tkqyzr]{border-radius:var(--ha-radius-full);width:2.75rem;padding:0}.blog-share__copy-label[data-astro-cid-k7tkqyzr]{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.blog-related-posts[data-astro-cid-rpbvjrsl]{gap:var(--ha-space-lg);flex-direction:column;display:flex}.blog-related-posts__heading[data-astro-cid-rpbvjrsl]{font-family:var(--ha-font-family-heading);font-size:2rem;font-weight:var(--ha-font-weight-bold);color:var(--ha-color-ink);margin:0;line-height:1.25}.blog-related-posts__list[data-astro-cid-rpbvjrsl]{gap:var(--ha-space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));margin:0;padding:0;list-style:none;display:grid}.blog-related-posts__item[data-astro-cid-rpbvjrsl]{min-width:0}.blog-related-posts__item[data-astro-cid-rpbvjrsl] .blog-card:focus-visible{outline:2px solid var(--ha-color-primary);outline-offset:2px}.blog-closing-cta[data-astro-cid-zkjw6wuy]{align-items:flex-start;gap:var(--ha-space-lg);padding:var(--ha-space-xl) var(--ha-space-lg);border-radius:var(--ha-radius-xl);background:var(--ha-color-surface-inverse);color:var(--ha-color-ink-inverse);flex-direction:column;display:flex}.blog-closing-cta__coupon[data-astro-cid-zkjw6wuy]{align-items:center;gap:var(--ha-space-sm);padding:var(--ha-space-sm) var(--ha-space-md);border:1px dashed var(--ha-color-accent-soft);border-radius:var(--ha-radius-lg);color:var(--ha-color-ink-inverse);flex-wrap:wrap;margin:0;display:flex}.blog-closing-cta__code[data-astro-cid-zkjw6wuy]{padding:var(--ha-space-xxs) var(--ha-space-xs);border-radius:var(--ha-radius-md);background:var(--ha-color-surface-glass);font-family:var(--ha-font-family-mono);font-size:var(--ha-font-size-base);letter-spacing:.04em;color:var(--ha-color-ink-inverse)}.blog-closing-cta__actions[data-astro-cid-zkjw6wuy]{gap:var(--ha-space-sm);flex-wrap:wrap;display:flex}.blog-closing-cta__button[data-astro-cid-zkjw6wuy]{border-radius:var(--ha-radius-lg);min-height:2.75rem;font-weight:var(--ha-font-weight-semibold);line-height:var(--ha-line-height-tight);text-align:center;border:1px solid #0000;justify-content:center;align-items:center;padding:.875rem 1.375rem;text-decoration:none;display:inline-flex}.blog-closing-cta__button--primary[data-astro-cid-zkjw6wuy]{background:var(--ha-color-accent-cta);color:var(--ha-color-ink-inverse)}.blog-closing-cta__button--primary[data-astro-cid-zkjw6wuy]:hover{background:var(--ha-color-accent-cta-hover)}.blog-closing-cta__button--primary[data-astro-cid-zkjw6wuy]:active{background:var(--ha-color-accent-cta-active)}.blog-closing-cta__button--secondary[data-astro-cid-zkjw6wuy]{border-color:var(--ha-grey-700);color:var(--ha-color-ink-inverse);background:0 0}.blog-closing-cta__button--secondary[data-astro-cid-zkjw6wuy]:hover{border-color:var(--ha-color-ink-inverse-muted)}.blog-closing-cta__link-row[data-astro-cid-zkjw6wuy]{font-size:var(--ha-font-size-sm);margin:0}.blog-closing-cta__link[data-astro-cid-zkjw6wuy]{min-height:1.5rem;color:var(--ha-color-ink-inverse);text-underline-offset:.2em;align-items:center;text-decoration:underline;display:inline-flex}.blog-closing-cta__link[data-astro-cid-zkjw6wuy]:hover{text-decoration-thickness:2px}.blog-closing-cta__button[data-astro-cid-zkjw6wuy]:focus-visible,.blog-closing-cta__link[data-astro-cid-zkjw6wuy]:focus-visible{outline:2px solid var(--ha-color-focus-ring);outline-offset:2px}@media (width>=62rem){.blog-closing-cta[data-astro-cid-zkjw6wuy]{padding:var(--ha-space-xxl) var(--ha-space-xl)}}.blog-closing-cta__content{gap:var(--ha-space-md);flex-direction:column;display:flex}.blog-closing-cta__content>*{margin:0}.blog-closing-cta__content h2{max-width:42.5rem;font-family:var(--ha-font-family-heading);font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:var(--ha-font-weight-bold);color:var(--ha-color-ink-inverse);line-height:1.15}.blog-closing-cta__content p{max-width:37.5rem;font-size:var(--ha-font-size-base);line-height:var(--ha-line-height-base);color:var(--ha-color-ink-inverse-muted)}.blog-closing-cta__content a{color:var(--ha-color-ink-inverse);text-underline-offset:.2em;text-decoration:underline}.blog-closing-cta__content a:hover{text-decoration-thickness:2px}.blog-closing-cta__content a:focus-visible{outline:2px solid var(--ha-color-focus-ring);outline-offset:2px}.blog-closing-cta__content code{font-family:var(--ha-font-family-mono);font-size:.9em}.blog-post[data-astro-cid-zch4vtdz]{max-width:68rem;padding-inline:var(--ha-space-lg);padding-bottom:var(--ha-space-xxxl);margin-inline:auto}.blog-post__grid[data-astro-cid-zch4vtdz]{row-gap:var(--ha-space-xl);grid-template-columns:minmax(0,1fr);grid-template-areas:"summary""toc""article""share""closing""related";display:grid}.blog-post__summary[data-astro-cid-zch4vtdz]{grid-area:summary}.blog-post__toc[data-astro-cid-zch4vtdz]{grid-area:toc}.blog-post__main[data-astro-cid-zch4vtdz]{grid-area:article;min-width:0}.blog-post__share[data-astro-cid-zch4vtdz]{grid-area:share}.blog-post__closing[data-astro-cid-zch4vtdz]{grid-area:closing}.blog-post__related[data-astro-cid-zch4vtdz]{grid-area:related}.blog-article__body[data-astro-cid-zch4vtdz]{overflow-x:auto}@media (width>=62rem){.blog-post__grid[data-astro-cid-zch4vtdz]{gap:4.5rem var(--ha-space-xxl);grid-template-columns:12.5rem minmax(0,1fr);grid-template-areas:"summary summary""toc article"".share""closing closing""related related"}.blog-post__share[data-astro-cid-zch4vtdz]{margin-top:calc(var(--ha-space-xl) - 4.5rem)}}@media (width>=80rem){.blog-post__grid[data-astro-cid-zch4vtdz]{grid-template-areas:"summary summary""toc article""closing closing""related related"}.blog-post__share[data-astro-cid-zch4vtdz]{grid-area:article;justify-self:end;width:2.75rem;margin-top:0;position:relative;inset-inline-start:calc(2.75rem + var(--ha-space-xl))}}
