.elementor-593 .elementor-element.elementor-element-28866d83{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-593 .elementor-element.elementor-element-28866d83:not(.elementor-motion-effects-element-type-background), .elementor-593 .elementor-element.elementor-element-28866d83 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-593 .elementor-element.elementor-element-28866d83.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-593 .elementor-element.elementor-element-c1f1d57{--display:flex;}.elementor-593 .elementor-element.elementor-element-c1f1d57.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-593 .elementor-element.elementor-element-96e5630{width:var( --container-widget-width, 67.982% );max-width:67.982%;--container-widget-width:67.982%;--container-widget-flex-grow:0;}.elementor-593 .elementor-element.elementor-element-96e5630.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-593 .elementor-element.elementor-element-96e5630 img{width:100%;max-width:100%;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-593 .elementor-element.elementor-element-8d8d753{width:var( --container-widget-width, 100.571% );max-width:100.571%;--container-widget-width:100.571%;--container-widget-flex-grow:0;text-align:left;color:#000000;}.elementor-593 .elementor-element.elementor-element-8d8d753.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-593 .elementor-element.elementor-element-8d8d753 a{color:#0A25E7;}.elementor-593 .elementor-element.elementor-element-ca12f9e{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--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-593 .elementor-element.elementor-element-ca12f9e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-593 .elementor-element.elementor-element-d9748d6{text-align:center;}.elementor-593 .elementor-element.elementor-element-d9748d6 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#1C244B;}.elementor-593 .elementor-element.elementor-element-257d2103{--grid-template-columns:repeat(0, auto);text-align:left;--icon-size:47px;--grid-column-gap:22px;--grid-row-gap:0px;}.elementor-593 .elementor-element.elementor-element-257d2103 .elementor-social-icon{background-color:#02010100;--icon-padding:0.2em;}.elementor-593 .elementor-element.elementor-element-257d2103 .elementor-social-icon i{color:#467FF7;}.elementor-593 .elementor-element.elementor-element-257d2103 .elementor-social-icon svg{fill:#467FF7;}.elementor-593 .elementor-element.elementor-element-257d2103 .elementor-social-icon:hover i{color:#C8D5DC;}.elementor-593 .elementor-element.elementor-element-257d2103 .elementor-social-icon:hover svg{fill:#C8D5DC;}.elementor-593 .elementor-element.elementor-element-2fae4396{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--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-593 .elementor-element.elementor-element-2fae4396.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-593 .elementor-element.elementor-element-38281c77 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#1C244B;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main .elementor-item{color:#324A6D;fill:#324A6D;padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main .elementor-item:focus{color:#C8D5DC;fill:#C8D5DC;}.elementor-593 .elementor-element.elementor-element-6d1ac456{--e-nav-menu-horizontal-menu-item-margin:calc( 10px / 2 );}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:10px;}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--dropdown .elementor-item, .elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;text-transform:capitalize;font-style:normal;text-decoration:none;letter-spacing:0px;}.elementor-593 .elementor-element.elementor-element-b8d301b{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--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-593 .elementor-element.elementor-element-b8d301b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-593 .elementor-element.elementor-element-f42d95c .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#1C244B;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(11px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(11px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(11px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-11px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-11px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-icon i{color:#324A6D;transition:color 0.3s;}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-icon svg{fill:#324A6D;transition:fill 0.3s;}.elementor-593 .elementor-element.elementor-element-13cb8e65{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-item > a{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-text{color:#324A6D;transition:color 0.3s;}.elementor-593 .elementor-element.elementor-element-69554986{--display:flex;--min-height:45px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-593 .elementor-element.elementor-element-69554986:not(.elementor-motion-effects-element-type-background), .elementor-593 .elementor-element.elementor-element-69554986 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#467FF7;}.elementor-593 .elementor-element.elementor-element-687113fc{text-align:center;}.elementor-593 .elementor-element.elementor-element-687113fc .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;color:#DF1717;}@media(max-width:1024px){.elementor-593 .elementor-element.elementor-element-28866d83{--flex-wrap:wrap;--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-593 .elementor-element.elementor-element-ca12f9e{--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-593 .elementor-element.elementor-element-257d2103{text-align:left;--icon-size:18px;}.elementor-593 .elementor-element.elementor-element-2fae4396{--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu .elementor-item{font-size:14px;}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--dropdown .elementor-item, .elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:14px;}.elementor-593 .elementor-element.elementor-element-b8d301b{--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-item > a{font-size:14px;}.elementor-593 .elementor-element.elementor-element-687113fc .elementor-heading-title{font-size:14px;}}@media(max-width:767px){.elementor-593 .elementor-element.elementor-element-28866d83{--padding-top:20%;--padding-bottom:20%;--padding-left:6%;--padding-right:6%;}.elementor-593 .elementor-element.elementor-element-ca12f9e{--width:50%;--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-593 .elementor-element.elementor-element-d9748d6 .elementor-heading-title{font-size:18px;}.elementor-593 .elementor-element.elementor-element-257d2103{text-align:center;}.elementor-593 .elementor-element.elementor-element-2fae4396{--width:50%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:4%;}.elementor-593 .elementor-element.elementor-element-38281c77 .elementor-heading-title{font-size:18px;}.elementor-593 .elementor-element.elementor-element-6d1ac456{--e-nav-menu-horizontal-menu-item-margin:calc( 8px / 2 );}.elementor-593 .elementor-element.elementor-element-6d1ac456 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:8px;}.elementor-593 .elementor-element.elementor-element-b8d301b{--width:50%;--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-593 .elementor-element.elementor-element-f42d95c .elementor-heading-title{font-size:18px;}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(8px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(8px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(8px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-8px/2);}.elementor-593 .elementor-element.elementor-element-13cb8e65 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-8px/2);}}@media(min-width:768px){.elementor-593 .elementor-element.elementor-element-28866d83{--width:100%;}.elementor-593 .elementor-element.elementor-element-c1f1d57{--width:23.868%;}.elementor-593 .elementor-element.elementor-element-ca12f9e{--width:31.324%;}.elementor-593 .elementor-element.elementor-element-2fae4396{--width:19.623%;}.elementor-593 .elementor-element.elementor-element-b8d301b{--width:21.498%;}.elementor-593 .elementor-element.elementor-element-69554986{--content-width:1790px;}}@media(max-width:1024px) and (min-width:768px){.elementor-593 .elementor-element.elementor-element-ca12f9e{--width:32%;}.elementor-593 .elementor-element.elementor-element-2fae4396{--width:32%;}.elementor-593 .elementor-element.elementor-element-b8d301b{--width:32%;}}/* Start custom CSS for heading, class: .elementor-element-d9748d6 *//* =====================================
   Footer 救援版
   先刪掉舊 footer CSS，只留這份
   ===================================== */

/* 外層背景 */
footer,
.site-footer,
.elementor-location-footer{
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(700px 220px at 8% 0%, rgba(120,185,255,.14), transparent 70%),
    radial-gradient(520px 200px at 92% 8%, rgba(45,123,229,.08), transparent 72%),
    linear-gradient(180deg,#ffffff 0%, #f3f8ff 100%) !important;
  border-top: 0 !important;
}

/* 頁面與 footer 分隔線 */
footer::before,
.site-footer::before,
.elementor-location-footer::before{
  content: "" !important;
  display: block !important;
  width: min(1200px, calc(100% - 32px)) !important;
  height: 1px !important;
  margin: 0 auto 18px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 18%,
    rgba(0,0,0,.18) 50%,
    rgba(0,0,0,.08) 82%,
    transparent 100%
  ) !important;
}

/* 主要內容容器改回正常橫排 */
footer .elementor-container:first-child,
.site-footer .elementor-container:first-child,
.elementor-location-footer .elementor-container:first-child{
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 34px 20px 24px !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 0 !important;
}

/* 每一欄寬度固定 */
footer .elementor-container:first-child > .elementor-column:nth-child(1),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(1),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(1){
  width: 30% !important;
  max-width: 30% !important;
  flex: 0 0 30% !important;
}

footer .elementor-container:first-child > .elementor-column:nth-child(2),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(2),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(2){
  width: 23% !important;
  max-width: 23% !important;
  flex: 0 0 23% !important;
}

footer .elementor-container:first-child > .elementor-column:nth-child(3),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(3),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(3){
  width: 19% !important;
  max-width: 19% !important;
  flex: 0 0 19% !important;
}

footer .elementor-container:first-child > .elementor-column:nth-child(4),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(4),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(4){
  width: 22% !important;
  max-width: 22% !important;
  flex: 0 0 22% !important;
}

/* 欄位本體 */
footer .elementor-column,
.site-footer .elementor-column,
.elementor-location-footer .elementor-column{
  position: relative !important;
  min-width: 0 !important;
  padding: 0 18px !important;
  border-right: 1px solid rgba(0,0,0,.10) !important;
}

footer .elementor-column:last-child,
.site-footer .elementor-column:last-child,
.elementor-location-footer .elementor-column:last-child{
  border-right: 0 !important;
}

/* 文字橫排強制恢復 */
footer,
footer *:not(i):not(svg),
.site-footer,
.site-footer *:not(i):not(svg),
.elementor-location-footer,
.elementor-location-footer *:not(i):not(svg){
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

/* 標題 */
footer h1,
footer h2,
footer h3,
footer h4,
footer .elementor-heading-title,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer .elementor-heading-title,
.elementor-location-footer h1,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4,
.elementor-location-footer .elementor-heading-title{
  color: #0f2340 !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  font-size: 22px !important;
  margin: 0 0 16px !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

/* 一般文字 */
footer p,
footer span,
footer div,
footer li,
footer .elementor-widget-text-editor,
.site-footer p,
.site-footer span,
.site-footer div,
.site-footer li,
.site-footer .elementor-widget-text-editor,
.elementor-location-footer p,
.elementor-location-footer span,
.elementor-location-footer div,
.elementor-location-footer li,
.elementor-location-footer .elementor-widget-text-editor{
  color: #111111 !important;
  font-size: 16px !important;
  line-height: 1.9 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

/* 左側介紹文字 */
footer .elementor-widget-text-editor p,
.site-footer .elementor-widget-text-editor p,
.elementor-location-footer .elementor-widget-text-editor p{
  margin: 0 !important;
  max-width: 100% !important;
}

/* 連結藍色 */
footer a,
.site-footer a,
.elementor-location-footer a{
  color: #2d7be5 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

footer a:hover,
.site-footer a:hover,
.elementor-location-footer a:hover{
  color: #1f5fd1 !important;
}

/* Logo */
footer img,
.site-footer img,
.elementor-location-footer img{
  max-width: 180px !important;
  height: auto !important;
  display: block !important;
  margin-bottom: 18px !important;
  filter: drop-shadow(0 8px 18px rgba(16,39,66,.05)) !important;
}

/* 社群區 */
footer .elementor-social-icons-wrapper,
.site-footer .elementor-social-icons-wrapper,
.elementor-location-footer .elementor-social-icons-wrapper{
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

/* 社群玻璃泡泡 */
footer .elementor-social-icon,
.site-footer .elementor-social-icon,
.elementor-location-footer .elementor-social-icon{
  position: relative !important;
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.42)) !important;
  border: 1px solid rgba(255,255,255,.75) !important;
  box-shadow:
    0 14px 24px rgba(16,39,66,.10),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -10px 18px rgba(120,185,255,.08) !important;
  backdrop-filter: blur(10px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

footer .elementor-social-icon::before,
.site-footer .elementor-social-icon::before,
.elementor-location-footer .elementor-social-icon::before{
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  left: 10px !important;
  width: 40% !important;
  height: 20% !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.5) !important;
}

footer .elementor-social-icon i,
footer .elementor-social-icon svg,
.site-footer .elementor-social-icon i,
.site-footer .elementor-social-icon svg,
.elementor-location-footer .elementor-social-icon i,
.elementor-location-footer .elementor-social-icon svg{
  color: #4f7fe8 !important;
  fill: #4f7fe8 !important;
  font-size: 24px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* 右側導覽 */
footer ul,
.site-footer ul,
.elementor-location-footer ul{
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

footer ul li,
.site-footer ul li,
.elementor-location-footer ul li{
  margin-bottom: 12px !important;
}

footer ul li a,
.site-footer ul li a,
.elementor-location-footer ul li a{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 800 !important;
}

footer ul li a::before,
.site-footer ul li a::before,
.elementor-location-footer ul li a::before{
  content: "" !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg,#78b9ff,#2d7be5) !important;
  box-shadow: 0 0 0 4px rgba(120,185,255,.12) !important;
}

/* 底部版權藍條 */
footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container{
  background: linear-gradient(135deg,#2f5fd1,#3c6ff0) !important;
  text-align: center !important;
  padding: 16px 20px !important;
  border-radius: 18px 18px 0 0 !important;
  box-shadow: 0 -6px 20px rgba(45,123,229,.16) !important;
}

footer .elementor-widget-text-editor:last-child .elementor-widget-container,
footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container *{
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: .6px !important;
}

/* =========================
   平板
   ========================= */
@media (max-width: 1024px){
  footer .elementor-container:first-child,
  .site-footer .elementor-container:first-child,
  .elementor-location-footer .elementor-container:first-child{
    flex-wrap: wrap !important;
    gap: 18px 0 !important;
  }

  footer .elementor-container:first-child > .elementor-column:nth-child(1),
  .site-footer .elementor-container:first-child > .elementor-column:nth-child(1),
  .elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(1),
  footer .elementor-container:first-child > .elementor-column:nth-child(2),
  .site-footer .elementor-container:first-child > .elementor-column:nth-child(2),
  .elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(2),
  footer .elementor-container:first-child > .elementor-column:nth-child(3),
  .site-footer .elementor-container:first-child > .elementor-column:nth-child(3),
  .elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(3),
  footer .elementor-container:first-child > .elementor-column:nth-child(4),
  .site-footer .elementor-container:first-child > .elementor-column:nth-child(4),
  .elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(4){
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }

  footer .elementor-column:nth-child(2),
  .site-footer .elementor-column:nth-child(2),
  .elementor-location-footer .elementor-column:nth-child(2),
  footer .elementor-column:nth-child(4),
  .site-footer .elementor-column:nth-child(4),
  .elementor-location-footer .elementor-column:nth-child(4){
    border-right: 0 !important;
  }
}

/* =========================
   手機
   ========================= */
@media (max-width: 767px){
  footer .elementor-container:first-child,
  .site-footer .elementor-container:first-child,
  .elementor-location-footer .elementor-container:first-child{
    display: block !important;
    padding: 26px 14px 18px !important;
  }

  footer .elementor-container:first-child > .elementor-column,
  .site-footer .elementor-container:first-child > .elementor-column,
  .elementor-location-footer .elementor-container:first-child > .elementor-column{
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(0,0,0,.08) !important;
    padding: 0 0 14px !important;
    margin: 0 0 14px !important;
  }

  footer .elementor-container:first-child > .elementor-column:last-child,
  .site-footer .elementor-container:first-child > .elementor-column:last-child,
  .elementor-location-footer .elementor-container:first-child > .elementor-column:last-child{
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  footer h1,
  footer h2,
  footer h3,
  footer h4,
  footer .elementor-heading-title,
  .site-footer h1,
  .site-footer h2,
  .site-footer h3,
  .site-footer h4,
  .site-footer .elementor-heading-title,
  .elementor-location-footer h1,
  .elementor-location-footer h2,
  .elementor-location-footer h3,
  .elementor-location-footer h4,
  .elementor-location-footer .elementor-heading-title{
    font-size: 22px !important;
    margin-bottom: 12px !important;
  }

  footer,
  footer p,
  footer span,
  footer div,
  footer li,
  .site-footer,
  .site-footer p,
  .site-footer span,
  .site-footer div,
  .site-footer li,
  .elementor-location-footer,
  .elementor-location-footer p,
  .elementor-location-footer span,
  .elementor-location-footer div,
  .elementor-location-footer li{
    font-size: 15px !important;
    line-height: 1.85 !important;
  }

  footer img,
  .site-footer img,
  .elementor-location-footer img{
    max-width: 150px !important;
    margin-bottom: 12px !important;
  }

  footer .elementor-social-icon,
  .site-footer .elementor-social-icon,
  .elementor-location-footer .elementor-social-icon{
    width: 54px !important;
    height: 54px !important;
  }

  footer .elementor-social-icon i,
  footer .elementor-social-icon svg,
  .site-footer .elementor-social-icon i,
  .site-footer .elementor-social-icon svg,
  .elementor-location-footer .elementor-social-icon i,
  .elementor-location-footer .elementor-social-icon svg{
    font-size: 21px !important;
  }

  footer .elementor-widget-text-editor:last-child .elementor-widget-container,
  .site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
  .elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container{
    border-radius: 14px 14px 0 0 !important;
    padding: 14px 16px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-28866d83 *//* =========================
   Footer 重置穩定版
   先刪掉舊 footer CSS，只留這份
   ========================= */

/* 外層背景 */
footer,
.site-footer,
.elementor-location-footer{
  background:
    radial-gradient(700px 220px at 8% 0%, rgba(120,185,255,.14), transparent 70%),
    radial-gradient(520px 200px at 92% 8%, rgba(45,123,229,.08), transparent 72%),
    linear-gradient(180deg,#ffffff 0%, #f3f8ff 100%) !important;
  position: relative;
  overflow: hidden;
}

/* 頁面與 footer 之間的分隔線 */
footer::before,
.site-footer::before,
.elementor-location-footer::before{
  content: "";
  display: block;
  width: min(1200px, calc(100% - 32px));
  height: 1px;
  margin: 0 auto 20px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 18%,
    rgba(0,0,0,.16) 50%,
    rgba(0,0,0,.08) 82%,
    transparent 100%
  );
}

/* 主要 footer 內容區 */
footer .elementor-container:first-child,
.site-footer .elementor-container:first-child,
.elementor-location-footer .elementor-container:first-child{
  max-width: 1200px;
  margin: 0 auto;
  padding: 34px 20px 24px;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
}

/* 四欄寬度 */
footer .elementor-container:first-child > .elementor-column:nth-child(1),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(1),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(1){
  width: 31%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(2),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(2),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(2){
  width: 23%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(3),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(3),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(3){
  width: 21%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(4),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(4),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(4){
  width: 21%;
}

/* 每欄本體 */
footer .elementor-column,
.site-footer .elementor-column,
.elementor-location-footer .elementor-column{
  position: relative;
  min-width: 0;
  padding: 0 22px;
}

/* 分隔線 */
footer .elementor-column:not(:last-child)::after,
.site-footer .elementor-column:not(:last-child)::after,
.elementor-location-footer .elementor-column:not(:last-child)::after{
  content: "";
  position: absolute;
  top: 8px;
  right: 0;
  width: 1px;
  height: calc(100% - 16px);
  background: rgba(0,0,0,.10);
}

/* 標題 */
footer h2,
footer h3,
footer h4,
footer .elementor-heading-title,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer .elementor-heading-title,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4,
.elementor-location-footer .elementor-heading-title{
  margin: 0 0 16px;
  color: #0f2340 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  writing-mode: horizontal-tb !important;
}

/* 一般文字 */
footer,
footer p,
footer span,
footer div,
footer li,
footer .elementor-widget-text-editor,
.site-footer,
.site-footer p,
.site-footer span,
.site-footer div,
.site-footer li,
.site-footer .elementor-widget-text-editor,
.elementor-location-footer,
.elementor-location-footer p,
.elementor-location-footer span,
.elementor-location-footer div,
.elementor-location-footer li,
.elementor-location-footer .elementor-widget-text-editor{
  color: #111111 !important;
  font-size: 16px !important;
  line-height: 1.9 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
}

/* 左側介紹文字 */
footer .elementor-widget-text-editor p,
.site-footer .elementor-widget-text-editor p,
.elementor-location-footer .elementor-widget-text-editor p{
  margin: 0;
}

/* Logo */
footer img,
.site-footer img,
.elementor-location-footer img{
  max-width: 180px;
  height: auto;
  display: block;
  margin-bottom: 18px;
}

/* 連結藍色 */
footer a,
.site-footer a,
.elementor-location-footer a{
  color: #2d7be5 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

footer a:hover,
.site-footer a:hover,
.elementor-location-footer a:hover{
  color: #1f5fd1 !important;
}

/* 社群區 */
footer .elementor-social-icons-wrapper,
.site-footer .elementor-social-icons-wrapper,
.elementor-location-footer .elementor-social-icons-wrapper{
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}

/* 玻璃泡泡 */
footer .elementor-social-icon,
.site-footer .elementor-social-icon,
.elementor-location-footer .elementor-social-icon{
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.42)) !important;
  border: 1px solid rgba(255,255,255,.75);
  box-shadow:
    0 14px 24px rgba(16,39,66,.10),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -10px 18px rgba(120,185,255,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

footer .elementor-social-icon::before,
.site-footer .elementor-social-icon::before,
.elementor-location-footer .elementor-social-icon::before{
  content: "";
  position: absolute;
  top: 8px;
  left: 10px;
  width: 40%;
  height: 20%;
  border-radius: 999px;
  background: rgba(255,255,255,.5);
}

footer .elementor-social-icon i,
footer .elementor-social-icon svg,
.site-footer .elementor-social-icon i,
.site-footer .elementor-social-icon svg,
.elementor-location-footer .elementor-social-icon i,
.elementor-location-footer .elementor-social-icon svg{
  color: #4f7fe8 !important;
  fill: #4f7fe8 !important;
  font-size: 24px !important;
  position: relative;
  z-index: 2;
}

/* 右側清單 */
footer ul,
.site-footer ul,
.elementor-location-footer ul{
  list-style: none;
  margin: 0;
  padding: 0;
}

footer ul li,
.site-footer ul li,
.elementor-location-footer ul li{
  margin-bottom: 12px;
}

footer ul li a,
.site-footer ul li a,
.elementor-location-footer ul li a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 800 !important;
}

footer ul li a::before,
.site-footer ul li a::before,
.elementor-location-footer ul li a::before{
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg,#78b9ff,#2d7be5);
  box-shadow: 0 0 0 4px rgba(120,185,255,.12);
}

/* 最底藍條 */
footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container{
  background: linear-gradient(135deg,#2f5fd1,#3c6ff0) !important;
  text-align: center;
  padding: 16px 20px;
  border-radius: 18px 18px 0 0;
  box-shadow: 0 -6px 20px rgba(45,123,229,.16);
}

/* 藍條文字 */
footer .elementor-widget-text-editor:last-child .elementor-widget-container,
footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container *{
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
}

/* 平板 */
@media (max-width: 1024px){
  footer .elementor-container:first-child,
  .site-footer .elementor-container:first-child,
  .elementor-location-footer .elementor-container:first-child{
    flex-wrap: wrap;
  }

  footer .elementor-container:first-child > .elementor-column,
  .site-footer .elementor-container:first-child > .elementor-column,
  .elementor-location-footer .elementor-container:first-child > .elementor-column{
    width: 50% !important;
    margin-bottom: 20px;
  }

  footer .elementor-column:nth-child(2)::after,
  .site-footer .elementor-column:nth-child(2)::after,
  .elementor-location-footer .elementor-column:nth-child(2)::after,
  footer .elementor-column:nth-child(4)::after,
  .site-footer .elementor-column:nth-child(4)::after,
  .elementor-location-footer .elementor-column:nth-child(4)::after{
    display: none;
  }
}

/* 手機 */
/* =========================
   戰神賽特2 Footer 最終修正版
   ========================= */

/* 外層背景 */
.elementor-location-footer {
  background:
    radial-gradient(700px 220px at 8% 0%, rgba(120,185,255,.14), transparent 70%),
    radial-gradient(520px 200px at 92% 8%, rgba(45,123,229,.08), transparent 72%),
    linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%) !important;
  position: relative;
  overflow: hidden;
}

/* 上方分隔線 */
.elementor-location-footer::before {
  content: "";
  display: block;
  width: min(1200px, calc(100% - 32px));
  height: 1px;
  margin: 0 auto 0;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 18%,
    rgba(0,0,0,.16) 50%,
    rgba(0,0,0,.08) 82%,
    transparent 100%
  );
}

/* ── 四欄主容器：強制橫排 ── */
.elementor-location-footer > .e-con,
.elementor-location-footer > .elementor-container {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  max-width: 1200px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 36px 24px 28px !important;
  box-sizing: border-box !important;
}

/* ── 每一欄 ── */
.elementor-location-footer > .e-con > .e-con,
.elementor-location-footer > .elementor-container > .elementor-column {
  flex: 1 1 0 !important;
  width: 25% !important;
  max-width: 25% !important;
  min-width: 0 !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  position: relative !important;
  word-break: keep-all !important;
  overflow-wrap: break-word !important;
}

/* ── 欄間分隔線 ── */
.elementor-location-footer > .e-con > .e-con:not(:last-child)::after,
.elementor-location-footer > .elementor-container > .elementor-column:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  right: 0 !important;
  width: 1px !important;
  height: calc(100% - 16px) !important;
  background: rgba(0, 0, 0, 0.15) !important;
  pointer-events: none !important;
}

/* ── 標題 ── */
.elementor-location-footer .elementor-heading-title,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4 {
  color: #0f2340 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  margin: 0 0 16px !important;
  white-space: normal !important;
  word-break: keep-all !important;
  writing-mode: horizontal-tb !important;
}

/* ── 一般文字 ── */
.elementor-location-footer,
.elementor-location-footer p,
.elementor-location-footer span,
.elementor-location-footer li,
.elementor-location-footer div {
  color: #111111 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  white-space: normal !important;
  word-break: keep-all !important;
  writing-mode: horizontal-tb !important;
}

/* ── Logo ── */
.elementor-location-footer img {
  max-width: 160px !important;
  height: auto !important;
  display: block !important;
  margin-bottom: 16px !important;
}

/* ── 連結 ── */
.elementor-location-footer a {
  color: #2d7be5 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  word-break: keep-all !important;
}

.elementor-location-footer a:hover {
  color: #1f5fd1 !important;
}

/* ── 社群 icon ── */
.elementor-location-footer .elementor-social-icons-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  align-items: center !important;
}

.elementor-location-footer .elementor-social-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.42)) !important;
  border: 1px solid rgba(255,255,255,.75) !important;
  box-shadow:
    0 14px 24px rgba(16,39,66,.10),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  transition: transform .25s ease !important;
}

.elementor-location-footer .elementor-social-icon:hover {
  transform: translateY(-4px) !important;
}

.elementor-location-footer .elementor-social-icon i,
.elementor-location-footer .elementor-social-icon svg {
  color: #4f7fe8 !important;
  fill: #4f7fe8 !important;
  font-size: 22px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* ── 導覽列表 ── */
.elementor-location-footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-location-footer ul li {
  margin-bottom: 10px !important;
}

.elementor-location-footer ul li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 800 !important;
}

.elementor-location-footer ul li a::before {
  content: "" !important;
  flex-shrink: 0 !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #78b9ff, #2d7be5) !important;
  box-shadow: 0 0 0 4px rgba(120,185,255,.12) !important;
}

/* ── Copyright 藍條 ── */
.elementor-location-footer .elementor-location-copyright,
footer .elementor-location-copyright {
  background: linear-gradient(135deg, #2f5fd1, #3c6ff0) !important;
  text-align: center !important;
  padding: 14px 20px !important;
}

.elementor-location-footer .elementor-location-copyright *,
footer .elementor-location-copyright * {
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
}

/* =========================
   平板 768px - 1024px
   ========================= */
@media (max-width: 1024px) {
  .elementor-location-footer > .e-con,
  .elementor-location-footer > .elementor-container {
    flex-wrap: wrap !important;
    padding: 28px 16px 20px !important;
  }

  .elementor-location-footer > .e-con > .e-con,
  .elementor-location-footer > .elementor-container > .elementor-column {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    padding: 0 16px 28px !important;
  }

  /* 第2欄和第4欄不顯示右側分隔線 */
  .elementor-location-footer > .e-con > .e-con:nth-child(2)::after,
  .elementor-location-footer > .e-con > .e-con:nth-child(4)::after,
  .elementor-location-footer > .elementor-container > .elementor-column:nth-child(2)::after,
  .elementor-location-footer > .elementor-container > .elementor-column:nth-child(4)::after {
    display: none !important;
  }

  /* 第1、2欄底部加橫向分隔線 */
  .elementor-location-footer > .e-con > .e-con:nth-child(1),
  .elementor-location-footer > .e-con > .e-con:nth-child(2),
  .elementor-location-footer > .elementor-container > .elementor-column:nth-child(1),
  .elementor-location-footer > .elementor-container > .elementor-column:nth-child(2) {
    border-bottom: 1px solid rgba(0,0,0,.1) !important;
    padding-bottom: 24px !important;
    margin-bottom: 24px !important;
  }
}

/* =========================
   手機 767px 以下
   ========================= */
/* =========================
   Footer 重置穩定版
   先刪掉舊 footer CSS，只留這份
   ========================= */

/* 外層背景 */
footer,
.site-footer,
.elementor-location-footer{
  background:
    radial-gradient(700px 220px at 8% 0%, rgba(120,185,255,.14), transparent 70%),
    radial-gradient(520px 200px at 92% 8%, rgba(45,123,229,.08), transparent 72%),
    linear-gradient(180deg,#ffffff 0%, #f3f8ff 100%) !important;
  position: relative;
  overflow: hidden;
}

/* 頁面與 footer 之間的分隔線 */
footer::before,
.site-footer::before,
.elementor-location-footer::before{
  content: "";
  display: block;
  width: min(1200px, calc(100% - 32px));
  height: 1px;
  margin: 0 auto 20px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.08) 18%,
    rgba(0,0,0,.16) 50%,
    rgba(0,0,0,.08) 82%,
    transparent 100%
  );
}

/* 主要 footer 內容區 */
footer .elementor-container:first-child,
.site-footer .elementor-container:first-child,
.elementor-location-footer .elementor-container:first-child{
  max-width: 1200px;
  margin: 0 auto;
  padding: 34px 20px 24px;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
}

/* 四欄寬度 */
footer .elementor-container:first-child > .elementor-column:nth-child(1),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(1),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(1){
  width: 31%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(2),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(2),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(2){
  width: 23%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(3),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(3),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(3){
  width: 21%;
}

footer .elementor-container:first-child > .elementor-column:nth-child(4),
.site-footer .elementor-container:first-child > .elementor-column:nth-child(4),
.elementor-location-footer .elementor-container:first-child > .elementor-column:nth-child(4){
  width: 21%;
}

/* 每欄本體 */
footer .elementor-column,
.site-footer .elementor-column,
.elementor-location-footer .elementor-column{
  position: relative;
  min-width: 0;
  padding: 0 22px;
}

/* 分隔線 */
footer .elementor-column:not(:last-child)::after,
.site-footer .elementor-column:not(:last-child)::after,
.elementor-location-footer .elementor-column:not(:last-child)::after{
  content: "";
  position: absolute;
  top: 8px;
  right: 0;
  width: 1px;
  height: calc(100% - 16px);
  background: rgba(0,0,0,.10);
}

/* 標題 */
footer h2,
footer h3,
footer h4,
footer .elementor-heading-title,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer .elementor-heading-title,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4,
.elementor-location-footer .elementor-heading-title{
  margin: 0 0 16px;
  color: #0f2340 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  writing-mode: horizontal-tb !important;
}

/* 一般文字 */
footer,
footer p,
footer span,
footer div,
footer li,
footer .elementor-widget-text-editor,
.site-footer,
.site-footer p,
.site-footer span,
.site-footer div,
.site-footer li,
.site-footer .elementor-widget-text-editor,
.elementor-location-footer,
.elementor-location-footer p,
.elementor-location-footer span,
.elementor-location-footer div,
.elementor-location-footer li,
.elementor-location-footer .elementor-widget-text-editor{
  color: #111111 !important;
  font-size: 16px !important;
  line-height: 1.9 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  writing-mode: horizontal-tb !important;
}

/* 左側介紹文字 */
footer .elementor-widget-text-editor p,
.site-footer .elementor-widget-text-editor p,
.elementor-location-footer .elementor-widget-text-editor p{
  margin: 0;
}

/* Logo */
footer img,
.site-footer img,
.elementor-location-footer img{
  max-width: 180px;
  height: auto;
  display: block;
  margin-bottom: 18px;
}

/* 連結藍色 */
footer a,
.site-footer a,
.elementor-location-footer a{
  color: #2d7be5 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

footer a:hover,
.site-footer a:hover,
.elementor-location-footer a:hover{
  color: #1f5fd1 !important;
}

/* 社群區 */
footer .elementor-social-icons-wrapper,
.site-footer .elementor-social-icons-wrapper,
.elementor-location-footer .elementor-social-icons-wrapper{
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}

/* 玻璃泡泡 */
footer .elementor-social-icon,
.site-footer .elementor-social-icon,
.elementor-location-footer .elementor-social-icon{
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.42)) !important;
  border: 1px solid rgba(255,255,255,.75);
  box-shadow:
    0 14px 24px rgba(16,39,66,.10),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -10px 18px rgba(120,185,255,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

footer .elementor-social-icon::before,
.site-footer .elementor-social-icon::before,
.elementor-location-footer .elementor-social-icon::before{
  content: "";
  position: absolute;
  top: 8px;
  left: 10px;
  width: 40%;
  height: 20%;
  border-radius: 999px;
  background: rgba(255,255,255,.5);
}

footer .elementor-social-icon i,
footer .elementor-social-icon svg,
.site-footer .elementor-social-icon i,
.site-footer .elementor-social-icon svg,
.elementor-location-footer .elementor-social-icon i,
.elementor-location-footer .elementor-social-icon svg{
  color: #4f7fe8 !important;
  fill: #4f7fe8 !important;
  font-size: 24px !important;
  position: relative;
  z-index: 2;
}

/* 右側清單 */
footer ul,
.site-footer ul,
.elementor-location-footer ul{
  list-style: none;
  margin: 0;
  padding: 0;
}

footer ul li,
.site-footer ul li,
.elementor-location-footer ul li{
  margin-bottom: 12px;
}

footer ul li a,
.site-footer ul li a,
.elementor-location-footer ul li a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 800 !important;
}

footer ul li a::before,
.site-footer ul li a::before,
.elementor-location-footer ul li a::before{
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg,#78b9ff,#2d7be5);
  box-shadow: 0 0 0 4px rgba(120,185,255,.12);
}

/* 最底藍條 */
footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container{
  background: linear-gradient(135deg,#2f5fd1,#3c6ff0) !important;
  text-align: center;
  padding: 16px 20px;
  border-radius: 18px 18px 0 0;
  box-shadow: 0 -6px 20px rgba(45,123,229,.16);
}

/* 藍條文字 */
footer .elementor-widget-text-editor:last-child .elementor-widget-container,
footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.site-footer .elementor-widget-text-editor:last-child .elementor-widget-container *,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container,
.elementor-location-footer .elementor-widget-text-editor:last-child .elementor-widget-container *{
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
}

/* 平板 */
@media (max-width: 1024px){
  footer .elementor-container:first-child,
  .site-footer .elementor-container:first-child,
  .elementor-location-footer .elementor-container:first-child{
    flex-wrap: wrap;
  }

  footer .elementor-container:first-child > .elementor-column,
  .site-footer .elementor-container:first-child > .elementor-column,
  .elementor-location-footer .elementor-container:first-child > .elementor-column{
    width: 50% !important;
    margin-bottom: 20px;
  }

  footer .elementor-column:nth-child(2)::after,
  .site-footer .elementor-column:nth-child(2)::after,
  .elementor-location-footer .elementor-column:nth-child(2)::after,
  footer .elementor-column:nth-child(4)::after,
  .site-footer .elementor-column:nth-child(4)::after,
  .elementor-location-footer .elementor-column:nth-child(4)::after{
    display: none;
  }
}

/* 手機 */
@media (max-width: 767px){
  footer .elementor-container:first-child,
  .site-footer .elementor-container:first-child,
  .elementor-location-footer .elementor-container:first-child{
    display: block;
    padding: 26px 14px 18px;
  }

  footer .elementor-container:first-child > .elementor-column,
  .site-footer .elementor-container:first-child > .elementor-column,
  .elementor-location-footer .elementor-container:first-child > .elementor-column{
    width: 100% !important;
    padding: 0 0 14px;
    margin: 0 0 14px;
    border-bottom: 1px solid rgba(0,0,0,.08);
  }

  footer .elementor-column::after,
  .site-footer .elementor-column::after,
  .elementor-location-footer .elementor-column::after{
    display: none !important;
  }

  footer .elementor-container:first-child > .elementor-column:last-child,
  .site-footer .elementor-container:first-child > .elementor-column:last-child,
  .elementor-location-footer .elementor-container:first-child > .elementor-column:last-child{
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  footer h2,
  footer h3,
  footer h4,
  footer .elementor-heading-title,
  .site-footer h2,
  .site-footer h3,
  .site-footer h4,
  .site-footer .elementor-heading-title,
  .elementor-location-footer h2,
  .elementor-location-footer h3,
  .elementor-location-footer h4,
  .elementor-location-footer .elementor-heading-title{
    font-size: 22px !important;
  }

  footer p,
  footer span,
  footer div,
  footer li,
  .site-footer p,
  .site-footer span,
  .site-footer div,
  .site-footer li,
  .elementor-location-footer p,
  .elementor-location-footer span,
  .elementor-location-footer div,
  .elementor-location-footer li{
    font-size: 15px !important;
  }

  footer .elementor-social-icon,
  .site-footer .elementor-social-icon,
  .elementor-location-footer .elementor-social-icon{
    width: 54px;
    height: 54px;
  }

  footer img,
  .site-footer img,
  .elementor-location-footer img{
    max-width: 150px;
  }
}/* End custom CSS */