.elementor-31289 .elementor-element.elementor-element-d8206fa{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31289 .elementor-element.elementor-element-d6fbe0c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:44px;--padding-bottom:120px;--padding-left:24px;--padding-right:24px;}.elementor-31289 .elementor-element.elementor-element-d6fbe0c:not(.elementor-motion-effects-element-type-background), .elementor-31289 .elementor-element.elementor-element-d6fbe0c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 18%, #EEF8FA 100%);}.elementor-31289 .elementor-element.elementor-element-f2290b5{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-justify-content:flex-start;--e-filter-item-width:initial;--e-filter-item-flex-grow:0;--e-filter-wrap:wrap;--e-filter-overflow-x:initial;--e-filter-space-between:12px;--e-filter-normal-text-color:#333333;--e-filter-hover-text-color:#34B8B1;--e-filter-active-text-color:#FFFFFF;--e-filter-item-border-radius:999px 999px 999px 999px;}.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item:not( [aria-pressed=true] ):not( :hover ){background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#CFE8E7;}.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item:hover:not( [aria-pressed=true] ){background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#34B8B1;}.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item[aria-pressed="true"]{background-color:#34B8B1;border-style:solid;border-width:1px 1px 1px 1px;border-color:#34B8B1;box-shadow:0px 8px 20px 0px rgba(52,184,177,0.3);}.elementor-31289 .elementor-element.elementor-element-f2290b5 > .elementor-widget-container{margin:0px 0px 40px 0px;}.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item{font-size:16px;font-weight:500;line-height:1em;letter-spacing:1.3px;padding:15px 28px 15px 28px;}.elementor-31289 .elementor-element.elementor-element-e03e9c6{--grid-columns:3;--grid-row-gap:40px;--auto-scroll-offset:100px;--e-loop-nothing-found-message-align:center;--grid-column-gap:32px;--e-loop-nothing-found-message-color:#888888;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item > .elementor-section, .elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item > .elementor-section > .elementor-container, .elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item > .e-con, .elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination{text-align:center;font-family:"Alata", serif-Sans;font-size:16px;line-height:1em;margin-top:64px;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers:not(.dots){color:#333333;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination a.page-numbers:hover{color:#34B8B1;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers.current{color:#FFFFFF;}body:not(.rtl) .elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}@media(max-width:1024px){.elementor-31289 .elementor-element.elementor-element-f2290b5{--e-filter-wrap:wrap;--e-filter-overflow-x:initial;}.elementor-31289 .elementor-element.elementor-element-e03e9c6{--grid-columns:2;--grid-row-gap:32px;--grid-column-gap:24px;}}@media(min-width:768px){.elementor-31289 .elementor-element.elementor-element-d6fbe0c{--content-width:1280px;}}@media(max-width:767px){.elementor-31289 .elementor-element.elementor-element-d6fbe0c{--padding-top:28px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-31289 .elementor-element.elementor-element-f2290b5{--e-filter-wrap:nowrap;--e-filter-overflow-x:scroll;--e-filter-space-between:8px;}.elementor-31289 .elementor-element.elementor-element-f2290b5 > .elementor-widget-container{margin:0px 0px 12px 0px;}.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item{font-size:15px;padding:12px 18px 12px 18px;}.elementor-31289 .elementor-element.elementor-element-e03e9c6{--grid-columns:1;--grid-row-gap:24px;--grid-column-gap:16px;}.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination{margin-top:44px;}}/* Start custom CSS for taxonomy-filter, class: .elementor-element-f2290b5 *//* 滑鼠移到分類按鈕變成小手 */
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item{cursor:pointer;white-space:nowrap;transition:color .3s,background-color .3s,border-color .3s,box-shadow .3s}
/* 手機：分類按鈕可左右滑動，並延伸到螢幕邊緣 */
@media (max-width:767px){
.elementor-31289 .elementor-element.elementor-element-f2290b5{width:calc(100% + 40px);max-width:none!important;margin-left:-20px;margin-right:-20px}
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter{padding:4px 20px 14px;scroll-padding-inline:20px;scroll-snap-type:x proximity;scrollbar-width:none}
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter::-webkit-scrollbar{display:none}
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item{scroll-snap-align:start}
}
/* 案例分類依案例數量顯示；保留三類排序 */
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item[data-filter="flat-mounted"]{order:1;}
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item[data-filter="canopy-mounted"]{order:2;}
.elementor-31289 .elementor-element.elementor-element-f2290b5 .e-filter-item[data-filter="self-consumption"]{order:3;}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-e03e9c6 *//* 卡片進場動畫：載入、切換分類、換頁時都會播放 */
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item{animation:rieLoopIn .7s cubic-bezier(.2,.7,.2,1) both}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item:nth-child(3n+2){animation-delay:.08s}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item:nth-child(3n){animation-delay:.16s}
@keyframes rieLoopIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.elementor-31289 .elementor-element.elementor-element-e03e9c6 .e-loop-item{animation:none}}

/* 分頁：圓形按鈕（顏色、字級在「樣式 › 分頁」調） */
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 14px;border:1px solid #D3EAEA;border-radius:999px;background:#fff;vertical-align:middle;transition:color .3s,background-color .3s,border-color .3s,box-shadow .3s}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination a.page-numbers:hover{border-color:#34B8B1}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers.current{border-color:#34B8B1;background:#34B8B1;box-shadow:0 8px 20px rgba(52,184,177,.3)}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers.dots{min-width:24px;padding:0;border:0;background:none}
.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination span.page-numbers.prev,.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination span.page-numbers.next{opacity:.35}
@media (max-width:767px){.elementor-31289 .elementor-element.elementor-element-e03e9c6 .elementor-pagination .page-numbers{min-width:42px;height:42px}}/* End custom CSS */