.livestream-card:where(.astro-zjao5v42){--ls-accent:#e00b2d;--ls-upcoming:#f59e0b;aspect-ratio:16/9;color:#fff;background-color:#000;border:1px solid #2d3748;border-radius:12px;width:100%;text-decoration:none;display:none;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000059}.livestream-card:where(.astro-zjao5v42)[data-state=live],.livestream-card:where(.astro-zjao5v42)[data-state=upcoming],.livestream-card:where(.astro-zjao5v42)[data-state=past]{display:block}.livestream-card__media:where(.astro-zjao5v42){place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.livestream-card:where(.astro-zjao5v42) img:where(.astro-zjao5v42),.livestream-card:where(.astro-zjao5v42) iframe:where(.astro-zjao5v42){margin:0}.livestream-card__thumb:where(.astro-zjao5v42),.livestream-card__player:where(.astro-zjao5v42){object-fit:cover;border:0;grid-area:1/1;width:calc(100% + 4px);height:calc(100% + 4px);margin:0;display:none}.livestream-card__player:where(.astro-zjao5v42){pointer-events:none;height:300%}.livestream-card:where(.astro-zjao5v42)[data-state=upcoming] .livestream-card__thumb:where(.astro-zjao5v42),.livestream-card:where(.astro-zjao5v42)[data-state=past] .livestream-card__thumb:where(.astro-zjao5v42),.livestream-card:where(.astro-zjao5v42)[data-state=live][data-player=pending] .livestream-card__thumb:where(.astro-zjao5v42),.livestream-card:where(.astro-zjao5v42)[data-state=live][data-player=ready] .livestream-card__player:where(.astro-zjao5v42){display:block}.livestream-card__overlay:where(.astro-zjao5v42){pointer-events:none;background:linear-gradient(#0006 0%,#00000014 42%,#0009 72%,#000000eb 100%);flex-direction:column;justify-content:space-between;gap:.75rem;margin:0;padding:1rem;display:flex;position:absolute;inset:0}.livestream-card__status:where(.astro-zjao5v42){backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.03em;background:#0000008c;border-radius:999px;align-self:flex-end;align-items:center;gap:.4rem;margin:-.5rem -.5rem 0 0;padding:.25rem .55rem;font-size:.625rem;font-weight:700;display:inline-flex}.livestream-card__dot:where(.astro-zjao5v42){background:var(--ls-accent);border-radius:50%;width:.5rem;height:.5rem;display:none}.livestream-card:where(.astro-zjao5v42)[data-state=live] .livestream-card__dot:where(.astro-zjao5v42){animation:1.4s infinite livestream-pulse;display:inline-block}.livestream-card:where(.astro-zjao5v42)[data-state=upcoming] .livestream-card__dot:where(.astro-zjao5v42){background:var(--ls-upcoming);display:inline-block}.livestream-card__foot:where(.astro-zjao5v42){text-shadow:0 1px 3px #000000b3;flex-direction:column;display:flex}.livestream-card__title:where(.astro-zjao5v42){white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;line-height:1.3;overflow:hidden}.livestream-card__meta:where(.astro-zjao5v42){color:#c1c3c9;margin-top:.25rem;font-size:.8125rem}.livestream-card__meta:where(.astro-zjao5v42):empty{display:none}.livestream-card:where(.astro-zjao5v42):hover .livestream-card__title:where(.astro-zjao5v42),.livestream-card:where(.astro-zjao5v42):focus-visible .livestream-card__title:where(.astro-zjao5v42){text-decoration:underline}@media (prefers-reduced-motion:reduce){.livestream-card:where(.astro-zjao5v42)[data-state=live] .livestream-card__dot:where(.astro-zjao5v42){animation:none}}@keyframes livestream-pulse{0%{box-shadow:0 0 #e00b2db3}70%{box-shadow:0 0 0 .5rem #e00b2d00}to{box-shadow:0 0 #e00b2d00}}.hero:where(.astro-jwc6ryqg){background-image:url(/images/homepage/esphome-hero-bg.webp);background-position:50%;background-size:cover;flex-direction:column;min-height:75dvh;padding-bottom:1rem;display:flex;position:relative}@media (width>=1024px){.hero:where(.astro-jwc6ryqg){padding-bottom:2rem}}.hero:where(.astro-jwc6ryqg):before{content:"";pointer-events:none;opacity:.7;background-color:#000;width:100%;height:100%;position:absolute;inset:0}.hero:where(.astro-jwc6ryqg) .announcement-container:where(.astro-jwc6ryqg){width:100%;max-width:1200px;margin:2rem auto 1rem;padding:0 20px}@media (width>=1280px){.hero:where(.astro-jwc6ryqg) .announcement-container:where(.astro-jwc6ryqg){padding:0}}.hero:where(.astro-jwc6ryqg) .announcement-banner:where(.astro-jwc6ryqg){color:#fff;z-index:5;backdrop-filter:blur(5px);background-color:#ffffff13;border:1px solid #ffffff26;border-radius:.5rem;flex-flow:wrap;align-items:center;gap:1rem;width:100%;margin:0 auto;padding:.5rem 1rem;font-size:.875rem;display:flex}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .announcement-banner:where(.astro-jwc6ryqg){padding:.75rem 1rem;font-size:1rem}}@media (width>=900px){.hero:where(.astro-jwc6ryqg) .announcement-banner:where(.astro-jwc6ryqg){flex-wrap:nowrap}}.hero:where(.astro-jwc6ryqg) .announcement-banner:where(.astro-jwc6ryqg) a:where(.astro-jwc6ryqg){color:#b3c7ff;flex-shrink:0;margin:0;font-size:.875rem}.hero:where(.astro-jwc6ryqg) .announcement-banner:where(.astro-jwc6ryqg) a:where(.astro-jwc6ryqg):hover{color:#fff}.hero:where(.astro-jwc6ryqg) .container:where(.astro-jwc6ryqg){color:#fff;z-index:1;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:2rem;padding-top:3rem;padding-bottom:3rem;display:flex;position:relative}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .container:where(.astro-jwc6ryqg){flex-direction:row;justify-content:space-between;padding-top:3rem;padding-bottom:6rem}}.hero:where(.astro-jwc6ryqg) .content:where(.astro-jwc6ryqg){flex-direction:column;justify-content:center;align-items:flex-start;display:flex}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .content:where(.astro-jwc6ryqg){max-width:48%}}.hero:where(.astro-jwc6ryqg) .content:where(.astro-jwc6ryqg) h1:where(.astro-jwc6ryqg){color:#fff;margin-top:0;margin-bottom:1.5rem}.hero:where(.astro-jwc6ryqg) .content:where(.astro-jwc6ryqg) a:where(.astro-jwc6ryqg){margin-top:1.5rem}.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg){flex-direction:column;align-items:flex-end;gap:2rem;width:100%;display:flex}@media (width>=580px){.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg){flex-direction:row;align-items:stretch}}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg){flex-direction:column;align-items:flex-end}}.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .hero-livestream{width:100%}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .hero-livestream{width:360px;max-width:100%}}.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .card:where(.astro-jwc6ryqg){background-color:#23272e;border-color:#2d3748;flex-direction:column;gap:.75rem;width:100%;padding:1.25rem 1.5rem;display:flex}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .card:where(.astro-jwc6ryqg){max-width:260px}}.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .card__title:where(.astro-jwc6ryqg){color:#fff;margin:0;font-size:1rem}.hero:where(.astro-jwc6ryqg) .links:where(.astro-jwc6ryqg) .card__text-link:where(.astro-jwc6ryqg){color:#b3c7ff;margin:0;font-size:.875rem}.hero:where(.astro-jwc6ryqg) .marquee:where(.astro-jwc6ryqg){z-index:5;width:100%;max-width:1200px;margin:0 auto;padding:0 20px;position:relative;overflow:hidden}.hero:where(.astro-jwc6ryqg) .marquee__track:where(.astro-jwc6ryqg){grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=768px){.hero:where(.astro-jwc6ryqg) .marquee__track:where(.astro-jwc6ryqg){grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.hero:where(.astro-jwc6ryqg) .marquee__track:where(.astro-jwc6ryqg){grid-template-columns:repeat(4,1fr)}}.hero:where(.astro-jwc6ryqg) .item:where(.astro-jwc6ryqg){color:#c1c3c9;text-wrap:balance;text-align:center;flex-direction:column;align-items:center;font-size:.875rem;display:flex}@media (width>=768px){.hero:where(.astro-jwc6ryqg) .item:where(.astro-jwc6ryqg){text-align:left;align-items:flex-start}}.hero:where(.astro-jwc6ryqg) .item:where(.astro-jwc6ryqg) span:where(.astro-jwc6ryqg){color:#fff;font-size:1rem;font-weight:700}.icon-circle:where(.astro-ccg5yoga){--icon-circle-bg:var(--esphome-icon-background-color--transparent);background-color:var(--icon-circle-bg);width:30px;height:30px;color:var(--sl-color-text-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.icon-circle:where(.astro-ccg5yoga) svg{width:100%;max-width:14px;height:auto;max-height:14px}.how-esphome-works:where(.astro-4tynrgh6) .columns:where(.astro-4tynrgh6){flex-direction:column;gap:48px;margin:0 auto;display:flex}@media (width>=768px){.how-esphome-works:where(.astro-4tynrgh6) .columns:where(.astro-4tynrgh6){flex-direction:row}.how-esphome-works:where(.astro-4tynrgh6) .content:where(.astro-4tynrgh6),.how-esphome-works:where(.astro-4tynrgh6) .cards:where(.astro-4tynrgh6){flex-basis:50%}}@media (width>=1024px){.how-esphome-works:where(.astro-4tynrgh6) .content:where(.astro-4tynrgh6),.how-esphome-works:where(.astro-4tynrgh6) .cards:where(.astro-4tynrgh6){flex-basis:55%}}.how-esphome-works:where(.astro-4tynrgh6) .content:where(.astro-4tynrgh6) .starlight-aside__title{display:none}.how-esphome-works:where(.astro-4tynrgh6) .content:where(.astro-4tynrgh6) .starlight-aside__content{margin-top:0}.how-esphome-works:where(.astro-4tynrgh6) .cards:where(.astro-4tynrgh6){flex-direction:column;gap:.75rem;display:flex}@media (width>=1024px){.how-esphome-works:where(.astro-4tynrgh6) .cards:where(.astro-4tynrgh6){flex-basis:45%}}.how-esphome-works:where(.astro-4tynrgh6) .card:where(.astro-4tynrgh6){flex-direction:column;padding:1.25rem 1.75rem;display:flex}.how-esphome-works:where(.astro-4tynrgh6) .card__title--icon-row:where(.astro-4tynrgh6){align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;& .swiper-slide,& .swiper-cube-shadow{transform-style:preserve-3d}}.swiper-css-mode{&>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto;&::-webkit-scrollbar{display:none}}&>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{&>.swiper-wrapper{scroll-snap-type:x mandatory}&>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}&>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{&>.swiper-wrapper{scroll-snap-type:y mandatory}&>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}&>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{&>.swiper-wrapper{scroll-snap-type:none}&>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{&>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}&>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{&>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}&>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{&>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}&>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}}}.swiper-3d{& .swiper-slide-shadow,& .swiper-slide-shadow-left,& .swiper-slide-shadow-right,& .swiper-slide-shadow-top,& .swiper-slide-shadow-bottom,& .swiper-slide-shadow,& .swiper-slide-shadow-left,& .swiper-slide-shadow-right,& .swiper-slide-shadow-top,& .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}& .swiper-slide-shadow{background:#00000026}& .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}& .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}& .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}& .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible{& .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode{& .swiper-wrapper:after{content:"";pointer-events:none;position:absolute;top:0;left:0}}.swiper-virtual.swiper-css-mode.swiper-horizontal{& .swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}}.swiper-virtual.swiper-css-mode.swiper-vertical{& .swiper-wrapper:after{width:1px;height:var(--swiper-virtual-size)}}:root{--swiper-navigation-size:44px}.swiper-button-prev,.swiper-button-next{width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;color:var(--swiper-navigation-color,var(--swiper-theme-color));justify-content:center;align-items:center;display:flex;position:absolute;&.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}&.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled &{display:none!important}& ::slotted(svg),& svg{object-fit:contain;transform-origin:50%;fill:currentColor;pointer-events:none;width:100%;height:100%}}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto;& ::slotted(.swiper-navigation-icon),& .swiper-navigation-icon{transform:rotate(180deg)}}.swiper-button-next{right:var(--swiper-navigation-sides-offset,4px);left:auto}.swiper-horizontal{& .swiper-button-prev,& .swiper-button-next,&~.swiper-button-prev,&~.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}& .swiper-button-prev,&~.swiper-button-prev,&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset,4px);right:auto}& .swiper-button-next,&~.swiper-button-next,&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset,4px);left:auto}& .swiper-button-prev,&~.swiper-button-prev,&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next{& ::slotted(.swiper-navigation-icon),& .swiper-navigation-icon{transform:rotate(180deg)}}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev{& ::slotted(.swiper-navigation-icon),& .swiper-navigation-icon{transform:rotate(0)}}}.swiper-vertical{& .swiper-button-prev,& .swiper-button-next,&~.swiper-button-prev,&~.swiper-button-next{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0;right:auto}& .swiper-button-prev,&~.swiper-button-prev{top:var(--swiper-navigation-sides-offset,4px);bottom:auto;& ::slotted(.swiper-navigation-icon),& .swiper-navigation-icon{transform:rotate(-90deg)}}& .swiper-button-next,&~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto;& ::slotted(.swiper-navigation-icon),& .swiper-navigation-icon{transform:rotate(90deg)}}}.swiper-pagination{text-align:center;z-index:10;transition:opacity .3s;position:absolute;transform:translate(0,0);&.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>&,&.swiper-pagination-disabled{display:none!important}}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);width:100%;left:0}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden;& .swiper-pagination-bullet{position:relative;transform:scale(.33)}& .swiper-pagination-bullet-active,& .swiper-pagination-bullet-active-main{transform:scale(1)}& .swiper-pagination-bullet-active-prev{transform:scale(.66)}& .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}& .swiper-pagination-bullet-active-next{transform:scale(.66)}& .swiper-pagination-bullet-active-next-next{transform:scale(.33)}}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);display:inline-block;button&{box-shadow:none;appearance:none;border:none;margin:0;padding:0}.swiper-pagination-clickable &{cursor:pointer}&:only-child{display:none!important}}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity,1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translateY(-50%);& .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}&.swiper-pagination-bullets-dynamic{width:8px;top:50%;transform:translateY(-50%);& .swiper-pagination-bullet{transition:transform .2s,top .2s;display:inline-block}}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets{& .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}&.swiper-pagination-bullets-dynamic{white-space:nowrap;left:50%;transform:translate(-50%);& .swiper-pagination-bullet{transition:transform .2s,left .2s}}}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute;& .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));transform-origin:0 0;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.swiper-rtl & .swiper-pagination-progressbar-fill{transform-origin:100% 0}.swiper-horizontal>&,&.swiper-pagination-horizontal,.swiper-vertical>&.swiper-pagination-progressbar-opposite,&.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);top:0;left:0}.swiper-vertical>&,&.swiper-pagination-vertical,.swiper-horizontal>&.swiper-pagination-progressbar-opposite,&.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size,4px);height:100%;top:0;left:0}}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);touch-action:none;background:var(--swiper-scrollbar-bg-color,#0000001a);position:relative;.swiper-scrollbar-disabled>&,&.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>&,&.swiper-scrollbar-horizontal{left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%));position:absolute}.swiper-vertical>&,&.swiper-scrollbar-vertical{left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%));position:absolute}}.swiper-scrollbar-drag{background:var(--swiper-scrollbar-drag-bg-color,#00000080);border-radius:var(--swiper-scrollbar-border-radius,10px);width:100%;height:100%;position:relative;top:0;left:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{text-align:center;justify-content:center;align-items:center;width:100%;height:100%;display:flex;&>img,&>svg,&>canvas{object-fit:contain;max-width:100%;max-height:100%}}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{pointer-events:none;opacity:0;z-index:-1000;position:absolute;top:0;left:0}.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-flow:column wrap}.swiper-fade{&.swiper-free-mode{& .swiper-slide{transition-timing-function:ease-out}}& .swiper-slide{pointer-events:none;transition-property:opacity;& .swiper-slide{pointer-events:none}}& .swiper-slide-active{pointer-events:auto;& .swiper-slide-active{pointer-events:auto}}}.swiper.swiper-cube{overflow:visible}.swiper-cube{& .swiper-slide{pointer-events:none;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%;& .swiper-slide{pointer-events:none}}&.swiper-rtl .swiper-slide{transform-origin:100% 0}& .swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}& .swiper-slide-active,& .swiper-slide-next,& .swiper-slide-prev{pointer-events:auto;visibility:visible}& .swiper-cube-shadow{opacity:.6;z-index:0;width:100%;height:100%;position:absolute;bottom:0;left:0;&:before{content:"";filter:blur(50px);background:#000;position:absolute;inset:0}}}.swiper-cube{& .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}}.swiper-cube{& .swiper-slide-shadow-cube.swiper-slide-shadow-top,& .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,& .swiper-slide-shadow-cube.swiper-slide-shadow-left,& .swiper-slide-shadow-cube.swiper-slide-shadow-right{z-index:0;backface-visibility:hidden}}.swiper.swiper-flip{overflow:visible}.swiper-flip{& .swiper-slide{pointer-events:none;backface-visibility:hidden;z-index:1;& .swiper-slide{pointer-events:none}}& .swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}}.swiper-flip{& .swiper-slide-shadow-flip.swiper-slide-shadow-top,& .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,& .swiper-slide-shadow-flip.swiper-slide-shadow-left,& .swiper-slide-shadow-flip.swiper-slide-shadow-right{z-index:0;backface-visibility:hidden}}.swiper-creative{& .swiper-slide{backface-visibility:hidden;transition-property:transform,opacity,height;overflow:hidden}}.swiper.swiper-cards{overflow:visible}.swiper-cards{& .swiper-slide{transform-origin:bottom;backface-visibility:hidden;overflow:hidden}}.explore-community-projects:where(.astro-3xjo6sv4){overflow:clip}@media (width>=768px){.explore-community-projects:where(.astro-3xjo6sv4) .content-container:where(.astro-3xjo6sv4){max-width:60%}}.explore-community-projects:where(.astro-3xjo6sv4) .cards{margin-top:1.5rem;padding-bottom:2.5rem}@media (width>=1024px){.explore-community-projects:where(.astro-3xjo6sv4) .cards{margin-top:3rem}}.explore-community-projects:where(.astro-3xjo6sv4) .cards.swiper{overflow:visible}.explore-community-projects:where(.astro-3xjo6sv4) .cards .swiper-pagination{bottom:0}.explore-community-projects:where(.astro-3xjo6sv4) .cards .swiper-pagination-bullet{background:var(--esphome-card-background-color);opacity:1}.explore-community-projects:where(.astro-3xjo6sv4) .cards .swiper-pagination-bullet-active{background:var(--sl-color-accent)}.explore-community-projects:where(.astro-3xjo6sv4) .cards:not(.swiper-initialized) .swiper-wrapper{gap:1rem}.explore-community-projects:where(.astro-3xjo6sv4) .cards:not(.swiper-initialized) .swiper-slide{width:80%}@media (width>=768px){.explore-community-projects:where(.astro-3xjo6sv4) .cards:not(.swiper-initialized) .swiper-slide{width:44.44%}}@media (width>=1024px){.explore-community-projects:where(.astro-3xjo6sv4) .cards:not(.swiper-initialized) .swiper-slide{width:32.79%}}.explore-community-projects:where(.astro-3xjo6sv4) .cards .swiper-slide{height:auto}.explore-community-projects:where(.astro-3xjo6sv4) .card{height:100%;color:inherit;flex-direction:column;align-items:flex-start;text-decoration:none;display:flex}.explore-community-projects:where(.astro-3xjo6sv4) .card .card__media:where(.astro-3xjo6sv4){border-radius:.5rem;width:100%;margin-bottom:1.5rem;overflow:hidden}.explore-community-projects:where(.astro-3xjo6sv4) .card .card__media:where(.astro-3xjo6sv4) img{object-fit:cover;width:100%;max-height:100%;margin:0}.explore-community-projects:where(.astro-3xjo6sv4) .card .card__body:where(.astro-3xjo6sv4){flex-direction:column;flex:1;align-items:flex-start;gap:1rem;width:100%;display:flex}@media (width>=1024px){.explore-community-projects:where(.astro-3xjo6sv4) .card .card__body:where(.astro-3xjo6sv4){gap:1.5rem}}.explore-community-projects:where(.astro-3xjo6sv4) .card .card__body:where(.astro-3xjo6sv4) .card__title:where(.astro-3xjo6sv4),.explore-community-projects:where(.astro-3xjo6sv4) .card .card__body:where(.astro-3xjo6sv4) .card__text-link:where(.astro-3xjo6sv4){margin:0}.explore-community-projects:where(.astro-3xjo6sv4) .card .card__body:where(.astro-3xjo6sv4) .card__text-link:where(.astro-3xjo6sv4){margin-top:auto}.explore-community-projects:where(.astro-3xjo6sv4) .note:where(.astro-3xjo6sv4){margin-top:1.5rem}@media (width>=768px){.get-started:where(.astro-cil2wp6t) .content-container:where(.astro-cil2wp6t){max-width:50%}}.get-started:where(.astro-cil2wp6t) .card-columns:where(.astro-cil2wp6t){flex-direction:column;gap:1.5rem;margin-top:1.5rem;display:flex}@media (width>=1024px){.get-started:where(.astro-cil2wp6t) .card-columns:where(.astro-cil2wp6t){flex-direction:row;align-items:flex-start;margin-top:3rem}}.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t){flex-direction:column;gap:1.5rem;display:flex}@media (width>=1024px){.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t){flex:50%}}.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t) .card:where(.astro-cil2wp6t){flex-direction:column;display:flex}@media (width>=1024px){.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t) .card:where(.astro-cil2wp6t){flex:1}}.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t) .card__text-link{margin-top:auto;padding-top:1.25rem}@media (width>=1024px){.get-started:where(.astro-cil2wp6t) .card-column:where(.astro-cil2wp6t):first-child{top:calc(var(--sl-nav-height) + 2rem);position:sticky}}.get-started:where(.astro-cil2wp6t) .card__icon:where(.astro-cil2wp6t){margin-bottom:1rem}@media (width>=768px){.get-started:where(.astro-cil2wp6t) .card__content:where(.astro-cil2wp6t){flex-basis:50%}}.get-started:where(.astro-cil2wp6t) .card__media:where(.astro-cil2wp6t){margin:1.5rem}@media (width>=768px){.get-started:where(.astro-cil2wp6t) .card__media:where(.astro-cil2wp6t){aspect-ratio:16/9;flex-basis:50%;margin-left:0;margin-right:0}}.get-started:where(.astro-cil2wp6t) .card__media:where(.astro-cil2wp6t) .gallery-item-media{height:100%}.get-started:where(.astro-cil2wp6t) .lazy-video:where(.astro-cil2wp6t){opacity:0;transition:opacity .5s}.get-started:where(.astro-cil2wp6t) .lazy-video--playing:where(.astro-cil2wp6t){opacity:1}.get-started:where(.astro-cil2wp6t) .play-button:where(.astro-cil2wp6t){z-index:10;background-color:var(--sl-color-accent);opacity:1;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background-color .2s ease-in-out,opacity .2s ease-in-out;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.get-started:where(.astro-cil2wp6t) .play-button:where(.astro-cil2wp6t):after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M3 22v-20l18 10-18 10z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:60% 60%;width:90%;height:90%;position:absolute;top:50%;left:calc(50% + 3px);transform:translate(-50%,-50%)}.get-started:where(.astro-cil2wp6t) .play-button:where(.astro-cil2wp6t):hover{background-color:var(--sl-color-accent-high)}.get-started:where(.astro-cil2wp6t) .play-button:where(.astro-cil2wp6t).lazy-video--playing{opacity:0;pointer-events:none}.pick-your-first-project:where(.astro-kfppdmjt){overflow:clip}@media (width>=768px){.pick-your-first-project:where(.astro-kfppdmjt) .content-container:where(.astro-kfppdmjt){max-width:50%}}.pick-your-first-project:where(.astro-kfppdmjt) .cards{margin-top:1.5rem;padding-bottom:2.5rem}@media (width>=1024px){.pick-your-first-project:where(.astro-kfppdmjt) .cards{margin-top:3rem}}.pick-your-first-project:where(.astro-kfppdmjt) .cards.swiper{overflow:visible}.pick-your-first-project:where(.astro-kfppdmjt) .cards .swiper-slide{height:auto}.pick-your-first-project:where(.astro-kfppdmjt) .cards .swiper-pagination{bottom:0}.pick-your-first-project:where(.astro-kfppdmjt) .cards .swiper-pagination-bullet{background:var(--sl-color-gray-3);opacity:1}.pick-your-first-project:where(.astro-kfppdmjt) .cards .swiper-pagination-bullet-active{background:var(--sl-color-accent)}.pick-your-first-project:where(.astro-kfppdmjt) .cards:not(.swiper-initialized) .swiper-wrapper{gap:1rem}.pick-your-first-project:where(.astro-kfppdmjt) .cards:not(.swiper-initialized) .swiper-slide{width:80%}@media (width>=768px){.pick-your-first-project:where(.astro-kfppdmjt) .cards:not(.swiper-initialized) .swiper-slide{width:44.44%}}@media (width>=1024px){.pick-your-first-project:where(.astro-kfppdmjt) .cards:not(.swiper-initialized) .swiper-slide{width:33.33%}}.pick-your-first-project:where(.astro-kfppdmjt) .card{height:100%;color:inherit;flex-direction:column;align-items:flex-start;text-decoration:none;display:flex}.pick-your-first-project:where(.astro-kfppdmjt) .card .card__media:where(.astro-kfppdmjt){border-radius:.5rem;width:100%;margin-bottom:1.5rem;overflow:hidden}.pick-your-first-project:where(.astro-kfppdmjt) .card .card__media:where(.astro-kfppdmjt) img{object-fit:cover;width:100%;max-height:100%;margin:0}.pick-your-first-project:where(.astro-kfppdmjt) .card .card__body:where(.astro-kfppdmjt){flex-direction:column;flex:1;align-items:flex-start;gap:.75rem;width:100%;display:flex}.pick-your-first-project:where(.astro-kfppdmjt) .card .card__body:where(.astro-kfppdmjt) .card__title:where(.astro-kfppdmjt),.pick-your-first-project:where(.astro-kfppdmjt) .card .card__body:where(.astro-kfppdmjt) .card__text-link:where(.astro-kfppdmjt){margin:0}.pick-your-first-project:where(.astro-kfppdmjt) .card .card__body:where(.astro-kfppdmjt) .card__text-link:where(.astro-kfppdmjt){margin-top:auto}.pick-your-first-project:where(.astro-kfppdmjt) .cookbook-link:where(.astro-kfppdmjt){margin-top:1.5rem}svg:where(.astro-ngqmksz2){color:var(--ha-icon-color);font-size:var(--ha-icon-size,1em);width:1em;height:1em}.join-our-community:where(.astro-jjiknjrk) .content-container:where(.astro-jjiknjrk){text-align:center;max-width:35rem;margin:0 auto}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk){grid-template-columns:1fr;gap:1rem;margin-top:2rem;display:grid}@media (width>=768px){.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk){grid-template-columns:repeat(3,1fr);margin-top:3rem}}@media (width>=1024px){.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk){grid-template-columns:repeat(6,1fr);gap:1.5rem}}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk){text-align:center;flex-direction:column;display:flex}@media (width>=1024px){.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk){grid-column:span 2}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk):last-child:nth-child(3n+1){grid-column:span 6}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk):nth-last-child(2):nth-child(3n+1),.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk):last-child:nth-child(3n+2){grid-column:span 3}}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk) .card__body:where(.astro-jjiknjrk){--sl-icon-color:var(--sl-color-white);--ha-icon-color:var(--sl-color-white);flex-direction:column;flex:1;align-items:center;gap:.75rem;display:flex}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk) .card__title:where(.astro-jjiknjrk){margin:0}.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk) .card__text-link:where(.astro-jjiknjrk){margin:1rem auto 0}@media (width>=1024px){.join-our-community:where(.astro-jjiknjrk) .cards:where(.astro-jjiknjrk) .card:where(.astro-jjiknjrk) .card__text-link:where(.astro-jjiknjrk){margin:3rem auto 0}}.supported-microcontrollers:where(.astro-qempul3u) .cards:where(.astro-qempul3u){grid-template-columns:1fr;gap:1.5rem;margin-top:2rem;display:grid}@media (width>=768px){.supported-microcontrollers:where(.astro-qempul3u) .cards:where(.astro-qempul3u){grid-template-columns:repeat(4,1fr);margin-top:3rem}}@media (width>=1024px){.supported-microcontrollers:where(.astro-qempul3u) .cards:where(.astro-qempul3u){grid-template-columns:repeat(6,1fr)}}.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u){text-align:center;flex-direction:column;display:flex}@media (width>=768px){.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u){grid-column:span 2}}@media (width>=768px) and (width<=1023px){.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u):last-child:nth-child(odd){grid-column:span 4}}@media (width>=1024px){.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u){grid-column:span 2}.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u):last-child:nth-child(3n+1){grid-column:span 6}.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u):nth-last-child(2):nth-child(3n+1),.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u):last-child:nth-child(3n+2){grid-column:span 3}}.supported-microcontrollers:where(.astro-qempul3u) .card:where(.astro-qempul3u) .card__text-link:where(.astro-qempul3u){margin:auto auto 0}html:not([data-has-sidebar]){--sl-content-width:100%}:root{--sl-content-gap-y:0;--esphome-card-background-color:#23272e;--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 10%, transparent);--esphome-card-border-color:#2d3748;--esphome-card-tag-background-color:#b3c7ff;--esphome-icon-background-color:#b3c7ff;--esphome-icon-background-color--transparent:color-mix(in srgb, var(--esphome-icon-background-color) 10%, transparent)}html[data-theme=dark]:root{--sl-color-text:#a0aec0}html[data-theme=light]:root{--esphome-card-background-color:var(--sl-color-gray-6);--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 10%, transparent);--esphome-card-border-color:var(--sl-color-gray-5);--esphome-card-tag-background-color:var(--sl-color-white);--esphome-icon-background-color:#b3c7ff;--esphome-icon-background-color--transparent:color-mix(in srgb, var(--esphome-icon-background-color) 30%, transparent)}.content-panel{border:none;padding:0}footer{--sl-content-width:75rem;width:100%;max-width:var(--sl-content-width);padding:0 var(--sl-content-pad-x);margin:0 auto}.container{width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.25rem}@media (width>=1024px){.container{padding:4rem 1.25rem}}@media (width>=1280px){.container{padding:4rem 0}}.content-container p{margin-bottom:1.25rem}.content-container p:last-child{margin-bottom:0}h2,.h2,h3,.h3{margin-bottom:1.5rem}.card{border:1px solid var(--esphome-card-border-color);border-radius:1rem;padding:1rem;transition:border-color .2s}@media (width>=1024px){.card{padding:1.75rem}}.card.card--ghost{border-color:#0000}.card p{font-size:.875rem}.card .card__tag-row{flex-wrap:wrap;gap:.5rem;display:flex}.card .card__tag-row .card__tag{border:1px solid var(--esphome-card-border-color);color:var(--sl-color-text);background-color:#0000;font-size:.75rem}.card .card__tag{text-transform:uppercase;background-color:var(--esphome-card-background-color--transparent);color:var(--sl-color-text-accent);border-radius:6.25rem;padding:.55rem 1rem .5rem;font-size:.75rem;font-weight:600}.card .card__tag.beginner{--esphome-card-tag-background-color:#7cb342;--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 10%, transparent);--sl-color-text-accent:#7cb342}[data-theme=light] .card .card__tag.beginner{--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 100%, transparent);--sl-color-text-accent:#fff}.card .card__tag.intermediate{--esphome-card-tag-background-color:#ffcc32;--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 10%, transparent);--sl-color-text-accent:#ffcc32}[data-theme=light] .card .card__tag.intermediate{--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 100%, transparent);--sl-color-text-accent:#fff}.card .card__tag.advanced{--esphome-card-tag-background-color:#e74c3c;--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 10%, transparent);--sl-color-text-accent:#e74c3c}[data-theme=light] .card .card__tag.advanced{--esphome-card-background-color--transparent:color-mix(in srgb, var(--esphome-card-tag-background-color) 100%, transparent);--sl-color-text-accent:#fff}.card .card__tag.beginner,.card .card__tag.intermediate,.card .card__tag.advanced{text-transform:none}.card .card__title{color:var(--sl-color-white);font-size:1.125rem;font-weight:600}.card .card__text-link{color:var(--sl-color-text-accent);background-color:#0000;border:none;align-items:center;gap:.5rem;margin:1.25rem 0 0;padding:0;transition:color .2s;display:inline-flex}.card .card__text-link:hover{color:var(--sl-color-accent)}a.card:hover{border-color:var(--sl-color-text-accent)}.card-bgc{background-color:var(--esphome-card-background-color)}
